/* Full-width ambient film, centered title, readable mask and static fallback. */
.curriculum-intro.section-shell{
 position:relative;width:100%;min-height:500px;display:flex;flex-direction:column;
 align-items:center;justify-content:center;text-align:center;
 padding:calc(var(--header) + 68px) 56px 72px;
 --scene-image:url('assets/fast-v1-curriculum-intro-video-poster-v1.webp');--scene-position:center 52%;--scene-dim:.68;
}
.intro-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;pointer-events:none;mask-image:linear-gradient(180deg,transparent,#000 18%,#000 80%,transparent)}
.intro-media-tools{position:absolute;bottom:22px;right:32px;display:flex;align-items:center;gap:16px;color:#d6e0ef;font-size:11px}
.intro-media-tools button{border:1px solid #ffffff38;border-radius:18px;padding:7px 12px;background:#09111dd9;color:#e4ecf8;font:inherit;cursor:pointer}
.intro-media-tools button:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}
.reduce-motion .intro-video{visibility:hidden}
@media(max-width:700px){.intro-media-tools{right:20px;bottom:16px;gap:12px;font-size:10px}}
.curriculum-intro h1{max-width:1000px;font-size:clamp(38px,4.1vw,60px);font-weight:700;letter-spacing:-.025em;line-height:1.28;margin-top:20px}
.curriculum-intro h1>.accent{display:block}
.curriculum-intro>p:not(.eyebrow){max-width:760px;font-size:15px;line-height:1.9;margin-top:20px;color:#cbd7e8}
@media(max-width:980px){.curriculum-intro.section-shell{min-height:460px;padding-inline:32px}}
@media(max-width:700px){
 .curriculum-intro.section-shell{min-height:420px;padding:calc(var(--header) + 40px) 20px 52px;--scene-dim:.76;--scene-position:52% center}
 .curriculum-intro h1{font-size:36px;max-width:100%;margin-top:18px}
 .curriculum-intro>p:not(.eyebrow){font-size:13px;line-height:1.9;margin-top:18px}
}
@media(max-width:360px){.curriculum-intro h1{font-size:32px}}
/* Larger, softer masthead without changing the fixed-header geometry. */
body{font-family:"HarmonyOS Sans SC","MiSans","PingFang SC","Microsoft YaHei UI","Microsoft YaHei",system-ui,sans-serif}
.site-header{gap:22px}
.brand{gap:13px;font-size:19px;font-weight:650;letter-spacing:.035em;line-height:1.35}
.brand img{display:block;width:48px;height:48px;border-radius:13px;object-fit:contain;background:#f5f8fc;box-shadow:0 0 0 1px #ffffff20}
.brand-caption{font-size:11px;letter-spacing:.16em;margin-top:4px;font-weight:500}
.site-header nav{font-size:14px;gap:20px}
.site-header nav>span{gap:16px}
.site-header nav a{padding:9px 11px;border-radius:18px;transition:background .2s,color .2s}
.site-header nav a:hover,.site-header nav a:focus-visible{background:#17314c;color:#f3f6fc}
.header-tools{gap:12px}
.header-tools button{padding:8px 10px;border-radius:16px;background:#152235;color:#cbd7e8}
.header-tools button:hover{background:#213851}
@media(max-width:1200px){.site-header{padding-inline:28px}.brand{font-size:17px;gap:10px}.brand img{width:42px;height:42px}.site-header nav{gap:8px}.site-header nav>span{gap:6px}.site-header nav a{padding-inline:8px}.header-tools{gap:8px}}
@media(max-width:980px){.site-header{padding-inline:24px}.site-header nav a{padding-inline:6px}.site-header nav{font-size:13px}.preview-mark{display:none}.header-tools button{padding-inline:7px}}
@media(max-width:700px){.site-header{padding-inline:18px;gap:10px}.brand{font-size:15px;gap:10px;letter-spacing:.02em}.brand img{width:36px;height:36px;border-radius:10px}.brand-caption{font-size:10px;letter-spacing:.12em;margin-top:3px}.header-tools{gap:6px}.header-tools button{font-size:12px;padding-inline:8px}}
@media(max-width:360px){.site-header{padding-inline:14px}.brand{font-size:14px;gap:8px}.brand img{width:34px;height:34px}.header-tools button{font-size:11px;padding-inline:6px}}
