:root{
 --pa:#FFFFFF; --pa2:#F7F5F1; --pa3:#EFECE5; --pa4:#E4E0D6;
 --ink:#17140F; --ink2:#4C463D; --ink3:#6E675C; --line:#DEDAD1; --line2:#C6C0B4;
 --br:#92643A; --br-cl:#92643A; --br-w:#F6EFE5;
 --esc:#17140F; --esc2:#231D17; --esc3:#332B23;
 --tj:#92643A;
 --sf:'Playfair Display',Georgia,serif;
 --sa:Montserrat,'Helvetica Neue',sans-serif;
 --sm:Montserrat,sans-serif;
 --g:clamp(1.1rem,4vw,3rem);
 --max:1360px;
 --col:minmax(0,1fr);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:64px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--pa);color:var(--ink);font-family:var(--sa);font-size:16px;
 line-height:1.65;font-weight:400;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--op,center)}
picture{display:block;width:100%;height:100%}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--sf);font-weight:400;line-height:1.08;margin:0;
 letter-spacing:-.016em;text-wrap:balance}
p{margin:0 0 1rem}
.w{max-width:var(--max);margin:0 auto;padding-inline:var(--g)}
.wn{max-width:min(74ch,var(--max));margin:0 auto;padding-inline:var(--g)}
.mono{font-family:var(--sm);font-variant-numeric:tabular-nums}
.eyebrow{font-family:var(--sm);font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;font-weight:500}

/* ---------------- NAV ---------------- */
.nav{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.97);
 backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav-in{display:flex;align-items:center;gap:1.5rem;height:64px;max-width:var(--max);
 margin:0 auto;padding-inline:var(--g)}
.brand{display:flex;align-items:center;gap:1.1rem;flex:0 0 auto}
.brand img{height:16px;width:auto;object-fit:contain}
.brand span{font-family:var(--sm);font-size:.6rem;letter-spacing:.17em;text-transform:uppercase;
 color:var(--ink2);white-space:nowrap}
.menu{display:flex;gap:.2rem;margin-left:auto}
.menu a{font-family:var(--sm);font-size:.63rem;letter-spacing:.13em;text-transform:uppercase;
 color:var(--ink2);padding:.55rem .8rem;position:relative;transition:color .18s}
