/* ==========================================================================
   Robson H S Macedo Advogado — folha de estilos
   Paleta do site original ("Justiça e Equilíbrio"): verde-floresta, dourado, branco gelo e grafite.
   ========================================================================== */

@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/cormorant-garamond-500.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/cormorant-garamond-600.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-display:swap;src:url(../fonts/cormorant-garamond-500-italic.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/inter-400.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/inter-500.woff2) format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/inter-600.woff2) format("woff2")}

:root{
  --verde:#1A3B2A;
  --verde-profundo:#10261A;
  --verde-noite:#081109;
  --ouro:#C9A961;
  --ouro-claro:#D6B972;
  --ouro-tinta:#755E24;
  --gelo:#F8F6F0;
  --superficie:#FDFCF8;
  --grafite:#2A2A2A;
  --mudo:#56645A;
  --linha:#D9DDD5;
  --campo:#6B7B6F;
  --erro:#8B2434;
  --sobre-verde:#F8F6F0;
  --sobre-verde-mudo:#C8D3CB;
  --linha-escura:rgba(248,246,240,.16);
  --preencher-fundo:#EFE5C9;

  --serifa:"Cormorant Garamond", Garamond, "Times New Roman", serif;
  --sem-serifa:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

  --margem:clamp(1.25rem, 5vw, 5rem);
  --largura:1280px;
  --topo-altura:76px;
  --curva:cubic-bezier(.22,.7,.2,1);
  color-scheme:light;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;background:var(--verde-noite);scroll-padding-top:var(--topo-altura)}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-stopped{overflow:clip}
.lenis [data-lenis-prevent]{overscroll-behavior:contain}
body{margin:0;background:var(--gelo);color:var(--grafite);font-family:var(--sem-serifa);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
img{max-width:100%;display:block}
h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0}
ul,ol{padding:0;list-style:none}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.2em}
button{font:inherit;color:inherit}
[hidden]{display:none !important}
:focus-visible{outline:2px solid var(--ouro);outline-offset:3px;border-radius:2px}
::selection{background:var(--ouro);color:var(--verde-profundo)}

.conteiner{width:min(100% - 2 * var(--margem), var(--largura));margin-inline:auto}
.pular{position:absolute;left:1rem;top:-140px;z-index:200;background:var(--verde);color:var(--gelo);padding:.8rem 1.1rem;font-weight:600}
.pular:focus{top:.75rem}

