/* ═══════════════════════════════════════════════════════════════════════
   Félix & Franco — Assessoria Jurídica
   Direção: navy profundo vivo (malha de luz em movimento + poeira de ouro)
   com Fraunces no display — serifa contemporânea com peso de verdade.
   Assinatura: o "&" da sociedade em contorno dourado, flutuando em camadas
   de profundidade com chips de vidro, como uma peça de abertura.
   ═══════════════════════════════════════════════════════════════════════ */

:root{
  /* ── Paleta (única fonte de cor do site — nunca use hex fora daqui) ── */
  --tinta:#050D1D;
  --azul:#132352;
  --azul-vivo:#0B3268;
  --azul-noite:#07295A;
  --azul-ceu:#123564;
  --azul-meia-noite:#0A1B38;
  --noturno:#0A1526;
  --papel:#FAF9F6;
  --ouro:#C08A2D;
  --ouro-claro:#E8B95A;
  --ouro-brilho:#F6D48B;
  --grafite:#2E3A4E;
  --branco:#fff;
  --preto:#000;

  /* canais RGB (pra transparências: rgba(var(--x-rgb),alfa)) */
  --tinta-rgb:5,13,29;
  --azul-rgb:19,35,82;
  --azul-vivo-rgb:11,50,104;
  --azul-noite-rgb:7,41,90;
  --azul-marinho-rgb:4,30,66;
  --ouro-rgb:192,138,45;
  --ouro-claro-rgb:232,185,90;
  --ouro-brilho-rgb:246,212,139;
  --nevoa-rgb:233,238,246;
  --grafite-rgb:46,58,78;
  --branco-rgb:255,255,255;
  --preto-rgb:0,0,0;
  --areia:#F1EDE3;
  --papel-rgb:250,249,246;

  --nevoa:rgba(var(--nevoa-rgb),.82);
  --linha-ouro:rgba(var(--ouro-rgb),.4);

  /* ── Semânticos: é O QUE VIRA no tema escuro ───────────────────────── */
  --fundo:var(--papel);
  --texto:var(--grafite);
  --titulo:var(--azul);
  --texto-suave:rgba(var(--grafite-rgb),.65);
  --linha:rgba(var(--azul-rgb),.14);
  --realce:rgba(var(--azul-marinho-rgb),.035);
  --destaque:var(--ouro);
  --banda-fundo:linear-gradient(168deg,var(--branco) 0%,var(--papel) 55%,var(--areia) 100%);
  --banda-titulo:var(--azul);
  --banda-texto:var(--grafite);
  --header-veu:linear-gradient(180deg,rgba(var(--papel-rgb),.92),rgba(var(--papel-rgb),0));
  --header-veu-rolado:rgba(var(--papel-rgb),.92);
  --header-texto:rgba(var(--grafite-rgb),.9);
  --vidro-fundo:rgba(var(--branco-rgb),.66);
  --vidro-borda:rgba(var(--ouro-rgb),.35);
  --letreiro-fundo:rgba(var(--branco-rgb),.5);
  --letreiro-linha:rgba(var(--ouro-rgb),.3);
  --letreiro-texto:rgba(var(--grafite-rgb),.72);
  --amp-traco:rgba(var(--ouro-rgb),.3);
  --blob-frio:rgba(var(--azul-vivo-rgb),.12);
  --blob-ouro:rgba(var(--ouro-rgb),.14);
  --blob-frio2:rgba(var(--azul-noite-rgb),.1);
  --menu-fundo-painel:linear-gradient(165deg,var(--branco),var(--papel) 82%);
  --menu-texto:var(--grafite);
  --menu-linha:rgba(var(--ouro-rgb),.2);
  --rodape-fundo:var(--areia);
  --rodape-texto:rgba(var(--grafite-rgb),.78);
  --rodape-linha:rgba(var(--ouro-rgb),.35);

  --display:'Fraunces',Georgia,serif;
  --sans:'Albert Sans',system-ui,sans-serif;

  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-forte:cubic-bezier(.16,1,.3,1);
}

/* Tema escuro: as seções claras escurecem; as bandas navy já são escuras.
   A classe vem do tema.js (escolha salva ou preferência do sistema). */
