/* ============================================================================
   Clube do Cofrinho — sistema de design 2026 (cdc.css)
   ----------------------------------------------------------------------------
   Uma folha compartilhada por todas as páginas. Camadas:
     1. tokens      cores, tipografia, espaço, raio, sombra, movimento
     2. base        reset leve, tipografia, foco, seleção, redução de movimento
     3. layout      .wrap, .narrow, .section, .stack, .cols
     4. componentes botões, campos, chips, avisos, folhas de papel, barra,
                    gaveta, rodapé, progresso, trilha
     5. variantes   [data-theme="kids"] (mais brincalhão, mesma marca)
   Regras: contraste medido (ver scrollcraft/builds/.../BRIEF.md), nunca texto
   branco sobre o verde #70B554, um só acento (amarelo), verde = sinal de
   progresso/sucesso. Sem travessões no texto visível.
   ========================================================================== */

/* ------------------------------------------------------------- 1. tokens -- */
:root{
  /* cor */
  --cdc-papel:#FBF7EE;        /* fundo da página */
  --cdc-areia:#F2EBDB;        /* superfície secundária */
  --cdc-branco:#FFFFFF;       /* cartões e campos */
  --cdc-carvao:#2B2724;       /* tinta e faixa escura */
  --cdc-carvao-2:#3D3832;     /* superfície escura elevada */
  --cdc-tinta:#2B2724;
  --cdc-tinta-suave:#5E564C;  /* texto secundário (6.7:1 no papel) */
  --cdc-tinta-leve:#7A7167;   /* legendas (4.5:1 no papel) */
  --cdc-linha:#E4DCCB;        /* fio decorativo */
  --cdc-borda:#8C8273;        /* bordas de controle (≥3:1) */
  --cdc-amarelo:#FFCF3F;      /* assinatura */
  --cdc-amarelo-escuro:#E9B824;
  --cdc-amarelo-papel:#FFF3C9;
  --cdc-verde:#70B554;        /* preenchimento de progresso; nunca com texto branco */
  --cdc-verde-escuro:#2F6B20; /* texto e botões verdes */
  --cdc-verde-fundo:#E7F3DE;
  --cdc-coral:#C8401F;        /* erro */
  --cdc-coral-fundo:#FBE9E3;
  --cdc-papel-claro-no-escuro:#FBF7EE;
  --cdc-papel-suave-no-escuro:#CFC6B8;

  /* tipografia */
  --cdc-display:"Fraunces","Fraunces Reserva","Georgia",serif;
  --cdc-texto:"Poppins",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --cdc-soft:40;              /* eixo SOFT da Fraunces: 40 adulto, 100 kids */
  --cdc-t-xs:.78rem; --cdc-t-sm:.88rem; --cdc-t-base:1rem; --cdc-t-lg:1.18rem;
  --cdc-t-xl:clamp(1.4rem,1.2rem + 1vw,1.85rem);
  --cdc-t-2xl:clamp(1.85rem,1.4rem + 2.2vw,2.7rem);
  --cdc-t-3xl:clamp(2.3rem,1.5rem + 3.6vw,3.8rem);
  --cdc-t-4xl:clamp(2.6rem,1.5rem + 5vw,5rem);
  --cdc-medida:62ch;

  /* espaço (base 4px) */
  --cdc-1:.25rem; --cdc-2:.5rem; --cdc-3:.75rem; --cdc-4:1rem; --cdc-5:1.5rem;
  --cdc-6:2rem; --cdc-7:3rem; --cdc-8:4rem; --cdc-9:6rem; --cdc-10:8rem; --cdc-11:12rem;
  --cdc-secao:clamp(3.5rem,8vw,7.5rem);
  --cdc-calha:clamp(1.125rem,5vw,2.75rem);
  --cdc-max:72.5rem;

  /* raio: uma escala só */
  --cdc-r-sm:10px; --cdc-r-md:16px; --cdc-r-lg:24px; --cdc-r-pill:999px;

  /* sombra quente, sempre com deslocamento e desfoque */
  --cdc-sombra-cor:35 30% 12%;
  --cdc-e1:0 1px 2px hsl(var(--cdc-sombra-cor) / .08),0 2px 8px -2px hsl(var(--cdc-sombra-cor) / .10);
  --cdc-e2:0 2px 4px hsl(var(--cdc-sombra-cor) / .08),0 10px 24px -6px hsl(var(--cdc-sombra-cor) / .18);
  --cdc-e3:0 4px 8px hsl(var(--cdc-sombra-cor) / .08),0 22px 48px -12px hsl(var(--cdc-sombra-cor) / .26);

  /* movimento */
  --cdc-ease:cubic-bezier(.23,1,.32,1);
  --cdc-ease-in-out:cubic-bezier(.77,0,.175,1);
  --cdc-d-fast:140ms; --cdc-d-base:220ms; --cdc-d-slow:420ms;

  --cdc-altura-barra:4rem;
}