/* ---------- tipografia ---------- */
.sobrelinha{font-family:var(--sem-serifa);font-weight:600;font-size:.76rem;line-height:1.3;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro-tinta);display:flex;align-items:center;gap:.9rem}
.sobrelinha::before{content:"";width:34px;height:1px;background:currentColor;flex:none}
.sobrelinha--claro{color:var(--ouro)}
.titulo-xl{font-family:var(--serifa);font-weight:500;font-size:clamp(2.3rem, 1.3rem + 3.6vw, 4.6rem);line-height:1.04;letter-spacing:-.012em;color:var(--verde);text-wrap:balance}
.secao--verde .titulo-xl{color:var(--gelo)}
.lead{font-size:clamp(1.1rem, 1rem + .45vw, 1.32rem);line-height:1.55;max-width:56ch}
.nota,.dica{font-size:.9rem;color:var(--mudo)}
.linha-mascara{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.linha-mascara > span{display:block;will-change:transform}
.preencher{background:var(--preencher-fundo);color:var(--verde);border-bottom:1px dashed var(--ouro-tinta);padding:.05em .4em;border-radius:2px;font-size:.92em;font-style:normal}
.preencher--claro{background:rgba(201,169,97,.2);color:var(--gelo);border-bottom-color:var(--ouro)}
.link-seta{font-weight:600;color:var(--verde);text-decoration:none;border-bottom:1px solid var(--ouro);padding-bottom:.15em}
.link-seta span{display:inline-block;transition:transform .35s var(--curva)}
.link-seta:hover span{transform:translateX(5px)}

/* ---------- botões ---------- */
.botao{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:50px;padding:.8rem 1.6rem;border:1px solid transparent;border-radius:1px;font-family:var(--sem-serifa);font-weight:600;font-size:.93rem;letter-spacing:.02em;line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color .3s, color .3s, border-color .3s, transform .3s var(--curva)}
.botao:active{transform:translateY(1px)}
.botao--ouro{background:var(--ouro);color:var(--verde-profundo)}
.botao--ouro:hover{background:var(--ouro-claro)}
.botao--verde{background:var(--verde);color:var(--gelo)}
.botao--verde:hover{background:var(--verde-profundo)}
.botao--linha{border-color:var(--verde);color:var(--verde);background:transparent}
.botao--linha:hover{background:var(--verde);color:var(--gelo)}
.botao--linha-claro{border-color:rgba(248,246,240,.55);color:var(--gelo);background:transparent}
.botao--linha-claro:hover{background:var(--gelo);color:var(--verde-profundo);border-color:var(--gelo)}
.botao--p{min-height:42px;padding:.55rem 1.15rem;font-size:.88rem}
.acoes{display:flex;flex-wrap:wrap;gap:.8rem}
.link-botao{background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}
.link-claro{color:var(--gelo);font-size:.9rem}

/* ==========================================================================
   Cabeçalho
   ========================================================================== */
.topo{position:fixed;inset:0 0 auto 0;z-index:60;height:var(--topo-altura);color:var(--gelo);transition:background-color .45s, color .45s, box-shadow .45s, transform .5s var(--curva)}
.topo::before{content:"";position:absolute;inset:0 0 -40px 0;background:linear-gradient(180deg, rgba(5,10,7,.62), rgba(5,10,7,0));pointer-events:none;transition:opacity .45s;z-index:-1}
.topo--solido{background:rgba(248,246,240,.94);color:var(--verde);box-shadow:0 1px 0 var(--linha);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.topo--solido::before{opacity:0}
.topo-in{height:100%;width:min(100% - 2 * var(--margem), 1480px);margin-inline:auto;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.marca{display:inline-flex;text-decoration:none;color:inherit;position:relative;z-index:3}
.marca-svg{height:44px;width:auto;display:block}
.marca-svg .m-quadro{fill:none;stroke:var(--ouro);stroke-width:1.4}
.marca-svg .m-mono{font-family:var(--serifa);font-weight:600;font-size:23px;letter-spacing:-.5px;fill:currentColor}
.marca-svg .m-nome{font-family:var(--serifa);font-weight:600;font-size:18px;letter-spacing:2.6px;fill:currentColor}
.marca-svg .m-fio{stroke:var(--ouro);stroke-width:1.2}
.marca-svg .m-sub{font-family:var(--sem-serifa);font-weight:500;font-size:10.5px;letter-spacing:4.2px;fill:currentColor}
.menu{display:flex;align-items:center;gap:clamp(1.2rem, 2vw, 2.2rem)}
.menu ul{display:flex;gap:clamp(1.1rem, 1.7vw, 1.9rem)}
.menu ul a{position:relative;display:inline-block;padding:.5rem 0;font-size:.9rem;font-weight:500;text-decoration:none;letter-spacing:.01em}
.menu ul a::after{content:"";position:absolute;left:0;right:0;bottom:.2rem;height:1px;background:var(--ouro);transform:scaleX(0);transform-origin:right;transition:transform .4s var(--curva)}
.menu ul a:hover::after,.menu ul a[aria-current]::after{transform:scaleX(1);transform-origin:left}
.menu-cta{min-height:42px;padding:.55rem 1.15rem;font-size:.86rem}
.menu-botao{display:none}

@media (max-width:1180px){
  .menu-botao{display:inline-flex;align-items:center;gap:.7rem;min-height:44px;padding:.4rem 0 .4rem .8rem;background:none;border:0;cursor:pointer;font-weight:600;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;position:relative;z-index:3}
  .menu-botao-icone{position:relative;width:26px;height:12px;display:block}
  .menu-botao-icone i{position:absolute;left:0;right:0;height:1.5px;background:currentColor;transition:transform .45s var(--curva), top .45s var(--curva)}
  .menu-botao-icone i:first-child{top:0}
  .menu-botao-icone i:last-child{top:10px}
  .menu-aberto .menu-botao-icone i:first-child{top:5px;transform:rotate(45deg)}
  .menu-aberto .menu-botao-icone i:last-child{top:5px;transform:rotate(-45deg)}
  .menu{position:fixed;inset:0;z-index:2;flex-direction:column;align-items:flex-start;justify-content:center;gap:2.5rem;padding:calc(var(--topo-altura) + 1rem) var(--margem) 2.5rem;background:var(--verde-profundo);color:var(--gelo);visibility:hidden;opacity:0;clip-path:inset(0 0 100% 0);transition:clip-path .65s var(--curva), opacity .3s, visibility 0s .65s;overflow-y:auto}
  .menu-aberto .menu{visibility:visible;opacity:1;clip-path:inset(0);transition:clip-path .65s var(--curva), opacity .3s, visibility 0s}
  .menu ul{flex-direction:column;gap:.2rem;width:100%}
  .menu ul a{font-family:var(--serifa);font-size:clamp(2rem, 8vw, 2.9rem);font-weight:500;line-height:1.15;padding:.35rem 0}
  .menu ul a::after{display:none}
  .menu-cta{min-height:50px;padding:.8rem 1.6rem;font-size:.93rem}
  .menu-aberto .topo{color:var(--gelo);background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
  .menu-aberto .topo::before{opacity:0}
}
@media (max-width:520px){ :root{--topo-altura:66px} .marca-svg{height:36px} .marca-svg .m-sub{font-size:12px;letter-spacing:3.4px} }
@media (max-width:400px){ .marca-svg{height:33px} .menu-botao{padding-left:.4rem} .menu-botao-rotulo{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap} }

/* ==========================================================================
   Hero
   ========================================================================== */
.hero{position:relative;background:var(--verde-noite);color:var(--gelo)}
.hero-palco{position:relative;height:100vh;height:100svh;min-height:520px;overflow:hidden;isolation:isolate}
.hero-estatico,.hero-canvas,.hero-poeira,.hero-veu,.hero-grao{position:absolute;inset:0;width:100%;height:100%;display:block}
.hero-estatico img{width:100%;height:100%;object-fit:cover;object-position:60% 50%}
.hero-canvas{opacity:0;transition:opacity .9s}
.hero-ativo .hero-canvas{opacity:1}
.hero-ativo .hero-estatico{visibility:hidden}
.hero-poeira{pointer-events:none;mix-blend-mode:screen}
.hero-veu{pointer-events:none;background:
  linear-gradient(180deg, rgba(5,10,7,.5) 0%, rgba(5,10,7,0) 22%),
  radial-gradient(120% 120% at 50% 50%, rgba(5,10,7,0) 55%, rgba(5,10,7,.55) 100%)}
.hero-veu--final{background:
  linear-gradient(90deg, rgba(6,14,9,.9) 0%, rgba(6,14,9,.74) 30%, rgba(6,14,9,0) 62%),
  radial-gradient(130% 100% at 0% 100%, rgba(6,14,9,.9) 0%, rgba(6,14,9,.6) 34%, rgba(6,14,9,0) 70%)}
.hero-saida{position:absolute;inset:0;z-index:4;background:var(--verde-noite);opacity:0;pointer-events:none}
.hero-grao{pointer-events:none;opacity:.11;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .5 0 0 0 0 .5 0 0 0 0 .5 0 0 0 .9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");background-size:220px 220px}

.hero-abertura,.hero-final{position:absolute;left:var(--margem);right:var(--margem);z-index:3}
.hero-abertura{top:50%;transform:translateY(-50%);pointer-events:none}
/* Equilíbrio · Técnica · Ética: uma linha só, com um ponto dourado centralizado entre as palavras */
.hero-palavras{margin-top:1.3rem;display:flex;align-items:baseline;white-space:nowrap;font-family:var(--serifa);font-weight:500;font-style:italic;font-size:clamp(2.4rem, 5.6vw, 6.4rem);line-height:1.1;letter-spacing:-.015em}
.hero-palavras span{display:inline-block;opacity:0;will-change:transform,opacity}
.hero-palavras span + span::before{content:"·";display:inline-block;margin:0 .32em;font-style:normal;font-weight:600;color:var(--ouro)}
@media (max-width:374px){
  .hero-abertura .sobrelinha,.hero-final .sobrelinha{letter-spacing:.12em;gap:.6rem}
  .hero-abertura .sobrelinha::before,.hero-final .sobrelinha::before{width:22px}
}
.hero-final{bottom:clamp(2rem, 7vh, 5.5rem);max-width:44rem;display:grid;gap:clamp(.8rem, 2.4vh, 1.25rem)}
.hero-final h1{font-family:var(--serifa);font-weight:500;font-size:clamp(2.3rem, min(1.2rem + 4.3vw, 9.5vh), 5.1rem);line-height:1.02;letter-spacing:-.015em;text-wrap:balance}
.hero-lead{font-size:clamp(1.04rem, .98rem + .35vw, 1.22rem);line-height:1.55;color:var(--sobre-verde-mudo);max-width:46ch}
.hero-id{font-size:.84rem;letter-spacing:.04em;color:var(--sobre-verde-mudo);padding-top:1.1rem;border-top:1px solid var(--linha-escura);max-width:30rem}
/* frase dourada acima do título final: é uma frase longa, por isso sem caixa alta, para ler bem */
.hero-final .hero-frase{text-transform:none;letter-spacing:.01em;font-size:clamp(.95rem, .9rem + .25vw, 1.08rem);font-weight:500;line-height:1.45;align-items:flex-start;max-width:42rem;text-wrap:balance;text-shadow:0 1px 14px rgba(8,17,9,.85)}
.hero-final .hero-frase::before{margin-top:.72em}

.hero-rolar{position:absolute;right:var(--margem);bottom:clamp(2rem, 6vh, 4rem);z-index:3;display:flex;align-items:center;gap:1rem;font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--sobre-verde-mudo);writing-mode:vertical-rl}
.hero-rolar i{display:block;width:1px;height:64px;background:linear-gradient(180deg, var(--ouro), rgba(201,169,97,0));animation:rolar 2.4s var(--curva) infinite;transform-origin:top}
@keyframes rolar{0%{transform:scaleY(0)}45%{transform:scaleY(1)}100%{transform:scaleY(1);opacity:0}}
.hero-progresso{position:absolute;left:0;right:0;bottom:0;height:2px;background:rgba(248,246,240,.1);z-index:3}
.hero-progresso span{display:block;height:100%;background:var(--ouro);transform:scaleX(0);transform-origin:left}
/* versão estática: sem JavaScript, com movimento reduzido ou sem as bibliotecas de animação */
.sem-js .hero-abertura,.sem-js .hero-rolar,.sem-js .hero-progresso,.sem-js .hero-canvas,.sem-js .hero-poeira,
.estatico .hero-abertura,.estatico .hero-rolar,.estatico .hero-progresso,.estatico .hero-canvas,.estatico .hero-poeira{display:none}
.sem-js .hero-estatico--inicio{display:none}
.estatico .hero-estatico{visibility:visible}
.sem-js .topo,.estatico .topo:not(.topo--solido){background:var(--verde-profundo)}
.sem-js .topo::before,.estatico .topo::before{opacity:0}

@media (max-aspect-ratio:1/1){
  /* celular em pé: o filme ocupa uma faixa central e o texto fica na parte de baixo */
  .hero-veu{background:linear-gradient(180deg, rgba(8,17,9,.92) 0%, rgba(8,17,9,0) 15%)}
  .hero-veu--final{background:linear-gradient(0deg, rgba(8,17,9,1) 0%, rgba(8,17,9,.95) 36%, rgba(8,17,9,0) 66%)}
  .hero-abertura{top:auto;bottom:clamp(5.5rem, 16vh, 9rem);transform:none}
  .hero-palavras{font-size:min(8.6vw, 3.6rem);margin-top:.9rem}
  .hero-final{bottom:clamp(1.75rem, 5vh, 3rem);gap:1rem}
  .hero-final h1{font-size:clamp(2.1rem, 9.4vw, 3.2rem)}
  .hero-rolar{writing-mode:horizontal-tb;right:auto;left:var(--margem);bottom:1.6rem;gap:.8rem}
  .hero-rolar i{width:44px;height:1px;background:linear-gradient(90deg, var(--ouro), rgba(201,169,97,0));transform-origin:left;animation-name:rolar-h}
  @keyframes rolar-h{0%{transform:scaleX(0)}45%{transform:scaleX(1)}100%{transform:scaleX(1);opacity:0}}
  .hero-id{font-size:.78rem}
}
@media (max-aspect-ratio:1/1) and (max-width:560px){.hero-lead{display:none}}
@media (max-aspect-ratio:1/1) and (max-height:720px){
  /* celular pequeno: o texto final ocupa mais da tela, então o véu escuro sobe mais */
  .hero-veu--final{background:linear-gradient(0deg, rgba(8,17,9,1) 0%, rgba(8,17,9,.95) 50%, rgba(8,17,9,.62) 72%, rgba(8,17,9,0) 92%)}
}
@media (max-aspect-ratio:1/1){
  .hero-compacto .hero-abertura{bottom:clamp(4.4rem, 13.5vh, 9rem);text-shadow:0 2px 26px rgba(8,17,9,.8)}
}
@media (max-height:540px) and (min-aspect-ratio:1/1){
  /* celular deitado: a cena inteira cabe na altura da tela */
  .hero-palco{min-height:320px}
  .hero-lead,.hero-rolar{display:none}
  .hero-final{bottom:1rem;gap:.55rem;max-width:min(36rem, 64vw)}
  .hero-final h1{font-size:clamp(1.7rem, 8.6vh, 2.6rem)}
  .hero-final .botao{min-height:42px;padding:.5rem 1.1rem}
  .hero-id{padding-top:.55rem}
}

/* ==========================================================================
   Seções
   ========================================================================== */
.secao{position:relative;padding-block:clamp(5rem, 3rem + 8vw, 10.5rem)}
.secao--clara{background:var(--gelo)}
.secao--superficie{background:var(--superficie)}
.secao--verde{background:var(--verde-profundo);color:var(--sobre-verde)}
.secao-cabeca{display:grid;gap:1.4rem;max-width:60rem;margin-bottom:clamp(2.75rem, 5vw, 5rem)}

/* molduras de imagem, cortinas e parallax */
.quadro{position:relative;overflow:hidden;background:var(--verde-profundo)}
.quadro img{width:100%;height:100%;object-fit:cover;will-change:transform}
.quadro img[data-parallax]{position:absolute;left:0;top:-10%;height:120%}
.cortina{position:absolute;top:-1px;bottom:-1px;z-index:2;background:var(--verde);will-change:transform}
.cortina--a{left:-1px;width:calc(50% + 2px);transform-origin:left}
.cortina--b{right:-1px;width:calc(50% + 2px);transform-origin:right}
.cortina--total{left:-1px;right:-1px;transform-origin:right}
.secao--verde .cortina{background:var(--ouro)}

/* ---------- Apresentação ---------- */
.apres-grade{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(2.5rem, 6vw, 7rem);align-items:center}
.apres-texto{display:grid;gap:1.5rem;align-content:start}
.apres-texto .titulo-xl{margin-block:.3rem .3rem}
.apres-link{margin-top:.6rem}
.apres-imagens{position:relative;padding:0 0 12% 10%}
.quadro--documentos{aspect-ratio:1/1}
.quadro--cafe{position:absolute;left:0;bottom:0;width:42%;aspect-ratio:1/1;z-index:2;box-shadow:0 30px 60px -30px rgba(16,38,26,.55);outline:8px solid var(--gelo)}
.compromissos{margin-top:clamp(4rem, 8vw, 8rem)}
.compromissos-lista{margin-top:2rem;display:grid;grid-template-columns:repeat(5, minmax(0,1fr));gap:2rem 2.25rem}
.compromissos-lista li{border-top:1px solid var(--ouro);padding-top:1.2rem;display:grid;gap:.6rem;align-content:start}
.compromissos-lista h4{font-family:var(--serifa);font-weight:600;font-size:1.42rem;line-height:1.15;color:var(--verde)}
.compromissos-lista p{font-size:.95rem;color:var(--mudo)}
@media (max-width:1100px){.compromissos-lista{grid-template-columns:repeat(2, minmax(0,1fr))}}
@media (max-width:900px){.apres-grade{grid-template-columns:1fr}.apres-imagens{order:-1;max-width:34rem}}
@media (max-width:560px){.compromissos-lista{grid-template-columns:1fr}}

/* ---------- Áreas ---------- */
.areas-grade{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.5fr);gap:clamp(2.5rem, 6vw, 7rem);align-items:start}
.areas-visual{position:sticky;top:calc(var(--topo-altura) + 2.5rem)}
.areas-visual-quadro{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--verde-profundo)}
.areas-visual-quadro img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;clip-path:inset(0 0 100% 0);transform:scale(1.12);transition:clip-path 1.1s var(--curva), transform 1.6s var(--curva), opacity 0s 1.1s}
.areas-visual-quadro img.ativa{opacity:1;clip-path:inset(0);transform:scale(1);z-index:1;transition:clip-path 1.1s var(--curva), transform 1.6s var(--curva), opacity 0s}
.areas-visual-nota{margin-top:1rem;font-family:var(--serifa);font-size:1.25rem;color:var(--mudo);letter-spacing:.04em}
.areas-visual-nota span{color:var(--verde);font-weight:600}
.grupo-titulo{font-family:var(--sem-serifa);font-weight:600;font-size:.76rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ouro-tinta);padding-bottom:1rem}
.grupo-titulo:not(:first-child){margin-top:clamp(2.5rem, 5vw, 4.5rem)}
.area{border-top:1px solid var(--linha)}
.area:last-of-type{border-bottom:1px solid var(--linha)}
.area summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:3.2rem minmax(0,1fr) auto;gap:.2rem 1rem;align-items:center;padding:1.5rem 0;transition:padding .45s var(--curva)}
.area summary::-webkit-details-marker{display:none}
.area-num{grid-row:1 / span 2;align-self:start;font-family:var(--serifa);font-size:1.15rem;color:var(--ouro-tinta);padding-top:.5rem}
.area-nome{font-family:var(--serifa);font-weight:500;font-size:clamp(1.75rem, 1.3rem + 1.7vw, 2.75rem);line-height:1.08;color:var(--verde);transition:color .3s, transform .5s var(--curva)}
.area-resumo{grid-column:2;color:var(--mudo);font-size:.97rem}
.area-mais{grid-column:3;grid-row:1 / span 2;position:relative;width:44px;height:44px;border:1px solid var(--linha);border-radius:50%;transition:background-color .35s, border-color .35s, transform .5s var(--curva)}
.area-mais::before,.area-mais::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;background:var(--verde);transform:translate(-50%,-50%);transition:transform .5s var(--curva), background-color .35s}
.area-mais::after{transform:translate(-50%,-50%) rotate(90deg)}
.area summary:hover .area-nome{transform:translateX(8px)}
.area summary:hover .area-mais{background:var(--verde);border-color:var(--verde)}
.area summary:hover .area-mais::before,.area summary:hover .area-mais::after{background:var(--gelo)}
.area[open] .area-mais{background:var(--verde);border-color:var(--verde)}
.area[open] .area-mais::before{background:var(--gelo)}
.area[open] .area-mais::after{background:var(--gelo);transform:translate(-50%,-50%) rotate(0deg)}
.area-corpo{padding:0 0 2.25rem 4.2rem;display:grid;gap:1.5rem}
.area[open] .area-corpo{animation:abrir .7s var(--curva) both}
@keyframes abrir{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
.area-lead{font-size:1.12rem;line-height:1.55;max-width:60ch;color:var(--grafite)}
.area-colunas{display:grid;grid-template-columns:repeat(2, minmax(0,1fr));gap:1.75rem 2.5rem}
.area-corpo h4{font-family:var(--sem-serifa);font-weight:600;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ouro-tinta);margin-bottom:.85rem}
.lista-marcada{display:grid;gap:.6rem}
.lista-marcada li{position:relative;padding-left:1.35rem;font-size:.98rem;line-height:1.5}
.lista-marcada li::before{content:"";position:absolute;left:0;top:.72em;width:.6rem;height:1.5px;background:var(--ouro)}
.lista-marcada--claro li::before{background:var(--ouro)}
.area-faq{display:grid;gap:1.25rem;max-width:68ch}
.area-faq dt{font-weight:600;color:var(--verde);font-size:1.02rem}
.area-faq dd{margin-top:.35rem;font-size:.98rem}
.area-remissao{margin-top:1.5rem;font-size:.97rem;color:var(--mudo)}
.area-remissao a{color:var(--verde);font-weight:600}
@media (max-width:900px){
  .areas-grade{grid-template-columns:1fr}
  .areas-visual{position:relative;top:0;max-width:24rem}
  .areas-visual-quadro{aspect-ratio:16/10}
}
@media (max-width:640px){
  .area summary{grid-template-columns:2.2rem minmax(0,1fr) auto;padding:1.2rem 0}
  .area-corpo{padding-left:0}
  .area-colunas{grid-template-columns:1fr}
  .area-mais{width:38px;height:38px}
}

