/* ═══ Concurso de Bolsa · Curso Interseção — estilo ═══════════════════════
   Os nomes das cores são papéis, não tons. A marca do Interseção: preto,
   vermelho e amarelo sobre o creme das folhas. */
:root{
  --tinta:#22222A; --tinta-2:#4A4A55; --cinza:#6E6E76; --cinza-cl:#A6A199;
  --vermelho:#D6342A; --vermelho-esc:#B3271F; --amarelo:#FFD54F; --amarelo-cl:#FFF3C4;
  --creme:#F4F2ED; --faixa:#FFFBF0; --branco:#FFFFFF; --cont:#E4E2DD; --divis:#EFEEEA;
  --certo:#1B6E56; --certo-bg:#E6F3EE; --certo-bd:#BFE0D0;
  --erro:#C0264A; --erro-bg:#FDECF0; --erro-bd:#F3C7C3;
  --ambar:#9A6700; --ambar-bg:#FFF6D9; --ambar-bd:#F2E4B3;
  --raio:16px; --raio-p:10px; --sombra:0 10px 30px rgba(34,34,42,.08);
  --fonte:'Poppins',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--fonte);background:var(--creme);color:var(--tinta);line-height:1.6;font-size:15.5px}
img,svg{max-width:100%;display:block}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
.hidden{display:none!important}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.wrap-m{max-width:760px;margin:0 auto;padding:0 20px}

/* ── botões ─────────────────────────────────────────────────────────── */
.bt{display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;border:0;border-radius:12px;
    padding:13px 22px;font-weight:600;font-size:15px;text-decoration:none;transition:transform .08s,background .15s,box-shadow .15s;white-space:nowrap}
