/* Guias RealZen — folha compartilhada · paleta e tipografia da marca */
:root{
  --verde:#224F49; --verde2:#2E665E; --sage:#7AA39B;
  --gold:#B0934F; --gold-d:#8f7536; --brass:#C9A86B;
  --ink:#20302D; --muted:#51625E; --line:#DBD4C3;
  --bg:#F1EBDF; --bg-alt:#E8E1D2; --white:#fff;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Hanken Grotesk',system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:1.7;-webkit-font-smoothing:antialiased}
h1,h2,h3,.serif{font-family:'Fraunces',Georgia,serif;font-weight:500;line-height:1.15;letter-spacing:-.01em}
img{max-width:100%;display:block}
a{color:var(--verde);text-decoration-color:var(--brass)}
.wrap{max-width:840px;margin:0 auto;padding:0 22px}
.wrap-wide{max-width:1080px;margin:0 auto;padding:0 22px}

/* topo */
.topbar{background:var(--verde);color:#fff;position:sticky;top:0;z-index:50;box-shadow:0 2px 14px rgba(20,40,36,.25)}
.topbar .in{max-width:1080px;margin:0 auto;padding:12px 22px;display:flex;align-items:center;gap:18px}
.topbar b{font-family:'Fraunces';font-size:1.15rem;letter-spacing:.05em}
.topbar b span{color:var(--brass)}
.topbar nav{margin-left:auto;display:flex;gap:18px;align-items:center}
.topbar a{color:#EDE7DA;text-decoration:none;font-size:.9rem}
.topbar .cta{background:var(--gold);color:#1c2a27;font-weight:700;padding:8px 16px;border-radius:100px}

/* hero */
.hero{position:relative;min-height:380px;display:flex;align-items:flex-end;overflow:hidden;background:var(--verde)}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.hero .veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(24,48,44,.25) 0%,rgba(24,48,44,.9) 88%)}
.hero .in{position:relative;z-index:2;max-width:840px;margin:0 auto;padding:70px 22px 40px;color:#fff;width:100%}
.eyebrow{font-size:.74rem;letter-spacing:.28em;text-transform:uppercase;color:var(--brass);font-weight:700;margin-bottom:12px}
.hero h1{font-size:clamp(1.7rem,4.6vw,2.7rem);color:#fff;max-width:20ch}
.hero p{margin-top:12px;color:#DCD5C6;max-width:56ch}
.hero .meta{margin-top:16px;font-size:.8rem;color:#B9C7C3}

/* resumo "para quem tem pressa" — assinatura dos guias */
.pressa{background:var(--verde);color:#fff;border-radius:6px;margin:-34px auto 0;position:relative;z-index:5;box-shadow:0 18px 40px rgba(20,40,36,.28);overflow:hidden}
.pressa .bar{background:var(--gold);color:#1c2a27;font-weight:800;font-size:.78rem;letter-spacing:.22em;text-transform:uppercase;padding:9px 20px;display:flex;align-items:center;gap:10px}
.pressa .bar::before{content:"⚡";letter-spacing:0}
.pressa ul{list-style:none;padding:20px 24px 24px;display:grid;gap:12px}
.pressa li{position:relative;padding-left:28px;font-size:.98rem;line-height:1.5}
.pressa li::before{content:"✓";position:absolute;left:0;top:1px;color:var(--brass);font-weight:800;font-family:'Fraunces';font-size:1.05rem;line-height:1.4}
.pressa li b{color:#fff}
.pressa li em{color:#CBD8D4;font-style:normal}

/* corpo do artigo */
article{padding:46px 0 10px}
article h2{font-size:1.5rem;color:var(--verde);margin:44px 0 14px}
article h3{font-size:1.12rem;color:var(--verde2);margin:26px 0 10px}
article p{margin:0 0 16px;max-width:70ch}
article ul.lista{margin:0 0 18px 22px}
article ul.lista li{margin-bottom:8px}

/* citação de lei */
.lei{background:var(--white);border-left:5px solid var(--gold);border-radius:0 6px 6px 0;padding:18px 20px;margin:22px 0;box-shadow:0 4px 16px rgba(32,48,45,.06)}
.lei .q{font-family:'Fraunces';font-size:1.02rem;color:var(--ink);font-style:italic}
.lei .fonte{margin-top:10px;font-size:.82rem;color:var(--muted)}
.lei .fonte a{font-weight:700}

/* cards e fichas */
.ficha{width:100%;border-collapse:collapse;margin:20px 0;background:var(--white);border-radius:6px;overflow:hidden;box-shadow:0 4px 16px rgba(32,48,45,.06);font-size:.95rem}
.ficha th{background:var(--verde);color:#fff;text-align:left;padding:11px 16px;font-family:'Hanken Grotesk';font-weight:700;font-size:.85rem;letter-spacing:.06em}
.ficha td{padding:11px 16px;border-top:1px solid var(--line);vertical-align:top}
.ficha td:first-child{font-weight:700;color:var(--verde);white-space:nowrap}
.ficha .ok{color:var(--verde2);font-weight:700}
.ficha .no{color:#8a4b3a;font-weight:700}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}
.gcard{background:var(--white);border-radius:6px;padding:20px;box-shadow:0 4px 16px rgba(32,48,45,.06);border-top:4px solid var(--sage)}
.gcard.inv{border-top-color:var(--gold)}
.gcard h3{margin:0 0 8px}
.gcard .num{font-family:'Fraunces';font-size:1.9rem;color:var(--gold-d)}
.figura{margin:26px 0}
.figura img{border-radius:6px;width:100%;height:320px;object-fit:cover}
.figura figcaption{font-size:.8rem;color:var(--muted);margin-top:8px}

/* callout */
.dica{background:var(--bg-alt);border-radius:6px;padding:16px 20px;margin:20px 0;display:flex;gap:12px;font-size:.95rem}
.dica::before{content:"💡";font-size:1.2rem}

/* FAQ accordion */
.faq{margin:26px 0}
.faq details{background:var(--white);border-radius:6px;margin-bottom:10px;box-shadow:0 3px 12px rgba(32,48,45,.05);overflow:hidden}
.faq summary{cursor:pointer;list-style:none;padding:16px 20px;font-weight:700;color:var(--verde);display:flex;justify-content:space-between;align-items:center;gap:14px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:'Fraunces';font-size:1.4rem;color:var(--gold-d);flex-shrink:0}
.faq details[open] summary::after{content:"–"}
.faq .a{padding:0 20px 18px;color:var(--ink)}

/* CTA final */
.ctabox{background:linear-gradient(135deg,var(--verde) 0%,var(--verde2) 100%);color:#fff;border-radius:8px;padding:34px 28px;margin:44px 0;text-align:center}
.ctabox h2{color:#fff;margin:0 0 8px;font-size:1.4rem}
.ctabox p{color:#D8E2DF;margin:0 auto 20px;max-width:52ch}
.btn-wa{display:inline-block;background:var(--gold);color:#1c2a27;font-weight:800;padding:14px 30px;border-radius:100px;text-decoration:none;font-size:1rem}
.btn-sec{display:inline-block;margin-left:12px;color:#fff;text-decoration:underline;text-decoration-color:var(--brass);font-size:.95rem}

/* fontes / rodapé */
.fontes{background:var(--bg-alt);border-radius:6px;padding:18px 22px;margin:30px 0;font-size:.85rem}
.fontes b{display:block;margin-bottom:8px;color:var(--verde)}
.fontes li{margin:4px 0 4px 18px}
.rodape{background:var(--verde);color:#B9C7C3;margin-top:60px;padding:30px 0;font-size:.8rem}
.rodape a{color:#EDE7DA}
.rodape .in{max-width:840px;margin:0 auto;padding:0 22px;display:grid;gap:8px}

/* hub de guias */
.hub{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:40px 0 60px}
.hub a{display:block;background:var(--white);border-radius:8px;overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:0 6px 20px rgba(32,48,45,.08);transition:transform .18s ease,box-shadow .18s ease}
.hub a:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(32,48,45,.14)}
.hub img{height:150px;width:100%;object-fit:cover}
.hub .tx{padding:16px 18px 20px}
.hub .tag{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-d);font-weight:800}
.hub h2{font-size:1.08rem;color:var(--verde);margin:6px 0 6px}
.hub p{font-size:.87rem;color:var(--muted);margin:0}

@media(max-width:760px){
  .grid2{grid-template-columns:1fr}
  .hub{grid-template-columns:1fr}
  .topbar nav a.hide-m{display:none}
  .figura img{height:220px}
  .btn-sec{display:block;margin:14px 0 0}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .hub a{transition:none}
}
