/* Gerado por tools/montar.py a partir de src/css/ — edite lá, não aqui. */
/* ===== 00-tokens.css ===== */
/* Tokens — MWA Advocacia, direção "Contemporânea": papel quente, vinho como cor de ação e de bloco, rosa claro como apoio,
   fotos grandes com cantos arredondados. Fraunces nos títulos, Figtree no texto. */
:root{
  /* ---- cor ---- */
  --papel:#FBF7F3;        /* fundo da página */
  --branco:#FFFFFF;       /* cartões e botões sobre vinho */
  --rosa:#F3E3E1;         /* cartões de apoio, ícones de seta, faixa de aviso */
  --rosa-2:#EBD3CF;       /* hover sobre rosa */
  --linha:#EADFD8;        /* bordas de cartão e fios */
  --vinho:#6E1A2F;        /* ação (botões, links), blocos de CTA, destaques de título */
  --vinho-2:#8C2440;      /* hover do vinho */
  --tinta:#1C1416;        /* títulos e texto forte */
  --texto:#3D3336;        /* corpo */
  --texto-2:#5E5457;      /* apoio, legendas (6,6:1 sobre o papel) */
  --sobre-vinho:#F6E9EC;  /* texto secundário sobre vinho */
  --wa:#1FA855;           /* botão flutuante do WhatsApp (branco sobre ele: 3,1:1, ícone ≥ 3:1) */

  /* ---- fontes ---- */
  --f-titulo:"Fraunces","Fraunces Fallback",Georgia,serif;
  --f-texto:"Figtree","Figtree Fallback",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;

  /* ---- escala (390 → 1440 px) ---- */
  --t-display:clamp(2.75rem,1.6rem + 5.2vw,6.5rem);   /* 44 → 104: H1 da home */
  --t-h1:clamp(2.5rem,1.7rem + 3.6vw,4.5rem);         /* 40 → 72 */
  --t-h2:clamp(2rem,1.5rem + 2.3vw,3.375rem);         /* 32 → 54 */
  --t-h3:clamp(1.375rem,1.2rem + .7vw,1.75rem);       /* 22 → 28 */
  --t-lead:clamp(1.125rem,1.05rem + .4vw,1.3125rem);  /* 18 → 21 */
  --t-corpo:1.0625rem;                                 /* 17 */
  --t-peq:.9375rem;                                    /* 15 */
  --t-rotulo:.8125rem;                                 /* 13: rótulos em caixa alta */

  /* ---- espaço e forma ---- */
  --gutter:1.25rem;
  --container:80rem;
  --secao:clamp(4rem,2.8rem + 5vw,7rem);
  --r-btn:14px; --r-chip:16px; --r-card:24px; --r-bloco:32px;
  --topo-h:72px;
  --sombra:0 14px 34px rgba(110,26,47,.12);
  --dur:.2s; --ease:cubic-bezier(.2,.7,.2,1);
  --foco:2px solid var(--vinho);
}
@media (min-width:768px){:root{--gutter:2rem}}
@media (min-width:1024px){:root{--topo-h:84px}}