/* ---------- Sobre ---------- */
.sobre{overflow:hidden}
.sobre-grade{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1fr);gap:clamp(2.75rem, 7vw, 8rem);align-items:center}
.sobre-imagens{position:relative;padding:0 12% 9% 0}
.quadro--principal{aspect-ratio:3/4}
.quadro--principal img{object-position:50% 14%}
.sobre-imagens::before{content:"";position:absolute;left:-1.25rem;top:-1.25rem;width:44%;height:36%;border-left:1px solid var(--ouro);border-top:1px solid var(--ouro);opacity:.7;pointer-events:none}
.quadro--perfil{position:absolute;right:0;bottom:0;width:38%;aspect-ratio:1/1;z-index:2;outline:8px solid var(--verde-profundo);box-shadow:0 30px 60px -28px rgba(0,0,0,.7)}
.sobre-texto{display:grid;gap:1.35rem;align-content:start}
.sobre-oab{font-family:var(--serifa);font-style:italic;font-size:1.45rem;color:var(--ouro);margin-top:-.4rem}
.sobre-texto .lead{color:var(--sobre-verde)}
.sobre-texto > p:not(.lead):not(.sobrelinha):not(.sobre-oab){color:var(--sobre-verde-mudo)}
.sobre-formacao{margin-top:.6rem;display:grid;gap:.9rem}
.sobre-formacao h3{font-family:var(--sem-serifa);font-weight:600;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ouro)}
.fatos{margin-top:.8rem;display:grid;grid-template-columns:repeat(2, minmax(0,1fr));gap:0 2.5rem;border-top:1px solid var(--linha-escura)}
.fatos > div{padding:1rem 0;border-bottom:1px solid var(--linha-escura);display:grid;gap:.15rem}
.fatos dt{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--sobre-verde-mudo)}
.fatos dd{font-family:var(--serifa);font-size:1.3rem;line-height:1.25}
@media (max-width:900px){.sobre-grade{grid-template-columns:1fr}.sobre-imagens{max-width:30rem}}
@media (max-width:480px){.fatos{grid-template-columns:1fr}}

