/* V5: refinamentos visuais mobile solicitados em 17/09/2026. Mantém copy, tracking e lógica da V4. */
.v5-plans-hint{display:none}

/* Professor: bloco de autoridade com linguagem mais próxima da composição original KaiserPlay. */
.v5-teacher-section{position:relative;overflow:hidden;background:#07192b;color:#fff}
.v5-teacher-section::before{content:"";position:absolute;inset:-20% auto auto 52%;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(248,148,30,.12),rgba(248,148,30,0) 68%);pointer-events:none}
.v5-teacher-section .v4-teacher{position:relative;z-index:1}
.v5-teacher-section .eyebrow{color:#ffad43}
.v5-teacher-section .v4-teacher__copy h2{color:#fff}
.v5-teacher__accent{color:#ffad43}
.v5-teacher-section .v4-teacher__copy>p:not(.eyebrow){color:#b7c8d4}
.v5-teacher-section .v4-teacher__copy>p strong{color:#fff}
.v5-teacher-section .v4-teacher__stats span{border-color:rgba(255,255,255,.10);background:#0c243b}
.v5-teacher-section .v4-teacher__stats strong{color:#ffad43}
.v5-teacher-section .v4-teacher__stats small{color:#9eb2c1}
.v5-teacher__photo{isolation:isolate;background:linear-gradient(165deg,#112d46 0%,#07192b 72%);border:1px solid rgba(255,255,255,.10);box-shadow:0 28px 72px rgba(0,0,0,.28)}
.v5-teacher__photo::after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(to top,rgba(5,18,32,.85) 0%,rgba(5,18,32,0) 35%);pointer-events:none}
.v5-teacher__photo img{object-fit:contain;object-position:center bottom;transform:scale(1.04);transform-origin:center bottom;z-index:1}
.v5-teacher__line{position:absolute;left:0;top:0;bottom:0;width:4px;z-index:4;background:linear-gradient(#ffad43,#f8941e)}
.v5-teacher__photo-caption{position:absolute;left:24px;right:24px;bottom:20px;z-index:4;display:grid;gap:3px}
.v5-teacher__photo-caption strong{font:400 1.8rem/1 var(--font-display);letter-spacing:.02em;color:#fff}
.v5-teacher__photo-caption span{color:#ffbd69;font-size:.62rem;font-weight:750;letter-spacing:.04em}

@media(max-width:900px){
  /* Planos permanecem lado a lado em telas menores, como no layout original. */
  .v4-plans .container{width:100%;max-width:none}
  .v4-plans .section-heading,.v4-plan-note{width:min(calc(100% - 40px),var(--container));margin-left:auto;margin-right:auto}
  .v5-plans-hint{display:flex;align-items:center;gap:8px;width:min(calc(100% - 40px),var(--container));margin:18px auto 2px;color:var(--orange);font-size:.76rem;font-weight:800}
  .v5-plans-hint span{font-size:1.2rem;animation:v5Hint 1.8s ease-in-out infinite}
  .v4-plans__grid{display:flex;grid-template-columns:none;gap:14px;align-items:stretch;margin-top:26px;padding:16px max(20px,calc((100vw - var(--container))/2 + 20px)) 30px;overflow-x:auto;overflow-y:visible;scroll-snap-type:x mandatory;scroll-padding-inline:20px;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
  .v4-plans__grid::-webkit-scrollbar{height:5px}.v4-plans__grid::-webkit-scrollbar-thumb{background:rgba(248,148,30,.38);border-radius:20px}
  .v4-plan{flex:0 0 min(78vw,360px);min-width:min(78vw,360px);scroll-snap-align:start}
  .v4-plan--featured{transform:none}
}

@media(max-width:820px){
  /* Reintroduz o Kaiser na primeira dobra; o CSS-base escondia todo o visual no mobile. */
  .v4-hero{position:relative;overflow:hidden;padding:46px 0 62px}
  .v4-hero .hero__inner{position:relative;display:block}
  .v4-hero .hero__copy{position:relative;z-index:3}
  .v4-hero .hero__visual{display:block;position:absolute;z-index:1;right:-66px;top:52px;width:min(62vw,330px);pointer-events:none}
  .v4-hero .hero__poster{height:390px;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
  .v4-hero .hero__poster-grid,.v4-hero .hero__poster-orbit,.v4-hero .hero__poster-copy,.v4-hero .hero__caption{display:none}
  .v4-hero .hero__portrait{left:50%;bottom:0;height:100%;max-width:none;transform:translateX(-50%);filter:drop-shadow(0 22px 28px rgba(7,26,46,.18))}
  .v4-hero .brand-logo{position:relative;z-index:4}
  .v4-hero .eyebrow{position:relative;z-index:4;max-width:58%}
  .v4-hero .hero__title{position:relative;z-index:4;max-width:62%;font-size:clamp(2.5rem,10.7vw,3.5rem);line-height:.92}
  .v4-hero .hero__subtitle{position:relative;z-index:4;max-width:100%;margin-top:68px;padding-right:0}
  .v4-hero__checks,.v4-hero .cta,.v4-hero__trust{position:relative;z-index:4}

  .v5-teacher-section{padding-top:66px}
  .v5-teacher-section .v4-teacher{gap:34px}
  .v5-teacher__photo{max-width:460px;min-height:500px;margin-inline:auto;border-radius:26px}
  .v5-teacher-section .v4-teacher__copy{text-align:left}
}

@media(max-width:620px){
  .quiz-modal{place-items:center;padding:12px 8px}
  .quiz-dialog{max-height:calc(100dvh - 24px);border-radius:25px}

  .v4-hero{padding-top:38px}
  .v4-hero .brand-logo{width:122px;margin-bottom:20px}
  .v4-hero .eyebrow{max-width:56%;font-size:.65rem;margin-bottom:12px}
  .v4-hero .hero__title{max-width:53%;font-size:clamp(2.25rem,10.8vw,2.95rem)}
  .v4-hero .hero__visual{right:-100px;top:58px;width:66vw}
  .v4-hero .hero__poster{height:355px}
  .v4-hero .hero__subtitle{margin-top:108px;font-size:.9rem;line-height:1.68}
  .v4-hero__checks{margin-top:22px}

  .v5-teacher__photo{min-height:430px;max-width:100%;border-radius:22px}
  .v5-teacher__photo img{transform:scale(1.08)}
  .v5-teacher__photo-caption{left:20px;right:20px;bottom:18px}
  .v5-teacher-section .v4-teacher__copy h2{font-size:clamp(2.6rem,12vw,3.35rem)}
  .v5-teacher-section .v4-teacher__stats{grid-template-columns:1fr 1fr;gap:8px}
  .v5-teacher-section .v4-teacher__stats span:last-child{grid-column:1/-1}

  .v4-plans .section-heading,.v4-plan-note,.v5-plans-hint{width:calc(100% - 44px)}
  .v4-plans__grid{padding-left:22px;padding-right:22px;scroll-padding-left:22px}
  .v4-plan{flex-basis:78vw;min-width:78vw;padding:27px 20px}
}

@media(max-width:390px){
  .v4-hero .hero__visual{right:-92px;width:68vw;top:61px}
  .v4-hero .hero__title{max-width:53%;font-size:2.35rem}
  .v4-hero .hero__subtitle{margin-top:104px}
  .v4-plan{flex-basis:80vw;min-width:80vw}
}

@keyframes v5Hint{0%,100%{transform:translateX(0);opacity:.6}50%{transform:translateX(6px);opacity:1}}

@media(prefers-reduced-motion:reduce){.v5-plans-hint span{animation:none}}
