/* Simplício Advocacia — estilos compartilhados */
@font-face{font-family:"Public Sans";src:url("fonts/public-sans-latin-wght-normal.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap;}
@font-face{font-family:"Source Serif 4";src:url("fonts/source-serif-4-latin-wght-normal.woff2") format("woff2");font-weight:200 900;font-style:normal;font-display:swap;}

:root{
  --ink:#13203B;        /* azul-marinho da marca */
  --ink-2:#1D2E52;
  --gold:#C9A227;       /* dourado do brasão */
  --gold-ink:#8A6D10;   /* dourado legível sobre branco */
  --paper:#FFFFFF;
  --mist:#EEF2F7;
  --text:#18202F;
  --muted:#4E5A70;
  --line:#D9E0EA;
  --wa:#1E9E50;
  --wa-dark:#16803F;
  --serif:"Source Serif 4", Georgia, "Times New Roman", serif;
  --sans:"Public Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --radius:12px;
}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%; scroll-padding-top:90px;}
body{margin:0; font-family:var(--sans); font-size:1.0625rem; line-height:1.6; color:var(--text); background:var(--paper);}
img{max-width:100%; height:auto; display:block;}
a{color:inherit;}
h1,h2,h3{font-family:var(--serif); font-weight:600; line-height:1.15; margin:0; letter-spacing:-0.01em;}
p{margin:0;}
ul,ol{margin:0; padding:0; list-style:none;}
:focus-visible{outline:3px solid var(--gold); outline-offset:3px; border-radius:4px;}
@media (prefers-reduced-motion: reduce){*{transition:none !important; scroll-behavior:auto !important;}}

.container{width:100%; max-width:1160px; margin:0 auto; padding:0 20px;}
@media (min-width:700px){.container{padding:0 32px;}}

/* ---------- botões ---------- */
.btn{display:inline-flex; align-items:center; justify-content:center; gap:10px; font-family:var(--sans); font-weight:700; font-size:1rem; line-height:1.2; text-decoration:none; border-radius:999px; padding:15px 26px; border:2px solid transparent; cursor:pointer; transition:background .15s, border-color .15s, color .15s;}
.btn svg{flex-shrink:0;}
.btn-wa{background:var(--wa); color:#fff;}
.btn-wa:hover{background:var(--wa-dark);}
.btn-line{border-color:rgba(255,255,255,.45); color:#fff;}
.btn-line:hover{border-color:#fff;}
.btn-line-dark{border-color:var(--line); color:var(--ink);}
.btn-line-dark:hover{border-color:var(--ink);}
.btn-sm{padding:10px 18px; font-size:.92rem;}

/* ---------- faixa de plantão ---------- */
.plantao{background:var(--gold); color:var(--ink); font-size:.92rem; font-weight:600;}
.plantao .container{display:flex; justify-content:center; align-items:center; gap:8px; min-height:38px; flex-wrap:wrap; text-align:center;}
.plantao a{font-weight:800; text-decoration:underline; text-underline-offset:3px;}

/* ---------- cabeçalho ---------- */
.site-header{background:var(--ink); color:#fff; position:sticky; top:0; z-index:50; border-bottom:1px solid rgba(255,255,255,.08);}
.site-header .container{display:flex; align-items:center; justify-content:space-between; min-height:68px; gap:20px;}
.brand{display:flex; align-items:center; gap:12px; text-decoration:none; color:#fff;}
.brand img{height:40px; width:auto;}
.brand-name{font-family:var(--serif); font-size:1.3rem; font-weight:600; line-height:1;}
.brand-name small{display:block; font-family:var(--sans); font-size:.72rem; font-weight:500; letter-spacing:.22em; color:#B9C2D3; margin-top:5px;}
.menu-btn{display:inline-flex; align-items:center; gap:8px; background:none; border:1px solid rgba(255,255,255,.3); color:#fff; font:600 .95rem var(--sans); padding:9px 14px; border-radius:999px; cursor:pointer;}
.menu-btn .bars{width:18px; height:12px; position:relative;}
.menu-btn .bars::before,.menu-btn .bars::after,.menu-btn .bars span{content:""; position:absolute; left:0; right:0; height:2px; background:var(--gold);}
.menu-btn .bars::before{top:0;} .menu-btn .bars span{top:5px;} .menu-btn .bars::after{bottom:0;}
.nav{display:none;}
.nav.open{display:flex; flex-direction:column; position:absolute; top:100%; left:0; right:0; background:var(--ink); padding:8px 20px 22px; border-top:1px solid rgba(255,255,255,.08); box-shadow:0 18px 30px rgba(0,0,0,.25);}
.nav a{color:#E6EAF2; text-decoration:none; font-weight:600; padding:13px 2px; border-bottom:1px solid rgba(255,255,255,.08);}
.nav a[aria-current="page"]{color:var(--gold);}
.nav a.btn{margin-top:14px; border-bottom:0; padding:13px 20px; color:#fff;}
@media (min-width:1080px){
  .menu-btn{display:none;}
  .nav,.nav.open{display:flex; flex-direction:row; align-items:center; gap:24px; position:static; padding:0; background:none; border:0; box-shadow:none;}
  .nav a{padding:6px 0; border:0; font-size:.95rem;}
  .nav a:not(.btn):hover{color:var(--gold);}
  .nav a.btn{margin:0 0 0 6px; padding:10px 18px;}
}

/* ---------- hero da página inicial ---------- */
.hero{background:var(--ink); color:#fff; padding:44px 0 56px;}
.hero-grid{display:grid; gap:36px;}
.hero h1{font-size:clamp(2.1rem, 1.5rem + 2.6vw, 3.4rem); max-width:16ch;}
.hero .lead{font-size:1.15rem; color:#D3DAE6; margin-top:18px; max-width:46ch;}
.actions{display:flex; flex-wrap:wrap; gap:12px; margin-top:28px;}
.signature{margin-top:26px; font-size:.95rem; color:#AEB8CB;}
.signature strong{color:#fff; font-weight:600;}
@media (min-width:960px){
  .hero{padding:72px 0 84px;}
  .hero-grid{grid-template-columns:1fr 1.05fr; gap:56px; align-items:center;}
}

/* o seletor de situação: elemento principal do site */
.chooser{background:var(--paper); color:var(--text); border-radius:16px; padding:26px 22px 14px; box-shadow:0 24px 50px rgba(0,0,0,.28);}
.chooser h2{font-size:1.55rem;}
.chooser > p{color:var(--muted); font-size:.98rem; margin-top:6px;}
.chooser ul{margin-top:16px;}
.chooser li + li{border-top:1px solid var(--line);}
.chooser a{display:grid; grid-template-columns:1fr auto; align-items:center; gap:4px 14px; padding:16px 4px; text-decoration:none;}
.chooser .c-text{font-weight:700; font-size:1.07rem; line-height:1.35; color:var(--ink);}
.chooser .c-area{grid-column:1; font-size:.88rem; color:var(--gold-ink); font-weight:600;}
.chooser svg{grid-column:2; grid-row:1 / span 2; color:var(--ink); transition:transform .15s;}
.chooser a:hover .c-text{text-decoration:underline; text-underline-offset:3px;}
.chooser a:hover svg{transform:translateX(3px);}
@media (min-width:700px){.chooser{padding:32px 32px 18px;}}

/* ---------- seções ---------- */
.section{padding:64px 0;}
.section-mist{background:var(--mist);}
.section h2{font-size:clamp(1.65rem, 1.3rem + 1.3vw, 2.3rem); max-width:24ch;}
.section .intro{color:var(--muted); margin-top:12px; max-width:60ch;}
@media (min-width:960px){.section{padding:88px 0;}}

/* como funciona: sequência real, por isso numerada */
.steps{display:grid; gap:28px; margin-top:36px; counter-reset:step;}
.steps li{counter-increment:step; position:relative; padding-left:58px;}
.steps li::before{content:counter(step); position:absolute; left:0; top:-2px; width:42px; height:42px; border-radius:50%; border:2px solid var(--gold); color:var(--ink); font:600 1.2rem/38px var(--serif); text-align:center;}
.steps h3{font-size:1.25rem;}
.steps p{color:var(--muted); margin-top:6px;}
@media (min-width:860px){.steps{grid-template-columns:repeat(3,1fr); gap:40px;}}

/* sobre */
.about{display:grid; gap:36px; align-items:start;}
.about-photo{border-radius:var(--radius); overflow:hidden; max-width:360px; aspect-ratio:4/5; background:#C9D0DB;}
.about-photo img{width:100%; height:100%; object-fit:cover; object-position:center 20%;}
.about-text p{margin-top:14px; max-width:62ch;}
.about-text .role{color:var(--muted); font-weight:600; margin-top:8px;}
.facts{display:grid; gap:18px; margin-top:28px; padding-top:24px; border-top:1px solid var(--line);}
.facts dt{font-weight:700; color:var(--ink);}
.facts dd{margin:2px 0 0; color:var(--muted);}
@media (min-width:860px){
  .about{grid-template-columns:340px 1fr; gap:64px;}
  .facts{grid-template-columns:repeat(3,1fr);}
}

/* áreas (cartões de navegação) */
.areas-grid{display:grid; gap:14px; margin-top:32px;}
.area-link{display:flex; justify-content:space-between; align-items:center; gap:16px; padding:20px 22px; background:var(--paper); border:1px solid var(--line); border-radius:var(--radius); text-decoration:none; transition:border-color .15s;}
.area-link:hover{border-color:var(--ink);}
.area-link strong{font-family:var(--serif); font-size:1.25rem; font-weight:600; color:var(--ink); display:block;}
.area-link span{color:var(--muted); font-size:.95rem;}
@media (min-width:700px){.areas-grid{grid-template-columns:repeat(2,1fr);}}
@media (min-width:1000px){.areas-grid{grid-template-columns:repeat(3,1fr);}}

/* perguntas frequentes */
.faq{margin-top:28px; max-width:820px;}
.faq details{border-bottom:1px solid var(--line);}
.faq details:first-child{border-top:1px solid var(--line);}
.faq summary{list-style:none; cursor:pointer; display:flex; justify-content:space-between; gap:18px; padding:20px 0; font-weight:700; font-size:1.08rem; color:var(--ink);}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+"; font:400 1.6rem/1 var(--sans); color:var(--gold-ink); flex-shrink:0;}
.faq details[open] summary::after{content:"\2212";}
.faq details p{padding:0 0 22px; color:var(--muted); max-width:68ch;}

/* faixa final */
.cta-band{background:var(--ink); color:#fff; padding:56px 0;}
.cta-band .container{display:grid; gap:22px;}
.cta-band h2{font-size:clamp(1.6rem, 1.3rem + 1.2vw, 2.2rem); max-width:22ch;}
.cta-band p{color:#C9D1DF; max-width:52ch;}
.cta-band .actions{margin-top:4px;}
@media (min-width:960px){.cta-band .container{grid-template-columns:1fr auto; align-items:center;}}

/* ---------- páginas de área ---------- */
.page-hero{background:var(--ink); color:#fff; padding:28px 0 56px;}
.crumbs{font-size:.9rem; color:#AEB8CB;}
.crumbs a{color:#D3DAE6;}
.page-hero-grid{display:grid; gap:36px; margin-top:22px;}
.page-hero h1{font-size:clamp(2rem, 1.45rem + 2.4vw, 3.1rem); max-width:18ch;}
.page-hero .lead{font-size:1.13rem; color:#D3DAE6; margin-top:16px; max-width:50ch;}
.panel{background:var(--paper); color:var(--text); border-radius:16px; padding:26px 24px; box-shadow:0 24px 50px rgba(0,0,0,.28); align-self:start;}
.panel h2{font-size:1.35rem;}
.panel .panel-note{color:var(--muted); font-size:.95rem; margin-top:6px;}
.panel ol{counter-reset:p; margin-top:16px;}
.panel ol li{counter-increment:p; position:relative; padding:12px 0 12px 40px; border-top:1px solid var(--line);}
.panel ol li::before{content:counter(p); position:absolute; left:0; top:12px; width:28px; height:28px; border-radius:50%; background:var(--ink); color:#fff; font:700 .9rem/28px var(--sans); text-align:center;}
.panel ul{margin-top:16px;}
.panel ul li{position:relative; padding:10px 0 10px 30px; border-top:1px solid var(--line);}
.panel ul li::before{content:""; position:absolute; left:4px; top:17px; width:12px; height:7px; border-left:2.5px solid var(--gold-ink); border-bottom:2.5px solid var(--gold-ink); transform:rotate(-45deg);}
@media (min-width:960px){
  .page-hero{padding:32px 0 80px;}
  .page-hero-grid{grid-template-columns:1.1fr 1fr; gap:64px; margin-top:34px; align-items:center;}
  .panel{padding:32px;}
}

.cases{display:grid; gap:0 48px; margin-top:30px;}
.cases li{display:flex; gap:14px; padding:16px 0; border-top:1px solid var(--line);}
.cases li::before{content:""; flex-shrink:0; width:9px; height:9px; margin-top:9px; background:var(--gold); border-radius:2px; transform:rotate(45deg);}
.cases strong{color:var(--ink);}
.cases span{display:block; color:var(--muted); font-size:.97rem;}
@media (min-width:860px){.cases{grid-template-columns:1fr 1fr;}}
.group-title{font-size:1.3rem; margin-top:40px; color:var(--ink);}
.group-title + .cases{margin-top:12px;}

/* ---------- rodapé ---------- */
.site-footer{background:#0F1A31; color:#B9C2D3; padding:56px 0 30px; font-size:.95rem;}
.footer-grid{display:grid; gap:34px;}
.site-footer .brand img{height:46px;}
.site-footer h3{font-family:var(--sans); font-size:.95rem; font-weight:700; color:#fff; margin-bottom:12px;}
.site-footer ul li{margin-bottom:8px;}
.site-footer a{color:#DCE2EC; text-decoration:none;}
.site-footer a:hover{color:var(--gold); text-decoration:underline;}
.site-footer address{font-style:normal; line-height:1.7;}
.footer-note{margin-top:40px; padding-top:22px; border-top:1px solid rgba(255,255,255,.1); font-size:.82rem; color:#8793A8; display:grid; gap:6px;}
@media (min-width:860px){.footer-grid{grid-template-columns:1.3fr 1fr 1fr 1fr;}}

/* ---------- botão de contato fixo ---------- */
.contact-bar{position:fixed; left:0; right:0; bottom:0; z-index:60; display:grid; grid-template-columns:1.4fr 1fr; gap:8px; padding:10px 12px calc(10px + env(safe-area-inset-bottom)); background:rgba(255,255,255,.97); border-top:1px solid var(--line); box-shadow:0 -6px 20px rgba(0,0,0,.08);}
.contact-bar .btn{padding:13px 10px; font-size:.97rem;}
body{padding-bottom:76px;}
@media (min-width:860px){
  body{padding-bottom:0;}
  .contact-bar{left:auto; right:24px; bottom:24px; grid-template-columns:auto; padding:0; background:none; border:0; box-shadow:none;}
  .contact-bar .btn{padding:15px 24px; box-shadow:0 10px 26px rgba(30,158,80,.35);}
  .contact-bar .btn-call{display:none;}
}

/* ajustes */
.section h2{max-width:32ch;}
@media (max-width:859px){
  .hero{padding:34px 0 44px;}
  .hero .actions{display:none;}   /* no celular a barra fixa já tem WhatsApp e Ligar */
  .hero .signature{margin-top:16px;}
  .hero-grid{gap:26px;}
}

/* ===== botões v2 ===== */
.btn{
  min-height:56px; padding:0 26px; gap:12px; font-size:1.02rem; letter-spacing:.005em;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease, border-color .15s ease, color .15s ease;
}
.btn:active{transform:translateY(1px) scale(.99);}
.btn-sm{min-height:42px; padding:0 18px; font-size:.92rem;}

/* principal: WhatsApp */
.btn-wa{
  background:linear-gradient(180deg, #25B35F 0%, #1C9A4F 100%);
  color:#fff; border:0;
  box-shadow:0 1px 0 rgba(255,255,255,.25) inset, 0 8px 20px -6px rgba(20,140,70,.65);
}
.btn-wa:hover{background:linear-gradient(180deg, #21A657 0%, #168544 100%); transform:translateY(-1px); box-shadow:0 1px 0 rgba(255,255,255,.25) inset, 0 12px 24px -6px rgba(20,140,70,.7);}
.btn-wa svg{width:22px; height:22px;}

/* secundário sobre fundo escuro: Ligar */
.btn-line{
  background:rgba(255,255,255,.07); color:#fff; border:1.5px solid rgba(255,255,255,.38);
}
.btn-line:hover{background:rgba(255,255,255,.14); border-color:#fff; transform:translateY(-1px);}
.btn-line svg{color:var(--gold);}

/* secundário sobre fundo claro */
.btn-line-dark{background:var(--ink); color:#fff; border:0; box-shadow:0 8px 18px -8px rgba(19,32,59,.6);}
.btn-line-dark:hover{background:var(--ink-2); transform:translateY(-1px);}
.btn-line-dark svg{color:var(--gold);}

/* pares de botões com a mesma largura, lado a lado ou empilhados */
.actions{display:grid; grid-template-columns:repeat(auto-fit, minmax(230px, 1fr)); gap:12px; max-width:560px;}
.actions .btn{width:100%;}
.cta-band .actions{min-width:min(100%, 520px);}

/* menu */
.nav a.btn{box-shadow:none;}

/* barra fixa do celular */
.contact-bar .btn{min-height:50px; padding:0 12px; font-size:1rem;}
@media (min-width:860px){
  .contact-bar .btn{min-height:56px; padding:0 26px; box-shadow:0 1px 0 rgba(255,255,255,.25) inset, 0 14px 30px -8px rgba(20,140,70,.7);}
}

/* setas do seletor e dos cartões de área viram botões redondos */
.chooser svg, .area-link > svg{
  box-sizing:content-box; width:18px; height:18px; padding:9px; border-radius:50%;
  background:var(--mist); color:var(--ink); flex-shrink:0;
  transition:background .15s, color .15s, transform .15s;
}
.chooser a:hover svg, .area-link:hover > svg{background:var(--ink); color:#fff; transform:translateX(2px);}
.chooser a{border-radius:10px; padding:16px 10px; margin:0 -6px;}
.chooser a:hover{background:#F6F8FB;}
.chooser a:hover .c-text{text-decoration:none;}

@media (prefers-reduced-motion: reduce){ .btn:hover, .btn:active{transform:none;} }

/* correções: texto do botão numa linha só; pares quebram para baixo quando não cabem */
.btn{white-space:nowrap;}
.actions{display:flex; flex-wrap:wrap; gap:12px; max-width:580px;}
.actions .btn{flex:1 1 230px; width:auto;}
.hero-grid, .page-hero-grid{grid-template-columns:minmax(0,1fr);}
@media (min-width:960px){
  .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);}
  .page-hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);}
}
@media (max-width:380px){ .btn{font-size:.97rem; padding:0 18px;} }

/* ===== botão WhatsApp elegante: translúcido + pulsante ===== */
.btn-wa{
  position:relative; isolation:isolate;
  background:
    linear-gradient(180deg, rgba(255,255,255,.24) 0%, rgba(255,255,255,0) 55%),
    rgba(30,165,85,.72);
  -webkit-backdrop-filter:blur(10px) saturate(150%); backdrop-filter:blur(10px) saturate(150%);
  border:1px solid rgba(255,255,255,.32);
  color:#fff; text-shadow:0 1px 1px rgba(0,0,0,.18);
  box-shadow:0 1px 0 rgba(255,255,255,.35) inset, 0 10px 24px -10px rgba(20,140,70,.75);
  animation:wa-pulse 2.6s cubic-bezier(.4,0,.2,1) infinite;
}
.btn-wa:hover{
  background:
    linear-gradient(180deg, rgba(255,255,255,.28) 0%, rgba(255,255,255,0) 55%),
    rgba(30,165,85,.88);
  border-color:rgba(255,255,255,.5);
  transform:translateY(-1px);
}
@keyframes wa-pulse{
  0%  {box-shadow:0 1px 0 rgba(255,255,255,.35) inset, 0 10px 24px -10px rgba(20,140,70,.75), 0 0 0 0 rgba(37,190,100,.45);}
  70% {box-shadow:0 1px 0 rgba(255,255,255,.35) inset, 0 10px 24px -10px rgba(20,140,70,.75), 0 0 0 14px rgba(37,190,100,0);}
  100%{box-shadow:0 1px 0 rgba(255,255,255,.35) inset, 0 10px 24px -10px rgba(20,140,70,.75), 0 0 0 0 rgba(37,190,100,0);}
}
/* sobre fundo claro o vidro precisa de mais cor para continuar legível */
.contact-bar .btn-wa{background:linear-gradient(180deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,0) 55%), rgba(28,155,80,.9);}
/* o botão pequeno do menu não pulsa, para não competir com o principal */
.nav a.btn-wa{animation:none; box-shadow:0 1px 0 rgba(255,255,255,.3) inset;}
@media (prefers-reduced-motion: reduce){ .btn-wa{animation:none;} }

/* verde mais escuro */
.btn-wa{
  background:linear-gradient(180deg, rgba(255,255,255,.18) 0%, rgba(255,255,255,0) 55%), rgba(16,112,58,.85);
  box-shadow:0 1px 0 rgba(255,255,255,.28) inset, 0 10px 24px -10px rgba(8,80,40,.85);
  animation-name:wa-pulse-dark;
}
.btn-wa:hover{background:linear-gradient(180deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,0) 55%), rgba(14,100,52,.95);}
@keyframes wa-pulse-dark{
  0%  {box-shadow:0 1px 0 rgba(255,255,255,.28) inset, 0 10px 24px -10px rgba(8,80,40,.85), 0 0 0 0 rgba(30,150,80,.5);}
  70% {box-shadow:0 1px 0 rgba(255,255,255,.28) inset, 0 10px 24px -10px rgba(8,80,40,.85), 0 0 0 14px rgba(30,150,80,0);}
  100%{box-shadow:0 1px 0 rgba(255,255,255,.28) inset, 0 10px 24px -10px rgba(8,80,40,.85), 0 0 0 0 rgba(30,150,80,0);}
}
.contact-bar .btn-wa{background:linear-gradient(180deg, rgba(255,255,255,.16) 0%, rgba(255,255,255,0) 55%), rgba(16,112,58,.96);}
.nav a.btn-wa{animation:none;}
@media (prefers-reduced-motion: reduce){ .btn-wa{animation:none;} }

/* ===== abertura da página inicial v2 ===== */
.hero-title{font-size:clamp(2.6rem, 1.6rem + 4.2vw, 4.6rem); line-height:1.02; letter-spacing:-0.02em; max-width:11ch;}
.hero-title .gold{color:var(--gold); display:inline;}
.hero .lead{font-size:1.14rem; margin-top:20px; max-width:44ch;}
.trust{display:flex; flex-wrap:wrap; gap:10px; margin-top:22px;}
.trust li{display:inline-flex; align-items:center; gap:8px; padding:8px 14px; border-radius:999px; background:rgba(255,255,255,.06); border:1px solid rgba(201,162,39,.35); color:#E6EAF2; font-size:.9rem; font-weight:600;}
.trust svg{color:var(--gold); flex-shrink:0;}
.byline{display:flex; align-items:center; gap:14px; margin-top:26px;}
.byline img{width:56px; height:56px; border-radius:50%; object-fit:cover; object-position:center 18%; border:2px solid var(--gold); flex-shrink:0;}
.byline p{font-size:.95rem; color:#AEB8CB; line-height:1.4;}
.byline strong{display:block; color:#fff; font-size:1rem;}
@media (max-width:859px){
  .hero-title{font-size:clamp(2.5rem, 9.5vw, 3.2rem);}
  .trust li{font-size:.85rem; padding:7px 12px;}
}
.hero .hero-title{font-size:clamp(2.6rem, 1.4rem + 4vw, 4.4rem); max-width:none;}
.hero .hero-title .gold{display:block;}
@media (max-width:859px){ .hero .hero-title{font-size:clamp(2.4rem, 10.5vw, 3.2rem);} }
@media (min-width:960px){
  .hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);}
  .hero .actions .btn{padding:0 20px;}
}

/* aviso do botão Ligar */
.toast{position:fixed; left:50%; bottom:calc(96px + env(safe-area-inset-bottom)); transform:translate(-50%, 16px); z-index:80; max-width:min(92vw, 420px); background:var(--ink); color:#fff; border:1px solid rgba(201,162,39,.5); border-radius:14px; padding:14px 18px; font-size:.97rem; line-height:1.45; text-align:center; box-shadow:0 18px 40px rgba(0,0,0,.3); opacity:0; pointer-events:none; transition:opacity .2s, transform .2s;}
.toast strong{color:var(--gold); font-size:1.08rem;}
.toast.show{opacity:1; transform:translate(-50%, 0);}
@media (min-width:860px){ .toast{bottom:110px;} }

/* foto do fundador centralizada no celular e no tablet */
@media (max-width:859px){
  .about-photo{margin:0 auto; width:100%; max-width:340px;}
}

/* ===== seletor de situação: cada opção abre a explicação ali mesmo ===== */
.ch-list{margin-top:14px;}
.ch-item + .ch-item{border-top:1px solid var(--line);}
.ch-item summary{list-style:none; cursor:pointer; display:grid; grid-template-columns:1fr auto; align-items:center; gap:4px 14px; padding:16px 10px; margin:0 -6px; border-radius:10px;}
.ch-item summary::-webkit-details-marker{display:none;}
.ch-item summary:hover{background:#F6F8FB;}
.ch-item summary svg{grid-column:2; grid-row:1 / span 2; transition:transform .2s, background .15s, color .15s;}
.ch-item[open] summary svg{transform:rotate(90deg); background:var(--ink); color:#fff;}
.ch-item[open] summary{background:#F6F8FB;}
.ch-body{padding:6px 4px 20px; color:var(--text); font-size:.98rem;}
.ch-body > p:first-child{color:var(--muted);}
.ch-label{font-weight:700; color:var(--ink); margin-top:14px;}
.ch-cases{margin-top:6px;}
.ch-cases li{position:relative; padding:4px 0 4px 22px;}
.ch-cases li::before{content:""; position:absolute; left:4px; top:12px; width:8px; height:8px; background:var(--gold); border-radius:2px; transform:rotate(45deg);}
.ch-actions{display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px; margin-top:16px;}
.ch-actions .btn{flex:0 0 auto;}
.ch-more{font-weight:700; color:var(--ink); text-decoration:underline; text-underline-offset:4px; text-decoration-color:var(--gold); padding:8px 0;}
.ch-more:hover{color:var(--gold-ink);}
/* isola os botões de dentro da explicação dos estilos antigos do seletor */
.chooser .ch-body a{display:inline-flex; margin:0; grid-template-columns:none;}
.chooser .ch-body a.btn{padding:0 18px; min-height:46px; border-radius:999px;}
.chooser .ch-body a.ch-more{display:inline; padding:8px 0; border-radius:0;}
.chooser .ch-body a.ch-more:hover{background:none;}
.chooser .ch-body a.btn-wa:hover{background:linear-gradient(180deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,0) 55%), rgba(14,100,52,.95);}
.chooser .ch-body a.btn-line-dark:hover{background:var(--ink-2);}
.chooser .ch-body svg, .chooser .ch-body a:hover svg{box-sizing:border-box; width:20px; height:20px; padding:0; border-radius:0; background:none; color:inherit; transform:none; grid-column:auto; grid-row:auto;}
.chooser .ch-body .btn-line-dark svg{color:var(--gold);}
.chooser .ch-body a.ch-more{text-decoration:underline; text-decoration-color:var(--gold); text-decoration-thickness:2px; text-underline-offset:5px;}
.chooser .ch-body a.ch-more::after{content:" \203A"; font-size:1.15em;}
.chooser .ch-body .btn-wa{background:linear-gradient(180deg, rgba(255,255,255,.16) 0%, rgba(255,255,255,0) 55%), rgba(16,112,58,.97);}
.chooser .ch-cases li + li{border-top:0;}
@media (max-width:520px){ .ch-actions .btn{flex:1 1 100%;} .ch-actions{gap:10px;} }

/* ===== menu do celular: interruptor sem script + ícone que vira X ===== */
.menu-toggle{position:absolute; opacity:0; width:1px; height:1px; margin:0; pointer-events:none;}
.menu-btn{cursor:pointer; -webkit-tap-highlight-color:transparent; user-select:none;}
.menu-toggle:focus-visible + .menu-btn{outline:3px solid var(--gold); outline-offset:3px;}
.menu-btn .bars::before,.menu-btn .bars::after,.menu-btn .bars span{transition:transform .25s ease, opacity .2s ease, top .25s ease, bottom .25s ease;}
.menu-toggle:checked + .menu-btn .bars::before{top:5px; transform:rotate(45deg);}
.menu-toggle:checked + .menu-btn .bars::after{bottom:5px; transform:rotate(-45deg);}
.menu-toggle:checked + .menu-btn .bars span{opacity:0;}
.menu-btn .lbl-close{display:none;}
.menu-toggle:checked + .menu-btn .lbl-open{display:none;}
.menu-toggle:checked + .menu-btn .lbl-close{display:inline;}
.menu-toggle:checked + .menu-btn{border-color:var(--gold);}
@media (max-width:1079px){
  .menu-toggle:checked ~ .nav{display:flex; flex-direction:column; position:absolute; top:100%; left:0; right:0; background:var(--ink); padding:8px 20px 22px; border-top:1px solid rgba(255,255,255,.08); box-shadow:0 18px 30px rgba(0,0,0,.25);}
}
@media (min-width:1080px){ .menu-toggle{display:none;} }

/* ===== áreas em sanfona: tocar abre a explicação ===== */
.areas-acc{display:grid; gap:12px; margin-top:28px; max-width:860px;}
.area-item{background:var(--paper); border:1px solid var(--line); border-radius:var(--radius); transition:border-color .15s, box-shadow .15s;}
.area-item[open]{border-color:var(--ink); box-shadow:0 14px 34px -18px rgba(19,32,59,.45);}
.area-item summary{list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:16px; padding:18px 20px; -webkit-tap-highlight-color:transparent;}
.area-item summary::-webkit-details-marker{display:none;}
.area-item summary strong{font-family:var(--serif); font-size:1.25rem; font-weight:600; color:var(--ink); display:block;}
.area-item summary span span{color:var(--muted); font-size:.95rem;}
.area-item summary svg{box-sizing:content-box; width:18px; height:18px; padding:9px; border-radius:50%; background:var(--mist); color:var(--ink); flex-shrink:0; transition:transform .2s, background .15s, color .15s;}
.area-item[open] summary svg{transform:rotate(90deg); background:var(--ink); color:#fff;}
.area-body{padding:0 20px 22px;}
.area-lead{color:var(--muted);}
.area-cases{display:grid; gap:0 32px; margin-top:8px;}
.area-cases li{position:relative; padding:9px 0 9px 22px; border-top:1px solid var(--line);}
.area-cases li::before{content:""; position:absolute; left:4px; top:17px; width:8px; height:8px; background:var(--gold); border-radius:2px; transform:rotate(45deg);}
.area-cases strong{color:var(--ink); display:block;}
.area-cases span{color:var(--muted); font-size:.93rem;}
@media (min-width:760px){ .area-cases{grid-template-columns:1fr 1fr;} }
.area-body .ch-more{font-weight:700; color:var(--ink); text-decoration:underline; text-decoration-color:var(--gold); text-decoration-thickness:2px; text-underline-offset:5px; padding:8px 0;}
.area-body .ch-more::after{content:" \203A"; font-size:1.15em;}
.area-body .btn-sm{min-height:46px; padding:0 18px;}
.area-body .btn-line-dark svg{color:var(--gold);}
.section-mist .area-item{background:var(--paper);}
.area-item{scroll-margin-top:84px;}
.area-body{scroll-margin-top:170px;}
/* sem script, o menu aberto rola junto com a página em vez de ficar por cima do conteúdo */
.site-header:has(.menu-toggle:checked){position:relative;}
/* barra fixa do celular: mais espaço para "Falar com o advogado" */
.contact-bar{grid-template-columns:1.75fr 1fr;}
@media (max-width:370px){ .contact-bar .btn{font-size:.9rem; gap:7px; padding:0 8px;} .contact-bar .btn svg{width:18px; height:18px;} }

/* ===== rodapé com ícones ===== */
.site-footer .fi{color:var(--gold); flex-shrink:0; margin-top:2px;}
.f-list li{margin-bottom:14px;}
.f-list a, .f-row{display:flex; gap:12px; align-items:flex-start; color:#E6EAF2; text-decoration:none;}
.f-list a:hover{color:#fff; text-decoration:none;}
.f-list a:hover small{color:#fff;}
.f-list span span, .f-list a > span{display:block; font-weight:600; color:#fff; line-height:1.35;}
.f-list small{display:block; font-weight:400; color:#B9C2D3; font-size:.9rem; margin-top:2px;}
.f-map{display:inline-block; font-style:normal; font-weight:700; font-size:.88rem; color:var(--gold); margin-top:6px; text-decoration:underline; text-underline-offset:3px;}
.f-areas li{position:relative; padding-left:18px; margin-bottom:10px;}
.f-areas li::before{content:""; position:absolute; left:2px; top:9px; width:7px; height:7px; background:var(--gold); border-radius:2px; transform:rotate(45deg);}
.f-oab{margin-top:14px; font-size:.9rem; color:#B9C2D3; line-height:1.5;}
.f-social{display:flex; gap:10px; margin-top:16px;}
.f-social a{width:42px; height:42px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; border:1px solid rgba(201,162,39,.45); background:rgba(255,255,255,.04); transition:background .15s, border-color .15s;}
.f-social a:hover{background:var(--gold); border-color:var(--gold);}
.f-social a:hover .fi{color:var(--ink);}
.f-social .fi{margin:0;}
@media (min-width:860px){ .footer-grid{grid-template-columns:1.1fr .9fr 1.1fr 1.3fr;} }
