/* =====================================================================
   McNaughton Advogados — VERSÃO DO DESIGNER (designer.mcnaughton.adv.br)
   Camada visual carregada depois de site.css: veste as mesmas páginas, textos e funções do site
   oficial com o layout de macnaughtonv2.netlify.app (papel marfim, títulos serifados, seções em
   "folhas" arredondadas empilhadas, botões em pílula, cabeçalho que fica branco ao rolar, faixa
   com imagem em movimento). Os ajustes de 13.10.2026 do oficial continuam valendo por baixo
   (site.css): aqui só muda a aparência.
   ===================================================================== */

/* ---------- fontes: Instrument Serif (licença OFL), servida pelo próprio site ---------- */
@font-face{font-family:"Instrument Serif";font-style:normal;font-weight:400;font-display:swap;src:url("../fontes/instrument-serif-400-normal.woff2") format("woff2")}
@font-face{font-family:"Instrument Serif";font-style:italic;font-weight:400;font-display:swap;src:url("../fontes/instrument-serif-400-italic.woff2") format("woff2")}

/* ---------- tokens: a paleta do designer por cima das variáveis do site ---------- */
:root{
  --navy-900:#0e1424; --navy-800:#1a2032; --navy-700:#1a2032; --navy-600:#3d4252; --navy-500:#4e5361;
  --grafite:#262c3e;
  --bg-nevoa:#ece7de; --bg-papel:#f7f4ef; --bg-pedra:#ece7de; --bg-nevoa-clara:#f7f4ef;
  --bg-elevado:#fffdf9; --bg-leitor:#f7f4ef; --bg-perfil:#fffdf9;
  --tx-forte:#171c2c; --tx-sec:#5a5c66;
  --tx-claro-forte:#eceef2; --tx-claro:#d4d7de; --tx-claro-sec:#aeb2bd;
  --fio-claro:#e4ded3; --fio-claro-forte:#d6cfc2; --fio-escuro:rgba(236,238,242,.13);
  --ac:#b8955c; --ac-2:#d2b47f; --ac-txt:#7a5f30;
  --m1:#5a7090; --m1-bg:rgba(90,112,144,.10); --m2:var(--ac); --m2-bg:rgba(184,149,92,.13); --m3:var(--navy-700); --m3-bg:rgba(23,28,44,.06);
  --font:"Jost","Futura MD BT","Futura","Century Gothic",system-ui,sans-serif;
  --serifa:"Instrument Serif","Cormorant Garamond",Georgia,serif;
  --r-p:12px; --r-m:20px; --r-g:30px;
  --folha:clamp(28px,4vw,56px);
  --ease:cubic-bezier(.22,1,.36,1); --ease-out:cubic-bezier(.16,1,.3,1);
  --container:1344px; --gutter:clamp(20px,5vw,72px);
  --sec-y:clamp(84px,10vw,140px);
  --hdr:104px; --hdr-min:66px;
}
@media (max-width:1024px){:root{--hdr:80px;--hdr-min:62px}}
@media (max-width:900px){:root{--folha:28px;--sec-y:clamp(72px,14vw,100px)}}

html{scroll-padding-top:calc(var(--hdr-min) + 12px)}
body{background:var(--navy-900);font-size:17px;line-height:1.7}
::selection{background:var(--ac-2);color:var(--navy-900)}
main{background:var(--navy-900)}
body:not(.pg-home){padding-top:var(--hdr-min)}
.wrap{max-width:var(--container)}
.rule{display:none}
.lbl{letter-spacing:.2em}
h1,h2,h3,h4,.h2,.esc-quote,.faixa-frase{text-wrap:balance}
p,li,dd{text-wrap:pretty}

/* títulos serifados */
.h2,.esc-quote,.mvv-top p,.mvv-words span,.node .nm,.fnode .nm,.sol-h .h4,.ref h3,.oc-h h3,.pn,.prof h3,
.art h4,.art .h4,.bk h4,.news h3,.r-title,.ap-title,.lv-titulo,.rf-titulo,.rf-ano .y,.cal .y,.ct-big,
.pp-at,.pp-lt,.faq-q,.ah .nm,.gl-n,.mcol .t{font-family:var(--serifa);font-weight:400;letter-spacing:-.005em}
.h2{font-size:clamp(2.8rem,1.7rem + 3.4vw,4.6rem);line-height:1;margin:0;color:var(--tx-forte)}
.lead{font-size:1.12rem;line-height:1.7;margin-top:1.4rem;max-width:44ch;color:var(--tx-sec);font-weight:400}
em{font-style:italic}

/* ---------- movimento: entrada suave ao rolar (o script marca a página com .js) ---------- */
.js [data-rev]{opacity:0;transform:translate3d(0,40px,0) scale(.985);filter:blur(6px);
  transition:opacity 1.3s var(--ease-out),transform 1.6s var(--ease-out),filter 1.2s var(--ease-out)}
.js [data-rev].is-vis{opacity:1;transform:none;filter:none}
@media (prefers-reduced-motion:reduce){.js [data-rev]{opacity:1;transform:none;filter:none;transition:none}}

/* ---------- botões em pílula ---------- */
.cta{gap:.85rem;min-height:0;padding:1rem 1.25rem 1rem 1.6rem;border:1px solid rgba(184,149,92,.6);border-radius:999px;
  font-size:.72rem;font-weight:500;letter-spacing:.16em;color:inherit;
  transition:background-color .7s var(--ease),color .6s var(--ease),border-color .6s var(--ease),gap .7s var(--ease)}
.cta:hover{gap:1.25rem;background:var(--ac);border-color:var(--ac);color:var(--navy-900)}
.cta .arr{transition:transform .7s var(--ease)}
.cta:hover .arr{transform:translateX(3px)}

.lk{min-height:0;padding:.62rem 1.05rem;border:1px solid var(--fio-claro-forte);border-radius:999px;font-size:.66rem;letter-spacing:.16em;
  text-decoration:none !important;transition:background-color .6s var(--ease),color .5s var(--ease),border-color .5s var(--ease)}
.lk:hover{background:var(--tx-forte);border-color:var(--tx-forte);color:var(--bg-papel)}
.lk.u{background:var(--tx-forte);border-color:var(--tx-forte);color:var(--bg-papel)}
.lk.u:hover{background:var(--ac);border-color:var(--ac);color:var(--navy-900)}
.btn-cheio{min-height:0;padding:1rem 1.6rem;border-radius:999px;background:var(--tx-forte);font-size:.68rem;letter-spacing:.2em;
  transition:background-color .6s var(--ease),color .6s var(--ease),transform .6s var(--ease)}
.btn-cheio:hover{background:var(--ac);color:var(--navy-900);transform:translateY(-2px)}
.allp{gap:.85rem;padding:1rem 1.25rem 1rem 1.6rem;border:1px solid rgba(184,149,92,.6);border-radius:999px;letter-spacing:.16em;font-size:.72rem;
  transition:background-color .7s var(--ease),color .6s var(--ease),gap .7s var(--ease)}
.allp:hover{gap:1.25rem;background:var(--ac);border-color:var(--ac);color:var(--navy-900)}
.chip,.chip-f,.vb-irmaos a{border-radius:999px}
.chip-f.on{background:var(--tx-forte);border-color:var(--tx-forte)}
.close{padding:.62rem 1.05rem;border:1px solid var(--fio-claro-forte);border-radius:999px;min-height:0;font-size:.66rem;letter-spacing:.16em}
.close:hover{background:var(--tx-forte);border-color:var(--tx-forte);color:var(--bg-papel)}

/* faixas de contato (ajuste de 13.10: texto + botões, o primeiro cheio em dourado) */
.fale-btn{min-height:46px;padding:0 1.4rem;border-radius:999px;font-size:.68rem;letter-spacing:.16em;
  transition:background-color .6s var(--ease),border-color .6s var(--ease),color .6s var(--ease)}
