/* textura: grão fino fixo por cima de tudo */
.grao{position:fixed;inset:0;pointer-events:none;z-index:40;opacity:.07;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* abertura: mostrador gigante marcando o minuto */
.abre{position:relative;overflow:hidden;isolation:isolate;padding-bottom:8px}
.abre::before{content:"";position:absolute;left:50%;top:-420px;width:1500px;height:1200px;transform:translateX(-50%);z-index:-2;background:radial-gradient(closest-side,rgba(225,40,61,.3),rgba(225,40,61,.07) 58%,rgba(225,40,61,0) 100%)}
.mostrador{position:absolute;left:50%;top:-10px;width:1100px;height:1100px;transform:translateX(-50%);z-index:-1;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,#000 40%,transparent 62%);mask-image:linear-gradient(180deg,#000 40%,transparent 62%)}
.mostrador .m{stroke:rgba(255,190,196,.14);stroke-width:1.6}
.mostrador .M{stroke:rgba(255,190,196,.36);stroke-width:2.4}
.mostrador .anel{fill:none;stroke:rgba(255,190,196,.07);stroke-width:1}
.mostrador .arco{fill:none;stroke:url(#arco-g);stroke-width:4;stroke-linecap:round;stroke-dasharray:0 3200;animation:arco 2.4s var(--ease) .35s forwards}
.mostrador .ponteiro{transform-origin:550px 550px;transform:rotate(0deg);animation:ponteiro 2.4s var(--ease) .35s forwards}
.mostrador .ponteiro line{stroke:rgba(255,131,144,.5);stroke-width:2}
.mostrador .ponteiro circle{fill:var(--rubi);filter:drop-shadow(0 0 12px rgba(225,40,61,.9))}
@keyframes ponteiro{to{transform:rotate(37.8deg)}}
@keyframes arco{to{stroke-dasharray:343 3200}}
.relogio{display:inline-flex;align-items:center;gap:10px;margin-bottom:26px;padding:6px 14px 6px 10px;border:1px solid rgba(255,131,144,.3);border-radius:999px;background:rgba(225,40,61,.1);font-size:14px;font-weight:600;color:var(--rubi-claro)}
.relogio svg{flex:none;color:var(--rubi-claro)}
.relogio b{color:var(--texto);font-weight:600}
.tres{margin-top:68px}

/* faixa do acervo: vídeos reais no padrão do YouTube */
.acervo{margin-top:104px;padding:96px 0 104px;position:relative;isolation:isolate;border-top:1px solid var(--linha);border-bottom:1px solid var(--linha);background:linear-gradient(180deg,rgba(225,40,61,0),rgba(225,40,61,.06) 50%,rgba(225,40,61,0)),var(--fundo)}
.acervo-cab{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px;align-items:end}
.acervo h2{font-weight:600;font-size:clamp(34px,4.1vw,60px);line-height:1.02;letter-spacing:.01em;text-transform:uppercase;text-wrap:balance}
.acervo h2 em{font-style:normal;color:var(--rubi-claro)}
.acervo-cab p{margin-top:18px;color:var(--suave);font-size:17px;max-width:46ch;text-wrap:pretty}
.contagem{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.contagem>div{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--sup-2),var(--sup));border:1px solid var(--linha);border-radius:16px;padding:18px}
.contagem>div::after{content:"";position:absolute;right:-30px;top:-30px;width:110px;height:110px;border-radius:50%;background:radial-gradient(closest-side,rgba(225,40,61,.22),transparent)}
.contagem img{width:44px;height:44px;border-radius:50%;object-fit:cover;outline:2px solid rgba(225,40,61,.55);outline-offset:2px}
.contagem b{display:block;margin-top:16px;font-size:36px;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums;line-height:1}
.contagem span{display:block;margin-top:8px;font-size:13.5px;line-height:1.35;color:var(--suave)}
.esteiras{margin-top:64px;display:grid;gap:22px;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%)}
.esteira{overflow:hidden}
.trilha{display:flex;gap:18px;width:max-content;animation:corre 95s linear infinite}
.esteira.volta .trilha{animation-direction:reverse;animation-duration:110s}
.esteiras:hover .trilha{animation-play-state:paused}
@keyframes corre{to{transform:translateX(-50%)}}
.yt{width:300px;flex:none;display:block}
.yt-capa{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;outline:1px solid rgba(255,255,255,.08);outline-offset:-1px;background:var(--sup)}
.yt-capa img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.yt:hover .yt-capa img{transform:scale(1.04)}
.yt-capa .dur{position:absolute;right:8px;bottom:8px;background:rgba(0,0,0,.82);color:#fff;font-size:12.5px;font-weight:600;border-radius:5px;padding:2px 6px;font-variant-numeric:tabular-nums}
.yt-capa .ao-vivo{position:absolute;left:8px;bottom:8px;background:var(--rubi);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:5px;padding:2px 6px}
.yt-info{display:flex;gap:10px;margin-top:12px}
.yt-info img{width:34px;height:34px;border-radius:50%;object-fit:cover;flex:none}
.yt-info b{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:14.5px;font-weight:600;line-height:1.35}
.yt-info span{display:block;margin-top:4px;font-size:13px;color:var(--suave)}

/* quem responde: um professor por vez, cada um com a própria foto */
.destaques{padding:136px 0 0;position:relative;isolation:isolate;overflow-x:clip}
.destaques::before{content:"";position:absolute;left:-10%;top:180px;width:760px;height:760px;z-index:-1;background:radial-gradient(closest-side,rgba(225,40,61,.16),transparent)}
.destaques-cab{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap}
.destaques-cab h2{font-weight:600;font-size:clamp(28px,2.8vw,40px);line-height:1.1;letter-spacing:.02em;text-transform:uppercase}
.seletor{display:flex;gap:8px;flex-wrap:wrap}
.seletor button{position:relative;overflow:hidden;display:flex;align-items:center;gap:10px;border:1px solid var(--linha-2);background:transparent;border-radius:999px;padding:5px 18px 5px 5px;font:600 14.5px var(--f);color:var(--suave);cursor:pointer;transition:color .3s var(--ease),border-color .3s var(--ease),background .3s var(--ease)}
.seletor button img{width:34px;height:34px;border-radius:50%;object-fit:cover;filter:grayscale(.6);transition:filter .3s var(--ease)}
.seletor button[aria-selected="true"]{color:var(--texto);border-color:rgba(225,40,61,.7);background:var(--rubi-tinta)}
.seletor button[aria-selected="true"] img{filter:none}
.seletor button i{position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--rubi);transform:scaleX(0);transform-origin:left}
.seletor button[aria-selected="true"] i{animation:enche 8s linear forwards}
@keyframes enche{to{transform:scaleX(1)}}
.palco-prof{margin-top:44px;display:grid}
/* troca de professor: a foto nova corre por cima da antiga (cortina da direita para a esquerda) e cada
   linha que muda rola dentro da própria máscara, como um contador; o que é igual nos três fica parado */
.palco-prof{--cortina:cubic-bezier(.65,0,.35,1);--rola:cubic-bezier(.65,0,.35,1)}
.slide{grid-area:1/1;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:start;align-content:start;visibility:hidden;z-index:0}
.slide.ativo{visibility:visible;z-index:2}
.slide.saindo{visibility:visible;z-index:1}
.slide.reset,.slide.reset *{transition:none!important}
.slide figure{position:relative;margin:0;border-radius:22px;overflow:hidden;aspect-ratio:4/5;border:1px solid var(--linha);clip-path:inset(0 0 0 100% round 22px);transition:clip-path .9s var(--cortina)}
.slide.ativo figure,.slide.saindo figure{clip-path:inset(0 0 0 0 round 22px)}
.slide.saindo figure{transition:none}
.slide figure img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.4s cubic-bezier(.16,1,.3,1)}
.slide.ativo figure img{transform:none}
.slide.saindo figure img{transform:scale(1.03);filter:brightness(.5);transition:transform .9s var(--cortina),filter .9s var(--cortina)}
.slide figure::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,7,10,.6) 0%,rgba(9,7,10,0) 30%),linear-gradient(140deg,rgba(225,40,61,.2) 0%,rgba(225,40,61,0) 45%)}
.slide figcaption{position:absolute;left:20px;right:20px;bottom:18px;z-index:1;display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:600;color:rgba(255,255,255,.88)}
.slide figcaption img{width:28px;height:28px;border-radius:50%;object-fit:cover}
.slide-txt{padding-top:8px}
.slide-txt .m{display:block;overflow:hidden}
.slide h3 .m{line-height:1.06}
.slide-txt .m>.mi{display:block;transform:translateY(100%);transition:transform .7s var(--rola);transition-delay:calc(var(--i) * 35ms)}
.slide.ativo .m>.mi{transform:none;transition-delay:calc(130ms + var(--i) * 35ms)}
.slide.saindo .m>.mi{transform:translateY(-100%)}
.slide-txt .m-btn{display:inline-block;margin-top:30px;padding:8px 44px 44px 8px;margin-left:-8px;margin-bottom:-44px}
.m-btn>.mi{display:inline-block}
.slide-txt .m-btn>.mi{transform:translateY(calc(100% + 52px))}
.slide.ativo .m-btn>.mi{transform:none}
.slide.saindo .m-btn>.mi{transform:translateY(calc(-100% - 12px))}
.slide h3{font-weight:600;font-size:clamp(40px,4.6vw,68px);line-height:.98;letter-spacing:.005em;text-transform:uppercase}
.slide .area{margin-top:14px;font-size:19px;color:var(--suave)}
.numeros{margin-top:32px;display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}
.numeros div{padding:20px 0}
.numeros div+div{padding-left:24px;border-left:1px solid var(--linha)}
.numeros b{display:block;font-size:40px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums}
.numeros div>span{display:block;margin-top:8px;font-size:14px;color:var(--suave)}
.ja-respondeu{margin-top:28px}
.ja-respondeu h4{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--rubi-claro)}
.ja-respondeu ul{list-style:none;margin-top:12px;display:grid;gap:10px}
.ja-respondeu li{margin:0;padding:0}
.slide-txt .ja-respondeu li.m>.mi{display:flex;align-items:center;gap:14px;min-height:59px}
.ja-respondeu li img{width:104px;aspect-ratio:16/9;object-fit:cover;border-radius:8px;flex:none;outline:1px solid rgba(255,255,255,.08);outline-offset:-1px}
.ja-respondeu li b{flex:1;min-width:0;font-size:15.5px;font-weight:500;line-height:1.35}
.ja-respondeu li .mi>span{flex:none;color:var(--fraco);font-size:14px;font-variant-numeric:tabular-nums}

