
  :root { --lima:#C6FF00; --lima2:#9BE000; --cinza:#a3a3a3; --linha:#1d1d1d; --card:rgba(14,14,14,.82); }
  * { margin:0; padding:0; box-sizing:border-box; }
  html { scroll-behavior:smooth; overflow-x:hidden; overflow-x:clip; }
  img { max-width:100%; }
  body { background:#000; color:#fff; font-family:'Inter',sans-serif; line-height:1.55; overflow-x:hidden; overflow-x:clip; position:relative; -webkit-font-smoothing:antialiased; }
  .anton { font-family:'Anton',sans-serif; text-transform:uppercase; letter-spacing:.2px; line-height:.98; }
  .lima { color:var(--lima); }
  .wrap { max-width:1140px; margin:0 auto; padding:0 20px; position:relative; z-index:2; }
  section { position:relative; }
  #fundo { position:fixed; inset:0; width:100%; height:100%; z-index:0; pointer-events:none; }
  .brilho { position:fixed; width:1100px; height:1100px; left:50%; top:-260px; transform:translateX(-50%); background:radial-gradient(circle,rgba(198,255,0,.16) 0%,rgba(198,255,0,.04) 40%,transparent 68%); z-index:0; pointer-events:none; }

  /* reveal ao rolar */
  .rv { opacity:0; transform:translateY(34px); transition:opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1); }
  .rv.in { opacity:1; transform:none; }
  .d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}

  /* topo */
  header { position:relative; z-index:5; max-width:1140px; margin:0 auto; padding:18px 20px; display:flex; justify-content:space-between; align-items:center; }
  header img { height:52px; }
  .pill { font-size:12px; font-weight:800; letter-spacing:2px; text-transform:uppercase; border:2px solid var(--lima); color:var(--lima); padding:8px 16px; border-radius:40px; display:flex; align-items:center; gap:8px; }
  .pill i { width:8px; height:8px; border-radius:50%; background:var(--lima); box-shadow:0 0 12px var(--lima); animation:pulsa 1.4s infinite; }
  @keyframes pulsa { 50% { opacity:.25; } }

  /* hero */
  .hero { padding:6px 0 60px; }
  .hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); grid-template-areas:"txt foto" "form form"; column-gap:40px; row-gap:10px; align-items:center; }
  .h-txt { grid-area:txt; padding-top:20px; } .h-foto { grid-area:foto; } .form-box { grid-area:form; justify-self:center; width:100%; max-width:600px; margin-top:-30px; z-index:4; }
  .tag { display:inline-block; font-family:'Anton'; font-size:18px; letter-spacing:2px; text-transform:uppercase; background:#fff; color:#000; padding:4px 14px; border-radius:8px; transform:rotate(-2deg); }
  .hero h1 { font-size:clamp(40px,4.6vw,72px); margin-top:16px; }
  .hero h1 .lima { text-shadow:0 0 50px rgba(198,255,0,.35); }
  .hero .sub { margin-top:14px; font-size:19px; color:#d4d4d4; max-width:520px; }
  .hero .sub b { color:#fff; }
  .chips { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
  .chip { display:flex; align-items:center; gap:7px; background:rgba(198,255,0,.07); border:1.5px solid rgba(198,255,0,.45); border-radius:40px; padding:8px 14px; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:1px; }
  .chip svg { color:var(--lima); flex:none; }
  .h-foto { position:relative; align-self:start; display:flex; align-items:flex-start; justify-content:center; padding-top:10px; }
  .h-foto .aro { position:absolute; width:110%; aspect-ratio:1; left:-5%; top:-10%; background:radial-gradient(circle,rgba(198,255,0,.20),transparent 60%); pointer-events:none; }
  .h-foto .duo { position:relative; width:100%; max-width:640px; max-height:82vh; object-fit:contain; filter:drop-shadow(3px 0 0 var(--lima)) drop-shadow(-3px 0 0 var(--lima)) drop-shadow(0 3px 0 var(--lima)) drop-shadow(0 -3px 0 var(--lima)); -webkit-mask-image:linear-gradient(180deg,#000 82%,transparent); mask-image:linear-gradient(180deg,#000 82%,transparent); }
  .notif { position:absolute; z-index:3; display:flex; align-items:center; gap:10px; background:rgba(10,10,10,.88); backdrop-filter:blur(10px); border:1.5px solid rgba(198,255,0,.4); border-radius:14px; padding:8px 14px 8px 8px; box-shadow:0 16px 40px rgba(0,0,0,.6); animation:flutua 6s ease-in-out infinite; white-space:nowrap; }
  .notif img { width:42px; height:42px; border-radius:50%; object-fit:cover; border:2px solid var(--lima); }
  .notif b { display:block; font-size:14px; line-height:1.2; }
  .notif span { font-size:11px; color:var(--lima); font-weight:800; letter-spacing:.6px; text-transform:uppercase; }
  .n1 { left:-10px; top:52%; } .n2 { right:-6px; top:68%; animation-delay:-2s; } .n3 { left:6%; top:84%; animation-delay:-4s; }
  @keyframes flutua { 0%,100%{ transform:translateY(0) } 50%{ transform:translateY(-10px) } }

  /* formulário */
  .form-box { position:relative; background:linear-gradient(180deg,rgba(20,20,20,.94),rgba(4,4,4,.96)); border:2.5px solid var(--lima); border-radius:26px; padding:30px 26px; box-shadow:0 0 0 6px rgba(198,255,0,.06), 0 30px 80px rgba(0,0,0,.7), 0 0 70px rgba(198,255,0,.18); }
  .form-box h2 { font-size:34px; text-align:center; }
  .form-box .mini { text-align:center; color:var(--cinza); font-size:14px; margin:8px 0 14px; }
  .vagas { display:flex; align-items:center; justify-content:center; gap:8px; font-size:12px; font-weight:800; letter-spacing:1.5px; text-transform:uppercase; color:#000; background:var(--lima); border-radius:10px; padding:8px; }
  label { display:block; font-size:12px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; color:#cfcfcf; margin:16px 0 7px; }
  input, select { width:100%; font:inherit; font-size:17px; color:#fff; background:#050505; border:2px solid #2b2b2b; border-radius:13px; padding:15px 14px; outline:none; transition:border-color .15s, box-shadow .15s; }
  input:focus, select:focus { border-color:var(--lima); box-shadow:0 0 0 4px rgba(198,255,0,.12); }
  select { appearance:none; cursor:pointer; background-image:linear-gradient(45deg,transparent 50%,var(--lima) 50%),linear-gradient(135deg,var(--lima) 50%,transparent 50%); background-position:calc(100% - 22px) 52%,calc(100% - 16px) 52%; background-size:6px 6px; background-repeat:no-repeat; }
  .btn { position:relative; overflow:hidden; display:flex; align-items:center; justify-content:center; gap:10px; width:100%; margin-top:22px; font-family:'Anton'; text-transform:uppercase; font-size:24px; letter-spacing:.5px; color:#000; background:var(--lima); border:0; border-radius:15px; padding:19px 16px; cursor:pointer; text-decoration:none; box-shadow:0 0 40px rgba(198,255,0,.45); transition:transform .12s, box-shadow .2s; }
  .btn::after { content:''; position:absolute; top:0; left:-60%; width:40%; height:100%; background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent); transform:skewX(-20deg); animation:brilhoBtn 3.2s infinite; }
  @keyframes brilhoBtn { 0%,60%{ left:-60% } 100%{ left:130% } }
  .btn:hover { box-shadow:0 0 60px rgba(198,255,0,.7); } .btn:active { transform:scale(.98); }
  .btn[disabled] { opacity:.75; cursor:wait; }
  .seguro { display:flex; justify-content:center; align-items:center; gap:6px; margin-top:12px; font-size:12px; color:var(--cinza); }
  .erro { display:none; margin-top:12px; color:#ff6b5e; font-size:14px; text-align:center; font-weight:700; }

  /* faixa rolando */
  .faixa { position:relative; z-index:2; background:var(--lima); color:#000; transform:rotate(-1.5deg); margin:10px -20px; overflow:hidden; padding:14px 0; }
  .faixa .trilho { display:flex; gap:44px; width:max-content; animation:corre 28s linear infinite; font-family:'Anton'; text-transform:uppercase; font-size:28px; white-space:nowrap; }
  .faixa .trilho span::after { content:'✦'; margin-left:44px; font-size:20px; }
  @keyframes corre { to { transform:translateX(-50%); } }

  /* blocos */
  .bloco { padding:90px 0; }
  .titulo { font-size:clamp(40px,6vw,78px); text-align:center; }
  .lead { text-align:center; color:#cfcfcf; font-size:19px; max-width:720px; margin:18px auto 0; }

  /* enem vs estadual */
  .vs { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:46px; }
  .vs > div { border-radius:24px; padding:30px 26px; border:1.5px solid var(--linha); background:var(--card); }
  .vs .ruim { border-color:#3a1d1d; }
  .vs .bom { border-color:rgba(198,255,0,.5); box-shadow:0 0 50px rgba(198,255,0,.08); }
  .vs h3 { font-family:'Anton'; text-transform:uppercase; font-size:30px; margin-bottom:16px; }
  .vs ul { list-style:none; display:grid; gap:12px; }
  .vs li { display:flex; gap:12px; font-size:17px; color:#dcdcdc; }
  .vs li svg { flex:none; margin-top:3px; }
  .vs .ruim svg { color:#ff6b5e; } .vs .bom svg { color:var(--lima); }

  /* vídeo */
  .video { max-width:900px; margin:46px auto 0; aspect-ratio:16/9; border-radius:26px; overflow:hidden; border:2.5px solid var(--lima); box-shadow:0 0 80px rgba(198,255,0,.22); position:relative; background:#111; cursor:pointer; }
  .video img { width:100%; height:100%; object-fit:cover; filter:brightness(.7); transition:filter .2s, transform .4s; }
  .video:hover img { filter:brightness(.85); transform:scale(1.03); }
  .video .play { position:absolute; inset:0; display:grid; place-items:center; }
  .video .play div { width:96px; height:96px; border-radius:50%; background:var(--lima); display:grid; place-items:center; box-shadow:0 0 0 14px rgba(198,255,0,.18), 0 0 60px rgba(198,255,0,.6); animation:pulsaPlay 2s infinite; }
  @keyframes pulsaPlay { 50% { box-shadow:0 0 0 24px rgba(198,255,0,.06), 0 0 60px rgba(198,255,0,.6); } }
  .video .rotulo { position:absolute; left:18px; bottom:18px; background:rgba(0,0,0,.78); border-radius:14px; padding:12px 14px; }
  .video .rotulo b { font-family:'Anton'; text-transform:uppercase; font-size:22px; } .video .rotulo span { display:block; color:var(--lima); font-size:12px; font-weight:800; letter-spacing:1px; text-transform:uppercase; }
  .video iframe { width:100%; height:100%; border:0; }

  /* depoimentos */
  .deps { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:46px; }
  .dep { display:flex; flex-direction:column; background:var(--card); backdrop-filter:blur(6px); border:1.5px solid var(--linha); border-radius:22px; padding:24px 22px; transition:border-color .2s, transform .2s; }
  .dep:hover { border-color:rgba(198,255,0,.5); transform:translateY(-4px); }
  .dep .aspas { font-family:'Anton'; font-size:64px; line-height:.6; color:var(--lima); height:28px; }
  .dep p { color:#e2e2e2; font-size:16px; margin-bottom:18px; }
  .dep p mark { background:none; color:var(--lima); font-weight:700; }
  .dep .quem { margin-top:auto!important; display:flex; align-items:center; gap:12px; margin-top:18px; padding-top:16px; border-top:1px solid var(--linha); }
  .dep .quem img { width:48px; height:48px; border-radius:50%; object-fit:cover; border:2px solid var(--lima); }
  .dep .quem b { display:block; font-size:16px; } .dep .quem span { font-size:12px; color:var(--lima); font-weight:800; letter-spacing:1px; text-transform:uppercase; }

  /* professores */
  .profs-grid { display:grid; grid-template-columns:1fr 1fr; align-items:end; margin-top:30px; }
  .prof { text-align:center; }
  .prof img { width:auto; height:min(560px,92vw); max-width:100%; object-fit:contain; display:block; margin:0 auto; filter:drop-shadow(3px 0 0 var(--lima)) drop-shadow(-3px 0 0 var(--lima)) drop-shadow(0 3px 0 var(--lima)) drop-shadow(0 -3px 0 var(--lima)); -webkit-mask-image:linear-gradient(180deg,#000 62%,transparent 94%); mask-image:linear-gradient(180deg,#000 62%,transparent 94%); }
  .prof .nome { display:inline-block; margin-top:-30px; position:relative; font-family:'Anton'; text-transform:uppercase; font-size:30px; background:var(--lima); color:#000; padding:4px 20px; border-radius:10px; }
  .stats { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:34px; }
  .stat { text-align:center; border:1.5px solid var(--linha); border-radius:22px; padding:26px 12px; background:var(--card); }
  .stat b { display:block; font-family:'Anton'; font-size:clamp(40px,5vw,62px); color:var(--lima); line-height:1; }
  .stat span { display:block; margin-top:8px; font-size:13px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; color:#cfcfcf; }

  /* aprovados */
  .faces { display:grid; grid-template-columns:repeat(6,1fr); gap:26px 12px; margin-top:46px; }
  .face { text-align:center; }
  .face img { width:100%; height:auto; max-width:130px; aspect-ratio:1; border-radius:50%; border:4px solid var(--lima); object-fit:cover; box-shadow:0 0 24px rgba(198,255,0,.3); display:block; margin:0 auto; transition:transform .25s; }
  .face:hover img { transform:scale(1.07) rotate(-2deg); }
  .face b { display:inline-block; margin-top:-14px; position:relative; background:var(--lima); color:#000; font-family:'Anton'; text-transform:uppercase; font-size:16px; padding:2px 10px; border-radius:7px; white-space:nowrap; }
  .face span { display:block; font-size:11px; font-weight:800; letter-spacing:1px; text-transform:uppercase; color:var(--lima); margin-top:4px; }

  /* final */
  .final { padding:80px 0 120px; text-align:center; }
  .final .gigante { font-size:clamp(54px,10vw,140px); }
  .final p { color:#cfcfcf; font-size:19px; margin-top:20px; }
  .final .btn { max-width:520px; margin:34px auto 0; }
  footer { position:relative; z-index:2; border-top:1px solid #151515; padding:26px 20px 100px; text-align:center; color:#666; font-size:13px; }

  /* barra fixa mobile */
  .barra { display:none; position:fixed; left:12px; right:12px; bottom:12px; z-index:20; transform:translateY(140%); transition:transform .3s; }
  .barra.on { transform:none; }
  .barra .btn { margin:0; font-size:20px; padding:16px; }

  @media (max-width:960px){
    .hero-grid { grid-template-columns:1fr; grid-template-areas:"txt" "foto" "form"; row-gap:6px; }
    .h-txt { text-align:center; padding-top:4px; }
    .hero .sub { margin-left:auto; margin-right:auto; font-size:17px; } .chips { justify-content:center; }
    .h-foto { min-height:0; margin-top:4px; }
    .h-foto .duo { max-width:480px; }
    .vs { grid-template-columns:1fr; }
    .deps { grid-template-columns:1fr; }
    .faces { grid-template-columns:repeat(3,1fr); }
    .barra { display:block; }
  }
  @media (max-width:520px){
    header img { height:44px; } .pill { font-size:10px; padding:7px 12px; }
    .hero h1 { font-size:38px; }
    .hero .sub { font-size:16px; }
    .notif { padding:6px 10px 6px 6px; gap:8px; } .notif img { width:34px; height:34px; } .notif b { font-size:12px; } .notif span { font-size:9px; }
    .n1 { left:0; top:auto; bottom:30%; } .n2 { right:0; top:auto; bottom:12%; } .n3 { display:none; }
    header .pill { display:none; }
    .form-box { padding:24px 18px; } .form-box h2 { font-size:28px; }
    .profs-grid { grid-template-columns:1fr 1fr; } .prof .nome { font-size:20px; }
    .stats { grid-template-columns:1fr; }
    .bloco { padding:70px 0; }
  }
  @media (prefers-reduced-motion:reduce){ *{ animation:none!important; transition:none!important; } .rv{ opacity:1; transform:none; } }