/* ---------- Atendimento (trilho horizontal) ---------- */
.atendimento{padding-block:0}
.etapas-palco{position:relative;display:grid;grid-template-columns:minmax(0,34vw) minmax(0,1fr);grid-template-rows:1fr auto;align-items:center;min-height:100vh;min-height:100svh;padding-top:var(--topo-altura);overflow:hidden}
.etapas-cabeca{width:auto;margin:0;padding-left:var(--margem);padding-right:clamp(1.5rem, 3vw, 3.5rem);display:grid;gap:1.3rem;align-content:center}
.etapas-cabeca .titulo-xl{font-size:clamp(2.1rem, 1.2rem + 2.7vw, 3.7rem)}
.etapas-janela{overflow:hidden;align-self:center}
.etapas-trilho{display:flex;gap:clamp(1.25rem, 2.2vw, 2.5rem);width:max-content;padding-right:var(--margem);will-change:transform}
.etapa{width:clamp(250px, 24vw, 360px);display:grid;gap:1.2rem;align-content:start}
.etapa-img{height:clamp(170px, calc(100vh - 400px), 30vw);overflow:hidden;background:var(--verde-profundo)}
.etapa-img img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;transition:transform 1.4s var(--curva)}
.etapa:hover .etapa-img img{transform:scale(1.05)}
.etapa-texto{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.2rem 1rem;align-items:baseline}
.etapa-num{grid-row:1 / span 2;font-family:var(--serifa);font-weight:500;font-size:2.6rem;line-height:1;color:var(--ouro-tinta)}
.etapa-texto h3{font-family:var(--serifa);font-weight:600;font-size:1.55rem;line-height:1.15;color:var(--verde)}
.etapa-texto p{grid-column:2;font-size:.95rem;color:var(--mudo)}
.etapas-rodape{grid-column:1 / -1;width:auto;margin:0;padding:1rem var(--margem) 1.5rem;display:flex;align-items:center;gap:1.5rem}
.etapas-barra{flex:1;height:1px;background:var(--linha);position:relative}
.etapas-barra span{position:absolute;left:0;top:-1px;height:3px;width:100%;background:var(--ouro);transform:scaleX(0);transform-origin:left}
.etapas-contador{font-family:var(--serifa);font-size:1.2rem;color:var(--mudo);white-space:nowrap}
.etapas-contador span{color:var(--verde);font-weight:600}
@media (max-width:900px), (prefers-reduced-motion:reduce){
  .atendimento{padding-block:clamp(5rem, 3rem + 8vw, 10.5rem)}
  .etapas-palco{display:block;min-height:0;padding-top:0;overflow:visible}
  .etapas-cabeca{width:min(100% - 2 * var(--margem), var(--largura));margin-inline:auto;padding:0;margin-bottom:2.75rem}
  .etapas-janela{overflow:visible}
  .etapas-trilho{flex-direction:column;width:min(100% - 2 * var(--margem), var(--largura));margin-inline:auto;padding:0;gap:2.75rem;transform:none !important}
  .etapa{width:100%;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:1.5rem;align-items:center}
  .etapa-img{height:auto;aspect-ratio:4/5}
  .etapa-texto{grid-template-columns:1fr}
  .etapa-num{grid-row:auto}
  .etapa-texto p{grid-column:auto}
  .etapas-rodape{display:none}
}
@media (max-width:560px){.etapa{grid-template-columns:1fr}.etapa-img{aspect-ratio:4/3}}
.sem-js .etapas-palco{display:block;min-height:0;padding-top:clamp(5rem, 8vw, 10rem);padding-bottom:clamp(5rem, 8vw, 10rem)}
.sem-js .etapas-janela{overflow-x:auto}

