/* Janaína Lacerda — base visual (manual da marca: preto #000, dourado #B3A07F, bege #E1D9CB) */
:root{
  --preto:#0b0b0b;
  --preto2:#151515;
  --grafite:#373535;
  --ouro:#b3a07f;
  --ouro-esc:#8a7656;
  --ouro-cl:#d4c4a5;
  --bege:#e1d9cb;
  --bege-cl:#f4f0e8;
  --papel:#faf8f4;
  --tx:#1d1c1b;
  --tx2:#5b5650;
  --tx-esc:#ece6da;
  --tx2-esc:#a9a194;
  --linha:rgba(179,160,127,.35);
  --raio:14px;
  --serif:"Cinzel",Georgia,"Times New Roman",serif;
  --sans:"Jost",system-ui,-apple-system,"Segoe UI",sans-serif;
  --larg:1140px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);font-size:17px;line-height:1.65;color:var(--tx);background:var(--papel);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.18;margin:0 0 .5em;letter-spacing:.01em}
p{margin:0 0 1em}
.wrap{max-width:var(--larg);margin:0 auto;padding:0 20px}
.sec{padding:88px 0}
.olho{display:inline-flex;align-items:center;gap:12px;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--ouro-esc);font-weight:500;margin-bottom:18px}
.olho::before{content:"";width:28px;height:1px;background:currentColor}
.escuro .olho{color:var(--ouro)}
.titulo{font-size:clamp(28px,4vw,42px);max-width:22ch}
.lead{font-size:19px;color:var(--tx2);max-width:60ch}
.escuro{background:var(--preto);color:var(--tx-esc)}
.escuro .lead{color:var(--tx2-esc)}

/* Botões */
.bt{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 30px;border-radius:999px;font-family:var(--sans);font-weight:500;font-size:16px;letter-spacing:.04em;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:transform .2s,background .2s,color .2s,box-shadow .2s}
.bt:hover{transform:translateY(-2px)}
.bt-ouro{background:var(--ouro);color:#111;box-shadow:0 10px 30px -12px rgba(179,160,127,.7)}
.bt-ouro:hover{background:var(--ouro-cl)}
.bt-linha{border-color:var(--ouro);color:var(--ouro)}
.bt-linha:hover{background:var(--ouro);color:#111}
.bt-escuro{background:var(--preto);color:var(--tx-esc)}
.bt-escuro:hover{background:var(--grafite)}
.bt svg{width:20px;height:20px;flex:none}

/* Entrada suave */
.rv{opacity:0;transform:translateY(18px);transition:opacity .8s ease,transform .8s ease}
.rv.on{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* FAQ */
.faq details{border-bottom:1px solid var(--linha);padding:4px 0}
.faq summary{list-style:none;cursor:pointer;padding:20px 40px 20px 0;font-weight:500;font-size:18px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:6px;top:50%;width:12px;height:12px;border-right:1.5px solid var(--ouro-esc);border-bottom:1.5px solid var(--ouro-esc);transform:translateY(-70%) rotate(45deg);transition:transform .25s}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq details p{color:var(--tx2);margin:0 0 20px;max-width:70ch}

/* Rodapé */
.rodape{background:#050505;color:var(--tx2-esc);font-size:14px;padding:56px 0 110px}
.rodape .wrap{display:grid;gap:28px}
.rodape img{width:210px}
.rodape a{color:var(--tx-esc)}
.rodape .redes{display:flex;gap:10px}
.rodape .redes a{width:42px;height:42px;border-radius:50%;border:1px solid rgba(179,160,127,.45);display:grid;place-items:center;color:var(--ouro);transition:background .2s,color .2s}
.rodape .redes a:hover{background:var(--ouro);color:#111}
.rodape .redes svg{width:20px;height:20px}
.rodape .aviso{font-size:12.5px;line-height:1.6;max-width:80ch;opacity:.8}
@media(min-width:800px){.rodape{padding-bottom:56px}}

/* Botão flutuante de WhatsApp */
.zap-flut{position:fixed;right:18px;bottom:18px;z-index:50;width:60px;height:60px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;box-shadow:0 10px 30px -8px rgba(0,0,0,.45);transition:transform .2s}
.zap-flut:hover{transform:scale(1.07)}
.zap-flut svg{width:32px;height:32px}

:focus-visible{outline:2px solid var(--ouro);outline-offset:3px}
