/* =========================================================
   Vitallis Assessoria. Landing page do auxílio-acidente.
   Sistema: tokens (4.1), assinatura pílula (5.0), movimento discreto (6.0).
   Nenhuma cor, sombra ou curva fora de token.
   ========================================================= */

/* ---------- Fontes locais (woff2 com subset Latin) ---------- */
@font-face{font-family:'Mansory';src:url('assets/fonts/mansory-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Mansory';src:url('assets/fonts/mansory-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Mansory';src:url('assets/fonts/mansory-400i.woff2') format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Montserrat';src:url('assets/fonts/montserrat-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Montserrat';src:url('assets/fonts/montserrat-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Montserrat';src:url('assets/fonts/montserrat-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
/* reservas com métrica ajustada, para o texto não saltar na troca (14.4) */
@font-face{font-family:'Montserrat Reserva';src:local('Arial'),local('Helvetica');size-adjust:113%;ascent-override:86%;descent-override:22%;line-gap-override:0%}
@font-face{font-family:'Mansory Reserva';src:local('Arial'),local('Helvetica');size-adjust:104%;ascent-override:96%;descent-override:29%;line-gap-override:0%}

/* ---------- Tokens ---------- */
:root{
  /* superfícies: derivadas do creme #EDE4D3 do manual */
  --bg:#F8F4EC;
  --panel:#EDE4D3;
  --panel-2:#E4D8C3;
  --white:#FFFDF9;

  /* texto: derivado do quase-preto #1B1B1D, aquecido para o creme */
  --ink:#1B1B1D;
  --text:#3A3236;
  --muted:#675A5E;
  --line:color-mix(in srgb,var(--ink) 10%,transparent);
  --line-2:color-mix(in srgb,var(--ink) 6%,transparent);

  /* marca */
  --accent:#591525;          /* vinho: sinal */
  --action:#591525;          /* vinho: ação. 13,47:1 com branco */
  --on-action:#FFFFFF;
  --foco:#591525;
  --accent-tint:color-mix(in srgb,var(--accent) 8%,transparent);
  --second:#B2957B;          /* bronze: só área grande, selo e detalhe (2,56:1 sobre o creme) */
  --second-ink:#7A6248;      /* bronze escurecido para texto e traço: 5,22:1 */
  --second-tint:color-mix(in srgb,var(--second) 18%,transparent);

  /* bloco invertido (vinho) */
  --wine:#591525;
  --wine-2:#4A1120;
  --on-wine:#F8F4EC;
  --on-wine-muted:#D8C3C8;   /* 8,06:1 */
  --on-wine-bronze:#B2957B;  /* 4,80:1 */

  /* estado */
  --danger:#8E1F2E; --danger-tint:color-mix(in srgb,var(--danger) 9%,transparent);
  --ok:#3B6B4C;

  /* tipografia */
  --f-head:'Mansory','Mansory Reserva',ui-sans-serif,system-ui,sans-serif;
  --f-body:'Montserrat','Montserrat Reserva',ui-sans-serif,system-ui,sans-serif;

  /* movimento: uma curva, três durações */
  --ease:cubic-bezier(.22,1,.36,1);
  --dur-1:160ms; --dur-2:260ms; --dur-3:700ms;

  /* superfície */
  --sh-ui:0 1px 2px color-mix(in srgb,var(--ink) 5%,transparent),0 14px 34px -14px color-mix(in srgb,var(--ink) 22%,transparent);
  --sh-float:0 2px 6px color-mix(in srgb,var(--ink) 5%,transparent),0 30px 60px -24px color-mix(in srgb,var(--ink) 30%,transparent);
  --r-panel:28px; --r-card:22px; --r-ui:12px; --r-pill:999px;

  /* layout */
  --gutter:clamp(1rem,.72rem + 1.25vw,2.5rem);
  --content-max:75rem;
  --prose-max:38rem;      /* ~66 caracteres reais com corpo de 18 px */
  --nav-h:4rem;

  /* espaço */
  --space-1:.25rem; --space-2:.5rem; --space-3:.75rem; --space-4:1rem; --space-5:1.5rem; --space-6:2rem; --space-7:3rem;
  --space-bloco:clamp(2rem,1.5rem + 2.2vw,4rem);
  --space-secao:clamp(3.5rem,2rem + 5vw,8rem);

  /* trama da marca */
  --trama-alpha:.07;
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:calc(var(--nav-h) + 1rem);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:400 clamp(1rem,.95rem + .25vw,1.125rem)/1.6 var(--f-body);-webkit-font-smoothing:antialiased;overflow-wrap:anywhere}
img,svg,video{max-width:100%;height:auto;display:block}
h1,h2,h3,h4{margin:0;font-family:var(--f-head);font-weight:400;color:var(--ink);text-wrap:balance}
p{margin:0;text-wrap:pretty}
ul,ol{margin:0;padding:0;list-style:none}
a{color:var(--action);text-underline-offset:.18em;text-decoration-thickness:1px}
button{font:inherit;color:inherit}
::selection{background:var(--accent);color:var(--on-action)}
:focus-visible{outline:2.5px solid var(--foco);outline-offset:3px;border-radius:6px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:var(--gutter);top:-4rem;z-index:100;background:var(--ink);color:var(--on-wine);padding:.75rem 1rem;border-radius:var(--r-ui);text-decoration:none;transition:transform var(--dur-2) var(--ease)}
.skip:focus-visible{top:.75rem}
.wrap{width:min(var(--content-max),100% - 2 * var(--gutter));margin-inline:auto}
.hp-campo{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---------- Tipografia ---------- */
.t-hero{font-size:clamp(2.4rem,2.04rem + 2.04vw,3.9rem);line-height:1.06;letter-spacing:-.012em;font-weight:400}
.t-h2{font-size:clamp(1.7rem,1.46rem + 1.3vw,2.7rem);line-height:1.14;letter-spacing:-.01em}
.t-h3{font-size:clamp(1.2rem,1.1rem + .45vw,1.45rem);line-height:1.28;font-weight:500}
.lead{font-size:clamp(1.0625rem,1rem + .35vw,1.25rem);line-height:1.55;color:var(--text)}
.em{font-family:var(--f-head);font-style:italic;font-weight:400;color:var(--accent)}
.sobrelinha{font:500 .8125rem/1.4 var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:var(--second-ink);margin-bottom:var(--space-4)}
.sobrelinha--claro{color:var(--on-wine-bronze)}
.micro{font-size:1rem;line-height:1.5;color:var(--muted);margin-top:var(--space-3)}
.secao__cabeca{max-width:46rem;margin-bottom:var(--space-bloco)}
.secao__cabeca .sobrelinha{margin-bottom:var(--space-3)}

/* ---------- Ícones ---------- */
.ic{width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ic-wa{width:1.35rem;height:1.35rem;stroke:none}

/* ---------- Botão (assinatura pílula, seta que desliza) ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:3.25rem;padding:0 .4rem 0 1.5rem;border-radius:var(--r-pill);border:0;font:500 1rem/1 var(--f-body);text-decoration:none;cursor:pointer;white-space:nowrap;transition:background-color var(--dur-2) var(--ease),color var(--dur-2) var(--ease),transform var(--dur-1) var(--ease),box-shadow var(--dur-2) var(--ease)}
.btn:active{transform:scale(.97)}
.btn__arr{width:2.5rem;height:2.5rem;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:none}
.btn__arr .ic{width:1.05rem;height:1.05rem;transition:transform var(--dur-2) var(--ease)}
.btn-primary{background:var(--action);color:var(--on-action);box-shadow:0 10px 24px -12px color-mix(in srgb,var(--action) 70%,transparent)}
.btn-primary .btn__arr{background:var(--on-action);color:var(--action)}
.btn-primary:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}
.btn-ghost{background:transparent;color:var(--action);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--action) 35%,transparent);padding:0 1.5rem}
.btn-sm{min-height:2.75rem;padding:0 .3rem 0 1.15rem;font-size:.9375rem}
.btn-sm .btn__arr{width:2.1rem;height:2.1rem}
.btn-lg{min-height:3.75rem;padding-left:1.85rem;font-size:1.0625rem}
.btn-lg .btn__arr{width:2.9rem;height:2.9rem}
.btn-wa{padding:0 1.6rem 0 1.25rem;gap:.75rem}
@media (hover:hover) and (pointer:fine){
  .btn-primary:hover{background:var(--wine-2)}
  .btn:hover .btn__arr .ic{transform:translateX(3px)}
  .btn-ghost:hover{background:var(--accent-tint)}
}
.link-seta{display:inline-flex;align-items:center;gap:.35rem;font-weight:500;text-decoration:none;white-space:nowrap}
.link-seta .ic{width:1.05rem;height:1.05rem;transition:transform var(--dur-2) var(--ease)}
@media (hover:hover){.link-seta:hover .ic{transform:translateX(3px)}}

/* ---------- Lista com ícone ---------- */
.lista-ic{display:grid;gap:var(--space-3)}
.lista-ic li{display:flex;gap:var(--space-3);align-items:flex-start;line-height:1.5}
.lista-ic .ic{margin-top:.2em;color:var(--action)}
.lista-ic--nao .ic{color:var(--second-ink)}
.lista-ic--claro{color:var(--on-wine)}
.lista-ic--claro .ic{color:var(--on-wine-bronze)}
.lista-ic--claro.lista-ic--nao .ic{color:var(--on-wine-muted)}

/* legenda: entrada em peso, resto em leve (8.12) */
.legenda{font-size:1rem;line-height:1.5;color:var(--muted)}
.legenda .entrada{font-weight:600;color:var(--ink)}

/* ---------- Navegação ---------- */
.nav{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:box-shadow var(--dur-2) var(--ease)}
.nav.is-rolado{box-shadow:0 1px 0 var(--line)}
.nav__in{display:flex;align-items:center;justify-content:space-between;min-height:var(--nav-h);gap:var(--space-4)}
.nav__logo{display:inline-flex;border-radius:6px}
.nav__logo img{width:auto;height:2rem}
.nav__cta{display:none}
@media (width >= 40rem){.nav__cta{display:inline-flex}.nav__logo img{height:2.25rem}}

/* ---------- Topo ---------- */
.hero{position:relative;overflow:clip;padding-block:clamp(2rem,1rem + 4vw,5.5rem) var(--space-secao);
  background:radial-gradient(70% 55% at 85% 0%,var(--panel),transparent 70%),var(--bg)}
.hero__trama{position:absolute;inset:0;width:100%;height:100%;color:var(--accent);opacity:var(--trama-alpha);pointer-events:none;
  -webkit-mask:radial-gradient(60% 70% at 92% 12%,#000 20%,transparent 75%);mask:radial-gradient(60% 70% at 92% 12%,#000 20%,transparent 75%)}
.hero__grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-bloco);align-items:center}
.hero__texto{max-width:36rem}
.hero__texto .t-hero{margin-bottom:var(--space-5)}
.hero__texto .lead{max-width:34rem;margin-bottom:var(--space-5)}
.nota-transp{display:flex;gap:var(--space-3);align-items:flex-start;max-width:32rem;font-size:1rem;line-height:1.5;color:var(--muted);padding-top:var(--space-4);border-top:1px solid var(--line)}
.nota-transp strong{color:var(--ink);font-weight:600}
.nota-transp__simbolo{width:1.6rem;height:1.35rem;color:var(--accent);flex:none;margin-top:.1rem}
@media (width >= 64rem){
  .hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(2rem,4vw,5rem)}
  .hero__texto{max-width:none}
}

/* ---------- Questionário ---------- */
.quiz{position:relative;background:var(--white);border-radius:var(--r-card);box-shadow:var(--sh-float),inset 0 0 0 1px var(--line-2);padding:clamp(1.25rem,1rem + 1.2vw,2rem);max-width:34rem;width:100%;justify-self:center}
@media (width >= 64rem){.quiz{justify-self:end}}
.quiz__cabeca{margin-bottom:var(--space-4)}
.quiz__ajuda{font-size:1rem;color:var(--muted);margin-top:var(--space-2)}
.quiz__progresso{height:4px;border-radius:var(--r-pill);background:var(--panel);overflow:hidden}
.quiz__barra{display:block;height:100%;width:var(--p,25%);background:var(--accent);border-radius:inherit;transition:width var(--dur-3) var(--ease)}
.quiz__passo{font:500 .75rem/1 var(--f-body);letter-spacing:.1em;text-transform:uppercase;color:var(--second-ink);margin:var(--space-3) 0 var(--space-5)}
.quiz__tela{border:0;padding:0;margin:0;min-width:0}
.quiz__tela[hidden]{display:none}
.quiz__pergunta{display:block;font-family:var(--f-body);font-weight:600;font-size:1.0625rem;line-height:1.4;color:var(--ink);margin-bottom:var(--space-4);padding:0}
.opcoes{display:grid;gap:var(--space-2)}
.opcao{position:relative;display:flex;align-items:center;min-height:3.25rem;padding:.75rem 1rem .75rem 3rem;border-radius:var(--r-ui);background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);cursor:pointer;line-height:1.35;transition:background-color var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease)}
.opcao input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.opcao::before{content:"";position:absolute;left:1rem;top:50%;width:1.1rem;height:1.1rem;margin-top:-.55rem;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--muted);background:var(--white);transition:box-shadow var(--dur-1) var(--ease)}
.opcao:has(input:checked){background:var(--accent-tint);box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--ink);font-weight:500}
.opcao:has(input:checked)::before{box-shadow:inset 0 0 0 .34rem var(--accent)}
.opcao:has(input:focus-visible){outline:2.5px solid var(--foco);outline-offset:2px}
@media (hover:hover){.opcao:hover{background:var(--panel)}.opcao:has(input:checked):hover{background:var(--accent-tint)}}
.chips{border:0;padding:0;margin:var(--space-5) 0 0;min-width:0}
.chips__rotulo{font-size:.875rem;font-weight:500;color:var(--text);padding:0;margin-bottom:var(--space-2)}
.opcional{color:var(--muted);font-weight:400}
.chips__lista{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.chip{position:relative;display:inline-flex;align-items:center;min-height:2.5rem;padding:0 .9rem;border-radius:var(--r-pill);font-size:.875rem;background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);cursor:pointer;transition:background-color var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease)}
.chip input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.chip:has(input:checked){background:var(--accent);color:var(--on-action);box-shadow:none}
.chip:has(input:focus-visible){outline:2.5px solid var(--foco);outline-offset:2px}
.campo-select{position:relative}
.campo-select select{appearance:none;-webkit-appearance:none;width:100%;min-height:3.25rem;padding:.75rem 3rem .75rem 1rem;border:0;border-radius:var(--r-ui);background:var(--bg);box-shadow:inset 0 0 0 1px var(--line);font:inherit;font-size:max(1rem,16px);color:var(--ink);cursor:pointer}
.campo-select select:focus-visible{outline:2.5px solid var(--foco);outline-offset:2px}
.campo-select__seta{position:absolute;right:1rem;top:50%;width:1.1rem;height:1.1rem;margin-top:-.55rem;transform:rotate(90deg);color:var(--muted);pointer-events:none}
.quiz__erro{margin-top:var(--space-3);padding:.65rem .9rem;border-radius:var(--r-ui);background:var(--danger-tint);color:var(--danger);font-size:1rem;line-height:1.45}
.quiz__erro[hidden]{display:none}
.quiz__acoes{display:flex;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-5)}
.quiz__acoes .btn[hidden]{display:none}
.quiz__lgpd{font-size:1rem;line-height:1.5;color:var(--muted);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--line-2)}
.quiz__final{outline:none}
.resumo{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.4rem var(--space-4);margin:var(--space-4) 0;font-size:1rem}
.resumo dt{color:var(--muted);font-weight:500}
.resumo dd{margin:0;color:var(--ink)}
.quiz__final-texto{font-size:1rem;color:var(--text);margin-bottom:var(--space-4)}
.quiz__final-aviso{font-size:1rem;color:var(--second-ink);background:var(--second-tint);border-radius:var(--r-ui);padding:.65rem .9rem;margin-bottom:var(--space-4)}
.quiz__final-aviso[hidden]{display:none}
.quiz.is-final .quiz__acoes{display:none}
.quiz.is-final .quiz__progresso,.quiz.is-final .quiz__passo{display:none}