.menu a:hover{color:var(--ink)}
.menu a.on{color:var(--ink)}
.menu a.on::after{content:'';position:absolute;left:.8rem;right:.8rem;bottom:.28rem;height:1px;background:var(--br)}
.nav-cta{flex:0 0 auto;font-family:var(--sm);font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;
 color:#fff;background:var(--ink);padding:.82rem 1.4rem;transition:background .2s;white-space:nowrap}
.nav-cta:hover{background:var(--br)}
.burger{display:none;margin-left:auto;background:none;border:0;padding:.5rem;cursor:pointer}
.burger i{display:block;width:20px;height:1.5px;background:var(--ink);margin:4.5px 0;transition:.25s}
body.open .burger i:nth-child(1){transform:translateY(6px) rotate(45deg)}
body.open .burger i:nth-child(2){opacity:0}
body.open .burger i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.drawer{position:fixed;inset:64px 0 0 0;background:var(--pa);z-index:80;display:none;
 padding:1.4rem var(--g);overflow:auto}
body.open .drawer{display:block}body.open{overflow:hidden}
.drawer a{display:flex;align-items:baseline;gap:1rem;font-family:var(--sf);font-size:1.8rem;
 padding:.8rem 0;border-bottom:1px solid var(--line)}
.drawer a em{font-family:var(--sm);font-size:.62rem;font-style:normal;color:var(--br)}
@media(max-width:1140px){.menu{display:none}.burger{display:block}
 .nav-cta{margin-left:auto;font-size:.56rem;padding:.72rem 1rem}.burger{margin-left:.4rem}}
/* a barra so cabe sem o nome do guia abaixo de 640 */
@media(max-width:640px){.brand span{display:none}.nav-in{gap:.7rem}}
@media(max-width:430px){.nav-cta{font-size:.52rem;padding:.7rem .8rem;letter-spacing:.1em}
 .nav-in{gap:.5rem}.brand img{height:14px}}

/* ---------------- HERO ---------------- */
.hero{position:relative;min-height:clamp(520px,82vh,780px);display:flex;flex-direction:column;
 justify-content:flex-end;overflow:hidden;background:var(--esc)}
.hero>picture{position:absolute;inset:0}
.hero::after{content:'';position:absolute;inset:0;background:
 linear-gradient(180deg,rgba(10,9,6,.5) 0%,rgba(10,9,6,.12) 30%,rgba(10,9,6,.5) 66%,rgba(10,9,6,.9) 100%)}
.hero-in{position:relative;z-index:2;width:100%}
.hero-main{padding-block:clamp(2rem,5vh,3.4rem) clamp(1.3rem,3vh,2rem)}
.hero .eyebrow{color:#DFD2B8;display:block;margin-bottom:clamp(1rem,2.4vh,1.7rem)}
.hero h1{color:#fff;font-size:clamp(2.05rem,8.4vw,6.4rem);line-height:.96;letter-spacing:-.032em;max-width:11ch}
.hero h1 em{font-style:italic;color:#E6C99C;display:block}
.hero p{color:#F0EAE0;max-width:min(40ch,100%);font-size:clamp(1rem,1.4vw,1.16rem);margin-top:clamp(1rem,2.2vh,1.5rem)}
.hero-b{display:inline-flex;align-items:center;gap:.8rem;margin-top:clamp(1.4rem,3vh,2.1rem);
 font-family:var(--sm);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:#fff;
 border:1px solid rgba(255,255,255,.7);padding:1rem 1.8rem;font-weight:600;
 background:rgba(10,9,6,.24);backdrop-filter:blur(4px);transition:.22s}
.hero-b:hover{background:#fff;color:var(--ink);border-color:#fff;gap:1.2rem}
.hero-b svg{width:13px;height:13px;flex:0 0 auto}
.hero-cred{border-top:1px solid rgba(255,255,255,.3);display:grid;grid-template-columns:repeat(3,1fr);
 position:relative;z-index:2}
.hero-cred div{display:flex;align-items:center;gap:.7rem;padding:1rem 0 1rem 1.3rem;
 border-left:1px solid rgba(255,255,255,.18);color:#F2EDE4}
.hero-cred div:first-child{border-left:0;padding-left:0}
.hero-cred svg{width:17px;height:17px;flex:0 0 auto;color:#E6C99C}
.hero-cred span{font-family:var(--sm);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;line-height:1.45}
.hero-foto{position:absolute;right:var(--g);bottom:.5rem;z-index:3;font-family:var(--sm);
 font-size:.53rem;color:rgba(255,255,255,.62);letter-spacing:.04em}
@media(max-width:760px){.hero-cred{grid-template-columns:1fr}
 .hero-cred div{border-left:0;padding-left:0;padding-block:.55rem;border-top:1px solid rgba(255,255,255,.14)}
 .hero-cred div:first-child{border-top:0}
 .hero-foto{display:none}}

/* ---------------- 1. PLACA DE CAPÍTULO ---------------- */
.placa{position:relative;overflow:hidden;background:var(--esc);
 min-height:clamp(380px,44vw,540px);display:flex;align-items:flex-end}
.placa>picture{position:absolute;inset:0}
.placa img{opacity:.92}
.placa::after{content:'';position:absolute;inset:0;background:
 linear-gradient(180deg,rgba(10,9,6,.42) 0%,rgba(10,9,6,.16) 34%,rgba(10,9,6,.62) 72%,rgba(10,9,6,.93) 100%)}
.placa-in{position:relative;z-index:2;width:100%;padding-block:clamp(2rem,4.5vw,3.4rem)}
.placa-n{font-family:var(--sm);font-size:.7rem;letter-spacing:.4em;color:#E6C99C;display:block;
 margin-bottom:1rem;font-weight:600}
.placa h2{color:#fff;font-size:clamp(1.7rem,6.6vw,4.4rem);letter-spacing:-.028em;max-width:15ch;line-height:1}
.placa p{color:#EAE3D8;max-width:min(56ch,100%);margin:clamp(.9rem,2vw,1.4rem) 0 0;font-size:clamp(.94rem,1.3vw,1.06rem);
 line-height:1.68}
.placa-cred{position:absolute;right:var(--g);bottom:.55rem;z-index:3;font-family:var(--sm);
 font-size:.53rem;color:rgba(255,255,255,.6)}
@media(max-width:700px){.placa{min-height:clamp(340px,88vw,460px)}.placa-cred{display:none}}

/* ---------------- seções ---------------- */
.sec{padding-block:clamp(2.6rem,6vw,5rem)}
.sec.creme{background:var(--pa2)}
.sec.esc{background:var(--esc);color:#EFE9DF}
.sec.esc h2,.sec.esc h3{color:#fff}
.intro{max-width:min(66ch,100%);color:var(--ink2);font-size:1.02rem;line-height:1.75}
.esc .intro{color:#D6CDC0}
.sh{margin-bottom:clamp(1.6rem,3.4vw,2.6rem)}
.sh .tagp{display:inline-block;font-family:var(--sm);font-size:.58rem;letter-spacing:.22em;
 text-transform:uppercase;font-weight:600;color:#F6EFE5;background:var(--tj);padding:.55em 1.1em;
 margin-bottom:1.1rem}
.sh h2{font-size:clamp(1.55rem,5.4vw,3rem);max-width:17ch}
.sh .vermais{display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;font-size:.92rem;
 border-bottom:1px solid var(--br);padding-bottom:.22rem;transition:.2s}
.sh .vermais:hover{color:var(--tj);gap:.8rem}

/* ---------------- 2. VERBETE-FICHA ---------------- */
.verbetes{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));
 gap:clamp(1.6rem,3vw,2.6rem) clamp(1.2rem,2.4vw,2rem)}
.verbete{display:flex;flex-direction:column}
.vb-f{position:relative;aspect-ratio:3/2;overflow:hidden;background:var(--pa3);margin-bottom:1rem}
.vb-f img{transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.verbete:hover .vb-f img{transform:scale(1.035)}
.vb-cred{position:absolute;right:.5rem;bottom:.4rem;font-family:var(--sm);font-size:.5rem;
 color:rgba(255,255,255,.8);text-shadow:0 1px 3px rgba(0,0,0,.7);letter-spacing:.03em}
.vb-selo{position:absolute;top:0;left:0;font-family:var(--sm);font-size:.55rem;letter-spacing:.13em;
 text-transform:uppercase;font-weight:700;background:var(--pa);color:var(--tj);padding:.5rem .8rem}
.vb-n{font-family:var(--sm);font-size:.66rem;color:var(--br);font-weight:600;display:block;
 margin-bottom:.35rem;font-variant-numeric:tabular-nums}
.verbete h3{font-size:clamp(1.45rem,2.1vw,1.85rem);letter-spacing:-.02em}
.vb-dados{font-family:var(--sm);font-size:.66rem;color:var(--ink3);letter-spacing:.02em;
 margin:.55rem 0 .95rem;line-height:1.6;border-bottom:1px solid var(--line);padding-bottom:.8rem}
.verbete dl{margin:0;display:flex;flex-direction:column;gap:.7rem}
.verbete dt{font-family:var(--sm);font-size:.55rem;letter-spacing:.17em;text-transform:uppercase;
 color:var(--br);font-weight:600;margin-bottom:.22rem}
.verbete dd{margin:0;font-size:.9rem;color:var(--ink2);line-height:1.62;max-width:100%;overflow-wrap:break-word}
.vb-ir{display:inline-flex;align-items:center;gap:.45rem;margin-top:1.1rem;font-family:var(--sm);
 font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:var(--ink);font-weight:600;
 border-bottom:1px solid var(--line2);padding-bottom:.25rem;transition:.2s;align-self:flex-start}
.vb-ir:hover{color:var(--br);border-color:var(--br);gap:.75rem}
.vb-ir svg{width:11px;height:11px}
/* primeiro verbete do capítulo: retrato, mais ar */
.verbetes.destaque{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,1fr)}
.verbetes.destaque .verbete:first-child .vb-f{aspect-ratio:4/5}
.verbetes.destaque .verbete:first-child h3{font-size:clamp(1.9rem,3vw,2.5rem)}
@media(max-width:980px){.verbetes.destaque{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
 .verbetes.destaque .verbete:first-child .vb-f{aspect-ratio:3/2}}

/* ---------------- 3. LINHA DE DIRETÓRIO ---------------- */
.grupo{font-family:var(--sm);font-size:.58rem;letter-spacing:.22em;text-transform:uppercase;
 color:var(--ink3);margin:clamp(2rem,4vw,3rem) 0 .2rem;display:flex;align-items:baseline;gap:1rem}
.grupo:first-child{margin-top:0}
.grupo::after{content:'';flex:1;height:1px;background:var(--line)}
.grupo b{font-weight:600;color:var(--ink)}
.diretorio{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.diretorio li{border-bottom:1px solid var(--line)}
.dir{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1.1fr) minmax(0,1fr) auto;
 gap:.6rem 1.6rem;align-items:baseline;width:100%;text-align:left;background:none;border:0;
 padding:1rem .4rem;font:inherit;color:inherit;cursor:pointer;transition:background .18s}
.dir:hover{background:var(--pa2)}
.dir-n{font-family:var(--sf);font-size:clamp(1.15rem,1.7vw,1.4rem);letter-spacing:-.014em;line-height:1.2}
.dir-e{font-family:var(--sm);font-size:.68rem;color:var(--ink3)}
.dir-c{font-size:.82rem;color:var(--ink2);line-height:1.5}
.dir-c b{font-family:var(--sm);font-size:.55rem;letter-spacing:.15em;text-transform:uppercase;
 color:var(--br);font-weight:600;display:block;margin-bottom:.15rem}
.dir-s{color:var(--ink3);opacity:0;transition:.2s;justify-self:end}
.dir-s svg{width:14px;height:14px}
.dir:hover .dir-s{opacity:1;color:var(--br)}
@media(max-width:860px){.dir{grid-template-columns:1fr auto;gap:.45rem 1rem}
 .dir-e,.dir-c{grid-column:1/-1}}

/* diretório ilustrado — miniatura pequena, foto de terceiro */
.dir.ilu{grid-template-columns:88px minmax(0,1.3fr) minmax(0,1fr) minmax(0,1fr) auto;align-items:center}
.dir-mini{width:88px;aspect-ratio:4/3;overflow:hidden;background:var(--pa3)}
.dir-mini:empty{background:none}
.dir-mini img{transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.dir:hover .dir-mini img{transform:scale(1.06)}
@media(max-width:860px){.dir.ilu{grid-template-columns:64px 1fr auto;align-items:start}
 .dir.ilu .dir-mini{width:64px}
 .dir.ilu .dir-e,.dir.ilu .dir-c{grid-column:2/-1}}

/* ---------------- 4. ROTEIRO DAS HORAS ---------------- */
.horas{margin-top:clamp(2rem,4vw,3rem);border-top:1px solid var(--line)}
.hr{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,.55fr);gap:1.2rem clamp(1.4rem,3vw,2.6rem);
 padding:clamp(1.3rem,2.6vw,2rem) 0;border-bottom:1px solid var(--line);align-items:start}
.hr-h{font-family:var(--sm);font-size:clamp(1.15rem,2vw,1.6rem);font-variant-numeric:tabular-nums;
 color:var(--br);font-weight:500;letter-spacing:-.01em;white-space:nowrap}
.hr-t h4{font-size:clamp(1.2rem,1.9vw,1.6rem);margin-bottom:.4rem}
.hr-t p{margin:0;color:var(--ink2);font-size:.9rem;max-width:min(52ch,100%)}
.hr-l{font-family:var(--sm);font-size:.65rem;color:var(--ink3);margin-top:.55rem;display:block}
.hr-f{aspect-ratio:4/5;overflow:hidden;background:var(--pa3)}
.hr-f img{transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.hr:hover .hr-f img{transform:scale(1.04)}
.hr.sem .hr-f{display:none}
.hr.sem{grid-template-columns:auto minmax(0,1fr)}
@media(max-width:820px){.hr{grid-template-columns:auto minmax(0,1fr)}
 .hr-f{grid-column:1/-1;aspect-ratio:16/9;max-height:220px}}

/* ---------------- 5. RÉGUA DE MINUTOS ---------------- */
.regua{margin-top:clamp(1.8rem,3.4vw,2.6rem)}
.regua svg{width:100%;height:auto;display:block;overflow:visible}
.regua-nota{font-family:var(--sm);font-size:.6rem;color:var(--ink3);line-height:1.8;margin-top:1rem;max-width:80ch}
.esc .regua-nota{color:#9A9086}

/* ---------------- 6. DADO ANCORADO ---------------- */
.dado{position:relative;overflow:hidden;background:var(--pa3);
 padding-block:clamp(2.4rem,5vw,4rem)}
.dado.esc{background:var(--esc)}
.dado.foto>picture{position:absolute;inset:0}
.dado.foto::after{content:'';position:absolute;inset:0;background:rgba(14,12,9,.84)}
.dado-in{position:relative;z-index:2;display:grid;grid-template-columns:auto minmax(0,1fr);
 gap:clamp(1.4rem,3.6vw,3.4rem);align-items:center}
.dado b{font-family:var(--sf);font-size:clamp(2.6rem,10vw,7.5rem);line-height:.86;font-weight:400;
 font-variant-numeric:tabular-nums;letter-spacing:-.04em;display:block}
.dado.esc b,.dado.foto b{color:#E6C99C}
.dado-t{font-family:var(--sf);font-size:clamp(1.1rem,3.4vw,1.7rem);line-height:1.25;max-width:min(26ch,100%)}
.dado.esc .dado-t,.dado.foto .dado-t{color:#F2EDE4}
.dado-fonte{font-family:var(--sm);font-size:.6rem;color:var(--ink3);margin-top:.8rem;line-height:1.7}
.dado.esc .dado-fonte,.dado.foto .dado-fonte{color:#9A9086}
@media(max-width:700px){.dado-in{grid-template-columns:1fr;gap:.9rem}}

/* ---------------- 7. FALA ---------------- */
.fala{display:grid;grid-template-columns:minmax(0,.34fr) minmax(0,1fr);gap:clamp(1.4rem,3.4vw,3rem);
 align-items:center;padding-block:clamp(2rem,4.4vw,3.4rem)}
.fala.sem-retrato{grid-template-columns:1fr}
.fala-f{aspect-ratio:4/5;overflow:hidden;background:var(--pa3)}
.fala blockquote{margin:0;font-family:var(--sf);font-size:clamp(1.3rem,4.8vw,2.6rem);line-height:1.24;
 letter-spacing:-.018em}
.fala cite{display:block;font-family:var(--sm);font-size:.65rem;font-style:normal;color:var(--ink3);
 margin-top:1.2rem;letter-spacing:.04em;line-height:1.8}
.esc .fala blockquote{color:#F7F3EC}
.esc .fala cite{color:#9A9086}
@media(max-width:760px){.fala{grid-template-columns:1fr}.fala-f{max-width:210px}}

/* ---------------- 8. CONTRAPONTO E MÉTODO ---------------- */
.contra{background:var(--esc);color:#E8E1D6}
.contra-in{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
 gap:clamp(1.8rem,4vw,4rem);padding-block:clamp(2.6rem,5.4vw,4.4rem)}
.contra h2{color:#fff;font-size:clamp(1.45rem,5vw,2.6rem);max-width:15ch}
.contra .tagp{background:var(--br);color:#17140F}
.contra ul{list-style:none;margin:1.6rem 0 0;padding:0;border-top:1px solid rgba(255,255,255,.16)}
.contra li{padding:.95rem 0;border-bottom:1px solid rgba(255,255,255,.16);font-size:.92rem;
 color:#D6CDC0;line-height:1.62;display:grid;grid-template-columns:auto 1fr;gap:.9rem}
.contra li i{font-family:var(--sm);font-style:normal;font-size:.62rem;color:var(--br-cl);
 padding-top:.28rem;font-variant-numeric:tabular-nums}
.metodo{background:var(--esc2);padding:clamp(1.4rem,3vw,2.2rem);align-self:start}
.metodo h3{font-family:var(--sm);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;
 color:var(--br-cl);margin-bottom:1.1rem;font-weight:600}
.metodo dl{margin:0;display:flex;flex-direction:column;gap:.85rem}
.metodo dt{font-family:var(--sm);font-size:.55rem;letter-spacing:.15em;text-transform:uppercase;
 color:#8E857A;margin-bottom:.2rem}
.metodo dd{margin:0;font-size:.85rem;color:#DCD4C8;line-height:1.6}
.metodo dd a{color:var(--br-cl);text-decoration:underline;text-underline-offset:2px}
@media(max-width:860px){.contra-in{grid-template-columns:1fr}}

/* ---------------- MAPA ---------------- */
.mapabox{border:1px solid var(--line);background:var(--pa)}
.mapa-topo{padding:clamp(1.4rem,3vw,2.4rem) clamp(1.4rem,3vw,2.4rem) 0}
.mapa-topo h2{font-size:clamp(1.45rem,4.6vw,2.5rem);max-width:20ch}
.mapa-topo p{color:var(--ink2);max-width:min(62ch,100%);margin:.9rem 0 0;font-size:.95rem}
.mapa-palco{position:relative;margin-top:clamp(1.2rem,2.6vw,1.8rem);
 height:clamp(380px,48vw,600px);overflow:hidden;background:#EFEDE8;
 border-top:1px solid var(--line);border-bottom:1px solid var(--line);touch-action:pan-y;cursor:grab}
.mapa-palco.arrastando{cursor:grabbing}
.mapa-in{position:absolute;top:50%;left:50%;width:100%;height:auto;
 transform:translate(-50%,-50%) scale(1);transform-origin:center center;
 transition:transform .18s ease-out;will-change:transform}
.mapa-in.livre{transition:none}
.mapa-in>picture{display:block;width:100%;height:auto}
.mapa-base{display:block;width:100%;height:auto;object-fit:fill;user-select:none;
 -webkit-user-drag:none;pointer-events:none}
.mp{position:absolute;transform:translate(-50%,-100%);z-index:3;background:none;border:0;padding:0;
 cursor:pointer;line-height:0;transition:opacity .2s,transform .16s}
.mp:hover,.mp:focus-visible{transform:translate(-50%,-100%) scale(1.22);z-index:6}
.mp[hidden]{display:none}
.mp .bolha{width:28px;height:28px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);
 border:2px solid #fff;box-shadow:0 3px 8px rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center}
.mp .bolha svg{width:13px;height:13px;transform:rotate(45deg);color:#fff}
.mp.c-planik .bolha{width:36px;height:36px;border-color:#E6C99C;border-width:3px}
.mp.c-planik .bolha svg{width:17px;height:17px}
.mp .rot{position:absolute;left:50%;top:100%;transform:translateX(-50%);margin-top:4px;
 font-family:var(--sm);font-size:.55rem;white-space:nowrap;background:#17140F;color:#fff;
 padding:.28em .5em;opacity:0;transition:opacity .16s;pointer-events:none;font-weight:600}
.mp:hover .rot,.mp:focus-visible .rot{opacity:1}
.mapa-zoom{position:absolute;right:.9rem;top:.9rem;z-index:7;display:flex;flex-direction:column;gap:1px;
 background:var(--line);border:1px solid var(--line)}
.mapa-zoom button{width:34px;height:34px;border:0;background:#fff;color:var(--ink);cursor:pointer;
 font-size:1.15rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .18s}
.mapa-zoom button:hover{background:var(--pa2)}
.mapa-credito{position:absolute;right:.7rem;bottom:.6rem;z-index:7;font-family:var(--sm);
 font-size:.53rem;color:#6E6A62;background:rgba(255,255,255,.9);padding:.25em .55em}
.legbar{padding:clamp(1rem,2.4vw,1.6rem) clamp(1.4rem,3vw,2.4rem) clamp(1.2rem,2.6vw,1.8rem)}
.legbar-t{font-family:var(--sm);font-size:.55rem;letter-spacing:.22em;text-transform:uppercase;
 color:var(--ink3);margin-bottom:.9rem;display:block}
.legs{display:flex;flex-wrap:wrap;gap:.5rem clamp(1rem,2.2vw,1.9rem)}
.leg{display:inline-flex;align-items:center;gap:.6rem;background:none;border:0;padding:.3rem 0;
 cursor:pointer;font:inherit;color:var(--ink);transition:opacity .2s}
.leg[aria-pressed="false"]{opacity:.3}
.leg-p{width:18px;height:18px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);flex:0 0 auto;
 display:flex;align-items:center;justify-content:center;border:1.5px solid #fff;
 box-shadow:0 1px 3px rgba(0,0,0,.26)}
.leg-p svg{width:9px;height:9px;transform:rotate(45deg);color:#fff}
.leg-n{font-size:.84rem;white-space:nowrap}
.leg-c{font-family:var(--sm);font-size:.68rem;color:var(--ink3);font-variant-numeric:tabular-nums}
.mapa-nota2{font-family:var(--sm);font-size:.6rem;color:var(--ink3);line-height:1.8;margin-top:1.1rem;max-width:82ch}
@media(max-width:700px){.mapa-palco{height:clamp(340px,64vw,440px)}.leg-n{font-size:.76rem}}

/* ---------------- microrregiões ---------------- */
.painel{position:relative;min-height:clamp(360px,44vw,540px);display:flex;align-items:flex-end;
 overflow:hidden;background:var(--esc);margin-top:clamp(1rem,2vw,1.5rem)}
.painel>picture{position:absolute;inset:0}
.painel img{transition:transform 7s ease-out}
.painel:hover img{transform:scale(1.04)}
.painel::after{content:'';position:absolute;inset:0;
 background:linear-gradient(100deg,rgba(12,10,7,.88) 0%,rgba(12,10,7,.56) 42%,rgba(12,10,7,.08) 76%)}
.painel.inv::after{background:linear-gradient(260deg,rgba(12,10,7,.88) 0%,rgba(12,10,7,.56) 42%,rgba(12,10,7,.08) 76%)}
.painel-t{position:relative;z-index:2;padding:clamp(1.6rem,3.4vw,2.8rem);max-width:600px}
.painel.inv .painel-t{margin-left:auto;text-align:right}
.painel-num{display:block;font-family:var(--sm);font-size:.58rem;letter-spacing:.24em;
 text-transform:uppercase;color:#E6C99C;margin-bottom:.75rem;font-weight:600}
.painel-t h3{color:#fff;font-size:clamp(1.55rem,5.4vw,3rem);letter-spacing:-.024em}
.painel-t p{color:#EAE3D8;font-size:.95rem;margin:1rem 0 0;max-width:min(46ch,100%);line-height:1.7}
.painel-dados{display:flex;gap:clamp(1.2rem,3vw,2.4rem);margin-top:1.5rem;flex-wrap:wrap}
.painel.inv .painel-dados{justify-content:flex-end}
.painel-dados b{display:block;font-family:var(--sf);font-size:clamp(1.5rem,2.4vw,2rem);color:#fff;
 line-height:1;font-weight:400}
.painel-dados span{display:block;font-family:var(--sm);font-size:.55rem;letter-spacing:.13em;
 text-transform:uppercase;color:#CFC5B6;margin-top:.42rem;line-height:1.45}
@media(max-width:700px){.painel-t{max-width:100%}.painel.inv .painel-t{text-align:left}
 .painel.inv .painel-dados{justify-content:flex-start}
 .painel::after,.painel.inv::after{background:linear-gradient(180deg,rgba(12,10,7,.22),rgba(12,10,7,.9))}}

/* ---------------- ruas ---------------- */
.trilho{display:flex;gap:clamp(.8rem,1.6vw,1.3rem);overflow-x:auto;scroll-snap-type:x mandatory;
 margin-inline:calc(var(--g)*-1);padding:2px var(--g) 1.3rem;scrollbar-width:none}
.trilho::-webkit-scrollbar{display:none}
.rvc{position:relative;flex:0 0 clamp(230px,24vw,310px);scroll-snap-align:start}
.rvc-f{position:relative;aspect-ratio:3/4;overflow:hidden;background:var(--pa3)}
.rvc-f img{transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.rvc:hover .rvc-f img{transform:scale(1.05)}
.rvc-f::after{content:'';position:absolute;inset:0;
 background:linear-gradient(180deg,rgba(12,10,7,.16) 0%,rgba(12,10,7,0) 32%,rgba(12,10,7,.8) 100%)}
.rvc-n{position:absolute;top:.7rem;left:.7rem;z-index:2;font-family:var(--sm);font-size:.6rem;
 font-weight:700;color:#17140F;background:#F6EFE5;padding:.4rem .62rem}
.rvc-t{position:absolute;inset:auto 0 0 0;z-index:2;padding:1rem .95rem}
.rvc-t h3{color:#fff;font-size:clamp(1.25rem,1.9vw,1.6rem);letter-spacing:-.018em}
.rvc p{margin:.75rem .1rem 0;font-size:.82rem;color:var(--ink2);line-height:1.6}

/* ---------------- Planik ---------------- */
.pkx{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:stretch;
 border:1px solid var(--line);background:var(--pa);margin-top:clamp(1rem,2vw,1.5rem);
 transition:border-color .25s,box-shadow .25s}
.pkx:hover{border-color:var(--line2);box-shadow:0 16px 40px -28px rgba(23,20,15,.4)}
.pkx.inv .pkx-f{order:2}
.pkx-f{position:relative;min-height:clamp(280px,32vw,420px);overflow:hidden;background:var(--pa3)}
.pkx-f img{transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.pkx:hover .pkx-f img{transform:scale(1.04)}
.pkx-selo{position:absolute;top:0;left:0;font-family:var(--sm);font-size:.55rem;letter-spacing:.14em;
 text-transform:uppercase;font-weight:700;background:var(--pa);color:var(--br);padding:.5rem .85rem}
.pkx-t{padding:clamp(1.5rem,3.2vw,2.8rem);display:flex;flex-direction:column;justify-content:center}
.pkx-t .eyebrow{color:var(--br);display:block;margin-bottom:.7rem}
.pkx-t h3{font-size:clamp(1.5rem,4.6vw,2.6rem);letter-spacing:-.026em}
.pkx-con{font-size:.95rem;color:var(--ink2);margin:1rem 0 0;line-height:1.7;max-width:min(42ch,100%)}
.pkx-tip{margin-top:1.3rem;border-top:1px solid var(--line);padding-top:1.1rem;
 display:flex;flex-direction:column;gap:.4rem}
.pkx-tip span{font-family:var(--sm);font-size:.7rem;color:var(--ink2);font-variant-numeric:tabular-nums;
 display:flex;justify-content:space-between;gap:1.2rem;max-width:34ch}
.pkx-tip span b{color:var(--ink);font-weight:600}
.pkx-cta{display:inline-flex;align-items:center;gap:.75rem;margin-top:1.6rem;align-self:flex-start;
 font-family:var(--sm);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;
 color:#fff;background:var(--ink);padding:.95em 1.7em;transition:.22s}
.pkx-cta:hover{background:var(--br);gap:1.1rem}
.pkx-cta svg{width:12px;height:12px}
@media(max-width:860px){.pkx{grid-template-columns:1fr}.pkx.inv .pkx-f{order:0}
 .pkx-f{min-height:230px}}

/* ---------------- FAQ ---------------- */
.faq{border-top:1px solid var(--line);max-width:90ch}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;display:flex;gap:1.3rem;align-items:baseline;
 padding:1.2rem 0;font-family:var(--sf);font-size:clamp(1.1rem,1.8vw,1.4rem);transition:color .2s}
.faq summary:hover{color:var(--br)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';margin-left:auto;font-family:var(--sa);font-weight:200;font-size:1.4rem;
 color:var(--br);line-height:1;transition:transform .3s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq-c{padding:0 0 1.4rem;max-width:72ch}
.faq-c p{margin:0;color:var(--ink2);font-size:.92rem;line-height:1.75}
.faq-c a{color:var(--br);text-decoration:underline;text-underline-offset:3px}

/* ---------------- modal ---------------- */
.mo{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;
 padding:clamp(.8rem,3vw,2.4rem)}
.mo.on{display:flex}
.mo-bd{position:absolute;inset:0;background:rgba(12,10,7,.84);backdrop-filter:blur(5px)}
.mo-box{position:relative;z-index:2;background:var(--pa);max-width:960px;width:100%;max-height:92vh;
 overflow:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
 animation:moin .32s cubic-bezier(.2,.8,.2,1)}
@keyframes moin{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.mo-f{position:relative;min-height:clamp(200px,30vw,440px);background:var(--pa3);overflow:hidden}
.mo-badge{position:absolute;top:0;left:0;z-index:2;font-family:var(--sm);font-size:.56rem;
 letter-spacing:.14em;text-transform:uppercase;font-weight:700;background:var(--pa);color:var(--tj);
 padding:.55rem .9rem}
.mo-t{padding:clamp(1.4rem,3vw,2.4rem);display:flex;flex-direction:column}
.mo-k{font-family:var(--sm);font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;
 color:var(--br);font-weight:600;margin-bottom:.6rem}
.mo-t h3{font-size:clamp(1.7rem,3vw,2.4rem);letter-spacing:-.024em}
.mo-d{margin:1rem 0 0;font-size:.94rem;color:var(--ink2);line-height:1.72}
.mo-info{margin-top:1.4rem;border-top:1px solid var(--line);padding-top:1rem;
 display:flex;flex-direction:column;gap:.6rem}
.mo-l{display:flex;gap:.7rem;align-items:flex-start;font-size:.86rem;color:var(--ink2)}
.mo-l svg{width:14px;height:14px;flex:0 0 auto;color:var(--br);margin-top:.2rem}
.mo-l b{display:block;font-family:var(--sm);font-size:.55rem;letter-spacing:.15em;text-transform:uppercase;
 color:var(--ink3);font-weight:600;margin-bottom:.14rem}
.mo-cta{display:inline-flex;align-items:center;gap:.7rem;margin-top:1.5rem;align-self:flex-start;
 font-family:var(--sm);font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;font-weight:700;
 color:#fff;background:var(--ink);padding:.9em 1.5em;transition:.22s}
.mo-cta:hover{background:var(--br);gap:1rem}
.mo-cta svg{width:12px;height:12px}
.mo-x{position:absolute;top:.8rem;right:.8rem;z-index:5;width:38px;height:38px;border:0;
 background:var(--pa);color:var(--ink);cursor:pointer;display:flex;align-items:center;
 justify-content:center;font-size:1.4rem;line-height:1;transition:.2s;box-shadow:0 2px 10px rgba(0,0,0,.2)}
.mo-x:hover{background:var(--ink);color:#fff}
.mo-nota{font-family:var(--sm);font-size:.58rem;color:var(--ink3);margin-top:1.2rem;line-height:1.75}
body.mo-open{overflow:hidden}
@media(max-width:820px){.mo-box{grid-template-columns:1fr;max-height:88vh}.mo-f{min-height:180px}}

/* ---------------- rodapé ---------------- */
.rod{background:var(--esc);color:#B8AFA2}
.rod-in{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);
 gap:clamp(1.6rem,3.4vw,3rem);padding-block:clamp(2.4rem,5vw,3.6rem)}
.rod img{height:16px;width:auto;object-fit:contain;filter:invert(1) brightness(1.6);margin-bottom:1.2rem}
.rod h4{font-family:var(--sm);font-size:.56rem;letter-spacing:.2em;text-transform:uppercase;
 color:#7E766B;margin:0 0 .9rem;font-weight:600}
.rod p{font-size:.82rem;line-height:1.75;max-width:46ch;margin:0 0 .8rem}
.rod a{display:block;font-size:.82rem;padding:.24rem 0;transition:color .2s}
.rod a:hover{color:#fff}
.rod-base{border-top:1px solid var(--esc3);padding-block:1.3rem 2rem;font-family:var(--sm);
 font-size:.6rem;color:#7E766B;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;line-height:1.8}
@media(max-width:800px){.rod-in{grid-template-columns:1fr}}

.fonte{font-family:var(--sm);font-size:.6rem;color:var(--ink3);line-height:1.85;max-width:84ch;margin-top:1.4rem}
.esc .fonte{color:#8E857A}
.fonte a{text-decoration:underline;text-underline-offset:2px}

/* ---------------- reveal ---------------- */
html.js .rv{opacity:0;transform:translateY(14px)}
html.js .rv.in{opacity:1;transform:none;
 transition:opacity .6s cubic-bezier(.2,.8,.2,1),transform .6s cubic-bezier(.2,.8,.2,1)}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}
 html.js .rv{opacity:1;transform:none}html{scroll-behavior:auto}}
:focus-visible{outline:2px solid var(--br);outline-offset:3px}
.esc :focus-visible,.contra :focus-visible{outline-color:var(--br-cl)}

/* ---- guarda de largura: nada ultrapassa o container ---- */
h1,h2,h3,h4,p,dd,blockquote,li,span{overflow-wrap:break-word}
.w>*,.wn>*{max-width:100%}
@media(max-width:520px){
 :root{--g:1.1rem}
 .hero h1{max-width:100%}
 .placa h2{max-width:100%}
 .sh h2,.contra h2,.mapa-topo h2{max-width:100%}
 .verbetes{grid-template-columns:1fr}
 .dado-in{grid-template-columns:1fr}
 .hero-cred span{font-size:.55rem;letter-spacing:.12em}
}


/* ============ V6 ============ */
/* menu no topo, fixo */
.menubar{position:sticky;top:0;z-index:95}
/* hero preenche a tela abaixo do menu */
.hero{min-height:calc(100svh - 58px)}
@supports not (height:100svh){.hero{min-height:calc(100vh - 58px)}}
.hero-main{padding-block:clamp(2.2rem,7vh,4.6rem)}
.hero-in{padding-bottom:clamp(1.5rem,4vh,3rem)}
/* respiro entre o hero e o primeiro capitulo */
.respiro{height:clamp(2.5rem,7vw,6rem);background:var(--pa)}
@media(max-width:700px){.hero{min-height:calc(100svh - 56px)}}
/* pular para o conteudo */
.pular{position:absolute;left:-9999px;top:0;z-index:200;background:var(--ink);color:#fff;
 font-family:var(--sm);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;
 padding:.9rem 1.4rem}
.pular:focus{left:.6rem;top:.6rem}
.mo[inert]{display:none!important}
/* menu abaixo do hero */
.menubar{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.97);
 backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.menubar-in{display:flex;align-items:center;gap:1rem;height:58px;max-width:var(--max);
 margin:0 auto;padding-inline:var(--g)}
.menubar .brand{gap:.9rem}
.menubar .brand img{height:14px}
.menubar .menu{margin-left:auto}
.hero-topo{position:absolute;top:0;left:0;right:0;z-index:3;display:flex;align-items:center;
 justify-content:space-between;padding:1.2rem var(--g)}
.hero-topo img{height:20px;width:auto;object-fit:contain;filter:brightness(0) invert(1)}
.hero-topo span{font-family:var(--sm);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;
 color:rgba(255,255,255,.85)}
.hero{min-height:calc(100svh - 58px)}
/* tiles "perto de verdade" */
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);
 border:1px solid var(--line);margin-top:clamp(1.8rem,3.6vw,2.8rem)}
.tile{background:var(--pa);padding:clamp(1.2rem,2.4vw,1.8rem) 1.2rem}
.tile b{display:block;font-family:var(--sf);font-size:clamp(1.9rem,3.4vw,2.8rem);line-height:.95;
 font-weight:400;letter-spacing:-.02em}
.tile span{display:block;font-size:.8rem;color:var(--ink2);margin-top:.55rem;line-height:1.5}
@media(max-width:860px){.tiles{grid-template-columns:repeat(2,1fr)}}
/* verbete legivel no fundo escuro */
.esc .verbete dd{color:#D8D0C3}
.esc .verbete .vb-dados{color:#A79D8F;border-bottom-color:rgba(255,255,255,.16)}
.esc .verbete p{color:#D8D0C3}
.esc .vb-ir{color:#F0EBE2;border-color:rgba(255,255,255,.35)}
.esc .vb-ir:hover{color:var(--br-cl);border-color:var(--br-cl)}
.verbete[data-nome]{cursor:pointer}
.verbete[data-nome] .vb-ir{pointer-events:none}
/* fim de semana: miniatura, nao lamina */
#fimdesemana .hr{grid-template-columns:auto minmax(0,1fr) 190px;
 gap:.6rem clamp(1.2rem,2.4vw,2rem);padding:clamp(.9rem,1.8vw,1.2rem) 0;align-items:center}
#fimdesemana .hr-f{aspect-ratio:16/10;width:190px;height:auto}
#fimdesemana .hr-t h4{font-size:clamp(1.05rem,1.6vw,1.3rem);margin-bottom:.25rem}
#fimdesemana .hr-t p{font-size:.84rem;max-width:60ch}
#fimdesemana .hr.sem{grid-template-columns:auto minmax(0,1fr)}
@media(max-width:700px){#fimdesemana .hr{grid-template-columns:auto minmax(0,1fr) 96px}
 #fimdesemana .hr-f{width:96px;aspect-ratio:1/1}
 #fimdesemana .hr.sem{grid-template-columns:auto minmax(0,1fr)}}
/* boemia: branco sobre preto, sem tons quentes */
/* boemia clara: overrides antigos removidos */
/* pins v6 */
.mp .bolha{width:30px;height:30px}
.mp:hover,.mp:focus-visible{z-index:40}
.mp .rot{display:flex;flex-direction:column;gap:2px;align-items:center;
 font-size:.7rem;line-height:1.25;padding:.5em .85em;margin-top:7px;
 background:#17140F;color:#fff;box-shadow:0 4px 14px rgba(0,0,0,.4);
 border:1px solid rgba(255,255,255,.14);white-space:nowrap;z-index:60}
.mp .rot i{display:block;font-style:normal;font-size:.52rem;letter-spacing:.16em;
 text-transform:uppercase;color:#92643A;line-height:1.2}
.mp.c-planik{z-index:5}
.mp.c-planik .bolha{width:46px;height:46px;background:#fff!important;border:2px solid #17140F;
 border-radius:50% 50% 50% 0;box-shadow:0 4px 14px rgba(0,0,0,.45);padding:6px}
.mp.c-planik .bolha svg{display:none}
.mp.c-planik .bolha::after{content:'';transform:rotate(45deg);width:100%;height:100%;
 background:url('img/planik-map-marker.png') center/contain no-repeat;display:block}
.mp.c-planik:hover,.mp.c-planik:focus-visible{transform:translate(-50%,-100%) scale(1.15)}
/* mapa em tela unica: legenda a esquerda, mapa a direita */
.mapabox{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);
 height:calc(100svh - 58px - clamp(2rem,4vw,3.4rem)*2);min-height:520px;max-height:860px}
.mapa-topo{padding:clamp(1.3rem,2.6vw,2rem);overflow:auto;display:flex;flex-direction:column}
.mapa-topo h2{font-size:clamp(1.4rem,2.1vw,1.9rem);max-width:16ch}
.mapa-topo p{font-size:.86rem;margin-top:.8rem}
.mapa-palco{margin-top:0;height:100%;border-top:0;border-bottom:0;border-left:1px solid var(--line)}
.legbar{padding:1.1rem 0 0}
.legs{flex-direction:column;gap:.15rem;align-items:stretch}
.leg{justify-content:flex-start;padding:.34rem 0;border-bottom:1px solid var(--line)}
.leg:last-child{border-bottom:0}
.leg-c{margin-left:auto}
@media(max-width:920px){
 .mapabox{grid-template-columns:1fr;height:auto;max-height:none}
 .mapa-palco{height:clamp(300px,44svh,420px);border-left:0;border-top:1px solid var(--line)}
 .mapa-topo{padding:1rem 1.1rem}
 .mapa-topo p{margin-top:.5rem;font-size:.8rem}
 .legbar{padding-top:.7rem}
 .mapa-topo{overflow:visible}
 .legs{flex-direction:row;flex-wrap:wrap;gap:.3rem .9rem}
 .leg{border-bottom:0;padding:.25rem 0}
 .leg-c{margin-left:.2rem}
 .leg-n{font-size:.74rem}
}
/* rodape minimo */
.rodmin{background:var(--esc);color:#B8AFA2}
.rodmin-in{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);
 gap:clamp(1.8rem,4vw,4rem);padding-block:clamp(2.2rem,4.6vw,3.4rem);align-items:center}
.rodmin img{height:20px;width:auto;object-fit:contain;filter:invert(1) brightness(1.6);
 margin-bottom:1.1rem}
.rodmin p{font-family:var(--sf);font-size:clamp(1.15rem,2vw,1.5rem);color:#EFE9DF;
 max-width:26ch;margin:0;line-height:1.35}
.rodmin nav{display:grid;grid-template-columns:repeat(2,auto);gap:.15rem 2.4rem;justify-content:end}
.rodmin nav a{font-family:var(--sm);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;
 color:#B8AFA2;padding:.34rem 0;transition:color .2s}
.rodmin nav a:hover{color:#fff}
.rodmin-base{border-top:1px solid var(--esc3);padding-block:1.1rem 1.6rem;font-family:var(--sm);
 font-size:.6rem;color:#7E766B}
@media(max-width:760px){.rodmin-in{grid-template-columns:1fr}.rodmin nav{justify-content:start}}

/* ===== v7: hero compacto + banners editoriais ===== */
.hero7{background:#fff;border-bottom:1px solid rgba(23,20,15,.08)}
.hero7-in{display:grid;grid-template-columns:.92fr 1.08fr;align-items:stretch;
 gap:clamp(2rem,4.5vw,4.5rem);min-height:clamp(430px,56vh,560px)}
.hero7-t{align-self:center;padding-block:clamp(2.4rem,6vh,4rem)}
.h7-eye{display:block;font:600 .66rem/1 Montserrat,sans-serif;letter-spacing:.2em;
 text-transform:uppercase;color:#92643A;margin-bottom:1.4rem}
.hero7 h1{font:500 clamp(2.7rem,5vw,4.3rem)/1.04 'Playfair Display',serif;color:#17140F;
 margin:0 0 1rem}
.h7-sub{font:400 1.05rem/1.4 Montserrat,sans-serif;color:#17140F;margin-bottom:.9rem}
.h7-p{font-size:.92rem;line-height:1.65;color:rgba(23,20,15,.62);max-width:44ch;
 margin-bottom:1.8rem}
.h7-ctas{display:flex;gap:.8rem;flex-wrap:wrap}
.h7-b{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.3rem;
 background:#17140F;color:#fff;font:600 .68rem/1 Montserrat,sans-serif;
 letter-spacing:.14em;text-transform:uppercase;text-decoration:none}
.h7-b2{background:transparent;border:1px solid rgba(23,20,15,.35);color:#17140F}
.h7-b2:hover{border-color:#92643A;color:#92643A}
.hero7-f{overflow:hidden}
.hero7-f picture,.hero7-f img{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:860px){.hero7-in{grid-template-columns:1fr;min-height:0}
 .hero7-f{order:-1;aspect-ratio:16/10}.hero7-t{padding-block:1.8rem 2.6rem}}

.ban{background:#fff;border-top:1px solid rgba(23,20,15,.08)}
.ban-in{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;
 gap:clamp(2rem,5vw,4.5rem);padding-block:clamp(2.8rem,6.5vh,4.6rem)}
.ban.inv .ban-in{direction:rtl}.ban.inv .ban-in>*{direction:ltr}
.ban-f{aspect-ratio:16/11;overflow:hidden}
.ban-f picture,.ban-f img{width:100%;height:100%;object-fit:cover;display:block}
.ban-n{display:block;font:600 .66rem/1 Montserrat,sans-serif;letter-spacing:.22em;
 text-transform:uppercase;color:#92643A;margin-bottom:1rem}
.ban-t h2{font:500 clamp(1.9rem,3.2vw,2.9rem)/1.12 'Playfair Display',serif;
 color:inherit;margin:0 0 .9rem}
.ban-tese{font-size:.92rem;line-height:1.66;color:rgba(23,20,15,.65);max-width:48ch;
 margin-bottom:1.5rem}
.ban-idx{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));
 gap:1rem 1.3rem;border-top:1px solid rgba(23,20,15,.14);padding-top:1.25rem;
 margin-bottom:1.6rem}
.ban-idx b{display:block;font:600 .76rem/1.25 Montserrat,sans-serif;letter-spacing:.05em;
 text-transform:uppercase;color:inherit}
.ban-idx span{display:block;font-size:.76rem;line-height:1.35;
 color:rgba(23,20,15,.52);margin-top:.3rem}
.ban-link{display:inline-flex;align-items:center;gap:.5rem;
 font:600 .68rem/1 Montserrat,sans-serif;letter-spacing:.14em;text-transform:uppercase;
 color:#17140F;text-decoration:none;border-bottom:1px solid #92643A;padding-bottom:.4rem}
.ban-link:hover{color:#92643A}
.ban.esc{background:#000;color:#fff;border-top:none}
.ban.esc .ban-tese{color:rgba(255,255,255,.72)}
.ban.esc .ban-idx{border-top-color:rgba(255,255,255,.25)}
.ban.esc .ban-idx span{color:rgba(255,255,255,.55)}
.ban.esc .ban-link{color:#fff}
@media(max-width:860px){.ban-in{grid-template-columns:1fr;gap:1.5rem}
 .ban-f{order:-1;aspect-ratio:16/10}}

/* roteiro em timeline */
.tl{display:flex;gap:1.15rem;overflow-x:auto;padding-bottom:.9rem;
 scrollbar-width:thin;margin-bottom:1.4rem}
.tl-i{flex:0 0 172px;background:none;border:0;padding:0;text-align:left;font:inherit;color:inherit;cursor:pointer}
.tl-f{position:relative;aspect-ratio:4/3;overflow:hidden;background:#EFEBE2;
 margin-bottom:.7rem}
.tl-f picture,.tl-f img{width:100%;height:100%;object-fit:cover;display:block}
.tl-n{position:absolute;top:.55rem;left:.55rem;width:23px;height:23px;border-radius:50%;
 background:#17140F;color:#fff;font:600 .62rem/23px Montserrat,sans-serif;
 text-align:center;z-index:2}
.tl-h{font:600 .64rem/1 Montserrat,sans-serif;letter-spacing:.1em;color:#92643A;
 margin-bottom:.35rem}
.tl-t{font:600 .84rem/1.3 Montserrat,sans-serif;color:#17140F;margin-bottom:.3rem}
.tl-d{font-size:.75rem;line-height:1.5;color:rgba(23,20,15,.58)}

/* cabeçalho de imóveis com régua */
.mor7{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(1.6rem,4vw,3.5rem);
 align-items:end;margin-bottom:2.4rem}
.mor7 h2{font:500 clamp(2rem,3.4vw,3.1rem)/1.1 'Playfair Display',serif;margin:.7rem 0 0}
.mor7-r p{font-size:.93rem;line-height:1.65;color:rgba(23,20,15,.65);margin-bottom:1.3rem}
.mor7-num{display:flex;gap:0;border-top:1px solid rgba(23,20,15,.15);padding-top:1.1rem}
.mor7-num span{flex:1;font:400 .78rem/1.3 Montserrat,sans-serif;color:rgba(23,20,15,.55);
 padding-right:1.2rem}
.mor7-num span+span{border-left:1px solid rgba(23,20,15,.15);padding-left:1.2rem}
.mor7-num b{display:block;font:500 1.5rem/1.1 'Playfair Display',serif;color:#17140F;
 margin-bottom:.25rem}
@media(max-width:860px){.mor7{grid-template-columns:1fr}}

/* ===== v8: mapa vetorial editorial ===== */
.setabx{display:inline-flex;transform:rotate(90deg)}
.setavl{display:inline-flex;transform:rotate(180deg)}
.ban-f{aspect-ratio:16/9}
.mapav{display:grid;grid-template-columns:minmax(280px,340px) 1fr;background:#fff;
 border:1px solid rgba(23,20,15,.1);height:min(calc(100svh - 130px),820px);overflow:hidden}
.msb{padding:1.7rem 1.6rem;border-right:1px solid rgba(23,20,15,.1);overflow:auto}
.msb-h{font:500 1.85rem/1.15 'Playfair Display',serif;margin:.6rem 0 .8rem;color:#17140F}
.msb-p{font-size:.84rem;line-height:1.6;color:rgba(23,20,15,.62);margin-bottom:1.2rem}
.mcats{display:flex;flex-direction:column}
.mcat{display:flex;align-items:center;gap:.65rem;width:100%;padding:.82rem .2rem;
 background:none;border:0;border-top:1px solid rgba(23,20,15,.1);
 font:500 .88rem/1 Montserrat,sans-serif;color:#17140F;cursor:pointer;text-align:left}
.mcat i{width:30px;height:30px;border-radius:50%;background:var(--c);flex:none;
 display:grid;place-items:center;color:#fff}
.mcat i svg{width:14px;height:14px}
.mcat b{margin-left:auto;font:600 .72rem/1 Montserrat,sans-serif;color:rgba(23,20,15,.45)}
.mcat[aria-pressed="false"]{opacity:.38}
.mcat[aria-pressed="false"] i{background:#B9B9B3}
.mplk{display:flex;align-items:center;gap:.65rem;padding:.85rem .2rem;
 border-top:1px solid rgba(23,20,15,.1);border-bottom:1px solid rgba(23,20,15,.1);
 font:500 .88rem/1 Montserrat,sans-serif;color:#17140F}
.mplk img{border-radius:50%;border:1px solid rgba(23,20,15,.2)}
.mplk b{margin-left:auto;font:600 .72rem/1 Montserrat,sans-serif;color:rgba(23,20,15,.45)}
.mvolta{display:inline-flex;align-items:center;gap:.5rem;background:none;border:0;padding:0;
 font:600 .68rem/1 Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase;
 color:#17140F;cursor:pointer;margin-bottom:.4rem}
.mvolta:hover{color:#92643A}
.mf-foto{aspect-ratio:16/10;overflow:hidden;background:#F0EEE8;margin:.9rem 0 1rem}
.mf-foto img{width:100%;height:100%;object-fit:cover;display:block}
#msb-ficha h3{font:500 1.5rem/1.2 'Playfair Display',serif;margin:0 0 .35rem}
.mf-cat{display:block;font:600 .64rem/1 Montserrat,sans-serif;letter-spacing:.14em;
 text-transform:uppercase;color:#92643A;margin-bottom:.7rem}
.mf-end{font-size:.88rem;line-height:1.5;color:rgba(23,20,15,.68);margin-bottom:1.2rem}
.mf-cta{display:inline-flex;align-items:center;gap:.5rem;
 font:600 .68rem/1 Montserrat,sans-serif;letter-spacing:.13em;text-transform:uppercase;
 color:#17140F;text-decoration:none;border-bottom:1px solid #92643A;padding-bottom:.4rem}
.mf-cta:hover{color:#92643A}
.mpalco{position:relative;background:#F5F5F2;display:flex;align-items:center;
 justify-content:center;overflow:hidden}
.mwrap{position:relative;height:100%;aspect-ratio:1200/955;max-width:100%}
.mwrap svg{width:100%;height:100%;display:block}
.vp{position:absolute;width:26px;height:26px;border-radius:50%;background:var(--c);
 border:2px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.25);color:#fff;
 display:grid;place-items:center;transform:translate(-50%,-50%);cursor:pointer;
 padding:0;transition:transform .15s}
.vp>svg{width:13px;height:13px}
.vp[hidden]{display:none}
.vp:hover,.vp.on{transform:translate(-50%,-50%) scale(1.3);z-index:40}
.vp.plk{width:34px;height:34px;background:#fff url('img/planik-pin.png') center/60% no-repeat;
 border:1.5px solid #17140F;z-index:20}
.vp-rot{position:absolute;left:calc(100% + 9px);top:50%;transform:translateY(-50%);
 background:#fff;color:#17140F;border-radius:10px;box-shadow:0 5px 18px rgba(0,0,0,.16);
 padding:.55rem .8rem;font:600 .78rem/1.3 Montserrat,sans-serif;text-align:left;
 white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s;
 display:flex;flex-direction:column;gap:.2rem;z-index:60}
.vp-rot em{font:400 .64rem/1 Montserrat,sans-serif;font-style:normal;
 color:rgba(23,20,15,.55)}
.vp:hover .vp-rot,.vp:focus-visible .vp-rot{opacity:1}
.mapa-credito{position:absolute;right:.6rem;bottom:.5rem;
 font:400 .58rem/1 Montserrat,sans-serif;color:rgba(23,20,15,.4)}
@media(max-width:900px){
 .mapav{grid-template-columns:1fr;height:auto}
 .msb{border-right:0;border-bottom:1px solid rgba(23,20,15,.1)}
 .mpalco{aspect-ratio:1200/955}
 #msb-ficha{position:fixed;left:0;right:0;bottom:0;z-index:130;background:#fff;
  padding:1.2rem 1.4rem calc(1.4rem + env(safe-area-inset-bottom));
  box-shadow:0 -10px 34px rgba(0,0,0,.2);max-height:62svh;overflow:auto}}

.mosaico{display:grid;grid-template-columns:1.15fr 1fr;grid-auto-rows:225px;gap:1.2rem;
 margin-bottom:1.1rem}
.mos{position:relative;overflow:hidden;border:0;padding:0;cursor:pointer;text-align:left;
 background:#EFEBE2;font:inherit}
.mos picture,.mos img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
 transition:transform .5s}
.mos:hover img{transform:scale(1.045)}
.mos::after{content:'';position:absolute;inset:0;z-index:1;
 background:linear-gradient(180deg,rgba(0,0,0,0) 34%,rgba(0,0,0,.74) 100%)}
.mos-t{position:absolute;left:1.2rem;right:1.2rem;bottom:1.15rem;z-index:2;color:#fff}
.mos-t em{display:block;font:600 .62rem/1 Montserrat,sans-serif;letter-spacing:.16em;
 text-transform:uppercase;color:#E6C9A8;font-style:normal;margin-bottom:.5rem}
.mos-t b{display:block;font:500 1.42rem/1.2 'Playfair Display',serif}
.mos-t>span{display:block;font-size:.82rem;line-height:1.5;color:rgba(255,255,255,.86);
 margin-top:.4rem;max-width:46ch}
.mos-g{grid-row:span 2}
.mos-g .mos-t b{font-size:1.85rem}
.chips-solo{margin-top:.5rem}
.mlz-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:.4rem}
.mlz{display:flex;align-items:center;gap:.95rem;background:#fff;
 border:1px solid rgba(23,20,15,.13);padding:.7rem;cursor:pointer;text-align:left;
 font:inherit;color:#17140F;transition:border-color .2s}
.mlz:hover,.mlz:focus-visible{border-color:#92643A}
.mlz-f{flex:none;width:96px;aspect-ratio:4/3;overflow:hidden;display:block}
.mlz-f picture,.mlz-f img{width:100%;height:100%;object-fit:cover;display:block}
.mlz-t b{display:block;font:500 1.04rem/1.25 'Playfair Display',serif;margin-bottom:.35rem}
.mlz-t>span{display:flex;align-items:center;gap:.4rem;
 font:600 .6rem/1 Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase;
 color:rgba(23,20,15,.55)}
.mlz-t>span svg{width:11px;height:11px}
@media(max-width:860px){.mlz-row{grid-template-columns:1fr}}
@media(max-width:860px){.mosaico{grid-template-columns:1fr;grid-auto-rows:205px}
 .mos-g{grid-row:auto}}
#msb-ficha{position:absolute;top:1rem;right:1rem;width:min(300px,calc(100% - 2rem));max-height:calc(100% - 2rem);overflow:auto;background:#fff;box-shadow:0 14px 44px rgba(0,0,0,.22);padding:1.25rem 1.3rem 1.4rem;z-index:90}.mf-x{position:absolute;top:.45rem;right:.6rem;background:none;border:0;font-size:1.5rem;line-height:1;cursor:pointer;color:#17140F;padding:.2rem}.mf-cta{margin-right:1.1rem;margin-bottom:.6rem}.mo-ctas{display:flex;gap:1.4rem;flex-wrap:wrap}@media(max-width:900px){#msb-ficha{position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;max-height:62svh;z-index:130;padding:1.2rem 1.4rem calc(1.4rem + env(safe-area-inset-bottom));box-shadow:0 -10px 34px rgba(0,0,0,.2)}}.mplk img{width:20px!important;height:20px!important;flex:none}.mo-f,.mf-foto{position:relative}.foto-tag{position:absolute;left:.55rem;bottom:.55rem;z-index:3;background:rgba(23,20,15,.78);color:#fff;padding:.32rem .55rem;font:600 .56rem/1 Montserrat,sans-serif;letter-spacing:.1em;text-transform:uppercase}.ban-link{white-space:nowrap}.ban-link svg,.h7-b svg,.mvolta svg,.mf-cta svg{width:14px;height:14px;flex:none}.setabx svg,.setavl svg{width:13px;height:13px}.menubar .brand img{height:21px!important;width:auto}.burger{width:28px;height:26px;padding:0;display:none;flex-direction:column;justify-content:space-between;margin-left:.9rem;background:none;border:0}.burger i{width:28px;height:4px;margin:0;background:#D98843;border-radius:1px;transition:transform .25s,opacity .25s}body.open .burger i:nth-child(1){transform:translateY(11px) rotate(45deg)}body.open .burger i:nth-child(3){transform:translateY(-11px) rotate(-45deg)}@media(max-width:1140px){.burger{display:flex}}.pkx-org{display:block;margin-top:.85rem;font:400 .8rem/1.4 Montserrat,sans-serif;color:rgba(23,20,15,.58);text-decoration:underline;text-underline-offset:3px}.pkx-org:hover{color:#92643A}.rodmin .rod-txt{font:400 .92rem/1.6 Montserrat,sans-serif!important}.rodmin nav a{font:500 .88rem/1.5 Montserrat,sans-serif!important;letter-spacing:normal!important;text-transform:none!important}.rodmin-base{font-family:Montserrat,sans-serif!important}
/* ===== dia a dia compacto ===== */
.destros{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin:1.4rem 0 3rem}
@media(max-width:960px){.destros{grid-template-columns:1fr;max-width:460px}}
.dest{display:flex;flex-direction:column;text-align:left;background:#fff;
 border:1px solid rgba(23,20,15,.13);padding:0;cursor:pointer;font:inherit;color:inherit;
 transition:border-color .2s}
.dest:hover,.dest:focus-visible{border-color:#92643A}
.dest-f{display:block;aspect-ratio:16/10;overflow:hidden}
.dest-f img{width:100%;height:100%;object-fit:cover;display:block}
.dest-t{display:block;padding:1.15rem 1.25rem .5rem}
.dest-t em{display:block;font:600 .66rem/1 Montserrat,sans-serif;letter-spacing:.16em;
 text-transform:uppercase;color:#92643A;font-style:normal;margin-bottom:.6rem}
.dest-t b{display:block;font:500 1.32rem/1.22 'Playfair Display',serif;font-weight:500;
 margin-bottom:.5rem}
.dest-t>span{display:block;font-size:.9rem;line-height:1.6;color:rgba(23,20,15,.7)}
.dest-ir{margin-top:auto;display:flex;align-items:center;gap:.45rem;
 padding:1rem 1.25rem 1.25rem;font:600 .66rem/1 Montserrat,sans-serif;
 letter-spacing:.14em;text-transform:uppercase;color:#17140F}
.dest-ir svg{width:14px;height:14px}
.rotina{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:1.2rem;
 margin-top:1.4rem}
.rot-cat{background:#fff;border:1px solid rgba(23,20,15,.13);padding:1.35rem 1.35rem 1.5rem}
.rot-h{display:flex;align-items:center;gap:.65rem;margin-bottom:1.05rem}
.rot-i{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
 background:#17140F;color:#fff}
.rot-i svg{width:15px;height:15px}
.rot-h h3{font:500 1.12rem/1.2 'Playfair Display',serif;margin:0}
.rot-n{margin-left:auto;font:600 .68rem/1 Montserrat,sans-serif;
 color:rgba(23,20,15,.45)}
.chips{display:flex;flex-wrap:wrap;gap:.55rem}
.chip{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem .85rem;
 border:1px solid rgba(23,20,15,.2);background:transparent;cursor:pointer;
 font:500 .84rem/1 Montserrat,sans-serif;color:#17140F;transition:border-color .2s,color .2s}
.chip:hover,.chip:focus-visible{border-color:#92643A;color:#92643A}
.chip i{font:600 .6rem/1 Montserrat,sans-serif;font-style:normal;color:#92643A;
 letter-spacing:.08em}
.esc .chip{border-color:rgba(255,255,255,.3);color:#fff}
.pk-tr{background:#F7F5F1;border-bottom:1px solid #E3DED4}
.pk-tr-in{width:min(1360px,100%);margin:0 auto;display:flex;align-items:center;
 gap:.9rem;padding:.6rem clamp(1.1rem,4vw,3rem)}
.pk-tr-volta{flex:0 0 auto;display:inline-flex;align-items:center;gap:.45rem;
 font:600 .625rem/1 Montserrat,sans-serif;letter-spacing:.13em;
 text-transform:uppercase;color:#17140F;text-decoration:none;background:#fff;
 border:1px solid #DEDAD1;padding:.5rem .7rem .45rem;
 transition:border-color .18s,color .18s}
.pk-tr-volta:hover,.pk-tr-volta:focus-visible{border-color:#92643A;color:#92643A}
.pk-tr-volta svg{width:12px;height:12px}
.pk-tr-risca{flex:0 0 auto;width:1px;align-self:stretch;background:#E3DED4}
.pk-tr ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;
 column-gap:.5rem;row-gap:.15rem;margin:0;padding:0;min-width:0}
.pk-tr li{display:flex;align-items:center;gap:.5rem;min-width:0;
 font:500 .625rem/1.7 Montserrat,sans-serif;letter-spacing:.13em;
 text-transform:uppercase;color:#6E675C}
.pk-tr li+li::before{content:"";flex:0 0 auto;width:4px;height:4px;
 border-top:1.2px solid #C6BFB5;border-right:1.2px solid #C6BFB5;transform:rotate(45deg)}
.pk-tr a{display:inline-flex;align-items:center;gap:.42rem;color:#6E675C;
 text-decoration:none;border-bottom:1px solid transparent;
 transition:color .18s,border-color .18s}
.pk-tr a:hover,.pk-tr a:focus-visible{color:#92643A;border-bottom-color:#92643A}
.pk-tr a svg{width:12px;height:12px}
.pk-tr .pk-tr-atual{color:#17140F;max-width:34ch;overflow:hidden;
 text-overflow:ellipsis;white-space:nowrap}
@media(max-width:820px){
 .pk-tr ol{display:none}
 .pk-tr-risca{display:none}
 .pk-tr-in{padding-block:.55rem}
}

/* 22/09/26 - ponto sem foto utilizavel: o wrapper fica vazio. Some com a moldura em vez de deixar um bloco cinza; no mosaico, fundo escuro para o texto branco ler. */
.vb-f:empty,.mo-f:empty,.mlz-f:empty,.dest-f:empty,.tl-f:empty{display:none}
.mos.mos-sf{background:var(--esc)}

/* 04/10/26 - fotos da curadoria. O selo (.foto-tag) e absolute: toda moldura que recebe foto
   precisa ser relative, senao ele vai parar no topo da pagina. Na miniatura de 88 px das feiras
   o texto inteiro nao cabe: fica "Conceito"/"Ilustrativa" e o texto completo aparece no modal. */
.ban-f,.dest-f,.dir-mini,.mlz-f{position:relative}
.dir-mini .foto-tag{left:0;right:0;bottom:0;padding:.22rem 0;text-align:center;font-size:0}
.dir-mini .foto-tag::after{content:"Conceito";font:600 .44rem/1 Montserrat,sans-serif;letter-spacing:.08em}
.dir-mini .foto-tag.ilu::after{content:"Ilustrativa"}
.dir-mini .foto-tag.cred{display:none}
.foto-tag.cred{text-transform:none;letter-spacing:.02em;font-weight:500}