html.tema-escuro{
  --fundo:var(--noturno);
  --texto:rgba(var(--nevoa-rgb),.8);
  --titulo:var(--branco);
  --texto-suave:rgba(var(--nevoa-rgb),.52);
  --linha:rgba(var(--nevoa-rgb),.14);
  --realce:rgba(var(--branco-rgb),.045);
  --destaque:var(--ouro-claro);
  --banda-fundo:linear-gradient(168deg,var(--tinta) 0%,var(--azul) 58%,var(--azul-noite) 100%);
  --banda-titulo:var(--branco);
  --banda-texto:var(--nevoa);
  --header-veu:linear-gradient(180deg,rgba(var(--tinta-rgb),.8),rgba(var(--tinta-rgb),0));
  --header-veu-rolado:rgba(var(--tinta-rgb),.92);
  --header-texto:rgba(var(--branco-rgb),.85);
  --vidro-fundo:rgba(var(--tinta-rgb),.62);
  --vidro-borda:rgba(var(--ouro-claro-rgb),.28);
  --letreiro-fundo:rgba(var(--tinta-rgb),.5);
  --letreiro-linha:rgba(var(--ouro-claro-rgb),.24);
  --letreiro-texto:rgba(var(--nevoa-rgb),.66);
  --amp-traco:rgba(var(--ouro-claro-rgb),.22);
  --blob-frio:rgba(var(--azul-vivo-rgb),.85);
  --blob-ouro:rgba(var(--ouro-rgb),.2);
  --blob-frio2:rgba(var(--azul-noite-rgb),.9);
  --menu-fundo-painel:linear-gradient(165deg,var(--tinta),var(--azul) 82%);
  --menu-texto:var(--nevoa);
  --menu-linha:rgba(var(--ouro-claro-rgb),.14);
  --rodape-fundo:var(--tinta);
  --rodape-texto:rgba(var(--nevoa-rgb),.6);
  --rodape-linha:rgba(var(--ouro-rgb),.25);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);color:var(--texto);background:var(--fundo);line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--ouro);outline-offset:3px;border-radius:2px}
.container{width:min(1180px,92%);margin-inline:auto}
section{scroll-margin-top:70px}

.pular{position:absolute;left:-999px;top:12px;background:var(--ouro);color:var(--tinta);padding:10px 18px;font-weight:800;z-index:300;border-radius:4px}
.pular:focus{left:12px}

/* ── Display: Fraunces com tinta de verdade ──────────────────────── */
h1,h2,h3,.logotipo-nome,.romano,.monograma{
  font-family:var(--display);
  font-variation-settings:"SOFT" 0,"WONK" 0;
  font-optical-sizing:auto;
}

/* ── Revelação no scroll (fade + subida de 18px, 0.65s — o mesmo
   ritmo do componente Reveal da landing da CineImob) ────────────── */
[data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .65s var(--ease),transform .65s var(--ease)}
[data-reveal].em-cena{opacity:1;transform:none}

/* ── Coreografia de entrada do hero (dispara com body.pronto) ────── */
.ent{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease-forte),transform .8s var(--ease-forte)}
/* A máscara ganha respiro embaixo (padding + margem negativa) para o descender
   de g/j/p não ser decepado pelo overflow:hidden da revelação. */
.linha{display:block;overflow:hidden;padding-bottom:.14em;margin-bottom:-.14em}
.linha.ent{transform:none}
.linha.ent>span{display:block;transform:translateY(128%);transition:transform .9s var(--ease-forte)}
body.pronto .ent{opacity:1;transform:none}
body.pronto .linha.ent>span{transform:none}
body.pronto .ent-1{transition-delay:.1s}
body.pronto .ent-2>span{transition-delay:.22s}
body.pronto .ent-3>span{transition-delay:.34s}
body.pronto .ent-4>span{transition-delay:.46s}
body.pronto .ent-5{transition-delay:.62s}
body.pronto .ent-6{transition-delay:.74s}
body.pronto .ent-7{transition-delay:.88s}
body.pronto .ent-8{transition-delay:1.05s}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  [data-reveal],.ent,.linha.ent>span{opacity:1!important;transform:none!important;transition:none!important}
  .blob,.chip,.letreiro-trilho,.halo,.chip-ponto,.tema-estatua{animation:none!important}
  .zap-flutuante::after{animation:none!important}
  .amp{transform:none!important}
  .tema-estatua{opacity:1!important;transition:none!important}
  #poeira{display:none}
}

/* ═══ Header ═══════════════════════════════════════════════════════ */
#topo{position:fixed;inset:0 0 auto;z-index:100;transition:background .35s ease,box-shadow .35s ease;background:var(--header-veu)}
#topo.rolado{background:var(--header-veu-rolado);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--rodape-linha)}
.barra{display:flex;align-items:center;justify-content:space-between;gap:24px;height:88px;transition:height .35s ease}
#topo.rolado .barra{height:68px}

.logotipo{display:flex;flex-direction:column;line-height:1.05}
.logotipo-nome{font-size:25px;font-weight:560;color:var(--branco);letter-spacing:.01em}
.logotipo-nome em{font-style:italic;font-weight:400;color:var(--ouro-claro)}
.logotipo-sub{font-size:10.5px;font-weight:700;letter-spacing:.36em;text-transform:uppercase;color:var(--ouro-claro);margin-top:4px}

