/* Jandaia — "Mata Atlântica viva". Celular primeiro.
   Cores do periquito jandaia (Aratinga jandaya): verde-mata das asas, amarelo
   da cabeça, laranja do rosto, sobre creme. Fontes: Bricolage Grotesque
   (títulos), Inter (interface) e Literata (leitura das aulas).
   Tema: segue o aparelho; o botão de tema grava data-tema="claro|escuro". */

:root{
  --fundo:#FBF8F1;--papel:#FFFFFF;--areia:#F2ECDF;
  --texto:#13261D;--suave:#4A5B51;--linha:#E3DBCB;
  --mata:#0F3D2E;--mata-media:#1E6B47;--folha:#2E8B57;
  --sol:#F4C430;--sol-escuro:#B98A0C;--laranja:#E8692D;--laranja-texto:#A9461A;
  --link:#1E6B47;--link-forte:#0F3D2E;
  --hero-fundo:#0F3D2E;--hero-texto:#FBF8F1;--hero-suave:#CFE0D5;--hero-borda:transparent;
  --rodape-fundo:#0F3D2E;
  --cta:#F4C430;--cta-texto:#0F3D2E;--cta-sombra:#B98A0C;
  --foco:#0F3D2E;--erro:#9B2C1F;--ok:#1F6B3A;--codigo:#F2ECDF;
  --sombra-suave:0 18px 40px -24px rgba(15,61,46,.45);
  --titulo:"Bricolage Grotesque",Inter,"Segoe UI",system-ui,sans-serif;
  --ui:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --leitura:Literata,Georgia,"Times New Roman",serif;
  --mono:ui-monospace,"Cascadia Code",Consolas,"Liberation Mono",monospace;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root:not([data-tema="claro"]){
    --fundo:#10201A;--papel:#172A22;--areia:#1F362C;
    --texto:#F3EFE4;--suave:#B8C6BC;--linha:#2D463A;
    --mata:#0F3D2E;--mata-media:#86CFA3;--folha:#4FB37A;
    --sol-escuro:#9C740A;--laranja-texto:#F59B66;
    --link:#9ED9B4;--link-forte:#C9EED7;
    --hero-fundo:#0F3D2E;--hero-borda:#2D463A;--rodape-fundo:#0A1712;
    --foco:#F4C430;--erro:#FF9C8F;--ok:#86D7A2;--codigo:#0E1C16;
    --sombra-suave:0 18px 40px -24px rgba(0,0,0,.8);
    color-scheme:dark;
  }
}
:root[data-tema="escuro"]{
  --fundo:#10201A;--papel:#172A22;--areia:#1F362C;
  --texto:#F3EFE4;--suave:#B8C6BC;--linha:#2D463A;
  --mata:#0F3D2E;--mata-media:#86CFA3;--folha:#4FB37A;
  --sol-escuro:#9C740A;--laranja-texto:#F59B66;
  --link:#9ED9B4;--link-forte:#C9EED7;
  --hero-fundo:#0F3D2E;--hero-borda:#2D463A;--rodape-fundo:#0A1712;
  --foco:#F4C430;--erro:#FF9C8F;--ok:#86D7A2;--codigo:#0E1C16;
  --sombra-suave:0 18px 40px -24px rgba(0,0,0,.8);
  color-scheme:dark;
}

/* ── Base ─────────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;font-family:var(--ui);background:var(--fundo);color:var(--texto);line-height:1.6;font-size:17px;overflow-x:hidden}
[hidden]{display:none!important}
a{color:var(--link);text-decoration-thickness:.08em;text-underline-offset:.18em}
a:hover{color:var(--link-forte)}
:focus-visible{outline:3px solid var(--foco);outline-offset:3px;border-radius:6px}
img,svg{max-width:100%}
img{height:auto}
.container{max-width:760px;margin:0 auto;padding:0 16px}
.largo{max-width:1120px}
.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}
.pular{position:absolute;left:-9999px;top:8px;z-index:50;background:var(--sol);color:var(--mata);font-weight:700;padding:10px 16px;border-radius:10px}
.pular:focus{left:16px}

/* ── Tipografia ───────────────────────────────────────────────────── */
h1,h2,h3{font-family:var(--titulo);color:var(--texto);font-optical-sizing:auto}
h1{font-size:2rem;line-height:1.08;font-weight:800;letter-spacing:-.02em;margin:0 0 14px}
h2{font-size:1.4rem;line-height:1.2;font-weight:700;letter-spacing:-.01em;margin:36px 0 12px}
h3{font-size:1.12rem;line-height:1.3;font-weight:700;margin:24px 0 8px}
p,li{color:var(--suave)}
strong{color:var(--texto)}
.lead{font-size:1.12rem;line-height:1.55}
.meta{font-size:.9rem;color:var(--suave)}
.sobretitulo{font-family:var(--ui);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--laranja-texto);margin:0 0 12px}
.sobretitulo-escuro{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--laranja-texto);margin:0 0 4px}
.titulo-secao{font-size:clamp(1.75rem,2.6vw + 1rem,2.6rem);font-weight:800;letter-spacing:-.025em;line-height:1.05;margin:0 0 22px}
.secao-intro{max-width:62ch;margin:-8px 0 22px}
@media (min-width:700px){h1{font-size:2.4rem}}

