/* Self-hosted: Golos Text, Literata (SIL OFL 1.1). Кирилл, кирилл-ext (Ө, Ү), латин дэд олонлог. */
/* golos-text-cyrillic-ext-400-normal */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(assets/fonts/golos-text-cyrillic-ext-400-normal.woff2) format('woff2');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}
/* golos-text-cyrillic-400-normal */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(assets/fonts/golos-text-cyrillic-400-normal.woff2) format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
/* golos-text-latin-ext-400-normal */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(assets/fonts/golos-text-latin-ext-400-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
/* golos-text-latin-400-normal */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(assets/fonts/golos-text-latin-400-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
/* golos-text-cyrillic-ext-500-normal */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(assets/fonts/golos-text-cyrillic-ext-500-normal.woff2) format('woff2');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}
/* golos-text-cyrillic-500-normal */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(assets/fonts/golos-text-cyrillic-500-normal.woff2) format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
/* golos-text-latin-ext-500-normal */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(assets/fonts/golos-text-latin-ext-500-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
/* golos-text-latin-500-normal */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(assets/fonts/golos-text-latin-500-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
/* golos-text-cyrillic-ext-600-normal */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(assets/fonts/golos-text-cyrillic-ext-600-normal.woff2) format('woff2');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}
/* golos-text-cyrillic-600-normal */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(assets/fonts/golos-text-cyrillic-600-normal.woff2) format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
/* golos-text-latin-ext-600-normal */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(assets/fonts/golos-text-latin-ext-600-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
/* golos-text-latin-600-normal */
@font-face {
  font-family: 'Golos Text';
  font-style: normal;
  font-display: swap;
  font-weight: 600;
  src: url(assets/fonts/golos-text-latin-600-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
/* literata-cyrillic-ext-400-normal */
@font-face {
  font-family: 'Literata';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(assets/fonts/literata-cyrillic-ext-400-normal.woff2) format('woff2');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}
/* literata-cyrillic-400-normal */
@font-face {
  font-family: 'Literata';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(assets/fonts/literata-cyrillic-400-normal.woff2) format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
/* literata-latin-ext-400-normal */
@font-face {
  font-family: 'Literata';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(assets/fonts/literata-latin-ext-400-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
/* literata-latin-400-normal */
@font-face {
  font-family: 'Literata';
  font-style: normal;
  font-display: swap;
  font-weight: 400;
  src: url(assets/fonts/literata-latin-400-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
/* literata-cyrillic-ext-500-normal */
@font-face {
  font-family: 'Literata';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(assets/fonts/literata-cyrillic-ext-500-normal.woff2) format('woff2');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}
/* literata-cyrillic-500-normal */
@font-face {
  font-family: 'Literata';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(assets/fonts/literata-cyrillic-500-normal.woff2) format('woff2');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}
/* literata-latin-ext-500-normal */
@font-face {
  font-family: 'Literata';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(assets/fonts/literata-latin-ext-500-normal.woff2) format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
/* literata-latin-500-normal */
@font-face {
  font-family: 'Literata';
  font-style: normal;
  font-display: swap;
  font-weight: 500;
  src: url(assets/fonts/literata-latin-500-normal.woff2) format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

/* =========================================================
   Орхон ХаСү — үндсэн загвар
   Өнгө: хөх, цагаан үндэс; алтлаг өнгө зөвхөн жижиг онцлолд.
   ========================================================= */
:root{
  --navy:#173173;        /* гүн хөх: гарчиг, бараан хэсэг */
  --blue:#1f4c96;        /* барилгын фасадны хөх: холбоос, идэвхтэй төлөв */
  --blue-deep:#173a74;
  --mist:#eef3f9;        /* цайвар хөх дэвсгэр */
  --white:#fff;
  --gold:#c9a24b;        /* алтлаг: шугам, тэмдэг, товч */
  --gold-soft:#e3c47e;
  --orange:#f58635;      /* логоны улбар шар: зөвхөн холбоо барих хэсгийн зурвас */
  --orange-deep:#b9531a; /* цагаан бичигтэй хөл хэсэг (4.5:1-ээс дээш ялгарал) */
  --band:#173173;        /* холбоо барих хэсгийн хөх */
  --text:#1a2738;
  --muted:#4d5c6f;
  --line:#d8e0ea;
  --line-dark:rgba(255,255,255,.22);

  --serif:"Literata", "PT Serif", Georgia, "Times New Roman", serif;
  --sans:"Golos Text", "Segoe UI", Roboto, Arial, sans-serif;

  --gutter:clamp(20px, 5vw, 72px);
  --wrap:1240px;
  --space:clamp(72px, 9vw, 128px);
  --header-h:76px;
  --ease:cubic-bezier(.2,.7,.2,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px)}
body{margin:0;font-family:var(--sans);font-size:1.0625rem;line-height:1.65;color:var(--text);background:var(--white);font-kerning:normal;text-rendering:optimizeLegibility}
img{display:block;max-width:100%;height:auto}
figure{margin:0}
a{color:var(--blue);text-decoration-thickness:1px;text-underline-offset:.22em}
a:hover{color:var(--navy)}
h1,h2,h3{margin:0;color:var(--navy);font-weight:500;text-wrap:balance}
h1,h2{font-family:var(--serif)}
h2{font-size:clamp(1.85rem, 1.25rem + 2vw, 2.75rem);line-height:1.18;letter-spacing:-.01em;font-weight:400}
h3{font-family:var(--sans);font-size:1.2rem;line-height:1.35;font-weight:600}
p{margin:0 0 1em}
ul,ol{margin:0;padding:0;list-style:none}
address{font-style:normal}
button{font:inherit;color:inherit}

:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:2px}
main:focus{outline:none}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-100px;z-index:100;padding:12px 18px;background:var(--navy);color:#fff;font-weight:600}
.skip:focus{top:12px;color:#fff}

.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:var(--space)}

/* ---------- Товч, холбоос ---------- */
.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border-radius:3px;font-weight:600;font-size:1rem;text-decoration:none;transition:background-color .2s, color .2s}
.button-primary{background:var(--navy);color:#fff}
.button-primary:hover{background:var(--blue);color:#fff}
.button-gold,.button.gold{background:var(--gold-soft);color:var(--navy)}
.button-gold:hover,.button.gold:hover{background:#ecd29a;color:var(--navy)}
.link-quiet,.link-light,.stage-link{display:inline-flex;align-items:center;min-height:44px;font-weight:500;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:.35em}
.link-quiet{color:var(--navy)}
.link-light{color:#fff}
.link-light:hover{color:var(--gold-soft)}

/* ---------- Толгой хэсэг (бүх хуудсанд) ---------- */
body>header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:var(--header-h);padding:10px var(--gutter);background:rgba(255,255,255,.97);border-bottom:1px solid transparent;transition:border-color .25s, box-shadow .25s}
@supports (backdrop-filter:blur(8px)){body>header{background:rgba(255,255,255,.9);backdrop-filter:blur(10px) saturate(1.2)}}
body>header.is-scrolled,body:not(.home)>header{border-bottom-color:var(--line)}
body>header>a:not(.brand){font-weight:500;color:var(--navy)}
.brand{display:flex;align-items:center;gap:12px;color:var(--navy);text-decoration:none;line-height:1.15}
.brand:hover{color:var(--navy)}
.logo{flex:none;width:auto;height:52px}
.brand-name,.brand>span:last-child{font-family:var(--serif);font-size:1.2rem;font-weight:500}
.brand small{display:block;margin-top:3px;font-family:var(--sans);font-size:.78rem;font-weight:400;color:var(--muted)}

.site-nav ul{display:flex;align-items:center;gap:clamp(16px,2.4vw,34px)}
.site-nav a{position:relative;display:inline-flex;align-items:center;min-height:44px;color:var(--navy);text-decoration:none;font-size:.97rem;font-weight:500}
.site-nav a::after{content:"";position:absolute;left:0;right:0;bottom:8px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.site-nav a:hover::after,.site-nav a[aria-current="true"]::after{transform:scaleX(1)}
.menu-toggle{display:none}

/* ---------- Нүүр зураг ---------- */
.hero{position:relative;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:center}
.hero-media{grid-column:2;grid-row:1;height:clamp(520px, calc(100vh - var(--header-h) - 48px), 760px);overflow:hidden;background:var(--navy)}
.hero-media picture,.hero-media img{width:100%;height:100%}
.hero-media img{object-fit:cover;object-position:42% 40%}
.hero-panel{grid-column:1;grid-row:1;position:relative;z-index:2;padding:48px clamp(28px,4vw,64px) 48px var(--gutter);background:#fff}
.hero-panel::before{content:"";display:block;width:56px;height:3px;margin-bottom:32px;background:var(--gold)}
.hero h1{font-size:clamp(2.1rem, 1.1rem + 2.6vw, 3.5rem);line-height:1.12;letter-spacing:-.015em}
.hero-motto{margin:14px 0 0;font-family:var(--serif);font-style:normal;font-size:1.05rem;color:var(--blue)}
.hero-lead{max-width:34ch;margin:22px 0 30px;font-size:1.12rem;color:var(--muted)}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px}

@media (prefers-reduced-motion:no-preference){
  .hero-media img{animation:settle 1.8s var(--ease) both}
  .hero-panel{animation:rise 1s .25s var(--ease) both}
}
@keyframes settle{from{transform:scale(1.06)}to{transform:none}}
@keyframes rise{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}

/* ---------- Бидний тухай ---------- */
.about-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(40px,7vw,110px)}
.about-head h2{max-width:13ch}
.pillars{margin-top:36px;border-top:1px solid var(--line)}
.pillars li{padding:14px 0;border-bottom:1px solid var(--line);font-weight:500;color:var(--navy)}
.about-body{max-width:62ch}
.about-lead{font-family:var(--serif);font-size:clamp(1.25rem, 1.05rem + .6vw, 1.5rem);line-height:1.5;color:var(--navy)}
.about-body>p{color:var(--muted)}
.about-body>p.about-lead{color:var(--navy);margin-bottom:24px}
.values-title{margin-top:44px;font-size:1rem;color:var(--muted);font-weight:500}
.values{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.values li{padding:8px 16px;border:1px solid var(--line);border-radius:999px;font-size:.95rem;color:var(--navy);background:#fff}

/* ---------- Сургалтын хөтөлбөр ---------- */
.learning{background:var(--mist)}
.section-head{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(24px,7vw,110px);align-items:end;margin-bottom:clamp(48px,6vw,80px)}
.section-head h2{max-width:14ch}
.section-head p{max-width:52ch;margin:0;color:var(--muted)}

.pathway{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,4vw,56px)}
.pathway::before{content:"";position:absolute;top:7px;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--gold),var(--gold) 70%,transparent)}
.stage{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding-top:44px}
.stage::before{content:"";position:absolute;top:0;left:0;width:16px;height:16px;border-radius:50%;background:var(--mist);border:2px solid var(--navy)}
.stage:first-child::before{background:var(--navy)}
.stage h3{font-family:var(--serif);font-size:clamp(1.45rem,1.2rem + .8vw,1.8rem);font-weight:500;letter-spacing:-.01em}
.stage-meta{margin:10px 0 16px;font-size:.92rem;font-weight:500;color:var(--blue);line-height:1.5}
.stage p:not(.stage-meta){color:var(--muted);max-width:38ch}
.stage-link{margin-top:auto;color:var(--navy)}

/* ---------- Сургуулийн орчин: нэг хүрээтэй слайд ---------- */
.showcase{--interval:6000ms;--fade:1000ms;width:100%;max-width:calc(1400px + 2 * var(--gutter));margin:0 auto;padding-inline:var(--gutter)}
.showcase-frame{position:relative;aspect-ratio:21/9;overflow:hidden;background:var(--navy);isolation:isolate;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.showcase-slide{position:absolute;inset:0;margin:0;opacity:0;z-index:0}
.showcase-slide.is-leaving{opacity:1;z-index:1}
.showcase-slide.is-active{opacity:1;z-index:2;transition:opacity var(--fade) cubic-bezier(.4,0,.2,1)}
.showcase-slide picture,.showcase-slide img{display:block;width:100%;height:100%}
.showcase-slide img{object-fit:cover;object-position:var(--pos-wide,50% 50%);transform-origin:50% 45%;-webkit-user-drag:none}
.showcase-slide::after{content:"";position:absolute;inset:auto 0 0 0;height:42%;background:linear-gradient(to top, rgba(8,22,44,.62) 0%, rgba(8,22,44,.28) 45%, rgba(8,22,44,0) 100%);pointer-events:none}

.showcase-caption{position:absolute;left:clamp(20px,3.4vw,48px);bottom:clamp(18px,3vw,40px);z-index:1;display:flex;flex-direction:column;gap:6px;max-width:min(560px,70%);color:#fff;text-shadow:0 1px 12px rgba(8,22,44,.35)}
.showcase-slide.is-leaving .showcase-caption{opacity:0;transition:opacity .3s}
.showcase-label{font-size:.82rem;font-weight:600;letter-spacing:.01em;color:rgba(255,255,255,.86)}
.showcase-label::before{content:"";display:inline-block;width:18px;height:2px;margin-right:10px;vertical-align:middle;background:var(--gold-soft)}
.showcase-text{font-family:var(--serif);font-size:clamp(1.15rem,.95rem + .9vw,1.7rem);line-height:1.3;font-weight:400}

.showcase-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:14px}
.showcase-dots{display:flex;gap:6px}
.showcase-dot{display:flex;align-items:center;width:clamp(40px,5vw,64px);height:32px;padding:0;border:0;background:none;cursor:pointer}
.dot-track{position:relative;display:block;width:100%;height:2px;overflow:hidden;background:var(--line);transition:height .2s}
.dot-fill{position:absolute;inset:0;background:var(--navy);transform:scaleX(0);transform-origin:left}
.showcase-dot:hover .dot-track{height:4px}
.showcase-dot[aria-current="true"] .dot-fill{transform:scaleX(1)}
.showcase-nav{display:flex;gap:6px}
.showcase-btn{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);cursor:pointer;transition:border-color .2s, background-color .2s, color .2s}
.showcase-btn:hover{border-color:var(--navy);background:var(--navy);color:#fff}
.showcase-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.showcase-btn .i-play{fill:currentColor;stroke:none}
.showcase-toggle .i-play,.showcase.is-stopped .showcase-toggle .i-pause{display:none}
.showcase.is-stopped .showcase-toggle .i-play{display:block}
.showcase:not(.is-auto) .showcase-toggle{display:none}

/* Хөдөлгөөн: зөвхөн хөдөлгөөн багасгах тохиргоогүй үед */
@media (prefers-reduced-motion:no-preference){
  .showcase.is-auto .showcase-slide.is-active img,
  .showcase.is-auto .showcase-slide.is-leaving img{animation:showcase-zoom calc(var(--interval) + var(--fade) + 400ms) linear both}
  .showcase-slide.is-active .showcase-caption{animation:showcase-caption .9s .35s cubic-bezier(.2,.7,.2,1) both}
  .showcase.is-auto .showcase-dot[aria-current="true"] .dot-fill{animation:showcase-progress var(--interval) linear both}
  .showcase.is-paused .showcase-slide.is-active img,
  .showcase.is-paused .showcase-dot[aria-current="true"] .dot-fill{animation-play-state:paused}
}
@keyframes showcase-zoom{from{transform:scale(1)}to{transform:scale(1.04)}}
@keyframes showcase-caption{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes showcase-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* JS ажиллахгүй үед эхний зураг л харагдана */
html:not(.js) .showcase-bar{display:none}

@media (max-width:1023px){
  .showcase-frame{aspect-ratio:16/9}
  .showcase-slide img{object-position:var(--pos-mid,50% 50%)}
}
@media (max-width:599px){
  .showcase{padding-inline:0}
  .showcase-frame{aspect-ratio:4/3}
  .showcase-slide img{object-position:50% 50%}
  .showcase-slide::after{height:55%}
  .showcase-caption{left:18px;right:18px;bottom:16px;max-width:none;gap:4px}
  .showcase-text{font-size:1.02rem}
  .showcase-bar{padding-inline:var(--gutter)}
  .showcase-dot{width:32px}
}

.campus .section-head{margin-bottom:clamp(36px,4.5vw,56px)}
.campus-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(40px,7vw,110px);padding-top:clamp(48px,6vw,80px)}
.campus-grid .facilities{grid-column:2}
.facilities{border-top:1px solid var(--line)}
.facility{border-bottom:1px solid var(--line)}
.facility summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:16px 0;cursor:pointer;list-style:none;font-size:1.15rem;font-weight:600;color:var(--navy)}
.facility summary::-webkit-details-marker{display:none}
.facility summary::after{content:"";flex:none;width:12px;height:12px;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:translateY(-3px) rotate(45deg);transition:transform .3s var(--ease)}
.facility[open] summary::after{transform:translateY(3px) rotate(-135deg)}
.facility summary:hover{color:var(--blue)}
.facility p{max-width:56ch;margin:0;padding:0 0 24px;color:var(--muted)}
@media (prefers-reduced-motion:no-preference){.facility[open] p{animation:open .35s var(--ease)}}
@keyframes open{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* ---------- Элсэлт ---------- */
.admission{background:var(--navy);color:#dbe4ef}
.admission h2,.admission h3{color:#fff}
.admission-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(40px,7vw,110px);align-items:start}
.admission-head h2{max-width:15ch}
.admission-head p{max-width:46ch;margin-top:22px}
.admission-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin-top:34px}
.admission-status{padding:8px 0 8px 32px;border-left:2px solid var(--gold)}
.admission-status h3{font-size:1.15rem;margin-bottom:14px}
.status-note{display:flex;gap:12px;align-items:baseline;padding:16px 18px;background:rgba(255,255,255,.07);border-radius:3px;color:#fff}
.status-dot{flex:none;width:9px;height:9px;border-radius:50%;border:2px solid var(--gold-soft);transform:translateY(-1px)}
.status-hours{margin:0;font-size:.95rem;color:#b9c7d8}

/* ---------- Холбоо барих ---------- */
.contact-building{position:relative;aspect-ratio:2048/542;min-height:200px;max-height:560px;width:100%;overflow:hidden;background:#cdd8e8}
.contact-building picture,.contact-building img{width:100%;height:100%}
.contact-building img{object-fit:cover;object-position:50% 40%}
.contact-stripe{height:clamp(18px,2.4vw,40px);background:var(--orange)}
.contact-band{padding-block:clamp(56px,7vw,96px);background:var(--band);color:#d6dff0}
.contact-band h2{color:#fff}
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(40px,7vw,110px);align-items:end}
.contact-list{display:grid;grid-template-columns:repeat(2,minmax(0,max-content));gap:28px clamp(32px,5vw,72px);margin:36px 0 0}
.contact-list dt{margin-bottom:4px;font-size:.9rem;color:#aebcdc}
.contact-list dd{margin:0;font-size:1.15rem;color:#fff}
.contact-list dd a{display:inline-flex;min-height:44px;align-items:center;color:#fff;text-decoration:none;overflow-wrap:anywhere}
.contact-list dd a:hover{text-decoration:underline;text-decoration-color:var(--orange)}
.contact-address{grid-column:1/-1}
.contact-address address{margin:6px 0 4px}
.contact-list .map-link{font-size:1rem;font-weight:500;text-decoration:underline;text-decoration-color:var(--orange);text-decoration-thickness:2px;text-underline-offset:.35em}
.accreditation{padding-left:clamp(28px,4vw,56px);border-left:1px solid rgba(255,255,255,.25)}
.accreditation img{width:clamp(220px,22vw,300px);height:auto}

/* ---------- Хөл хэсэг ---------- */
.site-footer{background:var(--orange-deep);color:#fff;font-size:.95rem}
.footer-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 32px;padding-block:10px}
.copyright{margin:0;font-weight:600}
.footer-links{display:flex;flex-wrap:wrap;gap:0 24px}
.site-footer a{display:inline-flex;align-items:center;min-height:44px;color:#fff;text-decoration:none;font-weight:500}
.site-footer a:hover{text-decoration:underline}
.site-footer .to-top{text-decoration:underline;text-underline-offset:.3em}
.site-footer :focus-visible{outline-color:#fff}

/* =========================================================
   Дэлгэрэнгүй хуудас (primary, middle, high, admission)
   ========================================================= */
.detail-page{max-width:820px;margin-inline:auto;padding:clamp(48px,7vw,96px) var(--gutter) 64px;min-height:70vh}
.detail-page>.eyebrow{margin:0 0 14px;font-size:.95rem;font-weight:500;color:var(--blue);letter-spacing:0;text-transform:none}
.detail-page h1{font-size:clamp(2rem,1.3rem + 2.4vw,3rem);line-height:1.15;letter-spacing:-.01em;padding-bottom:28px;border-bottom:3px solid var(--gold);display:inline-block}
.detail-body{margin:40px 0;font-size:1.0625rem;line-height:1.75}
.detail-body p{margin:0 0 1.05em;max-width:68ch}
.detail-body h2{font-size:clamp(1.5rem,1.2rem + 1vw,1.9rem);margin:48px 0 16px}
.detail-body h3{margin:36px 0 12px;font-size:1.2rem}
.detail-body ul,.detail-body ol{padding-left:1.3em;list-style:disc;margin:0 0 1em}
.detail-body .source-note{font-size:.95rem;color:var(--muted);padding:16px 18px;background:var(--mist);border-radius:3px;margin-bottom:32px}
.notice{padding:16px 18px;border-left:3px solid var(--gold);background:var(--mist)}
.detail-links{display:flex;flex-wrap:wrap;align-items:center;gap:8px 28px;padding:28px 0;margin-top:24px;border-top:1px solid var(--line)}
.detail-links a{display:inline-flex;min-height:44px;align-items:center}

/* =========================================================
   Хариу үйлдэлтэй байдал
   ========================================================= */
@media (max-width:1200px){
  .hero{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
}

@media (max-width:900px){
  :root{--header-h:68px}
  .menu-toggle{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 14px;border:1px solid var(--line);border-radius:3px;background:#fff;color:var(--navy);font-weight:500;cursor:pointer}
  .menu-icon,.menu-icon::before,.menu-icon::after{display:block;width:18px;height:2px;background:currentColor;transition:transform .25s var(--ease), opacity .2s}
  .menu-icon{position:relative}
  .menu-icon::before,.menu-icon::after{content:"";position:absolute;left:0}
  .menu-icon::before{top:-6px}.menu-icon::after{top:6px}
  .menu-toggle[aria-expanded="true"] .menu-icon{background:transparent}
  .menu-toggle[aria-expanded="true"] .menu-icon::before{transform:translateY(6px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] .menu-icon::after{transform:translateY(-6px) rotate(-45deg)}
  .site-nav{position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 18px 30px -20px rgba(13,38,71,.3);display:none}
  .site-nav.is-open{display:block}
  .site-nav ul{flex-direction:column;align-items:stretch;gap:0;padding:8px var(--gutter) 16px}
  .site-nav li+li{border-top:1px solid var(--line)}
  .site-nav a{display:flex;min-height:52px;font-size:1.05rem}
  .site-nav a::after{bottom:10px;right:auto;width:28px}
  .js .site-nav{display:none}
  .js .site-nav.is-open{display:block}
  html:not(.js) .menu-toggle{display:none}
  html:not(.js) body>header{flex-wrap:wrap}
  html:not(.js) .site-nav{position:static;flex-basis:100%;display:block;box-shadow:none;border:0}

  .hero{display:block}
  .hero-media{height:auto;aspect-ratio:4/3;max-height:70vh}
  .hero-media img{object-position:50% 40%}
  .hero-panel{margin:-56px var(--gutter) 0;padding:32px 28px 28px;box-shadow:0 24px 48px -30px rgba(13,38,71,.45)}
  .hero-panel::before{margin-bottom:24px}
  .about-grid,.section-head,.campus-grid,.admission-grid,.contact-grid{grid-template-columns:1fr}
  .about-head h2,.section-head h2,.admission-head h2{max-width:20ch}

  .pathway{grid-template-columns:1fr;gap:0}
  .pathway::before{top:8px;bottom:24px;left:7px;right:auto;width:2px;height:auto;background:linear-gradient(180deg,var(--gold),var(--gold) 80%,transparent)}
  .stage{padding:0 0 40px 44px}
  .stage::before{top:2px}
  .stage-link{margin-top:4px}

  .admission-status{padding-left:24px}
  .campus-grid .facilities{grid-column:auto}
  .contact-grid{align-items:start}
  .accreditation{padding:28px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.25)}
  .footer-bar{flex-direction:column;align-items:flex-start;padding-block:16px}
}

@media (max-width:560px){
  body{font-size:1rem}
  body>header{padding-inline:16px;gap:12px}
  .brand-name,.brand>span:last-child{font-size:1.05rem}
  .brand small{font-size:.72rem}
  .logo{height:42px}
  .menu-label{display:none}
  .menu-toggle{padding:8px 12px}
  .hero-media{aspect-ratio:1/1}
  .hero-media img{object-position:38% 40%}
  .hero-panel{margin:-40px 12px 0;padding:28px 22px 24px}
  .hero-lead{margin:18px 0 24px;font-size:1.05rem}
  .hero-actions .button{width:100%}
  .contact-list{grid-template-columns:1fr;gap:20px}
}

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

@media print{
  body>header,.hero-media,.showcase,.contact-building,.contact-stripe,.site-footer nav,.to-top,.skip{display:none!important}
  .hero-panel{position:static;width:auto;box-shadow:none;padding:0;border:0}
  .admission,.contact-band,.site-footer{background:none;color:var(--text)}
  .contact-list dd,.contact-list dd a,.site-footer a{color:var(--text)}
  .admission h2,.admission h3{color:var(--navy)}
  .section{padding-block:24px}
}



/* HERO_REFINEMENT_START */
/* Keep the original 4:3 frame so all three faces fit at every screen width. */
.hero{align-items:center}
.hero-media{position:relative;isolation:isolate;height:auto;aspect-ratio:4/3;max-height:none;margin:0;overflow:hidden}
.hero-media picture{display:block;width:100%;height:100%}
.hero-media img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;filter:saturate(.91) contrast(.97) brightness(1.025);transform-origin:50% 45%;animation:none}
.hero-media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(145deg,rgba(255,246,230,.045),transparent 58%,rgba(13,38,71,.045));z-index:1}
@media (min-width:1024px){.hero{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}.hero-panel{padding-top:32px;padding-bottom:32px}.hero h1{font-size:clamp(2.15rem,3.6vw,4rem)}}
@media (max-width:900px){.hero-media{height:auto;aspect-ratio:4/3;max-height:none}.hero-panel{margin:0;padding-top:30px;box-shadow:none}.hero-media img{object-position:50% 50%}}
@media (max-width:520px){.hero-media{aspect-ratio:4/3}.hero-panel{margin:0;padding:28px 22px}.hero-media img{object-position:50% 50%}}
@media (prefers-reduced-motion:no-preference){.hero-media img{animation:hero-photo-reveal 1.4s ease-out both,hero-soft-breath 14s 1.4s ease-in-out infinite alternate;will-change:transform}}
@keyframes hero-photo-reveal{from{opacity:0;filter:saturate(.75) contrast(.97) brightness(1.04)}to{opacity:1;filter:saturate(.91) contrast(.97) brightness(1.025)}}
@keyframes hero-soft-breath{from{transform:scale(1)}to{transform:scale(1.035)}}
@media (prefers-reduced-motion:reduce){.hero-media img{animation:none;transform:none;will-change:auto}}
/* HERO_REFINEMENT_END */

/* FOOTER_REFINEMENT_START */
.admission{background:#f4f6f8;color:#46586b;border-top:1px solid #e1e7ed}
.admission h2,.admission h3{color:#173173}
.admission .link-light,.admission .link-quiet,.admission-actions a:not(.button){color:#173173;text-decoration-color:#ba924b}
.admission .status-note{background:#e9eef3;color:#33495d;border-radius:0}
.admission .status-hours{color:#53677c}
.admission-status{border-left:1px solid #c6d0db}
.admission .button{background:#173173;color:#fff;border-color:#173173}
.admission .button:hover{background:#1d4264}
.contact-building{aspect-ratio:5/1;min-height:170px;max-height:340px}
.contact-building img{filter:saturate(.65) contrast(.96) brightness(.98);object-position:50% 40%}
.contact-stripe{display:none}
.contact-band,.site-footer{background:#173173}
.contact-band{padding-block:clamp(40px,5vw,72px)}
.site-footer{border-top:1px solid rgba(255,255,255,.16);color:#c6d3df}
.site-footer .footer-bar{padding-block:18px}
.site-footer .copyright{font-weight:400}
.site-footer a{color:#d9e3ec;font-weight:400}
.contact-list dd a:hover,.contact-list .map-link{text-decoration-color:#c9ae78}
@media(max-width:760px){.contact-building{aspect-ratio:2.4/1;min-height:150px;max-height:none}}
@media print{.admission,.contact-band,.site-footer{background:none;color:#183246}.site-footer a{color:#183246}}
/* FOOTER_REFINEMENT_END */