nav{display:flex;gap:30px;font-size:13.5px;font-weight:500;letter-spacing:.03em;color:var(--header-texto)}
nav a{padding:8px 0;position:relative;white-space:nowrap}
nav a::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1.5px;background:var(--destaque);transition:right .32s var(--ease)}
nav a:hover::after{right:0}

/* ═══ Botões (brilho que varre no hover) ═══════════════════════════ */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;height:54px;padding:0 30px;font-weight:700;font-size:14.5px;letter-spacing:.02em;border-radius:4px;overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s var(--ease)}
.btn span{position:relative;z-index:2}
.btn::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 32%,rgba(var(--branco-rgb),.34) 50%,transparent 68%);transform:translateX(-120%);transition:transform .7s var(--ease)}
.btn:hover::before{transform:translateX(120%)}
.btn-ouro{background:linear-gradient(160deg,var(--ouro-claro),var(--ouro));color:var(--tinta);box-shadow:0 12px 32px rgba(var(--ouro-rgb),.32)}
.btn-ouro:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(var(--ouro-rgb),.42)}
.btn-contorno{border:1px solid var(--linha-ouro);color:var(--destaque)}
.btn-contorno:hover{border-color:var(--destaque);transform:translateY(-3px)}
.btn-topo{height:44px;padding:0 22px;font-size:13px}

/* ═══ Menu mobile: sanduíche→X + painel lateral ════════════════════ */
.menu-burguer{display:none;position:relative;width:44px;height:44px;flex:none;border:none;background:none;cursor:pointer}
.menu-burguer span{position:absolute;left:11px;right:11px;height:2px;border-radius:2px;background:var(--header-texto);transition:transform .35s var(--ease),opacity .2s ease}
.menu-burguer span:nth-child(1){top:16px}
.menu-burguer span:nth-child(2){top:22px}
.menu-burguer span:nth-child(3){top:28px}
.menu-burguer.aberto span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-burguer.aberto span:nth-child(2){opacity:0}
.menu-burguer.aberto span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

.menu-fundo{position:fixed;inset:0;z-index:150;background:rgba(var(--tinta-rgb),.6);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .35s ease}
.menu-fundo.aberto{opacity:1;pointer-events:auto}

.menu-movel{position:fixed;top:0;right:0;bottom:0;z-index:160;width:min(320px,82vw);display:flex;flex-direction:column;padding:22px 26px 32px;background:var(--menu-fundo-painel);border-left:1px solid var(--vidro-borda);box-shadow:-28px 0 60px rgba(var(--preto-rgb),.42);translate:100% 0;transition:translate .45s var(--ease-forte)}
.menu-movel.aberto{translate:0 0}
.menu-fechar{align-self:flex-end;width:40px;height:40px;border:1px solid var(--vidro-borda);border-radius:50%;background:none;color:var(--destaque);font-size:22px;line-height:1;cursor:pointer;transition:border-color .3s ease,color .3s ease}
.menu-fechar:hover{border-color:var(--destaque);color:var(--banda-titulo)}
.menu-movel-marca{display:flex;flex-direction:column;line-height:1.05;margin:24px 2px 30px}
.menu-movel-marca .logotipo-nome{font-size:22px;color:var(--branco)}
.menu-movel-links{list-style:none;display:flex;flex-direction:column}
.menu-movel-links li+li{border-top:1px solid var(--menu-linha)}
.menu-movel-links a{display:block;padding:16px 2px;font-family:var(--display);font-variation-settings:"SOFT" 0,"WONK" 0;font-size:1.15rem;font-weight:500;color:var(--menu-texto);transition:color .25s ease,padding-left .25s ease}
.menu-movel-links a:hover{color:var(--destaque);padding-left:8px}
.menu-movel-cta{margin-top:auto;width:100%}
@media (prefers-reduced-motion:reduce){.menu-burguer span,.menu-fundo,.menu-movel{transition:none}}

/* ═══ Hero ═════════════════════════════════════════════════════════ */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;overflow:hidden;color:var(--banda-titulo);background:var(--banda-fundo)}
.hero>.hero-miolo{margin-block:auto}

/* Camada 1: malha de luz viva (blobs que respiram, sem blur caro) */
.malha{position:absolute;inset:0;overflow:hidden}
.blob{position:absolute;border-radius:50%;will-change:transform}
.blob-a{width:56vw;height:56vw;left:-14vw;top:-18vw;background:radial-gradient(circle,var(--blob-frio),transparent 62%);animation:respira-a 21s ease-in-out infinite alternate}
.blob-b{width:44vw;height:44vw;right:-8vw;top:22%;background:radial-gradient(circle,var(--blob-ouro),transparent 60%);animation:respira-b 17s ease-in-out infinite alternate}
.blob-c{width:38vw;height:38vw;left:30%;bottom:-16vw;background:radial-gradient(circle,var(--blob-frio2),transparent 64%);animation:respira-a 25s ease-in-out infinite alternate-reverse}
@keyframes respira-a{from{transform:translate(0,0) scale(1)}to{transform:translate(4vw,3vw) scale(1.12)}}
@keyframes respira-b{from{transform:translate(0,0) scale(1)}to{transform:translate(-3vw,4vw) scale(1.18)}}