/* ---------- Depois da alta ---------- */
.alta{background:var(--panel);padding-block:var(--space-secao)}
.alta__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-bloco);align-items:start}
.alta__texto{max-width:var(--prose-max)}
.alta__texto .t-h2{margin-bottom:var(--space-5)}
.alta__texto p + p{margin-top:var(--space-4)}
.fatos{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5)}
.fatos .legenda{padding-left:var(--space-4);border-left:2px solid var(--second)}
@media (width >= 48rem){.fatos{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (width >= 64rem){.alta__grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(2rem,5vw,6rem)}.fatos{padding-top:3.4rem}}
.linha{margin-top:var(--space-bloco);padding-top:var(--space-bloco);border-top:1px solid var(--line)}
.linha__svg{display:none;width:100%;height:auto;color:var(--second-ink)}
.linha__lista{display:grid;gap:var(--space-4);counter-reset:etapa;position:relative;padding-left:3rem}
.linha__lista::before{content:"";position:absolute;left:1.05rem;top:1.2rem;bottom:1.2rem;width:1.5px;background:var(--second)}
.linha__lista li{position:relative;counter-increment:etapa;line-height:1.5;color:var(--muted);min-height:2.25rem;padding-top:.3rem}
.linha__lista li::before{content:counter(etapa);position:absolute;left:-3rem;top:0;width:2.15rem;height:2.15rem;border-radius:50%;display:grid;place-items:center;background:var(--white);box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--accent);font:500 1rem/1 var(--f-head)}
.linha__lista li:last-child::before{background:var(--accent);color:var(--on-action)}
.linha__t{font-weight:600;color:var(--ink);margin-right:.3rem}
@media (width >= 64rem){
  .linha__lista{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);padding:0}
  .linha__svg{display:block}
}
.diagrama text{font-family:var(--f-body);font-size:17px;fill:var(--text);text-anchor:middle}
.linha__rotulo text:nth-child(odd){font-weight:600;fill:var(--ink)}
.linha__no circle{fill:var(--white);stroke:var(--accent);stroke-width:1.5}
.linha__no text{font-family:var(--f-head);font-weight:500;font-size:19px;fill:var(--accent)}
.linha__no--fim circle{fill:var(--accent)}
.linha__no--fim text{fill:var(--on-action)}
.linha__fio path{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset .9s var(--ease)}
.linha__no{transform-box:fill-box;transform-origin:center;transition:opacity .6s var(--ease),transform .6s var(--ease);transition-delay:calc(var(--i) * 140ms)}
.js .linha.reveal:not(.in) .linha__fio path{stroke-dashoffset:1}
.js .linha.reveal:not(.in) .linha__no{opacity:0;transform:scale(.9)}
.linha__fio path:nth-child(2){transition-delay:140ms}.linha__fio path:nth-child(3){transition-delay:280ms}.linha__fio path:nth-child(4){transition-delay:420ms}