/* ---------- Dúvidas ---------- */
.duvidas-grade{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2.5rem, 6vw, 7rem);align-items:start}
.duvidas-cabeca{position:sticky;top:calc(var(--topo-altura) + 2.5rem);display:grid;gap:1.4rem}
.duvidas-cabeca a{color:var(--verde);font-weight:600}
.duvida{border-top:1px solid var(--linha)}
.duvida:last-child{border-bottom:1px solid var(--linha)}
.duvida summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;align-items:center;padding:1.5rem 0;font-family:var(--serifa);font-weight:500;font-size:clamp(1.35rem, 1.15rem + .8vw, 1.85rem);line-height:1.2;color:var(--verde)}
.duvida summary::-webkit-details-marker{display:none}
.duvida-mais{position:relative;width:18px;height:18px;flex:none}
.duvida-mais::before,.duvida-mais::after{content:"";position:absolute;left:0;top:50%;width:100%;height:1.5px;background:var(--ouro-tinta);transition:transform .5s var(--curva)}
.duvida-mais::after{transform:rotate(90deg)}
.duvida[open] .duvida-mais::after{transform:rotate(0)}
.duvida-corpo{padding:0 3rem 1.75rem 0;max-width:66ch}
.duvida[open] .duvida-corpo{animation:abrir .6s var(--curva) both}
.duvida-corpo a{color:var(--verde);font-weight:600}
@media (max-width:900px){.duvidas-grade{grid-template-columns:1fr}.duvidas-cabeca{position:static}.duvida-corpo{padding-right:0}}