/* perguntas: capa do vídeo com a barra parada no minuto da resposta */
.bento{margin-top:48px;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.cartela{display:flex;flex-direction:column;padding:0;text-align:left;border:1px solid var(--linha);border-radius:18px;overflow:hidden;cursor:pointer;background:var(--sup);font:inherit;color:inherit;transition:border-color .3s var(--ease),transform .4s var(--ease),box-shadow .4s var(--ease)}
.cartela:hover{border-color:rgba(255,131,144,.5);transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.45)}
.cartela:active{transform:scale(.98)}
.c-capa{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#000}
.c-capa img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease)}
.cartela:hover .c-capa img{transform:scale(1.05)}
.c-capa .play{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(9,7,10,.6);border:1px solid rgba(255,255,255,.2);transition:background .3s var(--ease)}
.cartela:hover .play{background:var(--rubi)}
.c-min{position:absolute;left:12px;bottom:14px;background:rgba(0,0,0,.82);color:#fff;font-size:12.5px;font-weight:700;border-radius:6px;padding:3px 8px;font-variant-numeric:tabular-nums}
.barra{position:absolute;left:0;right:0;bottom:0;height:4px;background:rgba(255,255,255,.28)}
.barra i{display:block;height:100%;background:var(--rubi);box-shadow:0 0 10px rgba(225,40,61,.7)}
.c-txt{flex:1;display:flex;flex-direction:column;justify-content:space-between;gap:18px;padding:20px 20px 20px}
.cartela p{font-size:18px;font-weight:600;line-height:1.32;text-wrap:balance}
.cartela .rod{display:flex;align-items:center;gap:10px}
.cartela .rod img{width:28px;height:28px;border-radius:50%;object-fit:cover;flex:none}
.cartela .rod span{min-width:0;font-size:13.5px;color:var(--suave);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* fechamento: o minuto gigante */
.fecho-tempo{position:relative;margin-top:136px;padding:120px 0 128px;overflow:hidden;isolation:isolate;text-align:center;border-top:1px solid var(--linha)}
.fecho-tempo::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(70% 85% at 50% 88%,rgba(225,40,61,.34) 0%,rgba(225,40,61,.12) 45%,rgba(225,40,61,0) 78%);-webkit-mask-image:linear-gradient(180deg,#000 55%,transparent 100%);mask-image:linear-gradient(180deg,#000 55%,transparent 100%)}
.tempo-gigante{position:absolute;left:50%;top:50%;transform:translate(-50%,-54%);z-index:-1;font-size:clamp(170px,27vw,400px);font-weight:600;line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:rgba(225,40,61,.07);-webkit-text-stroke:1.5px rgba(255,131,144,.26);white-space:nowrap;user-select:none}
.fecho-tempo .avatares{margin-bottom:24px}
.fecho-tempo .avatares img{width:56px;height:56px;object-fit:cover;outline:2px solid rgba(225,40,61,.6);outline-offset:3px}
.fecho-tempo h2{font-weight:600;font-size:clamp(34px,4vw,56px);line-height:1.05;letter-spacing:.02em;text-transform:uppercase}
.fecho-tempo p.sub2{margin:16px auto 0;max-width:48ch;color:var(--suave);font-size:17px}
.fecho-tempo .busca{background:rgba(20,17,22,.85);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.rodape{margin-top:0}

@media (max-width:980px){
  .mostrador{width:520px;height:520px;top:0}
  .relogio{margin:36px 0 20px;font-size:13px}
  .acervo{margin-top:88px;padding:64px 0 72px}
  .acervo-cab{grid-template-columns:1fr;gap:28px}
  .contagem{gap:8px}.contagem>div{padding:14px 12px}.contagem b{font-size:26px}.contagem img{width:36px;height:36px}
  .esteiras{margin-top:44px}
  .yt{width:240px}
  .destaques{padding-top:88px}
  .slide{grid-template-columns:1fr;gap:28px;align-items:start}
  .slide figure{aspect-ratio:4/4.3}
  .numeros b{font-size:28px}.numeros div+div{padding-left:14px}
  .ja-respondeu li img{width:88px}.ja-respondeu li b{font-size:14.5px}
  .slide-txt .m-btn{display:block;margin-right:-44px}.slide-txt .m-btn>.mi{display:block;text-align:center}
  .bento{grid-template-columns:1fr}
  .fecho-tempo{margin-top:88px;padding:88px 0 96px}
  .tempo-gigante{font-size:27vw}
}
@media (prefers-reduced-motion:reduce){.trilha{animation:none}.mostrador .ponteiro{transform:rotate(37.8deg)}.mostrador .arco{stroke-dasharray:343 3200}}