/* ---------- Para quem ---------- */
.quem{padding-block:var(--space-secao)}
.quem__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}
.quem__col{border-radius:var(--r-card);padding:clamp(1.25rem,1rem + 1.2vw,2rem)}
.quem__col .t-h3{margin-bottom:var(--space-5)}
.quem__col--sim{background:var(--white);box-shadow:var(--sh-ui),inset 0 0 0 1px var(--line-2);border-top:3px solid var(--accent)}
.quem__col--nao{background:var(--panel);border-top:3px solid var(--second)}
.quem__fecho{margin-top:var(--space-bloco);max-width:var(--prose-max);color:var(--muted)}
@media (width >= 48rem){.quem__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5)}}

/* ---------- Transparência (bloco vinho) ---------- */
.transp{padding-block:var(--space-4) var(--space-secao)}
.transp__painel{position:relative;isolation:isolate;overflow:clip;width:min(90rem,100% - 2 * var(--gutter) + 1rem);margin-inline:auto;border-radius:var(--r-panel);background:var(--wine);color:var(--on-wine);padding-block:var(--space-secao)}
.transp__trama{position:absolute;inset:0;width:100%;height:100%;color:var(--on-wine);opacity:.06;pointer-events:none;z-index:-1;
  -webkit-mask:radial-gradient(70% 90% at 100% 100%,#000 10%,transparent 72%);mask:radial-gradient(70% 90% at 100% 100%,#000 10%,transparent 72%)}
.transp__grao{position:absolute;inset:0;pointer-events:none;z-index:-1;filter:url(#grao);opacity:.28;mix-blend-mode:overlay;background:#808080}
.transp__cabeca{max-width:46rem;margin-bottom:var(--space-bloco)}
.transp__cabeca .t-h2{color:var(--on-wine);margin-bottom:var(--space-5)}
.transp__lead{font-size:clamp(1rem,.95rem + .3vw,1.125rem);color:var(--on-wine-muted);max-width:38rem}
.transp__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5)}
.transp__bloco{border-radius:var(--r-card);padding:clamp(1.25rem,1rem + 1.2vw,2rem);background:color-mix(in srgb,var(--wine-2) 70%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--on-wine) 10%,transparent)}
.transp__h3{font:500 .8125rem/1.4 var(--f-body);letter-spacing:.12em;text-transform:uppercase;color:var(--on-wine-bronze);margin-bottom:var(--space-4)}
@media (width >= 48rem){.transp__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (width >= 64rem){.transp__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,6rem);align-items:start}.transp__cabeca{margin-bottom:0}}

