/*
  Estilo único do site imigracaomv.com.br (todas as páginas: home, residência, obrigado e política).
  Criado em 23/09/2026 no mesmo molde do landing-grupo-mundial, já com as regras de desempenho que
  lá só vieram depois: UM arquivo de CSS (cada <link> a mais bloqueia a renderização), fontes com
  @font-face aqui mesmo, e ícones em SVG no HTML em vez de fonte de ícones.

  Sistema de forma (fixo no site inteiro):
  botões e chips = pílula | cards e blocos = 18px | campos = 12px
  Cor: marinho da marca (#0A2540, o "primary" do Elementor antigo) + UM acento dourado (#C49F58,
  o "secondary"). Texto do botão dourado é marinho: branco sobre esse dourado fica em ~2,4:1.
  Sobre fundo claro o dourado não passa de 2,5:1, por isso rótulos e ícones usam --icon-strong
  (dourado escurecido, 4,8:1 sobre --bg).
*/

/* Fontes locais, só o subconjunto latin (cobre o português inteiro). Spectral 400/500/itálico nos
   títulos e Work Sans variável (400 a 600) no texto: 4 arquivos, 118 KB, e a página só baixa os
   que usa. Os "Fallback" ajustam Georgia e Arial ao tamanho das fontes reais para o texto não
   pular quando elas chegam (troca de fonte foi a suspeita de CLS no Grupo Mundial). Valores medidos
   no Chrome em 23/09/2026 com um parágrafo de amostra: Spectral tem a mesma largura da Georgia
   (100%) e Work Sans é 10% mais larga que a Arial; ascent/descent = métrica real ÷ size-adjust. */
@font-face{font-family:"Spectral";font-style:normal;font-weight:400;font-display:swap;src:url(../vendor/fontes/spectral-400-latin.woff2) format("woff2")}
@font-face{font-family:"Spectral";font-style:normal;font-weight:500;font-display:swap;src:url(../vendor/fontes/spectral-500-latin.woff2) format("woff2")}
@font-face{font-family:"Spectral";font-style:italic;font-weight:400;font-display:swap;src:url(../vendor/fontes/spectral-400-italic-latin.woff2) format("woff2")}
@font-face{font-family:"Work Sans";font-style:normal;font-weight:400 600;font-display:swap;src:url(../vendor/fontes/work-sans-latin.woff2) format("woff2")}
@font-face{font-family:"Spectral Fallback";src:local("Georgia");size-adjust:100%;ascent-override:106%;descent-override:46%;line-gap-override:0%}
@font-face{font-family:"Work Sans Fallback";src:local("Arial");size-adjust:110%;ascent-override:84%;descent-override:22%;line-gap-override:0%}

:root{
  --navy-950:#061A2E; --navy-900:#0A2540; --navy-800:#10345A; --navy-700:#1B4A7A;
  --accent:#C49F58; --accent-hover:#D3B271; --accent-ink:#0A2540; --accent-soft:#F3EBDC;
  --bg:#F7F5F0; --surface:#FFFEFB; --surface-2:#EFEAE0;
  --text:#0E1B2B; --muted:#4E5A69; --line:#E4DED3; --line-strong:#C6BDAD;
  --icon-strong:#86662A; --eyebrow:#86662A;
  --chip-on-bg:#0A2540; --chip-on-text:#FFFFFF;
  --field-bg:#FBFAF6; --error:#B42318;
  --card-form:#FFFEFB; --card-form-line:transparent;
  --wa:#179848;
  --scrim-rgb:6 26 46; --accent-rgb:196 159 88; --focus-ring:rgb(27 74 122 / .2);
  --mbar-bg:rgb(255 254 251 / .94);
  --r-card:18px; --r-field:12px; --r-pill:999px;
  --shadow:0 1px 2px rgb(10 37 64 / .06), 0 16px 40px -16px rgb(10 37 64 / .22);
  --ease:cubic-bezier(.16,1,.3,1);
  --font-display:"Spectral","Spectral Fallback",Georgia,serif;
  --font-body:"Work Sans","Work Sans Fallback",system-ui,-apple-system,"Segoe UI",sans-serif;
  --container:1200px;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#07131F; --surface:#0C1D2F; --surface-2:#122840;
    --text:#EEF1F5; --muted:#A9B4C2; --line:#1C3149; --line-strong:#33506F;
    --icon-strong:#D8B878; --eyebrow:#D8B878; --accent-soft:#2A2416;
    --chip-on-bg:#EEF1F5; --chip-on-text:#061A2E;
    --field-bg:#0A1A2A; --error:#FF8A80;
    /* no escuro o card do formulário precisa se destacar do topo, que é marinho nos dois modos */
    --card-form:#10263D; --card-form-line:rgb(255 255 255 / .14);
    --mbar-bg:rgb(12 29 47 / .94);
    --shadow:0 1px 2px rgb(0 0 0 / .3), 0 16px 40px -16px rgb(0 0 0 / .7);
  }
}
:root[data-theme="dark"]{
  --bg:#07131F; --surface:#0C1D2F; --surface-2:#122840;
  --text:#EEF1F5; --muted:#A9B4C2; --line:#1C3149; --line-strong:#33506F;
  --icon-strong:#D8B878; --eyebrow:#D8B878; --accent-soft:#2A2416;
  --chip-on-bg:#EEF1F5; --chip-on-text:#061A2E;
  --field-bg:#0A1A2A; --error:#FF8A80;
  --card-form:#10263D; --card-form-line:rgb(255 255 255 / .14);
  --mbar-bg:rgb(12 29 47 / .94);
  --shadow:0 1px 2px rgb(0 0 0 / .3), 0 16px 40px -16px rgb(0 0 0 / .7);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:88px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg);color:var(--text);font:400 16px/1.6 var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--font-display);margin:0;font-weight:500;letter-spacing:-.012em;line-height:1.1}
