:root {
  /* Guochao Education — 青衿书院（雾蓝信任 + 苔绿成长 + 朱红 CTA） */
  --primary: #1e5a6c;
  --primary-deep: #143f4c;
  --primary-soft: #e3eef2;
  --accent: #3a7564;
  --accent-soft: #e4f1ec;
  --ink: #1a2830;
  --ink-soft: #5a6b74;
  --paper: #eef3f4;
  --paper-2: #e0e9eb;
  --white: #ffffff;
  --line: #cfd8db;
  --red: #c44732;
  --red-deep: #9a3424;
  --gold: #a67c3d;
  --blue: #1e5a6c;
  --jade: #3a7564;
  --amber: #a67c3d;
  --espresso: #132028;
  --mist: #f5f9fa;
  --sky: #8eb9cc;
  --mint: #9fc4b6;
  --header-height: 76px;
  --page: min(1180px, calc(100% - 48px));
}

* { box-sizing: border-box; }
html { scroll-behavior: auto; scroll-padding-top: var(--header-height); }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: "Noto Sans SC", "Source Han Sans SC", "Microsoft YaHei", sans-serif; letter-spacing: 0; }
body.menu-open { overflow: hidden; }
img, video { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
a { color: inherit; text-decoration: none; }
p { line-height: 1.8; }
.skip-link { position: fixed; left: 12px; top: -60px; z-index: 100; padding: 10px 14px; background: #fff; color: #111; }
.skip-link:focus { top: 12px; }

.site-header { position: fixed; inset: 0 0 auto; z-index: 50; height: var(--header-height); color: var(--ink); background: rgba(245,249,250,.94); border-bottom: 1px solid rgba(26,40,48,.08); transition: background .35s ease, color .35s ease, box-shadow .35s ease; }
.site-header.is-scrolled, .site-header.menu-visible { color: var(--ink); background: rgba(255,255,255,.98); box-shadow: 0 10px 30px rgba(30,42,48,.08); }
.nav-shell { width: var(--page); height: 100%; margin: auto; display: flex; align-items: center; gap: 36px; }
.brand { display: inline-flex; align-items: center; flex: 0 0 auto; min-width: 182px; }
.brand img { width: auto; height: 52px; object-fit: contain; display: block; }
.brand-divider { width: 1px; height: 28px; margin: 0 12px 0 9px; background: currentColor; opacity: .25; }
.brand-name { font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif; font-weight: 800; font-size: 19px; white-space: nowrap; }
.site-nav { display: flex; align-items: center; justify-content: flex-end; flex: 1; gap: clamp(15px, 1.6vw, 28px); }
.site-nav > a,
.site-nav .nav-drop__btn { position: relative; padding: 27px 0 25px; font-size: 14px; font-weight: 600; white-space: nowrap; color: inherit; background: none; border: 0; font: inherit; cursor: pointer; text-decoration: none; }
.site-nav > a::after,
.site-nav .nav-drop__btn::after { content: ""; position: absolute; left: 50%; right: 50%; bottom: 18px; height: 2px; background: var(--primary); transition: left .25s ease, right .25s ease; }
.site-nav > a:hover::after,
.site-nav > a.is-active::after,
.site-nav .nav-drop__btn:hover::after,
.site-nav .nav-drop__btn.is-active::after,
.site-nav .nav-drop.is-current .nav-drop__btn::after { left: 0; right: 0; }
.site-nav .nav-cta { padding: 11px 17px; color: #fff; background: var(--red); border-radius: 4px; }
.site-nav .nav-cta::after { display: none; }
.site-nav .nav-cta:hover { background: var(--red-deep); }
.site-nav .nav-drop { position: relative; display: flex; align-items: center; }
.site-nav .nav-drop__btn { display: inline-flex; align-items: center; gap: 6px; }
.site-nav .nav-drop__caret {
  width: 0; height: 0;
  border-left: 4px solid transparent; border-right: 4px solid transparent;
  border-top: 5px solid currentColor; opacity: .65;
  transition: transform .2s ease;
}
.site-nav .nav-drop.is-open .nav-drop__caret { transform: rotate(180deg); }
.site-nav .nav-drop__menu {
  position: absolute; top: calc(100% + 6px); left: 50%; transform: translateX(-50%) translateY(6px);
  min-width: 188px; padding: 8px;
  border: 1px solid rgba(40, 36, 32, .1); border-radius: 10px;
  background: rgba(255, 255, 255, .98);
  box-shadow: 0 16px 36px rgba(40, 30, 24, .14);
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: opacity .18s ease, transform .18s ease, visibility .18s;
  z-index: 40;
}
.site-nav .nav-drop__menu::before {
  content: ""; position: absolute; left: 0; right: 0; top: -14px; height: 14px;
}
.site-nav .nav-drop.is-open .nav-drop__menu,
.site-nav .nav-drop:hover .nav-drop__menu,
.site-nav .nav-drop:focus-within .nav-drop__menu {
  opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(-50%) translateY(0);
}
.site-nav .nav-drop__menu a {
  display: block; padding: 11px 14px; border-radius: 8px;
  color: var(--ink); font-size: 14px; font-weight: 600; text-decoration: none;
}
.site-nav .nav-drop__menu a:hover,
.site-nav .nav-drop__menu a.is-active {
  background: rgba(196, 71, 50, .08); color: var(--red-deep, #b23a2a);
}
.menu-button { display: none; width: 44px; height: 44px; margin-left: auto; border: 0; background: transparent; padding: 10px; cursor: pointer; }
.menu-button span { display: block; width: 24px; height: 2px; margin: 5px auto; background: currentColor; transition: transform .25s ease, opacity .25s ease; }

.hero { position: relative; min-height: 100svh; color: #fff; display: grid; grid-template-rows: minmax(0, 61.8fr) minmax(0, 38.2fr); overflow: hidden; background: #1b2226; }
.hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 58%; animation: heroScale 9s ease-out both; }
.hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(9,15,18,.86) 0%, rgba(9,15,18,.63) 43%, rgba(9,15,18,.14) 76%), linear-gradient(0deg, rgba(8,13,16,.55), transparent 42%); }
.hero-content { position: relative; z-index: 1; grid-row: 1; align-self: center; width: var(--page); margin: auto; padding-top: var(--header-height); }
.hero-kicker, .eyebrow { margin: 0 0 17px; color: var(--primary); font-size: 13px; font-weight: 800; letter-spacing: 0; }
.hero-kicker { color: #fff; opacity: .86; }
.hero h1 { max-width: 760px; margin: 0; font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif; font-size: clamp(48px, 6.4vw, 88px); line-height: 1.12; letter-spacing: 0; }
.hero-summary { max-width: 610px; margin: 25px 0 31px; color: rgba(255,255,255,.84); font-size: 18px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.button { min-height: 48px; padding: 13px 23px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid transparent; border-radius: 4px; font-weight: 700; cursor: pointer; transition: transform .25s ease, background .25s ease, box-shadow .25s ease; }
.button:hover { transform: translateY(-2px); }
.button-primary { color: #fff; background: var(--red); box-shadow: 0 12px 30px rgba(196,71,50,.22); }
.button-primary:hover { background: var(--red-deep); box-shadow: 0 16px 35px rgba(196,71,50,.32); }
.button-ghost { color: #fff; border-color: rgba(255,255,255,.45); background: rgba(255,255,255,.06); backdrop-filter: blur(8px); }
.button-ghost:hover { background: rgba(255,255,255,.16); }
.hero-facts { display: flex; flex-wrap: wrap; gap: 25px; margin-top: 40px; color: rgba(255,255,255,.74); font-size: 13px; }
.hero-facts span { display: flex; align-items: center; gap: 9px; }
.hero-facts span::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: #fff; }
.hero-next { position: absolute; z-index: 2; right: max(24px, calc((100vw - 1180px)/2)); bottom: 30px; display: flex; align-items: center; gap: 11px; font-size: 12px; color: rgba(255,255,255,.75); }
.hero-next span:last-child { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; animation: nudge 1.8s ease-in-out infinite; }

.section { padding: 112px 0; }
.section-inner { width: var(--page); margin: auto; }
.section-heading h2, .section-intro h2, .digital-copy h2, .consult-copy h2 { margin: 0; font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif; font-size: clamp(34px, 4.2vw, 56px); line-height: 1.25; letter-spacing: 0; }
.section-intro { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr); align-items: end; gap: 70px; margin-bottom: 55px; }
.section-intro > p { margin: 0 0 6px; color: var(--ink-soft); }

.audience-section { background: linear-gradient(180deg,#fffefb 0%,#faf6f0 100%); position: relative; overflow: hidden; }
.audience-section::before{
  content:"";position:absolute;inset:auto -8% -30% auto;width:min(420px,55vw);aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle,rgba(196,71,50,.1),transparent 68%);
  pointer-events:none;animation:none;
}
.audience-layout { display: grid; grid-template-columns: .82fr 1.18fr; gap: 85px; align-items: start; position: relative; z-index: 1; }
.audience-list { border-top: 1px solid transparent; }
.audience-list article {
  display: grid; grid-template-columns: 48px 1fr; gap: 22px; align-items: start;
  padding: 25px 14px 25px 0; border-bottom: 1px solid var(--line);
  position: relative; isolation: isolate;
  transition: padding-left .35s cubic-bezier(.2,.8,.2,1), background .3s ease, transform .35s ease, box-shadow .35s ease, border-color .3s ease;
}
.audience-list article::before{
  content:"";position:absolute;left:0;top:18px;bottom:18px;width:3px;border-radius:99px;
  background:linear-gradient(180deg,var(--primary),var(--accent));
  transform:scaleY(0);transform-origin:top;transition:transform .4s cubic-bezier(.2,.8,.2,1);
}
.audience-list article::after{
  content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;
  background:linear-gradient(90deg,var(--primary),transparent 70%);
  transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.2,.8,.2,1);
}
.audience-list article:hover{
  padding-left:16px;background:rgba(255,255,255,.72);transform:translateX(4px);
  box-shadow:0 16px 36px rgba(196,71,50,.08);border-color:transparent;
}
.audience-list article:hover::before{transform:scaleY(1)}
.audience-list article:hover::after{transform:scaleX(1)}
.audience-list h3 { margin: 0 0 8px; font-size: 18px; transition: color .25s ease; }
.audience-list article:hover h3{color:var(--primary-deep)}
.audience-list p { margin: 0; color: var(--ink-soft); font-size: 14px; }
.audience-number {
  color: var(--red); font-weight: 800; line-height: 1.2;
  display:inline-flex;align-items:center;justify-content:center;
  min-width:42px;height:42px;border-radius:50%;
  border:1px solid rgba(196,71,50,.22);background:rgba(255,255,255,.8);
  box-shadow:0 8px 20px rgba(196,71,50,.08);
  transition:transform .35s cubic-bezier(.2,.8,.2,1),background .3s ease,box-shadow .3s ease,border-color .3s ease;
}
.audience-list article:hover .audience-number{
  transform:scale(1.08);background:var(--primary);color:#fff;border-color:var(--primary);
  box-shadow:0 12px 28px rgba(196,71,50,.28);
}
.audience-copy{min-width:0}
.audience-path-hint{
  display:inline-flex;align-items:center;gap:10px;margin-top:22px;
  color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.08em;
}
.audience-path-hint i{
  width:42px;height:2px;border-radius:99px;display:block;
  background:linear-gradient(90deg,var(--primary),var(--accent));
  position:relative;overflow:hidden;
}
.audience-path-hint i::after{
  content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#fff,transparent);
  transform:translateX(-120%);animation:none;
}

/* Audience motion: staggered path unfold */
.audience-motion .audience-heading,
.audience-motion .audience-list article{
  opacity:0;
}
.audience-motion .audience-heading{
  transform:translateX(-28px);
}
.audience-motion .audience-list article{
  transform:translateX(24px);
}
.audience-motion.is-visible .audience-heading{
  animation:audienceInLeft .8s cubic-bezier(.16,1,.3,1) .05s forwards;
}
.audience-motion.is-visible .audience-list article{
  animation:audienceInRight .75s cubic-bezier(.16,1,.3,1) forwards;
  animation-delay:calc(.18s + var(--i) * .14s);
}
.audience-motion.is-visible .audience-list{
  border-top-color:var(--line);
  transition:border-top-color .4s ease .2s;
}
.audience-motion.is-visible .audience-number{
  animation:audiencePop .55s cubic-bezier(.2,.9,.2,1) forwards;
  animation-delay:calc(.28s + var(--i) * .14s);
}
@keyframes audienceInLeft{to{opacity:1;transform:none}}
@keyframes audienceInRight{to{opacity:1;transform:none}}
@keyframes audiencePop{0%{transform:scale(.7)}70%{transform:scale(1.12)}100%{transform:scale(1)}}
@keyframes audienceScan{0%{transform:translateX(-120%)}100%{transform:translateX(160%)}}
@keyframes audienceOrb{0%,100%{transform:translate(0,0) scale(1);opacity:.8}50%{transform:translate(-18px,-12px) scale(1.08);opacity:1}}
@media(prefers-reduced-motion:reduce){
  .audience-section::before,.audience-path-hint i::after{animation:none!important}
  .audience-motion .audience-heading,
  .audience-motion .audience-list article,
  .audience-motion.is-visible .audience-number{opacity:1;filter:none;transform:none;animation:none!important}
}

.services-section { background: var(--paper-2); }
.service-path { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.service-item { min-height: 230px; padding: 30px; display: flex; flex-direction: column; justify-content: space-between; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); transition: background .3s ease, transform .3s ease, box-shadow .3s ease; }
.service-item:hover { position: relative; z-index: 1; background: #fff; transform: translateY(-6px); box-shadow: 0 20px 45px rgba(27,36,56,.1); }
.service-item .step { color: var(--red); font-size: 14px; font-weight: 800; }
.service-item h3 { margin: 0 0 10px; font-size: 20px; }
.service-item p { margin: 0; color: var(--ink-soft); font-size: 14px; }

.courses-section {
  color: var(--ink);
  background:
    radial-gradient(ellipse 42% 55% at 90% 10%,rgba(196,71,50,.08),transparent 55%),
    radial-gradient(ellipse 36% 45% at 8% 90%,rgba(63,111,95,.08),transparent 50%),
    var(--paper-2);
}
.section-intro-light > p { color: var(--ink-soft); }
.section-intro-light .eyebrow { color: var(--primary); }
.section-intro-light h2 { color: var(--ink); }
.course-workbench { border: 1px solid var(--line); background: #fff; box-shadow: 0 16px 40px rgba(27,36,56,.06); }
.course-tabs { display: grid; grid-template-columns: repeat(4, 1fr); border-bottom: 1px solid var(--line); }
.course-tab { position: relative; padding: 22px 12px; color: var(--ink-soft); border: 0; border-right: 1px solid var(--line); background: transparent; cursor: pointer; font-weight: 700; }
.course-tab:last-child { border-right: 0; }
.course-tab::after { content: ""; position: absolute; inset: auto 50% -1px; height: 3px; background: linear-gradient(90deg,var(--accent),var(--primary)); transition: inset .25s ease; }
.course-tab:hover, .course-tab.is-active { color: var(--ink); background: var(--primary-soft); }
.course-tab.is-active::after { inset: auto 0 -1px; }
.course-panel { min-height: 0; display: grid; grid-template-columns: 1fr; }
.course-image { display: none !important; }
.course-copy { padding: 55px; align-self: center; }
.course-label { margin: 0 0 16px; color: var(--primary); font-size: 13px; font-weight: 700; }
.course-copy h3 { margin: 0 0 18px; font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif; font-size: 34px; line-height: 1.35; color: var(--ink); }
.course-copy > p:not(.course-label) { color: var(--ink-soft); }
.course-copy ul { list-style: none; margin: 25px 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 9px; }
.course-copy li { padding: 8px 12px; border: 1px solid rgba(196,71,50,.22); background: var(--primary-soft); color: var(--ink); font-size: 13px; }
.course-image { position: relative; margin: 0; overflow: hidden; min-height: 440px; }
.course-image img { width: 100%; height: 100%; object-fit: cover; transition: opacity .25s ease, transform .7s ease; }
.course-image:hover img { transform: scale(1.03); }
.course-image figcaption { position: absolute; left: 20px; bottom: 20px; padding: 8px 12px; background: rgba(27,36,56,.72); font-size: 12px; }
.support-roles { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 28px; border: 1px solid var(--line); background: #fff; }
.support-roles div { padding: 22px 18px; border-right: 1px solid var(--line); }
.support-roles div:last-child { border-right: 0; }
.support-roles strong, .support-roles span { display: block; }
.support-roles strong { color: var(--ink); }
.support-roles span { margin-top: 6px; color: var(--ink-soft); font-size: 13px; }

.digital-section {
  color: var(--ink);
  overflow: hidden;
  background: var(--paper-2);
}
.digital-layout { display: grid; grid-template-columns: 1fr; gap: 40px; align-items: start; max-width: 920px; }
.digital-copy .eyebrow { color: var(--primary); }
.digital-copy .lead { color: var(--ink-soft); max-width: 630px; }
.feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 38px; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.feature-grid article { min-height: 150px; padding: 20px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255,255,255,.65); transition: background .25s ease, transform .25s ease; }
.feature-grid article:hover { background: #fff; transform: translateY(-2px); }
.feature-grid span { color: var(--accent); font-size: 11px; }
.feature-grid h3 { margin: 25px 0 5px; font-size: 16px; color: var(--ink); }
.feature-grid p { margin: 0; color: var(--ink-soft); font-size: 12px; line-height: 1.6; }
.video-stage { position: relative; box-shadow: 0 30px 70px rgba(27,36,56,.12); }
.video-stage video { width: 100%; aspect-ratio: 9 / 13; object-fit: cover; background: #101417; }
.video-caption { position: absolute; inset: auto 0 0; display: flex; align-items: center; justify-content: space-between; padding: 17px 20px; color: #fff; background: linear-gradient(transparent, rgba(0,0,0,.78)); pointer-events: none; }
.video-caption span { font-size: 12px; opacity: .7; }

.campus-section { background: #fff; }
.gallery { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-rows: 220px; gap: 12px; }
.gallery-item { position: relative; padding: 0; overflow: hidden; color: #fff; border: 0; background: #ddd; cursor: zoom-in; }
.gallery-item.gallery-wide { grid-column: span 2; }
.gallery-item.gallery-tall { grid-row: span 2; }
.gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2,.7,.2,1), filter .3s ease; }
.gallery-item::after { content: ""; position: absolute; inset: 0; background: linear-gradient(transparent 55%, rgba(0,0,0,.68)); }
.gallery-item span { position: absolute; z-index: 1; left: 18px; bottom: 15px; font-weight: 700; }
.gallery-item:hover img { transform: scale(1.055); filter: saturate(1.08); }

.campus-section{background:var(--paper-2)}
.campus-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.campus-card{
  position:relative;min-height:190px;padding:28px 24px;overflow:hidden;color:var(--ink);
  border:1px solid rgba(196,71,50,.18);background:#fff;
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.campus-card span{display:inline-block;margin-bottom:14px;color:var(--primary);font-size:12px;font-weight:800;letter-spacing:.14em}
.campus-card h3{position:relative;margin:0 0 10px;font-size:22px;line-height:1.25;color:var(--ink)}
.campus-card p{position:relative;margin:0;color:var(--ink-soft);line-height:1.7;font-size:14px}
.campus-card:hover{transform:translateY(-5px);border-color:rgba(196,71,50,.4);box-shadow:0 22px 48px rgba(196,71,50,.12)}
@media(max-width:1060px){.campus-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.campus-card-grid{grid-template-columns:1fr}}
.video-stage,.course-image,.home-campus-image,.hero-image{display:none!important}
.inner-hero-campus>img{
  position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;display:block!important
}
.inner-hero-campus .inner-hero-shade{
  z-index:1;
  background:linear-gradient(180deg,rgba(250,246,240,.35) 0%,rgba(235,227,214,.72) 55%,rgba(246,241,233,.92) 100%)
}
.inner-hero-campus .inner-hero-content{z-index:2}

.tracks-section { background: var(--paper); }
.track-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.track-card { min-height: 250px; padding: 28px; border: 1px solid var(--line); background: #fff; transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; }
.track-card:hover { transform: translateY(-6px); border-color: var(--red); box-shadow: 0 20px 35px rgba(196,71,50,.1); }
.track-card > span { color: var(--red); font-size: 12px; font-weight: 800; }
.track-card h3 { margin: 42px 0 25px; font-size: 21px; }
.track-card p { margin: 0 0 4px; color: var(--ink-soft); font-size: 12px; }
.track-card strong { font-size: 14px; }
.process-strip { margin-top: 36px; padding: 23px 25px; display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #fff; background: var(--espresso); font-size: 13px; overflow-x: auto; }
.process-strip span, .process-strip i { flex: 0 0 auto; }
.process-strip i { color: var(--amber); font-style: normal; }

.consult-section {
  color: var(--ink);
  background:
    radial-gradient(ellipse 42% 55% at 90% 12%,rgba(196,71,50,.1),transparent 55%),
    radial-gradient(ellipse 36% 45% at 8% 88%,rgba(63,111,95,.1),transparent 50%),
    var(--paper-2);
}
.consult-copy > p:not(.eyebrow) { color: var(--ink-soft); }
.contact-block { margin: 38px 0 28px; padding: 25px 0; display: grid; gap: 5px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.contact-block span, .contact-block small { color: var(--ink-soft); font-size: 12px; }
.contact-block strong { font-family: Georgia, serif; font-size: 27px; letter-spacing: 0; color: var(--ink); }
.campus-addresses p { margin: 7px 0; color: var(--ink-soft); font-size: 13px; }
.campus-addresses strong { color: var(--ink); }
.consult-form { padding: 38px; color: var(--ink); background: #fff; }
.form-heading { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 26px; }
.form-heading span { font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif; font-size: 26px; font-weight: 800; }
.form-heading p { margin: 0; color: var(--ink-soft); font-size: 12px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.consult-form label { display: block; margin-bottom: 18px; font-size: 13px; font-weight: 700; }
.consult-form input:not([type="checkbox"]), .consult-form select, .consult-form textarea { width: 100%; margin-top: 8px; padding: 13px 12px; color: var(--ink); border: 1px solid var(--line); border-radius: 2px; outline: none; background: #fff; transition: border-color .2s ease, box-shadow .2s ease; }
.consult-form textarea { resize: vertical; min-height: 105px; }
.consult-form input:focus, .consult-form select:focus, .consult-form textarea:focus { border-color: var(--red); box-shadow: 0 0 0 3px rgba(196,71,50,.12); }
.consult-form [aria-invalid="true"] { border-color: var(--red) !important; }
.consent { display: flex !important; gap: 9px; align-items: flex-start; color: var(--ink-soft); font-weight: 400 !important; line-height: 1.6; }
.consent input { margin: 4px 0 0; accent-color: var(--red); }
.form-submit { width: 100%; border: 0; }
.form-status { min-height: 24px; margin: 10px 0 0; color: var(--ink-soft); font-size: 12px; text-align: center; }
.form-status.is-error { color: var(--red-deep); }
.form-status.is-success { color: var(--accent); }

.site-footer { padding: 28px 16px 32px; color: #8a9199; background: #f5f7fa; font-size: 12px; border-top: 1px solid #e8ecf0; }
.footer-legal { width: var(--page); max-width: 100%; margin: auto; text-align: center; line-height: 1.9; }
.footer-legal a { color: inherit; text-decoration: none; }
.footer-legal a:hover { color: #5a6570; text-decoration: underline; text-underline-offset: 3px; }
.footer-legal-line { margin: 0; }
.footer-legal-line + .footer-legal-line { margin-top: 4px; }

.lightbox { width: min(1100px, calc(100vw - 36px)); max-height: calc(100vh - 36px); padding: 0; border: 0; background: #0c0e0f; color: #fff; }
.lightbox::backdrop { background: rgba(0,0,0,.86); backdrop-filter: blur(5px); }
.lightbox img { width: 100%; max-height: calc(100vh - 100px); object-fit: contain; }
.lightbox p { margin: 0; padding: 12px 18px; }
.lightbox-close { position: fixed; z-index: 2; top: 20px; right: 25px; width: 44px; height: 44px; display: grid; place-items: center; color: #fff; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; background: rgba(0,0,0,.45); font-size: 26px; cursor: pointer; }

.reveal { opacity: 0; transform: translateY(28px); transition: opacity .65s ease, transform .65s ease; }
html body .reveal.is-visible {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}
@keyframes heroScale { from { transform: scale(1.04); } to { transform: scale(1); } }
@keyframes nudge { 50% { transform: translateY(4px); } }

@media (max-width: 1060px) {
  :root { --page: min(100% - 36px, 900px); }
  .menu-button { display: block; }
  .site-nav { position: fixed; inset: var(--header-height) 0 auto; padding: 20px 18px 28px; display: grid; gap: 0; color: var(--ink); background: #fff; box-shadow: 0 20px 35px rgba(0,0,0,.12); transform: translateY(-120%); opacity: 0; pointer-events: none; transition: transform .3s ease, opacity .3s ease; }
  .site-nav.is-open { transform: none; opacity: 1; pointer-events: auto; }
  .site-nav > a,
  .site-nav .nav-drop__btn { padding: 14px 5px; border-bottom: 1px solid #ecebea; }
  .site-nav > a::after,
  .site-nav .nav-drop__btn::after { display: none; }
  .site-nav .nav-drop { display: block; border-bottom: 1px solid #ecebea; }
  .site-nav .nav-drop__btn { width: 100%; justify-content: space-between; border-bottom: 0; }
  .site-nav .nav-drop__menu {
    position: static; transform: none; left: auto; top: auto;
    min-width: 0; padding: 0 0 8px 12px; border: 0; border-radius: 0;
    background: transparent; box-shadow: none;
    opacity: 1; visibility: visible; pointer-events: auto; display: none;
  }
  .site-nav .nav-drop.is-open .nav-drop__menu,
  .site-nav .nav-drop:hover .nav-drop__menu,
  .site-nav .nav-drop:focus-within .nav-drop__menu { display: grid; gap: 2px; transform: none; }
  .site-nav.menu-open .nav-drop.is-open .nav-drop__menu,
  .site-nav.is-open .nav-drop.is-open .nav-drop__menu { display: grid; }
  .site-nav .nav-drop__menu a { padding: 10px 8px; border-radius: 6px; font-size: 13px; }
  .site-nav .nav-cta { margin-top: 14px; text-align: center; border: 0; }
  .menu-button[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .menu-button[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .menu-button[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
  .digital-layout, .consult-layout { grid-template-columns: 1fr; }
  .video-stage { width: min(620px, 100%); margin: auto; }
  .video-stage video { aspect-ratio: 16 / 10; }
  .consult-layout { gap: 50px; }
}

@media (max-width: 760px) {
  :root { --header-height: 66px; --page: calc(100% - 28px); }
  .brand { min-width: 0; }
  .brand img { width: auto; height: 44px; }
  .brand-divider { height: 23px; margin-inline: 8px; }
  .brand-name { font-size: 17px; }
  .hero { min-height: max(760px, 100svh); display: flex; align-items: flex-end; }
  .hero-image { object-position: 53% center; }
  .hero-shade { background: linear-gradient(0deg, rgba(8,13,16,.93) 0%, rgba(8,13,16,.67) 55%, rgba(8,13,16,.2) 100%); }
  .hero-content { padding: 130px 0 116px; }
  .hero h1 { font-size: 48px; }
  .hero-summary { font-size: 16px; }
  .hero-actions { display: grid; grid-template-columns: 1fr; }
  .hero-facts { gap: 12px 20px; margin-top: 28px; }
  .hero-next { display: none; }
  .section { padding: 78px 0; }
  .section-intro, .audience-layout { grid-template-columns: 1fr; gap: 35px; }
  .section-intro { margin-bottom: 38px; }
  .section-heading h2, .section-intro h2, .digital-copy h2, .consult-copy h2 { font-size: 36px; }
  .audience-list article { grid-template-columns: 42px 1fr; gap: 8px 12px; }
  .service-path { grid-template-columns: 1fr; }
  .service-item { min-height: 190px; }
  .course-tabs { grid-template-columns: 1fr 1fr; }
  .course-tab { border-bottom: 1px solid rgba(255,255,255,.15); }
  .course-panel { grid-template-columns: 1fr; }
  .course-copy { padding: 32px 24px; }
  .course-copy h3 { font-size: 28px; }
  .course-image { min-height: 280px; }
  .support-roles { grid-template-columns: 1fr 1fr; }
  .support-roles div:nth-child(3) { border-top: 1px solid var(--line); }
  .support-roles div:nth-child(4) { border-top: 1px solid var(--line); border-right: 1px solid var(--line); }
  .feature-grid { grid-template-columns: 1fr 1fr; }
  .gallery { grid-template-columns: 1fr 1fr; grid-auto-rows: 180px; }
  .gallery-item.gallery-wide { grid-column: span 2; }
  .gallery-item.gallery-tall { grid-row: auto; }
  .track-grid { grid-template-columns: 1fr; }
  .track-card { min-height: 220px; }
  .process-strip { justify-content: flex-start; }
  .consult-form { padding: 28px 20px; }
  .form-row { grid-template-columns: 1fr; gap: 0; }
  .form-heading { display: block; }
  .footer-legal { padding: 0 4px; }
}

@media (max-width: 420px) {
  .hero h1 { font-size: 42px; }
  .hero-facts { display: grid; }
  .course-tabs { grid-template-columns: 1fr; }
  .gallery { grid-template-columns: 1fr; }
  .gallery-item.gallery-wide { grid-column: auto; }
  .support-roles { grid-template-columns: 1fr; }
  .support-roles div { border-right: 1px solid var(--line); border-top: 1px solid var(--line); }
  .feature-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal { opacity: 1; transform: none; }
}

/* Multi-page structure */
.site-nav .nav-cta.is-active { box-shadow: 0 0 0 3px rgba(196,71,50,.2), 0 10px 24px rgba(196,71,50,.25); }
.inner-hero { position: relative; min-height: 530px; display: flex; align-items: flex-end; overflow: hidden; color: var(--ink); background: var(--paper); }
.inner-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; animation: heroScale 8s ease-out both; }
.inner-hero-shade { position: absolute; inset: 0; background: transparent; }
.inner-hero-content { position: relative; z-index: 1; width: var(--page); margin: 0 auto; padding: calc(var(--header-height) + 80px) 0 75px; }
.inner-hero-content p {
  display: inline-flex; align-items: center; gap: 10px;
  margin: 0 0 16px; padding: 8px 12px;
  color: var(--primary); font-size: 12px; font-weight: 800; letter-spacing: .08em;
  border: 1px solid rgba(196,71,50,.28); border-radius: 999px;
  background: rgba(255,255,255,.75); backdrop-filter: blur(8px);
}
.inner-hero-content h1 { margin: 0 0 17px; font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif; font-size: clamp(50px,7vw,82px); line-height: 1.05; letter-spacing: 0; color: var(--ink); }
.inner-hero-content span { display: block; max-width: 650px; color: var(--ink-soft); line-height: 1.8; }

.home-directory { background: var(--paper-2); }
.module-grid { display: grid; grid-template-columns: repeat(2,1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.module-link { min-height: 170px; padding: 28px; display: grid; grid-template-columns: 42px 1fr 34px; gap: 15px; align-items: start; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255,255,255,.18); transition: color .35s ease, background .35s ease, transform .4s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease; }
.module-link > span { color: var(--red); font-size: 13px; font-weight: 800; transition: transform .35s ease; }
.module-link h3 { margin: 0 0 10px; font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif; font-size: 23px; transition: color .3s ease; }
.module-link p { margin: 0; color: var(--ink-soft); font-size: 14px; }
.module-link b { width: 32px; height: 32px; display: grid; place-items: center; align-self: end; border: 1px solid var(--line); border-radius: 50%; font-weight: 400; transition: color .25s ease, border-color .25s ease, transform .25s ease, background .25s ease, box-shadow .3s ease; }
.module-link:hover {
  position: relative; z-index: 1; color: var(--red-deep); background: #fff;
  transform: translateY(-5px); box-shadow: 0 20px 45px rgba(196,71,50,.12);
}
.module-link:hover h3 { color: var(--primary); }
.module-link:hover > span { transform: scale(1.08); }
.module-link:hover b {
  color: #fff; border-color: var(--red); background: var(--red);
  transform: translateX(3px); box-shadow: 0 8px 18px rgba(196,71,50,.28);
}

/* Home module rail only - keep scoped so inner pages stay untouched */
.module-rail .module-link{
  --i: 0;
  opacity:0;
  transform:translateY(22px);
  transition:
    opacity .65s cubic-bezier(.16,1,.3,1),
    transform .55s cubic-bezier(.16,1,.3,1),
    color .35s ease, background .35s ease, box-shadow .35s ease;
  transition-delay: calc(var(--i) * 80ms), calc(var(--i) * 80ms), 0s, 0s, 0s;
}
.module-rail.is-visible .module-link,
.module-rail.reveal.is-visible .module-link{
  opacity:1;
  transform:translateY(0);
}
.module-rail .module-link.is-focus,
.module-rail.is-visible .module-link:hover,
.module-rail.is-visible .module-link.is-focus{
  position: relative; z-index: 1; color: var(--red-deep); background: #fff;
  transform:translateY(-5px); box-shadow: 0 20px 45px rgba(196,71,50,.12);
  transition-delay:0s;
}
.module-rail .module-link.is-focus h3,
.module-rail .module-link:hover h3 { color: var(--primary); }
.module-rail .module-link.is-focus > span,
.module-rail .module-link:hover > span { transform: scale(1.08); }
.module-rail .module-link.is-focus b,
.module-rail .module-link:hover b {
  color: #fff; border-color: var(--red); background: var(--red);
  transform: translateX(3px); box-shadow: 0 8px 18px rgba(196,71,50,.28);
}
.module-rail .module-link.is-focus { animation: none; }
.module-rail .module-link.is-focus b { animation: moduleArrow 1.4s ease-in-out infinite; }
@keyframes moduleGlow{
  0%,100%{box-shadow:0 20px 45px rgba(196,71,50,.12)}
  50%{box-shadow:0 28px 56px rgba(196,71,50,.22)}
}
@keyframes moduleArrow{
  0%,100%{transform:translateX(3px)}
  50%{transform:translateX(8px)}
}
@media(prefers-reduced-motion:reduce){
  .module-rail .module-link{opacity:1;transform:none;transition:none;animation:none!important}
  .module-rail .module-link.is-focus,
  .module-rail .module-link.is-focus b{animation:none!important}
  .module-rail .module-link.is-focus{transform:none}
}
.home-campus {
  position: relative; overflow: hidden; color: var(--ink);
  background: var(--paper-2);
}
.home-campus-layout { display: grid; grid-template-columns: 1fr; align-items: center; gap: 32px; max-width: 760px; position: relative; z-index: 1; }
.home-campus-image { display: none !important; }
.home-campus-copy .eyebrow { color: var(--primary); }
.home-campus-copy h2 { margin: 0 0 24px; font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif; font-size: clamp(36px,4.5vw,56px); line-height: 1.3; color: var(--ink); }
.home-campus-copy > p:not(.eyebrow) { color: var(--ink-soft); }
.home-campus .text-link { color: var(--primary); }
.home-campus .text-link:hover { color: var(--primary-deep); }
.text-link { display: inline-flex; align-items: center; gap: 12px; margin-top: 18px; color: var(--red); font-weight: 800; }
.text-link span { transition: transform .25s ease; }
.text-link:hover span { transform: translateX(5px); }
.page-cta {
  position: relative; overflow: hidden; padding: 95px 0; color: var(--ink); text-align: center;
  background: var(--paper-2);
}
.page-cta p { margin: 0 0 12px; color: var(--primary); font-weight: 700; letter-spacing: .04em; }
.page-cta h2 { margin: 0 0 29px; font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif; font-size: clamp(36px,5vw,60px); color: var(--ink); }

.service-principles { background: #fff; }
.principle-grid { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.principle-grid article { min-height: 250px; padding: 30px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.principle-grid span { color: var(--red); font-size: 13px; font-weight: 800; }
.principle-grid h3 { margin: 70px 0 12px; font-size: 24px; }
.principle-grid p { margin: 0; color: var(--ink-soft); font-size: 14px; }
.digital-flow { background: var(--paper-2); }
.digital-flow-grid { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.digital-flow-grid article {
  min-height: 170px; padding: 28px 24px;
  border-right: 1px solid var(--line); border-bottom: 1px solid var(--line);
  background: rgba(255,255,255,.55); transition: background .25s ease, transform .25s ease;
}
.digital-flow-grid article:hover { background: #fff; transform: translateY(-3px); }
.digital-flow-grid strong,.digital-flow-grid span { display: block; }
.digital-flow-grid strong { margin-bottom: 38px; font-size: 18px; color: var(--ink); }
.digital-flow-grid span { color: var(--ink-soft); font-size: 13px; line-height: 1.7; }
.gallery-expanded { grid-auto-rows: 240px; grid-auto-flow: dense; }
.gallery-expanded .reveal { opacity: 1; transform: none; }
@media (min-width: 901px) {
  .gallery-expanded { grid-template-columns: repeat(12,1fr); grid-template-rows: repeat(3,250px); }
  .gallery-expanded .gallery-item:nth-child(1) { grid-column: 1 / 7; grid-row: 1; }
  .gallery-expanded .gallery-item:nth-child(2) { grid-column: 7 / 10; grid-row: 1 / 3; }
  .gallery-expanded .gallery-item:nth-child(3) { grid-column: 10 / 13; grid-row: 1; }
  .gallery-expanded .gallery-item:nth-child(4) { grid-column: 1 / 4; grid-row: 2 / 4; }
  .gallery-expanded .gallery-item:nth-child(5) { grid-column: 4 / 7; grid-row: 2; }
  .gallery-expanded .gallery-item:nth-child(6) { grid-column: 10 / 13; grid-row: 2; }
  .gallery-expanded .gallery-item:nth-child(7) { grid-column: 10 / 13; grid-row: 3; }
  .gallery-expanded .gallery-item:nth-child(8) { grid-column: 4 / 10; grid-row: 3; }
}
.campus-address-band {
  padding: 45px 0; color: #fff;
  background:
    radial-gradient(ellipse 40% 80% at 0% 50%,rgba(63,111,95,.45),transparent 55%),
    linear-gradient(120deg,#8a3d2e,var(--primary) 55%,#3f6f5f);
}
.campus-address-band .section-inner { display: grid; grid-template-columns: 1fr 1fr auto; align-items: center; gap: 40px; }
.campus-address-band div > span,.campus-address-band div > strong { display: block; }
.campus-address-band div > span { margin-bottom: 8px; color: rgba(255,255,255,.85); font-size: 12px; font-weight: 700; }
.campus-address-band div > strong { font-size: 14px; }
.campus-address-band a {
  padding: 12px 17px; border: 0; border-radius: 4px; font-weight: 700;
  color: var(--primary-deep); background: #fff; box-shadow: 0 12px 28px rgba(27,36,56,.18);
}
.campus-address-band a:hover { filter: brightness(1.05); }
.track-notice { background: #fff; }
.track-notice-layout { display: grid; grid-template-columns: .88fr 1.12fr; gap: 80px; }
.track-notice h2 { margin: 0; font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif; font-size: clamp(36px,4.5vw,56px); line-height: 1.3; }
.track-notice ul { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); }
.track-notice li { display: grid; grid-template-columns: 150px 1fr; gap: 20px; padding: 20px 0; border-bottom: 1px solid var(--line); }
.track-notice li span { color: var(--ink-soft); font-size: 14px; }

/* Floating course consultation */
.chat-launcher { position: fixed; z-index: 85; right: 24px; bottom: 24px; width: 72px; height: 72px; padding: 0; display: grid; place-items: center; color: #fff; border: 0; border-radius: 50%; background: linear-gradient(145deg,#e5363d,#b91520); box-shadow: 0 15px 38px rgba(163,19,29,.35),inset 0 1px 0 rgba(255,255,255,.3); cursor: grab; touch-action: none; user-select: none; transition: box-shadow .25s ease,transform .25s ease,opacity .25s ease; }
.chat-launcher:hover { transform: translateY(-4px); box-shadow: 0 20px 44px rgba(163,19,29,.43),inset 0 1px 0 rgba(255,255,255,.3); }
.chat-launcher:active { cursor: grabbing; }
.chat-launcher.is-hidden { opacity: 0; pointer-events: none; transform: scale(.8); }
.chat-launcher-mark { position: relative; width: 30px; height: 25px; border: 2px solid #fff; border-radius: 9px; }
.chat-launcher-mark::before { content: ""; position: absolute; left: 5px; bottom: -7px; width: 8px; height: 8px; border-left: 2px solid #fff; transform: skew(-28deg); }
.chat-launcher-mark::after { content: "···"; position: absolute; inset: -9px 0 0; display: grid; place-items: center; color: #fff; font-size: 21px; font-weight: 800; letter-spacing: 0; }
.chat-launcher-label { position: absolute; right: 59px; width: 86px; padding: 8px 10px; color: var(--ink); border: 1px solid #ece7e1; border-radius: 4px; background: #fff; box-shadow: 0 8px 24px rgba(20,24,27,.12); font-size: 13px; font-weight: 800; pointer-events: none; }
.chat-unread { position: absolute; top: 1px; right: 2px; width: 18px; height: 18px; display: grid; place-items: center; color: #fff; border: 2px solid #fff; border-radius: 50%; background: #f0a52c; font-size: 10px; }
.chat-panel { position: fixed; z-index: 86; right: 24px; bottom: 24px; width: min(420px,calc(100vw - 32px)); height: min(620px,calc(100vh - 48px)); display: grid; grid-template-rows: auto 1fr auto; overflow: hidden; border: 1px solid rgba(31,34,36,.12); border-radius: 8px; background: #f5f5f4; box-shadow: 0 28px 85px rgba(15,18,20,.28); opacity: 0; visibility: hidden; transform: translateY(18px) scale(.97); transform-origin: bottom right; transition: opacity .28s ease,transform .28s ease,visibility .28s; }
.chat-panel.is-open { opacity: 1; visibility: visible; transform: none; }
.chat-panel.is-expanded { inset: 24px; width: auto; height: auto; max-width: none; }
.chat-header { min-height: 76px; padding: 13px 14px 13px 16px; display: flex; align-items: center; gap: 12px; color: #fff; background: linear-gradient(110deg,#c9121c,#db3b3f); cursor: move; user-select: none; }
.chat-avatar { width: 44px; height: 44px; flex: 0 0 auto; display: grid; place-items: center; overflow: hidden; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; background: #fff; }
.chat-avatar img { width: 38px; height: 38px; object-fit: contain; }
.chat-mark {
  margin: 0;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: 18px;
  font-weight: 800;
  line-height: 1;
  color: #c44732;
}
.chat-message-avatar .chat-mark { font-size: 14px; }
.chat-identity { min-width: 0; flex: 1; }
.chat-identity strong,.chat-identity span { display: block; }
.chat-identity strong { font-size: 16px; }
.chat-identity span { margin-top: 3px; color: rgba(255,255,255,.75); font-size: 11px; }
.chat-controls { display: flex; gap: 5px; }
.chat-control { width: 36px; height: 36px; display: grid; place-items: center; color: #fff; border: 0; border-radius: 50%; background: transparent; font-size: 22px; cursor: pointer; }
.chat-control:hover { background: rgba(255,255,255,.16); }
.chat-messages { min-height: 0; padding: 20px 18px; overflow-y: auto; overscroll-behavior: contain; }
.chat-day { margin: 0 0 18px; color: #9a9c9e; font-size: 11px; text-align: center; }
.chat-message { display: flex; gap: 9px; align-items: flex-end; margin: 0 0 15px; }
.chat-message.user { justify-content: flex-end; }
.chat-message-avatar { width: 32px; height: 32px; flex: 0 0 auto; display: grid; place-items: center; overflow: hidden; border-radius: 50%; background: #fff; }
.chat-message-avatar img { width: 28px; height: 28px; object-fit: contain; }
.chat-bubble { max-width: 80%; padding: 11px 13px; color: #24282b; border-radius: 5px 14px 14px 14px; background: #fff; box-shadow: 0 5px 18px rgba(20,23,25,.05); font-size: 14px; line-height: 1.65; }
.chat-message.user .chat-bubble { color: #fff; border-radius: 14px 5px 14px 14px; background: var(--red); }
.chat-quick { display: flex; flex-wrap: wrap; gap: 7px; margin: 5px 0 18px 41px; }
.chat-quick button { padding: 7px 10px; color: var(--red-deep); border: 1px solid #e6b7ba; border-radius: 999px; background: #fff; font-size: 12px; cursor: pointer; }
.chat-quick button:hover { color: #fff; border-color: var(--red); background: var(--red); }
.chat-typing { display: inline-flex; gap: 4px; padding: 12px 15px; border-radius: 5px 14px 14px 14px; background: #fff; }
.chat-typing i { width: 5px; height: 5px; border-radius: 50%; background: #aaa; animation: chatTyping 1s ease-in-out infinite; }
.chat-typing i:nth-child(2) { animation-delay: .16s; }.chat-typing i:nth-child(3) { animation-delay: .32s; }
.chat-footer { padding: 12px; border-top: 1px solid #e0dfdc; background: #fff; }
.chat-form { display: grid; grid-template-columns: 1fr auto; gap: 8px; }
.chat-form input { min-width: 0; height: 42px; padding: 0 12px; border: 1px solid #dad8d4; border-radius: 4px; outline: none; }
.chat-form input:focus { border-color: var(--red); box-shadow: 0 0 0 3px rgba(196,71,50,.12); }
.chat-send { min-width: 66px; padding: 0 15px; color: #fff; border: 0; border-radius: 4px; background: var(--red); font-weight: 800; cursor: pointer; }
.chat-send:hover { background: var(--red-deep); }
.chat-disclosure { margin: 8px 2px 0; color: #9a9c9e; font-size: 10px; line-height: 1.5; text-align: center; }
@keyframes chatTyping { 50% { transform: translateY(-3px); opacity: .5; } }

@media (max-width: 900px) {
  .module-grid { grid-template-columns: 1fr; }
  .home-campus-layout,.track-notice-layout { grid-template-columns: 1fr; gap: 42px; }
  .principle-grid { grid-template-columns: 1fr; }
  .digital-flow-grid { grid-template-columns: 1fr 1fr; }
  .campus-address-band .section-inner { grid-template-columns: 1fr; gap: 24px; }
  .gallery-expanded .gallery-item { grid-column: auto; grid-row: auto; }
  .gallery-expanded .gallery-item.gallery-wide { grid-column: span 2; }
}

@media (max-width: 760px) {
  .inner-hero { min-height: 440px; }
  .inner-hero-content { padding: 150px 0 58px; }
  .inner-hero-content h1 { font-size: 49px; }
  .module-link { min-height: 150px; padding: 24px 19px; grid-template-columns: 32px 1fr 30px; }
  .home-campus-image,.home-campus-image img { min-height: 310px; }
  .digital-flow-grid { grid-template-columns: 1fr; }
  .track-notice li { grid-template-columns: 1fr; gap: 6px; }
  .chat-launcher { width: 62px; height: 62px; right: 16px; bottom: 16px; }
  .chat-launcher-label { display: none; }
  .chat-panel { right: 10px; bottom: 10px; width: calc(100vw - 20px); height: min(620px,calc(100dvh - 20px)); }
  .chat-panel.is-expanded { inset: 0; border: 0; border-radius: 0; }
  .chat-panel.is-expanded .chat-header { padding-top: max(13px,env(safe-area-inset-top)); }
  .chat-header { cursor: default; }
  .chat-bubble { max-width: 88%; }
  .gallery-expanded { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .gallery-expanded .gallery-item { min-width: 0; grid-column: auto; grid-row: auto; }
  .gallery-expanded .gallery-item.gallery-wide { grid-column: span 2; }
}

@media (max-width: 480px) {
  .gallery-expanded { grid-template-columns: minmax(0,1fr); grid-auto-rows: auto; }
  .gallery-expanded .gallery-item,
  .gallery-expanded .gallery-item.gallery-wide,
  .gallery-expanded .gallery-item.gallery-tall { grid-column: auto; grid-row: auto; aspect-ratio: 16 / 10; }
  .gallery-expanded .gallery-item:nth-child(2),
  .gallery-expanded .gallery-item:nth-child(4),
  .gallery-expanded .gallery-item:nth-child(7) { aspect-ratio: 3 / 4; }
}

@media (min-width:2000px) {
  :root {
    --page: min(1480px, calc(100% - 120px));
    --header-height: 88px;
  }
  .nav-shell{gap:56px}
  .brand{min-width:220px}
  .brand img{width:auto;height:62px}
  .brand-name{font-size:21px}
  .site-nav{gap:clamp(20px,1.5vw,32px)}
  .site-nav > a,
  .site-nav .nav-drop__btn{padding:31px 0 29px;font-size:16px}
  .site-nav .nav-cta{padding:13px 20px}
  .hero h1{font-size:clamp(64px,5.5vw,104px)}
  .hero-summary{max-width:760px;font-size:20px;line-height:1.9}
  .hero-content{padding-top:var(--header-height)}
  .section{padding:144px 0}
  .section-intro{gap:100px;margin-bottom:68px}
  .section-heading h2,.section-intro h2,.digital-copy h2,.consult-copy h2{font-size:clamp(46px,4.2vw,70px)}
  .section-intro > p{font-size:16px;line-height:1.9}
  .audience-layout,.consult-layout{gap:110px}
  .audience-list article{grid-template-columns:56px 1fr;gap:28px;padding:30px 14px 30px 0}
  .audience-list h3{font-size:20px}
  .audience-list p{font-size:16px}
  .service-item{min-height:270px;padding:38px}
  .service-item h3{font-size:22px}
  .service-item p{font-size:16px}
  .course-copy{padding:68px}
  .course-copy h3{font-size:40px}
  .course-panel,.course-image{min-height:520px}
  .gallery{grid-auto-rows:270px;gap:16px}
  .track-card{min-height:290px;padding:34px}
  .track-card h3{font-size:24px}
  .consult-form{padding:48px}
}


/* ========== Guochao Education — warm academic palette ========== */
.hero.hero-edu{
  isolation:isolate;
  color:var(--ink);
  background:
    radial-gradient(ellipse 42% 38% at 78% 32%,rgba(184,137,69,.28) 0%,transparent 70%),
    radial-gradient(ellipse 36% 32% at 16% 72%,rgba(63,111,95,.22) 0%,transparent 65%),
    linear-gradient(180deg,#faf6f0 0%,#f0e8dc 55%,#f6f1e9 100%);
}
.hero.hero-edu .hero-image{display:none!important}
.hero.hero-edu .hero-shade{
  background:
    linear-gradient(105deg,rgba(246,241,233,.55) 0%,rgba(246,241,233,.08) 46%,rgba(235,227,214,.35) 100%),
    radial-gradient(circle at 74% 38%,rgba(196,71,50,.16),transparent 38%),
    radial-gradient(circle at 62% 28%,rgba(63,111,95,.12),transparent 32%);
}
.hero-fx{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.hero-fx__flash{
  position:absolute;inset:0;
  background:radial-gradient(circle at 42% 40%,rgba(255,255,255,.7) 0%,rgba(63,111,95,.18) 22%,rgba(196,71,50,.1) 40%,transparent 62%);
  opacity:0;animation:eduFlash 1.2s ease-out both;
}
.hero-fx__aurora{
  position:absolute;inset:-18%;
  background:
    conic-gradient(from 200deg at 70% 40%,transparent 0 55%,rgba(63,111,95,.18) 68%,rgba(184,137,69,.16) 80%,transparent 92%),
    radial-gradient(circle at 76% 32%,rgba(63,111,95,.22) 0%,transparent 30%),
    radial-gradient(circle at 58% 55%,rgba(196,71,50,.16) 0%,transparent 26%);
  /* Avoid continuous filter:blur — it re-rasterizes every frame while scrolling */
  opacity:.9;animation:eduAurora 10s ease-in-out infinite alternate;
  will-change:transform;
}
.hero-fx__rays{
  position:absolute;inset:0;
  background:
    repeating-linear-gradient(118deg,transparent 0 52px,rgba(196,71,50,.045) 52px 53px),
    repeating-linear-gradient(-18deg,transparent 0 72px,rgba(63,111,95,.035) 72px 73px);
  mask-image:radial-gradient(circle at 70% 42%,#000 0%,transparent 68%);
  -webkit-mask-image:radial-gradient(circle at 70% 42%,#000 0%,transparent 68%);
  animation:none; /* was continuous background-position churn */
}
.hero-fx__dust{
  position:absolute;inset:0;
  background-image:radial-gradient(#c44732 1px,transparent 1.2px);
  background-size:6px 6px;opacity:.1;
  mask-image:radial-gradient(circle at 68% 40%,#000 10%,transparent 70%);
  -webkit-mask-image:radial-gradient(circle at 68% 40%,#000 10%,transparent 70%);
  animation:none;
}
.hero-fx__ring{
  position:absolute;right:8%;top:22%;width:min(420px,40vw);aspect-ratio:1;border-radius:50%;
  border:1px solid rgba(196,71,50,.28);
  box-shadow:0 0 0 28px rgba(196,71,50,.04),inset 0 0 40px rgba(63,111,95,.08);
  animation:eduRing 28s linear infinite;
  will-change:transform;
}
.hero-fx__ring--b{right:14%;top:30%;width:min(280px,28vw);border-color:rgba(63,111,95,.35);animation-duration:12s;animation-direction:reverse}
.hero-path{
  position:absolute;z-index:1;right:max(18px,calc((100vw - 1180px)/2 - 10px));
  top:50%;translate:0 -42%;width:min(360px,34vw);height:min(460px,62vh);pointer-events:none;
}
.hero-path__glow{
  position:absolute;inset:8% 18%;
  background:radial-gradient(circle,rgba(63,111,95,.18) 0%,rgba(196,71,50,.1) 40%,transparent 70%);
  animation:eduPathGlow 4.2s ease-in-out infinite;
}
.hero-path__line{
  position:absolute;left:48%;top:8%;bottom:8%;width:2px;
  background:linear-gradient(180deg,transparent,var(--accent) 18%,#fff 50%,var(--primary) 82%,transparent);
  box-shadow:0 0 12px rgba(63,111,95,.3);transform:translateX(-50%);overflow:hidden;
}
.hero-path__line::after{
  content:"";position:absolute;left:0;right:0;height:28%;
  background:linear-gradient(180deg,transparent,#fff,transparent);animation:eduPathScan 3.4s ease-in-out infinite;
}
.hero-path__node{
  position:absolute;left:48%;translate:-50% 0;min-width:118px;padding:10px 12px 11px;
  border:1px solid rgba(196,71,50,.22);border-radius:12px;
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(235,227,214,.94));
  box-shadow:0 14px 32px rgba(27,36,56,.1),0 0 24px rgba(196,71,50,.08);
  /* backdrop-filter on floating nodes was a scroll jank hotspot */
  text-align:center;color:var(--ink);animation:eduNodeFloat 5.6s ease-in-out infinite;
  will-change:transform;
}
.hero-path__node::before{
  content:"";position:absolute;left:50%;top:-7px;width:10px;height:10px;border-radius:50%;translate:-50% 0;
  background:var(--accent);box-shadow:0 0 0 4px rgba(63,111,95,.22),0 0 16px var(--accent);
}
.hero-path__node small{display:block;margin-bottom:4px;color:var(--primary);font:700 10px/1 Consolas,"SFMono-Regular",monospace;letter-spacing:.14em}
.hero-path__node b{display:block;font-size:15px;letter-spacing:.04em;margin-bottom:2px;color:var(--ink)}
.hero-path__node span{display:block;color:var(--ink-soft);font-size:11px}
.hero-path__node--1{top:4%;animation-delay:0s}
.hero-path__node--2{top:28%;left:78%;animation-delay:.35s}
.hero-path__node--2::before{background:var(--primary);box-shadow:0 0 0 4px rgba(196,71,50,.25),0 0 16px var(--primary)}
.hero-path__node--3{top:52%;left:22%;animation-delay:.7s}
.hero-path__node--4{top:76%;animation-delay:1.05s}
.hero-path__node--4::before{background:var(--amber);box-shadow:0 0 0 4px rgba(184,137,69,.25),0 0 16px var(--amber)}
.hero.hero-edu .hero-content{z-index:2;color:var(--ink)}
.hero.hero-edu .hero-kicker{
  display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid rgba(196,71,50,.28);border-radius:999px;
  background:rgba(255,255,255,.88);color:var(--primary);opacity:1;font-size:12px;letter-spacing:.08em;
  animation:eduKickerIn .7s ease both;
}
.hero.hero-edu .hero-kicker i{
  width:8px;height:8px;border-radius:50%;background:var(--accent);
  box-shadow:0 0 0 4px rgba(63,111,95,.22),0 0 14px var(--accent);animation:eduDot 1.5s ease-in-out infinite;
}
.hero.hero-edu h1{color:var(--ink);text-shadow:none}
.hero.hero-edu .hero-title-line{
  display:inline-block;opacity:0;transform:translateY(18px);color:var(--ink);
  animation:eduTitleIn .75s cubic-bezier(.2,.8,.2,1) .08s forwards;
}
.hero.hero-edu .hero-title-shine{
  display:inline-block;
  background:linear-gradient(120deg,var(--ink) 8%,var(--primary) 40%,var(--accent) 62%,var(--ink) 88%);
  background-size:220% 100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  opacity:0;transform:translateY(18px);
  animation:eduTitleIn .75s cubic-bezier(.2,.8,.2,1) .2s forwards;
}
.hero.hero-edu .hero-summary{color:var(--ink-soft);opacity:0;animation:eduTitleIn .7s ease .34s forwards}
.hero.hero-edu .hero-actions{opacity:0;animation:eduTitleIn .7s ease .46s forwards}
.hero.hero-edu .button-primary{
  background:linear-gradient(120deg,#d45a42,var(--primary-deep) 62%,var(--accent))!important;
  box-shadow:0 14px 34px rgba(196,71,50,.3);animation:none;
}
.hero.hero-edu .button-primary:hover{filter:brightness(1.04)}
.hero.hero-edu .button-ghost{
  color:var(--primary);border-color:rgba(196,71,50,.35);background:rgba(255,255,255,.7);
}
.hero.hero-edu .button-ghost:hover{background:#fff}
.hero.hero-edu .hero-facts{color:var(--ink-soft);opacity:0;animation:eduTitleIn .7s ease .58s forwards}
.hero.hero-edu .hero-facts span::before{background:var(--accent);box-shadow:0 0 10px rgba(63,111,95,.55)}
.hero-next{color:var(--ink-soft)}
.hero-next span:last-child{border-color:rgba(196,71,50,.35)}

.inner-hero,.inner-hero-digital,.inner-hero-campus,.inner-hero-tracks,.inner-hero-consult,.inner-hero-courses{
  isolation:isolate;color:var(--ink);
  background:
    radial-gradient(ellipse 48% 52% at 80% 28%,rgba(184,137,69,.22),transparent 62%),
    radial-gradient(ellipse 34% 40% at 14% 74%,rgba(63,111,95,.14),transparent 55%),
    linear-gradient(165deg,#faf6f0 0%,#ebe3d6 50%,#f6f1e9 100%);
}
.inner-hero::before{
  content:"";position:absolute;inset:-15%;z-index:0;pointer-events:none;
  background:
    radial-gradient(circle at 78% 28%,rgba(196,71,50,.18),transparent 32%),
    radial-gradient(circle at 18% 72%,rgba(63,111,95,.12),transparent 30%);
  animation:none;
}
.inner-hero::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    repeating-linear-gradient(118deg,transparent 0 48px,rgba(196,71,50,.05) 48px 49px),
    repeating-linear-gradient(-18deg,transparent 0 68px,rgba(63,111,95,.04) 68px 69px);
  mask-image:radial-gradient(circle at 70% 40%,#000 0%,transparent 72%);
  -webkit-mask-image:radial-gradient(circle at 70% 40%,#000 0%,transparent 72%);
  opacity:.85;
}
.inner-hero > img{display:none!important}
.inner-hero-shade{
  z-index:0;
  background:linear-gradient(105deg,rgba(246,241,233,.45) 0%,rgba(246,241,233,.05) 50%,rgba(235,227,214,.3) 100%);
}
.inner-hero-content{position:relative;z-index:1}
.inner-hero-content p{
  display:inline-flex;align-items:center;gap:10px;margin:0 0 16px;padding:8px 12px;
  color:var(--primary);font-size:12px;font-weight:800;letter-spacing:.08em;
  border:1px solid rgba(196,71,50,.28);border-radius:999px;background:rgba(255,255,255,.75);backdrop-filter:blur(8px);
}
.inner-hero-content h1{
  margin:0 0 17px;color:var(--ink);
  background:linear-gradient(120deg,var(--ink) 12%,var(--primary) 48%,var(--accent) 72%,var(--ink) 92%);
  background-size:220% 100%;
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
  animation:eduShine 5s linear infinite;filter:none;text-shadow:none;
}
.inner-hero-content span{display:block;max-width:650px;color:var(--ink-soft);line-height:1.8}

.digital-section,.home-campus,.consult-section,.page-cta{
  color:var(--ink);
  background:
    radial-gradient(ellipse 48% 60% at 88% 18%,rgba(196,71,50,.14),transparent 55%),
    radial-gradient(ellipse 40% 50% at 8% 85%,rgba(63,111,95,.1),transparent 50%),
    linear-gradient(145deg,#faf6f0 0%,#ebe3d6 52%,#f6f1e9 100%);
}
.digital-copy .eyebrow,.consult-copy .eyebrow,.home-campus-copy .eyebrow,.page-cta p{color:var(--primary)!important}
.digital-copy h2,.consult-copy h2,.home-campus-copy h2,.page-cta h2{color:var(--ink)!important}
.digital-copy .lead,.consult-copy > p:not(.eyebrow),.home-campus-copy > p:not(.eyebrow){color:var(--ink-soft)!important}
.feature-grid{border-color:rgba(196,71,50,.2)!important}
.feature-grid article{border-color:rgba(196,71,50,.2)!important;background:rgba(255,255,255,.7)!important}
.feature-grid article:hover{background:#fff!important}
.feature-grid span{color:var(--accent)!important}
.feature-grid h3{color:var(--ink)!important}
.feature-grid p{color:var(--ink-soft)!important}
.home-campus .text-link{color:var(--primary)}
.home-campus .text-link:hover{color:var(--primary-deep)}

.services-section,.home-directory,.digital-flow,.campus-section{
  background:
    radial-gradient(ellipse 35% 45% at 0% 0%,rgba(196,71,50,.08),transparent 55%),
    radial-gradient(ellipse 30% 40% at 100% 100%,rgba(63,111,95,.07),transparent 50%),
    var(--paper-2)!important;
}
.service-path,.module-grid,.digital-flow-grid{border-color:var(--line)!important}
.service-item,.module-link,.digital-flow-grid article{border-color:var(--line)!important}
.module-link:hover,
.module-rail .module-link.is-focus{box-shadow:0 20px 45px rgba(196,71,50,.12)}

.campus-card{
  color:var(--ink);
  border:1px solid rgba(196,71,50,.18);
  background:
    radial-gradient(circle at 100% 0%,rgba(196,71,50,.12),transparent 42%),
    radial-gradient(circle at 0% 100%,rgba(63,111,95,.1),transparent 46%),
    #fff;
  box-shadow:0 10px 28px rgba(27,36,56,.05);
}
.campus-card::before{background:radial-gradient(circle,rgba(63,111,95,.16),transparent 70%)}
.campus-card span{color:var(--primary)}
.campus-card h3{color:var(--ink)}
.campus-card p{color:var(--ink-soft)}
.campus-card:hover{border-color:rgba(196,71,50,.4);box-shadow:0 20px 42px rgba(196,71,50,.12)}

.tracks-section{background:var(--paper)!important}
.track-card{border-color:var(--line)!important}
.track-card:hover{border-color:var(--primary)!important;box-shadow:0 20px 35px rgba(196,71,50,.12)!important}
.process-strip{background:linear-gradient(110deg,var(--espresso),#3d2a24 45%,#2f4038)!important}
.process-strip i{color:var(--amber)!important}

.campus-address-band{
  background:
    radial-gradient(ellipse 42% 80% at 8% 50%,rgba(184,137,69,.35),transparent 55%),
    radial-gradient(ellipse 36% 70% at 92% 50%,rgba(63,111,95,.28),transparent 52%),
    linear-gradient(118deg,#2a201c 0%,#3d2a24 48%,#24352f 100%)!important;
}
.campus-address-band div > span{color:var(--amber)!important}
.campus-address-band div > strong{color:#fff!important}
.campus-address-band a{
  color:var(--espresso)!important;border:0!important;
  background:linear-gradient(120deg,#f3e6d2,#fff)!important;
  box-shadow:0 12px 28px rgba(28,23,19,.22);
}
.campus-address-band a:hover{filter:brightness(1.04)}

.site-footer{background:#f5f7fa!important;color:#8a9199!important}
.footer-legal a:hover{color:#5a6570!important}
.button-primary{
  background:linear-gradient(120deg,#d45a42,var(--primary-deep) 68%,var(--accent));
  box-shadow:0 12px 30px rgba(196,71,50,.25);
}
.button-primary:hover{background:linear-gradient(120deg,var(--primary-deep),#a85a3a 55%,var(--accent));box-shadow:0 16px 35px rgba(196,71,50,.35)}
.site-nav .nav-cta,.chat-quick button:hover{
  background:linear-gradient(120deg,var(--primary),var(--primary-deep))!important;
}
.site-nav .nav-cta:hover{filter:brightness(1.05)}
.chat-launcher{
  background:linear-gradient(145deg,#d45a42,var(--primary-deep))!important;
  box-shadow:0 15px 38px rgba(196,71,50,.35),inset 0 1px 0 rgba(255,255,255,.3)!important;
}
.chat-header{background:linear-gradient(110deg,var(--primary-deep),#a86b38)!important}
.chat-quick button{color:var(--primary-deep)!important;border-color:#e8d5c8!important}
.chat-message.user .chat-bubble{background:var(--primary)!important}

.video-stage,.course-image,.home-campus-image,.hero-image{display:none!important}

@keyframes eduFlash{0%{opacity:.85}100%{opacity:0}}
@keyframes eduAurora{to{transform:translate3d(-2%,2%,0) scale(1.05) rotate(2deg)}}
@keyframes eduRays{to{background-position:120px 80px}}
@keyframes eduDust{to{transform:translate3d(0,-22px,0)}}
@keyframes eduRing{to{transform:rotate(360deg)}}
@keyframes eduPathGlow{50%{opacity:.65;transform:scale(1.06)}}
@keyframes eduPathScan{0%{top:-30%;opacity:0}20%{opacity:1}100%{top:110%;opacity:0}}
@keyframes eduNodeFloat{50%{transform:translate(-50%,-6px)}}
@keyframes eduKickerIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes eduTitleIn{to{opacity:1;transform:none}}
@keyframes eduShine{to{background-position:-220% 0}}
@keyframes eduDot{50%{opacity:.45;transform:scale(.75)}}
@keyframes eduCtaPulse{
  0%,100%{box-shadow:0 0 0 0 rgba(196,71,50,0),0 14px 34px rgba(196,71,50,.3)}
  50%{box-shadow:0 0 0 10px rgba(196,71,50,0),0 16px 40px rgba(196,71,50,.42)}
}

/* Off-screen hero: freeze all continuous FX so scrolling below doesn't keep compositing them */
.hero.hero-edu.is-away .hero-fx *,
.hero.hero-edu.is-away .hero-path *,
.hero.hero-edu.is-away .hero-kicker i,
.hero.hero-edu.is-away .button-primary{
  animation:none!important;
}
.hero.hero-edu.is-away .hero-fx,
.hero.hero-edu.is-away .hero-path{
  opacity:.001; /* keep layout, stop paint cost without display:none jump */
  pointer-events:none;
}
.audience-section,
.home-directory,
.home-campus,
.page-cta{
  contain:layout style;
}
@media(max-width:1060px){
  .hero-path{width:min(280px,40vw);right:12px}
  .hero-path__node{min-width:96px;padding:8px 10px}
  .hero-path__node b{font-size:13px}
  .hero-fx__ring{opacity:.55}
}
@media(max-width:760px){
  .hero-path,.hero-fx__ring{display:none}
  .hero.hero-edu .hero-title-shine,
  .inner-hero-content h1{-webkit-text-fill-color:var(--ink);background:none;color:var(--ink);animation:none;filter:none}
}
@media(prefers-reduced-motion:reduce){
  .hero-fx__flash,.hero-fx__aurora,.hero-fx__rays,.hero-fx__dust,.hero-fx__ring,
  .hero-path__glow,.hero-path__line::after,.hero-path__node,
  .hero.hero-edu .hero-kicker,.hero.hero-edu .hero-kicker i,
  .hero.hero-edu .hero-title-line,.hero.hero-edu .hero-title-shine,
  .hero.hero-edu .hero-summary,.hero.hero-edu .hero-actions,.hero.hero-edu .hero-facts,
  .hero.hero-edu .button-primary,.inner-hero::before,.inner-hero-content h1{animation:none!important}
  .hero.hero-edu .hero-title-line,.hero.hero-edu .hero-title-shine,
  .hero.hero-edu .hero-summary,.hero.hero-edu .hero-actions,.hero.hero-edu .hero-facts{opacity:1;filter:none;transform:none}
}

/* ========== Dora-style education landing ========== */
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

.page-edu-landing .eland-wrap {
  width: var(--page);
  margin: 0 auto;
}

.page-edu-landing {
  background: var(--paper);
}
.page-edu-landing .eland-hero {
  position: relative;
  isolation: isolate;
  min-height: min(72svh, 680px);
  padding: calc(var(--header-height) + 48px) 0 56px;
  color: var(--ink);
  /* 瓷白底 + 雾蓝 / 薄荷 / 苔绿色块拼贴，留白充足、对比干净 */
  background:
    radial-gradient(120% 95% at 108% -8%, #8eb9cc 0%, transparent 44%),
    radial-gradient(95% 85% at -8% 18%, #a8cfc4 0%, transparent 42%),
    radial-gradient(90% 80% at 96% 108%, #6f9f94 0%, transparent 46%),
    radial-gradient(75% 70% at 18% 105%, #c4d8e6 0%, transparent 44%),
    radial-gradient(55% 50% at 52% 42%, #f4f9fb 0%, transparent 58%),
    linear-gradient(168deg, #f7fbfd 0%, #eaf3f5 38%, #e5f0ec 72%, #edf4f6 100%);
  overflow: hidden;
}
.page-edu-landing .eland-hero__fx {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}
.page-edu-landing .eland-hero__aurora {
  position: absolute;
  inset: -20% -14% -18% 22%;
  background:
    radial-gradient(ellipse 50% 46% at 78% 24%, rgba(142, 185, 204, .35), transparent 68%),
    radial-gradient(ellipse 44% 40% at 36% 78%, rgba(111, 159, 148, .22), transparent 70%),
    conic-gradient(from 200deg at 62% 44%, transparent 0 52%, rgba(58, 117, 100, .14) 66%, rgba(30, 90, 108, .12) 80%, transparent 94%);
  opacity: .85;
  filter: blur(18px);
  animation: eduAurora 10s ease-in-out infinite alternate;
  will-change: transform;
}
.page-edu-landing .eland-hero__ring {
  position: absolute;
  right: 8%;
  top: 22%;
  width: min(380px, 40vw);
  aspect-ratio: 1;
  border-radius: 50%;
  border: 0;
  background: radial-gradient(circle, rgba(142, 185, 204, .28) 0%, rgba(142, 185, 204, .08) 42%, transparent 70%);
  box-shadow: none;
  filter: blur(12px);
  animation: eduAurora 12s ease-in-out infinite alternate;
  will-change: transform;
}
.page-edu-landing .eland-hero__ring--b {
  right: 18%;
  top: 36%;
  width: min(240px, 26vw);
  background: radial-gradient(circle, rgba(111, 159, 148, .26) 0%, rgba(111, 159, 148, .06) 45%, transparent 72%);
  animation-duration: 9s;
  animation-direction: reverse;
}
.page-edu-landing .eland-hero__dust {
  position: absolute;
  inset: 0;
  background-image: radial-gradient(#1e5a6c 1px, transparent 1.2px);
  background-size: 8px 8px;
  opacity: .045;
  mask-image: radial-gradient(circle at 72% 42%, #000 8%, transparent 68%);
  -webkit-mask-image: radial-gradient(circle at 72% 42%, #000 8%, transparent 68%);
}
.page-edu-landing .eland-hero__grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(280px, .95fr);
  gap: clamp(24px, 4vw, 48px);
  align-items: center;
}
.page-edu-landing .eland-hero__copy {
  position: relative;
  z-index: 2;
}
.page-edu-landing .eland-kicker {
  display: inline-flex;
  align-items: center;
  margin: 0 0 16px;
  padding: 7px 12px;
  border-radius: 8px;
  border: 1px solid rgba(42, 95, 110, .22);
  background: rgba(255, 255, 255, .78);
  color: var(--primary);
  font-size: 13px;
  font-weight: 800;
}
.page-edu-landing .eland-hero h1 {
  max-width: 12em;
  margin: 0 0 18px;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: clamp(36px, 5.2vw, 64px);
  line-height: 1.18;
  font-weight: 800;
}
.page-edu-landing .eland-hero__brand,
.page-edu-landing .eland-hero__sub {
  display: block;
}
.page-edu-landing .eland-hero__brand {
  margin-bottom: 6px;
  background: linear-gradient(115deg, #1e2a30 6%, #2a5f6e 36%, #3f6f5f 62%, #a67c3d 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter:
    drop-shadow(0 1px 0 rgba(255, 255, 255, .9))
    drop-shadow(0 3px 0 rgba(28, 70, 82, .18))
    drop-shadow(0 12px 22px rgba(42, 95, 110, .18));
}
.page-edu-landing .eland-hero__sub {
  font-size: .72em;
  letter-spacing: .02em;
  background: linear-gradient(105deg, #3f6f5f 0%, #1e2a30 48%, #2a5f6e 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter:
    drop-shadow(0 1px 0 rgba(255, 255, 255, .65))
    drop-shadow(0 8px 16px rgba(63, 111, 95, .16));
}
.page-edu-landing .eland-lead {
  max-width: 30em;
  margin: 0 0 22px;
  color: var(--ink-soft);
  font-size: clamp(15px, 1.4vw, 17px);
  line-height: 1.85;
}
.page-edu-landing .eland-hero__points {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0 0 28px;
  padding: 0;
  list-style: none;
}
.page-edu-landing .eland-hero__points li {
  padding: 9px 14px;
  border-radius: 10px;
  border: 1px solid rgba(42, 95, 110, .16);
  background: rgba(255, 255, 255, .82);
  color: var(--primary-deep);
  font-size: 13px;
  font-weight: 700;
  box-shadow: 0 8px 18px rgba(30, 42, 48, .05);
}
.page-edu-landing .eland-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

/* Hero 右侧：教育感动效 */
.page-edu-landing .eland-hero__visual {
  position: relative;
  min-height: min(480px, 58vh);
  display: grid;
  place-items: center;
}
.page-edu-landing .eland-orbit {
  position: relative;
  width: min(420px, 92%);
  aspect-ratio: 1;
  display: grid;
  place-items: center;
}
.page-edu-landing .eland-orbit__core {
  position: relative;
  z-index: 3;
  width: 176px;
  height: 176px;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  text-align: center;
  background:
    radial-gradient(circle at 38% 28%, rgba(255, 255, 255, .98), rgba(232, 242, 244, .94)),
    linear-gradient(145deg, #fff, #e4eef0);
  border: 1px solid rgba(30, 90, 108, .16);
  box-shadow:
    0 16px 36px rgba(26, 40, 48, .1),
    0 0 0 12px rgba(142, 185, 204, .1),
    0 0 0 28px rgba(111, 159, 148, .06);
  animation: elandCorePulse 4.2s ease-in-out infinite;
  overflow: visible;
}
.page-edu-landing .eland-orbit__carousel {
  position: relative;
  width: 72px;
  height: 72px;
  flex: 0 0 auto;
}
.page-edu-landing .eland-orbit__carousel span {
  position: absolute;
  left: 0;
  top: 0;
  width: 72px;
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: 56px;
  font-weight: 800;
  line-height: 1;
  color: #1e5a6c;
  background: linear-gradient(115deg, #1e5a6c, #143f4c 55%, #3a7564);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity .4s ease, transform .4s cubic-bezier(.16, 1, .3, 1);
  pointer-events: none;
}
.page-edu-landing .eland-orbit__carousel span.is-active {
  opacity: 1;
  transform: none;
}
.page-edu-landing .eland-orbit__wish {
  display: block;
  margin: 0;
  color: var(--ink-soft);
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  letter-spacing: .18em;
  line-height: 1.2;
}
/* 静态同心轨道：只保留两圈，避免与背景装饰环缠在一起 */
.page-edu-landing .eland-orbit__ring {
  position: absolute;
  inset: 9%;
  border-radius: 50%;
  border: 1px dashed rgba(30, 90, 108, .22);
  background: transparent;
  animation: none;
  pointer-events: none;
}
.page-edu-landing .eland-orbit__ring--slow {
  inset: 24%;
  border-style: solid;
  border-width: 1px;
  border-color: rgba(58, 117, 100, .16);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .35);
  animation: none;
}
.page-edu-landing .eland-orbit__digits {
  position: absolute;
  inset: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  z-index: 2;
  animation: eduRing 32s linear infinite;
}
.page-edu-landing .eland-orbit__digits li {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 58px;
  height: 58px;
  margin: -29px 0 0 -29px;
  border-radius: 50%;
  display: grid;
  place-content: center;
  text-align: center;
  background: rgba(255, 255, 255, .96);
  border: 1px solid rgba(30, 90, 108, .14);
  box-shadow: 0 8px 20px rgba(26, 40, 48, .08);
  /* 仅负责环上定位；文字正向由 strong 反向旋转保证 */
  transform: rotate(calc(var(--d) * 60deg)) translateY(-176px);
  animation: elandDigitBob 3.6s ease-in-out infinite;
  animation-delay: calc(var(--d) * .18s);
}
.page-edu-landing .eland-orbit__digits strong {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: 22px;
  font-weight: 800;
  color: var(--primary);
  line-height: 1;
  animation: eduRingCounter 32s linear infinite;
}
.page-edu-landing .eland-orbit__digits span {
  display: none;
}
.page-edu-landing .eland-hero-path {
  position: absolute;
  right: 0;
  top: 50%;
  translate: 0 -50%;
  width: min(168px, 28vw);
  height: min(420px, 54vh);
  pointer-events: none;
}
.page-edu-landing .eland-hero-path__node {
  position: absolute;
  left: 18px;
  min-width: 118px;
  padding: 10px 12px 11px;
  border: 1px solid rgba(196, 71, 50, .2);
  border-radius: 12px;
  background: linear-gradient(145deg, rgba(255, 255, 255, .96), rgba(235, 227, 214, .94));
  box-shadow: 0 14px 32px rgba(42, 38, 34, .08);
  text-align: left;
  animation: elandNodeFloat 5.6s ease-in-out infinite;
  will-change: transform;
}
.page-edu-landing .eland-hero-path__node::before {
  content: "";
  position: absolute;
  left: -4px;
  top: 50%;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  translate: -50% -50%;
  background: var(--accent);
  box-shadow: 0 0 0 4px rgba(63, 111, 95, .2), 0 0 14px rgba(63, 111, 95, .35);
}
.page-edu-landing .eland-hero-path__node small {
  display: block;
  margin-bottom: 4px;
  color: var(--primary);
  font: 700 10px/1 Consolas, "SFMono-Regular", monospace;
  letter-spacing: .12em;
}
.page-edu-landing .eland-hero-path__node b {
  display: block;
  margin-bottom: 2px;
  font-size: 14px;
  color: var(--ink);
}
.page-edu-landing .eland-hero-path__node span {
  display: block;
  color: var(--ink-soft);
  font-size: 11px;
}
.page-edu-landing .eland-hero-path__node--1 { top: 4%; animation-delay: 0s; }
.page-edu-landing .eland-hero-path__node--2 { top: 30%; animation-delay: .35s; }
.page-edu-landing .eland-hero-path__node--2::before { background: var(--primary); box-shadow: 0 0 0 4px rgba(196, 71, 50, .22), 0 0 14px rgba(196, 71, 50, .35); }
.page-edu-landing .eland-hero-path__node--3 { top: 56%; animation-delay: .7s; }
.page-edu-landing .eland-hero-path__node--3::before { background: var(--amber); box-shadow: 0 0 0 4px rgba(184, 137, 69, .22), 0 0 14px rgba(184, 137, 69, .35); }
.page-edu-landing .eland-hero-path__node--4 { top: 82%; animation-delay: 1.05s; }

@keyframes elandCorePulse {
  0%, 100% {
    transform: scale(1);
    box-shadow:
      0 16px 36px rgba(26, 40, 48, .1),
      0 0 0 12px rgba(142, 185, 204, .1),
      0 0 0 28px rgba(111, 159, 148, .06);
  }
  50% {
    transform: scale(1.03);
    box-shadow:
      0 18px 42px rgba(30, 90, 108, .12),
      0 0 0 14px rgba(142, 185, 204, .14),
      0 0 0 32px rgba(111, 159, 148, .08);
  }
}
@keyframes elandDigitBob {
  0%, 100% { filter: none; }
  50% { filter: drop-shadow(0 6px 12px rgba(30, 90, 108, .16)); }
}
@keyframes elandNodeFloat {
  50% { transform: translateY(-6px); }
}
@keyframes eduRingCounter {
  to { transform: rotate(-360deg); }
}

.page-edu-landing .eland-hero.is-away .eland-orbit__digits,
.page-edu-landing .eland-hero.is-away .eland-orbit__digits li,
.page-edu-landing .eland-hero.is-away .eland-orbit__digits strong,
.page-edu-landing .eland-hero.is-away .eland-orbit__core,
.page-edu-landing .eland-hero.is-away .eland-orbit__ring,
.page-edu-landing .eland-hero.is-away .eland-hero__aurora,
.page-edu-landing .eland-hero.is-away .eland-hero__ring {
  animation-play-state: paused !important;
}

@media (max-width: 1060px) {
  .page-edu-landing .eland-hero__grid {
    grid-template-columns: 1fr;
  }
  .page-edu-landing .eland-hero__visual {
    min-height: 420px;
    max-width: 520px;
    margin: 0 auto;
  }
  .page-edu-landing .eland-hero-path {
    right: 4%;
    width: 140px;
  }
}
@media (max-width: 760px) {
  .page-edu-landing .eland-hero-path { display: none; }
  .page-edu-landing .eland-orbit {
    width: min(340px, 88vw);
  }
  .page-edu-landing .eland-orbit__core {
    width: 148px;
    height: 148px;
  }
  .page-edu-landing .eland-orbit__carousel,
  .page-edu-landing .eland-orbit__carousel span {
    width: 56px;
    height: 56px;
  }
  .page-edu-landing .eland-orbit__carousel span { font-size: 44px; }
  .page-edu-landing .eland-orbit__digits li {
    width: 50px;
    height: 50px;
    margin: -25px 0 0 -25px;
    transform: rotate(calc(var(--d) * 60deg)) translateY(-142px);
  }
  .page-edu-landing .eland-orbit__digits strong { font-size: 18px; }
  .page-edu-landing .eland-hero__ring { opacity: .5; }
}
@media (prefers-reduced-motion: reduce) {
  .page-edu-landing .eland-hero__aurora,
  .page-edu-landing .eland-hero__ring,
  .page-edu-landing .eland-orbit__ring,
  .page-edu-landing .eland-orbit__digits,
  .page-edu-landing .eland-orbit__core,
  .page-edu-landing .eland-orbit__digits li,
  .page-edu-landing .eland-orbit__digits strong,
  .page-edu-landing .eland-hero-path__node {
    animation: none !important;
  }
  .page-edu-landing .eland-orbit__digits li {
    transform: rotate(calc(var(--d) * 60deg)) translateY(-176px) rotate(calc(var(--d) * -60deg));
  }
  @media (max-width: 760px) {
    .page-edu-landing .eland-orbit__digits li {
      transform: rotate(calc(var(--d) * 60deg)) translateY(-142px) rotate(calc(var(--d) * -60deg));
    }
  }
  .page-edu-landing .eland-orbit__carousel span {
    position: static;
    opacity: 1;
    transform: none;
    display: inline;
    font-size: 16px;
    -webkit-text-fill-color: var(--red);
  }
  .page-edu-landing .eland-orbit__carousel { width: auto; height: auto; }
}

.page-edu-landing .eland-hero .button-ghost,
.page-edu-landing .eland-cta .button-ghost {
  color: var(--ink);
  border-color: rgba(42, 38, 34, .22);
  background: rgba(255, 255, 255, .45);
  backdrop-filter: blur(6px);
}
.page-edu-landing .eland-hero .button-ghost:hover,
.page-edu-landing .eland-cta .button-ghost:hover {
  background: #fff;
  border-color: var(--red);
  color: var(--red-deep);
}

.page-edu-landing .eland-section {
  padding: 96px 0;
  scroll-margin-top: var(--header-height);
  background:
    radial-gradient(ellipse 55% 40% at 100% 0%, rgba(142, 185, 204, .16), transparent 55%),
    radial-gradient(ellipse 40% 35% at 0% 100%, rgba(159, 196, 182, .14), transparent 50%),
    var(--mist);
}
.page-edu-landing .eland-section--alt {
  background:
    radial-gradient(ellipse 50% 45% at 8% 20%, rgba(111, 159, 148, .2), transparent 55%),
    radial-gradient(ellipse 48% 42% at 92% 80%, rgba(142, 185, 204, .22), transparent 55%),
    linear-gradient(180deg, #eaf3f2 0%, #f2f7f8 50%, #e8f0f3 100%);
  border-block: 1px solid rgba(30, 90, 108, .06);
}
.page-edu-landing #courses {
  background:
    radial-gradient(ellipse 60% 50% at 90% 10%, rgba(142, 185, 204, .2), transparent 58%),
    radial-gradient(ellipse 45% 40% at 10% 90%, rgba(58, 117, 100, .12), transparent 52%),
    linear-gradient(180deg, #f3f8f9, #eaf2f4);
}
.page-edu-landing #advantages {
  background:
    radial-gradient(ellipse 55% 45% at 12% 8%, rgba(196, 71, 50, .06), transparent 55%),
    radial-gradient(ellipse 50% 40% at 88% 92%, rgba(58, 117, 100, .14), transparent 55%),
    radial-gradient(ellipse 40% 35% at 50% 50%, rgba(142, 185, 204, .1), transparent 60%),
    linear-gradient(180deg, #f6fafb 0%, #eef4f5 100%);
}
.page-edu-landing .eland-head {
  max-width: 40em;
  margin-bottom: 40px;
}
.page-edu-landing .eland-head h2 {
  margin: 0 0 14px;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: clamp(28px, 3.6vw, 40px);
  line-height: 1.25;
  font-weight: 800;
}
.page-edu-landing .eland-head > p:last-child {
  margin: 0;
  color: var(--ink-soft);
}

.page-edu-landing .eland-grid {
  display: grid;
  gap: 18px;
}
.page-edu-landing .eland-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.page-edu-landing .eland-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.page-edu-landing .eland-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.page-edu-landing .eland-card {
  min-height: 168px;
  padding: 26px 24px;
  border: 1px solid rgba(42, 38, 34, .08);
  border-radius: 14px;
  background: rgba(255, 255, 255, .72);
  box-shadow: 0 10px 28px rgba(42, 38, 34, .04);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.page-edu-landing .eland-card:hover {
  transform: translateY(-4px);
  border-color: rgba(196, 71, 50, .28);
  box-shadow: 0 18px 36px rgba(196, 71, 50, .08);
}
.page-edu-landing .eland-card small {
  display: block;
  margin-bottom: 12px;
  color: var(--red);
  font-size: 12px;
  font-weight: 800;
}
.page-edu-landing .eland-card h3 {
  margin: 0 0 10px;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.3;
}
.page-edu-landing .eland-card p {
  margin: 0;
  color: var(--ink-soft);
  font-size: 14px;
}
.page-edu-landing .eland-card--accent {
  background: linear-gradient(160deg, rgba(196, 71, 50, .08), rgba(255, 255, 255, .85));
  border-color: rgba(196, 71, 50, .22);
}

/* 核心服务区：标题与卡片字色 */
.page-edu-landing #advantages .eland-head h2 {
  background: linear-gradient(115deg, #2a2622 10%, #c44732 48%, #3f6f5f 95%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.page-edu-landing #advantages .eland-head > p:last-child {
  color: #7a5348;
}
.page-edu-landing #advantages .eland-block__title span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.1em;
  padding: 4px 8px;
  border-radius: 8px;
  color: #fff;
  background: linear-gradient(135deg, #c44732, #9a3424);
  font-size: 12px;
  letter-spacing: .04em;
}
.page-edu-landing #advantages .eland-block__title h3 {
  background: linear-gradient(100deg, #c44732 0%, #9a3424 40%, #b88945 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.page-edu-landing #advantages .eland-card small {
  color: #c44732;
}
.page-edu-landing #advantages .eland-card h3 {
  color: #8f3a2c;
}
.page-edu-landing #advantages .eland-grid--5 .eland-card {
  padding: 20px 14px 18px;
}
.page-edu-landing #advantages .eland-mod__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}
.page-edu-landing #advantages .eland-grid--5 .eland-card h3 {
  flex: 1;
  min-width: 0;
  font-size: clamp(12px, .95vw, 14px);
  white-space: nowrap;
  letter-spacing: -.03em;
  line-height: 1.25;
  margin: 0;
  padding-top: 4px;
}
.page-edu-landing #advantages .eland-mod__icon {
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  color: #c44732;
  background:
    radial-gradient(circle at 30% 25%, rgba(255, 255, 255, .95), transparent 55%),
    linear-gradient(145deg, rgba(255, 244, 240, .98), rgba(246, 232, 226, .92));
  border: 1px solid rgba(196, 71, 50, .14);
  box-shadow: 0 8px 16px rgba(196, 71, 50, .08);
}
.page-edu-landing #advantages .eland-mod__icon svg {
  width: 22px;
  height: 22px;
  display: block;
}
.page-edu-landing #advantages .eland-grid--5 .eland-card:nth-child(2) .eland-mod__icon {
  color: #9a3424;
  background:
    radial-gradient(circle at 30% 25%, rgba(255, 255, 255, .95), transparent 55%),
    linear-gradient(145deg, rgba(255, 242, 238, .98), rgba(244, 228, 222, .92));
}
.page-edu-landing #advantages .eland-grid--5 .eland-card:nth-child(3) .eland-mod__icon {
  color: #3f6f5f;
  background:
    radial-gradient(circle at 30% 25%, rgba(255, 255, 255, .95), transparent 55%),
    linear-gradient(145deg, rgba(240, 248, 245, .98), rgba(228, 238, 234, .92));
  border-color: rgba(63, 111, 95, .16);
  box-shadow: 0 8px 16px rgba(63, 111, 95, .08);
}
.page-edu-landing #advantages .eland-grid--5 .eland-card:nth-child(4) .eland-mod__icon {
  color: #a66b2b;
  background:
    radial-gradient(circle at 30% 25%, rgba(255, 255, 255, .95), transparent 55%),
    linear-gradient(145deg, rgba(255, 248, 238, .98), rgba(246, 236, 220, .92));
  border-color: rgba(184, 137, 69, .18);
  box-shadow: 0 8px 16px rgba(184, 137, 69, .1);
}
.page-edu-landing #advantages .eland-grid--5 .eland-card:nth-child(5) .eland-mod__icon {
  color: #8a4a3a;
}
.page-edu-landing #advantages .eland-mod:hover .eland-mod__icon {
  transform: translateY(-2px);
  transition: transform .25s ease;
}
.page-edu-landing #advantages .eland-grid--3 .eland-mod {
  padding: 22px 18px 18px;
}
.page-edu-landing #advantages .eland-grid--3 .eland-mod h3 {
  flex: 1;
  min-width: 0;
  margin: 0;
  padding-top: 6px;
  font-size: clamp(16px, 1.4vw, 18px);
  line-height: 1.3;
  white-space: nowrap;
}
.page-edu-landing #advantages .eland-grid--3 .eland-mod .eland-mod__icon {
  width: 44px;
  height: 44px;
  border-radius: 14px;
}
.page-edu-landing #advantages .eland-grid--3 .eland-mod .eland-mod__icon svg {
  width: 24px;
  height: 24px;
}
.page-edu-landing #advantages .eland-grid--3 .eland-mod:nth-child(2) .eland-mod__icon {
  color: #9a3424;
}
.page-edu-landing #advantages .eland-grid--3 .eland-mod:nth-child(3) .eland-mod__icon {
  color: #3f6f5f;
  background:
    radial-gradient(circle at 30% 25%, rgba(255, 255, 255, .95), transparent 55%),
    linear-gradient(145deg, rgba(240, 248, 245, .98), rgba(228, 238, 234, .92));
  border-color: rgba(63, 111, 95, .16);
  box-shadow: 0 8px 16px rgba(63, 111, 95, .08);
}
.page-edu-landing #advantages .eland-grid--3 .eland-mod__lines span {
  font-size: 13px;
  padding: 12px 14px;
}
.page-edu-landing #advantages .eland-block__title span {
  display: none;
}

/* 3项专属特权：横排信息卡，区分五大模块 */
.page-edu-landing #advantages .eland-perk-grid {
  gap: 18px;
}
.page-edu-landing #advantages .eland-perk {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 16px;
  align-items: start;
  padding: 22px 20px;
  border-radius: 18px;
  border: 0;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--perk, #3f6f5f) 12%, #fff), #fff 48%, #eef4f5);
  box-shadow:
    0 14px 34px rgba(42, 38, 34, .06),
    inset 0 0 0 1px color-mix(in srgb, var(--perk, #3f6f5f) 22%, transparent);
  position: relative;
  overflow: hidden;
  transition: transform .25s ease, box-shadow .25s ease;
}
.page-edu-landing #advantages .eland-perk::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--perk, #3f6f5f), color-mix(in srgb, var(--perk, #3f6f5f) 40%, #b88945));
}
.page-edu-landing #advantages .eland-perk:hover {
  transform: translateY(-4px);
  box-shadow:
    0 20px 40px color-mix(in srgb, var(--perk, #3f6f5f) 16%, transparent),
    inset 0 0 0 1px color-mix(in srgb, var(--perk, #3f6f5f) 30%, transparent);
}
.page-edu-landing #advantages .eland-perk__icon {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  color: var(--perk, #3f6f5f);
  background: color-mix(in srgb, var(--perk, #3f6f5f) 12%, #fff);
  border: 1px dashed color-mix(in srgb, var(--perk, #3f6f5f) 35%, transparent);
}
.page-edu-landing #advantages .eland-perk__icon svg {
  width: 24px;
  height: 24px;
  display: block;
}
.page-edu-landing #advantages .eland-perk__body h3 {
  margin: 0 0 12px;
  color: var(--perk, #3f6f5f);
  font-size: clamp(17px, 1.5vw, 20px);
  font-weight: 800;
  line-height: 1.3;
}
.page-edu-landing #advantages .eland-perk__lines {
  display: grid;
  gap: 8px;
}
.page-edu-landing #advantages .eland-perk__lines span {
  display: block;
  padding: 9px 12px 9px 14px;
  border-radius: 999px;
  border: 0;
  background: rgba(255, 255, 255, .72);
  color: #5f534a;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.4;
  box-shadow: inset 3px 0 0 var(--perk, #3f6f5f);
}
@supports not (background: color-mix(in srgb, red 10%, white)) {
  .page-edu-landing #advantages .eland-perk {
    background: linear-gradient(135deg, #eef4f1, #fff 48%, #eef4f5);
    box-shadow: 0 14px 34px rgba(42, 38, 34, .06), inset 0 0 0 1px rgba(63, 111, 95, .18);
  }
  .page-edu-landing #advantages .eland-perk__icon {
    background: rgba(63, 111, 95, .1);
    border-color: rgba(63, 111, 95, .28);
  }
}
.page-edu-landing #advantages .eland-mod__lines {
  display: grid;
  gap: 8px;
}
.page-edu-landing #advantages .eland-mod__lines span {
  display: block;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(196, 71, 50, .12);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, .95), rgba(236, 245, 244, .88));
  color: #6f5c52;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.45;
  text-align: center;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8);
  transition: border-color .25s ease, background .25s ease, transform .25s ease;
}
.page-edu-landing #advantages .eland-mod:hover .eland-mod__lines span {
  border-color: rgba(196, 71, 50, .22);
  background: linear-gradient(145deg, #fff, rgba(250, 246, 240, .96));
}
.page-edu-landing #advantages .eland-mod__lines span:first-child {
  color: #8f3a2c;
  border-color: rgba(196, 71, 50, .18);
  background: linear-gradient(145deg, rgba(255, 248, 245, .98), rgba(246, 235, 230, .9));
}
.page-edu-landing #advantages .eland-grid--5 .eland-card:nth-child(3) .eland-mod__lines span:first-child {
  color: #3f6f5f;
  border-color: rgba(63, 111, 95, .2);
  background: linear-gradient(145deg, rgba(244, 250, 247, .98), rgba(231, 240, 236, .9));
}
.page-edu-landing #advantages .eland-grid--5 .eland-card:nth-child(4) .eland-mod__lines span:first-child {
  color: #a66b2b;
  border-color: rgba(184, 137, 69, .22);
  background: linear-gradient(145deg, rgba(255, 250, 242, .98), rgba(246, 239, 226, .9));
}
.page-edu-landing #advantages .eland-grid--5 .eland-card:nth-child(1) h3 { color: #c44732; }
.page-edu-landing #advantages .eland-grid--5 .eland-card:nth-child(2) h3 { color: #9a3424; }
.page-edu-landing #advantages .eland-grid--5 .eland-card:nth-child(3) h3 { color: #3f6f5f; }
.page-edu-landing #advantages .eland-grid--5 .eland-card:nth-child(4) h3 { color: #a66b2b; }
.page-edu-landing #advantages .eland-grid--5 .eland-card:nth-child(5) h3 { color: #8a4a3a; }
.page-edu-landing #advantages .eland-card--accent small {
  color: #9a3424;
}
.page-edu-landing #advantages .eland-card--accent h3 {
  color: #c44732;
}
.page-edu-landing #advantages .eland-card p {
  color: #6f5c52;
}
.page-edu-landing #advantages .eland-shield {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  position: relative;
}
.page-edu-landing #advantages .eland-shield::before {
  content: "×2";
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 2;
  translate: -50% -50%;
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .02em;
  color: #8a4a3a;
  background:
    radial-gradient(circle at 35% 30%, #fff8f0, #f3e7d8);
  box-shadow:
    0 10px 28px rgba(42, 38, 34, .1),
    inset 0 0 0 1px rgba(138, 74, 58, .2);
  pointer-events: none;
}
.page-edu-landing #advantages .eland-shield__card {
  position: relative;
  overflow: hidden;
  min-height: 210px;
  padding: 28px 28px 26px;
  border-radius: 22px;
  border: 0;
  background:
    linear-gradient(145deg, color-mix(in srgb, var(--g, #c44732) 16%, #fff) 0%, #fff 42%, #eef4f5 100%);
  box-shadow:
    0 18px 40px rgba(42, 38, 34, .07),
    inset 0 0 0 1px color-mix(in srgb, var(--g, #c44732) 22%, transparent);
  transition: transform .28s ease, box-shadow .28s ease;
}
.page-edu-landing #advantages .eland-shield__card:hover {
  transform: translateY(-6px);
  box-shadow:
    0 26px 48px color-mix(in srgb, var(--g, #c44732) 18%, transparent),
    inset 0 0 0 1px color-mix(in srgb, var(--g, #c44732) 32%, transparent);
}
.page-edu-landing #advantages .eland-shield__card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, var(--g, #c44732), color-mix(in srgb, var(--g, #c44732) 45%, #b88945));
}
.page-edu-landing #advantages .eland-shield__card::after {
  content: "";
  position: absolute;
  right: -40px;
  bottom: -48px;
  width: 160px;
  height: 160px;
  border-radius: 50%;
  background: radial-gradient(circle, color-mix(in srgb, var(--g, #c44732) 18%, transparent), transparent 68%);
  pointer-events: none;
}
.page-edu-landing #advantages .eland-shield__mark {
  position: absolute;
  right: 18px;
  top: 8px;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: clamp(72px, 8vw, 96px);
  font-weight: 900;
  line-height: 1;
  color: color-mix(in srgb, var(--g, #c44732) 12%, transparent);
  pointer-events: none;
  user-select: none;
}
.page-edu-landing #advantages .eland-shield__card h3 {
  position: relative;
  margin: 0 0 16px;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: clamp(28px, 3.2vw, 36px);
  font-weight: 900;
  line-height: 1.15;
  color: var(--g, #c44732);
}
.page-edu-landing #advantages .eland-shield__lines {
  position: relative;
  display: grid;
  gap: 8px;
  max-width: 280px;
}
.page-edu-landing #advantages .eland-shield__lines span {
  display: block;
  padding: 10px 14px;
  border-radius: 12px;
  background: rgba(255, 255, 255, .78);
  color: #5f534a;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  box-shadow: inset 3px 0 0 var(--g, #c44732);
}
@supports not (background: color-mix(in srgb, red 10%, white)) {
  .page-edu-landing #advantages .eland-shield__card {
    background: linear-gradient(145deg, #f8ece8, #fff 42%, #eef4f5);
    box-shadow: 0 18px 40px rgba(42, 38, 34, .07), inset 0 0 0 1px rgba(196, 71, 50, .18);
  }
  .page-edu-landing #advantages .eland-shield__card:nth-child(2) {
    background: linear-gradient(145deg, #eef4f1, #fff 42%, #eef4f5);
    box-shadow: 0 18px 40px rgba(42, 38, 34, .07), inset 0 0 0 1px rgba(63, 111, 95, .18);
  }
  .page-edu-landing #advantages .eland-shield__mark { color: rgba(196, 71, 50, .1); }
  .page-edu-landing #advantages .eland-shield__card:nth-child(2) .eland-shield__mark { color: rgba(63, 111, 95, .1); }
}
@media (max-width: 760px) {
  .page-edu-landing #advantages .eland-shield {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .page-edu-landing #advantages .eland-shield::before { display: none; }
  .page-edu-landing #advantages .eland-shield__card { min-height: 0; }
}
.page-edu-landing #advantages .eland-goal p {
  background: linear-gradient(115deg, #9a3424 0%, #c44732 42%, #3f6f5f 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* 核心服务：滚动显现 */
.page-edu-landing #advantages .eland-reveal {
  opacity: 0;
  transform: translateY(36px);
  filter: blur(4px);
  transition:
    opacity .7s cubic-bezier(.16, 1, .3, 1),
    transform .7s cubic-bezier(.16, 1, .3, 1),
    filter .7s ease,
    box-shadow .35s ease,
    border-color .35s ease;
  transition-delay: calc(var(--r, 0) * .08s);
}
.page-edu-landing #advantages .eland-block.eland-reveal {
  transform: translateY(28px);
  filter: none;
}
.page-edu-landing #advantages .eland-block__title {
  opacity: 0;
  transform: translateX(-16px);
  transition:
    opacity .55s cubic-bezier(.16, 1, .3, 1),
    transform .55s cubic-bezier(.16, 1, .3, 1);
}
.page-edu-landing #advantages .eland-block.is-in .eland-block__title {
  opacity: 1;
  transform: none;
}
.page-edu-landing #advantages .eland-reveal.is-in,
.page-edu-landing #advantages .eland-block.is-in > .eland-reveal,
.page-edu-landing #advantages .eland-block.is-in .eland-reveal {
  opacity: 1;
  transform: none;
  filter: none;
}
.page-edu-landing #advantages .eland-card.eland-reveal.is-in,
.page-edu-landing #advantages .eland-shield__card.eland-reveal.is-in {
  transition:
    opacity .7s cubic-bezier(.16, 1, .3, 1),
    transform .7s cubic-bezier(.16, 1, .3, 1),
    filter .7s ease,
    box-shadow .35s ease,
    border-color .35s ease;
}
.page-edu-landing #advantages .eland-track::before {
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 1.05s cubic-bezier(.16, 1, .3, 1) .12s;
}
.page-edu-landing #advantages .eland-block.is-in .eland-track::before {
  transform: scaleX(1);
}
.page-edu-landing #advantages .eland-goal.eland-reveal {
  transform: translateY(24px) scale(.97);
}
.page-edu-landing #advantages .eland-goal.eland-reveal.is-in {
  transform: none;
  animation: elandGoalPulse 2.8s ease-in-out .5s 1;
}
@keyframes elandGoalPulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(196, 71, 50, 0); }
  40% { box-shadow: 0 0 0 12px rgba(196, 71, 50, .08); }
}
@media (max-width: 760px) {
  .page-edu-landing #advantages .eland-track::before { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .page-edu-landing #advantages .eland-reveal,
  .page-edu-landing #advantages .eland-block__title,
  .page-edu-landing #advantages .eland-track::before {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    transition: none !important;
    animation: none !important;
  }
}

.page-edu-landing .eland-stage {
  display: grid;
  gap: 18px;
  grid-template-columns: 1.15fr .85fr;
  align-items: stretch;
}
.page-edu-landing .eland-stage__panel {
  min-height: 280px;
  padding: 36px 32px;
  border-radius: 16px;
  border: 1px dashed rgba(30, 90, 108, .22);
  background:
    radial-gradient(ellipse 60% 50% at 70% 30%, rgba(142, 185, 204, .18), transparent 60%),
    radial-gradient(ellipse 50% 45% at 20% 80%, rgba(111, 159, 148, .14), transparent 55%),
    rgba(255, 255, 255, .62);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.page-edu-landing .eland-stage__label {
  margin: 0 0 12px;
  color: var(--red);
  font-size: 12px;
  font-weight: 800;
}
.page-edu-landing .eland-stage__panel h3 {
  margin: 0 0 12px;
  font-size: 26px;
  font-weight: 800;
}
.page-edu-landing .eland-stage__panel p {
  margin: 0;
  color: var(--ink-soft);
  max-width: 28em;
}

.page-edu-landing .eland-compare {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.page-edu-landing .eland-list {
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}
.page-edu-landing .eland-list li {
  position: relative;
  padding: 8px 0 8px 18px;
  color: var(--ink-soft);
  font-size: 14px;
  border-bottom: 1px solid rgba(42, 38, 34, .06);
}
.page-edu-landing .eland-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 16px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--red);
}

.page-edu-landing .eland-more {
  margin: 28px 0 0;
}

.page-edu-landing .eland-about-stack {
  display: grid;
  gap: 20px;
}
.page-edu-landing .eland-about {
  padding: 36px 32px;
  border-radius: 16px;
  border: 1px solid rgba(42, 38, 34, .08);
  background: rgba(255, 255, 255, .7);
  scroll-margin-top: calc(var(--header-height) + 16px);
}
.page-edu-landing .eland-about small {
  display: block;
  margin-bottom: 10px;
  color: var(--red);
  font-size: 12px;
  font-weight: 800;
}
.page-edu-landing .eland-about h3 {
  margin: 0 0 16px;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: 28px;
  font-weight: 800;
}
.page-edu-landing .eland-empty {
  margin: 0;
  min-height: 120px;
  padding: 24px;
  border-radius: 10px;
  border: 1px dashed rgba(42, 38, 34, .16);
  background: rgba(236, 245, 247, .7);
  color: var(--ink-soft);
}

.page-edu-landing .eland-cta {
  padding: 100px 0;
  text-align: center;
  color: #fff;
  background:
    radial-gradient(ellipse 55% 70% at 50% 0%, rgba(255, 255, 255, .14), transparent 55%),
    radial-gradient(ellipse 40% 50% at 90% 80%, rgba(142, 185, 204, .25), transparent 50%),
    linear-gradient(145deg, #143f4c 0%, #1e5a6c 42%, #3a7564 100%);
  scroll-margin-top: var(--header-height);
}
.page-edu-landing .eland-cta .eyebrow { color: rgba(255, 255, 255, .78); }
.page-edu-landing .eland-cta h2 {
  margin: 0 0 14px;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 800;
}
.page-edu-landing .eland-cta > .eland-wrap > p {
  margin: 0 auto 28px;
  max-width: 32em;
  color: rgba(255, 255, 255, .86);
}
.page-edu-landing .eland-cta .eland-actions { justify-content: center; }
.page-edu-landing .eland-cta .button-primary {
  background: #fff;
  color: var(--primary-deep);
  box-shadow: 0 12px 30px rgba(0, 0, 0, .18);
}
.page-edu-landing .eland-cta .button-primary:hover {
  background: #eef4f5;
}
.page-edu-landing .eland-cta .button-ghost {
  color: #fff;
  border-color: rgba(255, 255, 255, .45);
  background: rgba(255, 255, 255, .08);
}
.page-edu-landing .eland-cta .button-ghost:hover {
  background: rgba(255, 255, 255, .18);
  color: #fff;
  border-color: #fff;
}

.page-edu-landing #top {
  scroll-margin-top: 0;
}

/* —— 53621 服务特点：品牌数字模型 —— */
.page-edu-landing .eland-features {
  position: relative;
  overflow: hidden;
  padding: 110px 0;
  background:
    radial-gradient(ellipse 55% 45% at 10% 15%, rgba(142, 185, 204, .28), transparent 58%),
    radial-gradient(ellipse 50% 40% at 90% 85%, rgba(111, 159, 148, .26), transparent 55%),
    radial-gradient(ellipse 40% 35% at 50% 40%, rgba(255, 255, 255, .55), transparent 60%),
    linear-gradient(180deg, #e4eef2 0%, #eef5f4 45%, #e2ecea 100%);
}
.page-edu-landing .eland-features__glow {
  position: absolute;
  inset: 8% 18% auto;
  height: 220px;
  background: radial-gradient(ellipse at center, rgba(142, 185, 204, .28), transparent 70%);
  filter: blur(8px);
  pointer-events: none;
  animation: elandGlowPulse 5.5s ease-in-out infinite;
}
@keyframes elandGlowPulse {
  0%, 100% { opacity: .55; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.08); }
}

.page-edu-landing .eland-head--center {
  max-width: 42em;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.page-edu-landing .eland-model {
  position: relative;
  margin-top: 12px;
}
.page-edu-landing .eland-model__rail {
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: clamp(10px, 2.2vw, 28px);
  margin: 8px auto 10px;
  padding: 8px 0 18px;
  position: relative;
}
.page-edu-landing .eland-model__rail::before {
  content: "";
  position: absolute;
  left: 12%;
  right: 12%;
  bottom: 10px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(196, 71, 50, .35), rgba(63, 111, 95, .3), transparent);
}
.page-edu-landing .eland-model__rail span {
  position: relative;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: clamp(52px, 8vw, 96px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: .02em;
  background: linear-gradient(160deg, #2a2622 8%, #c44732 42%, #9a3424 68%, #b88945 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  opacity: 0;
  transform: translateY(28px) scale(.92);
  filter: blur(4px);
  transition: opacity .7s cubic-bezier(.16, 1, .3, 1), transform .7s cubic-bezier(.16, 1, .3, 1), filter .7s ease;
  transition-delay: calc(var(--i) * .08s);
  text-shadow: none;
}
.page-edu-landing .eland-model.is-in .eland-model__rail span {
  opacity: 1;
  transform: none;
  filter: none;
}
.page-edu-landing .eland-model__rail span::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -14px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--red);
  transform: translateX(-50%) scale(0);
  box-shadow: 0 0 0 0 rgba(196, 71, 50, .35);
  transition: transform .45s ease calc(var(--i) * .08s + .25s);
}
.page-edu-landing .eland-model.is-in .eland-model__rail span::after {
  transform: translateX(-50%) scale(1);
  animation: elandDotPulse 2.4s ease-in-out calc(var(--i) * .15s + .6s) infinite;
}
@keyframes elandDotPulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(196, 71, 50, .35); }
  50% { box-shadow: 0 0 0 8px rgba(196, 71, 50, 0); }
}
.page-edu-landing .eland-model__caption {
  margin: 0 0 36px;
  text-align: center;
  color: var(--ink-soft);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .18em;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity .55s ease .35s, transform .55s ease .35s;
}
.page-edu-landing .eland-model.is-in .eland-model__caption {
  opacity: 1;
  transform: none;
}

.page-edu-landing .eland-digits {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
}
.page-edu-landing .eland-digit {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 220px;
  padding: 0;
  border: 1px solid rgba(42, 38, 34, .08);
  border-radius: 18px;
  background:
    linear-gradient(165deg, rgba(255, 255, 255, .95), rgba(250, 246, 240, .88));
  box-shadow: 0 14px 34px rgba(42, 38, 34, .06);
  overflow: hidden;
  opacity: 0;
  transform: translateY(36px);
  transition:
    opacity .65s cubic-bezier(.16, 1, .3, 1),
    transform .65s cubic-bezier(.16, 1, .3, 1),
    box-shadow .35s ease,
    border-color .35s ease;
  transition-delay: calc(var(--i) * .1s + .15s);
}
.page-edu-landing .eland-model.is-in .eland-digit {
  opacity: 1;
  transform: none;
}
.page-edu-landing .eland-digit::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, var(--red), var(--gold), var(--accent));
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .55s cubic-bezier(.16, 1, .3, 1) calc(var(--i) * .1s + .35s);
}
.page-edu-landing .eland-model.is-in .eland-digit::before {
  transform: scaleX(1);
}
.page-edu-landing .eland-digit::after {
  content: "";
  position: absolute;
  right: -20%;
  bottom: -30%;
  width: 70%;
  height: 70%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(196, 71, 50, .1), transparent 68%);
  pointer-events: none;
  transition: transform .5s ease, opacity .5s ease;
}
.page-edu-landing .eland-digit:hover {
  border-color: rgba(196, 71, 50, .28);
  box-shadow: 0 22px 48px rgba(196, 71, 50, .14);
  transform: translateY(-8px);
}
.page-edu-landing .eland-digit:hover::after {
  transform: scale(1.25);
  opacity: 1;
}
.page-edu-landing .eland-digit__num {
  position: relative;
  padding: 22px 20px 8px;
}
.page-edu-landing .eland-digit__num b {
  position: relative;
  z-index: 1;
  display: block;
  margin: 0;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: clamp(44px, 4.6vw, 64px);
  line-height: 1;
  font-weight: 800;
  background: linear-gradient(145deg, #c44732, #9a3424 55%, #b88945);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.page-edu-landing .eland-digit__num i {
  position: absolute;
  left: 14px;
  top: 10px;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: rgba(196, 71, 50, .08);
  animation: elandOrbFloat 3.8s ease-in-out infinite;
  animation-delay: calc(var(--i) * .2s);
}
@keyframes elandOrbFloat {
  0%, 100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-6px) scale(1.06); }
}
.page-edu-landing .eland-digit__body {
  position: relative;
  z-index: 1;
  padding: 4px 20px 24px;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.page-edu-landing .eland-digit__body h3 {
  margin: 0 0 10px;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.35;
}
.page-edu-landing .eland-digit__body p {
  margin: 0;
  color: var(--ink-soft);
  font-size: 13px;
  line-height: 1.7;
}

.page-edu-landing .eland-slogan {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 36px 0 0;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: center;
}
.page-edu-landing .eland-slogan span {
  display: inline-flex;
  align-items: center;
  padding: 10px 16px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 700;
  color: var(--red-deep);
  background: rgba(255, 255, 255, .72);
  border: 1px solid rgba(196, 71, 50, .16);
  box-shadow: 0 8px 20px rgba(42, 38, 34, .04);
  opacity: 0;
  transform: translateY(12px);
  transition: opacity .5s ease, transform .5s ease, background .25s ease, border-color .25s ease;
  transition-delay: calc(var(--j, 0) * .06s + .4s);
}
.page-edu-landing .eland-slogan span:nth-child(1) { --j: 0; }
.page-edu-landing .eland-slogan span:nth-child(2) { --j: 1; }
.page-edu-landing .eland-slogan span:nth-child(3) { --j: 2; }
.page-edu-landing .eland-slogan span:nth-child(4) { --j: 3; }
.page-edu-landing .eland-slogan span:nth-child(5) { --j: 4; }
.page-edu-landing .eland-model.is-in ~ .eland-slogan span,
.page-edu-landing .eland-features.is-in .eland-slogan span {
  opacity: 1;
  transform: none;
}
.page-edu-landing .eland-slogan span:hover {
  background: #fff;
  border-color: rgba(196, 71, 50, .35);
}

.page-edu-landing .eland-grid--5 {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.page-edu-landing .eland-block + .eland-block {
  margin-top: 48px;
}
.page-edu-landing .eland-block__title {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 18px;
}
.page-edu-landing .eland-block__title span {
  color: var(--red);
  font-size: 13px;
  font-weight: 800;
}
.page-edu-landing .eland-block__title h3 {
  margin: 0;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: clamp(22px, 2.4vw, 28px);
  font-weight: 800;
}

.page-edu-landing .eland-track {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
  margin: 8px 0 0;
  padding: 0;
  list-style: none;
  position: relative;
}
.page-edu-landing .eland-track::before {
  content: "";
  position: absolute;
  left: 7%;
  right: 7%;
  top: 28px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(
    90deg,
    #c44732 0%,
    #9a3424 18%,
    #b88945 36%,
    #3f6f5f 55%,
    #8a4a3a 78%,
    #c44732 100%
  );
  opacity: .42;
  pointer-events: none;
  z-index: 0;
}
.page-edu-landing .eland-track li {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  padding: 0 4px;
  text-align: center;
  transition: transform .3s ease;
}
.page-edu-landing .eland-track li:hover {
  transform: translateY(-5px);
}
.page-edu-landing .eland-track em {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  font-style: normal;
  font-size: 15px;
  font-weight: 800;
  letter-spacing: .04em;
  color: #fff;
  background:
    radial-gradient(circle at 32% 28%, rgba(255, 255, 255, .35), transparent 45%),
    linear-gradient(145deg, color-mix(in srgb, var(--step, #c44732) 78%, #fff), var(--step, #c44732));
  box-shadow:
    0 0 0 6px color-mix(in srgb, var(--step, #c44732) 14%, #fff),
    0 10px 22px color-mix(in srgb, var(--step, #c44732) 28%, transparent);
}
.page-edu-landing .eland-track strong {
  display: block;
  width: 100%;
  padding: 12px 8px;
  border-radius: 14px;
  font-size: clamp(13px, 1.15vw, 15px);
  font-weight: 800;
  line-height: 1.35;
  color: var(--step, #c44732);
  background:
    linear-gradient(180deg, #fff 0%, color-mix(in srgb, var(--step, #c44732) 7%, #fff) 100%);
  box-shadow:
    0 10px 24px rgba(42, 38, 34, .06),
    inset 0 3px 0 var(--step, #c44732);
}
@supports not (background: color-mix(in srgb, red 10%, white)) {
  .page-edu-landing .eland-track em {
    background: linear-gradient(145deg, #d86a56, #c44732);
    box-shadow: 0 0 0 6px rgba(196, 71, 50, .12), 0 10px 22px rgba(196, 71, 50, .22);
  }
  .page-edu-landing .eland-track strong {
    background: linear-gradient(180deg, #fff, #eef4f5);
  }
}

.page-edu-landing .eland-goal {
  padding: 36px 28px;
  text-align: center;
  border-radius: 16px;
  border: 1px solid rgba(196, 71, 50, .2);
  background:
    radial-gradient(ellipse 60% 80% at 50% 0%, rgba(196, 71, 50, .12), transparent 60%),
    rgba(255, 255, 255, .75);
}
.page-edu-landing .eland-goal p {
  margin: 0;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: clamp(22px, 3vw, 32px);
  font-weight: 800;
  line-height: 1.45;
  color: var(--ink);
}

@media (max-width: 1060px) {
  .page-edu-landing .eland-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .page-edu-landing .eland-grid--5 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .page-edu-landing .eland-digits { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .page-edu-landing .eland-digit:last-child { grid-column: 1 / -1; max-width: 360px; justify-self: center; width: 100%; }
  .page-edu-landing .eland-track { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px 12px; }
  .page-edu-landing .eland-track::before { display: none; }
  .page-edu-landing .eland-stage { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .page-edu-landing .eland-hero { padding: calc(var(--header-height) + 36px) 0 48px; min-height: auto; }
  .page-edu-landing .eland-section,
  .page-edu-landing .eland-features,
  .page-edu-landing .eland-cta { padding: 72px 0; }
  .page-edu-landing .eland-grid--2,
  .page-edu-landing .eland-grid--3,
  .page-edu-landing .eland-grid--4,
  .page-edu-landing .eland-grid--5,
  .page-edu-landing .eland-digits,
  .page-edu-landing .eland-track,
  .page-edu-landing .eland-compare { grid-template-columns: 1fr; }
  .page-edu-landing .eland-digit:last-child { max-width: none; }
  .page-edu-landing .eland-track { gap: 14px; max-width: 320px; margin-inline: auto; }
  .page-edu-landing .eland-track li {
    flex-direction: row;
    text-align: left;
    gap: 14px;
  }
  .page-edu-landing .eland-track em { flex: 0 0 auto; }
  .page-edu-landing .eland-track strong { flex: 1; padding: 14px 16px; }
  .page-edu-landing .eland-about { padding: 28px 22px; }
  .page-edu-landing .eland-model__rail { gap: 8px; }
  .page-edu-landing .eland-digit:hover { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .page-edu-landing .eland-features__glow,
  .page-edu-landing .eland-digit__num i,
  .page-edu-landing .eland-model__rail span::after { animation: none !important; }
  .page-edu-landing .eland-model__rail span,
  .page-edu-landing .eland-digit,
  .page-edu-landing .eland-slogan span,
  .page-edu-landing .eland-model__caption {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    transition: none !important;
  }
  .page-edu-landing .eland-digit::before { transform: none !important; }
}

/* —— 个性化陪跑：六阶全程（每阶差异化） —— */
.page-edu-landing .eland-coach {
  position: relative;
  background:
    radial-gradient(ellipse 52% 42% at 6% 10%, rgba(142, 185, 204, .22), transparent 55%),
    radial-gradient(ellipse 48% 38% at 94% 90%, rgba(111, 159, 148, .2), transparent 55%),
    radial-gradient(ellipse 35% 30% at 50% 50%, rgba(255, 255, 255, .5), transparent 65%),
    linear-gradient(180deg, #f4f9fa 0%, #eaf2f3 100%);
}
.page-edu-landing .eland-coach .eland-head h2 {
  background: linear-gradient(115deg, #2a2622 8%, #c44732 50%, #3f6f5f 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.page-edu-landing .eland-coach-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  position: relative;
}
.page-edu-landing .eland-coach-step {
  --c: #c44732;
  position: relative;
  padding: 26px 24px 24px;
  border-radius: 18px;
  overflow: hidden;
  transition: transform .3s ease, box-shadow .3s ease;
}
.page-edu-landing .eland-coach-step:hover { transform: translateY(-5px); }
.page-edu-landing .eland-coach-step h3 {
  margin: 0 0 14px;
  font-size: clamp(18px, 2vw, 22px);
  font-weight: 800;
  line-height: 1.3;
  color: var(--c);
}
.page-edu-landing .eland-coach-step__top {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}
.page-edu-landing .eland-coach-step__num {
  display: inline-grid;
  place-items: center;
  min-width: 2.4em;
  height: 2.4em;
  padding: 0 8px;
  border-radius: 10px;
  color: #fff;
  background: var(--c);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .04em;
}
.page-edu-landing .eland-coach-step__icon {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  color: var(--c);
  background: color-mix(in srgb, var(--c) 12%, #fff);
  flex: 0 0 auto;
}
.page-edu-landing .eland-coach-step__icon svg {
  width: 22px;
  height: 22px;
  display: block;
}
.page-edu-landing .eland-coach-step ul,
.page-edu-landing .eland-coach-step ol {
  margin: 0;
  padding: 0;
  list-style: none;
}
.page-edu-landing .eland-coach-step li {
  color: #6f5c52;
  font-size: 14px;
  line-height: 1.65;
}

/* 01 档案夹：顶栏色带 + 圆角档案感 */
.page-edu-landing .eland-coach-step--dossier {
  padding-top: 0;
  background: linear-gradient(180deg, #fff, #f0f6f7);
  box-shadow: 0 14px 34px rgba(42, 38, 34, .06), inset 0 0 0 1px rgba(196, 71, 50, .12);
}
.page-edu-landing .eland-coach-step--dossier::before {
  content: "";
  display: block;
  height: 8px;
  margin: 0 -24px 20px;
  background: linear-gradient(90deg, #c44732, #b88945 55%, #c44732);
}
.page-edu-landing .eland-coach-step--dossier .eland-coach-step__num { border-radius: 50%; }
.page-edu-landing .eland-coach-step--dossier .eland-coach-step__top { justify-content: space-between; }
.page-edu-landing .eland-coach-step--dossier li {
  position: relative;
  margin-bottom: 8px;
  padding: 10px 12px 10px 14px;
  border-radius: 10px;
  background: rgba(255, 255, 255, .85);
  box-shadow: inset 3px 0 0 var(--c);
}
.page-edu-landing .eland-coach-step--dossier li:last-child { margin-bottom: 0; }

/* 02 叠纸精修：双层纸片 + 虚线 */
.page-edu-landing .eland-coach-step--resume {
  background: #fff;
  border: 1px dashed color-mix(in srgb, var(--c) 35%, transparent);
  box-shadow:
    7px 9px 0 -1px #f0e2d4,
    7px 9px 0 0 rgba(154, 52, 36, .16),
    0 16px 36px rgba(154, 52, 36, .08);
}
.page-edu-landing .eland-coach-step--resume .eland-coach-step__sheet { display: none; }
.page-edu-landing .eland-coach-step--resume .eland-coach-step__top {
  flex-wrap: wrap;
  margin-bottom: 6px;
}
.page-edu-landing .eland-coach-step--resume .eland-coach-step__top h3 {
  flex: 1;
  min-width: 8em;
  margin: 0;
}
.page-edu-landing .eland-coach-step--resume .eland-coach-step__icon {
  margin-left: auto;
  border-radius: 50%;
  border: 1px dashed color-mix(in srgb, var(--c) 40%, transparent);
  background: #fff;
}
.page-edu-landing .eland-coach-step--resume li {
  padding: 11px 0;
  border-bottom: 1px dashed rgba(154, 52, 36, .18);
  padding-left: 22px;
  position: relative;
}
.page-edu-landing .eland-coach-step--resume li:last-child { border-bottom: 0; }
.page-edu-landing .eland-coach-step--resume li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 17px;
  width: 10px;
  height: 10px;
  border: 2px solid var(--c);
  border-radius: 2px;
  transform: rotate(45deg);
}

/* 03 投递轨道：墨绿 + 脉冲点 + 胶囊列表 */
.page-edu-landing .eland-coach-step--apply {
  background:
    radial-gradient(ellipse 70% 60% at 100% 0%, color-mix(in srgb, var(--c) 16%, transparent), transparent 55%),
    linear-gradient(145deg, #eef4f1, #fff 50%, #f7faf8);
  box-shadow: 0 14px 34px rgba(63, 111, 95, .1), inset 0 0 0 1px rgba(63, 111, 95, .18);
}
.page-edu-landing .eland-coach-step--apply .eland-coach-step__tag {
  position: absolute;
  top: 16px;
  right: 16px;
  margin: 0;
  padding: 5px 11px;
  border-radius: 999px;
  font-style: normal;
  font-size: 12px;
  font-weight: 800;
  color: #fff;
  background: var(--c);
  box-shadow: 0 8px 18px rgba(63, 111, 95, .25);
}
.page-edu-landing .eland-coach-step--apply .eland-coach-step__num {
  border-radius: 999px;
  background: linear-gradient(135deg, #5a8f7c, #3f6f5f);
}
.page-edu-landing .eland-coach-step--apply .eland-coach-step__icon { border-radius: 50%; }
.page-edu-landing .eland-coach-step--apply li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 8px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .82);
  box-shadow: inset 0 0 0 1px rgba(63, 111, 95, .12);
}
.page-edu-landing .eland-coach-step--apply li:last-child { margin-bottom: 0; }
.page-edu-landing .eland-coach-step--apply li::before {
  content: "";
  flex: 0 0 auto;
  width: 8px;
  height: 8px;
  margin-top: 7px;
  border-radius: 50%;
  background: var(--c);
  box-shadow: 0 0 0 4px rgba(63, 111, 95, .15);
}
.page-edu-landing .eland-coach-step--apply .eland-coach-step__pulse {
  display: flex;
  gap: 6px;
  margin-top: 16px;
  padding-left: 4px;
}
.page-edu-landing .eland-coach-step--apply .eland-coach-step__pulse i {
  width: 28px;
  height: 4px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--c) 35%, #fff);
  animation: elandCoachPulse 1.6s ease-in-out infinite;
}
.page-edu-landing .eland-coach-step--apply .eland-coach-step__pulse i:nth-child(2) { animation-delay: .2s; width: 40px; }
.page-edu-landing .eland-coach-step--apply .eland-coach-step__pulse i:nth-child(3) { animation-delay: .4s; width: 18px; }
@keyframes elandCoachPulse {
  0%, 100% { opacity: .35; transform: scaleX(.92); }
  50% { opacity: 1; transform: scaleX(1); }
}

/* 04 题册：装订线 + 有序列表 */
.page-edu-landing .eland-coach-step--exam {
  padding-left: 36px;
  background:
    repeating-linear-gradient(
      transparent,
      transparent 27px,
      rgba(166, 107, 43, .08) 27px,
      rgba(166, 107, 43, .08) 28px
    ),
    linear-gradient(90deg, #f3e7d0 0 18px, #fffdf8 18px);
  box-shadow: 0 14px 34px rgba(166, 107, 43, .1), inset 0 0 0 1px rgba(166, 107, 43, .2);
}
.page-edu-landing .eland-coach-step--exam::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 18px;
  bottom: 18px;
  width: 2px;
  border-radius: 2px;
  background: repeating-linear-gradient(
    #a66b2b 0 6px,
    transparent 6px 12px
  );
}
.page-edu-landing .eland-coach-step--exam .eland-coach-step__top {
  flex-wrap: wrap;
}
.page-edu-landing .eland-coach-step--exam .eland-coach-step__top h3 {
  flex: 1 1 100%;
  margin: 4px 0 0;
}
.page-edu-landing .eland-coach-step--exam .eland-coach-step__num {
  background: linear-gradient(135deg, #c49a55, #a66b2b);
  border-radius: 8px 8px 8px 2px;
}
.page-edu-landing .eland-coach-step--exam ol { counter-reset: exam; }
.page-edu-landing .eland-coach-step--exam li {
  counter-increment: exam;
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(166, 107, 43, .12);
}
.page-edu-landing .eland-coach-step--exam li:last-child { border-bottom: 0; }
.page-edu-landing .eland-coach-step--exam li::before {
  content: counter(exam, decimal-leading-zero);
  font-size: 12px;
  font-weight: 800;
  color: var(--c);
  line-height: 1.65;
}

/* 05 聚光面试：暗暖底 + 顶光 */
.page-edu-landing .eland-coach-step--interview {
  color: #f7f1ea;
  background:
    radial-gradient(ellipse 55% 45% at 50% -10%, rgba(255, 220, 180, .28), transparent 60%),
    linear-gradient(160deg, #5a342c 0%, #3d2420 55%, #2a1a17 100%);
  box-shadow: 0 20px 44px rgba(42, 26, 23, .28);
}
.page-edu-landing .eland-coach-step--interview .eland-coach-step__spot {
  position: absolute;
  left: 50%;
  top: -30px;
  width: 140px;
  height: 80px;
  translate: -50% 0;
  background: radial-gradient(ellipse, rgba(255, 230, 190, .35), transparent 70%);
  pointer-events: none;
}
.page-edu-landing .eland-coach-step--interview h3,
.page-edu-landing .eland-coach-step--interview .eland-coach-step__top h3 { color: #f4e4d4; margin: 8px 0 0; }
.page-edu-landing .eland-coach-step--interview .eland-coach-step__num {
  background: linear-gradient(135deg, #d4a574, #8a4a3a);
  box-shadow: 0 0 0 3px rgba(212, 165, 116, .2);
}
.page-edu-landing .eland-coach-step--interview .eland-coach-step__icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  color: #f4e4d4;
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(244, 228, 212, .25);
}
.page-edu-landing .eland-coach-step--interview li {
  color: rgba(247, 241, 234, .86);
  padding: 10px 0 10px 18px;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
  position: relative;
}
.page-edu-landing .eland-coach-step--interview li:last-child { border-bottom: 0; }
.page-edu-landing .eland-coach-step--interview li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 16px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #d4a574;
  box-shadow: 0 0 10px rgba(212, 165, 116, .55);
}

/* 06 印章收官：朱红印 + 勾选列表 */
.page-edu-landing .eland-coach-step--offer {
  background:
    radial-gradient(circle at 92% 12%, rgba(196, 71, 50, .14), transparent 40%),
    linear-gradient(155deg, #fff 0%, #f0f6f7 100%);
  box-shadow: 0 16px 40px rgba(196, 71, 50, .1), inset 0 0 0 1px rgba(196, 71, 50, .16);
}
.page-edu-landing .eland-coach-step--offer .eland-coach-step__seal {
  position: absolute;
  right: 18px;
  top: 18px;
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  border: 2px solid rgba(196, 71, 50, .35);
  color: rgba(196, 71, 50, .28);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .12em;
  transform: rotate(12deg);
  box-shadow: inset 0 0 0 4px rgba(196, 71, 50, .08);
  pointer-events: none;
}
.page-edu-landing .eland-coach-step--offer .eland-coach-step__num {
  background: linear-gradient(135deg, #d86a56, #c44732);
  box-shadow: 0 8px 18px rgba(196, 71, 50, .25);
}
.page-edu-landing .eland-coach-step--offer .eland-coach-step__icon { border-radius: 50%; }
.page-edu-landing .eland-coach-step--offer h3 {
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: clamp(20px, 2.2vw, 24px);
}
.page-edu-landing .eland-coach-step--offer li {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 10px 0;
  border-bottom: 1px solid rgba(196, 71, 50, .1);
}
.page-edu-landing .eland-coach-step--offer li:last-child { border-bottom: 0; }
.page-edu-landing .eland-coach-step--offer li::before {
  content: "";
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  border-radius: 50%;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='m3.5 8.2 3 3 6-6.5'/%3E%3C/svg%3E")
    center / 11px no-repeat,
    var(--c);
}

@supports not (background: color-mix(in srgb, red 10%, white)) {
  .page-edu-landing .eland-coach-step__icon { background: rgba(196, 71, 50, .1); }
  .page-edu-landing .eland-coach-step--resume { border-color: rgba(154, 52, 36, .28); }
  .page-edu-landing .eland-coach-step--apply {
    background: linear-gradient(145deg, #eef4f1, #fff 50%, #f7faf8);
  }
}

.page-edu-landing .eland-coach-reveal {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity .65s cubic-bezier(.16, 1, .3, 1),
    transform .65s cubic-bezier(.16, 1, .3, 1);
  transition-delay: calc(var(--r, 0) * .07s);
}
.page-edu-landing .eland-coach-reveal.is-in {
  opacity: 1;
  transform: none;
}
@media (max-width: 900px) {
  .page-edu-landing .eland-coach-list { grid-template-columns: 1fr; }
  .page-edu-landing .eland-coach-step--apply li { border-radius: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  .page-edu-landing .eland-coach-reveal {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
  .page-edu-landing .eland-coach-step:hover { transform: none; }
  .page-edu-landing .eland-coach-step--apply .eland-coach-step__pulse i { animation: none; }
}

/* —— 联系我们：教育站表单（参照产品页结构，暖色） —— */
.page-edu-landing .eland-contact {
  position: relative;
  padding: 96px 0 100px;
  overflow: hidden;
  background:
    radial-gradient(ellipse 55% 45% at 92% 8%, rgba(142, 185, 204, .32), transparent 55%),
    radial-gradient(ellipse 48% 40% at 8% 92%, rgba(111, 159, 148, .28), transparent 52%),
    radial-gradient(ellipse 40% 35% at 50% 45%, rgba(255, 255, 255, .45), transparent 60%),
    linear-gradient(180deg, #e8f1f4 0%, #eef5f3 50%, #e3ecea 100%);
  color: var(--ink);
}
.page-edu-landing .eland-contact::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(30, 90, 108, .05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(30, 90, 108, .05) 1px, transparent 1px);
  background-size: 40px 40px;
  mask-image: linear-gradient(180deg, #000 0%, transparent 90%);
  -webkit-mask-image: linear-gradient(180deg, #000 0%, transparent 90%);
  opacity: .7;
}
.page-edu-landing .eland-wrap.eland-contact__inner {
  position: relative;
  z-index: 1;
  width: var(--page);
  margin-left: auto;
  margin-right: auto;
  display: block;
}
.page-edu-landing .eland-contact__head {
  margin-bottom: 28px;
  text-align: left;
  max-width: 36em;
}
.page-edu-landing .eland-contact__row {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
  gap: clamp(20px, 3vw, 36px);
  align-items: stretch;
}
.page-edu-landing .eland-contact .edu-pc-form {
  max-width: none;
  margin: 0;
  height: 100%;
  align-content: start;
}
.page-edu-landing .eland-contact__aside {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 100%;
  padding: 28px 26px;
  border-radius: 20px;
  border: 1px solid rgba(30, 90, 108, .14);
  background:
    radial-gradient(ellipse 80% 60% at 90% 0%, rgba(142, 185, 204, .22), transparent 55%),
    radial-gradient(ellipse 70% 50% at 10% 100%, rgba(111, 159, 148, .18), transparent 50%),
    linear-gradient(165deg, rgba(255, 255, 255, .92), rgba(236, 245, 244, .96));
  box-shadow: 0 18px 44px rgba(26, 40, 48, .08);
  overflow: hidden;
  box-sizing: border-box;
}
.page-edu-landing .eland-contact__aside::before {
  content: "53621";
  position: absolute;
  right: -6px;
  bottom: -18px;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: clamp(64px, 8vw, 92px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -.04em;
  color: rgba(196, 71, 50, .07);
  pointer-events: none;
  user-select: none;
}
.page-edu-landing .eland-contact__aside-label {
  margin: 0 0 8px;
  color: var(--red);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .12em;
}
.page-edu-landing .eland-contact__phone {
  position: relative;
  z-index: 1;
  margin-bottom: 22px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(42, 38, 34, .08);
}
.page-edu-landing .eland-contact__phone a {
  display: block;
  margin: 0 0 8px;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: clamp(26px, 2.8vw, 32px);
  font-weight: 800;
  line-height: 1.2;
  background: linear-gradient(105deg, #c44732, #9a3424 60%, #3f6f5f);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  transition: filter .2s ease;
}
.page-edu-landing .eland-contact__phone a:hover {
  filter: brightness(1.08);
}
.page-edu-landing .eland-contact__phone > span {
  display: block;
  color: var(--ink-soft);
  font-size: 13px;
}
.page-edu-landing .eland-contact__steps {
  position: relative;
  z-index: 1;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 14px;
  flex: 1;
}
.page-edu-landing .eland-contact__steps li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  align-items: start;
}
.page-edu-landing .eland-contact__steps b {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2em;
  padding: 4px 0;
  color: var(--red);
  font-size: 13px;
  font-weight: 800;
}
.page-edu-landing .eland-contact__steps strong {
  display: block;
  margin: 0 0 4px;
  color: #8f3a2c;
  font-size: 15px;
  font-weight: 800;
}
.page-edu-landing .eland-contact__steps p {
  margin: 0;
  color: var(--ink-soft);
  font-size: 13px;
  line-height: 1.6;
}
.page-edu-landing .eland-contact__promise {
  position: relative;
  z-index: 1;
  margin: auto 0 0;
  padding: 14px 16px;
  border-radius: 12px;
  color: #7a5348;
  font-size: 13px;
  line-height: 1.7;
  background: rgba(196, 71, 50, .07);
  border: 1px solid rgba(196, 71, 50, .12);
}
.page-edu-landing .eland-contact__head .eyebrow {
  margin: 0 0 12px;
  color: var(--red);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .18em;
}
.page-edu-landing .eland-contact__head h2 {
  margin: 0 0 14px;
  font-family: "Noto Serif SC", "Source Han Serif SC", STSong, serif;
  font-size: clamp(1.85rem, 3.4vw, 2.55rem);
  font-weight: 800;
  line-height: 1.25;
  color: var(--ink);
}
.page-edu-landing .eland-contact__head h2 span {
  background: linear-gradient(105deg, #c44732, #9a3424 55%, #b88945);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.page-edu-landing .eland-contact__head p {
  margin: 0;
  max-width: 36rem;
  color: var(--ink-soft);
  line-height: 1.75;
  font-size: .98rem;
}

.page-edu-landing .edu-pc-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px 28px;
  padding: 28px 30px 32px;
  background: rgba(255, 255, 255, .94);
  border: 1px solid rgba(196, 71, 50, .14);
  border-radius: 18px;
  box-shadow: 0 18px 48px rgba(42, 38, 34, .08);
  backdrop-filter: blur(10px);
}
.page-edu-landing .edu-pc-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}
.page-edu-landing .edu-pc-field label {
  font-size: .92rem;
  color: var(--ink-soft);
  line-height: 1.4;
  font-weight: 600;
}
.page-edu-landing .edu-pc-field label .req {
  color: #c44732;
  margin-right: 2px;
}
.page-edu-landing .edu-pc-field input {
  width: 100%;
  border: 0;
  border-bottom: 1px solid rgba(42, 38, 34, .18);
  border-radius: 0;
  background: transparent;
  padding: 10px 2px 11px;
  font: inherit;
  font-size: .98rem;
  color: var(--ink);
  outline: none;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.page-edu-landing .edu-pc-field input:focus {
  border-bottom-color: var(--red);
  box-shadow: 0 1px 0 0 var(--red);
}
.page-edu-landing .edu-pc-field input[aria-invalid="true"] {
  border-bottom-color: var(--red-deep);
}
.page-edu-landing .edu-pc-actions {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 18px;
  margin-top: 4px;
}
.page-edu-landing .edu-pc-submit {
  min-height: 48px;
  padding: 0 28px;
  border: 0;
  border-radius: 10px;
  color: #fff;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
  background: linear-gradient(120deg, #c44732, #9a3424 55%, #a66b2b);
  box-shadow: 0 12px 28px rgba(196, 71, 50, .28);
  transition: filter .2s ease, transform .2s ease, box-shadow .2s ease;
}
.page-edu-landing .edu-pc-submit:hover {
  filter: brightness(1.05);
  box-shadow: 0 16px 32px rgba(196, 71, 50, .34);
}
.page-edu-landing .edu-pc-submit:disabled {
  opacity: .7;
  cursor: wait;
}
.page-edu-landing .eland-contact .form-status {
  margin: 0;
  font-size: 14px;
  color: var(--ink-soft);
}
.page-edu-landing .eland-contact .form-status.is-error { color: var(--red-deep); }
.page-edu-landing .eland-contact .form-status.is-success { color: var(--accent); }

@media (max-width: 960px) {
  .page-edu-landing .eland-contact__row {
    grid-template-columns: 1fr;
  }
  .page-edu-landing .eland-contact__aside,
  .page-edu-landing .eland-contact .edu-pc-form {
    height: auto;
    min-height: 0;
  }
}
@media (max-width: 640px) {
  .page-edu-landing .edu-pc-form {
    grid-template-columns: 1fr;
    padding: 24px 20px 26px;
  }
  .page-edu-landing .eland-contact { padding: 72px 0; }
  .page-edu-landing .eland-contact__aside { padding: 26px 22px; }
}

/* ========== 上岸企业：双排 logo + 反向无限滚动 ========== */
.page-edu-landing .eland-employers {
  padding-bottom: 72px;
  background:
    radial-gradient(ellipse 70% 55% at 50% 0%, rgba(142, 185, 204, .24), transparent 68%),
    radial-gradient(ellipse 45% 40% at 0% 100%, rgba(111, 159, 148, .16), transparent 55%),
    linear-gradient(180deg, #f2f7f8 0%, #e8f0f2 100%);
}
.page-edu-landing .eland-employers .eland-head {
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}
.page-edu-landing .eland-employers .eland-head h2 {
  color: var(--primary-deep);
}
.page-edu-landing .eland-employers .eland-head > p:last-child {
  color: var(--ink-soft);
}
.page-edu-landing .eland-logos-stack {
  display: grid;
  gap: 22px;
  margin-top: 8px;
}
.page-edu-landing .eland-logos {
  --logo-w: 200px;
  --logo-h: 110px;
  --logos-duration: 32s;
  cursor: default;
}
.page-edu-landing .eland-logos__viewport {
  overflow: hidden;
  width: 100%;
  padding: 8px 0 4px;
  mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
}
.page-edu-landing .eland-logos__track {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 20px;
  width: max-content;
  will-change: transform;
}
.page-edu-landing .eland-logos__item {
  margin: 0;
  flex: 0 0 auto;
  width: var(--logo-w);
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.page-edu-landing .eland-logos__frame {
  width: var(--logo-w);
  height: var(--logo-h);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 14px;
  background: #fff;
  border: 1px solid rgba(30, 42, 48, .1);
  border-radius: 4px;
  box-shadow: 0 8px 22px rgba(30, 42, 48, .05);
}
.page-edu-landing .eland-logos__frame img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}
.page-edu-landing .eland-logos__name {
  margin: 0;
  padding: 10px 8px;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .06em;
  color: var(--ink);
  background: #fff;
  border: 1px solid rgba(30, 42, 48, .1);
  border-radius: 4px;
}
.page-edu-landing .eland-logos.is-paused .eland-logos__track {
  animation-play-state: paused;
}
/* 上排：向右滚动，右侧消失，左侧进入 */
.page-edu-landing .eland-logos--ltr.is-animating .eland-logos__track {
  animation: eland-logos-ltr var(--logos-duration, 32s) linear infinite;
}
/* 下排：向左滚动，左侧消失，右侧进入 */
.page-edu-landing .eland-logos--rtl.is-animating .eland-logos__track {
  animation: eland-logos-rtl var(--logos-duration, 32s) linear infinite;
}
/* 鼠标悬停 / 键盘聚焦时暂停（写在 animation 之后，避免被简写覆盖） */
.page-edu-landing .eland-logos.is-animating:hover .eland-logos__track,
.page-edu-landing .eland-logos.is-animating.is-paused .eland-logos__track {
  animation-play-state: paused;
}
@keyframes eland-logos-ltr {
  from { transform: translate3d(calc(0px - var(--logos-set, 50%)), 0, 0); }
  to { transform: translate3d(0, 0, 0); }
}
@keyframes eland-logos-rtl {
  from { transform: translate3d(0, 0, 0); }
  to { transform: translate3d(calc(0px - var(--logos-set, 50%)), 0, 0); }
}
@media (max-width: 900px) {
  .page-edu-landing .eland-logos {
    --logo-w: 168px;
    --logo-h: 92px;
  }
  .page-edu-landing .eland-logos-stack { gap: 16px; }
  .page-edu-landing .eland-logos__track { gap: 14px; }
  .page-edu-landing .eland-logos__name { font-size: 13px; padding: 8px 6px; }
}
@media (max-width: 640px) {
  .page-edu-landing .eland-logos {
    --logo-w: 148px;
    --logo-h: 82px;
  }
  .page-edu-landing .eland-logos__viewport {
    mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent);
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent);
  }
}
@media (prefers-reduced-motion: reduce) {
  .page-edu-landing .eland-logos.is-animating .eland-logos__track {
    animation: none;
    transform: none;
  }
}