/* ---------- Como funciona ---------- */
.passos{padding-block:var(--space-secao)}
.passos__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5)}
.passo{display:grid;grid-template-rows:auto auto auto auto;align-content:start;gap:var(--space-2);min-width:0}
@supports (grid-template-rows:subgrid){
  @media (width >= 48rem){.passo{grid-row:span 4;grid-template-rows:subgrid}}
}
.passo .t-h3{margin-top:var(--space-1)}
.passo > p:last-child{color:var(--muted);line-height:1.5}
.passo__num{font:500 .8125rem/1 var(--f-body);letter-spacing:.12em;color:var(--second-ink);margin-top:var(--space-4)}
.mini{position:relative;background:var(--panel);border-radius:16px;padding:1rem;min-height:11.5rem;display:flex;flex-direction:column;gap:.45rem;font-size:.8125rem;line-height:1.35;color:var(--text);overflow:clip}
.mini__rotulo{font:500 .6875rem/1 var(--f-body);letter-spacing:.1em;text-transform:uppercase;color:var(--second-ink);margin-bottom:.35rem}
.mini-quiz__op{display:block;padding:.55rem .75rem;border-radius:10px;background:var(--white);box-shadow:inset 0 0 0 1px var(--line)}
.mini-quiz__op.is-sel{background:var(--accent);color:var(--on-action);box-shadow:none;font-weight:500}
.mini-chat{justify-content:flex-end;background:var(--panel-2)}
.bolha{max-width:88%;padding:.55rem .75rem;border-radius:14px;background:var(--white);box-shadow:var(--sh-ui)}
.bolha--eu{align-self:flex-end;background:var(--accent-tint);box-shadow:none;border-bottom-right-radius:4px;color:var(--ink)}
.bolha--vt{align-self:flex-start;border-bottom-left-radius:4px}
.mini-docs__item{display:flex;align-items:center;gap:.5rem;padding:.45rem .65rem;border-radius:10px;background:var(--white);box-shadow:inset 0 0 0 1px var(--line)}
.mini-docs__item .ic{width:1rem;height:1rem}
.mini-docs__item.is-ok .ic{color:var(--ok)}
.mini-docs__item.is-falta{background:transparent;box-shadow:inset 0 0 0 1px var(--second-ink);border-style:dashed;color:var(--second-ink)}
.mini-docs__item b{margin-left:auto;font:500 .6875rem/1 var(--f-body);letter-spacing:.08em;text-transform:uppercase}
.mini-status__item{position:relative;padding:.3rem 0 .3rem 1.6rem;color:var(--muted)}
.mini-status__item::before{content:"";position:absolute;left:.35rem;top:.75rem;width:.6rem;height:.6rem;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--muted);background:var(--white)}
.mini-status__item::after{content:"";position:absolute;left:.62rem;top:1.45rem;width:1.5px;height:calc(100% - .8rem);background:var(--line)}
.mini-status__item:last-child::after{display:none}
.mini-status__item.is-ok{color:var(--text)}
.mini-status__item.is-ok::before{background:var(--ok);box-shadow:none}
.mini-status__item.is-atual{color:var(--ink);font-weight:600}
.mini-status__item.is-atual::before{background:var(--white);box-shadow:inset 0 0 0 .19rem var(--accent)}
.passos__nota{display:flex;gap:var(--space-3);align-items:flex-start;margin-top:var(--space-bloco);max-width:var(--prose-max);font-size:1rem;color:var(--muted);line-height:1.5}
.passos__nota .ic{color:var(--second-ink);margin-top:.15rem}
@media (width >= 48rem){.passos__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6) var(--space-5)}}
@media (width >= 64rem){.passos__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-5)}}

