*{margin:0;padding:0;box-sizing:border-box}

:root{
  --ra-main:#1B4332;
  --ra-cta:#C9A227;
  --ra-deep:#102B21;
  --ra-surface:#F4F2EC;
  --ra-body-text:#26291F;
  --ra-subtle:#6E7267;
  --ra-divider:#DCDACE;
}

html{scroll-behavior:smooth}

body{
  font-family:'IBM Plex Sans',sans-serif;
  font-weight:400;
  color:var(--ra-body-text);
  line-height:1.7;
  background:#fff;
}

h1,h2,h3{
  font-family:'Lexend',sans-serif;
  color:var(--ra-deep);
  font-weight:600;
}

img{max-width:100%;height:auto;display:block;border-radius:12px}

a{color:var(--ra-main);text-decoration:none;transition:color .25s}
a:hover{color:var(--ra-cta)}

.ra-wrap{max-width:1140px;margin:0 auto;padding:0 20px}

/* Disclaimer */
.ra-disclaimer{
  background:var(--ra-deep);
  color:#EFEAE0;
  font-size:.82rem;
  padding:10px 20px;
  display:flex;
  align-items:center;
  gap:10px;
  text-align:center;
  justify-content:center;
}
.ra-disclaimer p{margin:0;max-width:1000px}
.ra-disclaimer-icon{font-size:1rem}

/* Header */
.ra-header{
  height:68px;
  display:flex;
  align-items:center;
  border-bottom:1px solid var(--ra-divider);
  background:#fff;
  position:sticky;
  top:0;
  z-index:50;
}
.ra-header-inner{display:flex;align-items:center;justify-content:space-between;width:100%}
.ra-logo{font-family:'Lexend',sans-serif;font-weight:700;font-size:1.15rem;color:var(--ra-main)}

.ra-nav{display:flex;gap:28px;font-size:.92rem;font-weight:600}
.ra-nav a{color:var(--ra-body-text)}
.ra-nav a:hover{color:var(--ra-main)}

.ra-burger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:6px}
.ra-burger span{width:24px;height:2px;background:var(--ra-deep);display:block}