/* ---------- Contato ---------- */
.contato{overflow:hidden;isolation:isolate}
.contato-fundo{position:absolute;inset:0;z-index:-1;overflow:hidden}
.contato-fundo img{position:absolute;left:0;top:-10%;width:100%;height:120%;object-fit:cover;opacity:.2;filter:saturate(.7)}
.contato-fundo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, var(--verde-profundo) 0%, rgba(16,38,26,.72) 28%, rgba(16,38,26,.86) 62%, var(--verde-profundo) 100%)}
.contato-grade{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.7fr);gap:clamp(2.5rem, 6vw, 7rem);align-items:center}
.contato-texto{display:grid;gap:1.5rem;align-content:start}
.contato-texto .lead{color:var(--sobre-verde-mudo)}
.canais-lista{margin-top:.5rem;border-top:1px solid var(--linha-escura)}
.canais-lista > div{display:grid;grid-template-columns:8.5rem minmax(0,1fr);gap:1rem;align-items:baseline;padding:1rem 0;border-bottom:1px solid var(--linha-escura)}
.canais-lista dt{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--sobre-verde-mudo)}
.canais-lista dd{font-family:var(--serifa);font-size:clamp(1.25rem, 1.1rem + .6vw, 1.6rem);line-height:1.25;overflow-wrap:anywhere}
.canais-lista a{text-decoration:none;background:linear-gradient(var(--ouro),var(--ouro)) 0 100% / 0 1px no-repeat;transition:background-size .5s var(--curva), color .3s}
.canais-lista a:hover{background-size:100% 1px;color:var(--ouro-claro)}
.canais-lista .preencher{font-family:var(--sem-serifa);font-size:.88rem}
.canais-detalhe{display:block;margin-top:.3rem;font-family:var(--sem-serifa);font-size:.92rem;line-height:1.5;color:var(--sobre-verde-mudo)}
.quadro--contato{aspect-ratio:3/4}
.quadro--contato img{object-position:50% 12%}
.contato-baixo{margin-top:clamp(3.5rem, 7vw, 7rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.75rem, 4vw, 4rem);align-items:start}
.alerta{border:1px solid var(--linha-escura);border-left:3px solid var(--ouro);background:rgba(8,17,9,.5);padding:clamp(1.5rem, 3vw, 2.5rem);display:grid;gap:1.1rem}
.alerta h3{font-family:var(--serifa);font-weight:500;font-size:clamp(1.6rem, 1.4rem + .8vw, 2.1rem);line-height:1.15}
.alerta p{color:var(--sobre-verde-mudo);font-size:.98rem}
.alerta p strong{color:var(--gelo)}
.alerta-canais{display:grid;gap:.5rem}
.alerta-canais li{display:grid;grid-template-columns:6.5rem minmax(0,1fr);gap:.75rem;align-items:baseline}
.alerta-canais span{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--sobre-verde-mudo)}
.alerta-canais a{font-weight:600;overflow-wrap:anywhere}
.formulario{background:var(--gelo);color:var(--grafite);padding:clamp(1.5rem, 3vw, 2.5rem);display:grid;gap:1.15rem}
.formulario h3{font-family:var(--serifa);font-weight:500;font-size:clamp(1.6rem, 1.4rem + .8vw, 2.1rem);line-height:1.15;color:var(--verde)}
.campo{display:grid;gap:.4rem}
.campo label{font-weight:600;font-size:.9rem;color:var(--verde)}
.opcional{font-weight:400;color:var(--mudo)}
.campo input,.campo select,.campo textarea{font:inherit;font-size:1rem;color:var(--grafite);background:#fff;border:1px solid var(--campo);border-radius:1px;padding:.7rem .85rem;min-height:48px;width:100%}
.campo textarea{min-height:112px;resize:vertical}
.campo input:focus-visible,.campo select:focus-visible,.campo textarea:focus-visible{outline:2px solid var(--verde);outline-offset:1px}
.campo [aria-invalid="true"]{border-color:var(--erro);box-shadow:0 0 0 1px var(--erro)}
.erro{color:var(--erro);font-size:.88rem;font-weight:500}
.formulario .botao--verde{justify-self:start}
.formulario a{color:var(--verde);font-weight:600}
.resultado{border:1px solid var(--linha);border-left:3px solid var(--ouro);background:var(--superficie);padding:1.2rem;display:grid;gap:.9rem}
.resultado h4{font-weight:600;color:var(--verde)}
.resultado h4:focus{outline:none}
.resultado pre{white-space:pre-wrap;font-family:inherit;font-size:.95rem;margin:0;background:#fff;border:1px solid var(--linha);padding:.9rem}
@media (max-width:900px){.contato-grade,.contato-baixo{grid-template-columns:1fr}.quadro--contato{max-width:26rem}}
@media (max-width:520px){.canais-lista > div{grid-template-columns:1fr;gap:.2rem}}

/* ==========================================================================
   Rodapé e aviso de cookies
   ========================================================================== */
.rodape{background:var(--verde-noite);color:var(--sobre-verde-mudo);padding-block:clamp(3.5rem, 6vw, 5.5rem) 2rem;font-size:.94rem}
.rodape-grade{display:grid;grid-template-columns:1.25fr 1.2fr .8fr 1.2fr;gap:2.5rem}
.rodape-grade > div{display:grid;gap:.8rem;align-content:start}
.marca-svg--rodape{color:var(--gelo);height:46px}
.rodape h2{font-family:var(--sem-serifa);font-weight:600;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ouro)}
.rodape ul{display:grid;gap:.5rem}
.rodape a{color:var(--gelo);overflow-wrap:anywhere}
.rodape a:hover{color:var(--ouro-claro)}
.rodape-base{margin-top:3rem;padding-top:1.4rem;border-top:1px solid var(--linha-escura);display:grid;gap:.45rem;font-size:.84rem}
.rodape-links{margin-top:.6rem}
@media (max-width:980px){.rodape-grade{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.rodape-grade{grid-template-columns:1fr}}

.cookies{position:fixed;left:clamp(.75rem, 2vw, 1.75rem);bottom:clamp(.75rem, 2vw, 1.75rem);z-index:80;width:min(27rem, calc(100% - 1.5rem));background:var(--verde-profundo);color:var(--sobre-verde-mudo);border:1px solid var(--linha-escura);border-top:2px solid var(--ouro);padding:1.2rem 1.3rem;display:grid;gap:.9rem;font-size:.9rem;line-height:1.5;box-shadow:0 24px 60px -20px rgba(0,0,0,.55)}
.cookies strong{color:var(--gelo)}
.cookies-acoes{display:flex;flex-wrap:wrap;align-items:center;gap:.9rem 1.2rem}
.js .cookies{animation:subir .7s var(--curva) both}
@keyframes subir{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* ==========================================================================
   Página de texto (política de privacidade)
   ========================================================================== */
html:has(.pagina-texto){scroll-behavior:smooth}
.pagina-texto .topo{position:sticky}
.pagina-cabeca{background:var(--verde-profundo);color:var(--gelo);padding-block:clamp(3rem, 6vw, 6rem) clamp(2.5rem, 5vw, 4.5rem)}
.pagina-cabeca .conteiner{display:grid;gap:1.3rem}
.pagina-cabeca .titulo-xl{color:var(--gelo)}
.pagina-cabeca .lead{color:var(--sobre-verde-mudo)}
.migalhas{font-size:.86rem;color:var(--sobre-verde-mudo)}
.migalhas a{color:var(--gelo)}
.prosa{max-width:68ch;display:grid;gap:1.05rem;padding-block:clamp(3rem, 6vw, 6rem)}
.prosa h2{font-family:var(--serifa);font-weight:600;font-size:clamp(1.6rem, 1.4rem + .9vw, 2.1rem);line-height:1.15;color:var(--verde);margin-top:1.3rem}
.prosa a{color:var(--verde);font-weight:600}

/* ==========================================================================
   Artigos: seção da página inicial, índice, artigo e página do advogado
   ========================================================================== */
.so-leitor{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.titulo-l{font-family:var(--serifa);font-weight:500;font-size:clamp(1.9rem, 1.4rem + 1.8vw, 3rem);line-height:1.08;letter-spacing:-.01em;color:var(--verde)}
.link-seta--claro{color:var(--gelo)}
.dica--claro{color:var(--sobre-verde-mudo);max-width:54ch}

/* ---------- cartões ---------- */
.cartoes{display:grid;grid-template-columns:repeat(4, minmax(0,1fr));gap:clamp(2.25rem, 3vw, 3rem) clamp(1.25rem, 2.2vw, 2.25rem)}
.cartoes--3{grid-template-columns:repeat(3, minmax(0,1fr))}
.cartao{position:relative;display:grid;gap:.65rem;align-content:start}
.cartao-img{aspect-ratio:16/10;overflow:hidden;background:var(--verde-profundo);margin-bottom:.45rem}
.cartao-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--curva)}
.cartao:hover .cartao-img img{transform:scale(1.05)}
.cartao-tema{font-weight:600;font-size:.72rem;line-height:1.3;letter-spacing:.18em;text-transform:uppercase;color:var(--ouro-tinta)}
.cartao h2,.cartao h3{font-family:var(--serifa);font-weight:500;font-size:clamp(1.4rem, 1.2rem + .55vw, 1.7rem);line-height:1.14;color:var(--verde)}
.cartao h2 a,.cartao h3 a{text-decoration:none;background:linear-gradient(var(--ouro),var(--ouro)) 0 100% / 0 1px no-repeat;transition:background-size .5s var(--curva)}
.cartao h2 a::after,.cartao h3 a::after{content:"";position:absolute;inset:0}
.cartao:hover h2 a,.cartao:hover h3 a{background-size:100% 1px}
.cartao-resumo{font-size:.95rem;line-height:1.55;color:var(--mudo)}
.cartao-meta{font-size:.82rem;color:var(--mudo)}
.secao--verde .cartao-img{background:var(--verde-noite)}
.secao--verde .cartao-tema{color:var(--ouro)}
.secao--verde .cartao h3{color:var(--gelo)}
.secao--verde .cartao-resumo,.secao--verde .cartao-meta{color:var(--sobre-verde-mudo)}
@media (max-width:1100px){.cartoes{grid-template-columns:repeat(2, minmax(0,1fr))}}
@media (max-width:900px){.cartoes--3{grid-template-columns:repeat(2, minmax(0,1fr))}}
@media (max-width:640px){.cartoes,.cartoes--3{grid-template-columns:1fr}}

/* ---------- página inicial: seção Artigos ---------- */
.artigos .secao-cabeca .lead{color:var(--sobre-verde-mudo)}
.artigos-lista{margin-top:clamp(2.75rem, 5vw, 4.5rem);border-top:1px solid var(--linha-escura)}
.artigos-lista li{border-bottom:1px solid var(--linha-escura)}
.artigos-lista a{display:grid;grid-template-columns:minmax(0,11rem) minmax(0,1fr) auto;gap:.3rem 2rem;align-items:baseline;padding:1.2rem 0;text-decoration:none;transition:padding .45s var(--curva)}
.artigos-lista a:hover{padding-left:.6rem}
.l-tema{font-weight:600;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ouro)}
.l-titulo{font-family:var(--serifa);font-weight:500;font-size:clamp(1.3rem, 1.15rem + .6vw, 1.7rem);line-height:1.18}
.l-meta{font-size:.82rem;color:var(--sobre-verde-mudo);white-space:nowrap}
.artigos-todos{margin-top:clamp(2rem, 4vw, 3rem)}
@media (max-width:720px){.artigos-lista a{grid-template-columns:1fr}}
.area-guias{border-top:1px solid var(--linha);padding-top:1.3rem}
.area-guias a{color:var(--verde);font-weight:600}

/* ---------- índice e páginas por tema ---------- */
.indice{padding-block:clamp(3rem, 6vw, 6rem)}
.indice-grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.5rem, 6vw, 6rem);align-items:start}
.indice-grade > div{display:grid;gap:1.1rem;align-content:start}
.temas-lista,.preparacao{border-top:1px solid var(--linha)}
.temas-lista li,.preparacao li{border-bottom:1px solid var(--linha)}
.temas-lista a,.preparacao li{display:flex;justify-content:space-between;align-items:baseline;gap:1.5rem;padding:1rem 0;text-decoration:none}
.temas-lista .l-titulo{color:var(--verde)}
.temas-lista a:hover .l-titulo{text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:var(--ouro)}
.preparacao .l-titulo{font-size:clamp(1.15rem, 1.05rem + .4vw, 1.4rem);color:var(--grafite)}
.temas-lista .l-meta,.preparacao .l-meta{color:var(--mudo)}
.tema-links{margin-top:clamp(2.5rem, 5vw, 4rem);display:flex;flex-wrap:wrap;gap:1rem 2.5rem}
.relacionados .titulo-l{margin-bottom:clamp(2rem, 4vw, 3rem)}
@media (max-width:900px){.indice-grade{grid-template-columns:1fr}}
@media (max-width:480px){.preparacao li{flex-direction:column;gap:.2rem}.preparacao .l-meta{white-space:normal}}