/* ---------- Documentos ---------- */
.docs{background:var(--panel);padding-block:var(--space-secao);overflow:clip}
.docs__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-bloco);align-items:start}
.docs__texto{max-width:var(--prose-max)}
.docs__texto .t-h2{margin-bottom:var(--space-4)}
.nota-cat{margin-top:var(--space-6);padding:var(--space-5);border-radius:var(--r-card);background:var(--white);box-shadow:var(--sh-ui),inset 0 0 0 1px var(--line-2)}
.nota-cat__t{font:600 1rem/1.4 var(--f-body);color:var(--ink);margin-bottom:var(--space-2)}
.nota-cat p{font-size:1rem;color:var(--muted)}
.pasta{position:relative;background:var(--white);border-radius:var(--r-card);box-shadow:var(--sh-float),inset 0 0 0 1px var(--line-2);padding:0 clamp(1rem,.8rem + 1vw,1.75rem) clamp(1rem,.8rem + 1vw,1.75rem);margin-top:1.25rem}
.pasta__aba{position:relative;display:inline-flex;align-items:center;gap:.5rem;margin:-1.25rem 0 var(--space-4) -.25rem;padding:.55rem 1rem;border-radius:12px 12px 0 0;background:var(--accent);color:var(--on-action);font:500 .8125rem/1 var(--f-body);letter-spacing:.06em;text-transform:uppercase}
.pasta__aba .ic{width:1rem;height:1rem}
.pasta__lista{margin:0;display:grid}
.pasta__item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.2rem var(--space-3);padding:.85rem 0;border-top:1px solid var(--line-2);counter-increment:doc}
.pasta__item::before{content:counter(doc,decimal-leading-zero);grid-row:1 / span 2;font:500 .8125rem/1.6 var(--f-head);color:var(--second-ink);letter-spacing:.05em;padding-top:.1rem}
.pasta__item dt{font-weight:600;color:var(--ink);line-height:1.4}
.pasta__item dd{margin:0;font-size:1rem;color:var(--muted);line-height:1.45}
@media (width >= 64rem){.docs__grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,6rem)}.pasta{margin-right:calc(-1 * var(--gutter) / 2)}}

