@font-face{font-family:"Atkinson Hyperlegible Next";src:url("/assets/fontes/atkinson-hyperlegible-next.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap;}
@font-face{font-family:"Montserrat";src:url("/assets/fontes/montserrat-numeros.woff2") format("woff2");font-weight:200 300;font-style:normal;font-display:swap;unicode-range:U+0020,U+0025,U+002E,U+0030-0039,U+0069,U+006D-006E;}
/* ===== Tokens (tema claro por padrão; escuro acompanha o sistema) ===== */
:root{
  --papel:#FFFFFF; --nevoa:#F0F5F4; --realce:#E2F0EC;
  --tinta:#002417; --texto:#025D54; --mata:#17524C; --teal:#0A8C7F; --sobre-teal:#FFFFFF;
  --link:#025D54; --linha:#D6E3E0; --linha-forte:#7D938E; --unidade:#F3F8F7;
  --btn-bg:#025D54; --btn-fg:#FFFFFF;
  --e-bg:#03322C; --e-bg-2:#0A3F37; --e-tinta:#FFFFFF; --e-texto:#D3E6E2; --e-mata:#A9C8C2;
  --e-acento:#74D1C3; --e-grafico:#2FB3A4; --e-linha:rgba(211,230,226,.16); --e-linha-forte:#4E8A81;
  --fonte:"Atkinson Hyperlegible Next","Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --pessoa:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 22'%3E%3Ccircle cx='7' cy='4.4' r='3.6'/%3E%3Cpath d='M1.8 22v-7.4a5.2 5.2 0 0 1 10.4 0V22z'/%3E%3C/svg%3E");
  --icone-unidade:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath d='M4 28V11l11-7 11 7v17h-8v-8h-6v8z'/%3E%3C/svg%3E");
  color-scheme:light; box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px); padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --papel:#03322C; --nevoa:#073A33; --realce:#0B4A41;
    --tinta:#FFFFFF; --texto:#D3E6E2; --mata:#A9C8C2; --teal:#2FB3A4; --sobre-teal:#03322C;
    --link:#74D1C3; --linha:rgba(211,230,226,.14); --linha-forte:#4E8A81; --unidade:#0A4239;
    --btn-bg:#74D1C3; --btn-fg:#03322C; --e-bg:#011F1A; --e-bg-2:#06302A; color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --papel:#03322C; --nevoa:#073A33; --realce:#0B4A41;
  --tinta:#FFFFFF; --texto:#D3E6E2; --mata:#A9C8C2; --teal:#2FB3A4; --sobre-teal:#03322C;
  --link:#74D1C3; --linha:rgba(211,230,226,.14); --linha-forte:#4E8A81; --unidade:#0A4239;
  --btn-bg:#74D1C3; --btn-fg:#03322C; --e-bg:#011F1A; --e-bg-2:#06302A; color-scheme:dark;
}
.claro{ --bg:var(--papel); --c-tinta:var(--tinta); --c-texto:var(--texto); --c-mata:var(--mata); --c-acento:var(--teal); --c-acento-txt:var(--teal); --c-sobre-acento:var(--sobre-teal); --c-link:var(--link); --c-linha:var(--linha); --c-linha-forte:var(--linha-forte); --c-btn-bg:var(--btn-bg); --c-btn-fg:var(--btn-fg); --c-unidade:var(--unidade); --c-realce:var(--realce); background:var(--bg); color:var(--c-texto); }
.claro.nevoa{ --bg:var(--nevoa); }
.escuro{ --bg:var(--e-bg); --c-tinta:var(--e-tinta); --c-texto:var(--e-texto); --c-mata:var(--e-mata); --c-acento:var(--e-grafico); --c-acento-txt:var(--e-acento); --c-sobre-acento:#03322C; --c-link:var(--e-acento); --c-linha:var(--e-linha); --c-linha-forte:var(--e-linha-forte); --c-btn-bg:var(--e-acento); --c-btn-fg:#03322C; --c-unidade:var(--e-bg-2); --c-realce:var(--e-bg-2); background:var(--bg); color:var(--c-texto); }

/* ===== Base ===== */
*,*::before,*::after{ box-sizing:inherit; }
html{ background:var(--e-bg); scroll-behavior:smooth; scroll-padding-top:calc(env(safe-area-inset-top,0px) + 84px); -webkit-text-size-adjust:100%; text-size-adjust:100%; }
body{ margin:0; background:var(--papel); color:var(--texto); font-family:var(--fonte); font-size:1.0625rem; line-height:1.62; font-kerning:normal; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
@media (min-width:760px){ body{ font-size:1.125rem; } }
a{ color:var(--c-link); text-decoration-thickness:1px; text-underline-offset:.2em; }
a:hover{ text-decoration-thickness:2px; }
:focus-visible{ outline:3px solid var(--c-link); outline-offset:3px; border-radius:6px; }
p{ margin:0; max-width:62ch; }
figure{ margin:0; }
ul,ol,dl,dd{ margin:0; padding:0; }
h1,h2,h3{ margin:0; }
.visualmente-oculto{ position:absolute!important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; }
.pular{ position:absolute; left:16px; top:-60px; z-index:100; background:#74D1C3; color:#03322C; padding:10px 16px; border-radius:8px; font-weight:700; text-decoration:none; }
.pular:focus{ top:calc(env(safe-area-inset-top,0px) + 10px); }
.nowrap{ white-space:nowrap; }
.pagina[hidden]{ display:none!important; }

/* ===== Tipografia ===== */
.h1,.h1p,.h2,.h3{ color:var(--c-tinta); text-wrap:balance; }
.h1{ font-weight:780; font-size:clamp(2.55rem, 1.3rem + 4.3vw, 4.8rem); line-height:1.02; letter-spacing:-.032em; max-width:15ch; }
.h1p{ font-weight:760; font-size:clamp(2.2rem, 1.3rem + 3.1vw, 3.85rem); line-height:1.05; letter-spacing:-.028em; max-width:19ch; }
.h2{ font-weight:740; font-size:clamp(1.85rem, 1.2rem + 2.2vw, 3.05rem); line-height:1.08; letter-spacing:-.022em; max-width:22ch; }
.h3{ font-weight:720; font-size:clamp(1.18rem, 1.07rem + .4vw, 1.38rem); line-height:1.25; letter-spacing:-.01em; }
.h1:focus,.h1p:focus{ outline:none; }
.sub{ font-size:clamp(1.12rem, 1rem + .5vw, 1.4rem); line-height:1.4; font-weight:640; color:var(--c-acento-txt); max-width:34ch; }
.lead{ font-size:clamp(1.14rem, 1.02rem + .45vw, 1.36rem); line-height:1.5; color:var(--c-texto); max-width:44ch; }
.nota{ font-size:.875rem; line-height:1.55; color:var(--c-mata); max-width:64ch; }
.nota strong,.nota .rotulo-fig{ color:var(--c-tinta); font-weight:720; }
.nota a{ color:inherit; }
.rotulo-fig{ font-weight:740; color:var(--c-tinta); }
.frase-num{ font-size:clamp(1.38rem, 1rem + 1.55vw, 2.3rem); line-height:1.36; font-weight:620; letter-spacing:-.012em; color:var(--c-tinta); max-width:33ch; }
/* Números em Montserrat leve, o mesmo desenho do "tempo" do logo */
.num{ font-family:"Montserrat",var(--fonte); font-weight:260; font-size:1.5em; line-height:1; letter-spacing:-.03em; color:var(--c-acento-txt); white-space:nowrap; }

/* ===== Layout ===== */
.envelope{ width:100%; max-width:1200px; margin-inline:auto; padding-inline:clamp(20px, 5vw, 64px); }
.secao{ padding-block:clamp(84px, 10vw, 148px); }
.topo-pagina{ padding-block:clamp(52px, 7vw, 104px) clamp(68px, 8vw, 120px); }
.bloco + .bloco{ margin-top:clamp(96px, 11vw, 160px); }
.pilha > * + *{ margin-top:1.1rem; }
.pilha > .h1 + *,.pilha > .h1p + *,.pilha > .h2 + *{ margin-top:1.4rem; }
.coluna{ max-width:46rem; }
.apoio{ margin-top:clamp(28px, 3vw, 40px); }
.dividido{ display:grid; gap:56px; align-items:center; }
@media (min-width:980px){ .dividido{ grid-template-columns:minmax(0,1fr) minmax(0,.85fr); gap:88px; } }
.anotado{ display:grid; gap:18px; margin-top:clamp(32px, 4vw, 48px); }
.anotado > .nota{ padding-top:12px; border-top:1px solid var(--c-linha); }
@media (min-width:980px){ .anotado{ grid-template-columns:minmax(0,1fr) 270px; column-gap:80px; align-items:end; } }

/* ===== Links e botões ===== */
.btn{ display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:0 24px; border-radius:10px; border:0; font:inherit; font-size:1rem; font-weight:720; line-height:1.2; text-decoration:none; cursor:pointer; }
.btn-primario{ background:var(--c-btn-bg); color:var(--c-btn-fg); }
.btn-primario:hover{ filter:brightness(1.07); }
.mais{ display:inline-flex; align-items:center; min-height:44px; font-weight:720; color:var(--c-tinta); text-decoration:underline; text-decoration-color:var(--c-acento); text-decoration-thickness:2px; text-underline-offset:.32em; }
.mais:hover{ text-decoration-thickness:3px; }
.acoes{ display:flex; flex-wrap:wrap; align-items:center; gap:12px 30px; }

/* ===== Topo ===== */
.topo{ position:sticky; top:env(safe-area-inset-top,0px); z-index:50; border-bottom:1px solid transparent; transition:border-color .2s; }
.topo.rolou{ border-bottom-color:var(--e-linha); }
.topo-in{ display:flex; align-items:center; justify-content:space-between; gap:24px; min-height:68px; }
.marca{ display:inline-flex; color:var(--e-tinta); border-radius:6px; }
.marca svg{ height:26px; width:auto; display:block; }
@media (min-width:760px){ .marca svg{ height:28px; } }
.nav{ display:none; }
.nav a{ color:var(--e-texto); text-decoration:none; font-size:.98rem; font-weight:620; }
.nav a:hover{ color:var(--e-tinta); }
.nav a[aria-current="page"]:not(.btn){ color:var(--e-tinta); text-decoration:underline; text-decoration-color:var(--e-acento); text-decoration-thickness:2px; text-underline-offset:.5em; }
.nav .btn{ min-height:42px; padding:0 18px; color:#03322C; }
.nav .btn[aria-current="page"]{ box-shadow:0 0 0 2px var(--e-bg), 0 0 0 4px var(--e-acento); }
.menu-btn{ display:inline-flex; align-items:center; gap:10px; min-height:44px; padding:0 14px; border-radius:10px; border:1.5px solid var(--e-linha-forte); background:transparent; color:var(--e-tinta); font:inherit; font-size:1rem; font-weight:700; cursor:pointer; }
.menu-btn span.barras{ width:18px; height:12px; position:relative; display:inline-block; }
.menu-btn span.barras::before,.menu-btn span.barras::after{ content:""; position:absolute; left:0; right:0; height:2px; background:currentColor; border-radius:2px; transition:transform .2s; }
.menu-btn span.barras::before{ top:2px; } .menu-btn span.barras::after{ bottom:2px; }
.menu-btn[aria-expanded="true"] span.barras::before{ transform:translateY(3px) rotate(45deg); }
.menu-btn[aria-expanded="true"] span.barras::after{ transform:translateY(-3px) rotate(-45deg); }
.nav-movel{ display:none; border-top:1px solid var(--e-linha); padding:12px 0 24px; }
.nav-movel.aberto{ display:block; }
.nav-movel a{ display:block; padding:14px 0; color:var(--e-tinta); font-size:1.2rem; font-weight:700; text-decoration:none; border-bottom:1px solid var(--e-linha); }
.nav-movel a[aria-current="page"]{ color:var(--e-acento); }
.nav-movel .btn,.nav-movel .btn[aria-current="page"]{ margin-top:20px; display:flex; color:#03322C; border-bottom:0; }
@media (min-width:980px){ .nav{ display:flex; align-items:center; gap:30px; } .menu-btn,.nav-movel,.nav-movel.aberto{ display:none; } }

/* ===== Abertura ===== */
.hero{ padding-block:clamp(40px, 6vw, 88px) clamp(64px, 8vw, 116px); overflow:hidden; }
.hero-grade{ display:grid; gap:40px; align-items:center; }
@media (min-width:980px){ .hero-grade{ grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:56px; } }
.hero .acoes{ margin-top:2rem; }
.credencial{ margin-top:2.4rem!important; padding-top:18px; border-top:1px solid var(--c-linha); font-size:.95rem; line-height:1.5; color:var(--c-mata); max-width:46ch; }
.credencial a{ color:var(--c-tinta); }
.rede-canvas{ display:block; width:100%; height:clamp(280px, 72vw, 460px); }
@media (min-width:980px){ .rede-canvas{ height:520px; } }
.rede-fig figcaption{ margin-top:12px; font-size:.9rem; line-height:1.5; color:var(--c-mata); max-width:50ch; min-height:3em; }
.rede-fig[data-fase="0"] .fase-1,.rede-fig[data-fase="1"] .fase-0{ display:none; }

/* ===== Figura: tempo total de duas alternativas ===== */
.tf{ display:grid; gap:30px; margin-top:clamp(40px, 5vw, 64px); max-width:1040px; }
.tf-intro{ font-weight:720; color:var(--c-tinta); }
.tf-linha{ display:grid; gap:10px; }
@media (min-width:760px){ .tf-linha{ grid-template-columns:200px minmax(0,1fr); gap:28px; align-items:end; } }
.tf-rot{ display:flex; flex-direction:column; line-height:1.3; }
.tf-rot strong{ color:var(--c-tinta); font-size:1.12rem; font-weight:760; }
.tf-rot span{ color:var(--c-mata); font-size:.95rem; }
.tf-trilha{ display:flex; align-items:flex-end; }
.tf-trilha.com-rotulos{ padding-top:28px; }
.tf-pessoa{ flex:none; width:16px; height:26px; background:var(--c-tinta); -webkit-mask:var(--pessoa) center/contain no-repeat; mask:var(--pessoa) center/contain no-repeat; }
.tf-desloc{ position:relative; flex:0 0 calc(var(--d) * 1%); height:4px; margin:0 6px 11px; border-radius:2px; background:var(--c-mata); }
.tf-unidade{ flex:none; width:30px; height:30px; background:var(--c-tinta); -webkit-mask:var(--icone-unidade) center/contain no-repeat; mask:var(--icone-unidade) center/contain no-repeat; }
.tf-espera{ position:relative; flex:0 0 calc(var(--e) * 1%); height:24px; margin:0 0 0 6px; }
.tf-fila{ position:absolute; inset:0; background:var(--c-acento); -webkit-mask:var(--pessoa) left bottom/14px 22px round no-repeat; mask:var(--pessoa) left bottom/14px 22px round no-repeat; }
.tf-seg{ position:absolute; left:0; bottom:calc(100% + 8px); font-size:.82rem; line-height:1.2; color:var(--c-mata); white-space:nowrap; }
.tf-espera .tf-seg{ bottom:calc(100% + 6px); }
.tf-fim{ flex:none; width:18px; height:18px; margin:0 0 4px 8px; border-radius:50%; border:3px solid var(--c-tinta); }
.tf-chega{ margin-top:12px; font-weight:740; color:var(--c-tinta); font-size:.98rem; }
.tf-linha .tf-chega{ margin-top:2px; }
@media (min-width:760px){ .tf-chega{ grid-column:2; margin-left:calc((var(--d) + var(--e)) * 1% + 48px); } }
.tf .nota{ margin-top:4px; }

/* ===== Percursos (linhas de etapas) ===== */
.percursos{ display:grid; gap:clamp(44px, 5vw, 64px); margin-top:clamp(36px, 4vw, 52px); }
.percurso-rot{ font-weight:760; color:var(--c-tinta); margin-bottom:16px; }
.percurso{ list-style:none; display:grid; margin-top:clamp(32px, 4vw, 48px); max-width:1100px; }
.percursos .percurso{ margin-top:0; }
.parada{ position:relative; display:grid; grid-template-columns:30px minmax(0,1fr); column-gap:12px; padding-bottom:24px; }
.parada::before{ content:""; grid-row:1; width:14px; height:14px; margin:5px 0 0 8px; border-radius:50%; border:2px solid var(--c-linha-forte); background:var(--bg); position:relative; z-index:1; }
.parada::after{ content:""; position:absolute; left:14px; top:24px; bottom:0; width:2px; background:var(--c-linha-forte); opacity:.6; }
.parada:last-child{ padding-bottom:0; }
.parada:last-child::after{ display:none; }
.parada .rot{ grid-column:2; grid-row:1; color:var(--c-mata); font-weight:620; line-height:1.35; }
.parada .sub-rot,.parada .trecho{ grid-column:2; }
.parada.forte::before{ width:18px; height:18px; margin:3px 0 0 6px; background:var(--c-acento); border-color:var(--c-acento); }
.parada.forte .rot{ color:var(--c-tinta); font-weight:760; }
.sub-rot{ display:inline-flex; align-items:center; gap:7px; margin-top:6px; font-size:.86rem; font-weight:720; color:var(--c-tinta); }
.sub-rot::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--c-acento); }
.parada.trecho-forte::after{ width:4px; left:13px; background:var(--c-acento); opacity:1; }
.trecho{ margin-top:12px; font-size:.9rem; font-weight:720; color:var(--c-tinta); }
@media (min-width:880px){
  .percurso{ grid-template-columns:repeat(var(--n), minmax(0,1fr)); }
  .percurso.com-trecho{ padding-top:38px; }
  .parada{ display:block; padding:34px 22px 0 0; }
  .parada::before{ position:absolute; top:0; left:0; margin:0; }
  .parada.forte::before{ top:-2px; left:-2px; margin:0; }
  .parada::after{ left:16px; right:2px; top:6px; bottom:auto; width:auto; height:2px; }
  .parada.trecho-forte::after{ top:5px; height:4px; width:auto; }
  .parada .sub-rot{ display:flex; }
  .trecho{ position:absolute; top:-36px; left:24px; margin:0; white-space:nowrap; }
}

/* ===== Linhas editoriais (rótulo à esquerda, texto à direita) ===== */
.linhas{ display:grid; margin-top:clamp(32px, 4vw, 48px); border-top:1px solid var(--c-linha); }
.linhas > div{ display:grid; gap:8px; padding:clamp(22px, 3vw, 30px) 0; border-bottom:1px solid var(--c-linha); }
@media (min-width:880px){ .linhas > div{ grid-template-columns:240px minmax(0,1fr); gap:48px; align-items:baseline; } }
.linhas dt,.rot-linha{ font-weight:760; color:var(--c-tinta); font-size:1.12rem; line-height:1.3; }
.linhas .corpo{ display:grid; gap:10px; justify-items:start; max-width:46rem; }
.destaque-linha{ font-size:clamp(1.14rem, 1.02rem + .5vw, 1.38rem); font-weight:700; line-height:1.32; color:var(--c-tinta); }
.destaque-linha a{ color:inherit; text-decoration-color:var(--c-acento); text-decoration-thickness:2px; }

/* ===== Listas, passos, fórmula ===== */
.lista{ list-style:none; }
.lista li{ padding:12px 0; border-top:1px solid var(--c-linha); color:var(--c-tinta); font-weight:600; line-height:1.4; }
.lista li:last-child{ border-bottom:1px solid var(--c-linha); }
@media (min-width:760px){ .lista.duas{ columns:2; column-gap:40px; } .lista.duas li{ break-inside:avoid; } }
.passos{ list-style:none; counter-reset:p; display:grid; gap:22px; margin-top:34px; }
.passos li{ counter-increment:p; display:grid; grid-template-columns:44px minmax(0,1fr); gap:12px; align-items:baseline; color:var(--c-tinta); }
.passos li::before{ content:counter(p); font-family:"Montserrat",var(--fonte); font-weight:260; font-size:2.1rem; line-height:1; color:var(--c-acento-txt); }
.disponivel{ margin-top:30px!important; }
.disponivel strong{ color:var(--c-tinta); }
.formula{ margin-top:30px!important; font-size:clamp(1.3rem, 1.05rem + 1vw, 1.85rem); line-height:1.3; font-weight:700; letter-spacing:-.01em; color:var(--c-tinta); max-width:30ch; }
.formula .op{ color:var(--c-acento-txt); font-weight:400; padding:0 .12em; }
.contraste{ display:grid; gap:10px; margin-top:26px; }
.contraste p{ font-size:1.12rem; }
.contraste p:last-child{ font-weight:760; color:var(--c-tinta); }
.condicao{ margin-top:clamp(40px, 5vw, 56px)!important; font-weight:720; color:var(--c-tinta); font-size:1.14rem; line-height:1.45; max-width:52ch; }

/* ===== Orientação não é diagnóstico ===== */
.fronteira{ display:grid; gap:36px; margin-top:clamp(36px, 4vw, 52px); }
@media (min-width:880px){ .fronteira{ grid-template-columns:1fr 1fr; gap:0; } .fronteira > div:first-child{ padding-right:48px; } .fronteira > div + div{ padding-left:48px; border-left:1px solid var(--c-linha-forte); } }
.fronteira .h3{ margin-bottom:14px; }
.emergencia{ display:flex; align-items:center; gap:20px; margin-top:clamp(40px, 5vw, 56px); padding:18px 0; border-top:2px solid var(--c-tinta); border-bottom:2px solid var(--c-tinta); max-width:44rem; }
.emergencia .num{ font-size:3.2rem; color:var(--c-tinta); }
.emergencia p{ font-weight:740; color:var(--c-tinta); font-size:1.14rem; line-height:1.35; }
.garantias{ margin-top:22px!important; }

/* ===== Tela ilustrativa do cidadão ===== */
.celular-fig{ display:grid; justify-items:center; gap:16px; }
.celular{ width:min(310px, 80vw); aspect-ratio:9 / 18.6; border-radius:42px; background:#0C1F1C; padding:10px; box-shadow:0 30px 60px -36px rgba(0,36,23,.55), inset 0 0 0 1.5px rgba(255,255,255,.1); }
.tela{ height:100%; border-radius:33px; overflow:hidden; background:#F4F9F8; display:flex; flex-direction:column; color:#03322C; font-size:15px; line-height:1.4; }
.tela-topo{ display:flex; align-items:center; justify-content:space-between; padding:20px 18px 10px; font-weight:780; color:#002417; }
.tela-topo svg{ height:15px; width:auto; color:#0A8C7F; }
.tela-mapa{ flex:1; min-height:0; display:block; width:100%; }
.tela-card{ margin:0 12px; padding:14px 16px 16px; border-radius:18px; background:#FFFFFF; box-shadow:0 12px 26px -16px rgba(0,36,23,.45); }
.tela-rot{ font-size:12px; font-weight:700; color:#17524C; }
.tela-unidade{ font-size:19px; font-weight:780; color:#002417; margin-top:2px; }
.tela-motivo{ font-size:13px; color:#17524C; margin-top:4px; }
.tela-btn{ display:block; margin-top:12px; padding:10px; border-radius:12px; background:#025D54; color:#FFFFFF; font-weight:720; text-align:center; font-size:14px; }
.tela-192{ margin:12px 12px 14px; padding:10px 12px; border-radius:12px; background:#03322C; color:#FFFFFF; font-size:13px; font-weight:720; text-align:center; }
.celular-fig figcaption{ font-size:.875rem; color:var(--c-mata); text-align:center; max-width:40ch; line-height:1.5; }

/* ===== Gestão ===== */
.fig-svg{ width:100%; height:auto; display:block; }
.painel-fig figcaption{ margin-top:14px; font-size:.875rem; line-height:1.5; color:var(--c-mata); max-width:52ch; }
.rede-enxerga{ margin-top:clamp(56px, 7vw, 88px); }
.duas-col{ display:grid; gap:48px; margin-top:clamp(56px, 7vw, 80px); }
@media (min-width:980px){ .duas-col{ grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:72px; } }
.duas-col .h3{ margin-bottom:14px; }
.tabela{ width:100%; border-collapse:collapse; font-size:1rem; }
.tabela th{ text-align:left; font-weight:760; color:var(--c-tinta); padding:10px 16px 10px 0; border-bottom:2px solid var(--c-tinta); width:50%; }
.tabela td{ padding:13px 16px 13px 0; border-bottom:1px solid var(--c-linha); vertical-align:top; color:var(--c-tinta); line-height:1.4; }
.decisao-nota{ margin-top:18px; }

/* ===== Piloto ===== */
.validacao{ display:grid; gap:clamp(30px, 4vw, 48px); margin-top:clamp(36px, 4vw, 52px); }
.metodo{ margin-top:clamp(52px, 6vw, 76px); padding-top:28px; border-top:1px solid var(--c-linha-forte); }
.gargalo{ max-width:900px; }

/* ===== Sobre ===== */
.expediente{ list-style:none; margin-top:clamp(36px, 4vw, 52px); border-top:2px solid var(--c-tinta); }
.expediente li{ display:grid; gap:6px; padding:26px 0; border-bottom:1px solid var(--c-linha); }
@media (min-width:880px){ .expediente li{ grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(0,1.1fr); gap:36px; align-items:baseline; } }
.expediente .nome{ font-size:clamp(1.3rem, 1.1rem + .7vw, 1.7rem); font-weight:760; letter-spacing:-.015em; color:var(--c-tinta); line-height:1.2; }
.expediente .cargo{ color:var(--c-tinta); font-weight:700; display:block; }
.expediente .form{ color:var(--c-mata); }
.fecho{ margin-top:clamp(32px, 4vw, 44px)!important; }
.ficha{ display:grid; margin-top:clamp(36px, 4vw, 48px); border-top:2px solid var(--c-tinta); max-width:860px; }
.ficha > div{ display:grid; gap:4px; padding:16px 0; border-bottom:1px solid var(--c-linha); }
@media (min-width:760px){ .ficha > div{ grid-template-columns:220px minmax(0,1fr); gap:24px; } }
.ficha dt{ font-weight:720; color:var(--c-mata); font-size:.98rem; }
.ficha dd{ color:var(--c-tinta); font-weight:620; }
.ficha + .nota{ margin-top:22px; }

/* ===== Perguntas frequentes ===== */
.faq{ margin-top:clamp(28px, 3vw, 40px); border-top:2px solid var(--c-tinta); max-width:900px; }
.faq details{ border-bottom:1px solid var(--c-linha); }
.faq summary{ list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:20px; padding:20px 0; font-weight:720; font-size:clamp(1.05rem, .98rem + .3vw, 1.2rem); line-height:1.35; color:var(--c-tinta); }
.faq summary::-webkit-details-marker{ display:none; }
.faq summary::after{ content:""; flex:none; width:16px; height:16px; background:linear-gradient(var(--c-acento),var(--c-acento)) center/16px 2px no-repeat, linear-gradient(var(--c-acento),var(--c-acento)) center/2px 16px no-repeat; }
.faq details[open] > summary::after{ background:linear-gradient(var(--c-acento),var(--c-acento)) center/16px 2px no-repeat; }
.faq details > p{ padding:0 0 22px; max-width:66ch; }

/* ===== Contato ===== */
.rotas{ list-style:none; display:grid; border-top:2px solid var(--c-tinta); }
.rota{ display:grid; gap:10px; padding:clamp(22px, 3vw, 32px) 0; border-bottom:1px solid var(--c-linha); }
@media (min-width:880px){ .rota{ grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:40px; align-items:center; } }
.rota p{ margin-top:6px; }
.rota-email{ font-size:clamp(1.12rem, .98rem + .6vw, 1.5rem); font-weight:740; color:var(--c-tinta); overflow-wrap:anywhere; justify-self:start; }
.aviso{ margin-top:clamp(36px, 4vw, 52px); }
.dados-empresa{ margin-top:clamp(36px, 4vw, 52px); }

/* ===== Faixa de chamada e rodapé ===== */
.faixa-cta{ padding-block:clamp(64px, 8vw, 112px); }
.faixa-cta-in{ display:grid; gap:28px; }
@media (min-width:980px){ .faixa-cta-in{ grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); align-items:end; } }
.faixa-cta .h2{ max-width:18ch; }
.chamada-acoes{ display:grid; gap:12px; justify-items:start; }
.rodape{ padding-block:clamp(48px, 6vw, 72px) calc(36px + env(safe-area-inset-bottom,0px)); border-top:1px solid var(--e-linha); font-size:.95rem; color:var(--e-mata); }
.rodape-grade{ display:grid; gap:32px; }
@media (min-width:880px){ .rodape-grade{ grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr) minmax(0,1.1fr); gap:48px; } }
.rodape .marca svg{ height:24px; }
.rodape-rot{ font-weight:720; color:var(--e-tinta); margin-bottom:12px; }
.rodape-lista{ list-style:none; display:grid; gap:8px; }
.rodape a:not(.marca){ color:var(--e-texto); text-decoration-color:var(--e-linha-forte); }
.rodape a:not(.marca):hover{ color:var(--e-tinta); text-decoration-color:var(--e-acento); }
.rodape strong{ color:var(--e-tinta); }
.rodape-base{ margin-top:clamp(32px, 4vw, 48px); padding-top:24px; border-top:1px solid var(--e-linha); font-size:.9rem; }
.texto-legal{ max-width:70ch; }
.texto-legal .h3{ margin-top:clamp(28px, 3vw, 40px); }
.texto-legal .h3:first-child{ margin-top:0; }

@media (prefers-reduced-motion: reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ transition:none!important; animation:none!important; }
}
@media print{ .topo,.rede-canvas,.faixa-cta{ display:none!important; } }
