:root{
  --papel:#F5EFE3; --cartao:#FFFDF8; --areia:#E3D5BC; --tinta:#1C2733; --texto2:#3F4A55;
  --destaque:#C2410C; --destaque-escuro:#9A3412; --azul:#1F4E79; --laranja-claro:#F4A261;
  --display:'Bricolage Grotesque','Trebuchet MS',sans-serif;
  --corpo:'Atkinson Hyperlegible',Verdana,sans-serif;
  --lateral:clamp(20px,8vw,120px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--papel);color:var(--tinta);font-family:var(--corpo);font-size:18px;line-height:1.55}
img{max-width:100%;display:block}
a{color:var(--tinta)}
a:hover{color:var(--destaque-escuro)}
:focus-visible{outline:3px solid var(--azul);outline-offset:3px}
h1,h2,h3{margin:0}
p{margin:0}
.display{font-family:var(--display);font-weight:800;letter-spacing:-.02em;line-height:1.05}
.secao{padding:clamp(64px,8vw,104px) var(--lateral)}
.conteudo{max-width:1200px;margin:0 auto}
.rotulo{font-size:15px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--destaque-escuro)}
.suave{color:var(--texto2)}
.borda-y{border-top:2px solid var(--tinta);border-bottom:2px solid var(--tinta)}

/* Botões */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 28px;border-radius:999px;font-weight:700;font-size:18px;text-decoration:none;border:2px solid transparent;transition:background .15s,color .15s}
.btn-principal{background:var(--destaque);color:#fff}
.btn-principal:hover{background:var(--destaque-escuro);color:#fff}
.btn-contorno{border-color:var(--tinta);color:var(--tinta)}
.btn-contorno:hover{background:var(--tinta);color:var(--papel)}
.btn-claro{border-color:var(--papel);color:var(--papel)}
.btn-claro:hover{background:var(--papel);color:var(--tinta)}

/* Topo */
.topo{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px var(--lateral);border-bottom:2px solid var(--tinta);position:sticky;top:0;background:var(--papel);z-index:10}
.marca{display:flex;align-items:center;gap:12px;text-decoration:none}
.marca-icone{display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--tinta);color:var(--papel);border-radius:10px;font-family:var(--display);font-weight:800;font-size:20px}
.marca-nome{font-family:var(--display);font-weight:800;font-size:clamp(18px,2vw,24px)}
.menu{display:flex;align-items:center;gap:32px}
.menu a:not(.btn){text-decoration:none}
.menu .btn{min-height:48px;padding:0 22px;font-size:17px}
@media (max-width:860px){.menu a:not(.btn){display:none}}

/* Hero */
.hero .conteudo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(32px,5vw,72px);align-items:center}
.hero-texto{display:flex;flex-direction:column;gap:26px}
.selo{align-self:flex-start;padding:7px 16px;border:2px solid var(--tinta);border-radius:999px;font-size:15px;font-weight:700}
.hero h1{font-size:clamp(44px,6vw,76px)}
.hero p.chamada{font-size:clamp(18px,1.6vw,22px)}
.botoes{display:flex;flex-wrap:wrap;gap:14px}
.video-destaque{position:relative;aspect-ratio:16/9;background:var(--tinta);border-radius:20px;box-shadow:12px 12px 0 var(--areia);overflow:hidden}
.video-destaque iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media (max-width:860px){
  .hero .conteudo{grid-template-columns:1fr}
  .botoes .btn{flex:1 1 100%}
  .video-destaque{box-shadow:8px 8px 0 var(--areia)}
}

/* Grades */
.grade-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.grade-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
@media (max-width:1000px){.grade-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){.grade-3{grid-template-columns:1fr}}
@media (max-width:560px){.grade-4{grid-template-columns:1fr}}

.cabecalho{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-bottom:48px}
.cabecalho > div{display:flex;flex-direction:column;gap:14px;max-width:720px}
.cabecalho > p{max-width:420px}
h2.grande{font-size:clamp(36px,4.5vw,56px)}
h2.medio{font-size:clamp(32px,3.8vw,48px)}

/* Para quem é */
.para-quem{background:var(--cartao)}
.para-quem h2{max-width:820px;margin-bottom:48px}
.caixa{display:flex;flex-direction:column;gap:14px;padding:30px;border:2px solid var(--tinta);border-radius:16px}
.caixa .num{font-family:var(--display);font-weight:800;font-size:40px;color:var(--destaque)}
.caixa h3{font-size:23px;line-height:1.3}