/* Camada 2: poeira de ouro (canvas) */
#poeira{position:absolute;inset:0;pointer-events:none}

/* Camada 3: brilho que segue o mouse (só ponteiro fino) */
.brilho-mouse{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .6s ease;background:radial-gradient(560px circle at var(--mx,50%) var(--my,40%),rgba(var(--ouro-claro-rgb),.1),transparent 62%)}
@media (pointer:fine){.hero:hover .brilho-mouse{opacity:1}}

/* Camada 4: a assinatura — o & da sociedade (recuada: agora é o halo atrás
   da estátua, não mais o centro das atenções) */
.amp{position:absolute;right:-3%;top:47%;translate:0 -50%;font-family:var(--display);font-style:italic;font-weight:400;font-size:min(56vw,720px);line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--amp-traco);user-select:none;pointer-events:none;filter:drop-shadow(0 0 44px rgba(var(--ouro-rgb),.1))}
@supports not (-webkit-text-stroke:1px black){.amp{color:rgba(var(--ouro-rgb),.05)}}

/* Camada 4.5: a estátua da Justiça — o retrato do hero, com aura dourada
   e balanço lento de mármore vivo. Some em telas estreitas (prioridade é
   a leitura do texto). */
.tema-estatua{position:absolute;z-index:3;right:7%;bottom:58px;height:min(72vh,660px);width:auto;pointer-events:none;opacity:0;transition:opacity 1.3s var(--ease-forte);animation:tema-flutua 10s ease-in-out infinite;will-change:transform}
body.pronto .tema-estatua{opacity:1;transition-delay:.55s}
/* Um só drop-shadow (não dois encadeados): a GPU isola a camada com
   will-change acima e recalcula o filtro a cada frame da animação —
   dois filtros empilhados dobravam esse custo e causavam engasgo/flicker
   em telas com placa de vídeo mais fraca. */
.tema-estatua img{display:block;height:100%;width:auto;filter:saturate(1.05) contrast(1.04) brightness(1.02) drop-shadow(0 20px 34px rgba(var(--preto-rgb),.42))}
.tema-brilho{position:absolute;left:-35%;right:-35%;top:18%;height:56%;z-index:-1;border-radius:50%;background:radial-gradient(closest-side,rgba(var(--ouro-claro-rgb),.32),rgba(var(--ouro-claro-rgb),.08) 60%,transparent 76%);filter:blur(4px)}
@keyframes tema-flutua{0%,100%{transform:translateY(0)}50%{transform:translateY(-13px)}}

/* Camada 5: chips de vidro flutuando (credenciais reais, nada inventado) */
.chip{position:absolute;z-index:3;display:flex;align-items:center;gap:10px;padding:12px 18px;border-radius:14px;border:1px solid var(--vidro-borda);background:var(--vidro-fundo);backdrop-filter:blur(10px);font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--banda-texto);box-shadow:0 18px 44px rgba(var(--preto-rgb),.35);animation:flutua 7s ease-in-out infinite alternate;will-change:transform}
.chip-a{right:24%;top:14%}
.chip-b{right:8%;bottom:24%;animation-duration:9s;animation-delay:1.2s}
.chip-ponto{width:8px;height:8px;border-radius:99px;background:var(--ouro-claro);box-shadow:0 0 0 0 rgba(var(--ouro-claro-rgb),.5);animation:pulsa 2.6s ease-out infinite}
@keyframes flutua{from{transform:translateY(-7px)}to{transform:translateY(9px)}}
@keyframes pulsa{0%{box-shadow:0 0 0 0 rgba(var(--ouro-claro-rgb),.45)}70%{box-shadow:0 0 0 11px rgba(var(--ouro-claro-rgb),0)}100%{box-shadow:0 0 0 0 rgba(var(--ouro-claro-rgb),0)}}

