:root{
  --cocoa:#2A1810; --cocoa2:#3A2115;
  --cream:#FDF7EE; --cream2:#F8EEDD;
  --bronze:#B87333; --bronze-d:#9A5E28;
  --gold:#F0B44C; --gold-l:#FFCB6B; --gold-xl:#FFE0A6;
  --sunset:#E27B54;
  --ink:#2A1810; --muted:#8A7160; --line:#EADFCB;
  --wrap:1140px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"DM Sans",system-ui,sans-serif;color:var(--ink);background:var(--cream);
  -webkit-font-smoothing:antialiased;line-height:1.6}
h1,h2,h3{font-family:"Fraunces",Georgia,serif;line-height:1.1;margin:0;letter-spacing:-.01em}
p{margin:0}
a{text-decoration:none;color:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.eyebrow{display:inline-block;font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--bronze-d)}
.eyebrow.gold{color:var(--gold-l)}
.grad{background:linear-gradient(96deg,var(--bronze),var(--gold) 60%,var(--gold-l));
  -webkit-background-clip:text;background-clip:text;color:transparent}

/* Botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;
  border-radius:999px;padding:12px 22px;cursor:pointer;border:0;transition:.18s;font-size:15px}
.btn-lg{padding:15px 30px;font-size:16px}
.btn-sun{position:relative;color:#40260F;overflow:hidden;
  background:linear-gradient(100deg,var(--bronze),var(--gold));
  box-shadow:0 12px 26px -10px rgba(184,115,51,.75)}
.btn-sun::after{content:"";position:absolute;inset:0;transform:translateX(-120%);
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent)}
.btn-sun:hover{transform:translateY(-2px);box-shadow:0 16px 30px -10px rgba(184,115,51,.85)}
.btn-sun:hover::after{transform:translateX(120%);transition:transform .7s}
.btn-out{background:transparent;color:var(--ink);border:1.5px solid var(--bronze)}
.btn-out:hover{background:var(--bronze);color:#fff}
.btn-dark{background:var(--cocoa);color:var(--gold-xl)}
.btn-dark:hover{transform:translateY(-2px);background:#1f1109}
.btn-txt{font-weight:600;color:var(--ink);padding:10px 8px}
.btn-txt:hover{color:var(--bronze-d)}

/* Logo/sol */
.logo,.rodape-marca{display:inline-flex;align-items:center;gap:9px;font-family:"Fraunces",serif;
  font-weight:600;font-size:21px}
.logo b,.rodape-marca b{color:var(--bronze-d);font-weight:700}
.sol{width:22px;height:22px;border-radius:50%;
  background:radial-gradient(circle at 38% 34%,var(--gold-l),var(--bronze));
  box-shadow:0 0 0 4px rgba(240,180,76,.22)}