/* Buttons */
.ra-btn{
  display:inline-block;
  padding:12px 28px;
  border-radius:6px;
  font-weight:600;
  font-size:.95rem;
  cursor:pointer;
  border:none;
}
.ra-btn-primary{background:var(--ra-main);color:#fff}
.ra-btn-primary:hover{background:var(--ra-deep);color:#fff}

/* Hero */
.ra-hero{padding:70px 0;background:var(--ra-surface)}
.ra-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}
.ra-badge{
  display:inline-block;
  background:var(--ra-cta);
  color:var(--ra-deep);
  font-size:.78rem;
  font-weight:700;
  padding:5px 14px;
  border-radius:20px;
  margin-bottom:16px;
}
.ra-hero-text h1{font-size:2.1rem;line-height:1.25;margin-bottom:16px}
.ra-hero-text{max-width:560px}
.ra-hero-lead{font-size:1.05rem;color:var(--ra-subtle);margin-bottom:26px}
.ra-hero-img img{border-radius:16px}

/* Section generic */
.ra-section{padding:70px 0}
.ra-section h2{font-size:1.85rem;margin-bottom:14px}
.ra-section-intro{color:var(--ra-subtle);margin-bottom:40px;max-width:640px}

/* Cards */
.ra-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.ra-card{
  background:var(--ra-surface);
  border-radius:10px;
  padding:28px 24px;
  border:1px solid var(--ra-divider);
}
.ra-temas{background:#fff}
.ra-card-icon{font-size:1.6rem;display:block;margin-bottom:12px}
.ra-card h3{font-size:1.1rem;margin-bottom:8px}
.ra-card p{color:var(--ra-subtle);font-size:.92rem;margin-bottom:10px}
.ra-card-link{font-size:.85rem;font-weight:600}

/* Sobre */
.ra-sobre{background:#fff}
.ra-sobre-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:40px;align-items:center}
.ra-sobre-text p{margin-bottom:16px;color:var(--ra-body-text)}
.ra-sobre-img img{border-radius:14px}

/* Blog */
.ra-blog{background:var(--ra-surface)}
.ra-blog-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.ra-blog-card{background:#fff;border-radius:10px;overflow:hidden;border:1px solid var(--ra-divider)}
.ra-blog-card img{border-radius:0}
.ra-blog-card-body{padding:20px}
.ra-blog-card-body h3{font-size:1.02rem;margin-bottom:8px;line-height:1.4}
.ra-blog-card-body p{color:var(--ra-subtle);font-size:.9rem;margin-bottom:12px}
.ra-blog-more{font-size:.85rem;font-weight:600}

/* FAQ */
.ra-faq{background:#fff}
.ra-faq-list{max-width:760px}
.ra-faq-item{
  border-bottom:1px solid var(--ra-divider);
  padding:16px 0;
}
.ra-faq-item summary{
  display:flex;
  justify-content:space-between;
  align-items:center;
  cursor:pointer;
  list-style:none;
  font-weight:600;
  font-family:'Lexend',sans-serif;
  color:var(--ra-deep);
}
.ra-faq-item summary::-webkit-details-marker{display:none}
.ra-faq-q{padding-right:14px}
.ra-faq-toggle{position:relative;width:18px;height:18px;flex-shrink:0}
.ra-faq-toggle::before,.ra-faq-toggle::after{
  content:'';
  position:absolute;
  background:var(--ra-main);
  transition:transform .2s;
}
.ra-faq-toggle::before{width:100%;height:2px;top:8px;left:0}
.ra-faq-toggle::after{width:2px;height:100%;top:0;left:8px}
.ra-faq-item[open] .ra-faq-toggle::after{transform:rotate(90deg)}
.ra-faq-a{padding-top:12px;color:var(--ra-subtle);font-size:.93rem}

/* Processo */
.ra-processo{background:var(--ra-surface)}
.ra-step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.ra-step{background:#fff;border-radius:10px;padding:26px 20px;border:1px solid var(--ra-divider)}
.ra-step-num{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;height:36px;
  background:var(--ra-main);
  color:#fff;
  border-radius:50%;
  font-weight:700;
  margin-bottom:14px;
}
.ra-step h3{font-size:1rem;margin-bottom:8px}
.ra-step p{color:var(--ra-subtle);font-size:.88rem}

/* Contato */
.ra-contato{background:#fff}
.ra-contato-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:40px}
.ra-contato-info{display:block}
.ra-contato-list{list-style:none;margin-top:18px}
.ra-contato-list li{margin-bottom:10px;color:var(--ra-body-text)}
.ra-form{display:flex;flex-direction:column;gap:6px;background:var(--ra-surface);padding:28px;border-radius:10px}
.ra-form label{font-size:.85rem;font-weight:600;margin-top:8px}
.ra-form input,.ra-form textarea{
  padding:11px 15px;
  border-radius:6px;
  border:1px solid var(--ra-divider);
  font-family:'IBM Plex Sans',sans-serif;
  font-size:.95rem;
}
.ra-form .ra-btn{margin-top:14px;align-self:flex-start}

/* Footer */
.ra-footer{background:var(--ra-deep);color:#D8D6CB;padding-top:48px}
.ra-footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:36px;padding-bottom:36px}
.ra-footer-col h3{color:#fff;font-size:1rem;margin-bottom:14px}
.ra-footer-col p,.ra-footer-col li{color:#B9B7AC;font-size:.9rem;margin-bottom:8px}
.ra-footer-col ul{list-style:none}
.ra-footer-col a{color:#B9B7AC}
.ra-footer-col a:hover{color:var(--ra-cta)}
.ra-footer-bottom{
  border-top:1px solid rgba(255,255,255,.12);
  padding:18px 0;
  display:flex;
  justify-content:space-between;
  font-size:.8rem;
  color:#9A9887;
}

/* Cookie banner (CSS-only) */
.ra-cookie{
  position:fixed;
  bottom:0;
  left:0;
  right:0;
  background:var(--ra-deep);
  color:#EFEAE0;
  padding:16px 20px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:24px;
  flex-wrap:wrap;
  z-index:100;
  font-size:.88rem;
}
.ra-cookie p{margin:0}
.ra-cookie-actions{display:flex;align-items:center;gap:18px}
.ra-cookie-actions a{color:#D8D6CB;font-size:.85rem;text-decoration:underline}
.ra-btn-cookie{background:var(--ra-cta);color:var(--ra-deep);padding:9px 22px;border-radius:6px}
#ra-cookie-consent:checked ~ .ra-cookie{display:none}

/* Mobile */
@media (max-width:768px){
  .ra-nav{
    position:fixed;
    top:68px;
    left:0;
    right:0;
    background:#fff;
    flex-direction:column;
    padding:20px;
    gap:16px;
    border-bottom:1px solid var(--ra-divider);
    display:none;
  }
  .ra-menu-check:checked ~ .ra-header .ra-nav{display:flex}
  .ra-burger{display:flex}
  .ra-hero-grid,.ra-sobre-grid,.ra-contato-grid{grid-template-columns:1fr}
  .ra-hero-img{order:-1}
  .ra-card-grid,.ra-blog-trio,.ra-step-grid{grid-template-columns:1fr}
  .ra-footer-grid{grid-template-columns:1fr}
  .ra-footer-bottom{flex-direction:column;gap:6px;text-align:center}
}
