body.intro-page .intro-story{max-width:940px;margin:26px auto;padding:0 20px;color:var(--site-text)}
body.intro-page .intro-story-head{text-align:center;margin-bottom:20px}
body.intro-page .intro-story-head h2{font-size:clamp(1.4rem,3.8vw,2rem);line-height:1.4}
body.intro-page .intro-story-head p{color:var(--site-muted);font-size:.9rem;margin-top:8px}
body.intro-page .intro-story-stage{position:relative;min-height:420px;overflow:hidden;border-radius:20px;background:#132e4a;box-shadow:0 18px 48px rgba(16,39,67,.2)}
body.intro-page .intro-story-slide{display:none;position:absolute;inset:0}
body.intro-page .intro-story-slide.active{display:block;animation:intro-story-appear .45s ease}
body.intro-page .intro-story-slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
body.intro-page .intro-story-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,23,40,.91),rgba(7,23,40,.56) 65%,rgba(7,23,40,.12))}
body.intro-page .intro-story-slide>div{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;width:min(570px,76%);height:100%;padding:42px;color:white}
body.intro-page .intro-story-slide span{color:#acd5fa;font-size:.82rem;font-weight:700;letter-spacing:.05em}
body.intro-page .intro-story-slide h3{margin:13px 0;font-size:clamp(1.8rem,5vw,3rem);line-height:1.3;letter-spacing:-.035em}
body.intro-page .intro-story-slide p{font-size:clamp(.93rem,2vw,1.08rem);line-height:1.8;color:#f0f5fa}
body.intro-page .intro-story-start{position:absolute;z-index:3;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:rgba(7,23,40,.72);backdrop-filter:blur(4px);text-align:center;padding:20px}
body.intro-page .intro-story-start[hidden]{display:none}
body.intro-page .intro-story-start button{border:0;border-radius:999px;padding:16px 28px;background:#fff;color:#17375b;font:inherit;font-weight:800;font-size:1.05rem;cursor:pointer}
body.intro-page .intro-story-start p{color:#e0ecf9;font-size:.84rem}
body.intro-page .intro-story-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin-top:16px}
body.intro-page .intro-story-controls button{min-height:42px;padding:8px 14px;border:1px solid var(--site-border);border-radius:9px;background:var(--site-surface);color:var(--site-text);font:inherit;font-size:.85rem;font-weight:700;cursor:pointer}
body.intro-page .intro-story-controls button:hover,body.intro-page .intro-story-controls button:focus-visible{border-color:var(--site-accent)}
body.intro-page .intro-story-controls span{min-width:58px;text-align:center;font-size:.86rem;font-weight:700}
body.intro-page .intro-story-note{text-align:center;color:var(--site-muted);font-size:.78rem;margin-top:8px}
body.intro-page .intro-class-details-body{padding:4px 22px 22px}
body.intro-page .intro-story-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
body.intro-page .intro-story-cta a{display:inline-block;padding:11px 16px;border-radius:9px;background:#fff;color:#17375b;font-size:.84rem;font-weight:800;text-decoration:none}
body.intro-page .intro-story-cta a+a{background:transparent;color:#fff;border:1px solid #fff}
@keyframes intro-story-appear{from{opacity:.35;transform:translateX(14px)}to{opacity:1;transform:none}}
@media(max-width:650px){body.intro-page .intro-story{margin:20px auto;padding:0 16px}body.intro-page .intro-story-stage{min-height:500px}body.intro-page .intro-story-slide img{height:55%;object-position:center}body.intro-page .intro-story-slide::after{background:linear-gradient(0deg,#0b233a 8%,rgba(11,35,58,.95) 40%,rgba(11,35,58,.1) 83%)}body.intro-page .intro-story-slide>div{justify-content:flex-end;width:100%;padding:24px 22px 28px}body.intro-page .intro-story-slide h3{font-size:1.7rem}body.intro-page .intro-story-slide p{font-size:.88rem}body.intro-page .intro-story-controls{gap:6px}body.intro-page .intro-story-controls button{padding:8px;font-size:.76rem}body.intro-page .intro-story-controls span{min-width:43px;font-size:.75rem}}
@media(prefers-reduced-motion:reduce){body.intro-page .intro-story-slide.active{animation:none}}
