/* ==========================================================
   amano · sistema visual
   ========================================================== */
:root{
--ink:#1A1A1A;--creme:#F6F3E9;--areia:#E7E3DF;--bronze:#734F2F;--oliva:#5F6B4A;--dourado:#C4A67C;
--serif:'Fraunces',Georgia,serif;--sans:'Work Sans',Helvetica,Arial,sans-serif;
--gut:clamp(22px,5vw,72px);
--ease:cubic-bezier(.16,1,.3,1);
--vh:1vh;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--creme);color:var(--ink);font-family:var(--sans);font-weight:300;font-size:17px;line-height:1.8;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body.locked{overflow:hidden}
img,video{display:block;max-width:100%}
::selection{background:var(--bronze);color:var(--creme)}
.wrap{max-width:1240px;margin:0 auto;padding:0 var(--gut)}
.narrow{max-width:780px}

/* grão */
.grain{position:fixed;inset:-50%;width:200%;height:200%;pointer-events:none;z-index:9998;opacity:.055;mix-blend-mode:multiply}
@media(prefers-reduced-motion:no-preference){.grain{animation:grainmove 8s steps(6) infinite}}
@keyframes grainmove{0%{transform:translate(0,0)}16%{transform:translate(-2%,-3%)}33%{transform:translate(-4%,2%)}50%{transform:translate(2%,-4%)}66%{transform:translate(-1%,3%)}83%{transform:translate(3%,1%)}100%{transform:translate(0,0)}}

/* preloader */
#pre{position:fixed;inset:0;z-index:10000;background:var(--ink);display:flex;align-items:center;justify-content:center;transition:opacity .7s var(--ease),visibility .7s}
#pre.gone{opacity:0;visibility:hidden}
#pre .pl{width:min(46vw,220px);fill:var(--creme);opacity:0;animation:plin 1.1s var(--ease) forwards}
@keyframes plin{0%{opacity:0;transform:translateY(14px)}100%{opacity:1;transform:none}}

/* progresso */
#prog{position:fixed;top:0;left:0;height:2px;background:var(--bronze);width:0;z-index:9997;transition:width .1s linear}