/* Cursos */
.curso{display:flex;flex-direction:column;background:var(--cartao);border:2px solid var(--tinta);border-radius:20px;overflow:hidden}
.capa{position:relative;aspect-ratio:16/9;background:var(--areia);border-bottom:2px solid var(--tinta);display:flex;align-items:center;justify-content:center;color:var(--texto2);font-size:16px}
.capa img{width:100%;height:100%;object-fit:cover}
.etiqueta{position:absolute;top:14px;left:14px;padding:6px 14px;background:var(--tinta);color:var(--papel);border-radius:999px;font-size:15px;font-weight:700}
.curso-corpo{display:flex;flex-direction:column;gap:16px;flex-grow:1;padding:28px}
.nivel{font-size:15px;font-weight:700;color:var(--azul)}
.curso h3{font-family:var(--display);font-weight:800;font-size:28px;line-height:1.15}
.curso .desc{flex-grow:1}
.lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;font-size:17px;line-height:1.4}
.lista li{display:flex;gap:10px;align-items:flex-start}
.lista svg{flex-shrink:0}
.preco{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-top:20px;border-top:1px dashed var(--tinta)}
.preco small{display:block;font-size:15px;color:var(--texto2)}
.preco strong{font-family:var(--display);font-weight:800;font-size:28px}
.preco .btn{min-height:52px;padding:0 22px;font-size:17px}
@media (max-width:860px){.preco .btn{flex:1 1 100%}}
.garantia{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:40px;text-align:left}