/* NAV */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;transition:.25s}
.nav-in{display:flex;align-items:center;height:70px;gap:20px}
.nav-links{display:flex;gap:26px;margin:0 auto}
.nav-links a{font-weight:500;color:#54402E}
.nav-links a:hover{color:var(--bronze-d)}
.nav-cta{display:flex;align-items:center;gap:8px}
.nav.scr{background:rgba(253,247,238,.86);backdrop-filter:blur(10px);
  box-shadow:0 1px 0 var(--line)}

/* HERO */
.hero{position:relative;padding:150px 0 90px;text-align:center;overflow:hidden;
  background:linear-gradient(180deg,#FFF6E7 0%,var(--cream) 62%)}
.hero-glow{position:absolute;top:-260px;left:50%;transform:translateX(-50%);
  width:900px;height:900px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(255,203,107,.55),rgba(255,203,107,.18) 42%,transparent 62%);
  animation:pulse 7s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:.85;transform:translateX(-50%) scale(1)}50%{opacity:1;transform:translateX(-50%) scale(1.06)}}
.hero-in{position:relative}
.hero .eyebrow{margin-bottom:18px}
.hero-h1{font-size:clamp(38px,6vw,68px);font-weight:600;letter-spacing:-.02em}
.hero-sub{max-width:640px;margin:22px auto 0;font-size:clamp(16px,2.2vw,19px);color:#6B5540}
.hero-acoes{display:flex;gap:14px;justify-content:center;margin-top:34px;flex-wrap:wrap}
.hero-trust{margin-top:20px;font-size:14px;color:var(--muted);font-weight:500}

/* FAIXA */
.faixa{background:var(--cocoa);color:#E9D8C3}
.faixa-in{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;
  padding:16px 24px;font-size:14.5px;text-align:center}
.faixa-in span{color:#C6AF97}
.faixa-in b{color:var(--gold-l);font-weight:600}
.faixa-in i{color:#6C5643;font-style:normal}

/* SEÇÕES */
.sec{padding:88px 0}
.sec-cab{max-width:620px;margin:0 auto 46px;text-align:center}
.sec-cab h2{font-size:clamp(28px,4vw,42px);font-weight:600;margin:14px 0 12px}
.sec-cab p{color:#6B5540;font-size:17px}

/* Cards de recurso */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cardf{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px 26px;
  box-shadow:0 20px 40px -28px rgba(120,70,20,.4);transition:.2s}
.cardf:hover{transform:translateY(-4px);box-shadow:0 26px 48px -26px rgba(120,70,20,.5)}
.cardf-ic{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;margin-bottom:16px;
  background:linear-gradient(140deg,#FFF0D2,#FFE1AE);color:var(--bronze-d)}
.cardf-ic svg{width:26px;height:26px}
.cardf h3{font-size:20px;font-weight:600;margin-bottom:7px}
.cardf p{color:#6B5540;font-size:15px}

/* MOAT */
.moat{background:linear-gradient(160deg,var(--cocoa),var(--cocoa2));color:#F3E7D6;padding:92px 0}
.moat-in{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.moat-txt h2{font-size:clamp(28px,4vw,42px);font-weight:600;color:#fff;margin:14px 0 16px}
.moat-txt p{color:#CDB9A4;font-size:17px}
.moat-lista{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:12px}
.moat-lista li{position:relative;padding-left:32px;color:#EADCC9}
.moat-lista li::before{content:"";position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:50%;
  background:linear-gradient(140deg,var(--bronze),var(--gold))}
.moat-lista li::after{content:"✓";position:absolute;left:5px;top:2px;font-size:12px;font-weight:700;color:#3a220f}
.fone{background:linear-gradient(160deg,#12A05A,#0C8A4C);border-radius:26px;padding:20px 18px 26px;
  box-shadow:0 30px 60px -24px rgba(0,0,0,.6);max-width:360px;justify-self:end;width:100%}
.fone-topo{display:flex;align-items:center;gap:10px;padding:0 4px 14px;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,.15)}
.fone-nome{color:#fff;font-weight:700}
.fone-topo::before{content:"";width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.25)}
.bolha{background:#fff;color:#20303a;border-radius:14px;border-top-left-radius:4px;padding:11px 14px;
  margin:10px 0;font-size:14.5px;max-width:86%;box-shadow:0 4px 10px rgba(0,0,0,.12)}
.bolha.resp{background:#DCF8C6;border-radius:14px;border-top-right-radius:4px;margin-left:auto;
  border-top-left-radius:14px}

/* PASSOS */
.passos-sec{background:var(--cream2)}
.passos{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.passo{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px 26px}
.passo-n{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;font-family:"Fraunces",serif;
  font-weight:700;font-size:20px;color:#40260F;margin-bottom:16px;
  background:linear-gradient(140deg,var(--gold-l),var(--bronze))}
.passo h3{font-size:20px;font-weight:600;margin-bottom:7px}
.passo p{color:#6B5540;font-size:15px}

/* PLANOS */
.toggle{display:inline-flex;background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px;margin-top:24px;gap:4px}
.toggle button{border:0;background:transparent;font:inherit;font-weight:600;color:var(--muted);
  padding:9px 20px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.toggle button.on{background:linear-gradient(100deg,var(--bronze),var(--gold));color:#40260F}
.poup{background:#EAF6EC;color:#1f7a3d;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px}
.toggle button.on .poup{background:rgba(255,255,255,.35);color:#3a220f}
.planos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start}
.plano{position:relative;background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px 26px;
  box-shadow:0 20px 44px -30px rgba(120,70,20,.4)}
.plano-top{border:2px solid var(--gold);box-shadow:0 30px 60px -26px rgba(240,180,76,.7);
  transform:translateY(-8px)}
.ribbon{position:absolute;top:-13px;left:50%;transform:translateX(-50%);white-space:nowrap;
  background:linear-gradient(100deg,var(--bronze),var(--gold));color:#40260F;font-weight:700;font-size:12.5px;
  padding:6px 16px;border-radius:999px;box-shadow:0 8px 16px -6px rgba(184,115,51,.6)}
.plano-nome{font-size:24px;font-weight:600;margin-bottom:10px}
.plano-preco{display:flex;align-items:baseline;gap:3px;font-family:"Fraunces",serif;color:var(--ink)}
.plano-preco .cifra{font-size:20px;font-weight:600}
.plano-preco .num{font-size:44px;font-weight:700;letter-spacing:-.02em}
.plano-preco .mes{font-size:16px;color:var(--muted);font-family:"DM Sans",sans-serif;margin-left:3px}
.plano-obs{color:var(--muted);font-size:13.5px;margin:2px 0 20px}
.plano-btn{width:100%}
.plano-top .plano-btn{}
.plano:not(.plano-top) .plano-btn{background:var(--cream);color:var(--ink);border:1.5px solid var(--bronze);box-shadow:none}
.plano:not(.plano-top) .plano-btn:hover{background:var(--bronze);color:#fff}
.plano-lista{list-style:none;padding:22px 0 0;margin:22px 0 0;border-top:1px solid var(--line);display:grid;gap:11px}
.plano-lista li{position:relative;padding-left:28px;font-size:14.5px;color:#4E3B2A}
.plano-lista li::before{content:"✓";position:absolute;left:0;top:0;color:var(--bronze);font-weight:800}
.plano-lista li.lista-titulo{padding-left:0;font-weight:700;color:var(--ink)}
.plano-lista li.lista-titulo::before{content:""}
.planos-nota{text-align:center;color:var(--muted);font-size:13px;margin-top:26px;max-width:640px;margin-left:auto;margin-right:auto}

/* FAQ */
.faq-sec{background:var(--cream2)}
.faq-wrap{max-width:760px}
.faq{background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:12px;overflow:hidden}
.faq summary{list-style:none;cursor:pointer;padding:18px 22px;font-weight:600;font-size:16.5px;
  display:flex;align-items:center;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq-mais{font-size:24px;color:var(--bronze);font-weight:400;transition:.2s;line-height:1}
.faq[open] .faq-mais{transform:rotate(45deg)}
.faq-r{padding:0 22px 20px;color:#6B5540;font-size:15.5px}

/* CTA */
.cta{padding:80px 0}
.cta-in{background:linear-gradient(120deg,var(--bronze),var(--gold));border-radius:28px;
  padding:60px 40px;text-align:center;color:#40260F;position:relative;overflow:hidden}
.cta-in h2{font-size:clamp(28px,4vw,40px);font-weight:600;color:#3a220f}
.cta-in p{margin:12px 0 26px;font-size:18px;color:#5a3a1a}

/* RODAPÉ */
.rodape{background:var(--cocoa);color:#C9B6A2;padding:44px 0}
.rodape-in{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.rodape-marca{color:#fff;font-size:20px}
.rodape-marca b{color:var(--gold-l)}
.rodape-links{display:flex;gap:22px;margin:0 auto}
.rodape-links a{color:#D8C6B2}
.rodape-links a:hover{color:var(--gold-l)}
.rodape-fim{font-size:13px;color:#9C8873;width:100%;text-align:center;padding-top:8px;border-top:1px solid rgba(255,255,255,.08);margin-top:8px}

/* Reveal */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}

@media (max-width:900px){
  .cards,.planos,.passos{grid-template-columns:1fr}
  .moat-in{grid-template-columns:1fr;gap:36px}
  .fone{justify-self:center}
  .plano-top{transform:none}
  .nav-links{display:none}
}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  .hero-glow{animation:none}
  .btn-sun::after{display:none}
  html{scroll-behavior:auto}
}
