:root{--pri:#103D2E;--ac:#c9a96a;--tx:#1d2430;--mu:#5b6573;--bg:#fbfaf7;--ln:#e7e3da}
*{box-sizing:border-box}body{margin:0;font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--tx);background:var(--bg)}
h1,h2,h3{font-family:system-ui,sans-serif}
a{color:inherit}img{max-width:100%}.wrap{max-width:1040px;margin:0 auto;padding:0 20px}
header.top{position:sticky;top:0;z-index:5;background:var(--pri);color:#fff}header.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px}
header.top a.marca{text-decoration:none;font-weight:600;letter-spacing:.2px;display:flex;align-items:center}header.top a.marca img{height:40px;width:auto;display:block}
.btn{display:inline-block;background:var(--ac);color:#111;text-decoration:none;font-weight:600;padding:12px 20px;border-radius:999px;border:0;cursor:pointer}
.btn.claro{background:#fff}.hero{background:var(--pri);color:#fff;padding:56px 0 64px}.hero h1{font-size:clamp(28px,4.4vw,44px);line-height:1.15;margin:.2em 0 .4em}
.hero p.sub{font-size:19px;opacity:.9;max-width:720px}.cred{font-size:14px;opacity:.8;margin-top:18px}
section{padding:48px 0;border-bottom:1px solid var(--ln)}h2{font-size:clamp(22px,3vw,30px);line-height:1.25;margin:28px 0 14px}
article.texto h1{font-size:clamp(28px,4vw,40px);line-height:1.2;margin:.2em 0 .5em}
.resposta{font-size:19px;background:#fff;border-left:4px solid var(--ac);padding:18px 22px;border-radius:8px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.card{background:#fff;border:1px solid var(--ln);border-radius:12px;padding:18px}
.card h3{margin:0 0 6px;font-size:18px}.card p{margin:0;color:var(--mu)}a.card{text-decoration:none;display:block}a.card:hover{border-color:var(--ac)}
ul.lista{padding-left:20px}details{background:#fff;border:1px solid var(--ln);border-radius:10px;padding:14px 18px;margin:10px 0}summary{cursor:pointer;font-weight:600}
.cta{background:var(--pri);color:#fff;text-align:center}.cta p{opacity:.85}.crumb{font-size:14px;color:var(--mu);padding:14px 0}
.rev{font-size:14px;color:var(--mu)}footer{padding:32px 0;font-size:14px;color:var(--mu)}footer .aviso{margin-top:10px;font-size:13px}
.autor{display:flex;gap:14px;align-items:center;margin:8px 0 22px}.autor img{width:56px;height:56px;border-radius:50%;object-fit:cover;object-position:top}
.autor .nm{font-weight:700;text-decoration:none}.autor .vf{display:inline-flex;width:16px;height:16px;border-radius:50%;background:var(--ac);vertical-align:-2px;margin-left:4px}
.autor .vf svg{width:12px;height:12px;margin:2px;fill:#fff}.autor .meta{font-size:14px;color:var(--mu)}
table.tab{width:100%;border-collapse:collapse;margin:8px 0 18px;background:#fff;font-size:15px}table.tab caption{text-align:left;font-weight:700;padding:6px 0}
table.tab th,table.tab td{border:1px solid var(--ln);padding:10px 12px;text-align:left;vertical-align:top}table.tab th{background:var(--pri);color:#fff}
.tab-wrap{overflow-x:auto}.mapa iframe{width:100%;height:320px;border:0;border-radius:12px}.mapa .local{margin-bottom:22px}
.disc{font-size:14px;color:var(--mu);border-top:1px solid var(--ln);padding-top:14px;margin-top:26px}
.sobre img.retrato{width:180px;height:180px;border-radius:16px;object-fit:cover;object-position:top;float:right;margin:0 0 16px 20px}
.galeria{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.galeria figure{margin:0;background:#fff;border:1px solid var(--ln);border-radius:12px;overflow:hidden}
.galeria img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}.galeria figcaption{font-size:14px;color:var(--mu);padding:10px 12px}
.hero .wrap.com-foto{display:grid;grid-template-columns:1.3fr .7fr;gap:32px;align-items:center}.hero img.retrato-hero{width:100%;max-width:360px;border-radius:18px;aspect-ratio:4/5;object-fit:cover;justify-self:end}
@media (max-width:760px){.hero .wrap.com-foto{grid-template-columns:1fr}.hero img.retrato-hero{justify-self:start;max-width:260px}}
.wa-float{position:fixed;right:18px;bottom:18px;width:58px;height:58px;border-radius:50%;background:#25d366;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(0,0,0,.25);z-index:9}
.wa-float svg{width:30px;height:30px;fill:#fff}article.texto{max-width:760px}article.texto p{margin:0 0 14px}
@media (max-width:600px){.hero{padding:40px 0 48px}section{padding:36px 0}.sobre img.retrato{float:none;margin:0 0 16px}}