/* cursor */
#cur{position:fixed;top:0;left:0;width:9px;height:9px;border-radius:50%;background:var(--bronze);pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .3s var(--ease),height .3s var(--ease),opacity .3s;opacity:0;mix-blend-mode:difference}
#cur.on{opacity:.85}
#cur.big{width:52px;height:52px}
@media(hover:none),(max-width:900px){#cur{display:none}}

/* ---------------- nav ---------------- */
nav{position:fixed;top:0;left:0;right:0;z-index:200;padding:26px 0;transition:background .5s var(--ease),padding .5s var(--ease),transform .45s var(--ease)}
nav.solid{background:rgba(246,243,233,.94);backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);padding:15px 0;border-bottom:1px solid #DFDACF}
nav.hide{transform:translateY(-105%)}
nav .bar{display:flex;align-items:center;justify-content:space-between;max-width:1240px;margin:0 auto;padding:0 var(--gut)}
nav .mark{width:94px;height:auto;fill:var(--creme);transition:fill .5s var(--ease);display:block}
nav.solid .mark{fill:var(--ink)}
nav ul{display:flex;gap:clamp(20px,2.2vw,32px);list-style:none;align-items:center;margin:0}
nav li{white-space:nowrap}
nav li{margin:0}
nav a{color:var(--creme);text-decoration:none;font-size:13.5px;letter-spacing:.03em;opacity:.82;transition:opacity .3s,color .5s var(--ease);position:relative}
nav.solid a{color:var(--ink)}
nav a:not(.cta)::after{content:'';position:absolute;left:0;bottom:-5px;height:1px;width:0;background:currentColor;transition:width .4s var(--ease)}
nav a:not(.cta):hover::after{width:100%}
nav a:hover{opacity:1}
nav .cta{border:1px solid rgba(246,243,233,.4);padding:9px 21px;opacity:1;transition:background .35s,color .35s,border-color .35s}
nav.solid .cta{border-color:var(--bronze);color:var(--bronze)}
nav .cta:hover{background:var(--creme);color:var(--ink);border-color:var(--creme)}
nav.solid .cta:hover{background:var(--bronze);color:var(--creme);border-color:var(--bronze)}
.burger{display:flex;align-items:center;gap:11px;background:none;border:none;cursor:pointer;padding:10px 0 10px 10px;z-index:210;margin-right:-2px}
.burger .bl{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--creme);opacity:.82;transition:opacity .3s,color .5s var(--ease)}
nav.solid .burger .bl{color:var(--ink)}
.burger:hover .bl{opacity:1}
.burger .bi{position:relative;display:block;width:24px;height:14px}
.burger .bi i{position:absolute;left:0;right:0;height:1.5px;background:var(--creme);transition:transform .45s var(--ease),background .5s,width .45s var(--ease)}
nav.solid .burger .bi i{background:var(--ink)}
.burger .bi i:nth-child(1){top:0}
.burger .bi i:nth-child(2){bottom:0;width:16px;right:auto}
.burger:hover .bi i:nth-child(2){width:24px}
body.menu-open .burger .bl{color:var(--creme);opacity:1}
body.menu-open .burger .bi i{background:var(--creme);width:24px}
body.menu-open .burger .bi i:nth-child(1){transform:translateY(6px) rotate(45deg)}
body.menu-open .burger .bi i:nth-child(2){transform:translateY(-6px) rotate(-45deg)}
@media(max-width:920px){
nav ul{display:none}
.burger .bl{display:none}
body.menu-open nav{background:transparent;border-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
body.menu-open nav .mark{fill:var(--creme)}
}
#menu{position:fixed;inset:0;z-index:190;background:var(--ink);clip-path:inset(0 0 100% 0);transition:clip-path .78s var(--ease);overflow-y:auto;-webkit-overflow-scrolling:touch}
body.menu-open #menu{clip-path:inset(0 0 0 0)}
#menu .menu-wrap{max-width:1240px;margin:0 auto;padding:clamp(100px,11vh,132px) var(--gut) 40px;min-height:100%;display:flex;flex-direction:column;justify-content:center}
#menu .menu-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr) minmax(0,.9fr);gap:clamp(30px,5vw,74px)}
#menu .mcol{opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease),transform .6s var(--ease);transition-delay:var(--d,0s)}
body.menu-open #menu .mcol{opacity:1;transform:none}
#menu .mtit{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--dourado);padding-bottom:16px;border-bottom:1px solid #2E2E2E;margin-bottom:6px}
#menu .mtit.espaco{margin-top:clamp(28px,3.2vw,42px)}
#menu .mlist{list-style:none;margin:0}
#menu .mlist li{margin:0;border-bottom:1px solid #232323}
#menu .mlist a{display:block;color:var(--creme);text-decoration:none;padding:11px 0;font-size:15.5px;line-height:1.4;transition:color .3s,padding-left .4s var(--ease)}
#menu .mlist a:hover{color:var(--dourado);padding-left:9px}
#menu .mlist.grande a{font-family:var(--serif);font-weight:300;font-size:clamp(20px,2.2vw,26px);letter-spacing:-.02em;padding:12px 0}
#menu .mlist.frentes a{display:flex;flex-direction:column;gap:4px;padding:11px 0}
#menu .mlist.frentes .fn{font-family:var(--serif);font-weight:300;font-size:clamp(18px,2vw,23px);letter-spacing:-.015em}
#menu .mlist.frentes .fn strong{font-weight:400}
#menu .mlist.frentes .fd{font-size:12.5px;color:#7E7A72;letter-spacing:.02em;transition:color .3s}
#menu .mlist.frentes a:hover .fd{color:#A79B84}
#menu .mfoot{margin-top:clamp(30px,3.6vw,48px);padding-top:22px;border-top:1px solid #2E2E2E;display:flex;flex-wrap:wrap;gap:18px 34px;align-items:center;justify-content:space-between;opacity:0;transition:opacity .5s .42s}
body.menu-open #menu .mfoot{opacity:1}
#menu .mfoot p{color:#6E6A62;font-size:12.5px;margin:0}
#menu .mfoot .mlinks{display:flex;gap:22px;flex-wrap:wrap}
#menu .mfoot .mlinks a{color:#6E6A62;text-decoration:none;font-size:12.5px;transition:color .3s}
#menu .mfoot .mlinks a:hover{color:var(--dourado)}
#menu .mfoot .mwa{color:var(--dourado);text-decoration:none;font-size:13.5px;border-bottom:1px solid transparent;padding-bottom:3px;transition:border-color .3s}
#menu .mfoot .mwa:hover{border-bottom-color:var(--dourado)}
@media(max-width:1000px){
#menu .menu-grid{grid-template-columns:1fr 1fr}
#menu .mcol.larga{grid-row:span 2}
}
@media(max-width:720px){
#menu .menu-wrap{justify-content:flex-start;padding-top:104px}
#menu .menu-grid{grid-template-columns:1fr;gap:34px}
#menu .mcol.larga{grid-row:auto}
#menu .mfoot{flex-direction:column;align-items:flex-start;gap:14px}
}
/* ---------------- hero ---------------- */
.hero{position:relative;min-height:calc(var(--vh,1vh) * 100);display:flex;align-items:flex-end;background:var(--ink);color:var(--creme);overflow:hidden;padding:130px 0 clamp(50px,7vw,86px)}
.hero .media{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero .media video,.hero .media img{width:100%;height:100%;object-fit:cover;opacity:.5}
.hero .veil{position:absolute;inset:0;background:var(--ink);opacity:.42;z-index:1}
.hero .fallback{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero .fallback .ln{position:absolute;top:-10%;bottom:-10%;width:1px;background:#2E2E2E}
.hero .fallback .ln:nth-child(1){left:16%}
.hero .fallback .ln:nth-child(2){left:38%}
.hero .fallback .ln:nth-child(3){left:62%}
.hero .fallback .ln:nth-child(4){left:84%}
.hero .fallback .glyph{position:absolute;right:-8%;top:50%;transform:translateY(-50%);width:min(66vw,780px);fill:#242424}
.hero .wrap{position:relative;z-index:3;width:100%}
.hero .logo{width:min(50vw,250px);height:auto;fill:var(--creme);margin-bottom:clamp(28px,5vw,56px);display:block}
.hero .tag{font-size:11px;letter-spacing:.34em;text-transform:uppercase;color:var(--dourado);margin-bottom:clamp(16px,2.4vw,26px)}
.hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(42px,9.4vw,132px);line-height:.95;letter-spacing:-.035em;margin-bottom:clamp(22px,3vw,36px);max-width:11ch}
.hero p{font-size:clamp(15.5px,1.65vw,20px);color:#C4BEB2;max-width:44ch;line-height:1.68;margin:0}
.hero .cta-row{display:flex;flex-wrap:wrap;gap:16px;margin-top:clamp(26px,3.4vw,42px);align-items:center}
.hero .scroll{position:absolute;bottom:clamp(20px,3vw,34px);right:var(--gut);z-index:3;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:#8A857C;display:flex;align-items:center;gap:12px}
.hero .scroll i{display:block;width:36px;height:1px;background:#4A463E;position:relative;overflow:hidden}
.hero .scroll i::after{content:'';position:absolute;inset:0;background:var(--dourado);animation:sweep 2.2s var(--ease) infinite}
@keyframes sweep{0%{transform:translateX(-100%)}60%,100%{transform:translateX(100%)}}
@media(max-width:640px){.hero .scroll{display:none}}

/* reveal por linha */
.rl{display:block;overflow:hidden}
.rl>i{display:block;font-style:normal;transform:translateY(108%);transition:transform 1.05s var(--ease)}
.ready .rl>i,.rl.in>i{transform:none}
.rl:nth-of-type(2)>i{transition-delay:.09s}
.rl:nth-of-type(3)>i{transition-delay:.18s}
.fade{opacity:0;transform:translateY(16px);transition:opacity 1s var(--ease) .45s,transform 1s var(--ease) .45s}
.ready .fade{opacity:1;transform:none}

/* botões */
.btn{display:inline-block;background:var(--dourado);color:var(--ink);padding:17px 36px;text-decoration:none;font-size:13.5px;letter-spacing:.08em;transition:background .35s,color .35s;border:1px solid var(--dourado)}
.btn:hover{background:transparent;color:var(--dourado)}
.btn-ghost{display:inline-block;border:1px solid #4A463E;color:var(--creme);padding:17px 36px;text-decoration:none;font-size:13.5px;letter-spacing:.08em;transition:border-color .35s}
.btn-ghost:hover{border-color:var(--creme)}
.more{display:inline-block;margin-top:30px;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--bronze);text-decoration:none;border:1px solid var(--bronze);padding:14px 30px;transition:background .35s,color .35s}
.more:hover{background:var(--bronze);color:var(--creme)}
.escuro .more,.contato .more{color:var(--dourado);border-color:#4A463E}
.escuro .more:hover,.contato .more:hover{background:var(--dourado);color:var(--ink);border-color:var(--dourado)}
.inline-cta{display:inline-block;margin-top:26px;font-size:14.5px;color:var(--bronze);text-decoration:none;border-bottom:1px solid var(--bronze);padding-bottom:3px;transition:opacity .3s}
.inline-cta:hover{opacity:.55}
.hero-cta{display:inline-block;font-size:13.5px;letter-spacing:.08em;color:var(--dourado);text-decoration:none;border-bottom:1px solid #4A422F;padding-bottom:5px;transition:color .3s,border-color .3s}
.hero-cta:hover{color:var(--creme);border-bottom-color:var(--creme)}

/* marquee */
.marquee{background:var(--ink);color:var(--creme);padding:clamp(24px,3vw,38px) 0;overflow:hidden;border-top:1px solid #2A2A2A;border-bottom:1px solid #2A2A2A;white-space:nowrap}
.marquee .track{display:inline-flex;animation:mq 34s linear infinite;will-change:transform}
.marquee:hover .track{animation-play-state:paused}
.marquee span{font-family:var(--serif);font-weight:300;font-size:clamp(24px,3.6vw,50px);letter-spacing:-.02em;padding:0 clamp(18px,2.2vw,32px);display:inline-block}
.marquee span::after{content:'·';color:var(--dourado);margin-left:clamp(18px,2.2vw,32px)}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.marquee .track{animation:none}}

/* seções */
section{padding:clamp(76px,11vw,164px) 0;position:relative}
.eyebrow{font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--bronze);margin-bottom:28px}
h2{font-family:var(--serif);font-weight:300;font-size:clamp(31px,5.2vw,64px);line-height:1.05;letter-spacing:-.028em;margin-bottom:34px}
h3{font-family:var(--serif);font-weight:400;font-size:clamp(20px,2.4vw,27px);line-height:1.24;margin-bottom:14px}
h4{font-family:var(--sans);font-weight:500;font-size:14px;letter-spacing:.04em;margin:28px 0 10px}
p{margin-bottom:22px;max-width:62ch}
table{margin-bottom:26px}
p:last-child{margin-bottom:0}
p.lead{font-size:19px;color:#3A3A3A;max-width:58ch}
.big{font-family:var(--serif);font-weight:300;font-size:clamp(25px,3.7vw,46px);line-height:1.14;letter-spacing:-.024em;max-width:17ch}
.muted{color:#5A564E}
ul,ol{margin:0 0 22px 20px;max-width:62ch}
li{margin-bottom:9px}
strong{font-weight:500}
code{font-family:monospace;font-size:13px;background:var(--areia);padding:2px 6px}
a{color:var(--bronze)}
.two{display:grid;grid-template-columns:minmax(0,.4fr) minmax(0,.6fr);gap:clamp(30px,7vw,110px);align-items:start}
.two>div:last-child{padding-top:calc(28px + 1.4em)}
.two.sem-offset>div:last-child{padding-top:0}
@media(max-width:900px){.two{grid-template-columns:1fr;gap:30px}.two>div:last-child{padding-top:0}}

/* faixa de mídia */
.media-band{position:relative;height:clamp(300px,52vw,600px);overflow:hidden;background:var(--ink);padding:0}
.media-band .inner{position:absolute;inset:-14% 0;will-change:transform}
.media-band img,.media-band video{width:100%;height:100%;object-fit:cover;opacity:.7}
.media-band .cap{position:absolute;left:var(--gut);right:var(--gut);bottom:clamp(24px,3.4vw,44px);z-index:2;color:var(--creme);max-width:32ch}
.media-band .cap .q{font-family:var(--serif);font-weight:300;font-size:clamp(21px,3vw,40px);line-height:1.18;letter-spacing:-.024em}
.media-band .cap .s{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--dourado);margin-top:18px}
.media-band .ph{position:absolute;inset:0;background:var(--ink);overflow:hidden}
.media-band .ph svg{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(74vw,660px);fill:#232323}
.media-band .ph i{position:absolute;top:0;bottom:0;width:1px;background:#2A2A2A}

/* pilares */
.pilares{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #D8D3C9;margin-top:clamp(56px,7vw,104px)}
.pilar{padding:42px 30px 50px 30px;border-right:1px solid #D8D3C9}
.pilar:first-child{padding-left:0}
.pilar:last-child{border-right:none;padding-right:0}
.pilar .n{font-size:10.5px;letter-spacing:.24em;color:var(--bronze);margin-bottom:20px}
.pilar h4{font-family:var(--serif);font-weight:400;font-size:clamp(21px,2.3vw,27px);margin:0 0 13px;letter-spacing:-.01em}
.pilar p{font-size:14.5px;line-height:1.7;color:#5A564E;margin:0}
@media(max-width:980px){.pilares{grid-template-columns:1fr 1fr}.pilar{border-right:none;border-bottom:1px solid #D8D3C9;padding:30px 20px 30px 0}.pilar:nth-child(even){padding-left:26px;border-left:1px solid #D8D3C9}}
@media(max-width:560px){.pilares{grid-template-columns:1fr}.pilar,.pilar:nth-child(even){padding:26px 0;border-left:none}}

/* frentes */
.frentes{border-top:1px solid #D8D3C9;margin-top:60px}
.frente{display:grid;grid-template-columns:minmax(0,.36fr) minmax(0,.64fr);gap:clamp(18px,5vw,64px);padding:clamp(26px,3.2vw,40px) 0;border-bottom:1px solid #D8D3C9;align-items:baseline;transition:padding-left .45s var(--ease)}
.frente:hover{padding-left:clamp(10px,1.6vw,22px)}
.frente .lock{font-family:var(--serif);font-size:clamp(20px,2.6vw,32px);font-weight:400;letter-spacing:-.008em}
.frente .lock b{font-weight:500}
.frente .lock .v{font-family:var(--sans);font-weight:400;font-size:.68em;letter-spacing:.16em}
.frente p{font-size:15.5px;color:#4A4640;margin:0;max-width:54ch}
.frente .go{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);margin-top:12px;display:inline-block;text-decoration:none;transition:letter-spacing .35s;padding:10px 0}
.frente:hover .go{letter-spacing:.26em}
@media(max-width:860px){.frente{grid-template-columns:1fr;gap:11px}}

/* públicos */
.publico{background:var(--areia)}
.portas{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:60px;background:#CFC9BE}
.porta{background:var(--creme);padding:clamp(28px,3.6vw,50px);transition:background .45s var(--ease)}
.porta:hover{background:#FFFDF7}
.porta .pn{font-size:10.5px;letter-spacing:.24em;color:var(--bronze);margin-bottom:20px}
.porta h4{font-family:var(--serif);font-weight:400;font-size:clamp(21px,2.3vw,27px);margin:0 0 14px;letter-spacing:-.01em}
.porta p{font-size:15px;color:#5A564E;margin:0}
@media(max-width:880px){.portas{grid-template-columns:1fr}}

/* direção */
.direcao .pair{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,84px);margin-top:60px}
.pessoa{border-top:1px solid #D8D3C9;padding-top:28px}
.pessoa .ret{width:100%;aspect-ratio:4/5;background:var(--areia);margin-bottom:26px;overflow:hidden;position:relative}
.pessoa .ret img{width:100%;height:100%;object-fit:cover}
.pessoa .ret .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#6A655E;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase}
.pessoa h4{font-family:var(--serif);font-weight:400;font-size:clamp(22px,2.4vw,28px);margin:0 0 7px;letter-spacing:-.01em}
.pessoa .role{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze);margin-bottom:18px}
.pessoa p{font-size:15px;color:#5A564E;margin:0}
@media(max-width:720px){.direcao .pair{grid-template-columns:1fr;gap:40px}}

/* contato */
.contato{background:var(--ink);color:var(--creme)}
.contato h2{max-width:15ch}
.contato p{color:#B5AFA3}
.contato .alt{margin-top:28px;font-size:14.5px;color:#8E8A80}
.contato .alt a{color:var(--dourado);text-decoration:none;border-bottom:1px solid #4A422F}
.contato .alt a:hover{color:var(--creme)}
.contato .btn{margin-top:8px}

/* rodapé */
footer{background:var(--ink);color:#8E8A80;padding:clamp(56px,7vw,96px) 0 clamp(38px,5vw,62px);font-size:13px;border-top:1px solid #2A2A2A}
footer .fgrid2{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:clamp(24px,3.6vw,54px);margin-bottom:clamp(38px,5vw,68px)}
@media(max-width:900px){footer .fgrid2{grid-template-columns:1fr 1fr;gap:34px}}
@media(max-width:520px){footer .fgrid2{grid-template-columns:1fr}}
footer .mk{width:104px;fill:var(--creme);margin-bottom:22px}
footer h5{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--bronze);font-weight:400;margin-bottom:18px}
footer ul{list-style:none;margin:0}
footer li{margin-bottom:10px}
footer a{color:#B5AFA3;text-decoration:none;transition:color .3s}
footer a:hover{color:var(--dourado)}
footer p{color:#6E6A62;max-width:40ch;margin:0 0 10px;font-size:13px;line-height:1.7}
footer .fbot{border-top:1px solid #2A2A2A;padding-top:26px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;font-size:12px;color:#5E5A52}
footer .flegal{display:flex;flex-wrap:wrap;gap:18px}
footer .flegal a{color:#5E5A52}
footer .flegal a:hover{color:var(--dourado)}

/* subhero */
.subhero{background:var(--ink);color:var(--creme);padding:clamp(138px,17vw,230px) 0 clamp(54px,8vw,106px);position:relative;overflow:hidden}
.subhero .media{position:absolute;inset:0;z-index:0;overflow:hidden}
.subhero .media img,.subhero .media video{width:100%;height:100%;object-fit:cover;opacity:.34}
.subhero .fallback{position:absolute;inset:0;z-index:0}
.subhero .fallback .ln{position:absolute;top:-10%;bottom:-10%;width:1px;background:#282828}
.subhero .fallback .ln:nth-child(1){left:20%}
.subhero .fallback .ln:nth-child(2){left:47%}
.subhero .fallback .ln:nth-child(3){left:74%}
.subhero .wrap{position:relative;z-index:2}
.subhero .back{display:inline-flex;align-items:center;gap:9px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#8A857C;text-decoration:none;margin-bottom:clamp(28px,4vw,50px);transition:color .3s,gap .3s}
.subhero .back:hover{color:var(--dourado);gap:15px}
.lockbig{font-family:var(--serif);font-weight:300;font-size:clamp(30px,6.4vw,74px);line-height:1.03;margin-bottom:clamp(20px,2.6vw,32px);letter-spacing:-.03em}
.lockbig b{font-weight:500}
.lockbig .v{font-family:var(--sans);font-weight:400;font-size:.6em;letter-spacing:.13em}
.subhero .claim{font-family:var(--serif);font-weight:300;font-size:clamp(22px,3.3vw,40px);line-height:1.16;max-width:20ch;color:var(--creme);margin-bottom:26px;letter-spacing:-.02em}
.subhero p.desc{color:#B5AFA3;max-width:50ch;font-size:16.5px}

/* dados */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#2C2C2C;margin-top:60px}
.stat{background:var(--ink);padding:clamp(26px,3.2vw,42px);transition:background .45s}
.stat:hover{background:#212121}
.stat .v{font-family:var(--serif);font-weight:300;font-size:clamp(32px,4.4vw,58px);line-height:1;color:var(--creme);margin-bottom:18px;letter-spacing:-.03em}
.stat .d{font-size:14.5px;color:#B5AFA3;line-height:1.62;margin-bottom:16px}
.stat .f{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#6E6A62}
@media(max-width:880px){.stats{grid-template-columns:1fr}}
.stats.claro{background:#CFC9BE}
.stats.claro .stat{background:var(--creme)}
.stats.claro .stat:hover{background:#FFFDF7}
.stats.claro .v{color:var(--ink)}
.stats.claro .d{color:#4A4640}
.stats.claro .f{color:var(--bronze)}
.fonte-nota{font-size:12.5px;color:#6E6A62;margin-top:34px;max-width:60ch;line-height:1.65}

/* formatos */
.fmt{border-top:1px solid #D8D3C9;margin-top:54px}
.fmt .item{display:grid;grid-template-columns:minmax(0,.3fr) minmax(0,.7fr);gap:clamp(16px,4vw,56px);padding:clamp(26px,3vw,38px) 0;border-bottom:1px solid #D8D3C9;align-items:baseline;transition:padding-left .4s var(--ease)}
.fmt .item:hover{padding-left:clamp(6px,1.2vw,16px)}
.fmt .item h4{font-family:var(--serif);font-weight:400;font-size:clamp(19px,2.1vw,24px);margin:0;letter-spacing:-.01em}
.fmt .item p{font-size:15.5px;color:#4A4640;margin:0;max-width:56ch}
.fmt .item .meta{font-size:12.5px;color:var(--bronze);letter-spacing:.06em;margin-top:9px}
@media(max-width:860px){.fmt .item{grid-template-columns:1fr;gap:9px}}

/* dados simples */
.dados{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#CFC9BE;margin-top:56px}
.dado{background:var(--creme);padding:clamp(22px,2.7vw,34px)}
.dado .v{font-family:var(--serif);font-weight:300;font-size:clamp(30px,4vw,50px);line-height:1;margin-bottom:12px;letter-spacing:-.03em}
.dado .l{font-size:13.5px;color:#5A564E;line-height:1.5}
@media(max-width:820px){.dados{grid-template-columns:1fr 1fr}}

/* etapas */
.etapas{counter-reset:e;margin-top:54px}
.etapa{counter-increment:e;display:grid;grid-template-columns:70px 1fr;gap:26px;padding:clamp(22px,2.6vw,32px) 0;border-top:1px solid #D8D3C9}
.escuro .etapa{border-top-color:#2E2E2E}
.etapa:last-child{border-bottom:1px solid #D8D3C9}
.escuro .etapa:last-child{border-bottom-color:#2E2E2E}
.etapa::before{content:counter(e,decimal-leading-zero);font-size:11px;letter-spacing:.16em;color:var(--bronze);padding-top:7px}
.escuro .etapa::before{color:var(--dourado)}
.etapa h4{font-family:var(--serif);font-weight:400;font-size:clamp(18px,2vw,22px);margin:0 0 9px}
.etapa p{font-size:15px;color:#4A4640;margin:0;max-width:56ch}
.escuro .etapa p{color:#B5AFA3}
@media(max-width:640px){.etapa{grid-template-columns:1fr;gap:7px}.etapa::before{padding:0}}

/* matriz */
.matriz{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:44px}
.matriz span{font-family:var(--serif);font-size:clamp(21px,3vw,40px);font-weight:300;letter-spacing:-.02em}
.matriz span::after{content:'·';color:var(--bronze);margin-left:16px}
.matriz span:last-child::after{content:''}
.escuro .matriz span{color:var(--creme)}
.escuro .matriz span::after{color:var(--dourado)}

/* nota */
.nota{border-left:2px solid var(--bronze);padding:8px 0 8px 30px;margin:42px 0;max-width:58ch}
.nota p{font-size:16px;color:#4A4640;margin:0}
.escuro .nota{border-left-color:var(--dourado)}
.escuro .nota p{color:#B5AFA3}

/* escuro */
.escuro{background:var(--ink);color:var(--creme)}
.escuro h2,.escuro .big,.escuro h3{color:var(--creme)}
.escuro p{color:#B5AFA3}
.escuro .eyebrow{color:var(--dourado)}
.escuro .muted{color:#8E8A80}

/* próximo */
.proximo{border-top:1px solid #D8D3C9;padding-top:40px}
.proximo a{display:flex;justify-content:space-between;align-items:baseline;gap:20px;text-decoration:none;color:var(--ink);padding:clamp(22px,2.6vw,30px) 0;border-bottom:1px solid #D8D3C9;transition:padding-left .45s var(--ease),color .35s}
.proximo a:hover{padding-left:16px;color:var(--bronze)}
.proximo .lb{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze);flex-shrink:0}
.proximo .tt{font-family:var(--serif);font-size:clamp(20px,2.6vw,32px);font-weight:400;letter-spacing:-.015em}

/* casos */
.casos{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#CFC9BE;margin-top:54px}
.caso{background:var(--creme);padding:clamp(26px,3.2vw,44px);transition:background .45s}
.caso:hover{background:#FFFDF7}
.caso .tag{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze);margin-bottom:16px}
.caso h4{font-family:var(--serif);font-weight:400;font-size:clamp(20px,2.2vw,24px);margin:0 0 13px;letter-spacing:-.01em}
.caso p{font-size:15px;color:#4A4640;margin:0;line-height:1.68}
@media(max-width:820px){.casos{grid-template-columns:1fr}}

/* tipologias */
.tipo{margin:0;padding:8px 0 0}
.tipo li{list-style:none;margin-bottom:16px}
.tipo li:last-child{margin-bottom:0}
.tipo b{display:block;font-weight:500;font-size:15px;margin-bottom:4px}
.tipo span{font-size:14.5px;color:#5A564E;line-height:1.62}
.escuro .tipo span{color:#B5AFA3}

.intens{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#2C2C2C;margin-top:56px}
.int{background:var(--ink);padding:clamp(26px,3.2vw,40px);transition:background .45s}
.int:hover{background:#212121}
.int h4{font-family:var(--serif);font-weight:400;font-size:clamp(22px,2.4vw,28px);color:var(--creme);margin:0 0 8px;letter-spacing:-.01em}
.int .dur{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--dourado);margin-bottom:22px}
.int ul{margin:0 0 20px;padding-left:16px}
.int li{font-size:14px;color:#B5AFA3;line-height:1.6;margin-bottom:7px}
.int .ind{font-size:13.5px;color:#8E8A80;border-top:1px solid #333;padding-top:16px;line-height:1.55}
@media(max-width:880px){.intens{grid-template-columns:1fr}}

.quatro{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#CFC9BE;margin-top:50px}
.quatro .q{background:var(--creme);padding:clamp(22px,2.7vw,34px);transition:background .45s}
.quatro .q:hover{background:#FFFDF7}
.quatro .q h4{font-family:var(--serif);font-weight:400;font-size:clamp(19px,2vw,22px);margin:0 0 11px;letter-spacing:-.01em}
.quatro .q p{font-size:14px;color:#5A564E;margin:0;line-height:1.62}
@media(max-width:900px){.quatro{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.quatro{grid-template-columns:1fr}}

.prazos{margin-top:46px;border-top:1px solid #333}
.prazo{display:grid;grid-template-columns:170px 1fr;gap:26px;padding:18px 0;border-bottom:1px solid #333;align-items:baseline}
.prazo .p{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--dourado)}
.prazo .t{font-size:15px;color:#B5AFA3}
@media(max-width:640px){.prazo{grid-template-columns:1fr;gap:5px}}

.terr{display:flex;flex-wrap:wrap;gap:9px;margin-top:40px}
.terr span{border:1px solid #C9C3B8;padding:9px 19px;font-size:13.5px;color:#4A4640;transition:border-color .35s,color .35s}
.terr span:hover{border-color:var(--bronze);color:var(--bronze)}
.escuro .terr span{border-color:#3A3A3A;color:#B5AFA3}
.escuro .terr span:hover{border-color:var(--dourado);color:var(--dourado)}

/* faq */
.faq{margin-top:50px;border-top:1px solid #D8D3C9}
.faq details{border-bottom:1px solid #D8D3C9}
.faq summary{padding:clamp(20px,2.4vw,28px) 0;cursor:pointer;font-family:var(--serif);font-size:clamp(18px,2vw,22px);font-weight:400;list-style:none;display:flex;justify-content:space-between;gap:22px;align-items:baseline;transition:color .3s}
.faq summary:hover{color:var(--bronze)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';color:var(--bronze);font-family:var(--sans);font-size:21px;font-weight:300;flex-shrink:0}
.faq details[open] summary::after{content:'–'}
.faq details p{font-size:15.5px;color:#4A4640;padding:0 0 28px;margin:0;max-width:60ch}

/* formulário */
.form-sec{background:var(--areia)}
.form-wrap{background:var(--creme);border:1px solid #D8D3C9;padding:clamp(28px,4.4vw,64px);margin-top:50px}
.escuro .form-wrap{background:#212121;border-color:#333}
.form-wrap h3{margin-top:0;margin-bottom:12px}
.form-wrap .intro{font-size:15.5px;color:#5A564E;margin-bottom:38px;max-width:54ch}
.escuro .form-wrap .intro{color:#B5AFA3}
.fgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px 30px}
@media(max-width:680px){.fgrid{grid-template-columns:minmax(0,1fr);gap:24px}}
.field{display:flex;flex-direction:column;position:relative;min-width:0}
.field.full{grid-column:1/-1}
.field label{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);margin-bottom:10px}
.escuro .field label{color:var(--dourado)}
.field input,.field select,.field textarea{font-family:var(--sans);font-weight:300;font-size:16px;color:var(--ink);background:transparent;border:none;border-bottom:1px solid #C9C3B8;padding:11px 0;transition:border-color .35s;border-radius:0;-webkit-appearance:none;appearance:none;min-height:46px;min-width:0;width:100%;max-width:100%;text-overflow:ellipsis}
.escuro .field input,.escuro .field select,.escuro .field textarea{color:var(--creme);border-bottom-color:#4A4640}
.field select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='11' height='7'%3E%3Cpath d='M0 0l5.5 7L11 0z' fill='%23734F2F'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 2px center}
.field textarea{resize:vertical;min-height:90px;line-height:1.6}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-bottom-color:var(--bronze)}
.escuro .field input:focus,.escuro .field select:focus,.escuro .field textarea:focus{border-bottom-color:var(--dourado)}
.consent{grid-column:1/-1;display:flex;gap:14px;align-items:flex-start;margin-top:6px}
.consent input{width:18px;height:18px;min-height:18px;margin-top:4px;flex-shrink:0;accent-color:var(--bronze);-webkit-appearance:auto;appearance:auto}
.consent label{font-size:13.5px;letter-spacing:0;text-transform:none;color:#5A564E;line-height:1.62;margin:0}
.escuro .consent label{color:#B5AFA3}
.submit{grid-column:1/-1;margin-top:16px}
.submit button{font-family:var(--sans);font-size:13.5px;letter-spacing:.08em;font-weight:400;background:var(--ink);color:var(--creme);border:1px solid var(--ink);padding:18px 42px;cursor:pointer;transition:background .35s,color .35s;min-height:54px}
.submit button:hover{background:transparent;color:var(--ink)}
.escuro .submit button{background:var(--dourado);color:var(--ink);border-color:var(--dourado)}
.escuro .submit button:hover{background:transparent;color:var(--dourado)}
.form-msg{grid-column:1/-1;font-size:14.5px;color:var(--oliva);margin-top:16px;display:none}
.escuro .form-msg{color:var(--dourado)}
.form-msg.on{display:block}

/* manifesto */
.manifesto{background:var(--ink);color:var(--creme)}
.manifesto .lines p{font-family:var(--serif);font-weight:300;font-size:clamp(22px,3.3vw,40px);line-height:1.34;max-width:22ch;margin-bottom:clamp(28px,4vw,50px);color:var(--creme);letter-spacing:-.022em}
.manifesto .lines p.dim{color:#6E6A62}
.manifesto .sig{color:var(--dourado);max-width:none;margin-top:12px}
.mtext p{font-family:var(--serif);font-weight:300;font-size:clamp(20px,2.7vw,32px);line-height:1.48;max-width:26ch;margin-bottom:clamp(26px,3.6vw,44px);color:var(--creme);letter-spacing:-.02em}
.mtext p.dim{color:#6E6A62}
.mtext p.sig{color:var(--dourado);max-width:none;margin-top:14px}

/* reveal */
.rv{opacity:0;transform:translateY(26px);transition:opacity 1.05s var(--ease),transform 1.05s var(--ease)}
.rv.in{opacity:1;transform:none}
.par{will-change:transform}
@media(prefers-reduced-motion:reduce){
.rv{opacity:1;transform:none;transition:none}
.rl>i{transform:none}
.par{transform:none!important}
.grain{animation:none}
}
@media print{.grain,#pre,#cur,#prog,nav,#menu{display:none}}

/* ---------------- redes e trajetória ---------------- */
.pessoa .social{display:flex;gap:22px;margin-top:22px}
.pessoa .social a{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);text-decoration:none;border-bottom:1px solid transparent;padding:6px 0;transition:border-color .3s}
.pessoa .social a:hover{border-bottom-color:var(--bronze)}
.traj{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,84px);margin-top:clamp(52px,6vw,88px);padding-top:clamp(40px,4vw,58px);border-top:1px solid #D8D3C9}
.traj .tnome{font-family:var(--serif);font-weight:400;font-size:clamp(19px,2vw,23px);margin-bottom:24px;letter-spacing:-.01em}
.tlista{list-style:none;margin:0}
.tlista li{display:grid;grid-template-columns:126px 1fr;gap:18px;padding:14px 0;border-top:1px solid #E4DFD6;margin:0}
.tlista li:last-child{border-bottom:1px solid #E4DFD6}
.tlista .ty{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);padding-top:5px}
.tlista .td{font-size:15px;color:#4A4640;line-height:1.65}
@media(max-width:720px){.traj{grid-template-columns:1fr;gap:44px}.tlista li{grid-template-columns:1fr;gap:5px}.tlista .ty{padding:0}}

/* ---------------- conteúdo com cadastro ---------------- */
.gate-previa{position:relative}
.gate-fade{position:absolute;left:0;right:0;bottom:0;height:190px;background:linear-gradient(rgba(246,243,233,0),var(--creme) 82%);pointer-events:none}
.gate{border:1px solid #D8D3C9;background:#FFFDF7;padding:clamp(30px,4.4vw,64px);margin-top:clamp(30px,4vw,52px);text-align:center}
.gate .selo{font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--bronze);margin-bottom:20px}
.gate h3{margin-bottom:14px}
.gate p{font-size:15.5px;color:#5A564E;max-width:52ch;margin:0 auto 30px}
.gate .btn-desbloq{display:inline-block;background:var(--ink);color:var(--creme);border:1px solid var(--ink);padding:18px 44px;font-size:13.5px;letter-spacing:.08em;cursor:pointer;font-family:var(--sans);transition:background .35s,color .35s;min-height:54px}
.gate .btn-desbloq:hover{background:transparent;color:var(--ink)}
.gate .ja{margin-top:20px;font-size:13.5px;color:#6E6A62}
.gate .ja a{color:var(--bronze);cursor:pointer}
.gate.oculto{display:none}
.corpo-restrito{display:none}
.corpo-restrito.liberado{display:block}

/* lista de estudos */
.estudos-lista{border-top:1px solid #D8D3C9;margin-top:54px}
.estudo-item{display:grid;grid-template-columns:minmax(0,.42fr) minmax(0,.58fr);gap:clamp(18px,4vw,56px);padding:clamp(28px,3.2vw,42px) 0;border-bottom:1px solid #D8D3C9;align-items:start;transition:padding-left .4s var(--ease)}
.estudo-item:hover{padding-left:clamp(8px,1.2vw,18px)}
.estudo-item .et{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze);margin-bottom:14px}
.estudo-item h3{margin-bottom:10px}
.estudo-item h3 a{color:var(--ink);text-decoration:none;transition:color .3s}
.estudo-item h3 a:hover{color:var(--bronze)}
.estudo-item .meta{font-size:13px;color:#6E6A62;letter-spacing:.03em}
.estudo-item p{font-size:15.5px;color:#4A4640;margin:0}
.estudo-item .go{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);text-decoration:none;display:inline-block;margin-top:16px;padding:8px 0}
@media(max-width:860px){.estudo-item{grid-template-columns:1fr;gap:12px}}

/* tiers de fonte */
.tier{display:inline-block;font-size:10px;letter-spacing:.14em;border:1px solid var(--bronze);color:var(--bronze);padding:2px 7px;margin-right:8px;vertical-align:middle}
.escuro .tier{border-color:var(--dourado);color:var(--dourado)}
.legenda-tier{display:flex;flex-wrap:wrap;gap:26px;margin-top:36px;padding-top:26px;border-top:1px solid #D8D3C9}
.legenda-tier div{font-size:13px;color:#5A564E;max-width:26ch}
.legenda-tier b{display:block;font-weight:400;color:var(--bronze);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:7px}

/* seletor de idioma */
.idiomas{display:flex;gap:2px;background:#D8D3C9;margin-top:34px;width:fit-content}
.idiomas button{background:var(--creme);border:none;padding:10px 16px;font-family:var(--sans);font-size:12px;letter-spacing:.1em;color:#6E6A62;cursor:pointer;transition:background .3s,color .3s;min-height:40px}
.idiomas button:hover{color:var(--ink)}
.idiomas button.ativo{background:var(--ink);color:var(--creme)}
.escuro .idiomas{background:#3A3A3A}
.escuro .idiomas button{background:var(--ink);color:#8E8A80}
.escuro .idiomas button.ativo{background:var(--dourado);color:var(--ink)}
[data-i18n]{display:none}
[data-i18n].ativo{display:block}
span[data-i18n].ativo,a[data-i18n].ativo{display:inline}

/* ============ componentes da revisão ============ */

/* citação grande */
.citacao{padding:clamp(60px,8vw,120px) 0}
.citacao p{font-family:var(--serif);font-weight:300;font-size:clamp(26px,4.4vw,56px);line-height:1.12;letter-spacing:-.028em;max-width:19ch;margin:0}
.citacao .att{font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--bronze);margin-top:32px}
.escuro .citacao .att{color:var(--dourado)}

/* quatro pilares do modelo */
.pilares4{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#2C2C2C;margin-top:56px}
.p4{background:var(--ink);padding:clamp(26px,3vw,40px);display:flex;flex-direction:column;transition:background .45s}
.p4:hover{background:#212121}
.p4 .n{font-size:10.5px;letter-spacing:.24em;color:var(--dourado);margin-bottom:20px}
.p4 h4{font-family:var(--serif);font-weight:400;font-size:clamp(21px,2.3vw,27px);color:var(--creme);margin:0 0 14px;letter-spacing:-.01em}
.p4 p{font-size:14.5px;color:#B5AFA3;margin:0 0 18px;line-height:1.62}
.p4 .fr{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#6E6A62;margin-top:auto;padding-top:16px;border-top:1px solid #333}
@media(max-width:980px){.pilares4{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.pilares4{grid-template-columns:1fr}}
.pilares4.claro{background:#CFC9BE}
.pilares4.claro .p4{background:var(--creme)}
.pilares4.claro .p4:hover{background:#FFFDF7}
.pilares4.claro .n{color:var(--bronze)}
.pilares4.claro h4{color:var(--ink)}
.pilares4.claro p{color:#5A564E}
.pilares4.claro .fr{color:var(--bronze);border-top-color:#D8D3C9}

/* método em passos numerados largos */
.passos{margin-top:56px;counter-reset:ps}
.passo{counter-increment:ps;display:grid;grid-template-columns:minmax(0,.34fr) minmax(0,.66fr);gap:clamp(20px,5vw,64px);padding:clamp(30px,3.4vw,44px) 0;border-top:1px solid #D8D3C9}
.escuro .passo{border-top-color:#2E2E2E}
.passo:last-child{border-bottom:1px solid #D8D3C9}
.escuro .passo:last-child{border-bottom-color:#2E2E2E}
.passo .cab{display:flex;gap:18px;align-items:baseline}
.passo .cab::before{content:counter(ps,decimal-leading-zero);font-size:11px;letter-spacing:.18em;color:var(--bronze);flex-shrink:0}
.escuro .passo .cab::before{color:var(--dourado)}
.passo h4{font-family:var(--serif);font-weight:400;font-size:clamp(20px,2.4vw,28px);margin:0;letter-spacing:-.015em;line-height:1.2}
.passo p{font-size:15.5px;color:#4A4640;margin:0;max-width:54ch}
.escuro .passo p{color:#B5AFA3}


/* tendências: card com leitura */
.tend{border-top:1px solid #D8D3C9;margin-top:52px}
.escuro .tend{border-top-color:#2E2E2E}
.tend-item{display:grid;grid-template-columns:minmax(0,.3fr) minmax(0,.7fr);gap:clamp(18px,4vw,56px);padding:clamp(26px,3vw,40px) 0;border-bottom:1px solid #D8D3C9;align-items:start}
.escuro .tend-item{border-bottom-color:#2E2E2E}
.tend-item .num{font-family:var(--serif);font-weight:300;font-size:clamp(28px,3.6vw,46px);line-height:1;letter-spacing:-.03em;margin-bottom:10px}
.escuro .tend-item .num{color:var(--creme)}
.tend-item .fonte{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze)}
.escuro .tend-item .fonte{color:#6E6A62}
.tend-item h4{font-family:var(--serif);font-weight:400;font-size:clamp(18px,2vw,22px);margin:0 0 10px}
.tend-item p{font-size:15.5px;color:#4A4640;margin:0 0 14px;max-width:56ch}
.escuro .tend-item p{color:#B5AFA3}
.tend-item .leitura{font-size:14.5px;color:var(--oliva);border-left:2px solid var(--oliva);padding-left:18px;max-width:54ch;line-height:1.65}
.escuro .tend-item .leitura{color:var(--dourado);border-left-color:var(--dourado)}
@media(max-width:820px){.tend-item{grid-template-columns:1fr;gap:12px}}

/* comparativo em duas colunas */
.versus{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#CFC9BE;margin-top:52px}
.vs{background:var(--creme);padding:clamp(26px,3.2vw,42px)}
.vs.escura{background:var(--ink)}
.vs .lb{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--bronze);margin-bottom:22px}
.vs.escura .lb{color:var(--dourado)}
.vs ul{list-style:none;margin:0}
.vs li{font-size:15.5px;color:#4A4640;padding:13px 0;border-top:1px solid #E4DFD6;margin:0;line-height:1.6}
.vs li:first-child{border-top:none;padding-top:0}
.vs.escura li{color:#B5AFA3;border-top-color:#333}
@media(max-width:760px){.versus{grid-template-columns:1fr}}

/* personas */
.personas{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#CFC9BE;margin-top:52px}
.pers{background:var(--creme);padding:clamp(24px,3vw,38px)}
.pers .tp{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--bronze);margin-bottom:16px}
.pers h4{font-family:var(--serif);font-weight:400;font-size:clamp(19px,2.1vw,23px);margin:0 0 12px;letter-spacing:-.01em}
.pers p{font-size:14.5px;color:#5A564E;margin:0;line-height:1.62}
@media(max-width:900px){.personas{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.personas{grid-template-columns:1fr}}

/* faixa de números larga */
.numeros{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#CFC9BE;margin-top:54px}
.numeros.escura{background:#2C2C2C}
.nm{background:var(--creme);padding:clamp(26px,3.2vw,42px)}
.numeros.escura .nm{background:var(--ink)}
.nm .v{font-family:var(--serif);font-weight:300;font-size:clamp(30px,4.2vw,54px);line-height:1;letter-spacing:-.03em;margin-bottom:16px}
.numeros.escura .nm .v{color:var(--creme)}
.nm .d{font-size:14.5px;color:#4A4640;line-height:1.6;margin-bottom:14px}
.numeros.escura .nm .d{color:#B5AFA3}
.nm .f{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze)}
.numeros.escura .nm .f{color:#6E6A62}
@media(max-width:880px){.numeros{grid-template-columns:1fr}}

/* lista de convicções */
.convic{margin-top:52px;border-top:1px solid #D8D3C9}
.escuro .convic{border-top-color:#2E2E2E}
.cv{display:grid;grid-template-columns:minmax(0,.38fr) minmax(0,.62fr);gap:clamp(18px,4vw,56px);padding:clamp(22px,2.6vw,32px) 0;border-bottom:1px solid #D8D3C9;align-items:baseline}
.escuro .cv{border-bottom-color:#2E2E2E}
.cv .t{font-family:var(--serif);font-weight:400;font-size:clamp(18px,2.1vw,24px);letter-spacing:-.01em}
.escuro .cv .t{color:var(--creme)}
.cv p{font-size:15.5px;color:#4A4640;margin:0;max-width:52ch}
.escuro .cv p{color:#B5AFA3}
@media(max-width:820px){.cv{grid-template-columns:1fr;gap:8px}}

/* trio: missão, visão e propósito */
.pilares4.trio{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:980px){.pilares4.trio{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:660px){.pilares4.trio{grid-template-columns:minmax(0,1fr)}}
.pilares4{grid-template-columns:repeat(4,minmax(0,1fr))}
.pilares4 .p4{min-width:0}
.pilares4 .p4 h4,.pilares4 .p4 p,.pilares4 .p4 .fr{overflow-wrap:anywhere}

/* ============ numeração gráfica dos produtos ============ */
.fmt.numerado{counter-reset:prod}
.fmt.numerado .item{position:relative;padding-left:64px}
.fmt.numerado .item::before{
  counter-increment:prod;content:counter(prod,decimal-leading-zero);
  position:absolute;left:0;top:26px;font-family:var(--serif);font-weight:300;
  font-size:34px;color:var(--dourado);line-height:1;letter-spacing:-.02em;opacity:.85;
}
@media(max-width:860px){
  .fmt.numerado .item{padding-left:52px}
  .fmt.numerado .item::before{font-size:26px;top:0}
}

/* ============ caso pratico ============ */
.caso-pratico{border-top:1px solid #D8D3C9;margin-top:54px;padding-top:44px}
.escuro .caso-pratico{border-top-color:#2E2E2E}
.caso-pratico .rotulo{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze);margin-bottom:20px}
.escuro .caso-pratico .rotulo{color:var(--dourado)}
.caso-pratico .passo-cp{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:18px 0;border-top:1px solid #E4DFD6}
.escuro .caso-pratico .passo-cp{border-top-color:#2E2E2E}
.caso-pratico .passo-cp:last-child{border-bottom:1px solid #E4DFD6}
.escuro .caso-pratico .passo-cp:last-child{border-bottom-color:#2E2E2E}
.caso-pratico .passo-cp .et{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze);padding-top:3px}
.escuro .caso-pratico .passo-cp .et{color:var(--dourado)}
.caso-pratico .passo-cp p{font-size:15px;margin:0;max-width:58ch;color:#4A4640}
.escuro .caso-pratico .passo-cp p{color:#B5AFA3}
@media(max-width:640px){.caso-pratico .passo-cp{grid-template-columns:1fr;gap:4px}}

/* ============ formulário longo (anamnese) ============ */
.form-longo{max-width:760px;margin:0 auto}
.form-longo .secao-form{border-top:1px solid #D8D3C9;padding-top:44px;margin-top:44px}
.form-longo .secao-form:first-child{border-top:none;margin-top:0;padding-top:0}
.form-longo .secao-num{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze);margin-bottom:10px}
.form-longo .secao-form h3{margin-top:0;margin-bottom:10px}
.form-longo .secao-intro{font-size:14.5px;color:#5A564E;margin-bottom:28px;max-width:60ch;line-height:1.65}
.form-longo .pergunta{margin-bottom:26px}
.form-longo .pergunta label.rotulo{display:block;font-size:14.5px;color:var(--ink);margin-bottom:12px;line-height:1.5}
.form-longo .pergunta label.rotulo .op{font-size:11px;color:var(--bronze);text-transform:uppercase;letter-spacing:.06em;margin-left:8px}
.form-longo input[type="text"],.form-longo input[type="email"],.form-longo input[type="tel"],
.form-longo select,.form-longo textarea{
  width:100%;font-family:var(--sans);font-weight:300;font-size:15.5px;color:var(--ink);
  background:transparent;border:none;border-bottom:1px solid #C9C3B8;padding:10px 0;
  transition:border-color .3s;min-height:44px
}
.form-longo textarea{min-height:70px;line-height:1.6}
.form-longo input:focus,.form-longo select:focus,.form-longo textarea:focus{outline:none;border-bottom-color:var(--bronze)}
.form-longo .grupo{display:flex;flex-wrap:wrap;gap:10px}
.form-longo .grupo label{
  display:inline-flex;align-items:center;gap:8px;font-size:13.5px;color:#4A4640;
  border:1px solid #C9C3B8;padding:9px 16px;cursor:pointer;transition:border-color .25s,background .25s;
  min-height:40px
}
.form-longo .grupo label:hover{border-color:var(--bronze)}
.form-longo .grupo input{width:auto;min-height:0;border:none;accent-color:var(--bronze);margin:0}
.form-longo .grupo input:checked + span,
.form-longo .grupo label:has(input:checked){border-color:var(--bronze);background:#FBF7EC;color:var(--bronze)}
.form-longo .outro-campo{margin-top:10px;max-width:340px}
.form-longo .nota-campo{font-size:12.5px;color:var(--oliva);margin-top:8px;line-height:1.55}
.form-longo .privacidade-box{background:#FFFDF7;border:1px solid #DDD8CE;padding:24px 26px;font-size:14px;color:#4A4640;line-height:1.7;margin-bottom:28px}
.form-longo .privacidade-box p{margin-bottom:12px}
.form-longo .privacidade-box p:last-child{margin-bottom:0}
.form-longo .consent-longo{display:flex;gap:14px;align-items:flex-start;padding:18px 0;border-top:1px solid #E4DFD6}
.form-longo .consent-longo input{width:19px;height:19px;min-height:19px;margin-top:3px;flex-shrink:0;accent-color:var(--bronze)}
.form-longo .consent-longo label{font-size:14px;color:#4A4640;line-height:1.6}
@media(max-width:640px){.form-longo .grupo label{font-size:13px;padding:8px 13px}}

/* ============ formulário em etapas (wizard) ============ */
.form-longo.wizard .secao-form{display:none;border-top:none;margin-top:0;padding-top:0}
.form-longo.wizard .secao-form.ativa{display:block}
.progresso-wizard{margin-bottom:40px}
.progresso-wizard .trilha{height:2px;background:#DDD8CE;position:relative;margin-bottom:14px}
.progresso-wizard .trilha .preenchido{position:absolute;left:0;top:0;bottom:0;background:var(--bronze);transition:width .4s var(--ease);width:0}
.progresso-wizard .legenda{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze)}
.progresso-wizard .legenda .titulo-etapa{color:#6E6A62;text-transform:none;letter-spacing:0;font-size:13px}
.wizard-nav{display:flex;justify-content:space-between;align-items:center;margin-top:40px;gap:16px}
.wizard-nav .voltar{font-family:var(--sans);font-size:13px;letter-spacing:.06em;color:#6E6A62;background:none;border:none;cursor:pointer;padding:14px 6px;transition:color .25s}
.wizard-nav .voltar:hover{color:var(--bronze)}
.wizard-nav .voltar:disabled{visibility:hidden}
.wizard-nav .avancar{font-family:var(--sans);font-size:13.5px;letter-spacing:.08em;text-transform:uppercase;background:var(--ink);color:var(--creme);border:1px solid var(--ink);padding:16px 38px;cursor:pointer;transition:background .3s,color .3s;min-height:50px}
.wizard-nav .avancar:hover{background:transparent;color:var(--ink)}
.wizard-erro{font-size:13.5px;color:#8C3A2B;margin-top:14px;display:none}
.wizard-erro.on{display:block}
@media(max-width:520px){.wizard-nav .avancar{padding:15px 26px;font-size:13px}}

/* ============ aviso de progresso salvo (link de retomada) ============ */
.aviso-retomada{
  background:#FFFDF7; border:1px solid #DDD8CE; padding:18px 22px;
  margin-top:26px; font-size:13.5px; color:#4A4640; line-height:1.65;
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
}
.aviso-retomada .txt{max-width:52ch}
.aviso-retomada .txt strong{color:var(--bronze)}
.aviso-retomada button{
  font-family:var(--sans); font-size:12px; letter-spacing:.06em; text-transform:uppercase;
  background:var(--bronze); color:var(--creme); border:none; padding:11px 20px;
  cursor:pointer; white-space:nowrap; min-height:40px; flex-shrink:0;
}
.aviso-retomada button:hover{opacity:.85}
.aviso-retomada.copiado button{background:var(--oliva)}

/* opcao desabilitada quando o grupo atinge o limite de marcacao */
.grupo label input[type=checkbox]:disabled + span{opacity:.32;cursor:not-allowed}
.grupo label input[type=checkbox]:disabled{cursor:not-allowed}

/* ---------- pagina de fundadores ---------- */
.perfil{display:grid;grid-template-columns:minmax(0,.34fr) minmax(0,.66fr);gap:clamp(28px,5vw,80px);align-items:start}
.perfil .pessoa{border-top:none;padding-top:0;position:sticky;top:110px}
.perfil .bio h2{font-family:var(--serif);font-weight:300;font-size:clamp(30px,4.2vw,54px);line-height:1.04;letter-spacing:-.03em;margin:12px 0 14px}
.perfil .bio .cargo{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);padding-bottom:26px;border-bottom:1px solid #D8D3C9;margin-bottom:30px}
.perfil .bio .lead{font-family:var(--serif);font-weight:300;font-size:clamp(19px,2.3vw,26px);line-height:1.38;letter-spacing:-.015em;color:var(--ink);margin-bottom:26px;max-width:44ch}
.perfil .bio p{font-size:15.5px;color:#4A4640;line-height:1.72;margin-bottom:18px;max-width:62ch}
.perfil .bio p:last-child{margin-bottom:0}
.escuro .perfil .bio .lead{color:var(--creme)}
.escuro .perfil .bio p{color:#B5AFA3}
.circuitos{display:grid;grid-template-columns:repeat(2,1fr);gap:0 clamp(28px,5vw,72px);margin-top:clamp(44px,5vw,64px);border-top:1px solid #CFC9BE}
.ci{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:15px 0;border-bottom:1px solid #CFC9BE}
.ci .cn{font-size:15.5px;color:var(--ink);line-height:1.45}
.ci .cy{font-size:11.5px;letter-spacing:.1em;color:var(--bronze);white-space:nowrap;text-align:right}
@media(max-width:900px){
  .perfil{grid-template-columns:1fr;gap:34px}
  .perfil .pessoa{position:static}
  .perfil .pessoa .ret{max-width:340px}
  .circuitos{grid-template-columns:1fr;gap:0}
  .ci{gap:14px}
  .ci .cn{font-size:14.5px}
}

/* ---------- nav enxuta e menu estruturado ---------- */
nav .bar{gap:clamp(18px,2.6vw,44px)}
nav .mark{flex:0 0 auto}
nav ul{flex:0 1 auto;min-width:0}
nav ul a{white-space:nowrap;display:inline-block}
nav .cta{white-space:nowrap}
@media(max-width:1040px){nav ul{display:none}.burger .bl{display:inline}}

/* linha de orientacao no topo do menu */
#menu .menu-intro{opacity:0;transform:translateY(12px);transition:opacity .55s var(--ease),transform .55s var(--ease);transition-delay:.02s;padding-bottom:clamp(26px,3vw,38px);margin-bottom:clamp(26px,3vw,38px);border-bottom:1px solid #2E2E2E;max-width:70ch}
#menu .menu-intro .mi-eyebrow{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--dourado);margin-bottom:14px}
#menu .menu-intro p{color:#8E8A82;font-size:15px;line-height:1.66;margin:0}
#menu .menu-intro em{font-style:normal;color:var(--creme)}
body.menu-open #menu .menu-intro{opacity:1;transform:none}

/* itens com descritor, mesma familia visual das frentes */
#menu .mlist.paginas a{display:flex;flex-direction:column;gap:4px;padding:11px 0}
#menu .mlist.paginas a:hover{padding-left:9px}
#menu .mlist.paginas .fn{font-family:var(--serif);font-weight:300;font-size:clamp(18px,2vw,23px);letter-spacing:-.015em}
#menu .mlist.paginas .fd{font-size:12.5px;color:#7E7A72;letter-spacing:.02em;transition:color .3s}
#menu .mlist.paginas a:hover .fd{color:#A79B84}

/* pagina atual */
#menu .mlist a.atual{color:var(--dourado);padding-left:16px;position:relative}
#menu .mlist a.atual::before{content:'';position:absolute;left:0;top:calc(50% - 2px);width:5px;height:5px;border-radius:50%;background:var(--dourado)}
#menu .mlist.paginas a.atual::before,#menu .mlist.frentes a.atual::before{top:20px}
#menu .mlist a.atual .fd{color:#A79B84}
#menu .mlist a.atual:hover{padding-left:22px}

@media(max-width:560px){
  #menu .menu-intro p{font-size:14px}
  #menu .mlist.paginas .fd,#menu .mlist.frentes .fd{font-size:12px}
}

/* alturas curtas: o menu inteiro precisa caber sem rolagem */
@media(min-width:921px) and (max-height:1080px){
  #menu .menu-wrap{padding-top:clamp(84px,9vh,104px);padding-bottom:28px}
  #menu .menu-intro{padding-bottom:20px;margin-bottom:22px}
  #menu .menu-intro .mi-eyebrow{margin-bottom:10px}
  #menu .menu-intro p{font-size:14px;line-height:1.6}
  #menu .mlist.paginas a,#menu .mlist.frentes a{padding:8px 0}
  #menu .mlist a{padding:8px 0}
  #menu .mtit{padding-bottom:12px;margin-bottom:4px}
  #menu .mtit.espaco{margin-top:22px}
  #menu .mfoot{margin-top:24px;padding-top:18px}
}
@media(min-width:921px) and (max-height:860px){
  #menu .menu-wrap{padding-top:80px;padding-bottom:22px}
  #menu .menu-intro{padding-bottom:15px;margin-bottom:17px}
  #menu .menu-intro p{font-size:13.5px}
  #menu .mlist.paginas a,#menu .mlist.frentes a,#menu .mlist a{padding:5.5px 0}
  #menu .mlist.paginas .fn,#menu .mlist.frentes .fn{font-size:19px}
  #menu .mlist.paginas .fd,#menu .mlist.frentes .fd{font-size:12px}
  #menu .mtit{padding-bottom:10px}
  #menu .mtit.espaco{margin-top:16px}
  #menu .mfoot{margin-top:18px;padding-top:14px}
}

/* ---------- painel de consentimento de cookies ---------- */
.ck-fundo{position:fixed;inset:0;z-index:300;background:rgba(26,26,26,.34);opacity:0;transition:opacity .42s var(--ease);pointer-events:none}
body.ck-visivel .ck-fundo{opacity:1}
.ck{position:fixed;left:0;right:0;bottom:0;z-index:310;padding:0;margin:0;background:var(--ink);border-top:1px solid #2E2E2E;transform:translateY(102%);transition:transform .5s var(--ease)}
body.ck-visivel .ck{transform:translateY(0)}
.ck-inner{max-width:1240px;margin:0 auto;padding:clamp(24px,3vw,34px) var(--gut);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(20px,3vw,52px);align-items:end}
.ck-eyebrow{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--dourado);margin-bottom:12px}
.ck h2{font-family:var(--serif);font-weight:300;font-size:clamp(21px,2.4vw,28px);line-height:1.12;letter-spacing:-.025em;color:var(--creme);margin:0 0 10px}
.ck p{font-size:14.5px;line-height:1.62;color:#8E8A82;margin:0;max-width:62ch}
.ck .ck-link{margin-top:10px}
.ck .ck-link a{color:var(--dourado);text-decoration:none;font-size:13px;border-bottom:1px solid transparent;padding-bottom:2px;transition:border-color .3s}
.ck .ck-link a:hover{border-bottom-color:var(--dourado)}
.ck-acoes{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.ck-b{font-family:var(--sans);font-size:12.5px;letter-spacing:.06em;padding:12px 22px;border:1px solid #3A3A3A;background:none;color:#B5AFA3;cursor:pointer;white-space:nowrap;transition:color .3s,border-color .3s,background .3s}
.ck-b:hover{color:var(--creme);border-color:#5A564E}
.ck-b.ck-principal{background:var(--dourado);border-color:var(--dourado);color:var(--ink)}
.ck-b.ck-principal:hover{background:var(--creme);border-color:var(--creme);color:var(--ink)}
.ck-b.ck-principal.ck-terciario{background:none;border-color:#3A3A3A;color:#B5AFA3}
.ck-b.ck-principal.ck-terciario:hover{color:var(--creme);border-color:#5A564E}
.ck-b:focus-visible{outline:2px solid var(--dourado);outline-offset:3px}
.ck-escolhas{grid-column:1/-1;order:3;border-top:1px solid #2E2E2E;margin-top:6px;padding-top:6px}
.ck-op{display:grid;grid-template-columns:20px 1fr;gap:14px;align-items:start;padding:14px 0;border-bottom:1px solid #232323;cursor:pointer}
.ck-op:last-child{border-bottom:none}
.ck-op input{position:absolute;opacity:0;width:1px;height:1px}
.ck-marca{width:18px;height:18px;border:1px solid #4A463E;margin-top:2px;position:relative;transition:background .25s,border-color .25s}
.ck-op input:checked + .ck-cp{}
.ck-op:has(input:checked) .ck-marca{background:var(--dourado);border-color:var(--dourado)}
.ck-op:has(input:checked) .ck-marca::after{content:'';position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid var(--ink);border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
.ck-op.ck-fixa{cursor:default;opacity:.72}
.ck-op input:focus-visible + .ck-cp .ck-nome{outline:2px solid var(--dourado);outline-offset:3px}
.ck-cp{display:flex;flex-direction:column;gap:4px}
.ck-nome{font-size:14.5px;color:var(--creme);letter-spacing:.02em}
.ck-desc{font-size:12.5px;color:#7E7A72;line-height:1.55;max-width:64ch}
.ck.ck-detalhado .ck-inner{align-items:start}

/* botao de preferencias no rodape e no corpo das politicas */
.flegal .pref-cookies{background:none;border:none;padding:0;cursor:pointer;font-family:var(--sans);font-size:inherit;letter-spacing:inherit;color:inherit;opacity:inherit;transition:color .3s}
.flegal .pref-cookies:hover{color:var(--dourado)}
.btn-linha{background:none;border:none;padding:0;cursor:pointer;font-family:var(--sans);font-size:15.5px;color:var(--bronze);border-bottom:1px solid var(--bronze);padding-bottom:3px;transition:opacity .3s}
.btn-linha:hover{opacity:.7}

/* tabela simples usada na politica de cookies */
.tabela-simples{margin:26px 0 8px;overflow-x:auto}
.tabela-simples table{width:100%;border-collapse:collapse;font-size:14px;min-width:560px}
.tabela-simples th{text-align:left;font-weight:400;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--bronze);padding:0 16px 12px 0;border-bottom:1px solid #CFC9BE;vertical-align:bottom}
.tabela-simples td{padding:13px 16px 13px 0;border-bottom:1px solid #E4DFD6;color:#4A4640;line-height:1.55;vertical-align:top}
.tabela-simples tr td:first-child{color:var(--ink)}

@media(max-width:860px){
  .ck-inner{grid-template-columns:1fr;gap:20px;align-items:start}
  .ck-acoes{justify-content:flex-start}
  .ck-b{flex:1 1 auto;text-align:center}
}
@media(max-width:560px){
  .ck{max-height:88vh;overflow-y:auto}
  .ck-acoes{flex-direction:column;gap:8px}
  .ck-b{width:100%}
}
@media(max-height:820px){
  .ck-inner{padding-top:20px;padding-bottom:20px}
  .ck h2{font-size:21px;margin-bottom:8px}
  .ck p{font-size:13.5px;line-height:1.55}
  .ck-op{padding:10px 0}
  .ck-desc{font-size:12px}
  .ck-b{padding:10px 18px}
}

/* ---------- blocos .fmt sobre fundo escuro ---------- */
/* .fmt .item p tem especificidade maior que .escuro p, entao o texto
   ficava cinza-escuro sobre o preto. Estas regras devolvem contraste. */
.escuro .fmt{border-top-color:#2E2E2E}
.escuro .fmt .item{border-bottom-color:#2E2E2E}
.escuro .fmt .item h4{color:var(--creme)}
.escuro .fmt .item p{color:#B5AFA3}
.escuro .fmt .item .meta{color:#8E8A82}

/* titulos que sao link, no claro e no escuro */
.fmt .item h4 a{color:inherit;text-decoration:none;border-bottom:1px solid transparent;padding-bottom:2px;transition:color .3s,border-color .3s}
.fmt .item h4 a:hover{color:var(--bronze);border-bottom-color:var(--bronze)}
/* no escuro o título-link fica creme (15,7:1) e o dourado guarda-se para o
   hover: mantém a leitura no máximo e respeita o limite de uso do dourado. */
.escuro .fmt .item h4 a{color:var(--creme)}
.escuro .fmt .item h4 a:hover{color:var(--dourado);border-bottom-color:var(--dourado)}
.fmt .item .meta a{color:var(--bronze);text-decoration:none;border-bottom:1px solid transparent;transition:color .3s,border-color .3s}
.fmt .item .meta a:hover{border-bottom-color:currentColor}
.escuro .fmt .item .meta a{color:var(--dourado)}

/* ---------- correções de contraste (WCAG AA) ---------- */
/* bronze (#734F2F) só tem 2,4:1 sobre o preto amano: sobre fundo escuro
   o papel dele é assumido pelo dourado velado, que chega a 7,5:1. */
.escuro .inline-cta,.contato .inline-cta,footer .inline-cta{color:var(--dourado);border-bottom-color:var(--dourado)}
footer h5{color:var(--dourado)}
/* links dentro de texto corrido em fundo escuro. Escopo restrito a
   parágrafos, listas e tabelas para não capturar títulos e botões. */
.escuro p a,.escuro li a,.escuro td a,.escuro .body a,.contato p a,.contato .alt a{color:var(--dourado)}

/* textos secundários sobre fundo escuro */
footer p{color:#8E8A82}
footer .fbot{color:#8E8A82}
footer .flegal a,footer .flegal .pref-cookies{color:#8E8A82}
#menu .mfoot p{color:#8E8A82}
#menu .mfoot .mlinks a{color:#8E8A82}
#menu .mlist.frentes .fd,#menu .mlist.paginas .fd{color:#949089}
.ck-desc{color:#949089}
.escuro .tend-item .fonte{color:#8E8A82}
.numeros.escura .nm .f{color:#8E8A82}
.p4 .fr{color:#8E8A82}

/* textos secundários sobre creme e areia */
.fonte-nota{color:#5F5B54}
.estudo-item .meta{color:#5F5B54}
.stat .f{color:#8E8A82}
.stats.claro .stat .f{color:#5F5B54}
.gate .ja{color:#5F5B54}
/* .caso tem fundo creme proprio: dentro de secao escura o texto herdava
   creme e sumia. estas regras devolvem a hierarquia correta. */
.escuro .caso h4,.escuro .caso .leitura{color:var(--ink)}
.escuro .caso p{color:#4A4640}
.escuro .caso .tag{color:var(--bronze)}
.escuro .caso strong{color:var(--ink)}
.escuro .casos{background:#3A3A3A}

/* indicadores sobre fundo escuro */

/* ---------- anatomia de uma edição (grade numerada densa) ---------- */
.anatomia{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#CFC9BE;margin-top:52px;border:1px solid #CFC9BE}
.escuro .anatomia{background:#2E2E2E;border-color:#2E2E2E}
.bloco-ed{background:var(--creme);padding:clamp(18px,2vw,26px);display:flex;flex-direction:column;gap:8px;transition:background .4s}
.escuro .bloco-ed{background:var(--ink)}
.bloco-ed:hover{background:#FFFDF7}
.escuro .bloco-ed:hover{background:#212121}
.bloco-ed .n{font-size:10.5px;letter-spacing:.18em;color:var(--bronze)}
.escuro .bloco-ed .n{color:var(--dourado)}
.bloco-ed .t{font-family:var(--serif);font-weight:400;font-size:clamp(15px,1.5vw,18px);line-height:1.2;letter-spacing:-.01em;color:var(--ink)}
.escuro .bloco-ed .t{color:var(--creme)}
.bloco-ed .dsc{font-size:12.5px;line-height:1.5;color:#5A564E}
.escuro .bloco-ed .dsc{color:#949089}
.bloco-ed.marca .n{color:#4E5A3C}
.escuro .bloco-ed.marca .n{color:#A9B48C}
.escuro .bloco-ed.marca{background:#1F1F1F}
@media(max-width:900px){.anatomia{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.anatomia{grid-template-columns:1fr}}

/* linha do tempo editorial */
.edicoes{border-top:1px solid #D8D3C9;margin-top:52px}
.escuro .edicoes{border-top-color:#2E2E2E}
.ed{display:grid;grid-template-columns:minmax(0,.26fr) minmax(0,.44fr) minmax(0,.3fr);gap:clamp(18px,3vw,48px);padding:clamp(26px,3vw,38px) 0;border-bottom:1px solid #D8D3C9;align-items:start}
.escuro .ed{border-bottom-color:#2E2E2E}
.ed .quando{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--bronze)}
.escuro .ed .quando{color:var(--dourado)}
.ed h4{font-family:var(--serif);font-weight:300;font-size:clamp(22px,2.6vw,32px);line-height:1.1;letter-spacing:-.025em;margin:10px 0 0}
.ed .guia{font-size:13.5px;color:#5A564E;margin-top:10px;font-style:italic}
.escuro .ed .guia{color:#949089}
.ed p{font-size:15px;line-height:1.68;color:#4A4640;margin:0}
.escuro .ed p{color:#B5AFA3}
.ed .pilares{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.ed .pilares span{border:1px solid #C9C3B8;padding:5px 12px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#5A564E}
.escuro .ed .pilares span{border-color:#3A3A3A;color:#949089}
.ed .gancho{font-size:13px;line-height:1.6;color:#5A564E;border-left:2px solid var(--bronze);padding-left:14px}
.escuro .ed .gancho{color:#949089;border-left-color:var(--dourado)}
@media(max-width:860px){.ed{grid-template-columns:1fr;gap:14px}}

/* barra de números compacta */
.numeros-linha{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#CFC9BE;margin-top:52px}
.escuro .numeros-linha{background:#2E2E2E}
.nl{background:var(--creme);padding:clamp(20px,2.4vw,30px)}
.escuro .nl{background:var(--ink)}
.nl .v{font-family:var(--serif);font-weight:300;font-size:clamp(28px,3.4vw,44px);line-height:1;letter-spacing:-.03em;margin-bottom:10px}
.escuro .nl .v{color:var(--creme)}
.nl .l{font-size:12.5px;line-height:1.5;color:#5A564E}
.escuro .nl .l{color:#949089}
@media(max-width:900px){.numeros-linha{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.numeros-linha{grid-template-columns:1fr}}

/* tabela simples sobre fundo escuro */
.escuro .tabela-simples th{color:var(--dourado);border-bottom-color:#3A3A3A}
.escuro .tabela-simples td{color:#B5AFA3;border-bottom-color:#2E2E2E}
.escuro .tabela-simples tr td:first-child{color:var(--creme)}

/* ============================================================
   camada de imagem — blocos existentes que ganham miniatura
   Só acrescenta imagem. Nenhum texto ou hierarquia foi alterado.
   ============================================================ */

/* miniatura genérica: proporção fixa, corte central, sem sombra */
.thumb{position:relative;overflow:hidden;background:#E7E3DF}
.thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s var(--ease)}
.escuro .thumb{background:#242424}

/* 1 · listagem das sete frentes: imagem em altura cheia à esquerda,
   lockup e texto empilhados à direita. */
.frente{grid-template-columns:minmax(0,.3fr) minmax(0,.7fr);grid-template-rows:auto 1fr;gap:0 clamp(24px,3.4vw,52px);align-items:start;padding:clamp(24px,2.8vw,34px) 0}
.frente .thumb{grid-column:1;grid-row:1/3;align-self:stretch;min-height:clamp(140px,13vw,190px)}
.frente:hover .thumb img{transform:scale(1.05)}
.frente .lock{grid-column:2;grid-row:1;padding-top:0;margin-bottom:14px}
.frente > div:last-child{grid-column:2;grid-row:2}

/* 2 · cartões em coluna: imagem no topo, conteúdo embaixo.
   Vale para as três portas de público e para os cartões de indicador. */
.porta,.nm{padding:0;display:flex;flex-direction:column}
.porta .thumb,.nm .thumb{aspect-ratio:16/9}
.porta .corpo{padding:clamp(28px,3.6vw,50px)}
.nm .corpo{padding:clamp(26px,3.2vw,42px)}
.porta:hover .thumb img,.nm:hover .thumb img{transform:scale(1.04)}
.escuro .nm .thumb,.numeros.escura .nm .thumb{background:#242424}

/* 3 · passos do método: quatro colunas verticais.
   Cada coluna empilha imagem, número, título e texto. */
.passos{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,2.6vw,38px);margin-top:clamp(44px,4.6vw,60px);border-top:1px solid #D8D3C9;padding-top:clamp(30px,3.2vw,42px)}
.escuro .passos{border-top-color:#2E2E2E}
.passo{display:flex;flex-direction:column;gap:16px;padding:0;border:none}
.passo:last-child{border-bottom:none}
.passo .thumb{aspect-ratio:4/3}
.passo:hover .thumb img{transform:scale(1.04)}
.passo .cab{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.passo h4{font-size:clamp(19px,1.9vw,23px)}
.passo p{font-size:14.5px;max-width:none}

@media(max-width:900px){
  .frente{gap:0 22px}
  .passos{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .frente{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:14px}
  .frente .thumb{grid-column:1;grid-row:1;aspect-ratio:16/9;min-height:0;max-width:none}
  .frente .lock{grid-column:1;grid-row:2;margin-bottom:0}
  .frente > div:last-child{grid-column:1;grid-row:3}
  .passos{grid-template-columns:1fr;gap:34px}
  .passo .thumb{max-width:300px}
}

/* ============================================================
   revisão visual da home · jul/2026
   Tudo abaixo tem escopo body.home: nenhuma outra página muda.
   ============================================================ */

/* ---- ritmo vertical: seções utilitárias mais compactas ---- */
.home section.compacta{padding:clamp(56px,8vw,112px) 0}
.home .citacao{padding:clamp(80px,10vw,150px) 0}

/* ---- hero: véu direcional no lugar do véu uniforme ---- */
.home .hero .media video,.home .hero .media img{opacity:.62}
.home .hero .veil{opacity:1;background:linear-gradient(100deg,rgba(26,26,26,.82) 0%,rgba(26,26,26,.52) 44%,rgba(26,26,26,.16) 78%,rgba(26,26,26,.04) 100%)}
.home .hero::after{content:'';position:absolute;left:0;right:0;bottom:0;height:32%;z-index:2;pointer-events:none;background:linear-gradient(rgba(26,26,26,0),rgba(26,26,26,.5))}
@media(max-height:780px) and (min-width:641px){.home .hero h1{font-size:clamp(38px,7.4vw,104px)}}

/* (o hambúrguer permanece visível em todas as larguras: o menu overlay
   é parte da experiência da casa, também no desktop) */

/* ---- marquee mais lento: textura, não protagonista ---- */
.home .marquee .track{animation-duration:58s}

/* ---- faixa de imagem colada ao filete ---- */
.home .faixa-imagem{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,1.6vw,24px);margin-top:clamp(48px,5.4vw,76px);border-top:1px solid #D8D3C9;padding-top:0}
.home .faixa-imagem .thumb{aspect-ratio:16/10;margin-top:-1px}
.home .faixa-imagem .thumb img{transition:transform 1s var(--ease)}
.home .faixa-imagem:hover .thumb img{transform:scale(1.03)}
@media(max-width:760px){.home .faixa-imagem{grid-template-columns:1fr}}

/* ---- método: quatro cards, imagem colada ao topo do card ---- */
.home .passos{grid-template-columns:repeat(4,1fr);gap:clamp(16px,1.8vw,26px);border-top:1px solid #D8D3C9;padding-top:clamp(40px,4.4vw,60px)}
.home .passo{background:#FFFDF7;padding:0;gap:0;overflow:hidden;transition:background .45s var(--ease)}
.home .passo:hover{background:#FFFCF2}
.home .passo .thumb{aspect-ratio:4/3;background:var(--areia)}
.home .passo .pcorpo{padding:clamp(22px,2.4vw,32px)}
.home .passo .cab{gap:10px;margin-bottom:12px}
.home .passo h4{font-size:clamp(19px,1.9vw,23px)}
.home .passo p{font-size:14.5px;max-width:none;color:#4A4640}
@media(max-width:900px){.home .passos{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.home .passos{grid-template-columns:1fr}}

/* ---- território: imagem em altura cheia + lista com filetes ---- */
.home #territorios .terr-bloco{display:grid;grid-template-columns:minmax(0,.44fr) minmax(0,.56fr);gap:clamp(30px,5vw,86px);align-items:stretch}
.home .terr-media{position:relative}
.home .terr-media .thumb{position:sticky;top:104px;height:clamp(400px,66vh,700px);background:#242424}
.home .terr-texto p{color:#B5AFA3;max-width:56ch}
.home .terr-lista{list-style:none;margin:clamp(32px,3.6vw,48px) 0 0;max-width:none}
.home .terr-lista li{margin:0;border-top:1px solid #2E2E2E;padding:15px 0 14px;font-family:var(--serif);font-weight:300;font-size:clamp(19px,2.1vw,27px);letter-spacing:-.015em;color:var(--creme);line-height:1.2;transition:color .35s,padding-left .45s var(--ease)}
.home .terr-lista li:last-child{border-bottom:1px solid #2E2E2E}
.home .terr-lista li:hover{color:var(--dourado);padding-left:10px}
@media(max-width:860px){
.home #territorios .terr-bloco{grid-template-columns:1fr;gap:32px}
.home .terr-media .thumb{position:static;height:auto;aspect-ratio:16/10}
}

/* ---- frentes: grade de cards com imagem no topo ---- */
.home .frentes-grade{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(16px,1.8vw,26px);margin-top:clamp(48px,5.4vw,72px);border-top:1px solid #D8D3C9;padding-top:clamp(40px,4.4vw,60px)}
.home .fcard{display:flex;flex-direction:column;background:#FFFDF7;text-decoration:none;color:inherit;overflow:hidden;transition:background .45s var(--ease)}
.home .fcard:hover{background:#FFFCF2}
.home .fcard .thumb{aspect-ratio:4/3;background:var(--areia);flex:0 0 auto}
.home .fcard .thumb img{transition:transform .9s var(--ease)}
.home .fcard:hover .thumb img{transform:scale(1.05)}
.home .fcard .fcorpo{display:flex;flex-direction:column;gap:11px;padding:clamp(22px,2.4vw,30px);flex:1 1 auto}
.home .fcard .fi{font-size:11px;letter-spacing:.18em;color:var(--bronze)}
.home .fcard .lock{font-family:var(--serif);font-size:clamp(16px,1.6vw,19.5px);font-weight:400;letter-spacing:-.008em;line-height:1.2}
.home .fcard .lock b{font-weight:500}
.home .fcard .lock .v{font-family:var(--sans);font-weight:400;font-size:.62em;letter-spacing:.15em}
.home .fcard .fdesc{font-size:14.5px;line-height:1.62;color:#4A4640}
.home .fcard .seta{font-size:16px;color:var(--bronze);margin-top:auto;padding-top:16px;transform:translateX(-6px);opacity:0;transition:transform .45s var(--ease),opacity .45s var(--ease)}
.home .fcard:hover .seta{transform:none;opacity:1}
.home .fcard-fim{background:var(--ink);display:flex}
.home .fcard-fim:hover{background:var(--ink)}
.home .fcard-fim .ff-corpo{display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(24px,2.6vw,32px);height:100%}
.home .fcard-fim .ff-eyebrow{font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--dourado);margin-bottom:18px}
.home .fcard-fim p{font-family:var(--serif);font-weight:300;font-size:clamp(19px,2vw,24px);line-height:1.24;letter-spacing:-.018em;color:var(--creme);margin:0 0 22px;max-width:none}
.home .fcard-fim .ff-link{font-size:12.5px;letter-spacing:.06em;color:var(--dourado);text-decoration:none;border-bottom:1px solid transparent;padding-bottom:3px;transition:border-color .3s}
.home .fcard-fim .ff-link:hover{border-bottom-color:var(--dourado)}
@media(max-width:1000px){.home .frentes-grade{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.home .frentes-grade{grid-template-columns:1fr}}

/* ---- barra de números: colunas com filete, sem caixa ---- */
.home .numeros-linha{background:transparent;gap:0 clamp(22px,3vw,44px);border-top:none}
.home .nl{background:transparent;border-top:1px solid #C9C3B8;padding:26px 0 0}
.home .nl .v{font-size:clamp(34px,4vw,58px)}
@media(max-width:900px){.home .numeros-linha{gap:30px clamp(22px,3vw,44px)}}

/* ---- cartões do momento: imagem 16:9 no topo, número grande embaixo ---- */
.home .nm .v{font-size:clamp(34px,4.2vw,58px)}

/* ---- contato: título respira em menos linhas ---- */
.home .contato h2{max-width:none}
.home .contato .two{grid-template-columns:minmax(0,.56fr) minmax(0,.44fr)}
@media(max-width:900px){.home .contato .two{grid-template-columns:1fr}}

/* ---- imagem de meia página: colada ao texto, proporção retrato ---- */
.home .thumb.meia{aspect-ratio:4/5;max-width:400px;margin-top:clamp(28px,3.4vw,44px)}
@media(max-width:900px){.home .thumb.meia{max-width:320px}}

/* ---- fundadores fundidos: trajetória dentro do bloco de cada sócio ---- */
.home .pessoa .tlista{margin:24px 0 0;max-width:none}
.home .pessoa .tlista li{grid-template-columns:104px 1fr;gap:14px;padding:12px 0}
.home .pessoa .tlista .td{font-size:14px}
.home .pessoa .social{margin-top:24px}

/* ============================================================
   passe de filetes e espaçamento · home
   Regra: quando o filete antecede imagem, a imagem encosta nele.
   Quando antecede texto, o texto respira no mínimo 30px.
   ============================================================ */

/* o momento e para quem: mesma gramática de card dos demais blocos
   (fundo próprio + respiro entre cards, no lugar do filete de 1px) */
.home .numeros,.home .portas{background:transparent;gap:clamp(16px,1.8vw,26px);margin-top:clamp(48px,5.4vw,72px)}
.home .nm,.home .porta{background:#FFFDF7;overflow:hidden}
.home .nm:hover,.home .porta:hover{background:#FFFCF2}
.home .nm .thumb,.home .porta .thumb{background:var(--areia)}
.home .nm .thumb img,.home .porta .thumb img{transition:transform .9s var(--ease)}
.home .nm:hover .thumb img,.home .porta:hover .thumb img{transform:scale(1.04)}

/* texto nunca colado ao filete */
.home .nl{padding-top:30px}
.home .pessoa{padding-top:34px}
.home .pessoa .tlista li{padding:15px 0 14px}
.home .fonte-nota{margin-top:38px}

/* respiro antes do CTA solto sob os cards do momento */
.home .more{margin-top:38px}

/* respiro entre o último card e o CTA que vem logo abaixo */
.home .publico .inline-cta{margin-top:clamp(30px,3.2vw,42px)}

/* ── topos com imagem viva · jul/2026 ────────────────────────────────
   As imagens dos topos internos passaram a ser quentes e saturadas.
   A .34 sobre #1A1A1A só o quarto mais claro da foto sobrevivia — o
   resto virava preto. Agora a imagem vive a .72 e quem garante a
   leitura do texto é um véu direcional: forte à esquerda, onde fica
   a tipografia; quase transparente à direita, onde fica o assunto. */
.subhero .media img,
.subhero .media video{ opacity:.72 }

.subhero::before{
  content:''; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(100deg,
    rgba(26,26,26,.90) 0%,
    rgba(26,26,26,.66) 42%,
    rgba(26,26,26,.26) 76%,
    rgba(26,26,26,.08) 100%);
}
.subhero::after{
  content:''; position:absolute; left:0; right:0; bottom:0; height:34%;
  z-index:1; pointer-events:none;
  background:linear-gradient(rgba(26,26,26,0), rgba(26,26,26,.55));
}
.subhero .wrap{ z-index:2 }

@media(max-width:760px){
  .subhero .media img,.subhero .media video{ opacity:.6 }
  .subhero::before{
    background:linear-gradient(170deg,
      rgba(26,26,26,.88) 0%,
      rgba(26,26,26,.62) 40%,
      rgba(26,26,26,.34) 78%,
      rgba(26,26,26,.18) 100%);
  }
}

/* ── miniatura nos cards de território · ofício · jul/2026 ──────────────
   Mesmo padrão dos cards do método na home: imagem 4:3 sangrando até a
   borda do card, texto logo abaixo. O card já tem padding, então a
   miniatura sobe com margem negativa do mesmo valor. */
.quatro .p4{padding-top:0;overflow:hidden}
.quatro .p4 .thumb{aspect-ratio:4/3;background:#242424;
  margin:0 calc(-1 * clamp(26px,3vw,40px)) clamp(24px,2.8vw,34px)}
.quatro .p4:hover .thumb img{transform:scale(1.04)}
@media(max-width:900px){
  .quatro .p4 .thumb{aspect-ratio:16/9}
}

/* ── entrelinha dos títulos serifados · jul/2026 ────────────────────────
   Os h4 em Fraunces não declaravam line-height e herdavam o 1.8 do corpo
   de texto — entrelinha de parágrafo, não de display. Só ficava evidente
   quando o título quebrava em duas linhas: os cards de território de
   OFÍCIO e as perguntas de "na prática". Todo o resto do display do site
   anda entre 1.14 e 1.2. */
.p4 h4,
.porta h4,
.caso h4,
.quatro .q h4,
.etapa h4,
.fmt .item h4{line-height:1.18}

/* ── véu de leitura nas faixas full-bleed · jul/2026 ────────────────────
   A legenda das .media-band é creme sobre a imagem, que vive a opacity .7
   sobre #1A1A1A. Em imagens de fundo claro no canto inferior esquerdo — a
   mesa de papel de curadoria-convites, a parede de esboços de diagnóstico,
   as maquetes de estudo-previo, o mar de campo — o texto perdia contraste.
   Degradê só no rodapé, onde a legenda fica; o resto da imagem não muda. */
.media-band::after{
  content:''; position:absolute; left:0; right:0; bottom:0; height:58%;
  z-index:1; pointer-events:none;
  background:linear-gradient(to top,
    rgba(26,26,26,.80) 0%,
    rgba(26,26,26,.42) 44%,
    rgba(26,26,26,0) 100%);
}
.media-band .cap{z-index:2}

/* ── território: famílias de mercado · jul/2026 ─────────────────────────
   A lista de dez setores era plana e não dizia o que os une. Virou quatro
   famílias com rótulo, mantendo a mesma língua visual da lista antiga:
   serifada, fio de 1px, recuo no hover. */
.terr-familias{margin:clamp(32px,3.6vw,48px) 0 0}
.terr-familias .fam{border-top:1px solid #2E2E2E;padding:16px 0 15px;
  transition:padding-left .45s var(--ease)}
.terr-familias .fam:last-child{border-bottom:1px solid #2E2E2E}
.terr-familias .fam:hover{padding-left:10px}
.terr-familias .fam-t{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--dourado);margin-bottom:8px}
.terr-familias .fam-i{font-family:var(--serif);font-weight:300;
  font-size:clamp(19px,2.1vw,26px);letter-spacing:-.015em;
  color:var(--creme);line-height:1.24}
.terr-texto p.muted{color:#8D887D;font-size:14.5px}

/* utilitário de acessibilidade/SEO — título h1 semântico sem alterar o layout visual das páginas internas */
.vh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
