
:root{
  --grafite:#2A2926;--grafite-2:#33322E;--concreto:#ECE8E1;--concreto-2:#E4E0D8;--filete:#D3D1C7;
  --ceu:#1F4E79;--ceu-claro:#6E8FAF;--pedra:#8C8A83;--pedra-2:#B4B0A6;--tinta:#3A3935;
  --fd:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --fs:"Inter",-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;
  --max:1240px;--gutter:clamp(22px,5.5vw,88px);--ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--concreto);color:var(--grafite);font-family:var(--fs);font-size:16px;line-height:1.65;font-weight:400;-webkit-font-smoothing:antialiased}
[hidden]{display:none!important}
img,svg{max-width:100%}
a{color:var(--ceu);text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--ceu);outline-offset:3px}
h1,h2,h3{font-family:var(--fd);font-weight:500;line-height:1.06;margin:0;text-wrap:balance;letter-spacing:-.01em}
h1{font-size:clamp(2.6rem,6vw,5rem)}
h2{font-size:clamp(2rem,4vw,3.4rem)}
h3{font-size:clamp(1.4rem,2.2vw,1.9rem)}
p{margin:0 0 1.1em;max-width:62ch}
b{font-weight:500}
.wrap{max-width:var(--max);margin:0 auto;padding-inline:var(--gutter)}
.marca .m1{fill:currentColor}.marca .m2{fill:var(--pedra)}.marca .m3{fill:var(--ceu)}
.topo .marca .m2{fill:var(--tinta)}.topo.over .marca .m2{fill:#CFCAC0}
.lbl{font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--pedra);font-weight:500}
.eyebrow{display:flex;align-items:center;gap:14px;margin:0 0 26px}
.eyebrow::before{content:"";width:28px;height:1px;background:var(--ceu)}
.dark .eyebrow{color:var(--pedra-2)}.dark .eyebrow::before{background:var(--ceu-claro)}
.ul{position:relative;color:inherit}
.ul::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.ul:hover::after{transform:scaleX(1)}
.arrow{display:inline-flex;align-items:center;gap:12px;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ceu);font-weight:500}
.arrow svg{width:20px;height:20px;transition:transform .4s var(--ease)}
.arrow:hover svg{transform:translateX(6px)}
.dark .arrow{color:var(--ceu-claro)}
section{padding-block:clamp(88px,12vw,168px)}
.dark{background:var(--grafite);color:var(--concreto)}
.dark p{color:#D3CFC6}.dark h2,.dark h3{color:var(--concreto)}
.dark .lbl{color:var(--pedra-2)}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.reveal.in{opacity:1;transform:none}
.no-js .reveal{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}*{animation:none!important}html{scroll-behavior:auto}}

/* cabeçalho */
.topo{position:fixed;top:0;left:0;right:0;z-index:40;transition:background .5s var(--ease),color .5s var(--ease),box-shadow .5s}
.topo.over{color:var(--concreto)}
.topo.over .marca .m3{fill:var(--ceu-claro)}.topo.over .marca .m2{fill:#CFCAC0}
.topo.solid{background:var(--concreto);color:var(--grafite);box-shadow:0 1px 0 var(--filete)}
.topo .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;height:88px}
.topo .logo{display:block;color:inherit;line-height:0}
.topo .logo svg{height:52px;width:auto}
.topo nav{display:flex;gap:clamp(18px,2.6vw,40px);align-items:center}
.topo nav a{color:inherit;font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;font-weight:500;padding:6px 0}
.topo nav a.atual::after{transform:scaleX(1)}
.topo.solid nav a.atual{color:var(--ceu)}.topo.over nav a.atual{color:var(--concreto)}
.menu-btn{display:none;background:none;border:0;color:inherit;font:inherit;font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;font-weight:500;padding:8px 0;cursor:pointer}
@media(max-width:900px){
  .menu-btn{display:block}
  .topo nav{display:none;position:fixed;inset:0;top:0;background:var(--grafite);color:var(--concreto);flex-direction:column;align-items:flex-start;justify-content:center;padding:0 var(--gutter);gap:8px;z-index:50}
  .topo nav.open{display:flex}
  .topo nav a{font-family:var(--fd);font-size:2.2rem;letter-spacing:-.01em;text-transform:none;font-weight:500;padding:8px 0}
  .topo nav .fechar{position:absolute;top:30px;right:var(--gutter);font-family:var(--fs);font-size:.68rem;letter-spacing:.22em;text-transform:uppercase}
}