/* ── Cabeçalho ────────────────────────────────────────────────────── */
.topo{background:var(--papel);border-bottom:2px solid var(--linha)}
.topo-linha{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:64px;flex-wrap:wrap}
.marca{display:flex;align-items:center;gap:8px;min-height:44px;text-decoration:none;color:var(--texto);font-family:var(--titulo);font-weight:800;font-size:1.4rem;letter-spacing:-.02em}
.marca:hover{color:var(--texto)}
.marca img{width:36px;height:36px}
.nav{display:flex;gap:2px;flex-wrap:wrap;align-items:center}
.nav a,.nav button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 12px;text-decoration:none;font:inherit;font-size:.95rem;font-weight:600;color:var(--texto);background:none;border:0;cursor:pointer;border-radius:12px}
.nav a:hover,.nav button:hover{background:var(--areia)}
.nav form{margin:0}
.nav .tema-botao{padding:0;width:44px;border:2px solid var(--linha);border-radius:50%;margin-left:4px}
.icone-sol{display:none}
@media (prefers-color-scheme:dark){:root:not([data-tema="claro"]) .icone-lua{display:none}:root:not([data-tema="claro"]) .icone-sol{display:block}}
:root[data-tema="escuro"] .icone-lua{display:none}
:root[data-tema="escuro"] .icone-sol{display:block}

main{padding:28px 0 64px}
main.vitrine{padding:0 0 32px}

/* ── Rodapé ───────────────────────────────────────────────────────── */
.rodape{background:var(--rodape-fundo);color:var(--hero-suave);padding:32px 0 28px;font-size:.92rem}
.rodape .container{max-width:1120px}
.rodape-linha{display:grid;gap:12px}
.rodape-marca{display:flex;gap:12px;align-items:center}
.rodape-marca p{margin:0;color:var(--hero-suave)}
.rodape-marca strong{font-family:var(--titulo);font-size:1.2rem;color:var(--hero-texto)}
.rodape a{color:var(--hero-texto)}
.rodape a:hover{color:var(--sol)}
.rodape :focus-visible{outline-color:var(--sol)}
.rodape-links a{display:inline-block;min-height:44px;line-height:44px;margin-right:18px}
.rodape .empresa{margin:4px 0 0;color:var(--hero-suave)}
.rodape .empresa-nome{display:block;font-size:.98rem;color:var(--hero-texto)}
.rodape .empresa-legal{display:block;font-size:.8rem;margin-top:2px}
@media (min-width:900px){.rodape-linha{grid-template-columns:1fr auto;align-items:center}.rodape .empresa{grid-column:1 / -1;border-top:1px solid rgba(207,224,213,.2);padding-top:14px}}

/* ── Botões ───────────────────────────────────────────────────────── */
.botao{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;font:inherit;font-weight:700;color:var(--cta-texto);background:var(--cta);border:0;border-radius:14px;cursor:pointer;text-decoration:none;box-shadow:0 4px 0 var(--cta-sombra);transition:transform .08s ease,box-shadow .08s ease,filter .15s}
.botao:hover{color:var(--cta-texto);filter:brightness(1.05)}
.botao:active{transform:translateY(3px);box-shadow:0 1px 0 var(--cta-sombra)}
.botao.cheio{width:100%;margin-top:20px}
.botao.grande{min-height:56px;padding:0 28px;font-size:1.06rem}
.botao.secundario{background:var(--papel);color:var(--texto);border:2px solid var(--linha);box-shadow:0 4px 0 var(--linha)}
.botao.secundario:hover{color:var(--texto);border-color:var(--suave)}
.botao.secundario:active{box-shadow:0 1px 0 var(--linha)}
.botao.fantasma{background:transparent;color:var(--hero-texto);border:2px solid rgba(251,248,241,.55);box-shadow:none}
.botao.fantasma:hover{color:var(--hero-texto);background:rgba(251,248,241,.08)}
.botao.fantasma-claro{background:transparent;color:var(--texto);border:2px solid var(--texto);box-shadow:none}
.botao.fantasma-claro:hover{color:var(--texto);background:var(--areia)}
.botao.pequeno{min-height:44px;padding:0 14px;font-size:.92rem}
.botao.perigo{background:var(--erro);color:#fff;box-shadow:0 4px 0 #5e1a12}
.acoes{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px;align-items:center}
@media (prefers-reduced-motion:reduce){.botao{transition:none}.botao:active{transform:none}}

/* ── Blocos comuns ────────────────────────────────────────────────── */
.card{background:var(--papel);border:2px solid var(--linha);border-radius:20px;padding:22px;margin-top:20px}
.destaque{border-left:5px solid var(--sol);background:var(--papel);border-radius:10px;padding:12px 16px;margin:16px 0}
.aviso{margin:16px 0;padding:12px 16px;border-radius:12px;font-weight:600;background:var(--papel);border:2px solid var(--linha);color:var(--texto)}
.aviso.erro{color:var(--erro);border-color:var(--erro)}
.aviso.ok{color:var(--ok);border-color:var(--ok)}
.preco{font-family:var(--titulo);font-size:2.4rem;font-weight:800;letter-spacing:-.02em;color:var(--texto);margin:0;line-height:1}
.preco-nota{margin:0;font-size:.9rem;color:var(--suave)}
.preco-juros{font-size:.6em;font-weight:700;letter-spacing:0;white-space:nowrap}
.preco-avista{margin:6px 0 0;font-size:1.1rem;color:var(--texto);line-height:1.35}
.etiqueta{display:inline-block;font-size:.8rem;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--areia);border:1px solid var(--linha);color:var(--suave)}
.etiqueta.ok{color:var(--ok);border-color:var(--ok)}
.etiqueta.erro{color:var(--erro);border-color:var(--erro)}
.lista-simples li{margin-bottom:6px}
.lista-check{list-style:none;padding:0;margin:12px 0}
.lista-check li{display:flex;gap:10px;align-items:flex-start;margin-bottom:8px}
.lista-check .icone{flex:none;color:var(--folha);margin-top:4px}
.migalha{font-size:.9rem;color:var(--suave);margin:0 0 10px}