/* ---- fontes: arquivos gerados por tools/gerar-fontes.py, já restritos aos pesos usados ---- */
@font-face{font-family:"Fraunces";font-style:normal;font-weight:500 600;font-display:swap;
  src:url("/assets/fontes/fraunces-latin-wght500-600-normal.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Fraunces";font-style:italic;font-weight:500;font-display:swap;
  src:url("/assets/fontes/fraunces-latin-500-italic.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Figtree";font-style:normal;font-weight:400 600;font-display:swap;
  src:url("/assets/fontes/figtree-latin-wght400-600-normal.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Fallbacks com métrica ajustada (menos salto de layout enquanto a fonte carrega). Valores de tools/gerar-fontes.py, medidos
   contra Liberation Serif/Sans (métrica de Times New Roman e Arial, presentes em Windows, macOS, iOS e Linux). */
@font-face{font-family:"Fraunces Fallback";src:local("Times New Roman"),local("TimesNewRomanPSMT"),local("Liberation Serif"),local("LiberationSerif");size-adjust:116.6%;ascent-override:83.9%;descent-override:21.9%;line-gap-override:0%}
@font-face{font-family:"Figtree Fallback";font-weight:400 500;src:local("Arial"),local("ArialMT"),local("Liberation Sans"),local("LiberationSans");size-adjust:99.3%;ascent-override:95.7%;descent-override:25.2%;line-gap-override:0%}
@font-face{font-family:"Figtree Fallback";font-weight:600 700;src:local("Arial Bold"),local("Arial-BoldMT"),local("Liberation Sans Bold"),local("LiberationSans-Bold");size-adjust:94.6%;ascent-override:100.4%;descent-override:26.4%;line-gap-override:0%}

/* ===== 10-base.css ===== */
/* Base: reset, tipografia, foco, contêiner e utilitários. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--topo-h) + 16px)}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;min-height:100vh;background:var(--papel);color:var(--texto);font:400 var(--t-corpo)/1.6 var(--f-texto);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-wrap:break-word}
img,picture{display:block;max-width:100%}
img{height:auto}
h1,h2,h3,h4{margin:0;color:var(--tinta);font-family:var(--f-titulo);font-weight:500;letter-spacing:-.02em;text-wrap:balance;overflow-wrap:normal}
h1{font-size:var(--t-h1);line-height:1}
h2{font-size:var(--t-h2);line-height:1.04}
h3{font-size:var(--t-h3);line-height:1.12;letter-spacing:-.01em}
h1 em,h2 em{font-style:italic;color:var(--vinho)}
p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
figure{margin:0}
address{font-style:normal}
strong,b{font-weight:600}
a{color:var(--vinho);text-underline-offset:3px}
a:hover{color:var(--vinho-2)}
button{font:inherit;color:inherit;margin:0}
:focus-visible{outline:var(--foco);outline-offset:3px}
main:focus{outline:none}
[id]{scroll-margin-top:calc(var(--topo-h) + 16px)}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}
.c{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.ico{display:inline-block;width:20px;height:20px;flex:none;vertical-align:middle}
.sprite{display:none}
.nowrap{white-space:nowrap}
.num{font-variant-numeric:tabular-nums}
.secao{padding-block:var(--secao)}
.rotulo{display:block;margin-bottom:.75rem;font:600 var(--t-rotulo)/1.2 var(--f-texto);letter-spacing:.14em;text-transform:uppercase;color:var(--vinho)}
.lead{font-size:var(--t-lead);line-height:1.5;color:var(--texto-2)}
.pular{position:absolute;left:1rem;top:-100px;z-index:100;padding:.75rem 1rem;background:var(--vinho);color:var(--branco);border-radius:10px;font-weight:600;text-decoration:none}
.pular:focus{top:1rem}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;scroll-behavior:auto!important}}
.texto p + p{margin-top:1em}

/* ===== 20-componentes.css ===== */
/* Componentes compartilhados por todas as páginas. */

/* ===== Botões e links ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.625rem;min-height:56px;padding:.75rem 1.75rem;border:1.5px solid transparent;border-radius:var(--r-btn);
  font:600 1rem/1.2 var(--f-texto);text-decoration:none;text-align:center;cursor:pointer;transition:background-color var(--dur),color var(--dur),border-color var(--dur),transform var(--dur) var(--ease)}
.btn--vinho{background:var(--vinho);color:var(--branco)}
.btn--vinho:hover{background:var(--vinho-2);color:var(--branco);transform:translateY(-2px)}
.btn--claro{background:var(--branco);color:var(--vinho)}
.btn--claro:hover{background:var(--rosa);color:var(--vinho)}
.btn--contorno{border-color:var(--vinho);color:var(--vinho)}
.btn--contorno:hover{background:var(--rosa);color:var(--vinho)}
.btn--p{min-height:46px;padding:.5rem 1.125rem;font-size:.9375rem}
.acoes{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}
.micro{margin-top:.875rem;font-size:var(--t-peq);color:var(--texto-2)}
@media (max-width:479px){.acoes .btn{width:100%}}
.link-seta{font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.link-seta .ico{width:18px;height:18px;margin-left:.35rem;transition:transform var(--dur) var(--ease)}
.link-seta:hover .ico:last-child{transform:translateX(4px)}
.link-seta--wa .ico:first-child{width:17px;height:17px;margin:0 .45rem 0 0}

/* ===== Cabeçalho ===== */
.topo{position:sticky;top:0;z-index:50;background:rgba(251,247,243,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--linha)}
.topo__linha{display:flex;align-items:center;gap:.75rem;min-height:var(--topo-h)}
.logo{display:inline-flex;align-items:baseline;gap:.5rem;margin-right:auto;color:var(--tinta);text-decoration:none}
.logo:hover{color:var(--tinta)}
.logo__mwa{font:600 1.625rem/1 var(--f-titulo);letter-spacing:.01em}
.logo__mwa span{color:var(--vinho)}
.logo__adv{font:500 .6875rem/1 var(--f-texto);letter-spacing:.24em;color:var(--texto-2)}
.topo__wa{width:46px;padding:0}
.menu-btn{display:inline-flex;align-items:center;gap:.5rem;min-height:46px;padding:0 .25rem 0 .5rem;background:none;border:0;cursor:pointer;font:600 .8125rem/1 var(--f-texto);letter-spacing:.08em;text-transform:uppercase;color:var(--tinta)}
.menu-btn__barras{display:grid;gap:5px;width:22px}
.menu-btn__barras i{display:block;height:2px;border-radius:2px;background:var(--tinta);transition:transform var(--dur) var(--ease),opacity var(--dur)}
.menu-btn[aria-expanded="true"] .menu-btn__barras i:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-btn[aria-expanded="true"] .menu-btn__barras i:nth-child(2){opacity:0}
.menu-btn[aria-expanded="true"] .menu-btn__barras i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.menu{position:absolute;inset:100% 0 auto;background:var(--papel);border-bottom:1px solid var(--linha);box-shadow:var(--sombra);padding:.5rem var(--gutter) 1.25rem;display:grid;gap:1rem}
.menu[hidden]{display:none}
.menu__lista a{display:block;padding:.875rem 0;border-bottom:1px solid var(--linha);color:var(--tinta);text-decoration:none;font-weight:500;font-size:1.0625rem}
.menu__lista a:hover,.menu__lista a[aria-current]{color:var(--vinho)}
@media (min-width:1024px){
  .menu-btn,.topo__wa{display:none}
  .menu,.menu[hidden]{display:flex;position:static;align-items:center;gap:2rem;padding:0;border:0;box-shadow:none;background:none}
  .menu__lista{display:flex;gap:1.75rem}
  .menu__lista a{padding:.5rem 0;border:0;font-size:.9375rem;position:relative}
  .menu__lista a[aria-current]::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background:var(--vinho)}
}
html.no-js .menu-btn{display:none}
html.no-js .topo__linha{flex-wrap:wrap}
html.no-js .menu[hidden]{display:grid;position:static;box-shadow:none;border:0;flex-basis:100%;padding-inline:0}
@media (min-width:1024px){html.no-js .menu[hidden]{display:flex;flex-basis:auto}}

/* ===== Herói ===== */
.heroi{padding-block:clamp(2.5rem,1.5rem + 4vw,5rem) clamp(2.5rem,1.5rem + 3vw,4rem)}
.heroi__linha{display:grid;gap:1.5rem 3rem;align-items:end}
.heroi .lead{max-width:42ch}
@media (min-width:960px){.heroi__linha{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}}
h1.display{font-size:var(--t-display);line-height:.98;max-width:13ch}
/* Área e perfil: texto + foto grande */
.heroi__grade{display:grid;gap:2rem;align-items:center}
.heroi__foto{position:relative;margin:0;border-radius:var(--r-card);overflow:hidden;background:#2A2224;aspect-ratio:4/5}
.heroi__foto img{width:100%;height:100%;object-fit:cover;object-position:50% 15%}
.etiqueta{position:absolute;left:14px;bottom:14px;background:rgba(255,255,255,.94);border-radius:12px;padding:.5rem .875rem;font-size:.875rem;line-height:1.3;color:var(--texto-2)}
.etiqueta b{display:block;font-size:1rem;color:var(--tinta)}
@media (min-width:900px){
  .heroi__grade{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:4rem}
  .heroi__grade--foto-antes{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
  .heroi__foto{max-height:640px}
  .etiqueta{left:20px;bottom:20px;padding:.75rem 1.125rem}
}
@media (max-width:899px){.heroi__grade--foto-antes .heroi__foto{order:-1}}

/* ===== Trio de sócias (home) ===== */
.trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.625rem}
.trio__item{position:relative;display:block;border-radius:18px;overflow:hidden;aspect-ratio:3/4;background:#2A2224;text-decoration:none}
.trio__item img{width:100%;height:100%;object-fit:cover;object-position:50% 12%;transition:transform .6s var(--ease)}
.trio__item:hover img{transform:scale(1.04)}
.trio__item .etiqueta{left:8px;bottom:8px;right:8px;padding:.375rem .5rem;font-size:.75rem}
.trio__item .etiqueta b{font-size:.8125rem}
.etiqueta__area{display:block}
/* celular: só o nome, numa linha — a área em duas linhas deixava um selo maior que os outros */
@media (max-width:767px){.trio__item .etiqueta{left:50%;right:auto;transform:translateX(-50%);white-space:nowrap;text-align:center}.trio__item .etiqueta__area{display:none}}
/* celular pequeno: "Dra." numa linha e o nome na de baixo, igual nos três selos (o título nunca sai) */
@media (max-width:359px){.trio__item .etiqueta__tit{display:block;font-weight:500;font-size:.6875rem;color:var(--texto-2)}}
@media (min-width:768px){
  .trio{gap:1.25rem}.trio__item{aspect-ratio:4/5;border-radius:var(--r-card)}
  .trio__item .etiqueta{left:16px;bottom:16px;right:auto;padding:.625rem 1rem;font-size:.875rem}.trio__item .etiqueta b{font-size:1.0625rem}
}

/* ===== Situações (atalhos para o WhatsApp) ===== */
.cabeca{margin-bottom:2rem;max-width:44rem}
.cabeca .lead{margin-top:.75rem}
.cabeca--linha{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem 2rem;max-width:none}
.situacoes{display:grid;gap:.75rem}
@media (min-width:700px){.situacoes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.situacoes{grid-template-columns:repeat(3,minmax(0,1fr))}}
.situacao{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:84px;padding:1.125rem 1.25rem 1.125rem 1.5rem;background:var(--branco);border:1px solid var(--linha);border-radius:var(--r-chip);
  color:var(--tinta);text-decoration:none;font-weight:600;font-size:1.0625rem;line-height:1.35;transition:border-color var(--dur),box-shadow var(--dur),transform var(--dur) var(--ease)}
.situacao:hover{color:var(--tinta);border-color:var(--vinho);box-shadow:var(--sombra);transform:translateY(-2px)}
.situacao small{display:block;margin-bottom:.125rem;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--vinho)}
.situacao__ir{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:50%;background:var(--rosa);color:var(--vinho)}
.situacao__ir .ico{width:18px;height:18px}

/* ===== Equipe (faixa) e cartões das áreas (home) ===== */
.equipe{display:grid;margin-bottom:1rem;border-radius:var(--r-card);overflow:hidden;background:var(--vinho);color:var(--branco)}
.equipe img{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:50% 30%}
.equipe__texto{display:flex;flex-direction:column;justify-content:flex-end;gap:.625rem;padding:1.75rem}
.equipe h3{font-size:clamp(1.75rem,1.3rem + 1.6vw,2.75rem);line-height:1.05;color:var(--branco)}
.equipe .rotulo{color:var(--branco);margin-bottom:0}
.equipe p{color:var(--sobre-vinho)}
.equipe__perfis{display:flex;flex-wrap:wrap;gap:.25rem 1.25rem;margin-top:.5rem;font-weight:600}
.equipe__perfis a{color:var(--branco)}
.equipe__perfis a:hover{color:var(--sobre-vinho)}
@media (min-width:900px){
  .equipe{grid-template-columns:minmax(0,5fr) minmax(0,7fr);min-height:440px}
  .equipe picture{order:2}
  .equipe img{height:100%;aspect-ratio:auto}
  .equipe__texto{padding:2.75rem}
}
.areas{display:grid;gap:1rem}
@media (min-width:760px){.areas{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cartao{position:relative;display:flex;flex-direction:column;justify-content:flex-end;gap:.5rem;aspect-ratio:4/5;padding:1.75rem;border-radius:var(--r-card);overflow:hidden;text-decoration:none}
@media (min-width:760px){.cartao{aspect-ratio:3/4.4;padding:1.5rem}}
@media (min-width:1100px){.cartao{padding:1.75rem}}
.cartao h3{font-size:clamp(1.5rem,1.2rem + .9vw,2rem);line-height:1.05;color:inherit}
.cartao p{font-size:var(--t-peq);line-height:1.5}
.cartao .rotulo{margin-bottom:auto}
.cartao--foto{color:var(--branco);background:#2A2224}
.cartao--foto:hover{color:var(--branco)}
.cartao--foto picture,.cartao--foto img{position:absolute;inset:0;width:100%;height:100%}
.cartao--foto img{object-fit:cover;object-position:50% 6%;transition:transform .6s var(--ease)}
.cartao--foto:hover img{transform:scale(1.04)}
.cartao--foto::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,20,22,.45) 0,transparent 18%,transparent 52%,rgba(28,20,22,.96) 80%)}
.cartao--foto>:not(picture){position:relative;z-index:1}
.cartao--foto .rotulo{color:var(--branco)}
.cartao--foto p{color:rgba(255,255,255,.88)}
.cartao__ir{display:inline-flex;align-items:center;gap:.4rem;margin-top:.5rem;font-weight:600;font-size:var(--t-peq)}
.cartao__ir .ico{width:18px;height:18px;transition:transform var(--dur) var(--ease)}
.cartao:hover .cartao__ir .ico{transform:translateX(4px)}

/* ===== Como funciona (home): painel rosa, passos ligados por uma linha ===== */
.como{padding:clamp(2.5rem,1.75rem + 3vw,4.5rem) 1.25rem;border-radius:var(--r-bloco);background:var(--rosa);text-align:center}
.como__cabeca{max-width:40rem;margin:0 auto clamp(2.25rem,1.5rem + 2vw,3.5rem)}
.como__cabeca .lead{margin-top:.875rem}
.passos{display:grid;gap:2.5rem;max-width:62rem;margin-inline:auto}
.passo{position:relative;display:grid;justify-items:center;align-content:start;gap:.5rem}
.passo__ico{position:relative;z-index:1;display:grid;place-items:center;width:84px;height:84px;margin-bottom:.75rem;border-radius:50%;background:var(--vinho);color:var(--branco);box-shadow:0 0 0 8px var(--rosa)}
.passo__ico .ico{width:34px;height:34px}
.passo__num{position:absolute;top:-4px;right:-4px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--branco);color:var(--vinho);font:600 .9375rem/1 var(--f-titulo);box-shadow:0 2px 8px rgba(110,26,47,.18)}
.passo h3{font-size:1.5rem}
.passo p{max-width:26ch;color:var(--texto-2)}
/* linha que liga os passos: vertical no celular, horizontal a partir de 860 px */
/* celular: um traço curto entre o texto de um passo e o ícone do seguinte */
.passo:not(:last-child)::after{content:"";position:absolute;left:50%;bottom:-2.125rem;height:1.75rem;border-left:2px dashed rgba(110,26,47,.35)}
@media (min-width:860px){
  .passos{grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem}
  .passo:not(:last-child)::after{left:calc(50% + 42px);top:42px;bottom:auto;width:calc(100% - 84px + 2rem);height:0;border-left:0;border-top:2px dashed rgba(110,26,47,.35)}
}
.como__acao{margin-top:clamp(2rem,1.5rem + 2vw,3rem)}

/* ===== Serviços (páginas de área) ===== */
.servicos{display:grid;gap:1rem}
@media (min-width:760px){.servicos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.servicos{grid-template-columns:repeat(3,minmax(0,1fr))}}
.servico{display:flex;flex-direction:column;gap:.75rem;padding:1.75rem;border-radius:var(--r-card);background:var(--branco);border:1px solid var(--linha)}
.servico h3{font-size:1.5rem}
.servico p{color:var(--texto-2)}
.servico .link-seta{margin-top:auto;padding-top:.5rem}
.servico--destaque{background:var(--vinho);border-color:var(--vinho)}
.servico--destaque h3,.servico--destaque .link-seta,.servico--destaque .link-seta:hover{color:var(--branco)}
.servico--destaque p{color:var(--sobre-vinho)}
.selo{align-self:flex-start;padding:.3125rem .75rem;border-radius:999px;background:var(--rosa);color:var(--vinho);font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.servico__itens{display:flex;flex-wrap:wrap;gap:.5rem}
.servico__itens li{padding:.375rem .75rem;border-radius:999px;background:var(--papel);border:1px solid var(--linha);font-size:.875rem;color:var(--texto)}

/* ===== Faixa de aviso (trabalhista) ===== */
.aviso{display:grid;gap:.75rem;padding:1.75rem 2rem;border-radius:var(--r-card);background:var(--rosa)}
.aviso p{font-size:var(--t-lead);line-height:1.45;color:var(--tinta)}
.aviso strong{font-family:var(--f-titulo);font-weight:600;font-size:clamp(1.5rem,1.25rem + 1vw,2rem);line-height:1.1;color:var(--vinho)}

/* ===== Quem cuida (páginas de área) ===== */
.quem{display:grid;gap:1.5rem;align-items:center;padding:1.5rem;border-radius:var(--r-card);background:var(--branco);border:1px solid var(--linha)}
.quem img{width:112px;height:112px;border-radius:50%;object-fit:cover;object-position:50% 30%}
.quem h2{font-size:1.75rem}
.quem p{color:var(--texto-2);margin-top:.375rem}
.quem .acoes{margin-top:1rem}
@media (min-width:760px){.quem{grid-template-columns:auto 1fr;padding:2rem 2.25rem;gap:2rem}.quem img{width:136px;height:136px}}

/* ===== Dúvidas (acordeão) ===== */
.duvidas{display:grid;gap:2.5rem}
@media (min-width:1024px){.duvidas{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:3rem;align-items:start}}
.faq__lista{display:grid;gap:.625rem}
.faq__item{border-radius:var(--r-chip);background:var(--branco);border:1px solid var(--linha);transition:border-color var(--dur)}
.faq__item:has(.faq__q[aria-expanded=true]){border-color:var(--vinho)}
.faq__h{margin:0;font:inherit}
.faq__q{all:unset;box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:1rem;align-items:center;width:100%;min-height:64px;padding:1rem 1rem 1rem 1.375rem;cursor:pointer;
  font:600 1.0625rem/1.4 var(--f-texto);color:var(--tinta);border-radius:var(--r-chip)}
.faq__q:focus-visible{outline:var(--foco);outline-offset:2px}
.faq__area{display:block;margin-bottom:.125rem;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--vinho)}
.faq__ico{position:relative;width:36px;height:36px;border-radius:50%;background:var(--rosa);transition:transform var(--dur) var(--ease),background-color var(--dur)}
.faq__ico::before,.faq__ico::after{content:"";position:absolute;inset:0;margin:auto;width:14px;height:2px;border-radius:2px;background:var(--vinho)}
.faq__ico::after{transform:rotate(90deg)}
.faq__q[aria-expanded=true] .faq__ico{transform:rotate(45deg);background:var(--rosa-2)}
.faq__r{padding:0 1.375rem;color:var(--texto);max-width:68ch}
.faq__r > *{margin:0 0 .875rem}
.faq__r > :last-child{margin-bottom:1.375rem}
.faq__r ul{list-style:disc;padding-left:1.25rem}
.faq__r:not([hidden]){animation:faq-entrar var(--dur) var(--ease)}
@keyframes faq-entrar{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
html.no-js .faq__r[hidden]{display:block;content-visibility:visible}
html.no-js .faq__ico{display:none}

/* ===== O que separar ===== */
.separar{padding:1.75rem;border-radius:var(--r-card);background:var(--rosa)}
.separar h3{font-size:1.5rem;margin-bottom:1rem}
.separar li{position:relative;padding:.4375rem 0 .4375rem 1.625rem;border-top:1px solid var(--rosa-2);font-size:var(--t-peq);line-height:1.45}
.separar li:first-child{border-top:0}
.separar li::before{content:"";position:absolute;left:0;top:.95em;width:10px;height:10px;border-radius:50%;background:var(--vinho)}
@media (min-width:1024px){.separar{position:sticky;top:calc(var(--topo-h) + 24px)}}

/* ===== Bloco de chamada (CTA final) ===== */
.bloco{margin-inline:auto;max-width:calc(var(--container) + 2.5rem);padding-inline:1rem;margin-bottom:var(--secao)}
.bloco__miolo{display:grid;justify-items:center;gap:1rem;padding:clamp(3.5rem,2.5rem + 4vw,6rem) 1.5rem;border-radius:var(--r-bloco);background:var(--vinho);color:var(--branco);text-align:center}
.bloco h2{color:var(--branco);max-width:18ch}
.bloco h2 em{color:var(--rosa)}
.bloco p{max-width:46ch;color:var(--sobre-vinho)}
.bloco .btn{margin-top:.75rem}
.bloco :focus-visible{outline-color:var(--branco)}

/* ===== Botão flutuante do WhatsApp ===== */
.wa-flutua{position:fixed;right:16px;bottom:16px;z-index:40;display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:var(--wa);color:var(--branco);box-shadow:0 10px 28px rgba(0,0,0,.22);transition:transform var(--dur) var(--ease)}
.wa-flutua:hover{color:var(--branco);transform:scale(1.06)}
.wa-flutua .ico{width:30px;height:30px}
@media (min-width:768px){.wa-flutua{right:24px;bottom:24px}}

/* ===== Rodapé (centralizado) ===== */
.rodape{padding:3.5rem 0 6rem;border-top:1px solid var(--linha);font-size:var(--t-peq);color:var(--texto-2);text-align:center}
.rodape__grade{display:grid;gap:2.25rem;justify-items:center}
@media (min-width:768px){.rodape__grade{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.rodape__marca{grid-column:1/-1}}
@media (min-width:1100px){.rodape__grade{grid-template-columns:repeat(3,minmax(0,1fr))}}
.rodape__marca{display:grid;justify-items:center}
.rodape__titulo{margin-bottom:.875rem;font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--tinta)}
.rodape__lista{display:grid;gap:.5rem;justify-items:center}
.rodape a{color:var(--texto-2);text-decoration:none}
.rodape a:hover{color:var(--vinho);text-decoration:underline}
.rodape a[aria-current]{color:var(--vinho);font-weight:600}
.rodape .logo,.rodape .logo:hover{margin-right:0;color:var(--tinta);text-decoration:none}
.rodape__frase{margin-top:.875rem;max-width:36ch}
.rodape__oab{display:block;font-size:.875rem}
.rodape__legal{max-width:62rem;margin:2.75rem auto 0;padding-top:1.5rem;border-top:1px solid var(--linha);display:grid;gap:.5rem;font-size:.875rem}

/* ===== 90-redes.css ===== */
/* Redes de segurança que precisam vir depois dos componentes (mesma especificidade: vence a última regra). */

/* Cores forçadas (Alto Contraste do Windows): o sistema troca fundos por Canvas e zera sombras. Ornamentos sem texto ficam
   em CanvasText; forced-color-adjust:none só neles (num bloco com texto desligaria o tema do usuário no bloco inteiro). */
@media (forced-colors:active){
  .menu-btn__barras i,.faq__ico::before,.faq__ico::after,.separar li::before,.menu__lista a[aria-current]::after{forced-color-adjust:none;background:CanvasText}
  .cartao,.equipe,.servico,.como,.faq__item,.situacao,.aviso,.separar,.quem,.bloco__miolo{border:1px solid CanvasText}
}

@media print{
  .topo,.wa-flutua,.btn,.situacoes,.pular{display:none}
  body,.bloco__miolo,.servico--destaque,.equipe{background:#fff!important;color:#000!important}
  .cartao--foto::after{display:none}
  a[href^="https://wa.me"]::after{content:" (WhatsApp: +55 32 98457-9905)";font-size:.875rem}
  .faq__r[hidden]{display:block;content-visibility:visible}
}