/* ---------- artigo ---------- */
.titulo-artigo{font-size:clamp(2.1rem, 1.35rem + 2.9vw, 3.8rem);max-width:25ch}
.artigo-meta{font-size:.92rem;line-height:1.6;color:var(--sobre-verde-mudo)}
.artigo-meta a{color:var(--gelo);font-weight:600}
.artigo-grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,18.5rem);column-gap:clamp(2.5rem, 6vw, 6.5rem);align-items:start;padding-block:clamp(2.25rem, 5vw, 4.5rem) clamp(3.5rem, 7vw, 7rem)}
.artigo-capa{grid-column:1;aspect-ratio:16/9;overflow:hidden;background:var(--verde-profundo);margin-bottom:clamp(2rem, 4vw, 3.25rem)}
.artigo-capa img{width:100%;height:100%;object-fit:cover}
.artigo-lateral{grid-column:2;grid-row:1 / span 2;position:sticky;top:calc(var(--topo-altura) + 2rem);display:grid;gap:1.75rem}
.artigo-principal{grid-column:1;min-width:0}
.sumario{border-top:2px solid var(--ouro);padding-top:1.1rem}
.sumario h2{font-family:var(--sem-serifa);font-weight:600;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ouro-tinta);margin-bottom:.9rem}
.sumario ol{display:grid;gap:.1rem}
.sumario a{display:block;padding:.4rem 0 .4rem .95rem;border-left:1px solid var(--linha);font-size:.93rem;line-height:1.4;color:var(--mudo);text-decoration:none;transition:color .3s, border-color .3s}
.sumario a:hover,.sumario a[aria-current]{color:var(--verde);border-left-color:var(--ouro)}
.sumario a[aria-current]{font-weight:600}
.lateral-contato{background:var(--superficie);border:1px solid var(--linha);padding:1.25rem;display:grid;gap:.9rem;font-size:.93rem;line-height:1.5;color:var(--mudo)}
.lateral-contato .botao{justify-self:start}