/* ── Formulários ──────────────────────────────────────────────────── */
label{display:block;font-weight:600;margin:14px 0 6px;color:var(--texto)}
input[type=text],input[type=email],input[type=number]{width:100%;min-height:48px;padding:10px 14px;font:inherit;color:var(--texto);background:var(--fundo);border:2px solid var(--linha);border-radius:12px}
input[type=text]:focus,input[type=email]:focus,input[type=number]:focus{border-color:var(--mata-media)}
input::placeholder{color:var(--suave);opacity:.8}
.checagem{display:flex;gap:10px;align-items:flex-start;margin-top:14px;font-weight:400}
.checagem input{width:22px;height:22px;margin-top:3px;flex:none;accent-color:var(--mata-media)}
.meios{border:2px solid var(--linha);border-radius:12px;margin:16px 0 0;padding:4px 14px 14px}
.meios legend{font-weight:600;color:var(--texto);padding:0 6px}

/* ── Página inicial: hero ─────────────────────────────────────────── */
.hero{padding:16px 0 0}
.hero-painel{position:relative;overflow:hidden;display:grid;gap:8px;padding:34px 22px 0;border-radius:28px;color:var(--hero-texto);border:2px solid var(--hero-borda);
  background:radial-gradient(120% 80% at 100% 0%,#1E6B47 0%,rgba(30,107,71,0) 60%),var(--hero-fundo)}
.hero-painel :focus-visible{outline-color:var(--sol)}
.hero-folhas{position:absolute;right:0;top:0;width:85%;height:100%;fill:#2E8B57;opacity:.22;pointer-events:none}
.hero-texto{position:relative}
.hero .sobretitulo{color:var(--sol)}
.hero h1{color:var(--hero-texto);font-size:clamp(2.5rem,7vw + .6rem,4.9rem);line-height:.98;letter-spacing:-.035em;margin:0 0 18px;max-width:12ch}
.grifo{color:var(--sol);background:linear-gradient(var(--laranja),var(--laranja)) no-repeat 0 94% / 100% .1em;padding-bottom:.04em}
.hero .lead{color:var(--hero-suave);max-width:46ch}
.hero-arte{position:relative;justify-self:end;width:min(280px,78%);margin-right:-10px}
.hero-arte img{display:block;width:100%;margin-bottom:-8px}
.balao{position:absolute;left:-18%;top:8%;margin:0;background:var(--hero-texto);color:var(--mata);font-family:var(--titulo);font-weight:800;font-size:1.02rem;padding:10px 16px;border-radius:20px 20px 20px 6px;transform:rotate(-5deg);box-shadow:0 6px 0 rgba(0,0,0,.18)}
@media (min-width:900px){
  .hero{padding-top:24px}
  .hero-painel{grid-template-columns:1.3fr .7fr;align-items:end;padding:64px 56px 0 64px}
  .hero-texto{padding-bottom:64px}
  .hero-arte{width:100%;max-width:340px;margin-right:0}
}
@media (prefers-reduced-motion:no-preference){
  .hero-arte img{animation:pouso .8s cubic-bezier(.2,.9,.3,1.25) .15s both}
  .balao{animation:balao .45s ease-out .85s both}
  @keyframes pouso{from{opacity:0;transform:translate(-30px,-40px) rotate(-10deg)}to{opacity:1;transform:none}}
  @keyframes balao{from{opacity:0;transform:rotate(-5deg) scale(.6)}to{opacity:1;transform:rotate(-5deg) scale(1)}}
}

.fatos{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.fatos li{display:flex;gap:10px;align-items:flex-start;background:var(--papel);border:2px solid var(--linha);border-radius:16px;padding:12px 14px;font-size:.92rem;line-height:1.35;margin:0}
.fatos .icone{flex:none;color:var(--folha)}
@media (min-width:900px){.fatos{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* ── Seções da vitrine ────────────────────────────────────────────── */
.secao{padding:44px 0 8px}
.grade-cursos{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))}
.curso-card{display:flex;flex-direction:column;background:var(--papel);border:2px solid var(--linha);border-radius:24px;overflow:hidden;box-shadow:0 6px 0 var(--linha);margin:0}
.curso-capa{position:relative;display:grid;place-items:center;height:172px;color:var(--hero-texto)}
.curso-capa .icone{width:84px;height:84px;padding:14px;border-radius:50%;background:rgba(255,255,255,.12);border:2px solid rgba(255,255,255,.35);stroke-width:1.5}
.capa-mata .curso-capa{background:radial-gradient(rgba(244,196,48,.28) 1.6px,transparent 2.2px) 0 0 / 22px 22px,linear-gradient(135deg,#0F3D2E 0%,#1E6B47 60%,#2E8B57 100%)}
.capa-sol .curso-capa{color:#0F3D2E;background:radial-gradient(rgba(15,61,46,.16) 1.6px,transparent 2.2px) 0 0 / 22px 22px,linear-gradient(135deg,#E8692D 0%,#F4C430 85%)}
.capa-sol .curso-capa .icone{background:rgba(255,255,255,.3);border-color:rgba(15,61,46,.3)}
.capa-selo{position:absolute;left:14px;top:14px;background:#FBF8F1;color:#0F3D2E;font-weight:700;font-size:.78rem;padding:4px 12px;border-radius:999px}
.curso-corpo{display:flex;flex-direction:column;flex:1;padding:20px 22px 22px}
.curso-estado{margin:0 0 6px;font-size:.76rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--laranja-texto)}
.curso-corpo h3{font-size:1.4rem;line-height:1.15;letter-spacing:-.015em;margin:0 0 8px}
.curso-corpo h3 a{color:var(--texto);text-decoration:none}
.curso-corpo h3 a:hover{text-decoration:underline}
.curso-corpo > p{margin:0 0 10px}
.curso-rodape{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:16px;border-top:2px dashed var(--linha)}
.preco-mini{margin:0;font-family:var(--titulo);font-weight:800;font-size:1.5rem;color:var(--texto);line-height:1.1}
.preco-mini small{display:block;font-family:var(--ui);font-weight:400;font-size:.78rem;color:var(--suave)}
.em-breve{border-style:dashed;box-shadow:none}
.avise-form{margin-top:auto;padding-top:14px;border-top:2px dashed var(--linha)}
.avise-form label{margin-top:0;font-size:.95rem}
.avise-linha{display:flex;gap:10px;flex-wrap:wrap}
.avise-linha input{flex:1 1 200px}
.avise-form .meta{margin:10px 0 0}

.como-lista{list-style:none;padding:0;margin:0;display:grid;gap:16px}
.como-lista li{background:var(--areia);border-radius:22px;padding:22px;margin:0}
.como-lista h3{margin:14px 0 6px}
.como-lista p{margin:0}
.como-icone{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--sol);color:var(--mata)}
@media (min-width:800px){.como-lista{grid-template-columns:repeat(3,1fr)}}

/* ── Página de venda ──────────────────────────────────────────────── */
.venda-topo{padding:28px 0 44px;background:linear-gradient(180deg,var(--areia),var(--fundo))}
.venda-grade{display:grid;gap:36px;align-items:center}
.venda-topo h1{font-size:clamp(2.3rem,5vw + 1rem,4.1rem);line-height:1;letter-spacing:-.035em;margin:0 0 16px;max-width:13ch}
.venda-topo .lead{max-width:52ch}
.preco-bloco{display:flex;align-items:baseline;gap:6px 14px;flex-wrap:wrap;margin:22px 0 4px}
@media (min-width:960px){.venda-grade{grid-template-columns:1.05fr .95fr;gap:56px}.venda-topo{padding:56px 0 64px}}

.maquete{position:relative;margin:0 12px 30px 0}
.maquete-janela{background:var(--papel);border:2px solid var(--linha);border-radius:20px;overflow:hidden;transform:rotate(1.5deg);box-shadow:0 10px 0 var(--linha),var(--sombra-suave)}
.maquete-barra{display:flex;gap:6px;align-items:center;height:34px;padding:0 14px;background:var(--areia);border-bottom:2px solid var(--linha)}
.maquete-barra span{width:10px;height:10px;border-radius:50%;background:var(--laranja)}
.maquete-barra span:nth-child(2){background:var(--sol)}
.maquete-barra span:nth-child(3){background:var(--folha)}
.maquete-corpo{padding:20px 22px 24px;font-family:var(--leitura)}
.maquete-trilha{margin:0 0 8px;font-family:var(--ui);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--laranja-texto)}
.maquete-progresso{height:8px;border-radius:99px;background:var(--linha);overflow:hidden}
.maquete-progresso i{display:block;width:28%;height:100%;background:var(--folha);border-radius:99px}
.maquete-titulo{margin:14px 0 12px;font-weight:700;font-size:1.3rem;line-height:1.25;color:var(--texto)}
.maquete-objetivo{display:grid;gap:7px;border-left:4px solid var(--sol);background:var(--areia);padding:10px 12px;border-radius:0 10px 10px 0;margin-bottom:12px}
.maquete-objetivo b{font-family:var(--ui);font-size:.78rem;color:var(--texto)}
.maquete-objetivo span,.maquete-linha{display:block;height:9px;border-radius:5px;background:var(--linha)}
.maquete-linha{margin:9px 0}
.maquete-objetivo .curta,.maquete-linha.curta{width:55%}
.maquete-linha.media{width:78%}
.maquete-sub{margin:16px 0 6px;font-weight:700;font-size:1.02rem;color:var(--texto)}
.maquete-botao{display:inline-block;margin:14px 0 0;background:var(--sol);color:#0F3D2E;font-family:var(--ui);font-weight:700;font-size:.85rem;padding:8px 14px;border-radius:10px;box-shadow:0 3px 0 var(--sol-escuro)}
.maquete-ave{position:absolute;width:110px;right:-14px;bottom:-34px}
@media (min-width:960px){.maquete-ave{width:150px;right:-40px;bottom:-50px}}

.venda-miolo{padding-bottom:24px}
.modulos-grade{list-style:none;padding:0;margin:0;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}
.modulo-card{background:var(--papel);border:2px solid var(--linha);border-radius:18px;padding:16px 18px 14px;margin:0}
.modulo-num{display:block;font-family:var(--titulo);font-weight:800;font-size:2.6rem;line-height:1;color:var(--laranja-texto)}
.modulo-card h3{margin:8px 0 4px;font-size:1.05rem}
.modulo-card .meta{margin:0}

.bonus-bloco{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start}
.secao.bonus-bloco{background:var(--papel);border:2px solid var(--linha);border-radius:24px;padding:24px;margin-top:40px}
.bonus-bloco h2{margin-top:0}
.bonus-icone{display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:var(--sol);color:var(--mata)}
@media (min-width:800px){.secao.bonus-bloco .lista-check{columns:2;column-gap:28px}.secao.bonus-bloco .lista-check li{break-inside:avoid}}
@media (max-width:520px){.bonus-bloco{grid-template-columns:1fr}}

.duas-colunas{display:grid;gap:8px 40px}
.duas-colunas h2:first-child{margin-top:0}
@media (min-width:860px){.duas-colunas{grid-template-columns:1fr 1fr}}

.confianca-grade{display:grid;gap:16px}
@media (min-width:900px){.confianca-grade{grid-template-columns:repeat(3,1fr)}}
.confianca-card{background:var(--papel);border:2px solid var(--linha);border-radius:22px;padding:22px}
.confianca-card h3{margin:12px 0 8px}
.confianca-card p{margin:0 0 8px}
.confianca-icone{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--areia);color:var(--mata-media)}
.garantia{background:var(--mata);border-color:var(--mata);color:#FBF8F1}
.garantia h3,.garantia p{color:#FBF8F1}
.garantia a{color:var(--sol)}
.garantia a:hover{color:#FBF8F1}
.garantia :focus-visible{outline-color:var(--sol)}
.selo{display:grid;place-items:center;align-content:center;width:84px;height:84px;border-radius:50%;background:var(--sol);color:#0F3D2E;font-family:var(--titulo);font-weight:700;font-size:.82rem;line-height:1;transform:rotate(-8deg);box-shadow:0 0 0 6px rgba(244,196,48,.25)}
.selo b{font-size:2.1rem;font-weight:800}
.meios-lista{list-style:none;padding:0;margin:0 0 10px}
.meios-lista li{display:flex;gap:10px;align-items:center;margin-bottom:8px;color:var(--texto)}
.meios-lista .icone{flex:none;color:var(--mata-media)}

.faq details{background:var(--papel);border:2px solid var(--linha);border-radius:16px;margin:0 0 10px}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:12px 18px;cursor:pointer;list-style:none;font-family:var(--titulo);font-weight:700;font-size:1.06rem;color:var(--texto)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--areia);font-family:var(--ui);font-weight:700}
.faq details[open] summary::after{content:"−";background:var(--sol);color:#0F3D2E}
.faq details p{margin:0;padding:0 18px 16px}

.compra{max-width:580px;margin:44px auto 0;border:3px solid var(--sol);border-radius:26px;padding:26px;box-shadow:0 8px 0 var(--sol-escuro)}
.compra-cabeca{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:6px}

.cta-fixo{position:fixed;left:0;right:0;bottom:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--papel);border-top:2px solid var(--linha);box-shadow:0 -10px 24px -16px rgba(0,0,0,.35)}
.cta-fixo p{margin:0;line-height:1.15}
.cta-fixo strong{display:block;font-family:var(--titulo);font-size:1.25rem}
.cta-fixo small{color:var(--suave);font-size:.78rem}
.com-cta-fixo{padding-bottom:78px}
@media (min-width:960px){.cta-fixo{display:none}.com-cta-fixo{padding-bottom:0}}

/* ── Área do aluno: jornada ───────────────────────────────────────── */
.titulo-area{font-size:clamp(2rem,3vw + 1rem,2.7rem)}
.jornada{background:var(--papel);border:2px solid var(--linha);border-radius:28px;padding:22px;margin:18px 0 26px;box-shadow:0 6px 0 var(--linha)}
.jornada-topo{display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.jornada-info{flex:1 1 240px;min-width:0}
.jornada-info h1,.jornada-info h2{margin:0 0 6px}
.anel{position:relative;flex:none;width:120px;height:120px}
.anel svg{display:block}
.anel-fundo{stroke:var(--linha)}
.anel-valor{stroke:var(--folha)}
.anel-texto{position:absolute;inset:0;display:grid;place-content:center;text-align:center;line-height:1.1}
.anel-texto b{font-family:var(--titulo);font-size:1.7rem;font-weight:800;color:var(--texto)}
.anel-texto small{font-size:.8rem;color:var(--suave)}

.progresso{margin:10px 0}
.progresso .rotulo{display:flex;justify-content:space-between;font-size:.9rem;color:var(--suave);margin-bottom:6px}
progress{width:100%;height:12px;border:0;border-radius:999px;overflow:hidden;background:var(--linha);-webkit-appearance:none;appearance:none}
progress::-webkit-progress-bar{background:var(--linha);border-radius:999px}
progress::-webkit-progress-value{background:var(--folha);border-radius:999px}
progress::-moz-progress-bar{background:var(--folha);border-radius:999px}

.continuar{display:grid;grid-template-columns:1fr auto;column-gap:14px;align-items:center;margin:20px 0 6px;padding:16px 20px;min-height:76px;background:var(--sol);color:#0F3D2E;border-radius:20px;text-decoration:none;box-shadow:0 5px 0 var(--sol-escuro);transition:transform .08s ease,box-shadow .08s ease}
.continuar:hover{color:#0F3D2E;filter:brightness(1.04)}
.continuar:active{transform:translateY(3px);box-shadow:0 2px 0 var(--sol-escuro)}
.continuar-rotulo{font-size:.78rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.continuar-aula{grid-column:1;font-family:var(--titulo);font-weight:800;font-size:1.22rem;line-height:1.2}
.continuar-seta{grid-column:2;grid-row:1 / 3;font-size:1.9rem;font-weight:700}

.trilha{list-style:none;padding:0;margin:22px 0 6px;display:grid}
.parada{position:relative;margin:0}
.parada a{display:flex;gap:14px;align-items:center;min-height:60px;padding:6px 4px;text-decoration:none;color:var(--texto);border-radius:14px}
.parada a:hover{background:var(--areia)}
.parada-no{position:relative;z-index:1;flex:none;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:3px solid var(--linha);background:var(--papel);font-family:var(--titulo);font-weight:800;color:var(--suave)}
.parada-no img{width:34px;height:34px}
.parada-texto{display:grid;min-width:0}
.parada-rotulo{font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--suave)}
.parada-titulo{font-size:.95rem;font-weight:600;line-height:1.3}
.parada-conta{font-size:.82rem;color:var(--suave)}
.completa .parada-no{background:var(--folha);border-color:var(--folha);color:#fff}
.andando .parada-no{border-color:var(--folha);color:var(--folha)}
.atual .parada-no{background:var(--sol);border-color:var(--sol-escuro);box-shadow:0 0 0 6px rgba(244,196,48,.28)}
.atual .parada-conta{color:var(--laranja-texto);font-weight:700}
.parada:not(:last-child)::after{content:"";position:absolute;left:27px;top:52px;bottom:-8px;border-left:3px dashed var(--linha)}
.completa:not(:last-child)::after{border-left-style:solid;border-color:var(--folha)}
@media (min-width:960px){
  .trilha{grid-template-columns:repeat(8,minmax(0,1fr));gap:4px}
  .parada a{flex-direction:column;text-align:center;gap:8px;padding:8px 4px 10px}
  .parada:not(:last-child)::after{left:calc(50% + 28px);right:calc(-50% + 28px);top:30px;bottom:auto;border-left:0;border-top:3px dashed var(--linha)}
  .completa:not(:last-child)::after{border-top-style:solid;border-color:var(--folha)}
  .parada-titulo{font-size:.8rem;font-weight:500;color:var(--suave);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
}

.concluido{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:16px}
.concluido img{width:110px}
.concluido p{margin:0;flex:1 1 220px}
.vazio{display:flex;gap:24px;align-items:center;flex-wrap:wrap;background:var(--papel);border:2px dashed var(--linha);border-radius:28px;padding:24px;margin:16px 0 24px}
.vazio img{flex:none;width:170px}
.vazio > div{flex:1 1 260px}
.vazio h1,.vazio h2{margin-top:0}
.ave-topo{display:block;width:140px;margin-bottom:8px}

/* Lista de módulos e aulas */
.modulo{margin-top:30px;scroll-margin-top:16px}
.modulo h2{margin:0 0 12px}
.aulas{list-style:none;padding:0;margin:0;border:2px solid var(--linha);border-radius:18px;background:var(--papel);overflow:hidden}
.aulas li{border-top:2px solid var(--linha);margin:0}
.aulas li:first-child{border-top:0}
.aulas a{display:flex;gap:12px;align-items:center;min-height:54px;padding:10px 16px;text-decoration:none;color:var(--texto)}
.aulas a:hover{background:var(--areia)}
.aulas .proxima a{background:rgba(244,196,48,.16)}
.aula-nome{flex:1}
.marca-feito{flex:none;width:26px;height:26px;border-radius:50%;border:2px solid var(--linha);display:inline-flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:800}
.feito .marca-feito{background:var(--folha);border-color:var(--folha);color:#fff}
.destaque-etiqueta{background:var(--sol);border-color:var(--sol);color:#0F3D2E}

/* ── Aula: leitura ────────────────────────────────────────────────── */
.aula-layout{display:grid;gap:16px}
.aula-cabeca{min-width:0}
.aula-chips{list-style:none;display:flex;gap:8px;flex-wrap:wrap;padding:0;margin:6px 0 4px}
.aula-chips li{display:inline-flex;gap:6px;align-items:center;margin:0;padding:6px 12px;border-radius:999px;background:var(--areia);font-size:.85rem;color:var(--texto)}
.aula-chips .chip-ok{color:var(--ok);background:transparent;border:2px solid var(--ok)}
.aula-principal{min-width:0}
.nesta-aula{background:var(--areia);border-radius:18px;padding:14px 14px 10px}
.nesta-aula h2{margin:0 0 6px 8px;font-family:var(--ui);font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--laranja-texto)}
.nesta-aula ol{list-style:none;padding:0;margin:0;counter-reset:secao}
.nesta-aula li{margin:0}
.nesta-aula a{display:flex;gap:10px;align-items:baseline;min-height:44px;padding:9px 10px;border-radius:10px;color:var(--texto);text-decoration:none;font-size:.93rem;line-height:1.35}
.nesta-aula a::before{counter-increment:secao;content:counter(secao);flex:none;font-family:var(--titulo);font-weight:800;color:var(--laranja-texto);min-width:1.1em}
.nesta-aula a:hover{background:var(--papel)}
@media (min-width:1080px){
  .aula-layout{grid-template-columns:minmax(0,1fr) 270px;grid-template-areas:"cabeca cabeca" "principal lado";column-gap:40px}
  .aula-cabeca{grid-area:cabeca}
  .aula-principal{grid-area:principal}
  .aula-lado{grid-area:lado}
  .nesta-aula{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow:auto}
}

.aula{background:var(--papel);border:2px solid var(--linha);border-radius:24px;padding:22px 18px;overflow-wrap:anywhere}
.leitura{font-family:var(--leitura);font-size:1.12rem;line-height:1.78;color:var(--texto)}
.leitura > *{max-width:68ch}
.leitura p,.leitura li{color:var(--texto)}
.leitura h1{font-family:var(--titulo);font-size:clamp(1.75rem,2.2vw + 1rem,2.45rem);line-height:1.1;letter-spacing:-.025em;margin:0 0 14px}
.leitura h2{font-size:1.5rem;margin:2.1em 0 .5em;scroll-margin-top:20px}
.leitura h3{font-size:1.2rem;margin:1.6em 0 .4em}
.leitura strong{font-weight:700}
/* Tabelas da aula (leitura.preparar põe a caixa, os role e o data-label).
   Computador: tabela normal; com mais de 4 colunas, a caixa rola para o lado.
   Celular (até 640px): cada linha vira um cartão, sem rolagem lateral. */
.leitura .tabela-caixa{margin:16px 0;max-width:100%}
.leitura table{border-collapse:collapse;font-family:var(--ui);font-size:.92rem;line-height:1.45}
.leitura th,.leitura td{border:1px solid var(--linha);padding:8px 10px;text-align:left;vertical-align:top;overflow-wrap:normal;word-break:normal;hyphens:manual}
.leitura th{background:var(--areia)}
@media (min-width:641px){
  .leitura .tabela-larga{overflow-x:auto;
    background:linear-gradient(to left,var(--papel) 30%,transparent) right center/32px 100% no-repeat local,
      radial-gradient(farthest-side at 100% 50%,rgba(15,61,46,.25),transparent) right center/12px 100% no-repeat scroll}
  .leitura .tabela-larga th,.leitura .tabela-larga td{min-width:9rem}
  .leitura .tabela-larga tr > :first-child{min-width:7.5rem}
}
@media (max-width:640px){
  .leitura table,.leitura thead,.leitura tbody,.leitura tr,.leitura th,.leitura td{display:block}
  .leitura table{font-size:1.0625rem;line-height:1.55}
  .leitura thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .leitura tr{margin:0 0 14px;padding:14px 16px;background:var(--areia);border:2px solid var(--linha);border-radius:16px}
  .leitura td{border:0;padding:6px 0}
  .leitura td + td{border-top:1px dashed var(--linha)}
  .leitura td:first-child{font-family:var(--titulo);font-weight:800;font-size:1.2rem;line-height:1.25;color:var(--texto);padding:0 0 8px}
  .leitura td:not(:first-child)[data-label]:not([data-label=""])::before{content:attr(data-label) ": ";font-weight:700;color:var(--laranja-texto)}
}
.leitura pre{background:var(--codigo);border:1px solid var(--linha);padding:14px;border-radius:12px;overflow-x:auto;font-size:.82rem;line-height:1.55}
.leitura code{font-family:var(--mono);background:var(--codigo);padding:1px 5px;border-radius:5px;font-size:.84em}
.leitura pre code{background:none;padding:0}
.leitura blockquote{margin:18px 0;padding:10px 18px;border-left:5px solid var(--sol);background:var(--areia);border-radius:0 12px 12px 0}
.leitura blockquote p{margin:.4em 0}
.leitura hr{border:0;border-top:2px dashed var(--linha);margin:32px 0}
.leitura a{color:var(--link)}
@media (min-width:700px){.aula{padding:40px 48px}.leitura{font-size:1.16rem}}

.video-moldura{background:var(--mata);border-radius:24px;padding:10px;margin:0 0 20px;box-shadow:0 8px 0 rgba(15,61,46,.35)}
.video{position:relative;padding-top:56.25%;border-radius:16px;overflow:hidden;background:#000}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.aula-video{display:block;width:100%;height:auto;aspect-ratio:16/9;border-radius:16px;background:#000}

.aula-fim{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin:24px 0;padding:20px;background:var(--papel);border:2px dashed var(--linha);border-radius:22px}
.aula-fim.feita{border-style:solid;border-color:var(--folha)}
.aula-fim img{width:92px;flex:none}
.aula-fim form{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:0;flex:1 1 300px}
.aula-fim-texto{margin:0;flex-basis:100%;color:var(--texto);font-weight:600}
.navegacao{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
.nav-aula{display:flex;flex-direction:column;justify-content:center;min-height:64px;padding:12px 16px;background:var(--papel);border:2px solid var(--linha);border-radius:16px;color:var(--texto);text-decoration:none;line-height:1.3;font-size:.95rem}
.nav-aula:hover{color:var(--texto);border-color:var(--suave)}
.nav-aula small{font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--suave)}
.nav-aula.proxima{grid-column:2;text-align:right}

/* ── Aula grátis (amostra) ────────────────────────────────────────── */
.amostra-faixa{display:flex;flex-wrap:wrap;gap:14px 20px;align-items:center;justify-content:space-between;margin:20px 0 22px;padding:16px 18px;background:var(--hero-fundo);color:var(--hero-texto);border:2px solid var(--hero-borda);border-radius:20px}
.amostra-faixa p{margin:0;color:var(--hero-texto)}
.amostra-faixa-texto{flex:1 1 320px;display:grid;gap:8px;justify-items:start}
.amostra-faixa-texto strong{color:var(--hero-texto)}
.amostra-faixa .etiqueta{font-size:.85rem;padding:4px 12px}
.chip-gratis{background:transparent!important;border:2px solid var(--folha);color:var(--ok)!important}
.amostra-audio{margin:0 0 20px;padding:14px 16px;background:var(--areia);border-radius:18px}
.amostra-audio figcaption{display:flex;gap:8px;align-items:center;margin:0 0 10px;font-weight:600}
.amostra-audio audio{display:block;width:100%}
.amostra-cta{display:flex;flex-wrap:wrap;gap:16px 22px;align-items:flex-start;margin:24px 0;padding:22px 20px;background:var(--papel);border:3px solid var(--sol);border-radius:24px;box-shadow:var(--sombra-suave)}
.amostra-cta > img{width:84px;flex:none}
.amostra-cta-texto{flex:1 1 300px;min-width:0}
.amostra-cta h2{margin:0 0 6px;font-size:1.45rem;line-height:1.2}
.amostra-cta .preco{font-size:2rem;margin:10px 0 4px}
.amostra-cta .preco small{display:block;margin-top:6px;font-family:var(--ui);font-weight:400;letter-spacing:0}
.amostra-aviso label{display:block;font-weight:600;margin:6px 0}
.amostra-aviso-linha{display:flex;flex-wrap:wrap;gap:10px}
.amostra-aviso-linha input{flex:1 1 220px;min-height:56px}
.trancadas{margin:28px 0 0}
.trancadas h2{font-size:1.2rem;margin:0 0 12px}
.aula-trancada{display:flex;gap:12px;align-items:center;flex-wrap:wrap;min-height:54px;padding:10px 16px;color:var(--suave)}
.aula-trancada .icone{flex:none}
.aula-trancada .aula-nome{flex:1 1 180px}
.nav-aula.trancada{margin:0;border-style:dashed;color:var(--suave)}
.nav-aula.trancada small{display:inline-flex;gap:6px;align-items:center;justify-content:flex-end}
@media (min-width:700px){.amostra-cta{padding:28px 32px}.amostra-cta > img{width:110px}}

/* Página de venda: aula grátis e teaser */
.botao-gratis .icone{flex:none}
.nota-gratis{margin:10px 0 0;font-size:.9rem;color:var(--suave)}
.chamada-gratis{display:flex;flex-wrap:wrap;gap:14px 20px;align-items:center;justify-content:space-between;margin:22px 0 0;padding:18px 20px;background:var(--areia);border:2px dashed var(--sol-escuro);border-radius:20px}
.chamada-gratis p{margin:0}
.chamada-gratis > div{flex:1 1 280px}
.chamada-gratis-titulo{font-family:var(--titulo);font-weight:800;font-size:1.2rem;color:var(--texto)}
.teaser .video-moldura{max-width:860px}
.teaser-video{display:block;width:100%;height:auto;border-radius:16px;background:#000}
.teaser-vertical{display:none}
@media (max-width:640px){
  .teaser .video-moldura:has(.teaser-vertical){max-width:420px;margin-inline:auto}
  .teaser-horizontal{display:none}
  .teaser-vertical{display:block}
}
.teaser-link{margin:-8px 0 0;font-size:.9rem}

/* ── Admin ────────────────────────────────────────────────────────── */
.numeros{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:16px}
.numero{background:var(--papel);border:2px solid var(--linha);border-radius:16px;padding:14px}
.numero b{display:block;font-family:var(--titulo);font-size:1.7rem;color:var(--texto)}
.tabela{overflow-x:auto;margin-top:12px;background:var(--papel);border:2px solid var(--linha);border-radius:16px}
.tabela table{border-collapse:collapse;width:100%;font-size:.92rem}
.tabela th,.tabela td{padding:8px 10px;border-top:1px solid var(--linha);text-align:left;white-space:nowrap}
.tabela thead th{border-top:0;color:var(--suave);font-weight:600}
.tabela form{margin:0}

/* QR de acesso: fundo branco sempre (a câmera precisa de contraste) */
.qr img{display:block;width:240px;max-width:100%;height:auto;margin:8px auto 16px;background:#fff;border-radius:8px}

/* ── Ferramentas: cartões grandes, formulário e pedido montado ─────── */
.passos{padding-left:1.4em;font-size:1.08rem}
.passos li{margin:10px 0}
.ferr-grade{list-style:none;padding:0;margin:0;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}
.ferr-grade li{margin:0}
.ferr-card{display:flex;flex-direction:column;gap:8px;height:100%;padding:20px;background:var(--papel);border:2px solid var(--linha);border-radius:18px;color:var(--texto);text-decoration:none;box-shadow:0 4px 0 var(--linha)}
.ferr-card:hover{border-color:var(--mata-media);color:var(--texto)}
.ferr-titulo{font-family:var(--titulo);font-size:1.3rem;font-weight:700;line-height:1.2}
.ferr-uso{font-size:1.05rem;color:var(--suave);flex:1}
.ferr-abrir{font-weight:700;color:var(--link)}
.renovar{margin-top:32px}
.renovar summary{cursor:pointer;font-weight:700;padding:10px 0}
.adicional{padding:12px 14px;border:2px dashed var(--linha);border-radius:14px}
.montador-grade{display:grid;gap:20px;align-items:start}
@media (min-width:900px){.montador-grade{grid-template-columns:1fr 1fr}}
.montador label,.pedido label{font-size:1.05rem}
.obrigatorio{font-weight:400;color:var(--suave);font-size:.9rem}
textarea,select{width:100%;padding:10px 14px;font:inherit;font-size:1.05rem;color:var(--texto);background:var(--fundo);border:2px solid var(--linha);border-radius:12px}
select{min-height:48px}
textarea:focus,select:focus{border-color:var(--mata-media)}
.montador input[type=text]{font-size:1.05rem}
.resultado{font-family:var(--mono);font-size:.98rem;line-height:1.5;background:var(--areia);min-height:280px}
.conferir{margin-top:24px}