.bt:active{transform:scale(.98)}
.bt:disabled{opacity:.5;cursor:not-allowed}
.bt-p{background:var(--vermelho);color:#fff;box-shadow:0 6px 18px rgba(214,52,42,.28)}
.bt-p:hover{background:var(--vermelho-esc)}
.bt-s{background:var(--tinta);color:#fff}
.bt-s:hover{background:#000}
.bt-l{background:var(--branco);color:var(--tinta);border:1.5px solid var(--cont)}
.bt-l:hover{border-color:var(--tinta)}
.bt-am{background:var(--amarelo);color:var(--tinta)}
.bt-am:hover{background:#F5C82E}
.bt-g{padding:16px 30px;font-size:16.5px;border-radius:14px}
.bt-min{padding:8px 14px;font-size:13px;border-radius:9px}
.bt-txt{background:none;border:0;color:var(--vermelho);font-weight:600;cursor:pointer;padding:6px 4px;text-decoration:underline;text-underline-offset:3px}
.bt-txt:hover{color:var(--vermelho-esc)}
.bt-bloco{width:100%}

/* ── topo ───────────────────────────────────────────────────────────── */
.topo{position:sticky;top:0;z-index:50;background:rgba(244,242,237,.86);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--cont)}
.topo .wrap{display:flex;align-items:center;gap:20px;height:70px}
.marca{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:700;letter-spacing:-.01em}
.marca img{width:40px;height:auto}
.marca small{display:block;font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--cinza)}
.marca b{display:block;font-size:15px;line-height:1.15}
.menu{margin-left:auto;display:flex;gap:26px;align-items:center}
.menu a{text-decoration:none;font-size:14px;font-weight:500;color:var(--tinta-2)}
.menu a:hover{color:var(--vermelho)}
.hamb{display:none;margin-left:auto;background:none;border:0;padding:8px;cursor:pointer}
.hamb span{display:block;width:22px;height:2px;background:var(--tinta);margin:5px 0;border-radius:2px}
@media (max-width:900px){
  .menu{display:none;position:absolute;left:0;right:0;top:70px;background:var(--faixa);border-bottom:1px solid var(--cont);flex-direction:column;align-items:stretch;padding:12px 20px 18px;gap:0}
  .menu.aberto{display:flex}
  .menu a{padding:12px 4px;border-bottom:1px solid var(--divis)}
  .menu .bt{margin-top:12px;justify-content:center}
  .hamb{display:block}
}

/* ── hero ───────────────────────────────────────────────────────────── */
.hero{position:relative;overflow:hidden;background:var(--tinta);color:#fff;padding:78px 0 70px}
.hero::before{content:'';position:absolute;right:-180px;top:-200px;width:620px;height:620px;border-radius:50%;border:90px solid rgba(255,213,79,.10)}
.hero::after{content:'';position:absolute;right:120px;bottom:-320px;width:560px;height:560px;border-radius:50%;border:90px solid rgba(214,52,42,.14)}
.hero .wrap{position:relative;z-index:1;display:grid;grid-template-columns:1.25fr .9fr;gap:48px;align-items:center}
.selo{display:inline-flex;align-items:center;gap:8px;background:rgba(255,213,79,.14);color:var(--amarelo);border:1px solid rgba(255,213,79,.35);border-radius:99px;padding:6px 14px;font-size:12.5px;font-weight:600;letter-spacing:.04em}
.selo .pt{width:8px;height:8px;border-radius:50%;background:var(--amarelo);box-shadow:0 0 0 4px rgba(255,213,79,.25)}
.selo.fechado{background:rgba(255,255,255,.08);color:#ddd;border-color:rgba(255,255,255,.2)}
.selo.fechado .pt{background:#bbb;box-shadow:none}
.hero h1{font-size:clamp(34px,5vw,58px);line-height:1.04;letter-spacing:-.025em;font-weight:700;margin:18px 0 16px}
.hero h1 em{font-style:normal;color:var(--amarelo)}
.hero p.lead{font-size:17.5px;color:rgba(255,255,255,.78);max-width:560px}
.hero .acoes{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.hero .acoes .bt-l{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.hero .acoes .bt-l:hover{border-color:#fff}
.cartao-data{background:var(--branco);color:var(--tinta);border-radius:22px;padding:26px 28px;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.cartao-data .k{font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--cinza);font-weight:600}
.cartao-data .dia{display:flex;align-items:baseline;gap:10px;margin-top:6px}
.cartao-data .dia b{font-size:56px;line-height:1;letter-spacing:-.03em}
.cartao-data .dia span{font-size:18px;font-weight:600;color:var(--tinta-2)}
.cartao-data .lin{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--divis);font-size:14px}
.cartao-data .lin:first-of-type{margin-top:16px}
.cartao-data .lin span{color:var(--cinza)}
.cartao-data .lin b{text-align:right}
.cartao-data .valor{background:var(--amarelo-cl);border-radius:12px;padding:12px 14px;margin-top:14px;display:flex;justify-content:space-between;align-items:center}
.cartao-data .valor b{font-size:22px}
.contagem{display:flex;gap:10px;margin-top:14px}
.contagem div{flex:1;background:var(--creme);border-radius:10px;padding:8px 4px;text-align:center}
.contagem b{display:block;font-family:var(--mono);font-size:20px;line-height:1.1}
.contagem small{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--cinza)}
@media (max-width:900px){.hero{padding:54px 0 50px}.hero .wrap{grid-template-columns:1fr;gap:30px}.cartao-data{max-width:460px}}

/* ── seções ─────────────────────────────────────────────────────────── */
section.sec{padding:72px 0}
section.sec.alt{background:var(--branco)}
.kicker{font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--vermelho)}
h2.tit{font-size:clamp(26px,3.4vw,38px);line-height:1.12;letter-spacing:-.02em;font-weight:700;margin:8px 0 14px}
p.sub{color:var(--cinza);font-size:16px;max-width:640px}
.cab-sec{margin-bottom:38px}
.cab-sec.centro{text-align:center}
.cab-sec.centro p.sub{margin:0 auto}
@media (max-width:700px){section.sec{padding:52px 0}}

.faixa-info{background:var(--amarelo);color:var(--tinta)}
.faixa-info .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.faixa-info .item{padding:22px 18px;border-left:1px solid rgba(34,34,42,.12)}
.faixa-info .item:first-child{border-left:0}
.faixa-info small{display:block;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;opacity:.7}
.faixa-info b{display:block;font-size:17px;margin-top:2px;line-height:1.3}
@media (max-width:800px){.faixa-info .wrap{grid-template-columns:1fr 1fr}.faixa-info .item:nth-child(3){border-left:0}.faixa-info .item{border-top:1px solid rgba(34,34,42,.12)}.faixa-info .item:nth-child(-n+2){border-top:0}}

.grade-2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.grade-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.grade-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media (max-width:900px){.grade-3,.grade-4{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.grade-2,.grade-3,.grade-4{grid-template-columns:1fr}}

.cartao{background:var(--branco);border:1px solid var(--cont);border-radius:var(--raio);padding:26px}
.cartao h3{font-size:19px;line-height:1.3;letter-spacing:-.01em;margin-bottom:8px}
.cartao p{color:var(--cinza);font-size:14.5px}
.turma{position:relative;overflow:hidden;padding:30px 28px}
.turma .tag{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:5px 10px;border-radius:99px;background:var(--creme);color:var(--tinta-2);margin-bottom:14px}
.turma h3{font-size:24px}
.turma ul{list-style:none;margin:16px 0 22px;display:grid;gap:8px}
.turma li{display:flex;gap:10px;font-size:14.5px;color:var(--tinta-2)}
.turma li::before{content:'';width:18px;height:18px;flex:none;border-radius:50%;background:var(--amarelo-cl);margin-top:3px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2322222A' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E");background-size:11px;background-repeat:no-repeat;background-position:center}
.turma.ita{background:var(--tinta);color:#fff;border-color:var(--tinta)}
.turma.ita .tag{background:rgba(255,255,255,.1);color:var(--amarelo)}
.turma.ita li{color:rgba(255,255,255,.82)}
.turma.ita p{color:rgba(255,255,255,.7)}

.passos{counter-reset:p}
.passo{position:relative;padding:26px 24px 24px 24px}
.passo .n{display:inline-flex;width:38px;height:38px;border-radius:12px;background:var(--amarelo);align-items:center;justify-content:center;font-weight:700;font-size:16px;margin-bottom:16px}
.passo h3{font-size:17px}

.prova-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:start}
@media (max-width:860px){.prova-grid{grid-template-columns:1fr}}
.barras{display:grid;gap:14px;margin-top:10px}
.barra{display:grid;grid-template-columns:150px 1fr 40px;align-items:center;gap:14px;font-size:14.5px}
.barra .trilho{height:14px;background:var(--divis);border-radius:99px;overflow:hidden}
.barra .cheio{height:100%;border-radius:99px;background:var(--tinta)}
.barra:nth-child(1) .cheio{background:var(--vermelho)}
.barra b{font-family:var(--mono);text-align:right}
.destaque{background:var(--faixa);border:1px solid var(--ambar-bd);border-radius:var(--raio);padding:22px 24px}
.destaque h3{font-size:17px;margin-bottom:6px}
.destaque p{font-size:14.5px;color:var(--tinta-2)}
.stat{display:flex;gap:26px;flex-wrap:wrap;margin-top:22px}
.stat div b{display:block;font-size:30px;letter-spacing:-.02em;line-height:1}
.stat div small{color:var(--cinza);font-size:13px}

.acordeao{display:grid;gap:10px}
.acordeao details{background:var(--branco);border:1px solid var(--cont);border-radius:14px;overflow:hidden}
.acordeao summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;padding:18px 22px;font-weight:600;font-size:16px}
.acordeao summary::-webkit-details-marker{display:none}
.acordeao summary .q{margin-left:auto;font-size:12px;color:var(--cinza);font-weight:500}
.acordeao summary .seta{width:26px;height:26px;border-radius:50%;background:var(--creme);display:inline-flex;align-items:center;justify-content:center;transition:transform .2s;flex:none}
.acordeao details[open] summary .seta{transform:rotate(45deg)}
.acordeao .corpo{padding:0 22px 22px;color:var(--tinta-2);font-size:14.5px}
.acordeao .corpo h4{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--cinza);margin:14px 0 8px}
.acordeao .corpo ul{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px 18px}
.acordeao .corpo li{padding-left:16px;position:relative}
.acordeao .corpo li::before{content:'';position:absolute;left:0;top:10px;width:6px;height:6px;border-radius:50%;background:var(--vermelho)}
.ico-mat{width:38px;height:38px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex:none}
.ico-mat.mat{background:#FDE3E1;color:var(--vermelho)} .ico-mat.por{background:#E4E9F8;color:#2A3D8F}
.ico-mat.fis{background:#E3F2EC;color:#1B6E56} .ico-mat.qui{background:var(--amarelo-cl);color:#8A6200}

.local-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:start}
@media (max-width:860px){.local-grid{grid-template-columns:1fr}}
.mapa{border-radius:var(--raio);overflow:hidden;border:1px solid var(--cont);height:400px;background:var(--divis)}
.mapa iframe{width:100%;height:100%;border:0}
.endereco h3{font-size:22px;margin-bottom:6px}
.endereco p{color:var(--tinta-2)}
.endereco .lin{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--divis);font-size:14.5px}
.endereco .lin:first-of-type{margin-top:18px}
.endereco .lin b{min-width:110px;color:var(--cinza);font-weight:500}

.sobre{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:center}
@media (max-width:860px){.sobre{grid-template-columns:1fr}}
.sobre p{color:var(--tinta-2);margin-bottom:14px}
.aprov{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.aprov span{background:var(--branco);border:1px solid var(--cont);border-radius:99px;padding:6px 13px;font-size:13px;font-weight:500}
.aprov span.f{background:var(--tinta);color:#fff;border-color:var(--tinta)}
.difs{display:grid;gap:14px}
.dif{display:flex;gap:16px;background:var(--branco);border:1px solid var(--cont);border-radius:14px;padding:18px 20px}
.dif .i{width:44px;height:44px;border-radius:12px;background:var(--amarelo-cl);flex:none;display:flex;align-items:center;justify-content:center}
.dif h4{font-size:15.5px;margin-bottom:3px}
.dif p{font-size:13.5px;color:var(--cinza);margin:0}

.faq details{border-top:1px solid var(--cont)}
.faq details:last-child{border-bottom:1px solid var(--cont)}
.faq summary{list-style:none;cursor:pointer;padding:18px 0;font-weight:600;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';color:var(--vermelho);font-size:20px;line-height:1}
.faq details[open] summary::after{content:'–'}
.faq .r{padding:0 0 18px;color:var(--tinta-2);font-size:14.5px;max-width:720px}

.cta-final{background:var(--vermelho);color:#fff;text-align:center;padding:64px 0}
.cta-final h2{font-size:clamp(26px,3.6vw,40px);letter-spacing:-.02em;line-height:1.1}
.cta-final p{opacity:.85;margin:10px 0 26px}
.cta-final .bt-am{box-shadow:0 10px 30px rgba(0,0,0,.2)}

.rodape{background:var(--tinta);color:rgba(255,255,255,.7);padding:52px 0 30px;font-size:13.5px;text-align:center}
.rodape .wrap{display:flex;flex-direction:column;align-items:center;gap:0}
.rodape .rod-logo{width:64px;height:auto;margin:0 auto 14px;border-radius:9px}
.rodape .colunas{display:grid;grid-template-columns:repeat(3,auto);gap:28px 64px;justify-content:center;margin-top:34px;text-align:center}
.rodape h5{color:#fff;font-size:12px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:10px}
.rodape a{color:rgba(255,255,255,.8);text-decoration:none;display:block;padding:3px 0}
.rodape a:hover{color:var(--amarelo)}
.rodape .fim{width:100%;border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:18px;font-size:12px;color:rgba(255,255,255,.45)}
@media (max-width:760px){.rodape .colunas{grid-template-columns:1fr;gap:26px}}

/* ── painel (inscrição e consulta) ──────────────────────────────────── */
.painel-fundo{position:fixed;inset:0;z-index:100;background:rgba(34,34,42,.55);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding:24px 12px;overflow-y:auto;animation:apar .18s ease}
@keyframes apar{from{opacity:0}to{opacity:1}}
.painel{background:var(--creme);border-radius:22px;width:100%;max-width:720px;box-shadow:0 40px 100px rgba(0,0,0,.4);overflow:hidden;margin:auto 0}
.painel-cab{background:var(--branco);border-bottom:1px solid var(--cont);padding:18px 24px;display:flex;align-items:center;gap:14px}
.painel-cab img{width:34px}
.painel-cab .t b{display:block;font-size:16px;line-height:1.2}
.painel-cab .t small{color:var(--cinza);font-size:12.5px}
.painel-cab .fechar{margin-left:auto;background:var(--creme);border:0;width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:18px;line-height:1}
.painel-cab .fechar:hover{background:var(--cont)}
.painel-corpo{padding:26px 24px 30px}
@media (max-width:560px){.painel-fundo{padding:0}.painel{border-radius:0;min-height:100vh}.painel-corpo{padding:22px 18px 30px}}

.etapas{display:flex;gap:6px;margin-bottom:24px}
.etapas div{flex:1;height:5px;border-radius:99px;background:var(--cont)}
.etapas div.feita{background:var(--tinta)}
.etapas div.atual{background:var(--vermelho)}
.etapa-rot{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--vermelho)}
.painel h3{font-size:22px;letter-spacing:-.01em;margin:4px 0 6px;line-height:1.2}
.painel p.ajuda{color:var(--cinza);font-size:14px;margin-bottom:20px}

.campo{margin-bottom:16px}
.campo label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}
.campo label small{font-weight:400;color:var(--cinza)}
.campo input,.campo select,.campo textarea{width:100%;background:var(--branco);border:1.5px solid var(--cont);border-radius:var(--raio-p);padding:12px 14px;font-size:15px;outline:0;transition:border .15s,box-shadow .15s}
.campo input:focus,.campo select:focus,.campo textarea:focus{border-color:var(--tinta);box-shadow:0 0 0 4px rgba(34,34,42,.08)}
.campo input[aria-invalid=true]{border-color:var(--erro);background:#FFF9F9}
.campo .erro-campo{color:var(--erro);font-size:12.5px;margin-top:5px}
.campo textarea{min-height:90px;resize:vertical}
.linha-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:520px){.linha-2{grid-template-columns:1fr}}
.opcoes{display:grid;gap:10px}
.opcao{display:flex;gap:14px;align-items:flex-start;background:var(--branco);border:1.5px solid var(--cont);border-radius:14px;padding:16px 18px;cursor:pointer;transition:border .15s}
.opcao:hover{border-color:var(--cinza-cl)}
.opcao input{margin-top:5px;accent-color:var(--vermelho);width:18px;height:18px;flex:none}
.opcao b{display:block;font-size:15.5px}
.opcao small{color:var(--cinza);font-size:13px}
.opcao.marcada{border-color:var(--vermelho);box-shadow:0 0 0 4px rgba(214,52,42,.08)}
.check{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--tinta-2);background:var(--branco);border:1.5px solid var(--cont);border-radius:12px;padding:14px 16px;cursor:pointer}
.check input{margin-top:4px;accent-color:var(--vermelho);width:18px;height:18px;flex:none}
.aviso{border-radius:12px;padding:13px 16px;font-size:13.5px;line-height:1.55;margin:0 0 16px;display:flex;gap:10px}
.aviso.info{background:var(--faixa);border:1px solid var(--ambar-bd);color:var(--tinta-2)}
.aviso.ok{background:var(--certo-bg);border:1px solid var(--certo-bd);color:var(--certo)}
.aviso.ruim{background:var(--erro-bg);border:1px solid var(--erro-bd);color:var(--erro)}
.aviso.ambar{background:var(--ambar-bg);border:1px solid var(--ambar-bd);color:var(--ambar)}
.botoes{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-top:26px;flex-wrap:wrap}
.botoes .dir{margin-left:auto;display:flex;gap:10px}
.revisao{background:var(--branco);border:1px solid var(--cont);border-radius:14px;overflow:hidden;margin-bottom:16px}
.revisao .lin{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:11px 16px;border-top:1px solid var(--divis);font-size:14px}
.revisao .lin:first-child{border-top:0}
.revisao .lin span{color:var(--cinza)}
.revisao .grupo{background:var(--creme);padding:8px 16px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--cinza)}

.pix-caixa{display:grid;grid-template-columns:200px 1fr;gap:22px;align-items:start;background:var(--branco);border:1px solid var(--cont);border-radius:16px;padding:20px}
@media (max-width:560px){.pix-caixa{grid-template-columns:1fr;justify-items:center}}
.pix-caixa .qr{background:#fff;padding:8px;border:1px solid var(--cont);border-radius:12px;width:200px;height:200px;display:flex;align-items:center;justify-content:center}
.pix-caixa .qr svg{width:100%;height:100%}
.pix-caixa .valor{font-size:30px;font-weight:700;letter-spacing:-.02em;line-height:1}
.pix-caixa .chave{font-family:var(--mono);font-size:12px;background:var(--creme);border-radius:8px;padding:8px 10px;margin-top:10px;word-break:break-all}
.copia{margin-top:12px}
.copia textarea{width:100%;font-family:var(--mono);font-size:11px;background:var(--creme);border:1px solid var(--cont);border-radius:8px;padding:8px 10px;min-height:64px;resize:none;color:var(--tinta-2)}
.envio{display:block;border:2px dashed var(--cont);border-radius:14px;padding:22px;text-align:center;background:var(--branco);cursor:pointer;transition:border .15s}
.envio:hover,.envio.sobre{border-color:var(--vermelho)}
.envio input{display:none}
.envio b{display:block;font-size:15px}
.envio small{color:var(--cinza);font-size:13px}
.envio .previa{margin:12px auto 0;max-height:220px;border-radius:10px;border:1px solid var(--cont)}
.envio .nome-arq{font-family:var(--mono);font-size:12px;margin-top:10px;color:var(--tinta-2);word-break:break-all}

.status-cx{background:var(--branco);border:1px solid var(--cont);border-radius:16px;padding:22px 24px;margin-bottom:18px}
.status-cx .num{font-family:var(--mono);font-size:13px;color:var(--cinza)}
.status-cx .num b{font-size:22px;color:var(--tinta);letter-spacing:.04em}
.pill{display:inline-flex;align-items:center;gap:8px;border-radius:99px;padding:6px 14px;font-size:13px;font-weight:600}
.pill::before{content:'';width:8px;height:8px;border-radius:50%;background:currentColor}
.pill.aguardando_pagamento{background:var(--ambar-bg);color:var(--ambar)}
.pill.em_analise{background:#E4E9F8;color:#2A3D8F}
.pill.confirmada{background:var(--certo-bg);color:var(--certo)}
.pill.comprovante_recusado{background:var(--erro-bg);color:var(--erro)}
.pill.cancelada{background:var(--divis);color:var(--cinza)}

.ingresso{background:var(--branco);border:1px solid var(--cont);border-radius:18px;overflow:hidden}
.ingresso .cab{background:var(--tinta);color:#fff;padding:16px 22px}
.ingresso .cab small{display:block;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--amarelo)}
.ingresso .cab b{font-size:18px}
.ingresso .corpo{display:grid;grid-template-columns:1fr 190px;gap:20px;padding:22px}
@media (max-width:560px){.ingresso .corpo{grid-template-columns:1fr;justify-items:center;text-align:center}}
.ingresso .nome{font-size:22px;font-weight:700;line-height:1.2}
.ingresso .turma{font-size:13.5px;color:var(--cinza);margin-bottom:14px}
.ingresso dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:13.5px}
.ingresso dt{color:var(--cinza)}
.ingresso dd{font-weight:600}
.ingresso .qr{background:#fff;border:1px solid var(--cont);border-radius:12px;padding:8px;width:190px;height:190px}
.ingresso .qr svg{width:100%;height:100%}
.ingresso .cod{font-family:var(--mono);font-size:11px;text-align:center;color:var(--cinza);margin-top:6px}
.ingresso .pe{border-top:1px dashed var(--cont);padding:14px 22px;font-size:13px;color:var(--tinta-2);background:var(--faixa)}

.carregando{display:inline-block;width:18px;height:18px;border:2.5px solid rgba(0,0,0,.15);border-top-color:currentColor;border-radius:50%;animation:gira .7s linear infinite;vertical-align:middle}
@keyframes gira{to{transform:rotate(360deg)}}
.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);background:var(--tinta);color:#fff;padding:12px 18px;border-radius:12px;font-size:14px;z-index:200;box-shadow:var(--sombra);max-width:90vw}

/* ── pagamento pela Cielo ────────────────────────────────────────────── */
.pix-caixa.cielo{grid-template-columns:1fr 1.1fr;align-items:stretch}
@media (max-width:560px){.pix-caixa.cielo{grid-template-columns:1fr;justify-items:stretch}}
.cielo-esq{display:flex;flex-direction:column;justify-content:center;padding-right:8px}
.passinhos{margin:0 0 0 18px;font-size:13.5px;color:var(--tinta-2);display:grid;gap:4px}
.dobra{background:var(--branco);border:1px solid var(--cont);border-radius:14px;padding:14px 18px}
.dobra summary{cursor:pointer;font-weight:600;font-size:14px;color:var(--tinta-2);list-style:none;display:flex;justify-content:space-between;gap:12px}
.dobra summary::-webkit-details-marker{display:none}
.dobra summary::after{content:'+';color:var(--vermelho);font-size:18px;line-height:1}
.dobra[open] summary::after{content:'–'}

/* ── ajustes 14/09: página institucional, inscrição externa ─────────── */
.nota-hero{margin-top:18px;font-size:12.5px;line-height:1.5;color:rgba(255,255,255,.55);max-width:520px}
.hero .lead sup, .nota-hero sup{color:var(--amarelo)}
.cta-final .bt-l{box-shadow:0 10px 30px rgba(0,0,0,.2);border-color:transparent}
.cta-final .bt-l:hover{border-color:transparent;background:var(--creme)}
.turma.ita .bt-p{box-shadow:none}
.dif{align-items:flex-start}
.difs .dif h4{font-size:15.5px}
.grade-2 .turma{display:flex;flex-direction:column}
.grade-2 .turma ul{margin-bottom:24px}
.grade-2 .turma .bt{margin-top:auto;align-self:flex-start}
.cartao-data .lin b{line-height:1.35}
.cta-final h2{margin-bottom:26px}

/* ── aprovados: banner e faixas ─────────────────────────────────────── */
.kicker.claro{color:var(--amarelo)}
.banner-ap{position:relative;background:var(--amarelo);color:var(--tinta);padding:54px 0 0;overflow:hidden}
.barra-ap{position:relative;z-index:5;background:var(--tinta);color:#fff}
.barra-ap .wrap{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;padding-block:16px;text-align:center}
.barra-ap b{font-size:16px;font-weight:600}
.barra-ap a{color:var(--amarelo);font-weight:600;text-decoration:none;font-size:15px}
.barra-ap a:hover{text-decoration:underline;text-underline-offset:3px}
.confete{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.confete i{position:absolute;display:block;opacity:.7;border-radius:2px;
  animation-name:cai;animation-timing-function:linear;animation-iteration-count:infinite}
@keyframes cai{
  0%{transform:translate3d(0,-130px,0) rotate(0deg)}
  100%{transform:translate3d(var(--dx,0),430px,0) rotate(var(--giro,720deg))}
}
@media (prefers-reduced-motion:reduce){.confete i{animation:none}}
.banner-ap .wrap{position:relative;z-index:1}
.ban-cab{max-width:1000px}
.ban-cab .kicker{color:var(--vermelho)}
.ban-cab h2{font-size:clamp(23px,2.6vw,31px);line-height:1.18;letter-spacing:-.015em;margin:8px 0 14px;font-weight:700;text-wrap:balance}
.ban-cab .insts{display:flex;flex-wrap:wrap;gap:7px}
.ban-cab .insts span{background:rgba(255,255,255,.62);border:1px solid rgba(34,34,42,.12);border-radius:99px;padding:5px 11px;font-size:12px;font-weight:600;white-space:nowrap}
@media (max-width:860px){
  .banner-ap{padding-top:40px}
}

section.sec{position:relative;overflow:hidden}


/* grupo de aprovados: arte única do marketing */
.grupo-ap{margin:26px auto -16px;max-width:1180px}
.grupo-ap img{display:block;width:100%;height:auto;margin-inline:auto;
  filter:drop-shadow(0 14px 26px rgba(34,34,42,.16))}
@media (max-width:820px){
  .grupo-ap{margin:18px -20px -14px;overflow-x:auto;scrollbar-width:none}
  .grupo-ap::-webkit-scrollbar{display:none}
  .grupo-ap img{width:760px;max-width:none}
}
