/* Shared education story, distinct stage reading mode, stable disclosure geometry. */
:root{--overview-accent:#0f569f;--overview-ink:#172a40;--overview-muted:#485d73;--stage-context-height:72px}
html{scrollbar-gutter:stable;overflow-anchor:none}
.education-goal{position:relative;isolation:isolate;overflow:hidden;background:#e7eef5;margin-top:0}
.overview-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.overview-veil{position:absolute;inset:0;z-index:-1;pointer-events:none}
.education-goal .overview-veil{background:linear-gradient(90deg,#f5f7fbf5,#f5f7fbdb 45%,#f5f7fb85),linear-gradient(0deg,#f5f7fb,transparent 38%)}
.goal-content{position:relative;padding-block:64px 44px}
.education-goal .eyebrow{color:var(--overview-accent)}
.education-goal h2{font-size:clamp(44px,4.8vw,78px);line-height:1.25;letter-spacing:.06em;margin-top:15px;color:var(--overview-ink);font-weight:700}
.education-goal h2>span{font-size:.55em;color:var(--overview-accent);padding-inline:.12em}
.goal-lead{font-size:clamp(18px,1.5vw,24px);line-height:1.7;margin-top:18px;max-width:660px;color:var(--overview-ink)}
.goal-pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:38px;padding-top:24px;border-top:1px solid #b5c9dd}
.goal-pillars article>span{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#e4edf8;color:var(--overview-accent);font-weight:700;font-size:22px}
.goal-pillars h3{font-size:19px;line-height:1.5;margin-top:12px}
.goal-pillars p{font-size:14px;line-height:1.85;color:var(--overview-muted);margin-top:7px}
.goal-note{font-size:12px;line-height:1.9;margin-top:25px;color:var(--overview-muted);max-width:850px}
.overview-credit{display:inline-block;font-size:11px;line-height:1.8;color:var(--overview-muted)}
.goal-content>.overview-credit{margin-top:8px}
.learning-common{padding-block:62px 30px}
.learning-heading{display:grid;grid-template-columns:1fr 1fr;gap:16px 48px;align-items:start}
.learning-heading>.eyebrow{grid-column:1/-1;color:var(--overview-accent)}
.learning-heading h2,.support-heading h2,.levels-heading h2{font-size:clamp(26px,2.6vw,42px);line-height:1.4;letter-spacing:-.035em;font-weight:650}
.learning-heading>p:last-child{font-size:16px;line-height:1.95;color:var(--overview-muted);padding-top:3px}
.learning-comparison{position:relative;isolation:isolate;overflow:hidden;border-radius:22px;margin-top:28px;background:#e6edf5}
.learning-comparison .overview-scene{object-position:center 52%}
.learning-comparison .overview-veil{background:linear-gradient(90deg,#f0f4fbe6,#f5f7fbd1 45%,#e7f0f9e8)}
.learning-columns{display:grid;grid-template-columns:1fr 1fr;gap:36px;padding:32px 36px 20px}
.learning-columns article{min-width:0}
.comparison-label{font-size:12px;line-height:1.9;color:var(--overview-muted)}
.learning-columns h3{font-size:24px;line-height:1.5;margin-top:6px}
.learning-project h3,.learning-project .comparison-label{color:var(--overview-accent)}
.learning-columns ul{list-style:none;margin:16px 0 0;padding:0}
.learning-columns li{display:grid;grid-template-columns:76px 1fr;gap:12px;font-size:14px;line-height:1.85;padding:10px 0;border-top:1px solid #b9ccdd;color:var(--overview-ink)}
.learning-columns li>span{color:var(--overview-muted)}
.learning-project{border-left:1px solid #adbed0;padding-left:36px}
.learning-notes{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:0 36px 22px;color:var(--overview-muted);font-size:11px;line-height:1.9}
.learning-notes .overview-credit{flex:none}
.learning-support{padding-block:24px 54px}
.support-heading>.eyebrow{color:var(--overview-accent);margin-bottom:10px}
.support-heading h2{font-size:clamp(24px,2.2vw,34px)}
.support-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 30px;margin-top:22px;align-items:start}
.support-item{border-top:1px solid #b9ccdd;border-bottom:1px solid #d8e2ed;border-radius:0;background:transparent}
.support-item summary{display:flex;gap:18px;align-items:center;padding:20px 0;list-style:none;cursor:pointer}
.support-item summary::-webkit-details-marker{display:none}
.support-item summary::marker{content:''}
.support-number{font:12px/1.5 ui-monospace,Consolas,monospace;color:var(--overview-accent);align-self:flex-start;padding-top:4px}
.support-item summary>span:nth-child(2){flex:1;min-width:0}
.support-item strong{display:block;font-size:19px;font-weight:600;line-height:1.6}
.support-item small{display:block;font-size:13px;color:var(--overview-muted);line-height:1.9;margin-top:4px}
.support-item summary>i{font-style:normal;font-size:24px;line-height:1;width:28px;flex:none;text-align:center;color:var(--overview-accent);transition:transform .25s}
.support-item[open] summary>i{transform:rotate(45deg)}
.support-copy{padding:0 36px 22px 35px;font-size:14px;line-height:1.95;color:var(--overview-muted)}
.support-item summary:focus-visible{outline:2px solid var(--overview-accent);outline-offset:4px;border-radius:6px}
.levels-heading{padding-block:20px 32px;border-top:1px solid #cad8e7}
.levels-heading>.eyebrow{color:var(--overview-accent);margin-bottom:12px}
.levels-heading>p:last-child{color:var(--overview-muted);font-size:14px;line-height:1.9;margin-top:14px}
.stage-context{position:sticky;top:var(--header);z-index:15;min-height:var(--stage-context-height);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 6.944444%;background:#eef5fdf5;backdrop-filter:blur(16px);border-bottom:1px solid #bed1e6;box-shadow:0 8px 20px #153d6610}
.stage-context-title{border-left:3px solid var(--overview-accent);padding-left:14px;min-width:0}
.stage-context-title>span{display:block;font:10px/1.6 ui-monospace,Consolas,monospace;letter-spacing:.08em;color:var(--overview-accent)}
.stage-context-title strong{display:block;font-size:16px;font-weight:600;line-height:1.65}
.stage-context-actions{display:flex;gap:16px;align-items:center;flex:none;font-size:12px;color:var(--overview-accent)}
.stage-context-actions :is(a,button){display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:6px 0}
.stage-context-actions button{border:0;background:none;font-size:12px;color:inherit}
.level-detail{animation:none!important;border-bottom:2px solid #9ab9db;background:linear-gradient(#eaf2fc 0,#f5f7fb 460px)}
.level-detail>.hero{border-bottom:1px solid #ccdcec}
.stage-context+.hero .hero-title{font-size:clamp(30px,3.4vw,52px)}
.stage-context+.hero .hero-description{font-size:clamp(14px,1.05vw,18px)}
.level-detail>.hero{position:relative}
.level-card[open]>.level-banner{box-shadow:inset 0 -4px 0 #80b4e5}
.level-banner-copy::after{content:'查看阶段详情  +';display:inline-block;font-size:12px;line-height:1.8;margin-top:15px;color:inherit;opacity:.94}
.level-card[open]>.level-banner .level-banner-copy::after{content:'正在阅读 · 阶段详情  −';font-weight:600}
.level-banner-photo img{transition:transform .45s ease}
.stage-entering>.level-detail>.stage-context,.stage-entering>.level-detail>.hero{animation:stage-enter .3s ease-out}
@keyframes stage-enter{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(min-width:981px){
 .curriculum-intro.section-shell{height:auto;aspect-ratio:2.88/1}
 .level-detail .scene-sticky{top:calc(var(--header) + var(--stage-context-height));height:calc(100svh - var(--header) - var(--stage-context-height))}
 .level-banner,.level-card[open]>.level-banner,.level-banner:focus-visible,.level-banner:hover{--photo-height:auto;height:auto;aspect-ratio:6/1;transition:none}
 .level-banner-copy{padding-block:1.1vw}
 .level-highlights{margin-top:.8vw}
 .level-banner:hover .level-banner-photo img{transform:scale(1.025)}
 .level-banner-copy::after{margin-top:.8vw;font-size:max(11px,.833333vw)}
 .level-detail>.hero{padding-block:48px 56px}
}
@media(max-width:1150px) and (min-width:981px){.site-header nav,.site-header nav>span{gap:16px}.header-tools{gap:10px}.site-header{padding-inline:24px}.brand{font-size:14px}.header-tools button{font-size:11px}}
@media(max-width:980px){
 :root{--stage-context-height:84px}
 .goal-content{padding-block:38px 30px}
 .education-goal h2{font-size:clamp(38px,8vw,60px);letter-spacing:.025em}
 .education-goal .overview-scene{object-position:43% center}
 .education-goal .overview-veil{background:linear-gradient(90deg,#f5f7fbeb,#f5f7fbd9),linear-gradient(0deg,#f5f7fb,transparent)}
 .goal-lead{font-size:17px;margin-top:15px}
 .goal-pillars{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px;margin-top:26px;padding-top:20px}
 .goal-pillars h3{font-size:17px;margin-top:10px}.goal-pillars p{font-size:13px}
 .goal-note{font-size:12px;margin-top:22px}.overview-credit{font-size:11px}
 .learning-common{padding-block:34px 18px}
 .learning-heading{display:block}.learning-heading h2{font-size:clamp(26px,5.4vw,34px);margin-top:12px}.learning-heading>p:last-child{font-size:14px;margin-top:16px}
 .learning-comparison{border-radius:16px;margin-top:22px}.learning-columns{padding:24px 20px 12px;grid-template-columns:1fr;gap:24px}
 .learning-project{border-left:0;border-top:1px solid #9db5cd;padding:22px 0 0}
 .learning-columns h3{font-size:23px}.learning-columns li{font-size:13px;grid-template-columns:64px 1fr;gap:10px}
 .learning-notes{display:block;padding:0 20px 20px;font-size:11px}.learning-notes>.overview-credit{margin-top:6px}
 .learning-support{padding-block:20px 32px}.support-heading h2{font-size:25px}.support-heading h2>.accent{display:block}
 .support-grid{grid-template-columns:1fr;gap:10px;margin-top:20px}.support-item summary{gap:12px;padding-block:18px}.support-item strong{font-size:18px}.support-item small{font-size:12px}.support-copy{padding:0 12px 20px 28px;font-size:13px}
 .levels-heading{padding-block:24px 12px}.levels-heading h2{font-size:26px}.levels-heading h2>.accent{display:block}.levels-heading>p:last-child{font-size:13px}
 .level-card,.level-card[open]{margin-inline:0;border-radius:18px;overflow:visible;background:#fff}
 .level-banner{border-radius:18px;overflow:hidden}.level-card[open]>.level-banner{border-radius:18px 18px 0 0}
 .level-detail{border-radius:0 0 18px 18px}
 .stage-context{padding:12px 18px;gap:12px;min-height:84px}
 .stage-context-title{padding-left:10px}.stage-context-title>span{font-size:9px;letter-spacing:0}.stage-context-title strong{font-size:14px}
 .stage-context-actions{gap:10px;font-size:11px}.stage-context-actions button{font-size:11px}.stage-context-actions :is(a,button){gap:4px;min-height:44px}
 .level-banner-copy::after{font-size:12px;margin-top:12px;color:var(--overview-accent)}
 .level-detail>.hero{padding:32px 22px 40px}.stage-context+.hero .hero-title{font-size:clamp(27px,7vw,36px)}
 .level-detail .section-shell{width:calc(100% - 36px)}
 .stage-context+.hero .hero-description{font-size:14px}
}
@media(max-width:359px){.stage-context{padding-inline:12px;gap:8px}.stage-context-actions{gap:8px}.stage-context-title strong{font-size:13px}.goal-pillars h3{font-size:16px}}
@media(prefers-reduced-motion:reduce){.stage-entering>.level-detail>.stage-context,.stage-entering>.level-detail>.hero{animation:none}.level-banner-photo img,.support-item summary>i{transition:none}}
.reduce-motion .stage-entering>.level-detail>.stage-context,.reduce-motion .stage-entering>.level-detail>.hero{animation:none}