p{margin:0}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--icon-strong);outline-offset:3px;border-radius:6px}
.on-dark :focus-visible{outline-color:var(--accent)}
.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:24px}
.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}
.eyebrow{font:600 13px/1.3 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:var(--eyebrow)}
.on-dark .eyebrow{color:var(--accent)}
/* Ícones: <svg class="i"><use href="#i-nome"/></svg>, com os símbolos no próprio HTML (icones.php) */
.i{width:1em;height:1em;fill:currentColor;flex:none;display:inline-block;vertical-align:-.125em}
.hl{font-style:italic;font-weight:400;color:var(--accent)}

/* Botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 26px;border-radius:var(--r-pill);font:600 16px/1 var(--font-body);text-decoration:none;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:transform .2s var(--ease),background-color .2s var(--ease),border-color .2s var(--ease),box-shadow .2s var(--ease)}
.btn:active{transform:translateY(1px) scale(.99)}
.btn .i{font-size:20px}
.btn--accent{background:var(--accent);color:var(--accent-ink);box-shadow:0 10px 24px -10px rgb(var(--accent-rgb) / .6)}
.btn--accent:hover{background:var(--accent-hover)}
.btn--ghost{color:#fff;border-color:rgb(255 255 255 / .3);background:rgb(255 255 255 / .06)}
.btn--ghost:hover{border-color:rgb(255 255 255 / .6);background:rgb(255 255 255 / .1)}
.btn--outline{color:var(--text);border-color:var(--line-strong);background:var(--surface)}
.btn--outline:hover{border-color:var(--text)}
.btn--block{width:100%}
.btn--sm{height:42px;padding:0 20px;font-size:15px}
.btn .i-wa{color:#25D366}
.btn--outline .i-wa{color:var(--wa)}
.btn--accent .i-wa{color:inherit}
.btn[disabled]{cursor:progress;opacity:.75}

/* Cabeçalho: transparente sobre a foto, sólido depois de rolar (IntersectionObserver, sem listener de scroll) */
.site-header{position:fixed;inset:0 0 auto;z-index:40;height:72px;border-bottom:1px solid transparent;transition:background-color .35s var(--ease),border-color .35s var(--ease)}
.site-header.is-solid{background:rgb(var(--scrim-rgb) / .92);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);border-bottom-color:rgb(255 255 255 / .08)}
.site-header__inner{height:100%;display:flex;align-items:center;gap:40px}
.site-header__logo img{height:38px;width:auto}
.site-nav{display:flex;gap:28px;margin-left:auto}
.site-nav a{color:rgb(255 255 255 / .8);text-decoration:none;font-size:15px;font-weight:500;transition:color .2s}
.site-nav a:hover{color:#fff}
.site-header__actions{display:flex;align-items:center;gap:20px}
.header-wa{display:inline-flex;align-items:center;gap:8px;color:#fff;text-decoration:none;font-weight:500;font-size:15px}
.header-wa .i{font-size:22px;color:#25D366}
#topo-sentinela{position:absolute;top:0;left:0;height:24px;width:1px}

/* Topo com foto */
.hero{position:relative;isolation:isolate;color:#fff;background:var(--navy-950);padding:136px 0 136px;overflow:hidden}
.hero__bg,.hero__bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.hero__scrim{position:absolute;inset:0;z-index:-1;background:
  linear-gradient(90deg,rgb(var(--scrim-rgb) / .95) 0%,rgb(var(--scrim-rgb) / .84) 45%,rgb(var(--scrim-rgb) / .55) 100%),
  linear-gradient(0deg,rgb(var(--scrim-rgb) / .8) 0%,rgb(var(--scrim-rgb) / 0) 45%)}
/* topo alinhado em cima, não no meio: o card do formulário é alto e, centralizado, empurrava o
   título para baixo da dobra em notebook de 720 px de altura */
.hero__grid{display:grid;grid-template-columns:minmax(0,1fr) 480px;gap:64px;align-items:start}
.hero__copy{padding-top:56px}
.hero h1{font-size:clamp(38px,4.4vw,60px);font-weight:400;line-height:1.04;letter-spacing:-.02em;margin-top:22px}
.hero__sub{margin-top:24px;font-size:19px;line-height:1.55;color:rgb(255 255 255 / .82);max-width:38ch}
.hero__cta{margin-top:36px;display:flex;flex-wrap:wrap;gap:12px}
.hero__selos{list-style:none;padding:0;margin:32px 0 0;display:flex;flex-wrap:wrap;gap:10px 22px;font-size:15px;color:rgb(255 255 255 / .86)}
.hero__selos li{display:inline-flex;align-items:center;gap:8px}
.hero__selos .i{font-size:18px;color:var(--accent)}

/* Card do formulário */
.lead-card{background:var(--card-form);color:var(--text);border:1px solid var(--card-form-line);border-radius:var(--r-card);padding:28px;box-shadow:0 40px 90px -30px rgb(0 0 0 / .65);scroll-margin-top:96px}
.lead-card__head h2{font-size:27px}
.lead-card__head p{margin-top:6px;font-size:15px;color:var(--muted)}
.lead-form{display:grid;gap:16px;margin-top:22px}
.chips{border:0;padding:0;margin:0;min-width:0}
.chips legend,.field label{display:block;font-size:14px;font-weight:600;margin-bottom:8px;padding:0}
.field label small{font-weight:400;color:var(--muted)}
.chips__list{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.chip span{display:inline-flex;align-items:center;height:36px;padding:0 13px;border-radius:var(--r-pill);border:1px solid var(--line-strong);font-size:14px;font-weight:500;cursor:pointer;background:var(--surface);transition:background-color .2s,border-color .2s,color .2s;user-select:none}
.chip span:hover{border-color:var(--text)}
.chip input:checked + span{background:var(--chip-on-bg);border-color:var(--chip-on-bg);color:var(--chip-on-text)}
.chip input:focus-visible + span{outline:3px solid var(--icon-strong);outline-offset:2px}
.field input,.field textarea{width:100%;height:48px;padding:0 14px;border-radius:var(--r-field);border:1px solid var(--line-strong);background:var(--field-bg);transition:border-color .2s,box-shadow .2s;appearance:none;-webkit-appearance:none}
.field textarea{height:auto;min-height:84px;padding:12px 14px;resize:vertical;line-height:1.45}
.field input::placeholder,.field textarea::placeholder{color:#6E7784}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--icon-strong);box-shadow:0 0 0 3px var(--focus-ring)}
.field [aria-invalid="true"]{border-color:var(--error)}
.field__dica{font-size:12.5px;color:var(--muted);margin-top:6px}
.field__error,.chips__error{font-size:13px;color:var(--error);margin-top:6px}
.field__error:empty,.chips__error:empty{display:none}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.consent{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;font-size:13.5px;line-height:1.45;color:var(--muted);cursor:pointer}
.consent input{width:18px;height:18px;margin:1px 0 0;accent-color:var(--chip-on-bg);cursor:pointer}
.lead-form .btn{margin-top:4px;height:54px;font-size:17px}
.form-erro{font-size:14px;line-height:1.5;color:var(--error);text-align:center}
.form-erro a{font-weight:600;color:inherit}
.form-erro[hidden]{display:none}
.lead-form__legal{display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px;color:var(--muted)}
.lead-form__legal a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.lead-form__aviso{font-size:12.5px;line-height:1.45;color:var(--muted);text-align:center;max-width:46ch;margin:-4px auto 0}

/* Faixa de prova (logo abaixo do topo) */
.proof{position:relative;z-index:2;margin-top:-64px}
.proof__grid{display:grid;grid-template-columns:repeat(4,1fr);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow)}
.proof__item{padding:26px 28px;display:flex;flex-direction:column;gap:8px}
.proof__item + .proof__item{border-left:1px solid var(--line)}
.proof__num{font:500 25px/1.05 var(--font-display);letter-spacing:-.01em;display:flex;align-items:center;gap:10px}
.proof__num .i{font-size:24px;color:var(--icon-strong)}
.proof__label{color:var(--muted);font-size:15px;line-height:1.4}

/* Seções */
.section{padding:120px 0}
.section--tight-top{padding-top:104px}
.section--white{background:var(--surface)}
.section-head h2{font-size:clamp(32px,3.6vw,50px);letter-spacing:-.015em;max-width:22ch}
.section-head .lead{margin-top:18px;font-size:18px;color:var(--muted);max-width:60ch}
.section-head .eyebrow{display:block;margin-bottom:18px}

/* Frentes de atuação (home): 8 serviços em 3 grupos, cada grupo com um título curto */
.frentes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:52px}
.frente{position:relative;text-decoration:none;color:inherit;border:1px solid var(--line);border-radius:var(--r-card);padding:26px;background:var(--surface);display:flex;flex-direction:column;gap:12px;transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .3s}
.frente:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--line-strong)}
.frente__icone{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;background:var(--accent-soft);color:var(--icon-strong);font-size:25px;margin-bottom:6px}
.frente h3{font-size:23px}
.frente p{color:var(--muted);font-size:15.5px}
.frente__tag{font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--eyebrow)}
.frente--foto{grid-row:span 2;padding:0;overflow:hidden;color:#fff;border:0;background:var(--navy-900);justify-content:flex-end;isolation:isolate;min-height:420px}
.frente--foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 1s var(--ease)}
.frente--foto:hover img{transform:scale(1.04)}
.frente--foto::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgb(var(--scrim-rgb) / 0) 20%,rgb(var(--scrim-rgb) / .6) 55%,rgb(var(--scrim-rgb) / .95) 100%)}
.frente--foto .frente__corpo{padding:28px;display:flex;flex-direction:column;gap:12px}
.frente--foto p{color:rgb(255 255 255 / .84)}
.frente--foto .frente__tag{color:var(--accent)}
.frente--escura{background:var(--navy-900);color:#fff;border-color:transparent}
.frente--escura p{color:rgb(255 255 255 / .78)}
.frente--escura .frente__icone{background:rgb(255 255 255 / .08);color:var(--accent)}
.frente--escura .frente__tag{color:var(--accent)}

/* Como trabalhamos: linha do tempo */
.steps{list-style:none;padding:0;margin:64px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:40px;position:relative}
.steps::before{content:"";position:absolute;top:28px;left:28px;right:14%;height:1px;background:linear-gradient(90deg,var(--line-strong) 70%,transparent)}
.step{position:relative}
.step__icon{width:56px;height:56px;border-radius:var(--r-pill);background:var(--navy-900);color:#fff;display:grid;place-items:center;font-size:24px;box-shadow:0 0 0 10px var(--surface)}
.section:not(.section--white) .step__icon{box-shadow:0 0 0 10px var(--bg)}
.step:first-child .step__icon{background:var(--accent);color:var(--accent-ink)}
.step h3{font-size:23px;margin-top:26px}
.step p{color:var(--muted);margin-top:10px;font-size:15.5px;max-width:30ch}
.steps-nota{margin-top:44px;font-size:14.5px;color:var(--muted);max-width:72ch;padding-left:16px;border-left:2px solid var(--accent)}

/* Por que a Mundial Imigração: foto da equipe + lista */
.why{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}
.why__media{margin:0}
.why__media img{width:100%;aspect-ratio:4 / 5;object-fit:cover;object-position:50% 30%;border-radius:var(--r-card)}
.why__media figcaption{font-size:14px;color:var(--muted);margin-top:14px;display:flex;align-items:center;gap:8px}
.why__media figcaption .i{font-size:18px;color:var(--icon-strong)}
.why__list{display:grid;grid-template-columns:1fr 1fr;gap:36px 40px;margin-top:44px}
.why__item > .i{font-size:28px;color:var(--icon-strong)}
.why__item h3{font-size:22px;margin-top:14px}
.why__item p{font-size:15.5px;color:var(--muted);margin-top:8px}

/* Dúvidas */
.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}
.faq__aside{position:sticky;top:120px}
.faq__aside h2{font-size:clamp(32px,3.6vw,50px);letter-spacing:-.015em}
.faq__aside p{margin-top:16px;font-size:18px;color:var(--muted);max-width:32ch}
.faq__aside .btn{margin-top:32px}
.faq__list details{border-bottom:1px solid var(--line)}
.faq__list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:26px 0;font:500 21px/1.3 var(--font-display);letter-spacing:-.005em}
.faq__list summary::-webkit-details-marker{display:none}
.faq__list summary .i{font-size:20px;margin-top:4px;transition:transform .35s var(--ease)}
.faq__list details[open] summary .i{transform:rotate(45deg)}
.faq__list details p{padding:0 48px 26px 0;color:var(--muted);font-size:16.5px;max-width:64ch}
.faq__list details p + p{margin-top:-14px}