.fale-btn.cheio:hover{background:var(--ac-2);border-color:var(--ac-2)}
.fale-t{font-family:var(--serifa);font-weight:400;font-size:1.45rem;line-height:1.25}
.sol-ct{border-top:0;background:var(--navy-900)}
.ref-ct{border-radius:var(--r-m);border-top:0}
.rf-ct{border-radius:var(--r-g);border-top:0;background:radial-gradient(110% 120% at 0% 0%,#2a3350 0%,var(--navy-800) 60%)}
.rf-ct .fale-t{font-size:clamp(1.7rem,1.3rem + 1.2vw,2.4rem);font-weight:400}
.vb-ct,.gl-ct{border-radius:var(--r-g);border-top:0;background:radial-gradient(110% 120% at 0% 0%,#2a3350 0%,var(--navy-900) 60%)}
.gl-ct .fale-t{font-size:1.8rem;font-weight:400}

/* =====================================================================
   Cabeçalho: no topo, grande e transparente sobre o banner (texto claro);
   ao rolar, mais fino, fundo branco, sombra sutil e texto azul-marinho.
   ===================================================================== */
.hdr{position:fixed;top:0;left:0;right:0;z-index:60;height:var(--hdr);background:rgba(255,255,255,0);
  border-bottom:1px solid rgba(236,238,242,.12);box-shadow:0 0 0 0 rgba(14,20,36,0);color:var(--tx-claro-forte);
  transition:height .6s var(--ease),background-color .5s var(--ease),box-shadow .6s var(--ease),border-color .5s var(--ease),color .5s var(--ease)}
.hdr.cmp,.hdr:has(.burger[aria-expanded="true"]){height:var(--hdr-min);background:#fff;border-bottom-color:rgba(14,20,36,.06);
  box-shadow:0 1px 0 rgba(14,20,36,.04),0 12px 32px -16px rgba(14,20,36,.24);color:var(--navy-900)}
.hdr .nav,.hdr.cmp .nav{height:100%;gap:0}
.logo,.logo .mark{width:auto;height:auto}
.logo{position:relative;display:flex;align-items:center;height:100%;color:inherit;flex:none}
.logo .logo-completo{display:block;height:40px;width:auto;transition:opacity .35s,transform .45s var(--ease)}
.logo .logo-simbolo{position:absolute;left:0;top:50%;height:30px;width:auto;opacity:0;transform:translateY(-50%) scale(.9);transition:opacity .35s,transform .45s var(--ease)}
.hdr.cmp .logo .logo-completo{opacity:0;transform:scale(.92);pointer-events:none}
.hdr.cmp .logo .logo-simbolo{opacity:1;transform:translateY(-50%) scale(1)}

.nav-desk,.nav-list,.ni{height:100%}
.nav-list{gap:.2rem;align-items:stretch}
.ni{display:flex;align-items:center}
.ni::before{content:"";position:absolute;left:-10px;right:-10px;top:100%;height:30px}
.nl,.hdr.cmp .nl{height:auto;padding:.62rem 1rem;border-radius:999px;font-size:.7rem;letter-spacing:.18em;color:inherit;
  transition:background-color .5s var(--ease),color .5s var(--ease)}
.nl::after{display:none}
.nl:hover,.ni:hover>.nl,.ni:focus-within>.nl{color:inherit;background:rgba(236,238,242,.08)}
.hdr.cmp .nl:hover,.hdr.cmp .ni:hover>.nl,.hdr.cmp .ni:focus-within>.nl{background:rgba(14,20,36,.06)}
.nl.on{background:rgba(184,149,92,.16);color:var(--ac-2)}
.hdr.cmp .nl.on{background:rgba(184,149,92,.14);color:var(--ac-txt)}
.prog{opacity:0;transition:opacity .5s var(--ease)}
.hdr.cmp .prog{opacity:1}

.lang{gap:2px;height:auto;margin-left:clamp(.8rem,1.6vw,1.4rem);padding:3px;border:1px solid rgba(236,238,242,.14);border-radius:999px;
  font-size:.72rem;letter-spacing:.14em;color:inherit;transition:border-color .5s var(--ease)}
.lang a{padding:.38rem .72rem;border-radius:999px;color:inherit;opacity:.72;transition:background-color .6s var(--ease),color .5s var(--ease),opacity .5s}
.lang a:hover{opacity:1;color:inherit}
.lang .on{background:var(--ac);color:var(--navy-900);border-bottom:0;opacity:1}
.hdr.cmp .lang{border-color:rgba(14,20,36,.12)}
.hdr.cmp .lang .on{color:var(--navy-900)}

/* painéis do menu (prévia de Atuação e Publicações) */
.mega{top:calc(100% + 10px);border-radius:var(--r-g);border:1px solid rgba(236,238,242,.1);overflow:hidden;background:#161c2e;color:var(--tx-claro-forte);
  box-shadow:0 30px 60px rgba(5,9,18,.35)}
.mcol .t{font-size:1.7rem;line-height:1.15}
.mcol:hover{background:rgba(236,238,242,.04)}
.mcol:hover .t{color:var(--ac-2)}
.minicov span{border-radius:6px;border-top:0}
.mart .p{color:var(--ac)}
.mart:hover .t{text-decoration:none;color:var(--ac-2)}
.pcol .go{padding:.62rem 1.05rem;border:1px solid var(--ac);border-radius:999px;background:var(--ac);color:var(--navy-900);letter-spacing:.16em}
.pcol .go:hover{background:var(--ac-2)}
.mfoot{border-top-color:rgba(236,238,242,.08)}

/* menu do celular: folha arredondada flutuante */
.burger{width:46px;height:46px;align-items:center;justify-content:center;gap:5px;border-radius:50%;border:1px solid rgba(236,238,242,.16);color:inherit;
  transition:border-color .5s var(--ease)}
.burger span{width:20px !important}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.hdr.cmp .burger,.hdr:has(.burger[aria-expanded="true"]) .burger{border-color:rgba(14,20,36,.14)}
.menu-cel{top:calc(var(--hdr-min) + 10px);left:10px;right:10px;bottom:10px;border-radius:26px;border:1px solid rgba(236,238,242,.1);
  padding:1rem var(--gutter) 1.6rem;animation:folhaEntra .6s var(--ease)}
@keyframes folhaEntra{from{opacity:0;transform:translateY(-14px) scale(.98)}to{opacity:1;transform:none}}
.mi{font-size:.78rem;letter-spacing:.26em;border-bottom-color:var(--fio-escuro)}
.sub{border-bottom-color:var(--fio-escuro)}
.mbot .c{font-family:var(--serifa);font-size:1.5rem;color:var(--ac)}
.lang-cel{margin-left:0;border:1px solid rgba(236,238,242,.14);display:inline-flex;gap:2px}
.lang-cel a{min-height:0}

/* =====================================================================
   Banner: imagem em toda a área, véu azul-marinho, título serifado
   ===================================================================== */
.hero{min-height:100vh;min-height:100svh;padding:0;align-items:center}
.hero-img{position:absolute;inset:0;width:auto;z-index:0;overflow:hidden;transform-origin:50% 35%;will-change:transform}
.hero-zoom{position:absolute;inset:0;animation:heroEntra 2.6s var(--ease-out) both}
.hero-img picture{display:block;position:absolute;inset:0}
.hero-img img{position:absolute;left:0;top:-6%;width:100%;height:118%;object-fit:cover;object-position:62% 45%;will-change:transform}
@keyframes heroEntra{from{scale:1.16;opacity:0}to{scale:1;opacity:1}}
.hero-img::after{content:"";position:absolute;inset:0;z-index:1;background:
  linear-gradient(90deg,rgba(14,20,36,.94) 0%,rgba(14,20,36,.8) 30%,rgba(14,20,36,.38) 62%,rgba(14,20,36,.3) 100%),
  linear-gradient(180deg,rgba(14,20,36,.6) 0%,rgba(14,20,36,0) 24%,rgba(14,20,36,0) 68%,rgba(14,20,36,.75) 100%)}
.hero-in{position:relative;z-index:2;padding-top:var(--hdr);padding-bottom:calc(var(--folha) + 3rem)}
.hero-txt{max-width:min(640px,52%)}
.hero .lbl-hero{display:inline-flex;padding:.55rem 1rem;border:1px solid rgba(236,238,242,.16);border-radius:999px;font-size:.7rem;color:var(--tx-claro-forte)}
.hero h1{font-family:var(--serifa);font-weight:400;font-size:clamp(3.1rem,1.6rem + 4.6vw,6rem);line-height:1;letter-spacing:-.005em;margin:2rem 0 0;max-width:none;color:var(--tx-claro-forte)}
.hero h1 em{color:var(--ac-2)}
.hero p{margin:1.9rem 0 0;max-width:34ch;font-size:clamp(1.05rem,.98rem + .3vw,1.2rem);line-height:1.7;color:var(--tx-claro-sec)}
.hero .cta{margin-top:2.8rem;background:var(--ac);border-color:var(--ac);color:var(--navy-900)}
.hero .cta:hover{background:var(--ac-2);border-color:var(--ac-2)}
.hero-note{display:inline-flex;gap:1.2rem;width:auto;max-width:none;margin-top:clamp(3rem,6vw,4.6rem);padding:.6rem .7rem .6rem 1.15rem;
  border:1px solid rgba(236,238,242,.14);border-radius:999px;background:rgba(236,238,242,.04);color:var(--tx-claro-forte);
  transition:background-color .7s var(--ease),border-color .7s var(--ease)}
.hero-note:hover{background:rgba(184,149,92,.12);border-color:rgba(184,149,92,.45)}
.hero-note .hn-t{flex:0 1 auto;font-size:1.02rem}
.hero-note .arr{width:34px;height:34px;padding:12px 9px;border-radius:50%;background:var(--ac);color:var(--navy-900);stroke:var(--navy-900)}
.hero-note:hover .arr{transform:translateX(3px)}

/* =====================================================================
   Folhas arredondadas empilhadas: cada seção sobe sobre a anterior
   ===================================================================== */
.esc,.mvv-sec,.atu,.socios,.pubs,.ft{position:relative;z-index:1;border-radius:var(--folha) var(--folha) 0 0;margin-top:calc(-1 * var(--folha))}

/* ---------- O Escritório ---------- */
.esc{background:var(--bg-nevoa);padding:var(--sec-y) 0;overflow:visible}
.esc-top{margin-top:clamp(2.6rem,5vw,4.4rem);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.5rem,7vw,6.5rem)}
.esc-quote{font-size:clamp(1.9rem,1.25rem + 1.9vw,2.85rem);line-height:1.22;max-width:17ch;margin:0;color:var(--tx-forte)}
.esc-quote em{font-style:normal;border-bottom:0;padding-bottom:.08em;background:linear-gradient(var(--ac),var(--ac)) no-repeat left 100%/100% 1px}
.js .esc-quote em{background-size:0 1px;transition:background-size 1.4s var(--ease-out) .25s}
.js .esc-quote.is-vis em{background-size:100% 1px}
.js .esc-quote.is-vis em:nth-of-type(2){transition-delay:.6s}
@media (min-width:901px){.esc-fixa{position:sticky;top:calc(var(--hdr-min) + 3.5rem)}}
/* ajuste de 13.10: texto do Escritório com letra maior, os parágrafos com a mesma formatação */
.esc-txt{padding-top:clamp(0rem,1vw,.4rem)}
.esc-txt p{max-width:none;margin:0 0 1.5rem;font-size:1.3rem;line-height:1.72;font-weight:300;color:var(--tx-forte)}
.esc-txt p:first-child::first-letter{float:none;font-size:inherit;line-height:inherit;font-weight:inherit;padding:0}
.more{border-bottom:0;padding:.62rem 1.05rem;border:1px solid var(--fio-claro-forte);border-radius:999px;min-height:0;letter-spacing:.16em}

/* ---------- Missão, visão e valores ---------- */
.mvv-sec{background:var(--navy-800);padding:clamp(96px,11vw,150px) 0}
.mvv-top{gap:clamp(2rem,6vw,5.5rem)}
.mvv-top .lbl,.mvv-vals .lbl{display:block;margin-bottom:1.3rem}
.mvv-top p{font-size:clamp(1.7rem,1.25rem + 1.2vw,2.3rem);line-height:1.3;margin:0;color:var(--tx-claro-forte);max-width:24ch}
.mvv-vals{margin-top:clamp(3rem,6vw,4.6rem);padding-top:clamp(2.4rem,4vw,3.2rem);border-top:1px solid var(--fio-escuro);overflow:visible}
/* valores em pílulas: quebram de linha sem fio sobrando (o problema que o ajuste de 13.10 resolvia) */
.mvv-words,.mvv-words{margin:0;gap:.6rem;row-gap:.6rem;align-items:center}
.mvv-words span,.mvv-words span:first-child{padding:.35rem 1.3rem .45rem;border:1px solid rgba(184,149,92,.4);border-radius:999px;
  font-size:clamp(1.6rem,1.2rem + 1.2vw,2.3rem);line-height:1.2;color:var(--tx-claro-forte);
  transition:background-color .7s var(--ease),color .6s var(--ease),opacity .9s var(--ease-out),transform .9s var(--ease-out)}
.mvv-words span:hover{background:var(--ac);color:var(--navy-900)}
.js .mvv-vals[data-rev] .mvv-words span{opacity:0;transform:translateY(18px)}
.js .mvv-vals.is-vis .mvv-words span{opacity:1;transform:none}
.mvv-words span:nth-child(2){transition-delay:.12s}.mvv-words span:nth-child(3){transition-delay:.24s}.mvv-words span:nth-child(4){transition-delay:.36s}
.mvv-words span:nth-child(5){transition-delay:.48s}.mvv-words span:nth-child(6){transition-delay:.6s}.mvv-words span:nth-child(7){transition-delay:.72s}
.mvv-words span:nth-child(n+8){transition-delay:.84s}
.mvv-words span:hover{transition-delay:0s}
.mvv-tail{margin-top:1.4rem;font-size:.9rem}

/* =====================================================================
   Atuação
   ===================================================================== */
.atu{background:var(--bg-papel);padding:var(--sec-y) 0;overflow:hidden}
/* ajuste de 13.10: a onda cinza é o fundo do alto da seção, dissolvendo-se no papel (aqui, tingida pelo marfim) */
.atu::before{opacity:.55;mix-blend-mode:multiply}
.map{margin-top:clamp(3rem,6vw,4.6rem);gap:0 clamp(1.8rem,4vw,3.6rem)}
.escolha{padding:.55rem 1rem;border:1px solid var(--fio-claro-forte);border-radius:999px;background:var(--bg-elevado);letter-spacing:.2em}
.root-dot{background:var(--bg-elevado);border-color:var(--fio-claro-forte)}
.stem,.br .elbow::before,.br.l .elbow::after,.br.r .elbow::after{background:var(--fio-claro-forte)}
.node{border-radius:var(--r-m);border-color:var(--fio-claro);background:rgba(255,253,249,.88);padding:clamp(1.6rem,2.6vw,2.3rem) clamp(1.5rem,2.6vw,2.4rem);
  transition:background-color .8s var(--ease),border-color .6s var(--ease),box-shadow .8s var(--ease),transform .8s var(--ease),padding .4s,color .5s}
.node:hover{transform:translateY(-4px);border-color:var(--fio-claro-forte);background:var(--bg-elevado);box-shadow:0 26px 50px -24px rgba(23,28,44,.35)}
.node .k{letter-spacing:.2em;color:var(--tx-sec)}
.node .nm{font-size:clamp(1.9rem,1.5rem + 1vw,2.4rem);line-height:1.1;margin-top:.7rem}
.node.on{background:var(--navy-900);border-color:var(--navy-900);box-shadow:0 30px 60px -28px rgba(14,20,36,.7)}
.node.on .nm{font-size:clamp(2.1rem,1.6rem + 1.2vw,2.7rem)}
.node .ds{font-weight:400}
.node .go{padding:.55rem .95rem;border:1px solid var(--fio-claro-forte);border-radius:999px;letter-spacing:.16em;transition:background-color .6s var(--ease),color .5s,border-color .5s}
.node:hover .go{background:var(--tx-forte);border-color:var(--tx-forte);color:var(--bg-papel)}
.node.on .go,.node.on:hover .go{background:var(--ac);border-color:var(--ac);color:var(--navy-900)}
.map .feat{border-left:0;background:repeating-linear-gradient(180deg,var(--fio-claro-forte) 0 3px,transparent 3px 7px) left/1px 100% no-repeat}
.fnode{border-radius:var(--r-g);border:0;background:radial-gradient(120% 90% at 100% 0%,#2a3350 0%,var(--navy-900) 60%);padding:clamp(1.8rem,3vw,2.4rem);
  transition:transform .9s var(--ease),box-shadow .9s var(--ease)}
.fnode:hover{transform:translateY(-6px);box-shadow:0 34px 70px -30px rgba(14,20,36,.75)}
.fnode .nm{font-size:2.2rem;line-height:1.1}
.fnode .more{padding:.62rem 1.05rem;border:1px solid rgba(236,238,242,.22);border-radius:999px;letter-spacing:.16em;transition:background-color .6s var(--ease),color .5s}
.fnode:hover .more{background:var(--ac);border-color:var(--ac);color:var(--navy-900)}

.panel{margin-top:clamp(3rem,5vw,4rem)}
.tick{border-top-color:var(--fio-claro-forte)}
.tick .dot{background:var(--bg-papel);border-color:var(--tx-sec);transition:background-color .6s var(--ease),border-color .6s var(--ease),transform .6s var(--ease)}
.stage.on .tick .dot{transform:scale(1.25)}
.sbody{border-radius:var(--r-m);border-color:var(--fio-claro);background:var(--bg-papel);transition:background-color .8s var(--ease),border-color .6s var(--ease)}
.stage.on .sbody{background:var(--bg-elevado);border-color:var(--fio-claro-forte)}
.stage:not(.on) .sbody:hover{background:var(--bg-elevado);border-color:var(--fio-claro-forte)}
.stx{font-weight:400;color:var(--navy-600)}
.open{padding:.75rem 1rem .75rem 1.15rem;border:1px solid var(--fio-claro-forte);border-radius:999px;min-height:0;letter-spacing:.16em;font-weight:500;
  transition:background-color .6s var(--ease),color .5s var(--ease),border-color .5s var(--ease)}
.open:hover,.stage:not(.on) .sbody:hover .open{background:var(--tx-forte);border-color:var(--tx-forte);color:var(--bg-papel)}
.sol{border-radius:var(--r-g);border:1px solid var(--fio-claro);background:var(--bg-elevado);overflow:hidden;animation:surge 1s var(--ease-out)}
@keyframes surge{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.sol-h .h4{font-size:clamp(1.8rem,1.4rem + .9vw,2.2rem);line-height:1.1}
.sol-it{border-top-color:var(--fio-claro)}
.sol-it p{font-weight:400}
.sol-ct{margin:20px -40px -12px;padding:28px 40px}
.ref{border-radius:var(--r-g);background:radial-gradient(120% 90% at 100% 0%,#2a3350 0%,var(--navy-900) 60%)}
.ref h3{font-size:2.4rem;line-height:1.1}
.ref .cta,.rf .cta{color:var(--tx-claro-forte)}
.cal .y{font-size:2rem}
.gloss{border-top-color:var(--fio-claro-forte)}
.gtog{padding:.62rem 1.05rem;border:1px solid var(--tx-forte);border-bottom:1px solid var(--tx-forte);border-radius:999px;background:var(--tx-forte);color:var(--bg-papel);letter-spacing:.16em;min-height:0;
  transition:background-color .6s var(--ease),border-color .6s var(--ease),color .5s}
.gtog:hover{background:var(--ac);border-color:var(--ac);color:var(--navy-900)}
.gl-col{border-radius:var(--r-m);overflow:hidden;border-color:var(--fio-claro)}
.gl-n{font-size:2.6rem}
.gl-item{border-bottom-color:var(--fio-claro)}

/* ---------- Sócios ---------- */
.socios{background:var(--bg-pedra);padding:var(--sec-y) 0}
.team{margin-top:clamp(2.6rem,5vw,4.2rem);gap:clamp(1rem,1.8vw,1.6rem)}
.ph{border-radius:var(--r-m);background:var(--grafite)}
.ph::after{display:none}
.ph img{filter:grayscale(1) contrast(1.04) brightness(.96);transform:scale(1.001);transition:filter 1.2s var(--ease),transform 1.6s var(--ease)}
.pc:hover .ph img{filter:none;transform:scale(1.035)}
.pn{font-size:1.55rem;line-height:1.2;margin:1.1rem 0 .3rem}
.pr{font-size:.66rem;letter-spacing:.24em;margin-bottom:1rem}
.pa{border-top:0;padding-top:0}
.vp{padding:.55rem .95rem;border:1px solid var(--fio-claro-forte);border-radius:999px;min-height:0;font-size:.66rem;letter-spacing:.16em;
  transition:background-color .6s var(--ease),color .5s var(--ease),border-color .5s}
.vp:hover,.vp[aria-expanded="true"]{background:var(--tx-forte);border-color:var(--tx-forte);color:var(--bg-papel)}
.li{width:34px;height:34px;justify-content:center;border:1px solid var(--fio-claro-forte);border-radius:50%;
  transition:background-color .6s var(--ease),color .5s,border-color .5s}
.li svg{width:14px;height:14px}
.li:hover{background:var(--tx-forte);border-color:var(--tx-forte);color:var(--bg-papel)}
.prof{border-radius:var(--r-g);border-top:0;background:var(--bg-elevado);box-shadow:0 30px 70px -40px rgba(23,28,44,.35);
  grid-template-columns:minmax(180px,270px) minmax(0,1fr);gap:clamp(1.8rem,4vw,3.2rem);padding:clamp(1.6rem,3.2vw,2.9rem);animation:surge .9s var(--ease-out)}
.prof h3{font-size:clamp(2rem,1.6rem + 1vw,2.6rem);line-height:1.1}
.prof .bio{font-size:1rem;line-height:1.9;font-weight:400;color:var(--navy-600)}
.prof .row{gap:.8rem}
.oc-h{margin-top:clamp(4.5rem,8vw,6.6rem)}
.oc-h h3{font-size:2rem}
.oc-h .hr{background:var(--fio-claro-forte)}

/* ---------- Faixa com imagem em movimento ---------- */
.faixa{position:relative;z-index:1;isolation:isolate;overflow:hidden;display:grid;place-items:center;
  height:calc(clamp(320px,38vw,540px) + var(--folha));padding-bottom:var(--folha);
  margin-top:calc(-1 * var(--folha));border-radius:var(--folha) var(--folha) 0 0;background:var(--navy-900)}
.faixa-img{position:absolute;left:0;right:0;top:-30%;bottom:-30%;z-index:-2;will-change:transform}
.faixa-img img{display:block;width:100%;height:100%;object-fit:cover}
.faixa::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(14,20,36,.6) 0%,rgba(14,20,36,.22) 50%,rgba(14,20,36,.62) 100%)}
.faixa-frase{max-width:26ch;margin:0;padding:0 var(--gutter);text-align:center;font-family:var(--serifa);font-weight:400;
  font-size:clamp(2.3rem,1.3rem + 3vw,4.4rem);line-height:1.05;letter-spacing:-.005em;color:var(--tx-claro-forte)}
.faixa-frase em{color:var(--ac-2)}

/* ---------- Publicações ---------- */
.pubs{background:var(--bg-papel);padding:var(--sec-y) 0}
.pub{margin-top:clamp(2.8rem,5vw,4.2rem);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(2.6rem,5vw,4.8rem)}
.colh{border-bottom-color:var(--fio-claro-forte)}
.colh h3{letter-spacing:.2em}
.pbtn{width:42px;height:42px;border-radius:50%;border-color:var(--fio-claro-forte);background:var(--bg-elevado);
  transition:background-color .6s var(--ease),color .5s var(--ease),border-color .5s,transform .6s var(--ease)}
.pbtn:not([disabled]):hover{background:var(--tx-forte);color:var(--bg-papel);border-color:var(--tx-forte);transform:scale(1.06)}
.pbtn[disabled]{opacity:.45;background:transparent}
.thumb{height:auto;aspect-ratio:3/2;border-radius:var(--r-m);background:var(--grafite)}
.thumb img{transition:transform 1.6s var(--ease)}
.tema{letter-spacing:.2em}
.tema::before{width:7px;height:7px;border-radius:50%}
.art h4,.art .h4{font-size:1.6rem;line-height:1.2;margin:.75rem 0 .5rem}
.art-t:hover h4{text-decoration:none;color:var(--navy-600)}
.art-acts{border-top:0;padding-top:.4rem;gap:.7rem;flex-wrap:wrap}
.bk{grid-template-columns:122px minmax(0,1fr);border-bottom-color:var(--fio-claro)}
.cover{border-radius:4px 8px 8px 4px;overflow:hidden;box-shadow:0 22px 34px -18px rgba(14,20,36,.55);transition:transform .9s var(--ease),box-shadow .9s var(--ease)}
.bk-capa:hover .cover,.pp-livro:hover .cover,.lv-outro:hover .cover{transform:translateY(-6px) rotate(-1deg);box-shadow:0 30px 44px -18px rgba(14,20,36,.6)}
.bk h4{font-size:1.75rem;line-height:1.15}
.bk h4 a:hover{text-decoration:none;color:var(--navy-600)}
.bk .abnt{font-weight:400}
.bk .acts{gap:.7rem;margin-top:1rem}
.sum li{border-top-color:var(--fio-claro)}

/* informativo */
.news{margin-top:clamp(4rem,8vw,6.8rem);border-radius:calc(var(--r-g) + 6px);padding:clamp(2.2rem,4.6vw,4rem) clamp(1.5rem,4.6vw,3.9rem);
  background:radial-gradient(110% 120% at 0% 0%,#2a3350 0%,var(--navy-900) 55%)}
.news h3{font-size:clamp(2rem,1.5rem + 1.4vw,2.8rem);line-height:1.15}
.nform,.nform-wrap.erro .nform{gap:.6rem;align-items:center;padding:6px 6px 6px 1.4rem;border:1px solid rgba(236,238,242,.18);border-radius:999px;background:rgba(236,238,242,.05);
  transition:border-color .6s var(--ease),background-color .6s var(--ease)}
.nform:focus-within{border-color:var(--ac);background:rgba(236,238,242,.08)}
.nform-wrap.erro .nform{border-color:#e7b9a6}
.nform input{height:auto;padding:.8rem 0}
.nbtn{min-height:0;padding:.95rem 1.4rem;border-radius:999px;background:var(--ac);color:var(--navy-900);letter-spacing:.16em;transition:background-color .6s var(--ease)}
.nbtn:hover{background:var(--ac-2);color:var(--navy-900)}

/* =====================================================================
   Rodapé
   ===================================================================== */
.ft{padding:clamp(4.4rem,7vw,5.6rem) 0 0}
.ft-grid{grid-template-columns:minmax(0,450px) minmax(0,1fr) minmax(0,360px);gap:clamp(2rem,4vw,3.6rem)}
.mapbox{height:auto;aspect-ratio:450/208;border-radius:var(--r-m);border-color:var(--fio-escuro)}
.map-go{left:auto;right:.7rem;bottom:.6rem;min-height:0;padding:.4rem .8rem;border-radius:999px;font-size:.62rem;letter-spacing:.2em;background:rgba(14,20,36,.82)}
.mapbox:hover .map-go{color:var(--ac-2)}
.addr{font-size:.9rem;line-height:1.7;color:var(--tx-claro-sec);margin-top:1.2rem}
.fnav{gap:.4rem;padding-top:.4rem}
.fnav a{font-size:.74rem;letter-spacing:.28em;color:var(--tx-claro-sec);transition:color .6s var(--ease)}
.fnav a:hover{color:var(--tx-claro-forte)}
.ct-big{font-size:clamp(1.6rem,1.1rem + 1vw,2.15rem);line-height:1.35;color:var(--ac);word-break:normal;overflow-wrap:anywhere;transition:color .3s}
.ct-big:hover{color:var(--ac-2)}
.ct-wa{padding:.62rem 1.05rem;border:1px solid rgba(236,238,242,.22);border-radius:999px;letter-spacing:.16em;margin-top:.8rem}
.ct-wa:hover{background:var(--ac);border-color:var(--ac);color:var(--navy-900)}
.soc{margin-top:1.4rem;gap:.8rem}
.soc a{width:46px;height:46px;border-radius:50%;border-color:var(--fio-escuro);transition:background-color .6s var(--ease),color .5s,border-color .5s}
.soc a:hover{background:var(--ac);border-color:var(--ac);color:var(--navy-900)}
.trust{margin-top:clamp(2.4rem,4vw,3.2rem);font-size:.86rem;color:var(--tx-claro-sec)}
.ft-bot{margin-top:1.6rem;padding:1.4rem 0 1.8rem;border-top-color:var(--fio-escuro);font-size:.8rem;letter-spacing:.04em;color:#959aa9}
.ft-links a,.ft-links button{font-size:.8rem;letter-spacing:.04em;color:#959aa9}
.ft-links a:hover,.ft-links button:hover{color:var(--tx-claro-forte)}

/* aviso de privacidade */
.cookie{border-radius:var(--r-m);border:1px solid rgba(236,238,242,.1);border-top:1px solid rgba(236,238,242,.1);background:var(--navy-800);box-shadow:0 24px 60px rgba(5,9,18,.4)}
.ck-ok{min-height:0;padding:.6rem 1.05rem;border-radius:999px;background:var(--ac);border-color:var(--ac);color:var(--navy-900);letter-spacing:.16em}
.ck-ok:hover{background:var(--ac-2)}
.ck-ess{padding:.6rem 1.05rem;border:1px solid rgba(236,238,242,.2);border-radius:999px;min-height:0;letter-spacing:.16em}

/* =====================================================================
   Painel sobre a página (artigo, livro, Reforma) e páginas próprias
   ===================================================================== */
.reader{padding:12px}
.reader-bg{background:rgba(14,20,36,.45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.reader-panel{height:100%;width:min(680px,100%);border-radius:var(--r-g);background:var(--bg-papel);padding:clamp(1.6rem,4vw,3.4rem) clamp(1.4rem,4.4vw,4.4rem) clamp(2.4rem,5vw,4rem);
  box-shadow:-30px 0 60px rgba(5,9,18,.2);animation:slidein 1s var(--ease)}
.reader[data-largura="livro"] .reader-panel{width:min(920px,100%)}
.reader[data-largura="cheia"]{padding:0}
.reader[data-largura="cheia"] .reader-panel{border-radius:0}
.r-top{border-bottom-color:var(--fio-claro)}
.r-close{padding:.6rem 1rem;border:1px solid var(--fio-claro-forte);border-radius:999px;min-height:0;letter-spacing:.16em;transition:background-color .6s var(--ease),color .5s}
.r-close:hover{background:var(--tx-forte);color:var(--bg-papel)}
.reader[data-largura="cheia"] .r-close{border-color:rgba(236,238,242,.22)}
.reader[data-largura="cheia"] .r-close:hover{background:var(--ac);color:var(--navy-900)}
.r-title{font-size:clamp(2.1rem,1.6rem + 1.4vw,2.8rem);line-height:1.12}
.r-origin{border-radius:var(--r-m);background:var(--bg-nevoa)}
.r-min{border-radius:var(--r-m);background:var(--navy-800);padding:1.4rem 1.6rem .6rem}
.r-corpo{font-weight:400;color:var(--navy-600)}
.r-corpo h2{font-family:var(--serifa);font-weight:400;font-size:1.9rem}
.r-resumo{border-radius:var(--r-m)}
.r-foot{border-top-color:var(--fio-claro);gap:.7rem}

.artigo-pg{background:var(--bg-papel)}
.ap-title{font-size:clamp(2.6rem,1.7rem + 2.4vw,4rem);line-height:1.05}
.ap-av{border-radius:50%}
.ap-img{border-radius:var(--r-g)}
.ap-sobre{border-radius:var(--r-m);border-top:0;background:var(--bg-elevado)}
.ap-box{border-radius:var(--r-m);border-color:var(--fio-claro)}
.ap-ct{background:radial-gradient(120% 90% at 100% 0%,#2a3350 0%,var(--navy-900) 60%)}
.ap-ct .lk{color:var(--tx-claro-forte);border-color:rgba(236,238,242,.22)}
.ap-ct .lk:hover{background:var(--ac);border-color:var(--ac);color:var(--navy-900)}
.trilha{letter-spacing:.12em}

.texto-pg,.pubs-pg{background:var(--bg-papel)}
.tp-h,.lv-h,.rf-h{font-family:var(--serifa);font-weight:400;letter-spacing:0;text-transform:none;font-size:1.9rem;color:var(--tx-forte)}
.texto-pg p{font-weight:400}
.vb-def{font-family:var(--serifa) !important;font-weight:400 !important;font-size:clamp(1.6rem,1.2rem + 1vw,2.2rem) !important;line-height:1.3 !important}
.glos-g{border-top-width:3px;border-radius:0}
.glos-g li a{font-family:var(--serifa);font-size:1.5rem}

/* livro */
.lv-titulo{font-size:clamp(2.1rem,1.6rem + 1.4vw,2.8rem);line-height:1.12}
.livro-pg .lv-titulo{font-size:clamp(2.6rem,1.7rem + 2.4vw,4rem)}
.lv-capa{box-shadow:0 30px 50px -20px rgba(14,20,36,.55)}
.ficha{border-color:var(--fio-claro)}
.lv-sinopse{font-weight:400}
.lv-sum li{border-top-color:var(--fio-claro)}
.lv-acts{gap:.7rem 1rem}

/* Reforma tributária (página e painel em tela cheia) */
.rf-titulo{font-size:clamp(2.6rem,1.6rem + 3.2vw,4.4rem);line-height:1.02}
.rf-titulo em{color:var(--ac-2)}
.rf-ano .y{font-size:clamp(2.2rem,1.5rem + 2vw,3.1rem)}
.rf-ano .dot{transition:background-color .6s var(--ease),border-color .6s var(--ease),transform .6s var(--ease)}
.rf-ano.on .dot{transform:scale(1.3)}
.rf-card{border-radius:var(--r-m);border-top:0;background:var(--navy-800)}
.rf-pg .lk,.rf-painel .lk,.ref .lk,.rf .lk{color:var(--tx-claro-forte);border-color:rgba(236,238,242,.22)}
.rf-pg .lk:hover,.rf-painel .lk:hover,.ref .lk:hover,.rf .lk:hover{background:var(--ac);border-color:var(--ac);color:var(--navy-900)}
.rf-pg .tp-h,.rf-pg .rf-h,.rf-painel .rf-h{color:var(--tx-claro-forte)}
.faq-q{font-size:1.35rem}
.rf-fale{border-radius:999px}

/* =====================================================================
   Telas médias e celular
   ===================================================================== */
@media (max-width:1180px){
  .nl,.hdr.cmp .nl{padding:.6rem .7rem;letter-spacing:.14em}
  .team{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (max-width:1024px){
  .nav-desk,.nav>.lang{display:none}
  .burger{display:flex;margin-left:auto}
  .logo .logo-completo{height:32px}
  .ft-grid{grid-template-columns:1fr 1fr}
  .ft-grid>:first-child{grid-column:1/-1;max-width:520px}
}
@media (min-width:1025px){.menu-cel{display:none !important}}
@media (max-width:900px){
  body{font-size:16px}
  .hdr .nav,.hdr.cmp .nav{height:100%}
  .logo{width:auto;height:100%}
  .logo .logo-completo,.hdr.cmp .logo .logo-completo{height:30px}
  .logo .logo-simbolo{display:block;height:28px}

  .hero{display:flex;flex-direction:row;align-items:flex-end;min-height:100svh;padding:0}
  .hero-img{position:absolute;inset:0;height:auto;width:auto;margin:0}
  .hero-img img{object-position:70% 40%}
  .hero-img::after{background:linear-gradient(180deg,rgba(14,20,36,.6) 0%,rgba(14,20,36,.3) 30%,rgba(14,20,36,.78) 66%,rgba(14,20,36,.96) 100%)}
  .hero-in{padding-top:calc(var(--hdr) + 2rem);padding-bottom:calc(var(--folha) + 3.5rem)}
  .hero-txt{max-width:none}
  .hero h1{font-size:clamp(2.9rem,12vw,3.8rem);margin-top:1.4rem}
  .hero .cta{padding:0 1.2rem 0 1.4rem;min-height:48px}
  .hero-note{display:flex;width:100%;gap:.8rem}
  .hero-note .hn-t{flex:1 1 auto;font-size:.95rem}

  .h2{font-size:clamp(2.6rem,11vw,3.4rem)}
  .esc-top{grid-template-columns:minmax(0,1fr);gap:1.6rem}
  .esc-quote{max-width:none;font-size:clamp(1.8rem,7.5vw,2.3rem)}
  .esc-txt p{font-size:1.12rem;line-height:1.72}
  .mvv-top{grid-template-columns:minmax(0,1fr);gap:2.2rem}
  .mvv-top p{font-size:1.75rem}
  .mvv-words{flex-direction:row;flex-wrap:wrap;margin:0}
  .mvv-words span,.mvv-words span:first-child{font-size:1.45rem;padding:.4rem 1.05rem .5rem;border:1px solid rgba(184,149,92,.4)}

  .acc{border-top-color:var(--fio-claro-forte)}
  .ah{border-bottom-color:var(--fio-claro-forte)}
  .ah .nm{font-size:1.9rem}
  .ah.feat{border-radius:var(--r-m);background:radial-gradient(120% 90% at 100% 0%,#2a3350 0%,var(--navy-900) 60%)}
  .ab{border-bottom-color:var(--fio-claro-forte)}
  .card{border-radius:var(--r-p);border-top:1px solid var(--fio-claro);background:var(--bg-elevado);overflow:hidden}
  .rf{border-radius:var(--r-m)}
  .mct{margin:14px -18px -18px;border-top:0}
  .fale-t{font-size:1.25rem}
  .sol-ct{margin:16px -20px -12px}

  .team.faixa-cel .ph{border-radius:var(--r-m)}
  .team.faixa-cel .pc{width:64vw;max-width:260px}
  .team.faixa-cel .ph{height:auto;aspect-ratio:4/5}
  .team.oc .ph{height:auto;aspect-ratio:4/5}
  .dots span.on{background:var(--tx-forte)}
  .prof{grid-template-columns:minmax(0,1fr);padding:1.6rem 1.3rem}
  .prof .ph{width:200px}

  .tabs{border:1px solid var(--fio-claro-forte);border-radius:999px;padding:3px;gap:3px;background:var(--bg-elevado)}
  .tab{border-radius:999px;min-height:42px;letter-spacing:.18em}
  .tab.on{background:var(--tx-forte);color:var(--bg-papel)}
  .pub{grid-template-columns:minmax(0,1fr)}
  .arts .art{width:78vw;max-width:320px}
  .thumb{height:auto}
  .art h4{font-size:1.45rem}
  .books .cover{height:auto;aspect-ratio:2/3}
  .books .bk h4{font-size:1.45rem}
  .news{grid-template-columns:minmax(0,1fr);gap:1.4rem;padding:2rem 1.4rem}
  .nform{flex-direction:row;padding:5px 5px 5px 1.1rem}
  .nform input{height:auto;border-bottom:0}
  .nbtn{width:auto;margin-top:0;padding:.85rem 1.1rem;border:0;display:inline-flex}

  .faixa{height:calc(clamp(300px,80vw,420px) + var(--folha))}

  .ft{padding-bottom:0}
  .ft-grid{grid-template-columns:minmax(0,1fr)}
  .ct-big{font-size:1.5rem}
  .ft-bot{flex-direction:column;align-items:flex-start}

  .reader{padding:8px}
  .reader-panel{width:100%;padding:0 1.2rem 2.4rem}
  .r-top{background:var(--bg-papel);border-radius:var(--r-g) var(--r-g) 0 0;margin:0 -1.2rem;padding:0 1.2rem}
  .reader[data-largura="cheia"] .r-top{border-radius:0}
  .ap-title{font-size:2.3rem}
}
@media (max-width:600px){
  .team{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero-note{flex-wrap:nowrap}
}

/* ---------- acertos da revisão ---------- */
/* momento fechado: o botão ocupa a largura do cartão, sem quebrar o texto em duas linhas */
.stage:not(.on) .open{display:flex;width:100%;justify-content:space-between;gap:.6rem;padding:.75rem .9rem .75rem 1.05rem;letter-spacing:.1em;font-size:.62rem;white-space:nowrap}
/* Reforma: a imagem de fundo se dissolve no azul, sem borda marcada */
.rf-pg::before,.rf-painel::before{-webkit-mask-image:radial-gradient(130% 100% at 100% 0%,#000 30%,transparent 75%);mask-image:radial-gradient(130% 100% at 100% 0%,#000 30%,transparent 75%)}
@media (max-width:900px){
  .ah.feat{flex-direction:row;justify-content:space-between;align-items:center;padding:1.3rem 1.4rem;margin-top:12px}
  .ah.feat .nm{font-size:1.9rem}
  .hero-note .lbl{white-space:nowrap}
}

/* banner: a frase em duas linhas, a segunda em itálico dourado (como no layout do designer) */
.hero-txt{max-width:min(900px,64%)}
.hero h1 em{display:block}
.hero p{max-width:38ch}
@media (max-width:900px){.hero-txt{max-width:none}}

/* =====================================================================
   Revisão de 13.10.2026 (Pedro): a serifa do designer fica só nos TÍTULOS; os subtítulos
   (frases, nomes, títulos de cartão, missão e visão, valores...) voltam à Jost leve, mais "clean".
   ===================================================================== */
.hero h1 em{display:inline}
.esc-quote,.mvv-top p,.mvv-words span,.node .nm,.fnode .nm,.sol-h .h4,.ref h3,.oc-h h3,.pn,.prof h3,
.art h4,.art .h4,.bk h4,.news h3,.ct-big,.fale-t,.mcol .t,.ah .nm,.gl-n,.pp-at,.pp-lt,.faq-q,.cal .y,.rf-ano .y,
.tp-h,.lv-h,.rf-h,.glos-g li a,.r-corpo h2,.mbot .c,.vb-def,.rf-ct .fale-t,.gl-ct .fale-t{font-family:var(--font) !important;letter-spacing:-.005em}
.esc-quote{font-weight:200;font-size:clamp(1.6rem,1.1rem + 1.4vw,2.25rem);line-height:1.32;max-width:19ch}
.mvv-top p{font-weight:200;font-size:clamp(1.45rem,1.1rem + 1vw,1.95rem);line-height:1.4}
.mvv-words span,.mvv-words span:first-child{font-weight:200;font-size:clamp(1.3rem,1rem + .9vw,1.8rem)}
.node .nm{font-weight:300;font-size:clamp(1.5rem,1.2rem + .8vw,1.9rem)}
.node.on .nm{font-size:clamp(1.65rem,1.3rem + .9vw,2.1rem)}
.fnode .nm{font-weight:300;font-size:1.75rem}
.sol-h .h4,.ref h3{font-weight:300;font-size:clamp(1.45rem,1.2rem + .6vw,1.75rem)}
.oc-h h3{font-weight:300;font-size:1.6rem}
.pn{font-weight:300;font-size:1.25rem;line-height:1.3}
.prof h3{font-weight:300;font-size:clamp(1.6rem,1.3rem + .8vw,2.05rem)}
.art h4,.art .h4{font-weight:300;font-size:1.3rem;line-height:1.38}
.bk h4{font-weight:300;font-size:1.35rem;line-height:1.3}
.news h3{font-weight:200;font-size:clamp(1.6rem,1.25rem + 1vw,2.15rem);line-height:1.25}
.ct-big{font-weight:300;font-size:clamp(1.3rem,1.05rem + .6vw,1.6rem)}
.fale-t{font-weight:300;font-size:1.2rem}
.rf-ct .fale-t,.gl-ct .fale-t{font-weight:200;font-size:clamp(1.4rem,1.15rem + .7vw,1.8rem)}
.mcol .t{font-weight:300;font-size:1.3rem}
.ah .nm{font-weight:300}
.gl-n{font-weight:200;font-size:2.3rem}
.pp-at{font-weight:300;font-size:1.35rem}
.pp-lt{font-weight:300;font-size:1.15rem}
.faq-q{font-weight:300;font-size:1.1rem}
.cal .y,.rf-ano .y{font-weight:200}
.rf-ano .y{font-size:clamp(1.8rem,1.3rem + 1.4vw,2.5rem)}
.tp-h,.lv-h,.rf-h{font-weight:300;font-size:1.45rem}
.glos-g li a{font-weight:400;font-size:1.1rem}
.r-corpo h2{font-weight:300;font-size:1.5rem}
.mbot .c{font-weight:300;font-size:1.2rem}
.vb-def{font-weight:200 !important;font-size:clamp(1.35rem,1.1rem + .7vw,1.75rem) !important;line-height:1.5 !important}
@media (max-width:900px){
  .esc-quote{font-size:clamp(1.45rem,6vw,1.8rem)}
  .mvv-top p{font-size:1.4rem}
  .mvv-words span,.mvv-words span:first-child{font-size:1.2rem}
  .ah .nm{font-size:1.5rem}
  .ah.feat .nm{font-size:1.5rem}
  .art h4,.books .bk h4{font-size:1.2rem}
  .ct-big{font-size:1.25rem}
}

/* ---------- Revisão de 13.10.2026 (2): dourado entra e sai no mesmo ritmo, suave ----------
   O escalonamento da entrada dos valores (até 0,84 s) atrasava também a saída do dourado.
   Agora o atraso vale só para a entrada (opacidade e posição); a cor muda sem atraso, com aceleração
   simétrica (começa e termina devagar), igual na ida e na volta. */
:root{--suave:cubic-bezier(.45,0,.25,1)}
.mvv-words span,.mvv-words span:first-child{
  transition:background-color .55s var(--suave),color .55s var(--suave),border-color .55s var(--suave),opacity .9s var(--ease-out),transform .9s var(--ease-out);
  transition-delay:0s}
.mvv-words span:nth-child(2){transition-delay:0s,0s,0s,.12s,.12s}
.mvv-words span:nth-child(3){transition-delay:0s,0s,0s,.24s,.24s}
.mvv-words span:nth-child(4){transition-delay:0s,0s,0s,.36s,.36s}
.mvv-words span:nth-child(5){transition-delay:0s,0s,0s,.48s,.48s}
.mvv-words span:nth-child(6){transition-delay:0s,0s,0s,.6s,.6s}
.mvv-words span:nth-child(7){transition-delay:0s,0s,0s,.72s,.72s}
.mvv-words span:nth-child(n+8){transition-delay:0s,0s,0s,.84s,.84s}
.mvv-words span:hover{background:var(--ac);border-color:var(--ac);color:var(--navy-900)}
/* o mesmo ritmo nos demais botões em pílula */
.cta,.allp,.lk,.btn-cheio,.fale-btn,.gtog,.vp,.li,.open,.close,.r-close,.node .go,.fnode .more,.soc a,.nbtn,.ck-ok,.ck-ess,.ct-wa,.pcol .go,.pbtn,.lang a,.nl,.more,.chip,.chip-f{
  transition:background-color .55s var(--suave),border-color .55s var(--suave),color .55s var(--suave),gap .7s var(--ease),transform .7s var(--ease),opacity .5s var(--suave)}
/* cartão do sócio clicável por inteiro: a mãozinha e o botão "Ver perfil" reagem ao passar o mouse no cartão */
.pc.clicavel{cursor:pointer}
.pc.clicavel:hover .vp{background:var(--tx-forte);border-color:var(--tx-forte);color:var(--bg-papel)}
.pc.clicavel:hover .pn{color:var(--navy-600)}

/* =====================================================================
   Revisão de 13.10.2026 (3)
   ===================================================================== */
/* "Em destaque" (e os rótulos dourados sobre o azul): dourado claro, que lê como dourado em letra pequena */
.hero-note .lbl,.fnode .k,.mcol .lbl-ac,.ah.feat .k,.ref .lbl-ac,.rf-top .lbl-ac,.rf .lbl-ac,.mvv-sec .lbl-ac,.news .lbl-ac,.r-min .lbl-ac,.cookie .lbl-ac{color:var(--ac-2)}

/* Atuação: Pessoa jurídica e Pessoa física sempre do mesmo tamanho (escolhida ou não) */
.br,.br.on{flex:1 1 0}
.node,.node.on{padding:clamp(1.6rem,2.6vw,2.3rem) clamp(1.5rem,2.6vw,2.4rem);height:100%}
.node .nm,.node.on .nm{font-size:clamp(1.5rem,1.2rem + .8vw,1.9rem)}
.branches{align-items:stretch}
.br{display:flex;flex-direction:column}
.br .node{flex:1 1 auto;display:flex;flex-direction:column;align-items:flex-start}
.node .go{margin-top:auto;padding-top:.55rem}
.node .ds{margin-bottom:1.1rem}

/* cartão da Reforma: arcos esmaecidos saindo do canto, como no designer */
.fnode svg.ring{right:-48px;top:-52px;width:170px;height:170px;opacity:.55;pointer-events:none}

/* Sócios: a tipografia do designer (serifa nos nomes e no perfil aberto) e a bio em parágrafos */
.pn,.prof h3{font-family:var(--serifa) !important;font-weight:400;letter-spacing:-.005em}
.pn{font-size:1.55rem;line-height:1.2}
.prof h3{font-size:clamp(2rem,1.6rem + 1vw,2.6rem);line-height:1.1;margin:.8rem 0 1.4rem}
.prof .bio{margin:0;max-width:66ch}
.prof .bio p{margin:0;font-size:.96rem;line-height:1.9;font-weight:400;color:var(--navy-600)}
.prof .bio p+p{margin-top:.8rem}
.li svg{width:13px;height:13px}

/* Publicações: títulos de artigos e livros na serifa do designer; a linha "Conjur · data" mais discreta */
.art h4,.art .h4,.bk h4{font-family:var(--serifa) !important;font-weight:400;letter-spacing:-.005em}
.art h4,.art .h4{font-size:1.6rem;line-height:1.2;margin:.75rem 0 .5rem}
.bk h4{font-size:1.75rem;line-height:1.15}
.art .meta{font-size:.8rem;font-weight:400;color:var(--tx-sec);margin-top:.1rem}

/* Informativo: título na serifa do designer, com "essencial" em itálico dourado */
.news h3{font-family:var(--serifa) !important;font-weight:400;font-size:clamp(2rem,1.5rem + 1.4vw,2.8rem);line-height:1.15;letter-spacing:-.005em}
.news h3 em{color:var(--ac-2)}

@media (max-width:900px){
  .pn{font-size:1.4rem}
  .art h4,.art .h4,.books .bk h4{font-size:1.4rem}
  .news h3{font-size:2rem}
}

/* =====================================================================
   Revisão de 13.10.2026 (4): site principal
   ===================================================================== */
/* Of Counsel: título do mesmo tamanho e fonte de "Sócios" */
.oc-h .h2{margin:0;white-space:nowrap}
.oc-h{gap:clamp(1rem,2vw,1.6rem)}

/* Fale conosco + informativo: duas colunas equilibradas (o formulário num cartão; ao lado, o convite e o informativo) */
.fc{position:relative;z-index:1;border-top:0;border-radius:var(--folha) var(--folha) 0 0;margin-top:calc(-1 * var(--folha));
  background:var(--bg-nevoa);padding:clamp(80px,9vw,120px) 0 calc(clamp(80px,9vw,120px) + var(--folha) * .4)}
.fc-in{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(1.6rem,3vw,2.6rem);align-items:stretch}
.fc-lado{display:flex;flex-direction:column;gap:clamp(1.8rem,3vw,2.6rem)}
.fc-intro .lbl{display:block}
.fc-titulo{font-family:var(--serifa);font-weight:400;letter-spacing:-.005em;font-size:clamp(2.6rem,1.6rem + 2.6vw,4rem);line-height:1;margin:1rem 0 1.2rem;color:var(--tx-forte)}
.fc-texto{font-size:1rem;line-height:1.7;margin:0;max-width:44ch;font-weight:400;color:var(--tx-sec)}
.fc-texto a{color:var(--tx-forte)}
.fc-news{flex:1 1 auto;margin:0;gap:1.4rem;border-radius:var(--r-g);padding:clamp(1.8rem,3vw,2.4rem);
  background:radial-gradient(110% 120% at 0% 0%,#2a3350 0%,var(--navy-900) 55%)}
.fc-news::before{border-color:rgba(184,149,92,.4)}
.fc-news-t{font-family:var(--serifa);font-weight:400;letter-spacing:-.005em;font-size:clamp(1.7rem,1.3rem + 1vw,2.2rem);line-height:1.15;margin:.9rem 0 .7rem;color:var(--tx-claro-forte)}
.fc-news-t em{color:var(--ac-2)}
.fc-news p{font-size:.95rem;font-weight:400}
.fc-news .nconsent{font-size:.78rem}
.fc-contato{border-top:0;border-radius:var(--r-g);background:var(--bg-elevado);padding:clamp(1.8rem,3.4vw,2.8rem);box-shadow:0 30px 70px -40px rgba(23,28,44,.35)}
.fc-form{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:1.6rem;align-items:center}
.fc-form>*{grid-column:1/-1}
.fc-form>.fc-aceite{grid-column:1;margin:0 !important}
.fc-form>.fc-acoes{grid-column:2;justify-content:flex-end}
.fc-perfis{margin:0 0 1.2rem}
.fc-chip span{min-height:38px;padding:0 1rem;border-radius:999px;border-color:var(--fio-claro-forte);font-weight:400;
  transition:background-color .55s var(--suave),border-color .55s var(--suave),color .55s var(--suave)}
.fc-chip:hover span{border-color:var(--tx-forte)}
.fc-chip input:checked+span{background:var(--tx-forte);border-color:var(--tx-forte);color:var(--bg-papel)}
.fc-grid{gap:0 1.6rem}
.fc-f{margin-bottom:1.1rem}
.fc-f input,.fc-f textarea{padding:.45rem 0 .55rem;border-bottom-color:var(--fio-claro-forte);font-weight:400}
.fc-f textarea{min-height:78px}
.fc-form label,.fc-perfis legend{letter-spacing:.2em}
.fc-aceite{font-size:.8rem !important;font-weight:400 !important}
.fc-enviar{white-space:nowrap}
.fc-msg{grid-column:1/-1}
.fc-ok{font-family:var(--serifa);font-weight:400;font-size:1.8rem;border-top:0}

/* rodapé: crédito do designer */
.ft-bot{flex-wrap:wrap}
.ft-credito{flex-basis:100%;font-size:.72rem;letter-spacing:.04em;color:#959aa9}
.ft-credito a{color:#959aa9;transition:color .3s}
.ft-credito a:hover{color:var(--tx-claro-forte)}

@media (max-width:900px){
  .fc{padding:64px 0 calc(64px + var(--folha) * .4)}
  .fc-in{grid-template-columns:minmax(0,1fr)}
  .fc-lado{display:contents}
  .fc-intro{order:1}.fc-contato{order:2}.fc-news{order:3}
  .fc-titulo{font-size:2.6rem}
  .fc-form{grid-template-columns:minmax(0,1fr)}
  .fc-form>.fc-aceite,.fc-form>.fc-acoes{grid-column:1}
  .fc-form>.fc-acoes{justify-content:flex-start;margin-top:1.1rem}
  .fc-contato{padding:1.6rem 1.3rem}
  .oc-h .h2{white-space:normal}
}
/* Fale conosco, arranjo final: título e texto numa linha; formulário e informativo lado a lado, da mesma altura */
@media (min-width:901px){
  .fc{padding:clamp(72px,7vw,96px) 0 calc(clamp(72px,7vw,96px) + var(--folha) * .4)}
  .fc-in{grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-rows:auto auto;row-gap:clamp(1.8rem,3vw,2.6rem)}
  .fc-lado{display:contents}
  .fc-intro{grid-column:1/-1;grid-row:1;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:clamp(1.6rem,3vw,2.6rem);align-items:end}
  .fc-intro .lbl{grid-column:1/-1}
  .fc-titulo{margin:.9rem 0 0}
  .fc-texto{margin:0 0 .3rem}
  .fc-contato{grid-column:1;grid-row:2}
  .fc-news{grid-column:2;grid-row:2;justify-content:space-between}
}
.fc-intro .fc-texto{color:var(--tx-sec);font-size:1rem;max-width:44ch}
/* confirmação do Fale conosco: centralizada no cartão, com destaque (antes ficava no alto de um cartão vazio) */
.fc-contato:has(.fc-ok:not([hidden])){display:flex;align-items:center;justify-content:center;text-align:center}
.fc-contato:has(.fc-ok:not([hidden]))>[aria-live]{width:100%}
.fc-ok{padding:1rem 0;font-size:clamp(1.7rem,1.3rem + 1vw,2.3rem);line-height:1.25;color:var(--tx-forte)}
.fc-ok::before{content:"";display:block;width:56px;height:56px;margin:0 auto 1.4rem;border-radius:50%;
  background:var(--ac) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='%230e1424' stroke-width='1.6'/%3E%3C/svg%3E") center/26px no-repeat}

/* =====================================================================
   Compatibilização com o designer (16.10.2026)
   ===================================================================== */
/* fio dourado de progresso sob o cabeçalho também no celular e no tablet (o site.css o escondia abaixo de 900 px) */
@media (max-width:900px){.prog{display:block}}
.hdr.cmp .prog,.hdr:has(.burger[aria-expanded="true"]) .prog{opacity:1}
.hdr:has(.burger[aria-expanded="true"]) .prog{opacity:0}

/* Atuação: a árvore com os cantos arredondados, como no designer */
.br.l .elbow::after{border-top-left-radius:18px}
.br .elbow{overflow:visible}
.br.l .elbow::after,.br.r .elbow::after{height:18px;background:none;border-top:1px solid var(--fio-claro-forte)}
.br.l .elbow::after{border-left:1px solid var(--fio-claro-forte);left:50%;border-top-left-radius:18px}
.br.r .elbow::after{border-right:1px solid var(--fio-claro-forte);right:50%;border-top-right-radius:18px}
.br.l .elbow::before,.br.r .elbow::before{top:18px}

/* Atuação no celular: Pessoa jurídica, Pessoa física e Reforma como cartões, com a descrição */
.ah .ds{display:none}
@media (max-width:900px){
  .acc{border-top:0;display:flex;flex-direction:column;gap:12px}
  .acc>.ah{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;width:100%;padding:1.3rem 1.4rem;border:1px solid var(--fio-claro);border-radius:var(--r-m);
    background:var(--bg-elevado);text-align:left;transition:background-color .55s var(--suave),border-color .55s var(--suave),color .55s var(--suave)}
  .acc>.ah .ds{display:block;margin-top:.45rem;font-size:.9rem;line-height:1.55;font-weight:400;color:var(--tx-sec)}
  .acc>.ah .nm{margin-top:.5rem}
  .acc>.ah .pm2{width:34px;height:34px;flex:none;display:grid;place-items:center;border:1px solid var(--fio-claro-forte);border-radius:50%;font-size:1.2rem;line-height:1}
  .acc>.ah[aria-expanded="true"]:not(.feat){background:var(--navy-900);border-color:var(--navy-900);color:var(--tx-claro-forte)}
  .acc>.ah[aria-expanded="true"]:not(.feat) .k{color:var(--ac-2)}
  .acc>.ah[aria-expanded="true"]:not(.feat) .nm{color:var(--tx-claro-forte)}
  .acc>.ah[aria-expanded="true"]:not(.feat) .ds{color:var(--tx-claro-sec)}
  .acc>.ah[aria-expanded="true"] .pm2{border-color:rgba(236,238,242,.3);color:var(--tx-claro-forte)}
  .acc>.ah.feat{margin-top:0;border:0;background:radial-gradient(120% 90% at 100% 0%,#2a3350 0%,var(--navy-900) 60%)}
  .acc>.ah.feat .ds{color:var(--tx-claro-sec)}
  .acc>.ah.feat .pm2{border-color:rgba(236,238,242,.25)}
  .acc>.ab{border-bottom:0;padding:.4rem 0 1rem}
}

/* Menu: ao passar o mouse, um dourado suave (mais leve que o do item da seção atual), no topo e com a página rolada */
.nl:hover,.ni:hover>.nl,.ni:focus-within>.nl{background:rgba(184,149,92,.12)}
.hdr.cmp .nl:hover,.hdr.cmp .ni:hover>.nl,.hdr.cmp .ni:focus-within>.nl{background:rgba(184,149,92,.09)}
.nl.on,.nl.on:hover{background:rgba(184,149,92,.18)}
.hdr.cmp .nl.on,.hdr.cmp .nl.on:hover{background:rgba(184,149,92,.15)}
.nl{transition:background-color .55s var(--suave),color .55s var(--suave)}
