@charset "utf-8";
@font-face{font-family:Geologica;font-weight:200;font-display:swap;src:url(fonts/geologica-200.woff) format("woff")}
@font-face{font-family:Geologica;font-weight:300;font-display:swap;src:url(fonts/geologica-300.woff) format("woff")}
@font-face{font-family:Geologica;font-weight:400;font-display:swap;src:url(fonts/geologica-400.woff) format("woff")}
@font-face{font-family:Geologica;font-weight:500;font-display:swap;src:url(fonts/geologica-500.woff) format("woff")}

:root{
  --branco:#FFFFFF; --gelo:#F1F3F5; --tinta:#0A0C0E; --carvao:#14181C; --grafite:#5C646D;
  --carmim:#E13A44; --carmim-txt:#B4252E; --campo:#E3E7EB; --linha-escura:#D2D8DE;
  --neve:#F8F9FA; --areia:#E7EBEF;
  --m:clamp(16px,3.2vw,56px);
  --borda:max(var(--m), calc((100% - 1340px) / 2));
  --gap:clamp(72px,9vw,132px);
  --f:'Geologica',system-ui,sans-serif;
  --t-xl:clamp(2rem,min(6.6vw,12svh),6.6rem);
  --t-l:clamp(1.9rem,4.2vw,4rem);
  --t-h3:clamp(1.45rem,2.4vw,2.2rem);
  --t-m:clamp(1.0625rem,1.4vw,1.28rem);
  --t-s:1.0625rem; --t-xs:1rem;
  --e:cubic-bezier(.2,.75,.1,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--branco);color:var(--tinta);font-family:var(--f);font-size:var(--t-s);line-height:1.55;font-weight:300;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:2px solid var(--carmim);outline-offset:3px}