/* CTA final */
.cta-final{padding:0 0 120px}
.cta-final__box{position:relative;overflow:hidden;isolation:isolate;border-radius:var(--r-card);background:var(--navy-900);color:#fff;padding:88px 48px;text-align:center}
.cta-final__box::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(640px 320px at 50% 125%,rgb(var(--accent-rgb) / .3),transparent 70%)}
.cta-final h2{font-size:clamp(32px,3.8vw,52px);letter-spacing:-.02em;max-width:20ch;margin:0 auto}
.cta-final p{color:rgb(255 255 255 / .8);margin:18px auto 0;max-width:52ch;font-size:18px}
.cta-final__actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:40px}

/* Rodapé */
.site-footer{background:var(--navy-950);color:rgb(255 255 255 / .72);padding:80px 0 40px;font-size:15px}
.footer__grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px}
.footer__brand img{height:64px;width:auto}
.footer__brand p{margin-top:20px;max-width:40ch;line-height:1.7}
.site-footer h3{color:#fff;font:600 15px/1.3 var(--font-body);letter-spacing:0;margin-bottom:16px}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.site-footer a{color:rgb(255 255 255 / .88);text-decoration:none}
.site-footer a:hover{text-decoration:underline;text-underline-offset:3px}
.site-footer li{display:flex;align-items:flex-start;gap:10px;line-height:1.5}
.site-footer li .i{font-size:18px;color:var(--accent);margin-top:2px}
.footer__legal{margin-top:56px;padding-top:28px;border-top:1px solid rgb(255 255 255 / .1);font-size:13px;line-height:1.7;color:rgb(255 255 255 / .62)}
.footer__legal p + p{margin-top:10px}

/* WhatsApp flutuante (desktop) e barra fixa (celular) */
.wa-float{position:fixed;right:24px;bottom:24px;z-index:30;width:60px;height:60px;border-radius:var(--r-pill);background:var(--wa);color:#fff;display:grid;place-items:center;font-size:32px;box-shadow:0 12px 28px -10px rgb(0 0 0 / .45);text-decoration:none;transition:transform .3s var(--ease)}
.wa-float:hover{transform:translateY(-2px) scale(1.04)}
.mbar{display:none}

/* Aviso de cookies */
.cookie{position:fixed;left:24px;bottom:24px;z-index:50;max-width:440px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:var(--r-card);padding:20px 22px;box-shadow:var(--shadow);font-size:13.5px;line-height:1.55;display:grid;gap:14px}
.cookie .btn{height:40px;font-size:14px;justify-self:start;padding:0 18px}
.cookie[hidden]{display:none}

/* ==========================================================================
   Autorização de residência no Brasil
   ========================================================================== */

/* Por que regularizar: texto + 4 riscos */
.regular{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:start}
.regular__texto .eyebrow{display:block}
.regular__texto h2{font-size:clamp(32px,3.6vw,50px);letter-spacing:-.015em;max-width:20ch;margin:18px 0 8px}
.regular__texto p{color:var(--muted);font-size:17px;margin-top:16px;max-width:60ch}
.regular__texto p strong{color:var(--text);font-weight:600}
.riscos{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.risco{border:1px solid var(--line);border-radius:var(--r-card);padding:22px;background:var(--surface)}
.risco .i{font-size:26px;color:var(--icon-strong)}
.risco h3{font-size:20px;margin-top:14px}
.risco p{font-size:15px;color:var(--muted);margin-top:6px}
.risco--escuro{background:var(--navy-900);border-color:transparent;color:#fff}
.risco--escuro .i{color:var(--accent)}
.risco--escuro p{color:rgb(255 255 255 / .78)}

/* Modalidades: 6 cartões, o primeiro maior */
.modalidades{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:52px}
.modalidade{border:1px solid var(--line);border-radius:var(--r-card);padding:26px;background:var(--surface);display:flex;flex-direction:column;gap:10px}
.modalidade .frente__icone{margin-bottom:8px}
.modalidade h3{font-size:23px}
.modalidade p{color:var(--muted);font-size:15.5px}
.modalidades-nota{margin-top:24px;font-size:15px;color:var(--muted);display:flex;gap:10px;align-items:flex-start;max-width:74ch}
.modalidades-nota .i{font-size:20px;color:var(--icon-strong);margin-top:2px}

/* Custos: taxa do governo separada da assessoria (transparência cobrada pelo Google Ads) */
.custos{display:grid;grid-template-columns:1.15fr 1.15fr .9fr;gap:16px;margin-top:48px}
.custo{padding:28px;border-radius:var(--r-card);border:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;gap:12px}
.custo > .i{font-size:28px;color:var(--icon-strong)}
.custo h3{font-size:23px}
.custo p{color:var(--muted);font-size:15.5px}
.custo--destaque{background:var(--navy-900);color:#fff;border-color:transparent}
.custo--destaque > .i{color:var(--accent)}
.custo--destaque p{color:rgb(255 255 255 / .8)}

/* Benefícios: lista em duas colunas com ícone, sem cards (a página já tem muitos) */
.beneficios{list-style:none;padding:0;margin:52px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}
.beneficio{padding:30px 28px 30px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:40px 1fr;gap:4px 16px;align-content:start}
.beneficio .i{grid-row:span 2;font-size:28px;color:var(--icon-strong);margin-top:2px}
.beneficio h3{font-size:21px}
.beneficio p{color:var(--muted);font-size:15.5px}

/* ==========================================================================
   Obrigado
   ========================================================================== */
.site-header--simples{position:absolute}
.site-header--simples .site-header__actions{margin-left:auto}
.header-voltar{display:inline-flex;align-items:center;gap:8px;background:none;border:0;padding:0;cursor:pointer;color:rgb(255 255 255 / .86);font:500 15px/1 var(--font-body)}
.header-voltar:hover{color:#fff}
.header-voltar .i{font-size:18px}
.ty-hero{padding:144px 0 112px}
.ty-grid{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:72px;align-items:center}
.ty-grid .hero__copy{padding-top:0}
.ty-badge{display:inline-flex;align-items:center;gap:10px;height:40px;padding:0 16px 0 10px;border-radius:var(--r-pill);background:rgb(23 152 72 / .16);border:1px solid rgb(37 211 102 / .35);font:600 14px/1 var(--font-body);color:#fff}
.ty-badge .i{font-size:22px;color:#3DDC84}
.ty-hero h1{max-width:15ch}
.ty-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}
.ty-card{background:rgb(255 255 255 / .06);border:1px solid rgb(255 255 255 / .14);border-radius:var(--r-card);padding:32px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.ty-card h2{font-size:26px}
.ty-steps{list-style:none;margin:28px 0 0;padding:0;display:grid}
.ty-step{position:relative;display:grid;grid-template-columns:44px 1fr;column-gap:16px;padding-bottom:26px}
.ty-step:last-child{padding-bottom:0}
.ty-step:not(:last-child)::after{content:"";position:absolute;left:21px;top:44px;bottom:0;width:1px;background:rgb(255 255 255 / .18)}
.ty-step__icon{grid-row:span 2;width:44px;height:44px;border-radius:var(--r-pill);display:grid;place-items:center;font-size:20px;background:rgb(255 255 255 / .1);color:#fff}
.ty-step:first-child .ty-step__icon{background:var(--accent);color:var(--accent-ink)}
.ty-step h3{font:600 16.5px/1.3 var(--font-body);margin-top:6px;letter-spacing:0}
.ty-step p{font-size:15px;color:rgb(255 255 255 / .76);margin-top:4px}
.checklist{list-style:none;margin:44px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.check{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:24px;display:flex;flex-direction:column;gap:22px;min-height:168px}
.check .i{width:44px;height:44px;padding:11px;border-radius:14px;background:var(--accent-soft);color:var(--icon-strong)}
.check span{font:500 20px/1.25 var(--font-display)}
.contato-bloco{display:grid;grid-template-columns:1fr 1.1fr;gap:72px;align-items:center}
.contato-bloco__lista{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:14px;font-size:16px}
.contato-bloco__lista li{display:flex;gap:12px;align-items:flex-start}
.contato-bloco__lista .i{font-size:22px;color:var(--icon-strong);margin-top:1px}
.contato-bloco__lista a{text-decoration-color:var(--line-strong);text-underline-offset:3px}
.contato-bloco img{width:100%;aspect-ratio:3 / 2;object-fit:cover;object-position:50% 25%;border-radius:var(--r-card)}

/* ==========================================================================
   Política de privacidade
   ========================================================================== */
.topo{background:var(--navy-950);color:#fff;padding:0 0 64px}
.topo__barra{height:72px;display:flex;align-items:center;justify-content:space-between}
.topo__barra img{height:38px;width:auto}
.topo h1{font-size:clamp(36px,4.4vw,54px);margin-top:48px}
.topo p{margin-top:14px;color:rgb(255 255 255 / .78);max-width:62ch}
/* Índice fixo ao lado no desktop: o texto é longo e a pessoa costuma procurar um item só */
.corpo{display:grid;grid-template-columns:260px minmax(0,1fr);gap:64px;padding:64px 24px 96px;align-items:start}
.indice{position:sticky;top:32px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:22px}
.indice strong{display:block;font:600 15px/1.3 var(--font-body);margin-bottom:12px}
.indice ol{margin:0;padding-left:20px;display:grid;gap:6px;font-size:14px;color:var(--muted)}
.indice a{text-decoration:none}
.indice a:hover{color:var(--text);text-decoration:underline;text-underline-offset:3px}
.texto{max-width:72ch;font-size:16.5px;line-height:1.7}
.texto section{scroll-margin-top:24px}
.texto section + section{margin-top:44px}
.texto h2{font-size:28px;margin-bottom:14px}
.texto p + p,.texto p + ul,.texto ul + p{margin-top:12px}
.texto ul{padding-left:22px;margin:0;display:grid;gap:6px}
.texto strong{font-weight:600}
.resumo{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:24px 26px;margin-bottom:44px}
.resumo h2{font-size:24px;margin-bottom:10px}
.rodape{background:var(--navy-950);color:rgb(255 255 255 / .62);font-size:13px;line-height:1.7;padding:32px 0}

/* Movimento: só a revelação ao rolar, abaixo do topo; nada em loop.
   O topo NÃO tem animação de entrada (o Grupo Mundial tinha): título e formulário começavam com
   opacidade 0, o que atrasa o LCP no PageSpeed e, em aba em segundo plano ou captura, deixava o
   topo vazio. Só transform e opacity: não mexem no layout, então não contam no CLS. */
@media (prefers-reduced-motion:no-preference){
  .ty-badge .i{animation:selo .7s var(--ease) .15s both}
  .js [data-reveal]{opacity:0;transform:translateY(20px);transition:opacity .8s var(--ease),transform .8s var(--ease);transition-delay:calc(var(--i,0) * 70ms)}
  .js [data-reveal].is-in{opacity:1;transform:none}
  @keyframes selo{from{transform:scale(.4);opacity:0}to{transform:none;opacity:1}}
}

/* Responsivo */
/* entre 1080 e 1240 px menu + WhatsApp + botão não cabem numa linha: o WhatsApp fica só no ícone */
@media (max-width:1240px){.header-wa span{display:none}}
@media (max-width:1079px){
  .site-nav{display:none}
  .site-header__actions{margin-left:auto}
  .hero__grid,.ty-grid{grid-template-columns:1fr;gap:44px}
  .hero__copy{padding-top:0}
  .hero__sub{max-width:46ch}
  .lead-card,.ty-card{max-width:560px}
  .proof__grid{grid-template-columns:repeat(2,1fr)}
  .proof__item:nth-child(3){border-left:0}
  .proof__item:nth-child(n+3){border-top:1px solid var(--line)}
  .frentes{grid-template-columns:repeat(2,1fr)}
  .frente--foto{grid-row:auto;grid-column:1 / -1;min-height:380px}
  /* 7 cartões depois da foto: o último ocupa a linha toda para não sobrar célula vazia */
  .frentes > .frente:last-child{grid-column:1 / -1}
  .steps{grid-template-columns:repeat(2,1fr);row-gap:56px}
  .steps::before{display:none}
  .why,.regular,.contato-bloco{grid-template-columns:1fr;gap:48px}
  .why__media img{aspect-ratio:16 / 11}
  .faq{grid-template-columns:1fr;gap:32px}
  .faq__aside{position:static}
  .modalidades{grid-template-columns:repeat(2,1fr)}
  .custos{grid-template-columns:1fr 1fr}
  .custo:last-child{grid-column:1 / -1}
  .beneficios{grid-template-columns:repeat(2,1fr)}
  .checklist{grid-template-columns:repeat(2,1fr)}
  .corpo{grid-template-columns:1fr;gap:32px;padding-block:40px 72px}
  .indice{position:static}
}
@media (max-width:767px){
  .container,.corpo{padding-inline:16px}
  .site-header{height:64px}
  .site-header__logo img,.topo__barra img{height:32px}
  .site-header .btn{display:none}
  .header-wa span{display:none}
  .header-wa{width:44px;height:44px;justify-content:center;border-radius:var(--r-pill);border:1px solid rgb(255 255 255 / .25)}

  /* WhatsApp do topo no celular com destaque: fundo verde do WhatsApp e maior (pedido do usuário, 23/09/2026) */
  .header-wa{width:48px;height:48px;background:#25D366;border-color:#25D366;box-shadow:0 6px 16px -6px rgb(0 0 0 / .45)}
  .header-wa .i{font-size:28px;color:#fff}
  .hero{padding:96px 0 100px}
  .hero__scrim{background:linear-gradient(180deg,rgb(var(--scrim-rgb) / .8) 0%,rgb(var(--scrim-rgb) / .92) 50%,rgb(var(--scrim-rgb) / .97) 100%)}
  .hero h1{font-size:38px;margin-top:14px}
  .hero__sub{font-size:16.5px;margin-top:16px}
  .hero__cta{display:none}
  .hero__selos{margin-top:22px;font-size:14px;gap:8px 16px}
  .lead-card{padding:22px 18px}
  .lead-card__head h2{font-size:24px}
  .chips__list{gap:6px}
  .chip span{height:34px;padding:0 11px;font-size:13.5px}
  .field-row{grid-template-columns:1fr}
  .proof{margin-top:-52px}
  .proof__item{padding:20px 18px}
  /* ícone em cima do número: lado a lado, em meia tela de celular, o texto quebrava em duas linhas */
  .proof__num{font-size:22px;flex-direction:column;align-items:flex-start;gap:6px}
  .proof__label{font-size:14px}
  .section{padding:80px 0}
  .section-head .lead{font-size:17px}
  .frentes,.modalidades{grid-template-columns:1fr;gap:12px;margin-top:36px}
  .frente--foto{grid-column:auto;min-height:340px}
  .steps{grid-template-columns:1fr;gap:0;margin-top:40px}
  /* conector por etapa, para a linha terminar no último ícone e não embaixo do texto */
  .step:not(:last-child)::after{content:"";position:absolute;left:27px;top:56px;bottom:0;width:1px;background:var(--line-strong)}
  .step{display:grid;grid-template-columns:56px 1fr;column-gap:20px;padding-bottom:36px}
  .step:last-child{padding-bottom:0}
  .step__icon{grid-row:span 2}
  .step h3{margin-top:12px}
  .step p{margin-top:6px}
  .why__list{grid-template-columns:1fr;gap:28px;margin-top:32px}
  .riscos{grid-template-columns:1fr}
  .custos,.beneficios,.checklist{grid-template-columns:1fr;margin-top:32px}
  .custo:last-child{grid-column:auto}
  .beneficio{padding:22px 0}
  .faq__list summary{font-size:19px;padding:22px 0}
  .faq__list details p{padding-right:0}
  .cta-final{padding-bottom:96px}
  .cta-final__box{padding:56px 22px}
  .cta-final__actions .btn{width:100%}
  .footer__grid{grid-template-columns:1fr;gap:36px}
  .site-footer{padding-bottom:110px}
  .wa-float{display:none}
  .mbar{display:grid;grid-template-columns:52px 1fr;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:45;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--mbar-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);transform:translateY(110%);transition:transform .4s var(--ease)}
  .mbar.is-on{transform:none}
  .mbar .btn{height:50px;padding:0}
  .cookie{left:12px;right:12px;bottom:12px;max-width:none}
  .ty-hero{padding:104px 0 72px}
  .ty-hero h1{font-size:36px}
  .ty-card{padding:24px 20px}
  .ty-actions{flex-direction:column;margin-top:28px}
  .ty-actions .btn{width:100%}
  .check{flex-direction:row;align-items:center;gap:16px;min-height:0;padding:18px}
  .check span{font-size:18px}
  .topo h1{margin-top:28px}
}

/* ==========================================================================
   Tema por página: <html lang="pt-BR" data-tema="residencia">. Sem data-tema = marinho da marca
   (home, obrigado, política). Mesmo esquema do Grupo Mundial: o bloco escuro repete TODAS as
   variáveis que mudam no escuro, porque o bloco claro do tema tem a mesma força do bloco
   escuro base e, vindo depois, ganharia dele.
   Contraste conferido: botão (dourado x --accent-ink) 5,1:1; dourado sobre o verde do topo
   5,1:1; --icon-strong sobre --bg 5,9:1.
   ========================================================================== */

/* Residência no Brasil: verde e dourado (o verde já era a cor da página antiga) */
:root[data-tema="residencia"]{
  --navy-950:#06261B; --navy-900:#0C3A2A; --navy-800:#124B37; --navy-700:#1B6A4E;
  --accent-ink:#0C3A2A;
  --bg:#F4F6F2; --surface:#FFFFFD; --surface-2:#E8EEE7; --field-bg:#F9FBF8;
  --text:#0D1F17; --muted:#4A5B52; --line:#DCE4DC; --line-strong:#B8C8BB;
  --icon-strong:#1B6A4E; --eyebrow:#1B6A4E; --chip-on-bg:#0C3A2A; --accent-soft:#E6F0E8;
  --scrim-rgb:6 38 27; --focus-ring:rgb(27 106 78 / .2);
  --mbar-bg:rgb(255 255 253 / .94);
}
@media (prefers-color-scheme:dark){
  :root[data-tema="residencia"]:not([data-theme="light"]){
    --bg:#04150F; --surface:#082219; --surface-2:#0C2E22;
    --text:#E8F1EC; --muted:#A5BAAE; --line:#16392C; --line-strong:#2C5A47;
    --icon-strong:#D8B878; --eyebrow:#D8B878; --accent-soft:#2A2416;
    --chip-on-bg:#E8F1EC; --chip-on-text:#06261B;
    --field-bg:#061C14; --card-form:#0D3526; --mbar-bg:rgb(8 34 25 / .94);
  }
}
:root[data-tema="residencia"][data-theme="dark"]{
  --bg:#04150F; --surface:#082219; --surface-2:#0C2E22;
  --text:#E8F1EC; --muted:#A5BAAE; --line:#16392C; --line-strong:#2C5A47;
  --icon-strong:#D8B878; --eyebrow:#D8B878; --accent-soft:#2A2416;
  --chip-on-bg:#E8F1EC; --chip-on-text:#06261B;
  --field-bg:#061C14; --card-form:#0D3526; --mbar-bg:rgb(8 34 25 / .94);
}

/* ==========================================================================
   Componentes das páginas de cidadania italiana, Green Card, EB-2 NIW/L-1 e K-1 (23/09/2026)
   ========================================================================== */

/* Comparação lado a lado (EB-2 NIW x L-1, K-1 x visto de cônjuge): dois cartões iguais, sem
   eleger um "melhor", porque o certo depende do caso */
.compara{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:48px}
.compara__col{border:1px solid var(--line);border-radius:var(--r-card);padding:30px;background:var(--surface)}
.compara__tag{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 12px;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--icon-strong);font-size:13px;font-weight:600;letter-spacing:.02em}
.compara__col h3{font-size:28px;margin-top:18px}
.compara__col > p{color:var(--muted);margin-top:8px;font-size:15.5px}
.compara__col ul{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:12px;border-top:1px solid var(--line);padding-top:22px}
.compara__col li{display:grid;grid-template-columns:20px 1fr;gap:10px;font-size:15.5px;line-height:1.5}
.compara__col li .i{font-size:18px;color:var(--icon-strong);margin-top:3px}

/* Aviso de mudança recente (regra nova, decisão judicial): fundo suave do acento, ícone à esquerda */
.alerta{display:grid;grid-template-columns:28px 1fr;gap:14px;margin-top:40px;padding:22px 24px;border-radius:var(--r-card);background:var(--accent-soft);border:1px solid var(--line)}
.alerta > .i{font-size:26px;color:var(--icon-strong);margin-top:1px}
.alerta strong{display:block;font:500 21px/1.25 var(--font-display);color:var(--text)}
.alerta p{margin-top:6px;color:var(--muted);font-size:15.5px;max-width:78ch}

@media (max-width:767px){
  .compara{grid-template-columns:1fr;margin-top:32px}
  .compara__col{padding:24px 20px}
  .compara__col h3{font-size:24px}
  .alerta{grid-template-columns:1fr;gap:10px;padding:20px}
}

/* Cidadania italiana: terracota e areia (Toscana/Vêneto) */
:root[data-tema="italia"]{
  --navy-950:#26100A; --navy-900:#3A1A12; --navy-800:#4E2418; --navy-700:#6E3322;
  --accent:#E3875B; --accent-hover:#EA9B75; --accent-ink:#26100A; --accent-soft:#FBE7DC;
  --bg:#F8F4F0; --surface:#FFFDFB; --surface-2:#F0E8E1; --field-bg:#FCF9F6;
  --text:#22130E; --muted:#5E4B44; --line:#E8DDD5; --line-strong:#CDBBAE;
  --icon-strong:#9A4524; --eyebrow:#9A4524; --chip-on-bg:#3A1A12;
  --scrim-rgb:38 16 10; --accent-rgb:227 135 91; --focus-ring:rgb(154 69 36 / .2);
  --mbar-bg:rgb(255 253 251 / .94);
}
@media (prefers-color-scheme:dark){
  :root[data-tema="italia"]:not([data-theme="light"]){
    --bg:#150906; --surface:#21100B; --surface-2:#2B1610;
    --text:#F4ECE8; --muted:#C3AFA7; --line:#3A2119; --line-strong:#5E3A2E;
    --icon-strong:#F0A27C; --eyebrow:#F0A27C; --accent-soft:#3A2014;
    --chip-on-bg:#F4ECE8; --chip-on-text:#26100A;
    --field-bg:#1A0B07; --card-form:#34170F; --mbar-bg:rgb(33 16 11 / .94);
  }
}
:root[data-tema="italia"][data-theme="dark"]{
  --bg:#150906; --surface:#21100B; --surface-2:#2B1610;
  --text:#F4ECE8; --muted:#C3AFA7; --line:#3A2119; --line-strong:#5E3A2E;
  --icon-strong:#F0A27C; --eyebrow:#F0A27C; --accent-soft:#3A2014;
  --chip-on-bg:#F4ECE8; --chip-on-text:#26100A;
  --field-bg:#1A0B07; --card-form:#34170F; --mbar-bg:rgb(33 16 11 / .94);
}

/* Green Card: azul-petróleo e menta */
:root[data-tema="green-card"]{
  --navy-950:#04262B; --navy-900:#073840; --navy-800:#0B4A54; --navy-700:#106470;
  --accent:#5CD6B4; --accent-hover:#7EE0C4; --accent-ink:#04262B; --accent-soft:#DDF5EE;
  --bg:#F2F7F6; --surface:#FDFFFE; --surface-2:#E4EFED; --field-bg:#F8FBFA;
  --text:#0B1E20; --muted:#465D5F; --line:#D6E4E2; --line-strong:#AFC7C4;
  --icon-strong:#0B6B70; --eyebrow:#0B6B70; --chip-on-bg:#073840;
  --scrim-rgb:4 38 43; --accent-rgb:92 214 180; --focus-ring:rgb(11 107 112 / .2);
  --mbar-bg:rgb(253 255 254 / .94);
}
@media (prefers-color-scheme:dark){
  :root[data-tema="green-card"]:not([data-theme="light"]){
    --bg:#021517; --surface:#062125; --surface-2:#0A2C31;
    --text:#E6F3F1; --muted:#A0BDBA; --line:#12393E; --line-strong:#2A5A60;
    --icon-strong:#6FE0C1; --eyebrow:#6FE0C1; --accent-soft:#0E3A33;
    --chip-on-bg:#E6F3F1; --chip-on-text:#04262B;
    --field-bg:#041A1D; --card-form:#0A343A; --mbar-bg:rgb(6 33 37 / .94);
  }
}
:root[data-tema="green-card"][data-theme="dark"]{
  --bg:#021517; --surface:#062125; --surface-2:#0A2C31;
  --text:#E6F3F1; --muted:#A0BDBA; --line:#12393E; --line-strong:#2A5A60;
  --icon-strong:#6FE0C1; --eyebrow:#6FE0C1; --accent-soft:#0E3A33;
  --chip-on-bg:#E6F3F1; --chip-on-text:#04262B;
  --field-bg:#041A1D; --card-form:#0A343A; --mbar-bg:rgb(6 33 37 / .94);
}

/* EB-2 NIW e L-1: grafite e azul (tom corporativo, diferente do marinho da home) */
:root[data-tema="eb2-l1"]{
  --navy-950:#0E121A; --navy-900:#171D29; --navy-800:#212A3A; --navy-700:#2E3B52;
  --accent:#7FA8FF; --accent-hover:#9DBCFF; --accent-ink:#0E121A; --accent-soft:#E3EBFF;
  --bg:#F4F5F8; --surface:#FEFEFF; --surface-2:#E9ECF2; --field-bg:#F9FAFC;
  --text:#111522; --muted:#4C5468; --line:#DDE1EA; --line-strong:#B9C0CF;
  --icon-strong:#2F5BC7; --eyebrow:#2F5BC7; --chip-on-bg:#171D29;
  --scrim-rgb:14 18 26; --accent-rgb:127 168 255; --focus-ring:rgb(47 91 199 / .2);
  --mbar-bg:rgb(254 254 255 / .94);
}
@media (prefers-color-scheme:dark){
  :root[data-tema="eb2-l1"]:not([data-theme="light"]){
    --bg:#080B11; --surface:#111620; --surface-2:#18202D;
    --text:#ECEFF5; --muted:#A8B0C2; --line:#232C3C; --line-strong:#3A465C;
    --icon-strong:#8FB2FF; --eyebrow:#8FB2FF; --accent-soft:#1A2544;
    --chip-on-bg:#ECEFF5; --chip-on-text:#0E121A;
    --field-bg:#0C1018; --card-form:#1C2433; --mbar-bg:rgb(17 22 32 / .94);
  }
}
:root[data-tema="eb2-l1"][data-theme="dark"]{
  --bg:#080B11; --surface:#111620; --surface-2:#18202D;
  --text:#ECEFF5; --muted:#A8B0C2; --line:#232C3C; --line-strong:#3A465C;
  --icon-strong:#8FB2FF; --eyebrow:#8FB2FF; --accent-soft:#1A2544;
  --chip-on-bg:#ECEFF5; --chip-on-text:#0E121A;
  --field-bg:#0C1018; --card-form:#1C2433; --mbar-bg:rgb(17 22 32 / .94);
}

/* Visto K-1 (noivos): ameixa e rosé */
:root[data-tema="k1"]{
  --navy-950:#1F0A1D; --navy-900:#2E0F2A; --navy-800:#42173C; --navy-700:#5E2255;
  --accent:#F2A7C3; --accent-hover:#F6BFD3; --accent-ink:#1F0A1D; --accent-soft:#FBE5EE;
  --bg:#F8F4F6; --surface:#FFFDFE; --surface-2:#F0E6EC; --field-bg:#FCF9FB;
  --text:#1E1119; --muted:#5D4A56; --line:#E8DCE3; --line-strong:#CDB9C5;
  --icon-strong:#9B2F6A; --eyebrow:#9B2F6A; --chip-on-bg:#2E0F2A;
  --scrim-rgb:31 10 29; --accent-rgb:242 167 195; --focus-ring:rgb(155 47 106 / .2);
  --mbar-bg:rgb(255 253 254 / .94);
}
@media (prefers-color-scheme:dark){
  :root[data-tema="k1"]:not([data-theme="light"]){
    --bg:#12060F; --surface:#1D0B19; --surface-2:#281124;
    --text:#F5EAF1; --muted:#C6AEBD; --line:#371831; --line-strong:#5A2F52;
    --icon-strong:#F4AFCA; --eyebrow:#F4AFCA; --accent-soft:#3A1530;
    --chip-on-bg:#F5EAF1; --chip-on-text:#1F0A1D;
    --field-bg:#170813; --card-form:#34142E; --mbar-bg:rgb(29 11 25 / .94);
  }
}
:root[data-tema="k1"][data-theme="dark"]{
  --bg:#12060F; --surface:#1D0B19; --surface-2:#281124;
  --text:#F5EAF1; --muted:#C6AEBD; --line:#371831; --line-strong:#5A2F52;
  --icon-strong:#F4AFCA; --eyebrow:#F4AFCA; --accent-soft:#3A1530;
  --chip-on-bg:#F5EAF1; --chip-on-text:#1F0A1D;
  --field-bg:#170813; --card-form:#34142E; --mbar-bg:rgb(29 11 25 / .94);
}

/* Códigos com hífen (EB-2, L-1, K-1) não quebram no hífen: "EB-" numa linha e "3" na outra */
.nw{white-space:nowrap}