/* hero */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;color:var(--concreto);overflow:hidden;isolation:isolate;padding-block:0}
.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.hero::before{content:"";position:absolute;inset:0;background:rgba(42,41,38,.42);z-index:-1}
.hero .wrap{padding-bottom:clamp(64px,10vw,140px);width:100%}
.hero h1{max-width:19ch;color:var(--concreto);font-size:clamp(2.8rem,7vw,6.2rem);text-wrap:balance}
.hero .sub{margin:38px 0 0;font-size:.72rem;letter-spacing:.24em;text-transform:uppercase;color:#D3CFC6;font-weight:500;max-width:none}
.hero .scroll{position:absolute;right:var(--gutter);bottom:clamp(64px,10vw,140px);font-size:.62rem;letter-spacing:.3em;text-transform:uppercase;color:var(--pedra-2);writing-mode:vertical-rl;transform:rotate(180deg)}
@media(max-width:700px){.hero .scroll{display:none}}
.hero.interna .wrap{padding-bottom:0}
.hero.interna{min-height:0;background:var(--grafite);padding-block:calc(88px + clamp(52px,6.4vw,96px)) clamp(44px,5.4vw,76px);align-items:flex-start}
.hero.interna h1{font-size:clamp(2.4rem,5.4vw,4.4rem);max-width:18ch}
.hero.interna .lead{margin:28px 0 0;color:#D3CFC6;font-size:1.05rem;max-width:56ch}
/* artigo: cabeçalho e corpo na mesma coluna centrada */
.hero.interna.art .wrap{max-width:calc(58ch + var(--gutter) * 2)}
.hero.interna.art h1{max-width:none;font-size:clamp(2.1rem,3.6vw,3.1rem)}
.hero.interna.art .lead{max-width:none}
.hero.interna.foto::before{background:rgba(42,41,38,.62)}

/* faixa de imagens */
.faixa{padding-block:0;background:var(--grafite);overflow:hidden}
.faixa .trilho{display:flex;gap:6px;width:max-content;animation:rolar 70s linear infinite}
.faixa:hover .trilho{animation-play-state:paused}
.faixa figure{margin:0;width:clamp(280px,32vw,460px);aspect-ratio:4/3;position:relative;overflow:hidden;flex:none}
.faixa img{width:100%;height:100%;object-fit:cover;display:block}
.faixa figcaption{position:absolute;left:0;bottom:0;padding:12px 16px;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--concreto);opacity:0;transition:opacity .4s}
.faixa figure:hover figcaption{opacity:1}
@keyframes rolar{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:700px){.faixa .trilho{animation:none;width:auto;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:0}.faixa figure{scroll-snap-align:start;width:82vw}.faixa figcaption{opacity:1}}
@media(prefers-reduced-motion:reduce){.faixa .trilho{animation:none;width:auto;overflow-x:auto}}

/* manifesto */
.manif .cols{--vao:clamp(32px,6vw,120px);display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--vao);align-items:start}
.manif .cols>*+*{position:relative}
.manif .cols>*+*::before{content:"";position:absolute;top:10px;bottom:10px;left:calc(var(--vao) / -2);width:1px;background:var(--filete)}
.dark.manif .cols>*+*::before{background:#4A4844}
@media(max-width:860px){.manif .cols{grid-template-columns:1fr;gap:36px}.manif .cols>*+*::before{display:none}}
.manif h2{max-width:16ch}
.manif .txt p{font-size:1.06rem;color:var(--tinta);line-height:1.62;max-width:58ch;margin:0;text-align:justify;text-indent:1.4em;hyphens:auto;-webkit-hyphens:auto;text-justify:inter-word;text-wrap:pretty}
.dark.manif .txt p{color:#D3CFC6}
.manif .txt p:first-child{font-family:var(--fd);font-size:clamp(1.35rem,2.2vw,1.8rem);line-height:1.35;color:var(--grafite);max-width:34ch;text-align:left;text-indent:0;margin-bottom:1.6em}
.manif .txt p:first-child+p{text-indent:0}
.dark.manif .txt p:first-child{color:var(--concreto)}
.cortes{margin-top:44px;padding-top:26px;border-top:1px solid #4A4844}
.cortes .lbl{color:var(--pedra-2)}
.cortes ul{list-style:none;margin:18px 0 0;padding:0}
.cortes li{font-family:var(--fd);font-size:clamp(1.15rem,1.9vw,1.5rem);line-height:1.3;color:var(--concreto);padding:9px 0;border-bottom:1px solid #3A3835}
.cortes li:last-child{border-bottom:0}

/* atuação */
.cab{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,4vw,80px);align-items:start;margin-bottom:clamp(44px,6vw,80px)}
.cab p{max-width:46ch;text-align:justify;hyphens:auto;-webkit-hyphens:auto;text-wrap:pretty}
@media(max-width:800px){.cab{grid-template-columns:1fr}}
.cab p{margin:0;color:var(--tinta);font-size:1.02rem}
.dark .cab p{color:#D3CFC6}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,2.4vw,36px)}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.cards{grid-template-columns:1fr}}
.card{display:flex;flex-direction:column;gap:14px;border-top:1px solid var(--ceu);padding-top:22px;color:inherit;min-height:250px;transition:transform .5s var(--ease)}
.card:hover{transform:translateY(-4px)}
.card .lbl{color:var(--pedra)}
.card h3{font-size:1.5rem;font-weight:500}
.card p{font-size:.93rem;color:var(--tinta);margin:0}
.card .arrow{margin-top:auto;padding-top:12px}

/* método */
.passos{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid #4A4844}
@media(max-width:800px){.passos{grid-template-columns:1fr}}
.passo{padding:clamp(28px,4vw,52px) clamp(0px,3vw,48px) clamp(36px,4vw,56px) 0;border-bottom:1px solid #4A4844;display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(18px,3vw,40px);align-items:start}
@media(min-width:801px){.passo h3{min-height:2.1em}}
.passo .n{font-family:var(--fd);font-size:clamp(3rem,6vw,5.4rem);font-weight:500;line-height:.85;color:var(--ceu-claro)}
.passo h3{margin-bottom:12px;color:var(--concreto)}
.passo p{margin:0;color:#D3CFC6;font-size:.98rem;max-width:44ch}
.chamada{margin-top:clamp(56px,8vw,104px);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(24px,5vw,96px);align-items:start}
@media(max-width:800px){.chamada{grid-template-columns:1fr}}
.chamada h3{font-size:clamp(1.8rem,3.4vw,2.8rem);font-weight:500;color:var(--concreto)}
.chamada p{color:#D3CFC6}

/* insights */
.edit{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--filete)}
@media(max-width:860px){.edit{grid-template-columns:1fr}}
.edit .art{padding:30px clamp(0px,2.4vw,36px) 40px 0;border-bottom:1px solid var(--filete);display:flex;flex-direction:column;gap:14px;color:inherit;transition:background .4s}
.edit .art:hover{background:var(--concreto-2)}
@media(min-width:861px){.edit .art+.art{padding-left:clamp(20px,2.4vw,36px);border-left:1px solid var(--filete)}}
.prosa.artigo{max-width:58ch;margin-inline:auto}
.prosa.artigo h3{font-size:1.5rem;margin:46px 0 14px}
.prosa.artigo p{font-size:1.06rem;line-height:1.62;max-width:none;margin:0}
.prosa.artigo p:not(.abre){text-align:justify;text-indent:1.4em;hyphens:auto;-webkit-hyphens:auto;text-justify:inter-word;text-wrap:pretty}
.prosa.artigo h3+p,.prosa.artigo p.abre+p{text-indent:0}
.prosa.artigo p.abre{text-indent:0;text-align:left;margin-bottom:1.6em}
.edit h3{font-size:1.45rem;font-weight:500;line-height:1.2}
.edit p{font-size:.93rem;color:var(--tinta);margin:0}
.edit .by{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--pedra);margin-top:auto;padding-top:10px}

/* contato */
.contato .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(40px,7vw,120px)}
@media(max-width:860px){.contato .wrap{grid-template-columns:1fr}}
.dados{margin:0}
.dados dt{font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--pedra);margin-top:26px;font-weight:500}
.dados dd{margin:8px 0 0;font-size:1.05rem}
.dados dd a{color:var(--grafite)}
.social{display:flex;gap:14px;margin-top:8px}
.social a{width:44px;height:44px;border:1px solid var(--filete);border-radius:50%;display:grid;place-items:center;color:var(--grafite);transition:background .3s,border-color .3s,color .3s}
.social a svg{width:18px;height:18px}
.social a:hover{background:var(--ceu);border-color:var(--ceu);color:#fff}
.dark .social a,footer .social a{border-color:#5A5853;color:var(--concreto)}
footer .social{margin-top:18px}
form.f{display:grid;gap:22px}
form.f label{display:grid;gap:8px;font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--pedra);font-weight:500}
form.f input,form.f textarea{font:inherit;font-size:1rem;color:var(--grafite);background:transparent;border:0;border-bottom:1px solid var(--filete);padding:10px 0;width:100%;border-radius:0;transition:border-color .3s}
form.f input:focus,form.f textarea:focus{border-color:var(--ceu);outline:none}
form.f textarea{min-height:120px;resize:vertical}
form.f .obs{font-size:.8rem;color:var(--pedra);max-width:52ch}
form.f .cf-turnstile{max-width:100%;overflow:hidden}
.btn{display:inline-flex;align-items:center;gap:12px;padding:16px 28px;border:1px solid var(--grafite);color:var(--grafite);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;font-weight:500;background:transparent;cursor:pointer;font-family:var(--fs);transition:background .3s,color .3s,border-color .3s}
.btn:hover{background:var(--grafite);color:var(--concreto)}
.dark .btn{border-color:var(--concreto);color:var(--concreto)}.dark .btn:hover{background:var(--concreto);color:var(--grafite)}

/* páginas internas */
.prosa{max-width:58ch}
.prosa p{color:var(--tinta);font-size:1.04rem;line-height:1.62;max-width:none;margin:0}
.prosa p:not(.abre){text-align:justify;text-indent:1.4em;hyphens:auto;-webkit-hyphens:auto;text-justify:inter-word;text-wrap:pretty}
.prosa p.abre+p,.prosa h3+p{text-indent:0}
.prosa p:has(>a.arrow:only-child){text-indent:0;text-align:left}
.prosa p.abre{font-family:var(--fd);font-size:clamp(1.35rem,2.2vw,1.8rem);line-height:1.35;color:var(--grafite);max-width:36ch;margin-bottom:1.6em;text-indent:0}
.prosa h2{margin:0 0 26px}
.prosa h3{margin:44px 0 14px;font-size:1.3rem}
.dark .prosa p{color:#D3CFC6}.dark .prosa p.abre{color:var(--concreto)}
.duas{--vao:clamp(32px,6vw,110px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--vao);align-items:start}
.duas>*+*{position:relative}
.duas>*+*::before{content:"";position:absolute;top:10px;bottom:10px;left:calc(var(--vao) / -2);width:1px;background:var(--filete)}
@media(max-width:820px){.duas{grid-template-columns:1fr;gap:44px}.duas>*+*::before{display:none}}
/* as duas colunas abrem com o mesmo peso tipográfico */
.duas .prosa h2{font-family:var(--fd);font-size:clamp(1.35rem,2.2vw,1.8rem);line-height:1.35;font-weight:500;margin:0 0 1.6em}
.duas .prosa{max-width:none}
.ficha.compacta{margin-top:0;border-top:1px solid var(--filete)}
.ficha.compacta div{grid-template-columns:104px minmax(0,1fr)}
.doc-data{margin-top:26px;font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--pedra)}
.banda{position:relative;overflow:hidden;isolation:isolate;padding-block:clamp(88px,12vw,160px);color:var(--concreto)}
.banda img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.banda::before{content:"";position:absolute;inset:0;background:rgba(42,41,38,.62);z-index:-1}
.banda h2{color:var(--concreto)}.banda p{color:#D3CFC6}.banda .lbl{color:var(--pedra-2)}
.pessoa{--vao:clamp(36px,6vw,110px);display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:var(--vao);align-items:start}
.pessoa>*+*{position:relative}
.pessoa>*+*::before{content:"";position:absolute;top:10px;bottom:10px;left:calc(var(--vao) / -2);width:1px;background:var(--filete)}
@media(max-width:820px){.pessoa{grid-template-columns:1fr;gap:44px}.pessoa>*+*::before{display:none}}
.pessoa img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;display:block}
.ficha{margin-top:28px;border-top:1px solid var(--filete)}
.prosa .ficha{margin-top:44px}
.ficha div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;padding:14px 0;border-bottom:1px solid var(--filete);font-size:.93rem}
.ficha span:first-child{font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--pedra);padding-top:4px;font-weight:500}
.tit-link{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:clamp(24px,5vw,80px);align-items:center;border-top:1px solid var(--filete);padding-top:clamp(36px,5vw,64px);margin-top:clamp(48px,7vw,96px)}
@media(max-width:700px){.tit-link{grid-template-columns:1fr}}
.tit-link img{width:100%;max-width:300px;height:auto;aspect-ratio:4/5;object-fit:cover;display:block}
.tit-link h3 a{color:var(--grafite);font-family:var(--fd);font-size:clamp(1.7rem,2.8vw,2.4rem);font-weight:500}
.imprensa{border-top:1px solid var(--filete);padding-top:30px}
.imprensa p{max-width:68ch;text-align:justify;hyphens:auto;-webkit-hyphens:auto;text-wrap:pretty}
.imprensa a.t{font-family:var(--fd);font-size:1.5rem;line-height:1.25;font-weight:500;color:var(--grafite);display:block;max-width:34ch}
.imprensa p{margin:10px 0 0;font-size:.93rem;color:var(--tinta)}

/* rodapé */
footer{background:var(--grafite);color:#CFCAC0;padding-block:clamp(64px,8vw,110px) 36px;font-size:.9rem;line-height:1.7}
footer .top{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.86fr) minmax(0,1.34fr) minmax(0,1.04fr);gap:44px;align-items:start}
@media(max-width:900px){footer .top{grid-template-columns:1fr 1fr}}
@media(max-width:560px){footer .top{grid-template-columns:1fr}}
footer .marca{height:100px;width:auto;color:var(--concreto)}
footer .tag{margin-top:26px;font-family:var(--fd);font-size:1.15rem;line-height:1.4;color:#CFCAC0;max-width:22ch}
footer h4{font-family:var(--fs);font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--pedra-2);margin:0 0 16px;font-weight:500}
footer a{color:#E6E2DA}
footer p{margin:0 0 8px;max-width:none}
footer nav a.ul{display:block;width:max-content;margin-bottom:12px;font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;font-weight:500}
footer .legal{margin-top:64px;padding-top:24px;border-top:1px solid #4A4844;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--pedra-2);display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 30px}
footer .legal a{color:var(--pedra-2)}
.zap{position:fixed;right:22px;bottom:22px;z-index:30;display:flex;align-items:center;gap:10px;background:var(--grafite);color:var(--concreto);padding:13px 18px 13px 15px;border-radius:40px;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;font-weight:500;border:1px solid #4A4844;transition:background .3s,transform .3s var(--ease)}
.zap:hover{background:var(--ceu);border-color:var(--ceu);transform:translateY(-2px)}
@media(max-width:700px){.zap{right:16px;bottom:16px;padding:12px;gap:0}.zap span{display:none}}
.zap svg{width:18px;height:18px;fill:currentColor}
@media(max-width:600px){.zap span{display:none}.zap{padding:14px;right:14px;bottom:14px}}

/* rodapé: alinhamento e destaques */
footer .top{align-items:stretch}
footer h4{padding-bottom:12px;border-bottom:1px solid #3C3A36;position:relative}
footer h4::after{content:"";position:absolute;left:0;bottom:-1px;width:26px;height:1px;background:var(--ceu-claro)}
footer .top>div>p:first-of-type,footer .top>div>nav{margin-top:18px}
footer p{line-height:1.8}
footer .fone{font-family:var(--fd);font-size:1.5rem;line-height:1.2;color:var(--concreto);margin:18px 0 6px}
footer .fone a{color:var(--concreto)}
footer .fnote{font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--pedra-2);margin:0 0 14px}
footer .flink{display:inline-flex;align-items:center;gap:9px;margin-top:6px;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;font-weight:500;color:#E6E2DA;padding-bottom:3px;border-bottom:1px solid #4A4844;transition:border-color .35s var(--ease),color .35s var(--ease)}
footer .flink svg{width:15px;height:15px;flex:none;color:var(--ceu-claro)}
footer .flink:hover{color:#fff;border-bottom-color:var(--ceu-claro)}
footer .social{margin-top:22px}
@media(max-width:860px){footer .fone{font-size:1.35rem}}

/* ===== leitura de artigo, correções de 15/09/2026 ===== */

/* rótulos nunca justificados nem indentados */
.prosa .lbl,.prosa.artigo .lbl,.prosa p.lbl,.prosa.artigo p.lbl{text-align:left;text-indent:0;hyphens:none}

/* separação de tópicos */
.prosa.artigo h3{position:relative;padding-top:30px;margin:58px 0 16px;font-size:1.42rem;line-height:1.25;max-width:26ch}
.prosa.artigo h3::before{content:"";position:absolute;top:0;left:0;width:44px;height:2px;background:var(--ceu)}
.prosa.artigo h3:first-of-type{margin-top:46px}
.prosa.artigo p+p{margin-top:.15em}

/* sumário do artigo */
.sumario{margin:38px 0 8px;padding:22px 0 24px;border-top:1px solid var(--pedra);border-bottom:1px solid var(--pedra)}
.sumario .lbl{display:block;margin-bottom:14px}
.sumario ol{margin:0;padding:0;list-style:none;counter-reset:s}
.sumario li{counter-increment:s;margin:0 0 9px;font-size:.98rem;line-height:1.45}
.sumario li:last-child{margin-bottom:0}
.sumario li::before{content:counter(s,decimal-leading-zero);font-family:var(--fd);font-size:.95rem;color:var(--ceu);margin-right:12px}
.sumario a{color:var(--tinta);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .3s}
.sumario a:hover{border-bottom-color:var(--ceu)}

/* assinatura do autor */
.autor{margin-top:60px;padding-top:26px;border-top:1px solid var(--pedra);display:flex;gap:20px;align-items:flex-start;flex-wrap:wrap}
.autor .quem{flex:1 1 260px;min-width:0}
.autor .nome{font-family:var(--fd);font-size:1.32rem;line-height:1.2;color:var(--grafite);margin:0}
.autor .oab{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--pedra);margin:7px 0 0}
.autor .onde{font-size:.94rem;line-height:1.55;color:var(--tinta);margin:11px 0 0;max-width:46ch}
.aviso{margin-top:26px;font-size:.84rem;line-height:1.6;color:var(--pedra);max-width:62ch;text-align:left;text-indent:0}
.fim-links{display:flex;gap:30px;flex-wrap:wrap;margin-top:34px}

/* celular: sem justificar, sem recuo, parágrafos separados por espaço */
@media (max-width:760px){
  .prosa.artigo h3{font-size:1.28rem;margin:46px 0 14px;max-width:none}
  .autor{gap:14px}
}

/* especificidade: dentro de .prosa.artigo as regras de p sobrescreviam o bloco do autor */
.prosa .autor,.prosa.artigo .autor{margin-top:64px;padding-top:28px;border-top:1px solid var(--pedra)}
.prosa .autor .nome,.prosa.artigo .autor .nome{font-family:var(--fd);font-size:1.3rem;line-height:1.2;color:var(--grafite);margin:0;text-align:left;text-indent:0}
.prosa .autor .oab,.prosa.artigo .autor .oab{font-size:.74rem;letter-spacing:.09em;text-transform:uppercase;color:var(--pedra);margin:8px 0 0;text-align:left;text-indent:0;line-height:1.5}
.prosa .autor .onde,.prosa.artigo .autor .onde{font-size:.93rem;line-height:1.55;color:var(--tinta);margin:12px 0 0;max-width:48ch;text-align:left;text-indent:0}
.prosa .aviso,.prosa.artigo .aviso{margin-top:32px;font-size:.83rem;line-height:1.6;color:var(--pedra);max-width:62ch;text-align:left;text-indent:0;hyphens:none}
.prosa .fim-links,.prosa.artigo .fim-links{margin-top:38px}

/* pular para o conteúdo */
.pular{position:absolute;left:-9999px;top:0;z-index:100;background:var(--grafite);color:var(--concreto);padding:12px 20px;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;text-decoration:none}
.pular:focus{left:12px;top:12px}
#conteudo:focus{outline:none}

/* alvos de toque no celular */
@media (max-width:760px){
  footer a,nav#menu a,.arrow,.flink{display:inline-flex;align-items:center;min-height:44px}
  footer .fnote{min-height:0}
  nav#menu a{padding-block:4px}
}

/* ============================================================
   TIPOGRAFIA, decisão de 15/09/2026
   Nenhuma palavra é quebrada em nenhum lugar do site.
   Justificado onde a coluna comporta (a partir de 761px).
   Alinhado à esquerda no celular, onde justificar abriria vãos.
   ============================================================ */

/* 1. nunca quebrar palavra */
html,body,p,li,h1,h2,h3,h4,.lead,.abre,.aviso,.autor .onde,.sumario a{
  hyphens:none!important;-webkit-hyphens:none!important;-ms-hyphens:none!important;
}

/* 2. rótulos, sumário e links nunca justificam */
.lbl,.by,.arrow,.sumario li,.sumario a,.eyebrow{text-align:left;text-indent:0}

/* 3. títulos com linhas equilibradas */
h1,h2,h3,h4{text-wrap:balance}

/* 4. bloco do autor e aviso */
.prosa .autor,.prosa.artigo .autor{margin-top:64px;padding-top:28px;border-top:1px solid var(--pedra)}
.prosa .autor .nome,.prosa.artigo .autor .nome{font-family:var(--fd);font-size:1.3rem;line-height:1.22;color:var(--grafite);margin:0;text-align:left;text-indent:0}
.prosa .autor .oab,.prosa.artigo .autor .oab{font-size:.74rem;letter-spacing:.09em;text-transform:uppercase;color:var(--pedra);margin:8px 0 0;text-align:left;text-indent:0;line-height:1.5}
.prosa .autor .onde,.prosa.artigo .autor .onde{font-size:.93rem;line-height:1.6;color:var(--tinta);margin:12px 0 0;max-width:52ch;text-align:justify;text-indent:0}
.prosa .aviso,.prosa.artigo .aviso{margin-top:32px;font-size:.83rem;line-height:1.62;color:var(--pedra);max-width:62ch;text-align:justify;text-indent:0}
.prosa .fim-links,.prosa.artigo .fim-links{margin-top:38px}

/* 5. resumo do topo justificado no computador */
.lead,.hero .lead{text-align:justify;text-indent:0}

/* 6. celular: alinhado à esquerda, sem recuo, com espaço entre parágrafos */
@media (max-width:760px){
  .prosa p,.prosa.artigo p,.prosa p:not(.abre),.prosa.artigo p:not(.abre),
  .txt p,.manif .txt p,.cab p,.imprensa p,.lead,.hero .lead,
  .autor .onde,.prosa .autor .onde,.prosa.artigo .autor .onde,
  .aviso,.prosa .aviso,.prosa.artigo .aviso,p.obs,p.abre{
    text-align:left!important;text-indent:0!important;
  }
  .prosa p+p,.prosa.artigo p+p,.txt p+p{margin-top:1em}
  .prosa,.prosa.artigo{max-width:none}
  .prosa p,.prosa.artigo p,.txt p,.manif .txt p{font-size:.97rem;line-height:1.68}
  .lead,.hero .lead{font-size:.97rem;line-height:1.64}
  .prosa p.abre,.prosa.artigo p.abre{font-size:clamp(1.14rem,5vw,1.42rem);line-height:1.34;max-width:none}
  .prosa.artigo h3{font-size:1.28rem;margin:46px 0 14px;max-width:none}
  .prosa .aviso,.prosa.artigo .aviso{font-size:.82rem}
  .prosa .autor .onde,.prosa.artigo .autor .onde{font-size:.9rem}
  footer a,nav#menu a,.arrow,.flink{display:inline-flex;align-items:center;min-height:44px}
  footer .fnote{min-height:0}
}

@media (max-width:760px){
  .prosa p:not(.abre),.prosa.artigo p:not(.abre),.txt p,.manif .txt p,.cab p,.imprensa p,
  .lead,.hero .lead,.autor .onde,.prosa .autor .onde,.prosa.artigo .autor .onde,
  .aviso,.prosa .aviso,.prosa.artigo .aviso,p.obs{text-align:justify!important;text-indent:0!important}
}
.prosa p,.prosa.artigo p,.txt p,.lead,.autor .onde,.aviso,.manif .txt p,.cab p,.imprensa p{
  hyphens:manual!important;-webkit-hyphens:manual!important;
}
h1,h2,h3,h4,.lbl,.sumario a,.arrow,.by{hyphens:none!important;-webkit-hyphens:none!important}

/* ===== faixa de fotos: volta a rolar sozinha também no celular ===== */
@media (max-width:700px){
  .faixa .trilho{
    animation:rolar 52s linear infinite!important;
    width:max-content!important;
    overflow-x:hidden!important;
    scroll-snap-type:none!important;
    gap:6px;
  }
  .faixa figure{
    scroll-snap-align:none;
    width:62vw!important;
    aspect-ratio:4/3;
  }
  .faixa figcaption{opacity:1}
}
/* quem pediu menos animação no sistema continua com a faixa parada e arrastável */
@media (prefers-reduced-motion:reduce){
  .faixa .trilho{animation:none!important;width:auto!important;overflow-x:auto!important}
  .faixa figure{width:82vw!important}
}

/* faixa de fechamento, acima do rodapé (páginas internas) */
.fecho{position:relative;height:clamp(268px,26vw,380px);overflow:hidden;background:var(--grafite)}
.fecho img{width:100%;height:100%;object-fit:cover;object-position:center 45%;display:block}
.fecho::after{content:"";position:absolute;inset:0;background:rgba(42,41,38,.20)}

/* seta discreta no lugar do rótulo vertical "Role" */
.hero .scroll{left:50%;right:auto;bottom:26px;writing-mode:horizontal-tb;transform:translateX(-50%);width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:var(--concreto);opacity:.62;letter-spacing:0;text-decoration:none;animation:seta 2.6s ease-in-out infinite;transition:opacity .35s}
.hero .scroll svg{width:22px;height:22px;display:block}
.hero .scroll:hover,.hero .scroll:focus-visible{opacity:1}
@keyframes seta{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,6px)}}

/* cartões e chamadas também justificados, como o restante do texto corrido */
.passos .p p,.passos .passo p,.chamada p{text-align:justify!important;text-indent:0!important;hyphens:manual!important;-webkit-hyphens:manual!important}
@media (max-width:760px){.passos .p p,.passos .passo p,.chamada p{text-align:justify!important}}

/* vários registros de imprensa em sequência */
.imprensa+.imprensa{margin-top:clamp(34px,4vw,48px)}

/* titulos de imprensa sem palavra sozinha na ultima linha */
.imprensa a.t{text-wrap:balance}

/* jurisprudência comentada: mesmo desenho do registro de imprensa, sem link externo */
.imprensa h3.t{font-family:var(--fd);font-size:1.5rem;line-height:1.25;font-weight:500;color:var(--grafite);max-width:34ch;margin:0;text-wrap:balance}

/* título do comentário como link, sem mudar a cor */
.imprensa h3.t a{color:inherit}
.imprensa .arrow{margin-top:14px}

/* cartões: links lado a lado no computador, empilhados no celular */
.imprensa .arrow{margin-top:14px;margin-right:28px}
@media (max-width:760px){.imprensa .arrow{margin-right:0;display:flex;width:max-content}}
/* nota de fonte ao fim do comentário */
.prosa p.obs,.prosa.artigo p.obs{margin-top:34px!important;padding-top:18px;border-top:1px solid var(--filete);font-size:.83rem;color:var(--pedra);text-indent:0!important;text-align:left!important}

/* Boletim AJ: bloco de inscrição */
.inscricao{margin:clamp(48px,6vw,72px) 0 0;padding:clamp(28px,4vw,40px) 0 0;border-top:1px solid var(--filete)}
.inscricao h3{margin:.35em 0 .55em}
.inscricao>p{max-width:60ch}
.inscricao form.f{margin-top:26px;max-width:620px}
.inscricao .linha{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media (max-width:640px){.inscricao .linha{grid-template-columns:1fr}}
.bloco-inscricao{padding-top:0}
.boletim-nota .muda{border-left:2px solid var(--ceu);padding-left:18px;margin:18px 0 8px}
.boletim-nota .muda strong{font-weight:500;color:var(--ceu)}
.fontes{font-size:.86rem;color:var(--pedra)}
.fontes li{margin:.3em 0}
.prosa.artigo.boletim p.abre{text-align:justify;max-width:none;hyphens:manual}
.boletim .fontes li,.boletim .autor p,.boletim .aviso,.inscricao p,.inscricao .obs{text-align:justify;hyphens:manual}
.hero.interna.art.hero-boletim h1,.hero.interna.art.hero-boletim .lead{text-align:justify;text-wrap:wrap;max-width:none}
.hero.interna.art.hero-boletim h1{font-size:clamp(1.75rem,3vw,2.45rem);white-space:nowrap}
@media (max-width:640px){.hero.interna.art.hero-boletim h1{font-size:5.9vw}}
.prosa.artigo.boletim h3,.inscricao h3{text-align:justify;text-wrap:wrap;max-width:none}
.prosa.artigo.boletim .sumario li{text-align:justify}
.inscricao>p{max-width:none}
@media (max-width:760px){html body .prosa p:not(.lbl):not(.nome):not(.oab):not(:has(>a.arrow:only-child)),html body .hero .lead,html body .prosa .sumario li,html body .prosa .fontes li{text-align:justify!important;hyphens:manual!important;text-wrap:wrap!important}}
.inscricao form.f p.obs{max-width:none;border-top:0;padding-top:0;margin-top:0}