.hero-miolo{position:relative;z-index:4;width:min(1180px,92%);margin-inline:auto}
.hero-conteudo{max-width:880px;padding:150px 0 70px}
.olho{font-size:12.5px;font-weight:800;letter-spacing:.34em;text-transform:uppercase;color:var(--destaque);margin-bottom:28px}
.olho-escuro{color:var(--ouro)}
h1{font-size:clamp(2.6rem,5.2vw,4.5rem);font-weight:590;line-height:1.06;letter-spacing:-.015em}
h1 em{font-style:italic;font-weight:430;color:var(--destaque)}
.hero-sub{font-size:clamp(1.05rem,1.4vw,1.22rem);line-height:1.75;color:var(--banda-texto);max-width:52ch;margin-bottom:42px}
.hero-acoes{display:flex;gap:18px;flex-wrap:wrap}

/* Filete com losango, o motivo da marca */
.fio{display:flex;align-items:center;max-width:340px;margin:32px 0 26px}
.fio::before,.fio::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,var(--ouro),rgba(var(--ouro-rgb),.12))}
.fio::after{background:linear-gradient(90deg,rgba(var(--ouro-rgb),.12),var(--ouro))}
.fio span{width:7px;height:7px;background:var(--ouro-claro);rotate:45deg;margin:0 12px;flex:none}

/* Letreiro contínuo no pé do hero */
.letreiro{position:relative;z-index:4;border-top:1px solid var(--letreiro-linha);background:var(--letreiro-fundo);overflow:hidden;padding:18px 0;-webkit-mask-image:linear-gradient(90deg,transparent,var(--preto) 8%,var(--preto) 92%,transparent);mask-image:linear-gradient(90deg,transparent,var(--preto) 8%,var(--preto) 92%,transparent)}
.letreiro-trilho{display:flex;align-items:center;gap:34px;width:max-content;animation:letreiro 30s linear infinite;font-family:var(--display);font-size:17px;font-weight:480;letter-spacing:.06em;color:var(--letreiro-texto);white-space:nowrap}
.letreiro-trilho i{width:6px;height:6px;background:var(--ouro);rotate:45deg;flex:none}
.letreiro:hover .letreiro-trilho{animation-play-state:paused}
@keyframes letreiro{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ═══ Seções claras: cabeçalho comum ═══════════════════════════════ */
.secao-cabeca{max-width:680px;margin-bottom:58px}
.secao-cabeca h2{font-size:clamp(1.9rem,3.4vw,2.8rem);font-weight:570;color:var(--titulo);line-height:1.14;letter-spacing:-.01em;margin-top:14px}
.secao-cabeca .olho{margin-bottom:0}

/* ═══ Áreas: índice de autos com filetes que se desenham ═══════════ */
.areas{padding:112px 0 92px;background:var(--fundo)}
.indice{list-style:none;border-top:1px solid var(--linha)}
.indice li{position:relative;border-bottom:1px solid var(--linha)}
.indice li::before{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:0;background:linear-gradient(90deg,var(--ouro),var(--ouro-claro));transition:width .55s var(--ease);z-index:2}
.indice li:hover::before,.indice li.aberta::before{width:100%}
.indice-linha{width:100%;display:grid;grid-template-columns:92px 310px 1fr 48px;align-items:center;gap:26px;padding:34px 12px;background:none;border:none;cursor:pointer;text-align:left;font:inherit;transition:background .35s ease,padding-left .35s var(--ease)}
.indice-linha:hover{background:var(--realce);padding-left:22px}
.romano{font-size:36px;font-weight:430;color:var(--linha-ouro);line-height:1;transition:color .35s ease,transform .35s var(--ease)}
.indice-linha:hover .romano,.indice li.aberta .romano{color:var(--ouro);transform:scale(1.12)}
.indice-nome{font-family:var(--display);font-variation-settings:"SOFT" 0,"WONK" 0;font-size:clamp(1.3rem,2vw,1.7rem);font-weight:530;color:var(--titulo);line-height:1.2}
.indice-desc{font-size:14.5px;line-height:1.65;color:var(--texto);max-width:56ch}
.indice-linha .pergunta-mais{justify-self:end}
.indice-corpo{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s var(--ease)}
.indice li.aberta .indice-corpo{grid-template-rows:1fr}
.indice-corpo>div{overflow:hidden}
.indice-corpo p{font-size:15px;line-height:1.8;color:var(--texto);padding:0 40px 4px 130px}
.btn-area{height:46px;padding:0 24px;font-size:13.5px;margin:18px 40px 32px 130px}
.indice-nota{margin-top:22px;font-size:13px;color:var(--texto-suave)}
@media (prefers-reduced-motion:reduce){.indice-corpo{transition:none}}

/* ═══ Escritório + equipe (navy) ═══════════════════════════════════ */
.escritorio{position:relative;overflow:hidden;padding:112px 0;color:var(--banda-titulo);background:var(--banda-fundo)}
.amp-eco{font-size:min(44vw,540px);right:auto;left:-6%;top:80%;-webkit-text-stroke-color:var(--amp-traco);filter:none}
.escritorio-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.15fr .95fr .95fr;gap:56px;align-items:start}
.escritorio-texto h2{font-size:clamp(1.9rem,3.1vw,2.6rem);font-weight:570;line-height:1.14;margin-top:14px}
.escritorio-texto .fio{margin:26px 0}
.escritorio-texto p{font-size:15px;line-height:1.85;color:var(--banda-texto);margin-bottom:18px;max-width:46ch}