/* ---------- Dúvidas ---------- */
.faq{padding-block:var(--space-secao)}
.faq__in{max-width:48rem}
.faq__lista{display:grid;gap:var(--space-2)}
.faq__item{background:var(--white);border-radius:var(--r-ui);box-shadow:inset 0 0 0 1px var(--line-2);overflow:clip}
.faq__item summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:1rem 1.15rem;cursor:pointer;list-style:none;font-weight:600;color:var(--ink);line-height:1.4;min-height:3.25rem}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary .ic{color:var(--action);transition:transform var(--dur-2) var(--ease)}
.faq__item[open] summary .ic{transform:rotate(45deg)}
.faq__item summary:focus-visible{outline-offset:-3px}
.faq__corpo{padding:0 1.15rem 1.15rem;color:var(--text);font-size:1rem;line-height:1.55}
.faq__corpo p{max-width:36rem}
@media (hover:hover){.faq__item summary:hover{background:var(--accent-tint)}}

/* ---------- Conversão final ---------- */
.final{padding-block:var(--space-4) var(--space-secao)}
.final__in{text-align:center;max-width:44rem;padding:var(--space-bloco) var(--space-5);border-radius:var(--r-panel);background:var(--panel)}
.final__simbolo{width:3.2rem;height:2.7rem;color:var(--accent);margin:0 auto var(--space-5)}
.final__in .t-h2{margin-bottom:var(--space-4)}
.final__texto{color:var(--muted);margin-bottom:var(--space-6)}