/* --------------------------------------------------------------- 2. base -- */
/* Fraunces hospedada aqui (OFL 1.1, subconjunto latin do Google Fonts, variável: wght 500-700, opsz, SOFT).
   "Fraunces Reserva" = Georgia do aparelho ajustada às medidas da Fraunces, para o título não pular quando a fonte chega. */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:500 700;font-display:swap;src:url('/fraunces-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Fraunces Reserva';font-weight:600 700;src:local('Georgia Bold'),local('Georgia-Bold');size-adjust:90.5%;ascent-override:108%;descent-override:28%;line-gap-override:0%}
@font-face{font-family:'Fraunces Reserva';font-weight:400 500;src:local('Georgia');size-adjust:103.7%;ascent-override:94.3%;descent-override:24.6%;line-gap-override:0%}
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url('/poppins-400.woff') format('woff')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url('/poppins-500.woff') format('woff')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url('/poppins-700.woff') format('woff')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;src:url('/poppins-700.woff') format('woff')}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--cdc-altura-barra) + .75rem)}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--cdc-papel);color:var(--cdc-tinta);font-family:var(--cdc-texto);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
img,svg,video,canvas{display:block;max-width:100%}
img{height:auto}
button,input,select,textarea{font:inherit;color:inherit}
p{margin:0 0 1rem}
ul,ol{margin:0 0 1rem;padding-left:1.25rem}
a{color:var(--cdc-verde-escuro);text-decoration-thickness:1px;text-underline-offset:.2em}
a:hover{color:#245417}
h1,h2,h3,h4{font-family:var(--cdc-display);font-weight:600;font-variation-settings:"SOFT" var(--cdc-soft),"WONK" 0;line-height:1.08;letter-spacing:-.012em;color:var(--cdc-tinta);margin:0 0 .5em;text-wrap:balance}
h1{font-size:var(--cdc-t-3xl)}
h2{font-size:var(--cdc-t-2xl)}
h3{font-size:var(--cdc-t-xl)}
h4{font-size:var(--cdc-t-lg);font-family:var(--cdc-texto);font-weight:600;letter-spacing:0;line-height:1.3}
.cdc-lead{font-size:var(--cdc-t-lg);line-height:1.5;color:var(--cdc-tinta);max-width:46ch;text-wrap:pretty}
.cdc-suave{color:var(--cdc-tinta-suave)}
.cdc-leve{color:var(--cdc-tinta-leve);font-size:var(--cdc-t-sm)}
.cdc-rotulo{font-family:var(--cdc-texto);font-size:var(--cdc-t-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--cdc-tinta-suave)}
.cdc-nums,[data-cdc-nums]{font-variant-numeric:tabular-nums}
strong,b{font-weight:600}
::selection{background:var(--cdc-amarelo);color:var(--cdc-carvao)}
:root{caret-color:var(--cdc-verde-escuro);accent-color:var(--cdc-verde-escuro)}
:focus-visible{outline:3px solid var(--cdc-carvao);outline-offset:3px;border-radius:var(--cdc-r-sm)}
.cdc-escuro :focus-visible,.cdc-escuro:focus-visible{outline-color:var(--cdc-amarelo)}
@supports (scrollbar-color:auto){html{scrollbar-color:#b9ae99 transparent;scrollbar-width:thin}}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.cdc-pular{position:absolute;left:1rem;top:-4rem;z-index:1000;background:var(--cdc-carvao);color:var(--cdc-papel);padding:.6rem 1rem;border-radius:var(--cdc-r-sm);text-decoration:none}
.cdc-pular:focus{top:1rem}

/* ------------------------------------------------------------- 3. layout -- */
.wrap{width:100%;max-width:var(--cdc-max);margin-inline:auto;padding-inline:var(--cdc-calha)}
.narrow{max-width:46rem;margin-inline:auto}
.cdc-secao{padding-block:var(--cdc-secao)}
.cdc-secao--curta{padding-block:clamp(2.5rem,5vw,4rem)}
.cdc-stack>*+*{margin-top:var(--cdc-4)}
.cdc-stack>:is(h1,h2,h3)+*{margin-top:var(--cdc-3)}
.cdc-stack>:is(h2,h3){margin-top:var(--cdc-7)}
.cdc-stack>:is(h1,h2,h3):first-child{margin-top:0}
.cdc-fio{height:1px;border:0;background:var(--cdc-linha);margin:0}
.cdc-cols{display:grid;gap:var(--cdc-6)}
@media (min-width:860px){.cdc-cols--2{grid-template-columns:1fr 1fr}.cdc-cols--3-2{grid-template-columns:3fr 2fr}.cdc-cols--2-3{grid-template-columns:2fr 3fr}}
.cdc-centro{text-align:center}
.cdc-cabeca{max-width:46rem;margin:0 auto var(--cdc-6)}
.cdc-cabeca p{color:var(--cdc-tinta-suave);max-width:var(--cdc-medida);text-wrap:pretty}
.cdc-cabeca.cdc-centro p{margin-inline:auto}

/* --------------------------------------------------------- 4. componentes -- */
/* botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:3rem;padding:.75rem 1.4rem;border-radius:var(--cdc-r-pill);border:2px solid transparent;font-weight:600;font-size:1rem;line-height:1.2;text-decoration:none;cursor:pointer;white-space:nowrap;transition:transform var(--cdc-d-fast) var(--cdc-ease),background-color var(--cdc-d-fast) var(--cdc-ease),border-color var(--cdc-d-fast) var(--cdc-ease),box-shadow var(--cdc-d-fast) var(--cdc-ease)}
.btn:active{transform:translateY(1px) scale(.985)}
.btn:disabled,.btn[aria-disabled="true"]{opacity:.55;cursor:not-allowed;transform:none}
.btn--primario{background:var(--cdc-amarelo);color:var(--cdc-carvao);box-shadow:var(--cdc-e1)}
.btn--primario:hover{background:var(--cdc-amarelo-escuro);color:var(--cdc-carvao);box-shadow:var(--cdc-e2)}
.btn--escuro{background:var(--cdc-carvao);color:var(--cdc-papel)}
.btn--escuro:hover{background:#1d1a17;color:var(--cdc-papel)}
.btn--verde{background:var(--cdc-verde-escuro);color:#fff}
.btn--verde:hover{background:#255418;color:#fff}
.btn--contorno{background:transparent;color:var(--cdc-carvao);border-color:var(--cdc-carvao)}
.btn--contorno:hover{background:var(--cdc-carvao);color:var(--cdc-papel)}
.cdc-escuro .btn--contorno{color:var(--cdc-papel);border-color:var(--cdc-papel)}
.cdc-escuro .btn--contorno:hover{background:var(--cdc-papel);color:var(--cdc-carvao)}
.btn--fantasma{background:transparent;color:var(--cdc-carvao);padding-inline:.9rem}
.btn--fantasma:hover{background:rgba(43,39,36,.07);color:var(--cdc-carvao)}
.btn--pequeno{min-height:2.5rem;padding:.45rem 1rem;font-size:var(--cdc-t-sm)}
.btn--bloco{display:flex;width:100%}
.btn--link{display:inline-flex;align-items:center;gap:.4rem;min-height:3rem;padding:.5rem .25rem;color:var(--cdc-verde-escuro);font-weight:600;text-decoration:underline;text-underline-offset:.25em;text-decoration-thickness:2px;background:none;border:0;cursor:pointer}
.btn--link:hover{color:#245417}
.btn svg{width:1.1em;height:1.1em;flex:none}
/* em telas estreitas um rótulo longo quebra linha em vez de vazar do cartão */
@media (max-width:520px){.btn{white-space:normal;text-align:center;line-height:1.25}}

/* campos */
.campo{display:block;margin-bottom:var(--cdc-4)}
.campo label,.campo .campo__rotulo{display:block;font-weight:600;font-size:var(--cdc-t-sm);margin-bottom:.35rem;color:var(--cdc-tinta)}
.campo input:not([type=checkbox]):not([type=radio]),.campo select,.campo textarea,.cdc-input{width:100%;min-height:3rem;padding:.65rem .9rem;border:2px solid var(--cdc-borda);border-radius:var(--cdc-r-sm);background:var(--cdc-branco);color:var(--cdc-tinta);transition:border-color var(--cdc-d-fast),box-shadow var(--cdc-d-fast)}
.campo input::placeholder,.cdc-input::placeholder{color:#8a8176}
.campo input:focus,.campo select:focus,.campo textarea:focus,.cdc-input:focus{outline:none;border-color:var(--cdc-carvao);box-shadow:0 0 0 3px rgba(255,207,63,.45)}
.campo input[aria-invalid="true"]{border-color:var(--cdc-coral)}
.campo .dica,.dica{font-size:var(--cdc-t-sm);color:var(--cdc-tinta-suave);margin:.35rem 0 0}
.campo .erro,.cdc-erro{font-size:var(--cdc-t-sm);color:var(--cdc-coral);font-weight:600;margin:.35rem 0 0}
.campo select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%232B2724' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .8rem center;padding-right:2.4rem}
.cdc-linha-campos{display:grid;gap:0 var(--cdc-4)}
@media (min-width:560px){.cdc-linha-campos{grid-template-columns:1fr 1fr}}
.cdc-check{display:flex;gap:.75rem;align-items:flex-start;font-size:var(--cdc-t-sm);color:var(--cdc-tinta-suave);cursor:pointer;margin:0 0 var(--cdc-4)}
.cdc-check input{width:1.25rem;height:1.25rem;margin:.15rem 0 0;flex:none;accent-color:var(--cdc-verde-escuro)}
.cdc-check b{color:var(--cdc-tinta)}
/* segmentos (abas) */
.cdc-segmentos{display:flex;gap:.25rem;padding:.25rem;background:var(--cdc-areia);border-radius:var(--cdc-r-pill);margin-bottom:var(--cdc-5)}
.cdc-segmentos button{flex:1;min-height:2.75rem;border:0;background:transparent;border-radius:var(--cdc-r-pill);font-weight:600;font-size:var(--cdc-t-sm);color:var(--cdc-tinta-suave);cursor:pointer;transition:background-color var(--cdc-d-fast),color var(--cdc-d-fast)}
.cdc-segmentos button[aria-selected="true"]{background:var(--cdc-branco);color:var(--cdc-tinta);box-shadow:var(--cdc-e1)}
/* divulgação ("mais opções") */
.cdc-revelar>summary,.cdc-revelar__botao{list-style:none;display:inline-flex;align-items:center;gap:.4rem;min-height:2.75rem;padding:.4rem .25rem;font-size:var(--cdc-t-sm);font-weight:600;color:var(--cdc-verde-escuro);cursor:pointer;background:none;border:0;text-decoration:underline;text-underline-offset:.25em}
.cdc-revelar>summary::-webkit-details-marker{display:none}
.cdc-revelar>summary::before,.cdc-revelar__botao::before{content:"";width:.55em;height:.55em;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform var(--cdc-d-fast);margin-right:.2rem}
.cdc-revelar[open]>summary::before,.cdc-revelar__botao[aria-expanded="true"]::before{transform:rotate(45deg)}
/* chips e selos */
.cdc-chip{display:inline-flex;align-items:center;gap:.4rem;min-height:2rem;padding:.3rem .8rem;border-radius:var(--cdc-r-pill);background:var(--cdc-branco);border:1px solid var(--cdc-linha);font-size:var(--cdc-t-sm);font-weight:500;color:var(--cdc-tinta-suave)}
.cdc-chip--verde{background:var(--cdc-verde-fundo);border-color:#cfe4c2;color:var(--cdc-verde-escuro)}
.cdc-chip--amarelo{background:var(--cdc-amarelo-papel);border-color:#f1dc9a;color:var(--cdc-carvao)}
.cdc-chips{display:flex;flex-wrap:wrap;gap:.5rem}
/* avisos */
.cdc-aviso{padding:.9rem 1.1rem;border-radius:var(--cdc-r-md);background:var(--cdc-amarelo-papel);color:var(--cdc-tinta);font-size:var(--cdc-t-sm);border:1px solid #f1dc9a}
.cdc-aviso--ok{background:var(--cdc-verde-fundo);border-color:#cfe4c2;color:#1f4a14}
.cdc-aviso--erro{background:var(--cdc-coral-fundo);border-color:#f3cdbf;color:#8f2d13}
.cdc-aviso p:last-child{margin-bottom:0}
/* cartões e papel */
.cdc-painel{background:var(--cdc-branco);border:1px solid var(--cdc-linha);border-radius:var(--cdc-r-lg);padding:clamp(1.25rem,4vw,2rem);box-shadow:var(--cdc-e1)}
.cdc-painel--areia{background:var(--cdc-areia);border-color:transparent;box-shadow:none}
.cdc-folha{background:var(--cdc-branco);border-radius:6px;box-shadow:var(--cdc-e2);padding:1rem 1.1rem;position:relative}
.cdc-folha::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.35),rgba(43,39,36,.03));mix-blend-mode:multiply}
/* progresso */
.cdc-barra{height:.6rem;background:var(--cdc-areia);border-radius:var(--cdc-r-pill);overflow:hidden}
.cdc-barra>i,.cdc-barra>span{display:block;height:100%;width:0;background:var(--cdc-verde);border-radius:inherit;transition:width var(--cdc-d-slow) var(--cdc-ease)}
.cdc-anel{--p:0;width:5.5rem;height:5.5rem;border-radius:50%;background:conic-gradient(var(--cdc-verde) calc(var(--p) * 1%),var(--cdc-areia) 0);display:grid;place-items:center;position:relative}
.cdc-anel::before{content:"";position:absolute;inset:.55rem;border-radius:50%;background:var(--cdc-branco)}
.cdc-anel>b{position:relative;font-family:var(--cdc-display);font-size:1.35rem;font-weight:600}
.cdc-medalha{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .75rem .35rem .4rem;border-radius:var(--cdc-r-pill);background:var(--cdc-branco);border:1px solid var(--cdc-linha);font-size:var(--cdc-t-sm);font-weight:600;color:var(--cdc-tinta-suave)}
.cdc-medalha i{width:1.6rem;height:1.6rem;border-radius:50%;background:var(--cdc-areia);display:grid;place-items:center;font-style:normal;font-size:.8rem}
.cdc-medalha.on{background:var(--cdc-amarelo-papel);border-color:#f1dc9a;color:var(--cdc-carvao)}
.cdc-medalha.on i{background:var(--cdc-amarelo)}

/* barra de navegação compartilhada */
.cdc-barra-topo{position:sticky;top:0;z-index:60;background:rgba(251,247,238,.92);backdrop-filter:saturate(1.2) blur(10px);-webkit-backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid var(--cdc-linha)}
.cdc-barra-topo .wrap{display:flex;align-items:center;gap:var(--cdc-4);min-height:var(--cdc-altura-barra)}
.cdc-marca{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--cdc-tinta);font-family:var(--cdc-display);font-weight:600;font-size:1.12rem;letter-spacing:-.01em;flex:none}
.cdc-marca svg{width:2.4rem;height:2.4rem}
.cdc-marca small{display:block;font-family:var(--cdc-texto);font-weight:500;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--cdc-tinta-suave);line-height:1.1}
/* celular estreito: a barra cabia em 430 px e empurrava o menu para fora da tela (página inteira com zoom reduzido). O subtítulo some e a marca pode encolher. */
.cdc-barra-topo .cdc-marca{flex:none}
@media (max-width:1099.98px){.cdc-barra-topo .cdc-marca{min-width:0;flex:0 1 auto}}
/* a logo nunca encolhe (regra de marca: mínimo de 24 px) */
.cdc-marca svg{flex:none}
/* telas de até 349 px: "Entrar" sai da barra (continua na gaveta) para a marca caber inteira */
@media (max-width:349.98px){.cdc-barra-acoes .btn--fantasma{display:none}}
/* botões da barra com o mesmo tamanho em todas as páginas (páginas antigas, como /empresas, têm .btn próprio) */
.cdc-barra-topo .btn{padding:.75rem 1.4rem;font-size:1rem}
.cdc-barra-topo .btn--fantasma{padding-inline:.9rem}
/* desktop estreito (1100 a 1219 px): a barra inteira cabe sem espremer a marca */
@media (min-width:1100px) and (max-width:1219.98px){
  .cdc-barra-topo .wrap{padding-inline:1.25rem;gap:.6rem}
  .cdc-barra-topo .cdc-marca small{display:none}
  .cdc-nav>a,.cdc-nav>.cdc-dd>button{padding-inline:.55rem}
  .cdc-nav+.cdc-barra-acoes{margin-left:.25rem}
  .cdc-barra-topo .btn--primario{padding-inline:1rem}
}
@media (max-width:380px){.cdc-barra-topo .cdc-marca{font-size:1rem;gap:.45rem;white-space:nowrap}.cdc-barra-topo .cdc-marca svg{width:2.1rem;height:2.1rem}}
@media (max-width:480px){.cdc-barra-topo .cdc-marca small{display:none}.cdc-barra-topo .wrap{gap:.5rem}.cdc-barra-acoes{gap:.15rem}.cdc-barra-acoes .btn--fantasma{padding-inline:.7rem}}
.cdc-nav{display:none;align-items:center;gap:.15rem;margin-left:auto}
.cdc-nav>a,.cdc-nav>.cdc-dd>button{display:inline-flex;align-items:center;gap:.3rem;min-height:2.6rem;padding:.45rem .8rem;border-radius:var(--cdc-r-pill);color:var(--cdc-tinta);font-weight:500;font-size:.95rem;text-decoration:none;background:none;border:0;cursor:pointer;white-space:nowrap}
.cdc-nav>a:hover,.cdc-nav>.cdc-dd>button:hover,.cdc-nav>.cdc-dd>button[aria-expanded="true"]{background:rgba(43,39,36,.07);color:var(--cdc-tinta)}
.cdc-nav>a[aria-current="page"]{font-weight:600;box-shadow:inset 0 -2px 0 var(--cdc-amarelo)}
.cdc-dd{position:relative}
.cdc-dd>button svg{width:.9em;height:.9em;transition:transform var(--cdc-d-fast)}
.cdc-dd>button[aria-expanded="true"] svg{transform:rotate(180deg)}
.cdc-dd__menu{position:absolute;top:calc(100% + .4rem);left:0;min-width:17rem;background:var(--cdc-branco);border:1px solid var(--cdc-linha);border-radius:var(--cdc-r-md);box-shadow:var(--cdc-e3);padding:.4rem;display:none;z-index:70}
.cdc-dd__menu[data-aberto="true"]{display:block}
.cdc-dd__menu a{display:block;padding:.6rem .8rem;border-radius:var(--cdc-r-sm);text-decoration:none;color:var(--cdc-tinta);font-size:.95rem}
.cdc-dd__menu a:hover,.cdc-dd__menu a:focus-visible{background:var(--cdc-amarelo-papel)}
.cdc-dd__menu a small{display:block;color:var(--cdc-tinta-suave);font-size:var(--cdc-t-xs)}
.cdc-barra-acoes{margin-left:auto;display:flex;align-items:center;gap:.4rem}
.cdc-nav+.cdc-barra-acoes{margin-left:.5rem}
.cdc-hamburger{display:inline-grid;place-items:center;width:3rem;height:3rem;border:0;background:none;border-radius:var(--cdc-r-sm);cursor:pointer;color:var(--cdc-tinta)}
.cdc-hamburger svg{width:1.6rem;height:1.6rem}
/* menu completo só a partir de 1100 px: abaixo disso a barra não cabe sem espremer a marca (conferido de 980 a 1440) */
@media (min-width:1100px){.cdc-nav{display:flex}.cdc-hamburger{display:none}.cdc-barra-acoes .btn--primario{display:inline-flex}}
@media (max-width:1099.98px){.cdc-barra-acoes .btn--primario{display:none}}
/* gaveta (menu do celular) */
.cdc-gaveta{position:fixed;inset:0;z-index:80;display:none}
.cdc-gaveta[data-aberta="true"]{display:block}
.cdc-gaveta__fundo{position:absolute;inset:0;background:rgba(43,39,36,.45);border:0;width:100%;height:100%;cursor:pointer}
.cdc-gaveta__painel{position:absolute;top:0;right:0;bottom:0;width:min(22rem,88vw);background:var(--cdc-papel);box-shadow:var(--cdc-e3);display:flex;flex-direction:column;padding:1rem 1.25rem 1.5rem;overflow-y:auto}
@media (prefers-reduced-motion:no-preference){.cdc-gaveta[data-aberta="true"] .cdc-gaveta__painel{animation:cdc-entra .32s var(--cdc-ease)}}
@keyframes cdc-entra{from{transform:translateX(24px);opacity:0}to{transform:none;opacity:1}}
.cdc-gaveta__topo{display:flex;align-items:center;justify-content:space-between;min-height:var(--cdc-altura-barra)}
.cdc-gaveta nav{display:flex;flex-direction:column;gap:.1rem;margin:.75rem 0}
.cdc-gaveta nav a{display:flex;align-items:center;justify-content:space-between;min-height:3.25rem;padding:.6rem .5rem;border-radius:var(--cdc-r-sm);color:var(--cdc-tinta);text-decoration:none;font-weight:500;font-size:1.05rem;border-bottom:1px solid var(--cdc-linha)}
.cdc-gaveta nav a small{display:block;font-size:var(--cdc-t-xs);color:var(--cdc-tinta-suave);font-weight:400}
.cdc-gaveta nav a:hover{background:var(--cdc-amarelo-papel)}
.cdc-gaveta .cdc-rotulo{margin:1rem 0 .25rem}
.cdc-gaveta__cta{margin-top:auto;padding-top:1rem;display:grid;gap:.5rem}

/* rodapé compartilhado */
.cdc-rodape{background:var(--cdc-carvao);color:var(--cdc-papel-suave-no-escuro);padding:clamp(2.5rem,6vw,4.5rem) 0 2rem;font-size:var(--cdc-t-sm)}
.cdc-rodape a{color:var(--cdc-papel-claro-no-escuro)}
.cdc-rodape a:hover{color:var(--cdc-amarelo)}
.cdc-rodape__grade{display:grid;gap:var(--cdc-6);grid-template-columns:1fr}
@media (min-width:700px){.cdc-rodape__grade{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.cdc-rodape h3{font-family:var(--cdc-texto);font-size:var(--cdc-t-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--cdc-papel-claro-no-escuro);margin:0 0 .75rem;font-weight:600}
.cdc-rodape ul{list-style:none;padding:0;margin:0}
.cdc-rodape li{margin:0}
.cdc-rodape li a{display:inline-flex;align-items:center;min-height:2.75rem;max-width:100%;overflow-wrap:anywhere}
.cdc-rodape .cdc-marca{color:var(--cdc-papel-claro-no-escuro);margin-bottom:.75rem}
.cdc-rodape__legal{border-top:1px solid rgba(251,247,238,.14);margin-top:var(--cdc-6);padding-top:var(--cdc-5);font-size:var(--cdc-t-xs);color:var(--cdc-papel-suave-no-escuro)}
.cdc-rodape__legal p{max-width:88ch}
.cdc-rodape__legal strong{color:var(--cdc-papel-claro-no-escuro)}

/* trilha de etapas (reutilizada no curso) */
.cdc-etapas{list-style:none;padding:0;margin:0;position:relative}
.cdc-etapas>li{position:relative;padding:0 0 1.5rem 3.25rem}
.cdc-etapas>li::before{content:"";position:absolute;left:1.15rem;top:2.5rem;bottom:0;width:2px;background:var(--cdc-linha)}
.cdc-etapas>li:last-child::before{display:none}
.cdc-etapas .num{position:absolute;left:0;top:0;width:2.4rem;height:2.4rem;border-radius:50%;background:var(--cdc-branco);border:2px solid var(--cdc-borda);display:grid;place-items:center;font-weight:600;font-size:var(--cdc-t-sm);color:var(--cdc-tinta)}
.cdc-etapas>li.ok .num{background:var(--cdc-verde);border-color:var(--cdc-verde);color:var(--cdc-carvao)}
.cdc-etapas>li.atual .num{background:var(--cdc-amarelo);border-color:var(--cdc-amarelo);color:var(--cdc-carvao);box-shadow:0 0 0 4px var(--cdc-amarelo-papel)}
.cdc-etapas>li.trancada{opacity:.72}

/* revelação ao entrar (compatível com body.js .rv das páginas antigas) */
body.js .rv{opacity:0;transform:translateY(12px);transition:opacity var(--cdc-d-slow) var(--cdc-ease),transform var(--cdc-d-slow) var(--cdc-ease)}
body.js .rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  body.js .rv{opacity:1;transform:none}
}

/* ------------------------------------------------- 4b. conversão (29/10) -- */
/* micro-interação do botão principal: só transform e sombra, 160 ms, nada com movimento reduzido */
.btn{transition-duration:160ms}
@media (hover:hover) and (prefers-reduced-motion:no-preference){.btn--primario:hover{transform:translateY(-1px)}}
.btn--primario:focus-visible{outline:3px solid var(--cdc-carvao);outline-offset:3px;box-shadow:0 0 0 6px var(--cdc-amarelo-papel)}
.btn[aria-busy="true"]{cursor:progress;opacity:.8}

/* faixa de prova: foto real + números com fonte (bloco único em cdc.js) */
.cdc-prova{display:flex;align-items:center;gap:.75rem;margin:var(--cdc-5) 0 0;padding:0;font-size:var(--cdc-t-sm);line-height:1.4;color:var(--cdc-tinta-suave)}
.cdc-prova picture{flex:none;display:block;line-height:0}
.cdc-prova__foto{flex:none;width:3rem;height:3rem;border-radius:50%;object-fit:cover;object-position:50% 30%;border:2px solid var(--cdc-branco);box-shadow:var(--cdc-e1);background:var(--cdc-areia)}
.cdc-prova b{color:var(--cdc-tinta);font-weight:600}
.cdc-prova__lista{display:flex;flex-wrap:wrap;gap:.1rem .9rem;list-style:none;margin:0;padding:0}
.cdc-prova__lista li{white-space:nowrap}

/* barra de CTA fixa no celular: aparece depois do botão do topo, some perto do formulário, do CTA final e do rodapé */
.cdc-fixo{display:none}
@media (max-width:760px){
  .cdc-fixo{display:block;position:fixed;left:0;right:0;bottom:0;z-index:40;padding:.6rem var(--cdc-calha) calc(.6rem + env(safe-area-inset-bottom));background:rgba(251,247,238,.97);border-top:1px solid var(--cdc-linha);box-shadow:0 -6px 18px -10px rgba(43,39,36,.35);transform:translateY(110%);visibility:hidden;transition:transform 200ms var(--cdc-ease),visibility 0s linear 200ms}
  .cdc-fixo[data-visivel="true"]{transform:none;visibility:visible;transition:transform 200ms var(--cdc-ease),visibility 0s}
  .cdc-fixo .btn{width:100%;min-height:3rem}
  .cdc-fixo__nota{margin:.3rem 0 0;text-align:center;font-size:var(--cdc-t-xs);color:var(--cdc-tinta-suave);line-height:1.3}
  body.tem-fixo{padding-bottom:calc(5.75rem + env(safe-area-inset-bottom))}
}
@media (prefers-reduced-motion:reduce){.cdc-fixo,.cdc-fixo[data-visivel="true"]{transition:none}}
@media print{.cdc-fixo{display:none!important}}

/* ------------------------------------------------------------ 5. kids ---- */
[data-theme="kids"]{--cdc-soft:100;--cdc-papel:#FFFBEF;--cdc-areia:#FFF3C9;--cdc-r-sm:14px;--cdc-r-md:22px;--cdc-r-lg:30px}
[data-theme="kids"] h1,[data-theme="kids"] h2,[data-theme="kids"] h3{font-variation-settings:"SOFT" 100,"WONK" 1;letter-spacing:0}
[data-theme="kids"] body,[data-theme="kids"]{font-size:18px}

@media print{.cdc-barra-topo,.cdc-gaveta,.cdc-rodape{display:none!important}}

/* publicado em 29/10/2026 (marca de versão: força novo envio à Cloudflare) */