/* Vídeos */
.videos{background:var(--tinta);color:var(--papel)}
.videos .rotulo{color:var(--laranja-claro)}
.videos .suave{color:#D9DEE3}
.video-card{display:flex;flex-direction:column;gap:14px}
.video-card h3{font-size:19px;line-height:1.35}
.player{position:relative;aspect-ratio:16/9;background:#2C3B4A;border:1px solid #4A5D70;border-radius:14px;overflow:hidden}
.player button{all:unset;cursor:pointer;position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.player button:focus-visible{outline:3px solid var(--laranja-claro);outline-offset:-3px}
.player img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.player .play{position:relative;display:flex;align-items:center;justify-content:center;width:58px;height:58px;background:var(--papel);border-radius:999px}
.player .tag{position:absolute;top:12px;left:12px;padding:4px 10px;background:var(--laranja-claro);color:var(--tinta);border-radius:999px;font-size:13px;font-weight:700}
.player .tempo{position:absolute;right:12px;bottom:12px;padding:2px 8px;background:var(--tinta);border-radius:6px;font-size:14px}
.player iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* Passos */
.passo{display:flex;gap:20px;align-items:flex-start}
.passo .bola{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:56px;height:56px;background:var(--tinta);color:var(--papel);border-radius:999px;font-family:var(--display);font-weight:800;font-size:24px}
.passo h3{font-size:22px;line-height:1.3;margin-bottom:6px}

/* Sobre */
.sobre{background:var(--cartao)}
.sobre .conteudo{display:grid;grid-template-columns:400px minmax(0,1fr);gap:clamp(40px,6vw,80px);align-items:center}
.foto{aspect-ratio:10/11;background:var(--areia);border:2px solid var(--tinta);border-radius:20px;box-shadow:12px 12px 0 var(--tinta);display:flex;align-items:center;justify-content:center;color:var(--texto2);overflow:hidden}
.foto img{width:100%;height:100%;object-fit:cover}
.sobre-texto{display:flex;flex-direction:column;gap:22px}
.sobre-texto p{font-size:20px;line-height:1.6}
.sobre-texto .btn{align-self:flex-start}
@media (max-width:860px){
  .sobre .conteudo{grid-template-columns:1fr}
  .foto{max-width:420px;margin-right:12px;box-shadow:8px 8px 0 var(--tinta)}
  .sobre-texto .btn{align-self:stretch}
}

/* Dúvidas */
.duvidas .conteudo{display:grid;grid-template-columns:360px minmax(0,1fr);gap:clamp(24px,6vw,80px)}
@media (max-width:860px){.duvidas .conteudo{grid-template-columns:1fr}}
details{border-top:2px solid var(--tinta);padding:22px 0}
details:last-child{border-bottom:2px solid var(--tinta)}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;font-size:21px;font-weight:700;line-height:1.35}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font-family:var(--display);font-size:28px;line-height:1;flex-shrink:0}
details[open] summary::after{content:"–"}
details p{margin-top:12px}

/* Chamada final e rodapé */
.final{background:var(--destaque);color:#fff;text-align:center}
.final .conteudo{display:flex;flex-direction:column;align-items:center;gap:28px}
.final h2{font-size:clamp(36px,5vw,64px);max-width:900px}
.final .btn{background:#fff;color:var(--tinta);min-height:62px;padding:0 40px;font-size:20px}
.final .btn:hover{background:var(--tinta);color:#fff}
.rodape a{color:var(--papel)}
.rodape{background:var(--tinta);color:#D9DEE3;font-size:16px}

/* Botão "ver todos" */
.ver-todos{display:flex;justify-content:center;margin-top:40px}
.ver-todos .btn{min-height:60px;padding:0 36px;font-size:19px}
@media (max-width:860px){.ver-todos .btn{width:100%}}

/* Página de cursos */
.topo-pagina{padding:clamp(48px,6vw,80px) var(--lateral) clamp(32px,4vw,48px)}
.topo-pagina .conteudo{display:flex;flex-direction:column;gap:18px}
.topo-pagina h1{font-size:clamp(40px,5.5vw,68px)}
.topo-pagina p{max-width:640px;font-size:clamp(18px,1.6vw,21px)}
.voltar{align-self:flex-start;font-weight:700;font-size:17px}
.filtros{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:36px}
.filtro{min-height:48px;padding:0 22px;border:2px solid var(--tinta);border-radius:999px;background:transparent;color:var(--tinta);font:700 17px var(--corpo);cursor:pointer}
.filtro[aria-pressed="true"]{background:var(--tinta);color:var(--papel)}
.formato{position:absolute;top:14px;right:14px;padding:6px 12px;background:var(--cartao);color:var(--tinta);border:2px solid var(--tinta);border-radius:999px;font-size:14px;font-weight:700}
.curso[hidden]{display:none}
.vazio{padding:32px;border:2px dashed var(--tinta);border-radius:16px;text-align:center}

/* Depoimentos */
.depoimento{margin:0;display:flex;flex-direction:column;gap:18px;padding:30px;background:var(--cartao);border:2px solid var(--tinta);border-radius:16px}
.depoimento .aspas{color:var(--destaque)}
.depoimento blockquote{margin:0;flex-grow:1;font-size:19px;line-height:1.6}
.depoimento figcaption{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding-top:16px;border-top:1px dashed var(--tinta);font-size:16px}
.depoimento .autor{font-weight:700}
.depoimento a{font-weight:700;color:var(--azul)}

/* Rodapé completo */
.rodape{display:grid;grid-template-columns:1fr auto;gap:28px 40px;padding:48px var(--lateral) 32px;padding-bottom:calc(108px + env(safe-area-inset-bottom,0px))}
.rodape-info{display:flex;flex-direction:column;gap:10px}
.rodape .marca-icone{background:var(--papel);color:var(--tinta)}
.rodape .marca-nome{color:var(--papel)}
.redes{display:flex;gap:12px;align-items:flex-start}
.redes a{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:2px solid #4A5D70;border-radius:999px;color:var(--papel)}
.redes a:hover{background:var(--papel);color:var(--tinta);border-color:var(--papel)}
.rodape-base{grid-column:1/-1;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;padding-top:24px;border-top:1px solid #4A5D70}
.rodape-base nav{display:flex;flex-wrap:wrap;gap:20px}
@media (max-width:700px){.rodape{grid-template-columns:1fr}}

/* Botão flutuante do WhatsApp */
.whats{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:50;display:flex;align-items:center;gap:10px;min-height:60px;padding:0 22px 0 16px;background:#25D366;color:#0B3B1E;border-radius:999px;font-weight:700;font-size:17px;text-decoration:none;box-shadow:0 8px 24px rgba(28,39,51,.3);transition:transform .15s}
.whats:hover{color:#0B3B1E;transform:translateY(-2px)}
.whats:focus-visible{outline:3px solid var(--tinta);outline-offset:3px}
@media (max-width:700px){.whats{width:60px;padding:0;justify-content:center}.whats-texto{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}}
@media (prefers-reduced-motion:reduce){.whats{transition:none}}

/* Página de privacidade */
.texto-legal{max-width:760px}
.texto-legal h2{font-family:var(--display);font-weight:800;font-size:26px;margin:40px 0 12px}
.texto-legal h2:first-child{margin-top:0}
.texto-legal p,.texto-legal li{font-size:18px;line-height:1.7}
.texto-legal ul{padding-left:22px;display:flex;flex-direction:column;gap:10px}
.texto-legal a{color:var(--azul);font-weight:700}

/* Topo no celular: evita quebra de linha */
.menu .btn{white-space:nowrap}
@media (max-width:420px){
  .topo{padding-top:12px;padding-bottom:12px}
  .marca{gap:8px}
  .marca-icone{width:38px;height:38px;font-size:16px}
  .topo .marca-nome{font-size:17px;white-space:nowrap}
  .menu .btn{min-height:44px;padding:0 16px;font-size:16px}
}

/* Capas com imagem: etiquetas descem para a borda, sem cobrir a arte */
.capa:has(img) .etiqueta{top:auto;left:auto;bottom:-17px;right:18px;z-index:1}
.capa:has(img) .formato{top:auto;right:auto;bottom:-17px;left:18px;z-index:1}
.capa:has(img) + .curso-corpo{padding-top:36px}

/* Logo (selo) no topo e no rodapé */
.marca-logo{width:48px;height:48px;flex-shrink:0}
.rodape .marca-logo{width:56px;height:56px}
@media (max-width:420px){.topo .marca-logo{width:40px;height:40px}}

/* Números do canal */
.numeros{background:var(--cartao);padding:clamp(48px,6vw,72px) var(--lateral)}
.numeros-topo{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;margin-bottom:36px}
.numeros-canal{display:flex;align-items:center;gap:20px}
.numeros-canal svg{flex-shrink:0}
.numeros-canal h2{font-size:clamp(26px,3vw,36px);margin-bottom:6px}
.numeros-grade{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.numero{display:flex;flex-direction:column;gap:6px;padding:28px;background:var(--papel);border:2px solid var(--tinta);border-radius:16px;box-shadow:6px 6px 0 var(--areia)}
.numero strong{font-family:var(--display);font-weight:800;font-size:clamp(40px,4.6vw,60px);line-height:1;letter-spacing:-.02em;color:var(--destaque);font-variant-numeric:tabular-nums}
.numero strong small{font-size:.5em;letter-spacing:0}
.numero > span{font-size:19px;color:var(--texto2)}
.numeros-fonte{margin-top:18px;font-size:14px;color:var(--texto2)}
.selo-ra:empty{display:none}
.selo-ra{margin-top:32px;display:flex;justify-content:center}
@media (max-width:760px){.numeros-grade{grid-template-columns:1fr}.numeros-topo .btn{width:100%}}

/* Links do cartão para a página do curso */
.titulo-link{text-decoration:none;color:inherit}
.titulo-link:hover{text-decoration:underline;color:var(--destaque-escuro)}
.ver-curso{align-self:flex-start;font-weight:700;color:var(--azul);min-height:44px;display:inline-flex;align-items:center}

/* Página de curso */
.curso-topo .conteudo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(32px,5vw,64px);align-items:center}
.curso-topo-texto{display:flex;flex-direction:column;gap:20px}
.curso-tags{display:flex;flex-wrap:wrap;gap:10px}
.curso-tags span{padding:6px 14px;border:2px solid var(--tinta);border-radius:999px;font-size:15px;font-weight:700}
.curso-topo h1{font-size:clamp(38px,5vw,64px)}
.curso-topo .chamada{font-size:clamp(18px,1.5vw,21px)}
.caixa-compra{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:22px 24px;background:var(--cartao);border:2px solid var(--tinta);border-radius:16px;box-shadow:6px 6px 0 var(--areia)}
.caixa-compra strong{display:block;font-family:var(--display);font-weight:800;font-size:40px;line-height:1}
.caixa-compra small{display:block;margin-top:6px;font-size:16px;color:var(--texto2)}
.compra-segura{display:flex;align-items:center;gap:10px;font-size:16px}
.link-gratis{align-self:flex-start;font-weight:700;color:var(--destaque-escuro);min-height:44px;display:inline-flex;align-items:center}
.curso-topo-capa img{width:100%;height:auto;border:2px solid var(--tinta);border-radius:20px;box-shadow:12px 12px 0 var(--areia)}
.grade-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.gostou{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:44px;padding-top:32px;border-top:1px solid #4A5D70}
.gostou p{font-size:clamp(24px,2.6vw,32px)}
.aulas{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 28px;counter-reset:none}
.aula{display:flex;align-items:center;gap:16px;padding:16px 18px;background:var(--cartao);border:2px solid var(--tinta);border-radius:14px}
.aula-num{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:999px;background:var(--tinta);color:var(--papel);font-family:var(--display);font-weight:800;font-size:18px}
.aula-titulo{flex-grow:1;font-size:18px;font-weight:700;line-height:1.35}
.aula-gratis{flex-shrink:0;padding:6px 12px;border-radius:999px;background:var(--laranja-claro);color:var(--tinta);font-size:14px;font-weight:700;text-decoration:none}
.incluso{background:var(--cartao)}
.incluso .conteudo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.incluso .caixa{background:var(--papel);gap:22px}
.incluso .lista{font-size:18px}
.final p{font-size:19px}
@media (max-width:860px){
  .curso-topo .conteudo,.grade-2,.aulas,.incluso .conteudo{grid-template-columns:1fr}
  .curso-topo-capa{order:-1}
  .curso-topo-capa img{box-shadow:8px 8px 0 var(--areia)}
  .caixa-compra .btn,.gostou .btn{width:100%}
}

/* Página de cursos: grupos padronizados */
.atalhos{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:48px}
.atalhos a{display:inline-flex;align-items:center;min-height:48px;padding:0 22px;border:2px solid var(--tinta);border-radius:999px;font-weight:700;text-decoration:none}
.atalhos a:hover{background:var(--tinta);color:var(--papel)}
.grupo{scroll-margin-top:100px}
.grupo + .grupo{margin-top:72px;padding-top:56px;border-top:2px dashed var(--tinta)}
.grupo-titulo{display:flex;justify-content:space-between;align-items:flex-end;gap:12px 32px;flex-wrap:wrap;margin-bottom:32px}
.grupo-titulo p{max-width:460px}

/* Vídeos exclusivos em gravação: clima de suspense */
.player.gravando{background:#16202B}
.player.gravando::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(245,239,227,.05) 0 2px,transparent 2px 5px);animation:chiado 6s linear infinite;pointer-events:none}
.player.gravando .play{background:var(--laranja-claro);box-shadow:0 0 0 8px rgba(244,162,97,.18)}
.player.gravando .tempo{background:#0E151D;color:var(--laranja-claro);font-weight:700}
.player .rec{position:absolute;top:14px;right:14px;display:flex;align-items:center;gap:6px;padding:3px 9px;border-radius:6px;background:rgba(14,21,29,.8);color:#F5EFE3;font-size:13px;font-weight:700;letter-spacing:.08em}
.player .rec::before{content:"";width:9px;height:9px;border-radius:50%;background:#EF4444;animation:piscar 1.2s steps(2,start) infinite}
.video-card:has(.gravando) h3{color:#D9DEE3}
@keyframes chiado{from{background-position:0 0}to{background-position:0 100px}}
@keyframes piscar{to{visibility:hidden}}

.em-gravacao{display:flex;justify-content:space-between;align-items:center;gap:20px 32px;flex-wrap:wrap;margin-top:44px;padding:26px 28px;border:2px dashed #4A5D70;border-radius:16px}
.em-gravacao[hidden]{display:none}
.rec-titulo{display:flex;align-items:center;gap:10px;margin-bottom:6px;font-family:var(--display);font-weight:800;font-size:clamp(22px,2.4vw,28px);color:var(--papel)}
.rec-ponto{width:14px;height:14px;border-radius:50%;background:#EF4444;box-shadow:0 0 0 0 rgba(239,68,68,.6);animation:pulso-rec 1.6s ease-out infinite}
@keyframes pulso-rec{0%{box-shadow:0 0 0 0 rgba(239,68,68,.6)}100%{box-shadow:0 0 0 14px rgba(239,68,68,0)}}
@media (max-width:860px){.em-gravacao .btn{width:100%}}
@media (prefers-reduced-motion:reduce){.player.gravando::before,.player .rec::before,.rec-ponto{animation:none}}