.advogada{transition:transform .45s var(--ease)}
.advogada:hover{transform:translateY(-8px)}
.advogada-foto{position:relative;aspect-ratio:1/1.06;border:1px solid var(--linha-ouro);padding:10px;margin-bottom:20px;background:var(--vidro-fundo);transition:border-color .35s ease,box-shadow .35s ease;overflow:hidden}
.advogada:hover .advogada-foto{border-color:rgba(var(--ouro-claro-rgb),.7);box-shadow:0 24px 56px rgba(var(--preto-rgb),.4)}
.advogada-foto img{width:100%;height:100%;object-fit:cover;object-position:center 20%}
.monograma{display:none;position:absolute;inset:10px;align-items:center;justify-content:center;font-style:italic;font-weight:430;font-size:82px;color:var(--ouro-claro);background:linear-gradient(150deg,var(--azul-meia-noite),var(--azul-ceu))}
.monograma::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 38%,rgba(var(--ouro-brilho-rgb),.14) 50%,transparent 62%);transform:translateX(-130%);transition:transform .9s var(--ease)}
.advogada:hover .monograma::after{transform:translateX(130%)}
.advogada-foto.sem-foto img{display:none}
.advogada-foto.sem-foto .monograma{display:flex}
.advogada h3{font-size:1.5rem;font-weight:540;line-height:1.2;min-height:2.4em;margin-bottom:14px;color:var(--banda-titulo)}
.advogada-bio{font-size:13.5px;line-height:1.8;color:var(--banda-texto);margin-bottom:12px}
.advogada-bio:last-of-type{margin-bottom:18px}
.advogada-dados{list-style:none;font-size:14px;line-height:2.05;color:var(--banda-texto)}
.advogada-dados a:hover{color:var(--destaque)}
.advogada-dados li::before{content:"";display:inline-block;width:5px;height:5px;background:var(--destaque);rotate:45deg;margin-right:12px;vertical-align:2px}

/* ═══ Diferenciais ═════════════════════════════════════════════════ */
.diferenciais{padding:112px 0;background:var(--fundo)}
.triptico{display:grid;grid-template-columns:repeat(3,1fr)}
.triptico article{position:relative;padding:8px 40px 8px 0}
.triptico article+article{padding-left:40px}
.triptico article:not(:last-child)::after{content:"";position:absolute;right:0;top:0;width:1px;height:0;background:linear-gradient(180deg,var(--linha-ouro),var(--linha));transition:height .8s var(--ease) .2s}
.triptico article.em-cena:not(:last-child)::after{height:100%}
.triptico h3{font-size:1.4rem;font-weight:540;color:var(--titulo);margin-bottom:14px}
.triptico p{font-size:14.5px;line-height:1.75}

/* ═══ Dúvidas frequentes: acordeão ═════════════════════════════════ */
.duvidas{padding:112px 0 92px;background:var(--fundo)}
.duvidas .secao-cabeca{max-width:720px}
.sanfona{max-width:860px;border-top:1px solid var(--linha)}
.pergunta{border-bottom:1px solid var(--linha)}
.pergunta-cabeca{width:100%;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:26px 4px;background:none;border:none;cursor:pointer;text-align:left;font-family:var(--display);font-variation-settings:"SOFT" 0,"WONK" 0;font-size:clamp(1.05rem,1.6vw,1.3rem);font-weight:540;color:var(--titulo);line-height:1.35;transition:color .3s ease}
.pergunta-cabeca:hover{color:var(--ouro)}
.pergunta-mais{position:relative;width:36px;height:36px;flex:none;border:1px solid var(--linha-ouro);border-radius:50%;transition:transform .45s var(--ease),background .3s ease,border-color .3s ease}
.pergunta-mais::before,.pergunta-mais::after{content:"";position:absolute;left:50%;top:50%;translate:-50% -50%;background:var(--ouro);transition:background .3s ease}
.pergunta-mais::before{width:14px;height:1.5px}
.pergunta-mais::after{width:1.5px;height:14px}
.aberta .pergunta-mais{transform:rotate(45deg);background:var(--ouro);border-color:var(--ouro)}
.aberta .pergunta-mais::before,.aberta .pergunta-mais::after{background:var(--fundo)}
.pergunta-corpo{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease)}
.pergunta.aberta .pergunta-corpo{grid-template-rows:1fr}
.pergunta-corpo>div{overflow:hidden}
.pergunta-corpo p{font-size:15px;line-height:1.8;color:var(--texto);padding:0 44px 26px 4px}
@media (prefers-reduced-motion:reduce){.pergunta-corpo{transition:none}.pergunta-mais{transition:none}}