/* ---------- Rodapé ---------- */
.rodape{background:var(--ink);color:var(--on-wine-muted);padding-block:var(--space-bloco) calc(var(--space-bloco) + 4.5rem)}
.rodape__in{display:grid;gap:var(--space-5)}
.rodape__logo{width:auto;height:2.25rem}
.rodape__legal{max-width:38rem;font-size:1rem;line-height:1.55}
.rodape__meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);font-size:1rem}
.rodape a{color:var(--on-wine)}
@media (width >= 48rem){.rodape{padding-bottom:var(--space-bloco)}}

/* ---------- Botão flutuante (WhatsApp) ---------- */
.flutuante{position:fixed;right:max(1rem,env(safe-area-inset-right,0px));bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:60;display:inline-flex;align-items:center;gap:.6rem;min-height:3.25rem;padding:0 1.25rem 0 1rem;border-radius:var(--r-pill);background:var(--action);color:var(--on-action);font:500 .9375rem/1 var(--f-body);text-decoration:none;white-space:nowrap;box-shadow:var(--sh-float);
  opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity var(--dur-2) var(--ease),transform var(--dur-2) var(--ease),background-color var(--dur-2) var(--ease)}
.flutuante.is-visivel{opacity:1;transform:none;pointer-events:auto}
@media (hover:hover){.flutuante:hover{background:var(--wine-2)}}

/* ---------- Movimento: entrada do topo e revelação por rolagem ---------- */
.js .intro{opacity:0;transform:translateY(10px)}
.js.ready .intro{opacity:1;transform:none;transition:opacity .7s var(--ease),transform .8s var(--ease);transition-delay:calc(var(--d,0) * 1ms)}
.js .reveal:not(.in){opacity:0;transform:translateY(10px)}
.reveal{transition:opacity .7s var(--ease),transform .8s var(--ease)}

/* ---------- Movimento reduzido: página completa e legível ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .js .intro,.js.ready .intro{opacity:1;transform:none}
  .js .reveal:not(.in){opacity:1;transform:none}
  .js .linha.reveal:not(.in) .linha__fio path{stroke-dashoffset:0}
  .js .linha.reveal:not(.in) .linha__no{opacity:1;transform:none}
  .flutuante{transform:none}
}

/* ---------- Impressão ---------- */
@media print{.nav,.flutuante,.quiz__acoes{display:none}}
