/* =====================================================================
   PÁGINA INICIAL: o que só a inicial tem (o teste de ouvido, os vídeos e a
   capa com as três escolhas). Todo o resto vem de estilo.css.
   ===================================================================== */

/* ── Teste de ouvido ──────────────────────────── */
.ouvido { background: linear-gradient(180deg, var(--ceu-claro), #f7fbff); }
.desafio { position: relative; max-width: 800px; margin: 0 auto; padding: 30px 36px 36px; border-radius: 32px; color: #fff; overflow: hidden; background: radial-gradient(520px 300px at 100% 0%, #146597 0%, rgba(20, 101, 151, 0) 70%), radial-gradient(420px 260px at 0% 100%, #0d5a86 0%, rgba(13, 90, 134, 0) 70%), var(--azul-escuro); box-shadow: 0 34px 60px -26px rgba(11, 74, 115, .6); }
.desafio__topo { display: flex; align-items: center; gap: 16px; margin-bottom: 22px; }
.desafio__rotulo { font: 800 .8rem var(--titulo); letter-spacing: .1em; text-transform: uppercase; color: #a8cdf0; }
.progresso { display: flex; gap: 6px; flex: 1; max-width: 240px; margin: 0 0 0 auto; padding: 0; list-style: none; }
.progresso li { flex: 1; height: 8px; border-radius: 8px; background: rgba(255, 255, 255, .16); transition: background-color .3s; }
.progresso li[data-estado="agora"] { background: rgba(255, 255, 255, .6); }
.progresso li[data-estado="certa"] { background: #5fd69a; }
.progresso li[data-estado="errada"] { background: repeating-linear-gradient(135deg, #ffb4a8 0 4px, rgba(255, 180, 168, .35) 4px 8px); }
.desafio__contagem { font: 800 .92rem var(--titulo); color: #d8e8f7; min-width: 128px; text-align: right; }
.desafio__ultima { margin: -8px 0 18px; font-size: .92rem; color: #bcd6ee; }
.tocador { display: flex; gap: 12px; margin-bottom: 14px; }
.ouvir { flex: 1; display: flex; align-items: center; gap: 18px; padding: 16px 20px; border: 1px solid rgba(255, 255, 255, .14); border-radius: 22px; background: rgba(255, 255, 255, .08); color: #fff; text-align: left; cursor: pointer; transition: background-color .2s; }
.ouvir:hover { background: rgba(255, 255, 255, .13); }
.ouvir__bola { width: 64px; height: 64px; flex: none; border-radius: 50%; display: grid; place-items: center; background: #fff; color: var(--azul-escuro); }
.ouvir__bola svg { width: 26px; height: 26px; margin-left: 3px; }
.ouvir.tocando .ouvir__bola { animation: pulso 1.2s ease-out infinite; }
@keyframes pulso { from { box-shadow: 0 0 0 0 rgba(255, 255, 255, .4); } to { box-shadow: 0 0 0 18px rgba(255, 255, 255, 0); } }
.ouvir b { display: block; font: 900 1.25rem var(--titulo); }
.ouvir small { color: #bcd6ee; font-size: .93rem; }
.ondas { margin-left: auto; display: flex; align-items: center; gap: 4px; height: 34px; }
.ondas i { width: 4px; height: 10px; border-radius: 4px; background: rgba(255, 255, 255, .3); }
.ondas i:nth-child(2), .ondas i:nth-child(4) { height: 18px; }
.ondas i:nth-child(3) { height: 26px; }
.ouvir.tocando .ondas i { background: #ffd98a; animation: onda .8s ease-in-out infinite; }
.ouvir.tocando .ondas i:nth-child(2) { animation-delay: -.15s; }
.ouvir.tocando .ondas i:nth-child(3) { animation-delay: -.3s; }
.ouvir.tocando .ondas i:nth-child(4) { animation-delay: -.45s; }
.ouvir.tocando .ondas i:nth-child(5) { animation-delay: -.6s; }
@keyframes onda { 0%, 100% { height: 8px; } 50% { height: 32px; } }
.devagar { flex: none; width: 108px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; border: 1px solid rgba(255, 255, 255, .14); border-radius: 22px; background: rgba(255, 255, 255, .08); color: #fff; font: 800 .84rem/1.2 var(--titulo); cursor: pointer; transition: background-color .2s; }
.devagar:hover { background: rgba(255, 255, 255, .13); }
.devagar span { font: 900 1.3rem var(--titulo); color: #ffd98a; }
.ler { display: inline-flex; align-items: center; min-height: 40px; margin: -4px 0 8px; padding: 0; border: 0; background: none; color: #ffd98a; font: 800 .94rem var(--titulo); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.aviso-voz { margin: 0 0 10px; padding: 10px 14px; border-radius: 12px; background: rgba(255, 217, 138, .12); color: #ffe6b0; font-size: .95rem; }
.transcricao { margin: 0 0 16px; font: 800 1.35rem/1.45 var(--titulo); color: #ffd98a; }
.transcricao span { border-radius: 6px; padding: 0 2px; transition: background-color .12s, color .12s; }
.transcricao span.falando { background: #ffd98a; color: var(--azul-escuro); }
.enunciado { margin: 0 0 12px; font: 800 1.05rem var(--titulo); color: #d8e8f7; }
.opcoes { display: grid; gap: 10px; }
.opcoes--imagens { grid-template-columns: repeat(3, 1fr); gap: 12px; }
.opcao { position: relative; display: flex; align-items: center; gap: 12px; min-height: 58px; padding: 10px 18px 10px 20px; border: 0; border-radius: 16px; background: #fff; color: var(--tinta); text-align: left; font: 700 1.06rem/1.35 var(--texto); cursor: pointer; transition: transform .18s var(--mola), box-shadow .18s, background-color .2s, opacity .2s; }
.opcao:hover:not(:disabled) { transform: translateY(-2px); box-shadow: 0 12px 22px -12px rgba(0, 0, 0, .6); }
.opcao--imagem { flex-direction: column; justify-content: center; min-height: 138px; padding: 16px 10px; color: var(--azul-escuro); }
.opcao--imagem > svg { width: 84px; height: 84px; }
.opcao__marca { margin-left: auto; width: 30px; height: 30px; flex: none; border-radius: 50%; display: grid; place-items: center; }
.opcao__marca svg { width: 18px; height: 18px; }
.opcao--imagem .opcao__marca { position: absolute; top: 8px; right: 8px; margin: 0; }
.opcao.certa { background: #e2f8ec; color: #0d4a2a; box-shadow: inset 0 0 0 3px var(--verde); }
.opcao.certa .opcao__marca { background: var(--verde); color: #fff; }
.opcao.errada { background: #ffe5e0; color: #6b1a0e; box-shadow: inset 0 0 0 3px #d4462f; }
.opcao.errada .opcao__marca { background: #d4462f; color: #fff; }
.opcao:disabled { cursor: default; }
.opcao:disabled:not(.certa):not(.errada) { opacity: .5; }
.retorno { display: grid; grid-template-columns: 1fr auto; gap: 16px; align-items: center; margin-top: 16px; padding: 16px 18px; border-radius: 20px; background: rgba(255, 255, 255, .08); animation: abre .35s var(--mola); }
.retorno__titulo { display: flex; align-items: center; gap: 8px; margin: 0 0 2px; font: 900 1.12rem var(--titulo); color: #fff; }
.retorno__titulo svg { width: 22px; height: 22px; color: #5fd69a; }
.retorno p { margin: 0; color: #d8e8f7; font-size: .98rem; }
.retorno__acoes { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.retorno .botao { min-height: 48px; padding: 0 20px; }
.desafio__fim { text-align: center; padding: 6px 0 2px; animation: abre .45s var(--mola); }
.fim__marcas { list-style: none; display: flex; justify-content: center; gap: 10px; margin: 0 0 14px; padding: 0; }
.fim__marcas li { width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; }
.fim__marcas svg { width: 22px; height: 22px; }
.fim__marcas li.certa { background: #5fd69a; color: #073b20; }
.fim__marcas li.errada { background: #ffb4a8; color: #5a1409; }
.desafio__fim h3 { color: #fff; font-size: clamp(2rem, 1.5rem + 2vw, 2.7rem); margin-bottom: 10px; outline: none; }
.desafio__fim p { color: #d8e8f7; font-size: 1.12rem; max-width: 540px; margin: 0 auto 24px; }
.desafio__fim .botoes { justify-content: center; }
.aviso { text-align: center; color: var(--suave); font-size: .92rem; margin: 18px auto 0; max-width: 640px; }

/* ── Vídeos: todos num lugar só ───────────────── */
.videos { color: #fff; background: radial-gradient(700px 360px at 85% 0%, #135d8a 0%, rgba(19, 93, 138, 0) 70%), radial-gradient(600px 320px at 10% 100%, #0e5580 0%, rgba(14, 85, 128, 0) 70%), var(--azul-escuro); }
.videos h2 { color: #fff; }
.videos .topo-secao p { color: #cfe2f4; }
.reels { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; max-width: 940px; margin: 0 auto; }
.reel { margin: 0; }
.reel__quadro { position: relative; aspect-ratio: 9 / 16; border-radius: 26px; overflow: hidden; background: #0f3e5e; box-shadow: 0 28px 50px -24px rgba(0, 0, 0, .7); }
.reel__capa, .reel video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.reel video { opacity: 0; transition: opacity .3s; }
.reel.iniciado video { opacity: 1; }
.reel.iniciado .reel__capa { opacity: 0; }
.reel__play { position: absolute; left: 50%; top: 50%; width: 76px; height: 76px; margin: -38px 0 0 -38px; display: grid; place-items: center; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .95); color: var(--azul); cursor: pointer; box-shadow: 0 12px 30px rgba(0, 0, 0, .35); transition: transform .25s var(--mola), opacity .25s; }
.reel__play svg { width: 28px; height: 28px; margin-left: 4px; }
.reel__play:hover { transform: scale(1.08); }
.reel.tocando .reel__play { opacity: 0; pointer-events: none; }
.reel figcaption { margin-top: 14px; text-align: center; font: 800 1.06rem/1.3 var(--titulo); color: #fff; }
.reels__pontos, .reels__dica { display: none; }

@media (max-width: 760px) {
  .desafio { padding: 22px 16px; border-radius: 26px; }
  .desafio__topo { flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }
  .progresso { order: 3; flex-basis: 100%; max-width: none; margin: 0; }
  .desafio__contagem { margin-left: auto; min-width: 0; }
  .tocador { gap: 8px; }
  .ouvir { gap: 12px; padding: 12px; border-radius: 18px; }
  .ouvir__bola { width: 52px; height: 52px; }
  .ouvir b { font-size: 1.08rem; }
  .ouvir small { font-size: .84rem; }
  .ondas { display: none; }
  .devagar { width: 84px; border-radius: 18px; font-size: .78rem; }
  .transcricao { font-size: 1.16rem; }
  .opcoes--imagens { gap: 8px; }
  .opcao--imagem { min-height: 108px; padding: 12px 6px; }
  .opcao--imagem > svg { width: 62px; height: 62px; }
  .opcao { font-size: 1rem; padding-left: 16px; }
  .retorno { grid-template-columns: 1fr; }
  .retorno__acoes { justify-content: stretch; }
  .retorno__acoes .botao { flex: 1 1 100%; }
  .desafio__fim .botao { flex: 1 1 100%; }

  .reels { grid-template-columns: repeat(3, 58%); gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; margin: 0 -16px; padding: 0 16px 8px; scroll-padding-inline: 16px; scrollbar-width: none; }
  .reels::-webkit-scrollbar { display: none; }
  .reel { scroll-snap-align: start; }
  .reels__pontos { display: flex; justify-content: center; gap: 8px; margin-top: 14px; }
  .reels__pontos i { width: 8px; height: 8px; border-radius: 8px; background: rgba(255, 255, 255, .3); transition: width .3s var(--mola), background-color .3s; }
  .reels__pontos i.ativo { width: 24px; background: #fff; }
  .reels__dica { display: flex; justify-content: center; align-items: center; gap: 6px; margin: 10px 0 0; font: 800 .92rem var(--titulo); color: #cfe2f4; }
  .reels__dica svg { width: 16px; height: 16px; }
}


/* CAPA:INICIO · a capa pode ser trocada sozinha: substitua tudo daqui até CAPA:FIM (e o bloco CAPA do
   HTML e do JS da inicial). */
/* ── CAPA · versão C: "o mundo Glass" ──
   A casa flutuante, com a fada, o ciclista e o menino voando, é a imagem principal.
   Ao lado, só o título e as três escolhas em pílulas grandes ("Para quem é o inglês?").
   No computador, a escolha abre o painel no lugar da ilustração, ao lado das pílulas,
   com uma setinha apontando para a pílula escolhida. No celular e no tablet, o painel
   abre logo abaixo da pílula tocada. Passar o mouse numa pílula acende o personagem dela. */
.capa { position: relative; overflow: hidden; padding: 26px 0 0; background: var(--ceu-degrade); }
.nuvem--c1 { width: 112px; top: 20px; left: 41%; opacity: .95; }
.nuvem--c2 { width: 88px; top: 70px; right: 2%; opacity: .85; animation-duration: 32s; }
.nuvem--c3 { width: 68px; bottom: 110px; left: 1%; opacity: .7; animation-duration: 22s; }
.capa__grade { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 56px; align-items: center; }
.capa__texto { padding: 4px 0 30px; }
/* A linha de assunto no alto do título (SEO, 30/09/2026): faz parte do <h1>, e o leitor de tela lê o título
   inteiro, em ordem ("Curso de inglês em Vitória da Conquista Inglês se aprende vivendo."). Tem a cara dos
   selos (pequena, em maiúsculas e espaçada), no azul-escuro do título. As maiúsculas vêm de small-caps, e não de
   text-transform: com text-transform o Chrome entrega ao leitor de tela o texto em CAIXA ALTA (que alguns leem
   letra por letra); com small-caps o texto continua "Curso de inglês…". Colada ao "Learning is fun" (que perde
   um pouco da margem), as duas formam um bloco só acima do slogan, que continua do mesmo tamanho. */
.capa__lema { margin-bottom: 6px; }
.capa__assunto { display: block; margin: 0 0 12px; font: 800 1.02rem/1.05 var(--titulo); font-variant-caps: all-small-caps; letter-spacing: .09em; color: var(--azul-escuro); }
.capa__selos { display: flex; flex-wrap: wrap; align-items: center; gap: 0 20px; margin: 0; font: 700 .98rem/1.3 var(--titulo); color: var(--azul-escuro); }
.capa__selos > span, .capa__selos a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; }
.capa__selos a { color: inherit; text-decoration: none; }
.capa__selos a:hover { text-decoration: underline; text-underline-offset: 3px; }
.capa__diamante { width: 20px; height: 20px; flex: none; color: var(--azul); }
.volta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; width: max-content; max-width: 100%; margin: 12px 0 0; padding: 8px 16px; border-radius: 99px; background: #fff; box-shadow: var(--sombra); font: 800 .95rem var(--titulo); color: var(--azul-escuro); }
.volta a { text-decoration: none; }
.volta a:hover { text-decoration: underline; }

/* As três escolhas: pílulas grandes */
.escolher { margin-top: 22px; }
.escolher__pergunta { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; font: 900 1.3rem/1.2 var(--titulo); letter-spacing: -.01em; color: var(--azul-escuro); }
.escolher__seta { width: 36px; height: 27px; flex: none; margin-top: 10px; color: var(--laranja); }
.escolhas { display: grid; gap: 12px; max-width: 470px; }
.escolha { --cor: var(--laranja); --fundo: #fff4e3; --texto-cor: #9a4d00; --luz: rgba(243, 154, 30, .95); display: flex; align-items: center; gap: 14px; width: 100%; min-height: 70px; padding: 9px 11px 9px 9px; border: 0; border-radius: 99px; background: #fff; text-align: left; cursor: pointer; box-shadow: var(--sombra); transition: transform .3s var(--mola), box-shadow .3s, background-color .3s; animation: capa-entra .6s var(--saida) .1s backwards; }
.escolha--filho { --cor: var(--verde); --fundo: #e5f6ec; --texto-cor: #156b3a; --luz: rgba(31, 157, 85, .9); animation-delay: .2s; }
.escolha--aluno { --cor: var(--teal); --fundo: #e0f3f1; --texto-cor: #026a60; --luz: rgba(2, 138, 126, .9); animation-delay: .3s; }
@keyframes capa-entra { from { opacity: 0; transform: translateX(-18px); } }
/* O ícone de cada pílula é o personagem daquele perfil (o mesmo que voa até o painel) */
.escolha__icone { flex: none; display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: radial-gradient(circle at 50% 38%, #fff 0 42%, var(--fundo) 72%); box-shadow: inset 0 0 0 2.5px var(--cor); transition: transform .35s var(--mola); }
.escolha__icone img { width: 40px; height: 40px; max-width: none; object-fit: contain; }
.escolha--filho .escolha__icone img { width: 50px; margin-left: -3px; }
.escolha__nome { flex: 1; min-width: 0; font: 900 1.2rem/1.15 var(--titulo); color: var(--azul-escuro); }
.escolha__acao { flex: none; display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-width: 44px; height: 44px; padding: 0 12px; border-radius: 99px; background: var(--fundo); color: var(--texto-cor); font: 800 .9rem/1 var(--titulo); transition: background-color .25s, color .25s; }
.escolha__acao svg { width: 20px; height: 20px; flex: none; transition: transform .35s var(--mola); }
.escolha__acao .acao-fechar, .escolha__acao .ic-fechar { display: none; }
.escolha:hover { transform: translateX(5px); box-shadow: var(--sombra-alta); }
.escolha:hover .escolha__icone { transform: rotate(-8deg) scale(1.06); }
.escolha:hover .escolha__acao { background: var(--texto-cor); color: #fff; }
.escolha[aria-expanded="true"] { background: var(--fundo); box-shadow: var(--sombra-alta), inset 0 0 0 3px var(--cor); }
.escolha[aria-expanded="true"] .escolha__acao { background: var(--texto-cor); color: #fff; padding: 0 14px 0 12px; }
.escolha[aria-expanded="true"] .acao-abrir, .escolha[aria-expanded="true"] .ic-abrir { display: none; }
.escolha[aria-expanded="true"] .acao-fechar { display: inline; }
.escolha[aria-expanded="true"] .ic-fechar { display: block; width: 16px; height: 16px; }
.capa__contato { display: flex; flex-wrap: wrap; gap: 0 22px; margin: 12px 0 0; font: 700 .98rem var(--titulo); color: var(--azul-escuro); }
.capa__contato a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; color: inherit; text-decoration: none; }
.capa__contato a:hover { text-decoration: underline; text-underline-offset: 3px; }
.capa__contato b { font-weight: 900; }
.capa__whats { width: 22px; height: 22px; color: var(--whats); }


/* Os painéis (o mesmo conteúdo da capa A) */
.painel { --cor: var(--laranja); --fundo: #fff4e3; --texto-cor: #9a4d00; position: relative; padding: 26px 30px; border-radius: 28px; background: #fff; box-shadow: var(--sombra-alta), inset 6px 0 0 var(--cor); text-align: left; animation: abre .45s var(--mola); }
.painel--filho { --cor: var(--verde); --fundo: #e5f6ec; --texto-cor: #156b3a; }
.painel--aluno { --cor: var(--teal); --fundo: #e0f3f1; --texto-cor: #026a60; }
.painel::before { content: ''; position: absolute; top: -9px; left: 35px; width: 20px; height: 20px; margin-left: -10px; background: #fff; border-radius: 5px 0 0 0; transform: rotate(45deg); }
.painel__grade { display: grid; gap: 20px; }
.painel__olho { font: 800 .78rem/1 var(--titulo); letter-spacing: .1em; text-transform: uppercase; color: var(--texto-cor); margin: 0 0 10px; }
.painel h3 { font-size: clamp(1.45rem, 1.2rem + .8vw, 1.8rem); margin-bottom: 8px; outline: none; }
.painel p { color: var(--suave); margin: 0; }
.fatos { list-style: none; margin: 14px 0 0; padding: 0; display: grid; gap: 8px; }
.fatos li { display: flex; align-items: center; gap: 10px; font: 700 .98rem/1.35 var(--texto); color: var(--tinta); }
.fatos svg { width: 22px; height: 22px; flex: none; color: var(--texto-cor); }
.painel__acoes { display: grid; gap: 10px; }
.painel__acoes .botao { width: 100%; }
.painel__links { display: flex; flex-wrap: wrap; justify-content: center; gap: 0 18px; }
/* Dois botões lado a lado, da mesma largura; se não cabem sem quebrar o texto (celular estreito), um sobre o outro */
.painel__par { display: flex; flex-wrap: wrap; gap: 10px; }
.painel__acoes .painel__par .botao { flex: 1 1 0; width: auto; min-width: -webkit-max-content; min-width: max-content; padding: 0 16px; white-space: nowrap; }
.painel__niveis { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.painel__niveis a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 15px; border-radius: 99px; background: var(--fundo); color: var(--texto-cor); font: 800 .92rem var(--titulo); text-decoration: none; transition: background-color .2s, color .2s, transform .2s; }
.painel__niveis a:hover { background: var(--teal-texto); color: #fff; transform: translateY(-2px); }
.nota-pequena { font-size: .92rem; color: var(--suave); margin-top: 10px !important; }
.mini-dica { display: grid; grid-template-columns: auto 1fr; gap: 4px 14px; align-items: center; padding: 16px 18px; border-radius: 20px; background: linear-gradient(135deg, var(--azul), #027a70); color: #fff; text-decoration: none; transition: transform .25s var(--mola); }
.mini-dica:hover { transform: translateY(-3px); }
.mini-dica svg { grid-row: span 2; width: 46px; height: 46px; padding: 11px; border-radius: 14px; background: rgba(255, 255, 255, .16); }
.mini-dica small { font: 800 .74rem var(--titulo); letter-spacing: .1em; text-transform: uppercase; color: #fff; opacity: .9; }
.mini-dica b { font: 900 1.12rem/1.2 var(--titulo); }

@keyframes capa-painel { from { opacity: 0; transform: translateX(-16px) scale(.985); } }

/* O personagem acompanha a escolha: sai da casa, voa e pousa no painel (o voo é feito pelo JS).
   É só enfeite. Sem JS, os painéis nem abrem e a ilustração fica como está. */
.cena .fora { visibility: hidden; }
.capa__voo { position: absolute; inset: 0; pointer-events: none; }
.capa__voo--tela { position: fixed; z-index: 3; overflow: hidden; }   /* abaixo do menu do topo (nível 50) */
.capa__voador { position: absolute; left: 0; top: 0; height: auto; max-width: none; transform-origin: 50% 50%; will-change: transform, opacity; }
.painel__personagem { float: left; position: relative; z-index: 1; height: auto; max-width: none; margin: -6px 14px 6px -6px; pointer-events: none; filter: drop-shadow(0 8px 8px rgba(11, 74, 115, .14)); }
.painel__personagem.chegando { visibility: hidden; }
.painel--mim .painel__personagem { float: right; width: 64px; margin: -6px -6px 6px 14px; animation: pedala 1.2s ease-in-out infinite; }
.painel--filho .painel__personagem { width: 92px; margin-top: -2px; animation: pousa-menino 5s ease-in-out infinite; }
.painel--aluno .painel__personagem { width: 58px; animation: pousa-fada 6s ease-in-out infinite; }

/* Computador: o painel abre no lugar da ilustração */
@media (min-width: 961px) {
  .escolha__acao .ic-abrir { transform: rotate(-90deg); }
  .escolha:hover .escolha__acao .ic-abrir { transform: rotate(-90deg) translateY(2px); }
  .painel { position: absolute; z-index: 3; top: 0; bottom: 0; right: 0; width: calc(50% - 28px); height: -webkit-fit-content; height: fit-content; margin: auto 0; padding: 30px 34px; box-shadow: var(--sombra-alta), inset 0 6px 0 var(--cor); animation-name: capa-painel; }
  .painel::before { top: var(--seta-y, 50%); left: 0; margin: -10px 0 0 -9px; border-radius: 0 0 0 5px; }
  /* A ilustração já fica numa camada própria: assim, ao sumir, o navegador não precisa redesenhá-la
     no mesmo instante em que o personagem decola (era isso que dava o tranco no começo do voo). */
  .cena { will-change: opacity, transform; }
  .capa.com-painel .cena { opacity: 0; transform: scale(.96); visibility: hidden; transition: opacity .45s, transform .5s, visibility 0s .5s; }
  /* No computador, o personagem pousa em cima da borda do painel: o ciclista no canto de cima à direita
     (ele olha para a direita), o menino e a fada no canto de cima à esquerda (olham para a esquerda) */
  .painel__personagem { position: absolute; float: none; left: 30px; margin: 0; }
  .painel--mim .painel__personagem { width: 84px; top: -80px; left: auto; right: 34px; margin: 0; }
  .painel--filho .painel__personagem { width: 116px; top: -58px; margin: 0; }
  .painel--aluno .painel__personagem { width: 72px; top: -84px; left: 36px; }
}
@media (max-width: 1080px) and (min-width: 961px) {
  .capa__grade { column-gap: 40px; }
  .painel { width: calc(50% - 20px); padding: 26px 26px; }
  .escolha__nome { font-size: 1.1rem; }
}

/* Tablet e celular: ilustração em cima, pílulas empilhadas, painel logo abaixo da pílula */
@media (max-width: 960px) {
  .capa { padding-top: 8px; }
  .capa__grade { display: flex; flex-direction: column; }
  .capa__texto { width: 100%; max-width: 560px; margin: 0 auto; padding-bottom: 26px; text-align: center; }
  .capa__selos, .escolher__pergunta, .capa__contato { justify-content: center; }
  .volta { margin-inline: auto; justify-content: center; }
  .escolhas { max-width: none; text-align: left; }
  .escolha:hover { transform: translateY(-2px); }
  .painel { margin-top: -2px; }
}
@media (max-width: 760px) {
  .nuvem--c1 { width: 70px; top: 6px; left: 60%; }
  .nuvem--c2 { width: 58px; top: 150px; right: -12px; }
  .nuvem--c3 { display: none; }
  .capa { padding-top: 2px; }
  .capa h1 { font-size: clamp(2.05rem, 9.6vw, 2.5rem); margin-bottom: 4px; }
  .capa__lema { margin-bottom: 2px; }
  .capa__assunto { margin-bottom: 6px; font-size: .9rem; letter-spacing: .05em; }
  .capa__selos { gap: 0 14px; font-size: .88rem; }
  .capa__selos > span, .capa__selos a { min-height: 34px; gap: 6px; }
  .capa__diamante { width: 17px; height: 17px; }
  .capa__selos .estrelas svg { width: 14px; height: 14px; }
  .escolher { margin-top: 10px; }
  .escolher__pergunta { font-size: 1.12rem; margin-bottom: 8px; }
  .escolher__seta { width: 28px; height: 21px; margin-top: 8px; }
  .escolhas { gap: 10px; }
  .escolha { min-height: 60px; gap: 12px; padding: 7px 8px 7px 7px; }
  .escolha__icone { width: 46px; height: 46px; }
  .escolha__icone img { width: 36px; height: 36px; }
  .escolha--filho .escolha__icone img { width: 45px; }
  .painel--mim .painel__personagem { width: 54px; }
  .painel--filho .painel__personagem { width: 78px; }
  .painel--aluno .painel__personagem { width: 48px; }
  .escolha__nome { font-size: 1.08rem; }
  .escolha[aria-expanded="true"] .escolha__acao { gap: 4px; padding: 0 12px 0 11px; font-size: .84rem; }
  .painel { padding: 22px 18px 20px 22px; border-radius: 24px; }
  .painel::before { left: 30px; }
  .volta { flex-direction: column; gap: 2px; border-radius: 20px; padding: 10px 18px; }
  .capa__contato { margin-top: 6px; font-size: .92rem; }
}
/* CAPA:FIM */