/* ═══ WhatsApp flutuante ═══════════════════════════════════════════ */
.zap-flutuante{position:fixed;right:22px;bottom:22px;z-index:90;width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,var(--ouro-claro),var(--ouro));box-shadow:0 14px 34px rgba(var(--ouro-rgb),.4);opacity:0;translate:0 16px;pointer-events:none;transition:opacity .4s ease,translate .4s var(--ease),transform .3s var(--ease)}
.zap-flutuante.visivel{opacity:1;translate:0 0;pointer-events:auto}
.zap-flutuante:hover{transform:scale(1.08)}
.zap-flutuante svg{width:28px;height:28px;fill:var(--tinta)}
.zap-flutuante::after{content:"";position:absolute;inset:0;border-radius:50%;border:1px solid rgba(var(--ouro-claro-rgb),.55);animation:zap-pulsa 2.8s ease-out infinite;pointer-events:none}
@keyframes zap-pulsa{0%{transform:scale(1);opacity:.8}70%{transform:scale(1.55);opacity:0}100%{transform:scale(1.55);opacity:0}}

/* ═══ Contato ══════════════════════════════════════════════════════ */
.contato{background:var(--fundo)}
.contato-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;padding:20px 0 92px}
.contato-bloco h4{font-size:12px;font-weight:800;letter-spacing:.3em;text-transform:uppercase;color:var(--ouro);margin-bottom:14px}
.contato-bloco p{font-size:15px;line-height:1.85;color:var(--texto)}
.contato-bloco a:hover{color:var(--titulo)}
.link-ouro{display:inline-block;margin-top:12px;font-size:13px;font-weight:800;color:var(--ouro);border-bottom:1px solid var(--linha-ouro);padding-bottom:2px}
.link-ouro:hover{color:var(--titulo);border-color:var(--titulo)}

.chamada-final{position:relative;overflow:hidden;background:var(--banda-fundo);color:var(--banda-titulo);padding:104px 0;text-align:center}
.halo{position:absolute;left:50%;top:50%;translate:-50% -50%;width:900px;height:900px;border-radius:50%;background:radial-gradient(circle,rgba(var(--ouro-rgb),.16),transparent 58%);animation:halo-pulsa 7s ease-in-out infinite alternate;pointer-events:none}
@keyframes halo-pulsa{from{transform:scale(.92);opacity:.75}to{transform:scale(1.1);opacity:1}}
.chamada-conteudo{position:relative;z-index:2}
.chamada-conteudo h2{font-size:clamp(2.2rem,4.6vw,3.6rem);font-weight:580;margin-bottom:16px}
.chamada-conteudo p{color:var(--banda-texto);max-width:46ch;margin:0 auto 40px;font-size:1.07rem;line-height:1.7}
.chamada-conteudo .hero-acoes{justify-content:center}

/* ═══ Rodapé ═══════════════════════════════════════════════════════ */
footer{background:var(--rodape-fundo);color:var(--rodape-texto);border-top:1px solid var(--rodape-linha)}
.rodape-grade{display:grid;grid-template-columns:1.4fr .8fr 1fr 1fr;gap:56px;padding:72px 0 56px}
.rodape-col{display:flex;flex-direction:column;align-items:flex-start;gap:13px}
.rodape-col h4{font-size:11.5px;font-weight:800;letter-spacing:.3em;text-transform:uppercase;color:var(--destaque);margin-bottom:6px}
.rodape-col p{font-size:14px;line-height:1.75}
.rodape-col a{transition:color .25s ease}
.rodape-col a:hover{color:var(--destaque)}
nav.rodape-col{gap:11px}
nav.rodape-col a{font-size:14px;padding:0}
.rodape-col-marca{gap:18px;padding-right:24px}
.rodape-frase{font-size:14px;line-height:1.8;max-width:34ch}
.rodape-base{border-top:1px solid var(--rodape-linha)}
.rodape-base-linha{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:20px 0;font-size:12.5px}
.rodape-oab{letter-spacing:.16em;text-transform:uppercase;color:var(--destaque);font-size:12px}