.prosa--artigo{padding-block:0;max-width:70ch;font-size:1.08rem;line-height:1.72;gap:1.1rem}
.prosa h3{font-family:var(--sem-serifa);font-weight:600;font-size:1.13rem;line-height:1.35;color:var(--verde);margin-top:.8rem}
.prosa ul,.prosa ol{display:grid;gap:.6rem}
.prosa ul > li{position:relative;padding-left:1.4rem}
.prosa ul > li::before{content:"";position:absolute;left:0;top:.82em;width:.65rem;height:1.5px;background:var(--ouro)}
.prosa ol{counter-reset:passo}
.prosa ol > li{position:relative;padding-left:2.5rem;counter-increment:passo}
.prosa ol > li::before{content:counter(passo);position:absolute;left:0;top:.08em;width:1.75rem;height:1.75rem;display:grid;place-items:center;border:1px solid var(--ouro);border-radius:50%;font-family:var(--serifa);font-weight:600;font-size:1rem;line-height:1;color:var(--verde)}
.prosa li > ul,.prosa li > ol{margin-top:.6rem}
.prosa .lead{max-width:none;color:var(--grafite)}
.resposta{border:1px solid var(--linha);border-left:3px solid var(--ouro);background:var(--superficie);padding:1.3rem 1.5rem;font-size:1.13rem;line-height:1.6}
.aviso{border:1px solid var(--linha);border-left:3px solid var(--verde);background:#fff;padding:1.05rem 1.35rem}
.tabela{overflow-x:auto;border:1px solid var(--linha);background:#fff;margin-block:.4rem}
.tabela table{width:100%;border-collapse:collapse;font-size:.96rem;line-height:1.5}
.tabela th,.tabela td{padding:.85rem 1rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--linha)}
.tabela thead th{background:var(--verde-profundo);color:var(--gelo);font-weight:600;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;border-bottom:0}
.tabela tbody th{font-weight:600;color:var(--verde);min-width:8.5rem}
.tabela tbody tr:last-child > *{border-bottom:0}
@media (max-width:640px){
  /* no celular, cada linha da tabela vira um cartão */
  .tabela{border:0;background:none;overflow:visible}
  .tabela table,.tabela tbody,.tabela tr,.tabela th,.tabela td{display:block}
  .tabela thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .tabela tr{border:1px solid var(--linha);background:#fff;margin-bottom:.8rem}
  .tabela tr:last-child{margin-bottom:0}
  .tabela tbody th{background:var(--verde-profundo);color:var(--gelo);border-bottom:0;min-width:0}
  .tabela td{display:grid;grid-template-columns:7.5rem minmax(0,1fr);gap:.75rem}
  .tabela td::before{content:attr(data-rotulo);font-size:.74rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--mudo);padding-top:.2rem}
  .tabela tbody tr > td{border-bottom:1px solid var(--linha)}
  .tabela tbody tr > td:last-child{border-bottom:0}
}
.perguntas{display:grid;gap:1.05rem}
.prosa .perguntas h3{padding-top:1.1rem;border-top:1px solid var(--linha);font-family:var(--serifa);font-weight:600;font-size:1.42rem;line-height:1.2;margin-top:.15rem}
.artigo-nota{border-top:1px solid var(--linha);padding-top:1.2rem;margin-top:.8rem}
.fontes{display:grid;gap:.8rem;font-size:.93rem;line-height:1.55;margin-top:.4rem}
.prosa .fontes h2{font-family:var(--sem-serifa);font-weight:600;font-size:.74rem;line-height:1.3;letter-spacing:.18em;text-transform:uppercase;color:var(--ouro-tinta);margin-top:0}
.fontes a{font-weight:500;overflow-wrap:anywhere}
.fontes ul > li::before{top:.75em}

.artigo-fim{margin-top:clamp(2.5rem, 5vw, 4rem);display:grid;gap:1.75rem;max-width:70ch}
.autor{display:flex;align-items:center;gap:1.1rem;padding-block:1.25rem;border-block:1px solid var(--linha)}
.autor-mono{width:54px;height:54px;flex:none}
.autor-mono rect{fill:var(--verde);stroke:var(--ouro);stroke-width:1.4}
.autor-mono text{font-family:var(--serifa);font-weight:600;font-size:23px;letter-spacing:-.5px;fill:var(--ouro)}
.autor p{display:grid;gap:.1rem}
.autor-rotulo{font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--mudo)}
.autor-nome{font-family:var(--serifa);font-weight:600;font-size:1.35rem;line-height:1.2;color:var(--verde);text-decoration:none}
.autor-nome:hover{text-decoration:underline;text-decoration-thickness:1px}
.autor-oab{font-size:.9rem;color:var(--mudo)}
.artigo-contato{background:var(--verde-profundo);color:var(--sobre-verde-mudo);border-top:2px solid var(--ouro);padding:clamp(1.5rem, 3vw, 2.25rem);display:grid;gap:1rem}
.artigo-contato h2{font-family:var(--serifa);font-weight:500;font-size:clamp(1.6rem, 1.4rem + .8vw, 2.1rem);line-height:1.15;color:var(--gelo)}
@media (max-width:900px){
  .artigo-grade{grid-template-columns:1fr}
  .artigo-capa,.artigo-lateral,.artigo-principal{grid-column:1;grid-row:auto}
  .artigo-lateral{position:static;margin-bottom:2.25rem}
  .lateral-contato{display:none}
  .sumario{background:var(--superficie);border:1px solid var(--linha);border-top:2px solid var(--ouro);padding:1.1rem 1.2rem}
}

/* ---------- página do advogado ---------- */
.advogado-grade{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,21rem);gap:clamp(2.5rem, 6vw, 6.5rem);align-items:start;padding-block:clamp(3rem, 6vw, 6rem)}
.advogado-lado{position:sticky;top:calc(var(--topo-altura) + 2rem);display:grid;gap:1.5rem}
.autor--grande{border-top:2px solid var(--ouro)}
.fatos--claro{margin-top:0;grid-template-columns:1fr;border-top-color:var(--linha)}
.fatos--claro > div{border-bottom-color:var(--linha)}
.fatos--claro dt{color:var(--mudo)}
.fatos--claro dd{color:var(--verde)}
@media (max-width:900px){.advogado-grade{grid-template-columns:1fr}.advogado-lado{position:static}}

/* ==========================================================================
   Movimento reduzido
   ========================================================================== */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
}