::selection{background:var(--carmim);color:#fff}
h1,h2,h3{font-weight:200;letter-spacing:-.04em;line-height:1}
h2{font-size:var(--t-l)}
p{max-width:62ch}
.wrap{padding-inline:var(--borda)}
.mudo{color:var(--grafite)}
.centro{width:100%}

.tarja{background:var(--carmim-txt);color:#fff;text-align:center;padding:9px 16px;font-size:var(--t-xs)}

/* topo */
.topo{position:relative;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px var(--borda)}
.topo.escuro{background:var(--branco);color:var(--tinta)}
.marca{display:flex;align-items:center;gap:14px;text-decoration:none;min-height:48px}
.marca img{width:44px;height:44px}
.marca b{font-weight:400;font-size:1rem;line-height:1.2;letter-spacing:-.01em}
@media (max-width:560px){.marca b{font-size:.9rem}.marca img{width:40px;height:40px}.marca{gap:10px}}
.marca small{display:block;font-weight:300;color:var(--grafite);font-size:.8125rem;letter-spacing:.01em}
.topo.escuro .marca small{color:var(--grafite)}
.topo.escuro .marca img{background:var(--tinta)}
.menu{display:flex;align-items:center;gap:clamp(10px,1.4vw,22px)}
.menu .bt{margin-left:clamp(8px,1.2vw,20px)}
.menu a{text-decoration:none;font-size:.95rem;padding:14px 6px;position:relative;min-width:44px;text-align:center;transition:color .25s}
.menu a:not(.bt){color:var(--grafite)}
.menu a:not(.bt):hover,.menu a[aria-current="page"]{color:var(--tinta)}
.menu a:not(.bt)::after{content:"";position:absolute;left:6px;right:6px;bottom:7px;height:2px;background:var(--carmim);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--e)}
.menu a:not(.bt):hover::after,.menu a[aria-current="page"]::after{transform:scaleX(1)}
.bt{display:inline-flex;align-items:center;justify-content:center;gap:9px;white-space:nowrap;min-height:50px;padding:0 24px;background:var(--carmim-txt);color:#fff;text-decoration:none;font-weight:400;font-size:1rem;border:0;border-radius:999px;cursor:pointer;font-family:inherit;transition:background .25s,transform .25s var(--e)}
.bt svg{width:19px;height:19px;fill:currentColor;flex:none}
.menu .bt{min-height:46px;padding:0 20px;font-size:.95rem}
.bt:hover{background:var(--tinta)}
.bt:active{transform:scale(.97)}
.topo.escuro .bt:hover{background:var(--tinta);color:#fff}
.bt.claro{background:var(--tinta);color:#fff}
.bt.claro:hover{background:var(--carmim-txt);color:#fff}
.bt.claro:hover{background:var(--carmim);color:#fff}
@media (max-width:980px){.menu a:not(.bt){display:none}.marca small{display:none}}

/* revelação de texto */
.rv{display:inline-block;overflow:hidden;vertical-align:bottom;padding:.26em 0 .34em;margin:-.26em 0 -.34em}
.rv > i{display:inline-block;font-style:inherit;transform:translateY(150%);transition:transform .9s var(--e);transition-delay:var(--d,0ms)}
.on .rv > i,.rv.on > i{transform:none}
.sobe{opacity:0;transform:translateY(22px);transition:opacity .8s var(--e),transform .8s var(--e);transition-delay:var(--d,0ms)}
.sobe.on{opacity:1;transform:none}
.sem-js .sobe{opacity:1;transform:none}
.sem-js .rv > i{transform:none}

/* capa: campo gelo, distinto do branco das seções */
.capa{position:relative;background:var(--gelo);color:var(--tinta);overflow:hidden;padding:clamp(32px,5vh,72px) var(--borda) clamp(36px,6vh,80px);min-height:calc(100svh - var(--topo,112px) + 18px);display:flex;flex-direction:column;justify-content:space-between;gap:clamp(28px,5vh,64px)}
.capa.alta{display:grid;align-items:center;padding-right:0;gap:0}
.capa.alta .grade{grid-template-columns:1.08fr .92fr;height:100%;align-items:center}
.foto-capa{position:relative;align-self:stretch;min-height:320px;max-height:74svh;margin-block:clamp(12px,3vh,30px)}
.foto-capa .q{position:absolute;inset:0;overflow:hidden}
.foto-capa img{animation:aproxima 1.4s cubic-bezier(.2,.75,.1,1) forwards}
@keyframes aproxima{from{transform:scale(1.07);opacity:.5}to{transform:none;opacity:1}}
.foto-capa img{width:100%;height:100%;object-fit:cover;object-position:60% 50%}
.foto-capa .moldura{position:absolute;left:-24px;top:34px;right:34px;bottom:-24px;border:2px solid var(--carmim);pointer-events:none;transform:translate(14px,14px);opacity:0;animation:moldura 1.1s var(--e) .9s forwards}
@keyframes moldura{to{transform:none;opacity:1}}
@keyframes abre{to{transform:scaleY(0)}}
@media (max-height:560px) and (max-width:1000px){
  :root{--t-xl:clamp(1.5rem,4.6vw,2.2rem);--t-m:1rem}
  .tarja{padding:4px 12px;font-size:.78rem}
  .topo{padding-block:6px}
  .capa,.capa.alta{padding-block:8px 12px;gap:8px}
  .topo{padding-inline:var(--m)}
  .capa .apoio{margin-top:7px;max-width:72ch;font-size:var(--t-xs)}
  .capa .acoes{margin-top:8px;gap:8px 16px}
  .capa .bt{min-height:44px;padding:0 16px;font-size:.92rem}
  .capa .oab{font-size:.78rem}
  .foto-capa{display:none}
  .capa .indice{display:none}
}
.capa h1{font-size:var(--t-xl);max-width:13ch}
.capa:not(.alta) h1{font-size:clamp(2.6rem,max(10vw,15svh),10rem);letter-spacing:-.05em}
.capa:not(.alta) .apoio{font-size:clamp(1.1rem,1.8vw,1.7rem);max-width:30ch;color:var(--grafite);overflow-wrap:break-word;padding-right:4px}
.capa .apoio{margin-top:clamp(18px,3vh,34px);font-size:var(--t-m);max-width:48ch;color:var(--grafite);line-height:1.5}
.capa .acoes{display:flex;flex-wrap:wrap;align-items:center;gap:16px 26px;margin-top:clamp(22px,3.4vh,40px)}
.capa .oab{font-size:var(--t-xs);color:var(--grafite)}
p.oab{margin-top:16px}
.capa .grade{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,4vw,72px);align-items:end;position:relative;z-index:2}
.capa > .centro{display:flex;flex-direction:column;justify-content:center;gap:clamp(32px,7vh,90px);flex:1}
.capa.alta > .centro{display:block}
.capa .trilha{font-size:var(--t-xs);color:var(--grafite);margin-bottom:12px}
.capa .trilha a{text-decoration:none;display:inline-block;padding:13px 10px 13px 0;margin-block:-11px;min-width:44px}
.malha-capa{display:none}
.malha-capa i{position:absolute;width:var(--s);height:var(--s);background:#2A313A;opacity:0;animation:pisca .9s var(--e) forwards;animation-delay:var(--d)}
.malha-capa i.q{background:var(--carmim)}
@keyframes pisca{to{opacity:1}}
@media (max-width:860px){
  .capa .grade,.capa.alta .grade{grid-template-columns:1fr}
  .capa.alta{padding-right:var(--m)}
  .capa.alta .grade{height:auto;gap:clamp(16px,2.6vh,34px)}
  .capa.alta .apoio{margin-top:clamp(14px,2vh,26px)}
  .capa.alta .acoes{margin-top:clamp(16px,2.4vh,30px)}
  .foto-capa{min-height:0;height:30svh;margin-right:calc(var(--m) * -1)}
  .foto-capa .moldura{left:-10px;right:16px;top:22px;bottom:-12px}
}

.indice{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--linha-escura)}
.indice a{display:flex;flex-direction:column;justify-content:space-between;gap:clamp(18px,3vw,44px);min-height:clamp(120px,16vh,190px);padding:clamp(18px,2.4vw,30px) clamp(16px,1.8vw,24px);background:var(--neve);text-decoration:none;transition:background .3s var(--e)}
.indice a:hover{background:var(--areia)}
.indice b{font-weight:400;font-size:var(--t-s)}
.indice span{font-size:var(--t-s);color:var(--grafite);max-width:30ch}
.indice a:hover b{color:var(--carmim-txt)}
@media (max-width:760px){.indice{grid-template-columns:1fr}.indice a{padding-block:14px}}

/* seções */
section{padding-block:var(--gap)}
section.gelo{background:var(--gelo)}
section.escura{background:var(--areia);color:var(--tinta)}
section.escura h2,section.escura h3{color:var(--tinta)}
section.escura p{color:var(--grafite)}
.cab{display:grid;grid-template-columns:1fr 1fr;gap:18px clamp(24px,5vw,80px);align-items:end;margin-bottom:clamp(36px,5vw,68px)}
.cab p{font-size:var(--t-m)}
@media (max-width:860px){.cab{grid-template-columns:1fr}}

/* lista de frentes */
.frentes{list-style:none}
.frentes li{position:relative;display:grid;grid-template-columns:1fr 1.05fr;gap:10px clamp(24px,5vw,80px);padding-block:clamp(22px,2.8vw,38px);isolation:isolate}
.frentes li::before{content:"";position:absolute;inset:0 -24px;background:var(--gelo);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--e);z-index:-1}
.frentes li:hover::before{transform:scaleX(1)}
.frentes li::after{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--campo)}
section.escura .frentes li::after{background:var(--linha-escura)}
section.escura .frentes li::before{background:var(--neve)}
.frentes h3{font-size:var(--t-h3);transition:color .3s,transform .5s var(--e)}
.frentes li:hover h3{color:var(--carmim-txt);transform:translateX(10px)}
section.escura .frentes li:hover h3{color:var(--carmim-txt)}
@media (max-width:860px){.frentes li{grid-template-columns:1fr}}

/* cartões de navegação entre páginas */
.portas{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--campo)}
.portas a{display:flex;flex-direction:column;justify-content:space-between;gap:36px;min-height:270px;padding:clamp(22px,2.6vw,40px);background:var(--branco);text-decoration:none;transition:background .35s var(--e),color .35s}
.portas a:hover{background:var(--tinta);color:#fff}
.portas h3{font-size:var(--t-h3)}
.portas span{font-size:var(--t-s);color:var(--grafite);max-width:34ch}
.portas a:hover span{color:#C9CFD6}
.portas em{font-style:normal;font-size:var(--t-xs);color:var(--carmim-txt)}
.portas a:hover em{color:var(--carmim)}
@media (max-width:900px){.portas{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.portas{grid-template-columns:1fr}.portas a{min-height:0;gap:20px}}

/* números e provas */
.provas{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,3vw,48px)}
.provas div{position:relative;padding-top:20px}
.provas div::before{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:var(--carmim);transform:scaleX(0);transform-origin:left;transition:transform .8s var(--e);transition-delay:var(--d,0ms)}
.provas.on div::before{transform:scaleX(1)}
.provas b{display:block;font-weight:200;font-size:clamp(2.1rem,3.4vw,3.2rem);letter-spacing:-.04em;line-height:1;margin-bottom:8px}
.provas span{font-size:var(--t-m);color:var(--grafite)}
section.escura .provas span{color:var(--grafite)}
@media (max-width:860px){.provas{grid-template-columns:1fr 1fr}}

/* faixa de chamada */
.chamada{background:var(--carmim-txt);color:#fff;padding-block:clamp(56px,7vw,110px)}
.chamada .centro{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,72px);align-items:center}
@media (max-width:860px){.chamada .centro{grid-template-columns:1fr}}
.chamada h2{color:#fff;max-width:11ch}
.chamada p{color:#FBE2E3;margin-top:18px}
.chamada .acoes{margin-top:clamp(24px,3vw,40px);display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center}
.chamada .acoes a:not(.bt){display:inline-block;padding-block:14px;color:#fff}

/* rodapé */
footer{padding:clamp(56px,7vw,110px) var(--borda) 28px;background:var(--gelo);color:var(--grafite)}
.rod{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.rod h3{font-size:var(--t-s);font-weight:400;color:var(--tinta);letter-spacing:0;margin-bottom:8px}
.rod a{display:inline-block;padding:11px 0;text-decoration:none;color:var(--tinta);transition:color .25s}
.rod a:hover{color:var(--carmim-txt)}
.rod p{font-size:var(--t-s)}
.rodape-fim{display:flex;flex-wrap:wrap;align-items:center;gap:8px clamp(18px,3vw,38px);margin-top:clamp(44px,6vw,76px);font-size:var(--t-xs);color:var(--grafite)}
.rodape-fim a{color:var(--grafite);display:inline-flex;align-items:center;min-height:44px;transition:color .25s}
.rodape-fim a:hover{color:var(--tinta)}
.lado-artigo{position:sticky;top:clamp(90px,12vh,130px);display:flex;flex-direction:column;gap:clamp(26px,4vh,44px)}
.lado-artigo .sumario{position:static;top:auto}
.cartao-autor{background:var(--neve);padding:20px}
.cartao-autor b{display:block;font-weight:400;color:var(--tinta);font-size:.95rem}
.cartao-autor span{display:block;font-size:var(--t-xs);color:var(--grafite);margin-top:2px}
.cartao-autor .bt{width:100%;margin-top:16px;font-size:.95rem;min-height:46px;padding:0 18px;justify-content:space-between;gap:14px}
@media (max-width:860px){.lado-artigo{position:static;order:-1;gap:26px}.cartao-autor{order:2}}
.creditos-lista{margin-top:6px}
.creditos-lista li{padding-block:14px}
@media (max-width:860px){.rod{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.rod{grid-template-columns:1fr}}

/* flutuantes */
.zap,.acess{position:fixed;right:18px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;z-index:40;transition:background .25s,transform .25s var(--e)}
.zap{bottom:18px;background:var(--tinta)}
.acess{bottom:80px;background:var(--carmim-txt)}
.zap:hover,.acess:hover{background:var(--carmim-txt);transform:translateY(-3px)}
.acess:hover{background:var(--tinta)}
.zap svg{width:25px;height:25px;fill:#fff}
.acess svg{width:29px;height:29px;fill:#fff}
@media (max-width:700px){.acess{display:none}}

/* troca de página */
.cortina{position:fixed;inset:0;background:var(--gelo);z-index:90;transform:scaleY(0);transform-origin:bottom;pointer-events:none}
.cortina.sai{transform:scaleY(1);transform-origin:bottom;transition:transform .45s var(--e)}
.cortina.entra{transform:scaleY(1);transform-origin:top;animation:abreCortina .6s var(--e) forwards}
@keyframes abreCortina{to{transform:scaleY(0)}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .sobe{opacity:1;transform:none}
  .rv > i{transform:none}
  .malha-capa i{opacity:1}
  .provas div::before{transform:scaleX(1)}
  .cortina{display:none}
}

/* duas colunas com retrato */
.redondo{align-self:center;justify-self:center;width:min(100%,clamp(200px,26vw,320px));margin:0}
.redondo img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:50%;display:block;background:var(--branco);border:1px solid var(--linha-escura);outline:1px solid rgba(225,58,68,.5);outline-offset:11px}
.capa .redondo img{animation:aproxima 1.4s cubic-bezier(.2,.75,.1,1) forwards}
.redondo figcaption{margin-top:28px;text-align:center;font-size:var(--t-m)}
.redondo figcaption span{display:block;font-size:var(--t-xs);color:var(--grafite);margin-top:3px}
.quem{display:grid;grid-template-columns:clamp(210px,26vw,330px) 1fr;gap:clamp(30px,5vw,80px);align-items:center}
.provas.dois{grid-template-columns:1fr 1fr}
@media (max-width:860px){.quem{grid-template-columns:1fr;gap:clamp(26px,5vw,44px)}.quem .provas{order:1}.quem .redondo{order:2}}
@media (max-width:860px){
  .capa .grade.lado-a-lado{grid-template-columns:1fr auto;align-items:center;gap:clamp(14px,4vw,26px)}
  .capa .lado-a-lado .redondo{width:clamp(92px,25vw,132px);align-self:center}
  .capa .lado-a-lado .redondo img{outline-offset:7px}
  .capa .lado-a-lado p.oab{margin-top:12px}
}
.dupla{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(28px,4vw,72px);align-items:start}
.retrato{overflow:hidden}
.retrato img{width:100%;height:100%;max-height:560px;object-fit:cover}
.retrato figcaption{font-size:var(--t-xs);color:var(--grafite);margin-top:10px}
@media (max-width:860px){.dupla{grid-template-columns:1fr}}

/* listas de itens */
.itens{list-style:none}
.itens li{padding:16px 0;font-size:var(--t-s);position:relative}
.itens li + li::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--campo)}
.itens li span{display:block;color:var(--grafite);font-size:var(--t-s);margin-top:4px}
.itens li a{display:inline-block;padding-block:12px;margin-block:-9px}
.sub{font-size:var(--t-m);font-weight:400;letter-spacing:0;margin-bottom:16px}
.selos{display:flex;flex-wrap:wrap;gap:9px}
.selos span{background:var(--branco);border-radius:999px;padding:11px 18px;font-size:var(--t-s)}

/* método */
.perguntas{display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(34px,5vw,80px)}
.perguntas dt{grid-column:1 / -1;font-size:var(--t-xs);color:var(--grafite);margin-bottom:12px}
@media (max-width:860px){.perguntas{grid-template-columns:1fr}}
.perguntas dt{font-size:var(--t-xs);color:var(--grafite);margin-bottom:12px}
.perguntas dd{margin:0;font-size:var(--t-m);font-weight:200;letter-spacing:-.02em;line-height:1.35;color:var(--tinta);padding:15px 0;position:relative}
.perguntas dd::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--campo)}
.leg{margin-top:14px;font-size:var(--t-s);color:var(--grafite);max-width:78ch}

.grade-mapa{display:grid;grid-template-columns:minmax(300px,1fr) minmax(280px,.85fr);grid-template-areas:"mapa ficha" "leg ficha";gap:clamp(18px,2.4vw,30px) clamp(28px,5vw,80px);align-items:center}
.grade-mapa > div:first-child{grid-area:mapa}
.grade-mapa > .ficha{grid-area:ficha}
.grade-mapa > .legenda{grid-area:leg;align-self:start}
.mapa{width:100%;max-width:600px;margin-inline:auto;padding:22px}
.mapa-area{position:relative;aspect-ratio:1/1}
.mapa-fundo{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 1.1s var(--e)}
.mapa.on .mapa-fundo{opacity:1}
.mapa-in{position:absolute;inset:0}
.mapa-in button{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);width:44px;height:44px;min-width:44px;display:grid;place-items:center;background:transparent;border:0;padding:0;font:inherit;font-size:clamp(.82rem,1.1vw,.9rem);color:var(--grafite);cursor:pointer}
.mapa-in button i{position:absolute;width:clamp(11px,1.9vw,16px);height:clamp(11px,1.9vw,16px);background:var(--grafite);transition:background .35s var(--e),transform .45s var(--e);transform:scale(0)}
.mapa.on .mapa-in button i{transform:scale(1)}
.mapa-in button.atuou i{background:var(--tinta);width:clamp(15px,2.5vw,21px);height:clamp(15px,2.5vw,21px)}
.mapa-in button:hover i{background:var(--carmim-txt)}
.mapa-in button[aria-pressed="true"] i{background:var(--carmim);transform:scale(1.5)}
.mapa-in button b{position:absolute;top:calc(50% + 11px);left:50%;transform:translate(-50%,4px);opacity:0;font-weight:400;white-space:nowrap;background:var(--branco);padding:1px 4px;transition:opacity .25s,transform .25s var(--e)}
.mapa-in button:hover b,.mapa-in button:focus-visible b,.mapa-in button[aria-pressed="true"] b{opacity:1;transform:translate(-50%,0);color:var(--tinta)}
.ficha{background:var(--neve);padding:clamp(22px,2.8vw,40px)}
.ficha .uf{font-size:clamp(2.8rem,6vw,5.4rem);font-weight:200;letter-spacing:-.05em;line-height:.88}
.ficha .nome{font-size:var(--t-m);margin-top:8px}
.ficha dl{margin-top:26px;display:grid;grid-template-columns:auto 1fr;gap:10px 24px}
.ficha dt{color:var(--grafite);font-size:var(--t-xs)}
.ficha dd{font-weight:400;font-size:var(--t-s)}
.ficha .obs{margin-top:22px;font-size:var(--t-s)}
.ficha.troca{animation:troca .5s var(--e)}
@keyframes troca{from{opacity:.15;transform:translateY(12px)}to{opacity:1;transform:none}}
.legenda{font-size:var(--t-xs);color:var(--grafite);text-align:center}
.legenda i{display:inline-block;width:11px;height:11px;background:var(--tinta);margin-right:7px}
.passos{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.4vw,36px);margin-top:clamp(48px,6vw,88px)}
.passos li{font-size:var(--t-s)}
.passos b{display:block;font-weight:200;font-size:var(--t-h3);letter-spacing:-.03em;line-height:1.05;margin-bottom:12px}
@media (max-width:980px){.grade-mapa{grid-template-columns:1fr;grid-template-areas:"mapa" "ficha" "leg"}}
@media (max-width:760px){.passos{grid-template-columns:1fr}}

/* artigos */
.grade-blog{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(32px,5vw,80px);align-items:start}
.destaque{position:sticky;top:24px;display:flex;flex-direction:column;justify-content:space-between;gap:36px;text-decoration:none;background:var(--areia);color:var(--tinta);padding:clamp(26px,3.2vw,52px);min-height:380px;transition:background .35s var(--e)}
.destaque:hover{background:var(--carmim-txt);color:#fff}
.destaque h3{font-size:var(--t-l)}
.destaque span{color:var(--grafite);font-size:var(--t-s)}
.destaque:hover span{color:#fff}
.nuvem{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.nuvem button{font-family:inherit;font-size:var(--t-s);background:var(--areia);border:0;border-radius:999px;padding:11px 17px;min-height:44px;cursor:pointer;color:var(--tinta);transition:background .25s,color .25s}
.nuvem button:hover{background:#D7DDE3}
.nuvem button[aria-pressed="true"]{background:var(--carmim-txt);color:#fff}
.lista{list-style:none}
.lista li{position:relative}
.lista li + li::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--campo)}
.lista li a{display:block;text-decoration:none;padding:15px 0;font-size:var(--t-s);line-height:1.4;transition:color .25s,transform .35s var(--e)}
.lista li a:hover{color:var(--carmim-txt);transform:translateX(7px)}
.lista li[hidden]{display:none}
.lista small{display:block;color:var(--grafite);font-size:var(--t-s);margin-top:3px}
.insta{margin-top:24px;font-size:var(--t-s)}
.insta a,.lgpd a{display:inline-block;padding-block:12px;margin-block:-10px}
@media (max-width:900px){.grade-blog{grid-template-columns:1fr}.destaque{position:static;min-height:260px}}

/* newsletter */
.grade-carta{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,80px);align-items:center}
.grade-carta form{display:grid;gap:12px}
.grade-carta label{font-size:var(--t-xs);color:var(--grafite)}
.grade-carta input[type=email],.grade-carta input[type=tel]{width:100%;min-height:54px;border:2px solid var(--campo);background:#fff;color:var(--tinta);font:inherit;font-size:var(--t-s);padding:0 20px;border-radius:999px;transition:border-color .25s}
.grade-carta input:focus{border-color:var(--carmim);outline:none}
.aceite{display:flex;gap:12px;align-items:flex-start;font-size:var(--t-xs);line-height:1.5;color:var(--tinta);padding-block:4px}
.aceite input{width:24px;height:24px;min-height:24px;flex:none;margin-top:1px;accent-color:var(--carmim)}
.lgpd{font-size:var(--t-xs);color:var(--grafite)}
.lgpd a{color:var(--carmim-txt)}
.ok{font-size:var(--t-s);background:var(--carmim-txt);color:#fff;border-radius:16px;padding:14px 18px}
.grade-carta .bt{width:100%;min-height:56px}
@media (max-width:860px){.grade-carta{grid-template-columns:1fr}}

/* contato */
.grade-contato{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,72px);align-items:start}
.caixa{background:var(--gelo);padding:clamp(24px,3vw,44px)}
.caixa h3{font-size:var(--t-m);font-weight:400;letter-spacing:0;margin-bottom:16px}
.simples{padding-left:1.1em}
.simples li{padding:7px 0;font-size:var(--t-s)}
.aviso{margin-top:22px;font-size:var(--t-xs);color:var(--grafite)}
@media (max-width:860px){.grade-contato{grid-template-columns:1fr}}

/* faixa larga de imagem */
.faixa{position:relative;overflow:hidden;height:clamp(180px,26vw,360px)}
.faixa img{width:100%;height:100%;object-fit:cover}

/* faixa de dados */
.faixa-texto h2{max-width:20ch}
.dados{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(18px,2.4vw,34px);margin-top:clamp(36px,5vw,64px)}
.dados > div{padding-top:18px;position:relative}
.dados > div::before{content:"";position:absolute;left:0;top:0;width:100%;height:2px;background:var(--carmim)}
.dados dt{font-size:var(--t-xs);color:var(--grafite);margin-bottom:6px}
.dados dd{font-size:var(--t-m);font-weight:300;color:var(--tinta)}
@media (max-width:860px){.dados{grid-template-columns:1fr 1fr}}

/* páginas de texto legal */
.capa-artigo{position:relative}
.capa-artigo .centro{position:relative;z-index:1}
.capa h1.titulo-artigo{font-size:clamp(1.9rem,4.4vw,3.6rem);line-height:1.1;letter-spacing:-.03em;max-width:27ch}
.trilha{font-size:var(--t-xs);margin-bottom:clamp(16px,2.4vh,28px)}
.trilha a{color:var(--grafite);text-decoration:none;display:inline-flex;align-items:center;min-height:44px;transition:color .25s}
.trilha a::before{content:"← ";margin-right:4px}
.trilha a:hover{color:var(--tinta)}
.capa .titulo-artigo + .apoio{max-width:48ch;font-size:clamp(1.02rem,1.5vw,1.3rem)}
.dados-artigo{margin-top:clamp(18px,2.6vh,30px);font-size:var(--t-xs);color:var(--grafite)}
.dados-artigo span{color:var(--carmim-txt);padding:0 2px}
.texto-legal h3{font-size:var(--t-m);font-weight:400;margin:clamp(26px,3vw,38px) 0 10px}
.texto-legal blockquote{margin:clamp(24px,3vw,36px) 0;padding:4px 0 4px 22px;border-left:2px solid var(--carmim);font-size:var(--t-m);line-height:1.5}
.texto-legal strong{font-weight:500}
.pagina-texto{display:grid;grid-template-columns:minmax(0,72ch) minmax(170px,215px);justify-content:space-between;gap:clamp(30px,4vw,56px);align-items:start}
.texto-legal{max-width:70ch;overflow-wrap:break-word}
.texto-legal a{overflow-wrap:anywhere}
.sumario{position:sticky;top:clamp(90px,12vh,130px);border-top:2px solid var(--carmim);padding-top:16px}
.sumario h2{font-size:var(--t-xs);font-weight:400;color:var(--grafite);margin:0 0 12px;letter-spacing:.02em}
.sumario ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}
.sumario a{display:flex;align-items:center;min-height:44px;padding:11px 0;font-size:.92rem;color:var(--grafite);text-decoration:none;line-height:1.35;transition:color .25s}
.sumario a:hover{color:var(--tinta)}
@media (max-width:860px){.pagina-texto{grid-template-columns:1fr}.sumario{position:static;order:-1;margin-bottom:8px}}
@media (max-width:560px){.capa h1.menor{font-size:clamp(2rem,9.6vw,2.9rem);letter-spacing:-.035em}}
.texto-legal h2{font-size:var(--t-h3);margin:clamp(36px,4vw,56px) 0 14px}
.texto-legal p{font-size:var(--t-s);line-height:1.65}
.texto-legal p + p{margin-top:12px}
.texto-legal .destaque-p{font-size:var(--t-m);line-height:1.55}
.texto-legal .itens li{padding-block:14px}
.texto-legal .nota{background:var(--areia);padding:16px 20px;margin-top:32px;font-size:var(--t-s)}
.texto-legal a{display:inline-block;padding-block:12px;margin-block:-10px}