/* ═══ Responsivo ═══════════════════════════════════════════════════ */
@media(max-width:1060px){
  nav{display:none}
  .menu-burguer{display:block}
  .chip-a{right:6%;top:20%}
  .tema-estatua{right:1%;height:min(58vh,520px);opacity:.9}
  .escritorio-grid{grid-template-columns:1fr 1fr}
  .escritorio-texto{grid-column:1/-1;max-width:640px}
}
@media(max-width:760px){
  .barra{height:74px}
  .logotipo-nome{font-size:21px}
  .btn-topo{display:none}
  .hero-conteudo{padding:132px 0 60px}
  .amp{font-size:92vw;right:-24%;top:56%;-webkit-text-stroke-color:rgba(var(--ouro-claro-rgb),.24)}
  .tema-estatua{display:none}
  .chip{display:none}
  .letreiro-trilho{font-size:15px;gap:24px}
  .indice-linha{grid-template-columns:54px 1fr 34px;grid-template-rows:auto auto;gap:6px 16px;padding:26px 4px}
  .indice-linha:hover{padding-left:4px}
  .romano{grid-column:1;grid-row:1/3;font-size:27px;padding-top:4px}
  .indice-nome{grid-column:2;grid-row:1}
  .indice-desc{grid-column:2/4;grid-row:2}
  .indice-linha .pergunta-mais{width:30px;height:30px;grid-column:3;grid-row:1}
  .indice-linha .pergunta-mais::before{width:12px}
  .indice-linha .pergunta-mais::after{height:12px}
  .indice-corpo p{padding:0 4px 4px}
  .btn-area{margin:12px 4px 28px;height:48px}
  .pergunta-corpo p{padding:0 4px 22px}
  .escritorio-grid{grid-template-columns:1fr;gap:44px}
  .triptico{grid-template-columns:1fr}
  .triptico article{padding:26px 0;border-bottom:1px solid var(--linha)}
  .triptico article+article{padding-left:0}
  .triptico article:last-child{border-bottom:none}
  .triptico article:not(:last-child)::after{display:none}
  .contato-grid{grid-template-columns:1fr;gap:32px;padding-bottom:64px}
  .rodape-grade{grid-template-columns:1fr 1fr;gap:36px;padding:56px 0 44px}
  .rodape-col-marca{grid-column:1/-1;padding-right:0}
  .rodape-base-linha{flex-direction:column;gap:8px;text-align:center;justify-content:center}
  .btn{width:100%;max-width:380px}
  .hero-acoes{flex-direction:column;align-items:stretch}
  .chamada-conteudo .hero-acoes{align-items:center}
}


/* ═══ Logo horizontal no header/menu/rodapé ════════════════════════ */
.logotipo img{height:44px;width:auto;display:block;transition:height .35s ease}
#topo.rolado .logotipo img{height:38px}
.menu-movel-marca img{height:40px;width:auto}
.rodape-col-marca img{height:44px;width:auto}
img.logo-escuro{display:none}
html.tema-escuro img.logo-claro{display:none}
html.tema-escuro img.logo-escuro{display:block}

/* ═══ Botão de tema (sol/lua) ══════════════════════════════════════ */
.tema-toggle{position:relative;width:42px;height:42px;flex:none;border:1px solid var(--vidro-borda);border-radius:50%;background:none;cursor:pointer;color:var(--destaque);transition:border-color .3s ease,transform .3s var(--ease)}
.tema-toggle:hover{border-color:var(--destaque);transform:translateY(-2px)}
.tema-toggle svg{position:absolute;inset:0;margin:auto;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;transition:opacity .3s ease,transform .45s var(--ease)}
.tema-toggle .icone-lua{opacity:1}
.tema-toggle .icone-sol{opacity:0;transform:rotate(-40deg) scale(.6)}
html.tema-escuro .tema-toggle .icone-lua{opacity:0;transform:rotate(40deg) scale(.6)}
html.tema-escuro .tema-toggle .icone-sol{opacity:1;transform:none}

/* ═══ Crédito do rodapé ════════════════════════════════════════════ */
.rodape-credito{font-size:12px;color:var(--rodape-texto)}
.rodape-credito a{color:var(--rodape-texto);font-weight:700;border-bottom:1px solid rgba(var(--ouro-rgb),.35);padding-bottom:1px;transition:color .3s ease,border-color .3s ease}
.rodape-credito a:hover{color:var(--destaque);border-color:var(--destaque)}

@media(max-width:760px){
  .logotipo img{height:36px}
  #topo.rolado .logotipo img{height:32px}
}


/* ═══ Instagram (rodapé + contato) ═════════════════════════════════ */
.rodape-social{display:inline-flex;align-items:center;gap:9px;margin-top:2px;font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--rodape-texto);border:1px solid var(--rodape-linha);border-radius:999px;padding:9px 18px;transition:color .3s ease,border-color .3s ease,transform .3s var(--ease)}
.rodape-social svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.rodape-social:hover{color:var(--destaque);border-color:var(--destaque);transform:translateY(-2px)}
.link-insta{display:inline-flex;align-items:center;gap:8px}
.link-insta svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;flex:none}
