/* Stepping Stone — brand layer. Loaded after all other styles. */
:root{
  --blue:#101a5c;--soft:#f2f0ea;--ink:#101a5c;--electric:#e8a72c;
  --crest:#101a5c;       /* crest indigo */
  --night:#0a1040;       /* dark sections */
  --paper:#fbfaf7;       /* page */
  --stone:#e9e6df;       /* rules, quiet fills */
  --graphite:#3b4058;    /* body text */
  --flame:#d9412e;       /* the flame in the crest */
  --lamp:#e8a72c;        /* the lamp gold */
  --agni:#d9412e; --vayu:#e8a72c; --prithvi:#2f8f5b; --akash:#2e6bd8;
  --ease:cubic-bezier(.16,1,.3,1);
  --display:"Familjen Grotesk",system-ui,sans-serif;
  --text:"Inter",system-ui,sans-serif;
  --quote:"Newsreader",Georgia,serif;
}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{background:var(--paper)!important;color:var(--graphite)!important;font-family:var(--text)!important;font-size:16.5px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3,.brand span,.hero-facts strong,.result-metrics strong{font-family:var(--display)!important;color:var(--crest)}
h1{font-weight:600!important;letter-spacing:-.035em!important;line-height:.98!important}
h2{font-weight:600!important;letter-spacing:-.03em!important;line-height:1.02!important}
h3{font-weight:600!important;letter-spacing:-.015em}
h1 em,h2 em,h1 span:not([class]),h2 span:not([class]){font-style:normal;color:inherit;opacity:1}
p{max-width:68ch}
a{color:inherit}

/* template chrome removed */
.eyebrow i,.live-dot,.hero-grid,.orbit-caption,.future-image-label,.watch-link span:first-child{display:none!important}
.eyebrow{font-family:var(--text)!important;text-transform:none!important;letter-spacing:0!important;font-size:14px!important;font-weight:500!important;color:var(--flame)!important;display:inline-flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:22px;height:2px;background:currentColor;display:inline-block}
.dark .eyebrow,.future-hero .eyebrow,footer .eyebrow,.girls-film-hero .eyebrow,.immersive-cover .eyebrow{color:var(--lamp)!important}

/* house band: scroll progress */
.house-band{position:fixed;top:0;left:0;right:0;height:4px;z-index:100;display:grid;grid-template-columns:repeat(4,1fr);pointer-events:none}
.house-band i{transform:scaleX(0);transform-origin:left;transition:transform .12s linear}
.house-band i:nth-child(1){background:var(--agni)}.house-band i:nth-child(2){background:var(--vayu)}
.house-band i:nth-child(3){background:var(--prithvi)}.house-band i:nth-child(4){background:var(--akash)}

/* header */
.utility{background:var(--night)!important;letter-spacing:.02em!important;text-transform:none}
header{background:color-mix(in srgb,var(--paper) 92%,transparent)!important;border-color:var(--stone)!important}
.brand span{font-size:20px;letter-spacing:-.02em}
nav a{font-weight:500}
.button{background:var(--crest)!important;border-color:var(--crest)!important;border-radius:999px!important;box-shadow:none!important;font-weight:600;letter-spacing:0;padding:15px 26px!important;transition:background .3s var(--ease),transform .3s var(--ease)!important}
.button:hover{background:var(--flame)!important;border-color:var(--flame)!important;transform:translateY(-2px)}
.button.light{background:var(--paper)!important;color:var(--crest)!important;border-color:var(--paper)!important}
.button.light:hover{background:var(--lamp)!important;border-color:var(--lamp)!important}

/* hero */
.future-hero{background:var(--night)!important;min-height:min(92vh,860px)!important;align-items:center}
.future-hero h1{color:var(--paper)!important;font-size:clamp(46px,5.6vw,92px)!important}
.future-hero h1 span{color:var(--paper)!important;opacity:1!important}.future-hero h1 .hl:last-child span{color:var(--lamp)!important}
.future-hero p{color:#c9cde0!important;font-size:18px}
.future-hero .hl{display:block;overflow:hidden;padding-bottom:.06em}
.future-hero .hl>span{display:inline-block;transform:translateY(105%);transition:transform 1.1s var(--ease)}
.is-ready .future-hero .hl>span{transform:none}
.is-ready .future-hero .hl:nth-child(2)>span{transition-delay:.08s}.is-ready .future-hero .hl:nth-child(3)>span{transition-delay:.16s}
.future-visual{border:none!important;background:none!important}
.floating-campus{border-radius:16px!important;background:var(--paper)!important;color:var(--crest)!important;opacity:0;transform:translateY(20px);transition:opacity .8s var(--ease) 1.1s,transform .8s var(--ease) 1.1s}
.is-ready .floating-campus{opacity:1;transform:none}
.hero-facts strong{color:var(--paper)!important;font-weight:600}
.hero-facts span{color:#9aa1c4!important;letter-spacing:.02em!important;font-size:12px!important;text-transform:none}

/* house marquee (replaces the values strip) */
.house-marquee{overflow:hidden;background:var(--paper);border-block:1px solid var(--stone);padding:26px 0}
.house-marquee .track{display:flex;gap:64px;width:max-content;animation:marquee 38s linear infinite}
.house-marquee span{font-family:var(--display);font-weight:600;font-size:clamp(36px,5vw,72px);letter-spacing:-.03em;white-space:nowrap;color:transparent;-webkit-text-stroke:1.5px var(--c);transition:color .4s var(--ease)}
.house-marquee span b{font-weight:600;color:var(--c);-webkit-text-stroke:0}
.house-marquee:hover span{color:var(--c)}
@keyframes marquee{to{transform:translateX(-50%)}}

/* arches: campus imagery takes the crest window */
.campus-art img,.campus-photo img,.photo-card img{border-radius:14px}
.campus-art,.photo-card{background:transparent!important;padding:0!important;overflow:visible!important}
.campus-card{border:none!important;background:transparent!important;box-shadow:none!important}
.campus-card:hover{transform:none!important}
.campus-card img{transition:transform 1s var(--ease),filter .6s}
.campus-card:hover img{transform:translateY(-6px)}
.board-tag{border-radius:999px!important;background:var(--stone)!important;color:var(--crest)!important}

/* sections */
.section{padding-block:clamp(72px,10vw,140px)!important}
.tint,.section.tint{background:#f2f0ea!important}
.home-results,.footer-top,footer{background:var(--night)!important}
.home-results h2,footer h2{color:var(--paper)!important}
.result-metrics>*{background:#141c58!important;border:none!important;border-radius:20px!important}
.result-metrics strong{color:var(--lamp)!important}
.academic-banner,.campus-quote{border-radius:24px!important;background:#f2f0ea!important}
.editorial blockquote,.editorial h2:first-of-type:is([class*=quote]){font-family:var(--quote)}
.tint .editorial h2{font-family:var(--quote)!important;font-style:italic;font-weight:400!important;letter-spacing:-.01em!important;max-width:24ch}
.detail-heading,.page-heading{background:var(--night)!important}
.detail-heading h1,.page-heading h1{color:var(--paper)!important}
.detail-heading p,.page-heading p{color:#c9cde0!important}
.detail-heading .back{color:#c9cde0!important}
table{font-variant-numeric:tabular-nums}

/* reveal on scroll — headings only */
.reveal{opacity:0;transform:translateY(28px);transition:opacity 1s var(--ease),transform 1s var(--ease)}
.reveal.in{opacity:1;transform:none}
[data-count]{font-variant-numeric:tabular-nums}

/* focus + reduced motion */
a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid var(--lamp);outline-offset:3px}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .future-hero .hl>span,.future-main,.floating-campus,.reveal{transform:none!important;clip-path:none!important;opacity:1!important}
}
@media (max-width:800px){
  .future-hero{min-height:auto!important}
  .house-marquee .track{gap:36px}
}

.future-visual::after,.future-visual::before{display:none!important}
.hero-facts span{text-transform:none!important}
.brand img{background:#fff;border-radius:50%}

.campuses,.section.campuses,.social-preview,.home-testimonials{background:var(--paper)!important}
.text-link,.watch-link,.story-actions a{color:var(--crest)!important;text-decoration-color:var(--lamp)!important}
/* text on dark or photographic backgrounds */
.immersive-cover h1,.immersive-cover h1 *,.immersive-cover h2,.girls-film-hero h1,.girls-film-hero h1 *,.girls-film-hero h2,
.future-hero h2,.home-results h2,.home-results h2 *,footer h2,footer h2 *,.detail-heading h1 *,.page-heading h1 *,.footer-top h2,.footer-top h2 *{color:var(--paper)!important}
.immersive-cover h1 span:first-child,.girls-film-hero h1 span:first-child{color:var(--lamp)!important}
.immersive-cover p,.girls-film-hero p{color:#e3e5f0!important}
.future-hero .watch-link,.future-hero .text-link,.immersive-cover .text-link,.girls-film-hero .text-link,footer a,.home-results .text-link{color:var(--paper)!important}
.immersive-cover::before{background:linear-gradient(90deg,rgba(10,16,64,.82),rgba(10,16,64,.35) 60%,rgba(10,16,64,.1))!important}
.detail-heading .eyebrow,.page-heading .eyebrow,.home-results .eyebrow,.footer-top .eyebrow{color:var(--lamp)!important}
.girls-film-hero{background:var(--night)!important}

/* hero: photo blended into the night background */
.future-hero{position:relative;display:block!important;padding:0!important;overflow:hidden}
.future-copy{position:relative;z-index:2;max-width:640px;padding:clamp(56px,9vw,120px) 0 clamp(48px,6vw,80px) max(4.5%,calc((100vw - 1320px)/2))}
.future-visual{position:absolute!important;inset:0 0 0 auto;width:62%;z-index:1;margin:0!important}
.future-visual .future-main{position:absolute;inset:0;width:100%!important;height:100%!important;max-height:none!important;object-fit:cover;border-radius:0!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.55) 22%,#000 55%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.55) 22%,#000 55%);
  opacity:0;transform:scale(1.06);transition:opacity 1.6s var(--ease) .15s,transform 2.4s var(--ease) .15s;filter:saturate(.92)}
.future-visual::after{content:""!important;display:block!important;position:absolute;inset:0;background:linear-gradient(0deg,var(--night) 0%,transparent 28%);pointer-events:none}
.is-ready .future-visual .future-main{opacity:1;transform:scale(1)}
.floating-campus{position:absolute!important;right:max(4.5%,calc((100vw - 1320px)/2));bottom:48px;left:auto!important;top:auto!important;z-index:3;max-width:360px}
@media (max-width:900px){
  .future-visual{inset:0;width:100%}
  .future-visual .future-main{-webkit-mask-image:none;mask-image:none;opacity:.0}
  .is-ready .future-visual .future-main{opacity:.38}
  .future-visual::after{background:linear-gradient(180deg,rgba(10,16,64,.55) 0%,var(--night) 92%)}
  .future-copy{padding:56px 6% 40px;max-width:none}
  .floating-campus{position:relative!important;right:auto;bottom:auto;margin:0 6% 40px;max-width:none}
}

/* Instagram */
.ig-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}
.ig-tile{margin:0;display:flex;flex-direction:column;gap:10px}
.ig-frame{position:relative;aspect-ratio:9/16;border-radius:14px;overflow:hidden;background:#e7e5df}
.ig-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ig-tile figcaption a{font-size:14px;color:var(--graphite);text-decoration:none}
.ig-tile figcaption a:hover{color:var(--flame)}
@media (max-width:1100px){.ig-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:700px){
  .ig-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-inline:-6%;padding-inline:6%;scrollbar-width:none}
  .ig-grid::-webkit-scrollbar{display:none}
  .ig-tile{flex:0 0 72%;scroll-snap-align:start}
}
.future-visual{height:auto!important}
.future-visual .future-main{animation:none!important}
.future-hero .future-visual{top:0!important;bottom:0!important;height:100%!important;align-self:auto!important}
.future-hero .future-visual::after{border:0!important;border-radius:0!important;transform:none!important}
.future-hero .future-visual .future-main{-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.35) 24%,#000 62%);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.35) 24%,#000 62%)}
@media (max-width:900px){.future-hero .future-visual .future-main{-webkit-mask-image:none;mask-image:none}}

/* ---------- desktop ---------- */
@media (min-width:1101px){
  .section>.section-heading,.section>.three-cols,.section>.facility-grid,.section>.directory-grid,.section>.campus-grid,.section>.ig-grid,.section>.story-grid{max-width:1320px;margin-inline:auto}
  .section-heading{align-items:end}
  .facility-grid{grid-template-columns:repeat(4,1fr)!important}
  .branch-nav{position:sticky;top:76px;z-index:9;background:color-mix(in srgb,var(--paper) 94%,transparent);backdrop-filter:blur(12px)}
}

/* ---------- phone ---------- */
html,body{overflow-x:clip}
@media (max-width:760px){
  body{font-size:16px}
  .section{padding:56px 6%!important}
  h2{font-size:clamp(30px,8.4vw,40px)!important}
  .section-heading{display:block!important}
  .section-heading>p{margin-top:12px}
  /* campus section menu becomes a swipeable chip row */
  .branch-nav{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;overflow-x:auto;gap:8px!important;padding:12px 6%!important;scrollbar-width:none;position:sticky;top:62px;z-index:9;background:var(--paper);border-bottom:1px solid var(--stone)}
  .branch-nav::-webkit-scrollbar{display:none}
  .branch-nav a{flex:0 0 auto;padding:8px 14px!important;border:1px solid var(--stone)!important;border-radius:999px;font-size:14px;white-space:nowrap;margin:0!important}
  .branch-nav a[aria-current]{background:var(--crest);color:var(--paper)!important;border-color:var(--crest)!important}
  /* campuses, stories: swipe instead of stacking */
  .campus-grid,.story-grid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px!important;margin-inline:-6%;padding:0 6% 6px;scrollbar-width:none}
  .campus-grid::-webkit-scrollbar,.story-grid::-webkit-scrollbar{display:none}
  .campus-grid>*,.story-grid>*{flex:0 0 78%;scroll-snap-align:start}
  .campus-card .campus-art{height:200px!important}
  /* dense lists go two-up */
  .facility-grid,.directory-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important}
  .facility-grid article,.directory-grid a{padding:16px!important}
  .facility-grid h3,.directory-grid h3{font-size:17px!important}
  .facility-grid p{font-size:13.5px;line-height:1.5}
  .three-cols{gap:22px!important}
  .detail-grid{gap:12px!important}
  .hero-facts{margin-top:28px!important}
  .house-marquee{padding:16px 0}
  footer .footer-campuses{display:grid;grid-template-columns:1fr 1fr}
}
.campus-facilities,.section.campus-facilities{background:var(--paper)!important}
.ig-section:not(:has(.ig-grid)){padding-block:48px!important;border-top:1px solid var(--stone)}

/* ---- desktop fixes v2 ---- */
.future-copy{box-sizing:border-box;width:min(46%,680px);max-width:none!important;margin-left:max(4.5%,calc((100vw - 1320px)/2))!important;padding:clamp(48px,7vh,96px) 0 clamp(40px,5vh,72px)!important}
.future-hero{min-height:calc(100vh - 124px)!important;display:flex!important;align-items:center}
.future-hero .future-copy h1{font-size:clamp(46px,4.6vw,88px)!important}
@media (min-width:1101px){
  .section{padding-block:clamp(64px,7vw,104px)!important}
  .intro{display:block!important;max-width:1320px;margin-inline:auto}
  .intro>div{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:end}
  .intro h2{margin:0}
  .section>*{max-width:1320px;margin-inline:auto}
}
@media (max-width:900px){
  .future-hero{display:block!important;min-height:auto!important}
  .future-copy{width:auto;margin:0!important;padding:56px 6% 36px!important}
}
/* Instagram covers */
.ig-grid{grid-template-columns:repeat(6,1fr)!important;gap:14px!important}
.ig-tile{display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--graphite)}
.ig-cover{position:relative;display:block;aspect-ratio:9/16;border-radius:12px;overflow:hidden;background:var(--stone)}
.ig-cover img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.ig-tile:hover .ig-cover img{transform:scale(1.04)}
.ig-play{position:absolute;left:12px;bottom:12px;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.9)}
.ig-play::after{content:"";position:absolute;left:13px;top:10px;border-left:11px solid var(--crest);border-top:7px solid transparent;border-bottom:7px solid transparent}
.ig-cap{font-size:13.5px;line-height:1.4}
@media (max-width:1100px){.ig-grid{grid-template-columns:repeat(4,1fr)!important}}
@media (max-width:700px){.ig-grid{display:flex!important}.ig-tile{flex:0 0 44%!important}}

/* ---- one container rule for every width (replaces the stacked centring) ---- */
:root{--gutter:max(5%,calc((100vw - 1320px)/2))}
.section,.page-heading,.detail-heading,.intro,.hero,.campus-hero,.branch-nav,.utility,header,footer,.results-layout,.result-class,.footer-top,.footer-bottom{
  max-width:none!important;margin-left:0!important;margin-right:0!important;padding-left:var(--gutter)!important;padding-right:var(--gutter)!important}
.section>*,.intro{max-width:none}
.section>.section-heading,.section>.three-cols,.section>.facility-grid,.section>.directory-grid,.section>.campus-grid,.section>.ig-grid,.section>.story-grid{max-width:none!important;margin-inline:0!important}
.future-copy{margin-left:var(--gutter)!important}
.floating-campus{right:var(--gutter)!important}
footer .footer-top,footer .footer-bottom,footer .footer-campuses{padding-left:0!important;padding-right:0!important}
@media (min-width:1101px){
  .intro>div{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)!important;gap:72px!important}
  .intro-bottom{display:flex!important;flex-direction:column!important;gap:20px!important}
  .intro-bottom p{max-width:56ch!important}
  .page-heading h1,.detail-heading h1{max-width:16ch}
}
@media (max-width:760px){
  :root{--gutter:6%}
}
/* Green City cover photo */
.cover-greencity>img{object-position:60% 72%!important}
@media (max-width:700px){.cover-greencity>img{object-position:62% center!important}}
.cover-content{padding-left:var(--gutter)!important;padding-right:var(--gutter)!important;max-width:none!important}
.cover-content>h1,.cover-content>p{max-width:900px}
.cover-caption{right:var(--gutter)!important}

/* ===== Campus themes ===== */
.theme-surajkund{--crest:#163d8f;--night:#0b2358;--flame:#2e6bd8;--lamp:#e8a72c;--tint:#eef2fa;--blue:#163d8f;--ink:#163d8f}
.theme-greencity{--crest:#14523c;--night:#0b3325;--flame:#2f8f5b;--lamp:#e8b84a;--tint:#edf4ee;--blue:#14523c;--ink:#14523c}
.theme-maniram{--crest:#7d1a24;--night:#4c0e16;--flame:#c8392b;--lamp:#e8a72c;--tint:#f8eeeb;--blue:#7d1a24;--ink:#7d1a24}
.theme-all-girls{--crest:#8e2257;--night:#571336;--flame:#d14f8b;--lamp:#f4b9d2;--tint:#fbeff4;--blue:#8e2257;--ink:#8e2257}
[class^="theme-"] .tint,[class^="theme-"] .section.tint,[class^="theme-"] .campus-facilities,[class^="theme-"] .campus-hero{background:var(--tint)!important}
[class^="theme-"] .facility-grid article,[class^="theme-"] .information,[class^="theme-"] .directory-grid a{border-color:color-mix(in srgb,var(--crest) 14%,transparent)!important}
[class^="theme-"] .facility-grid article>span,[class^="theme-"] .three-cols article>span,[class^="theme-"] .directory-grid span{color:var(--flame)!important}
[class^="theme-"] .branch-nav a[aria-current]{color:var(--crest)!important;border-color:var(--crest)!important}
[class^="theme-"] .branch-nav a{--c:var(--crest)}
[class^="theme-"] .text-link{border-color:color-mix(in srgb,var(--crest) 35%,transparent)!important}
[class^="theme-"] .immersive-cover::before{background:linear-gradient(90deg,color-mix(in srgb,var(--night) 86%,transparent),color-mix(in srgb,var(--night) 38%,transparent) 60%,color-mix(in srgb,var(--night) 8%,transparent))!important}
[class^="theme-"] .immersive-cover::after{background:linear-gradient(0deg,color-mix(in srgb,var(--night) 70%,transparent),transparent 45%)!important}
[class^="theme-"] .page-heading,[class^="theme-"] .detail-heading{--c:var(--crest)}
[class^="theme-"] header{border-bottom:3px solid var(--crest)!important}
@media (max-width:700px){[class^="theme-"] .immersive-cover::after{background:linear-gradient(0deg,color-mix(in srgb,var(--night) 95%,transparent),color-mix(in srgb,var(--night) 20%,transparent))!important}}
[class^="theme-"] .directory-grid a{background:#fff!important}
[class^="theme-"] .directory-grid a:hover{background:var(--tint)!important}
[class^="theme-"] .girls-focus{background:var(--tint)!important}

/* ===== Parent-facing sections ===== */
.campus-gallery .cg-grid{display:grid;grid-template-columns:2fr 1fr 1fr;grid-auto-rows:230px;gap:14px}
.cg-grid figure{margin:0;position:relative;overflow:hidden;border-radius:14px;background:var(--stone)}
.cg-grid figure:first-child{grid-row:span 2}
.cg-grid img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.cg-grid figure:hover img{transform:scale(1.04)}
.cg-grid figure::after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.55));pointer-events:none}
.cg-grid figcaption{position:absolute;left:14px;bottom:12px;z-index:1;color:#fff;font-size:14px;font-weight:500}
.progress-band{background:var(--night)!important;display:grid;grid-template-columns:1.1fr 1fr;gap:72px;align-items:center}
.progress-band h2{color:var(--paper)!important;max-width:16ch}
.progress-band p{color:#d9dcea!important;margin:20px 0 24px}
.progress-band .eyebrow{color:var(--lamp)!important}
.progress-band .text-link{color:var(--paper)!important;border-color:rgba(255,255,255,.4)!important}
.progress-cycle{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.2)}
.progress-cycle li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.2)}
.progress-cycle b{font-family:var(--display);font-weight:600;font-size:22px;color:var(--lamp)}
.progress-cycle span{color:var(--paper);font-size:15px;text-align:right}
.admit-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:8px}
.admit-grid article{border-top:2px solid var(--crest);padding-top:20px}
.admit-grid article>span{font-family:var(--display);font-size:14px;font-weight:600;color:var(--flame)}
.admit-grid h3{margin:14px 0 10px;font-size:22px}
.admit-grid p{font-size:14.5px}
.admit-grid a{color:var(--crest);font-weight:600;white-space:nowrap}
.admit-cta{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:40px}
.principal-card.has-photo .leader-photo{width:160px!important;height:200px!important;max-width:none;object-fit:cover;object-position:top;border-radius:12px;margin-bottom:20px}
.director-section{display:grid!important;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:64px;align-items:center}
.director-figure{margin:0}
.director-figure img{width:100%!important;height:auto!important;aspect-ratio:4/5;object-fit:cover;object-position:top;border-radius:16px}
.recognition{display:grid;grid-template-columns:220px 1fr;gap:32px;align-items:center;background:#fff;border:1px solid var(--stone);border-radius:16px;padding:24px;margin:0 0 64px}
.recognition img{width:100%!important;height:auto!important;aspect-ratio:1;object-fit:cover;border-radius:10px}
.recognition h3{font-size:24px;margin:12px 0 10px}
@media (max-width:1100px){.admit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.progress-band{gap:40px}}
@media (max-width:800px){
  .progress-band,.director-section{grid-template-columns:1fr!important;gap:32px}
  .director-figure{max-width:300px}
  .campus-gallery .cg-grid{grid-template-columns:1fr 1fr;grid-auto-rows:150px;gap:10px}
  .cg-grid figure:first-child{grid-column:span 2;grid-row:span 2}
  .recognition{grid-template-columns:1fr;padding:18px}
  .recognition img{max-width:260px}
}
@media (max-width:520px){.admit-grid{grid-template-columns:1fr}.progress-cycle b{font-size:18px}}
/* toppers */
.topper-grid{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
.topper{position:relative;background:#fff;border:1px solid var(--stone);border-radius:14px;overflow:hidden;padding-bottom:14px;text-align:center}
.topper-photo{display:block;aspect-ratio:1/1;background:#0b1a3a;overflow:hidden}
.topper-photo img{width:100%!important;height:100%!important;object-fit:cover;object-position:50% 12%}
.topper-rank{position:absolute;top:10px;left:10px;width:28px;height:28px;border-radius:50%;background:var(--lamp);color:var(--night);font:600 13px/28px var(--display)}
.topper strong{display:block;margin:12px 10px 4px;font:600 15px/1.25 var(--display);color:var(--crest)}
.topper b{font:600 20px var(--display);color:var(--flame)}
.home-toppers{list-style:none;margin:36px 0 28px;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}
.home-toppers li{text-align:center}
.home-toppers img{width:100%!important;height:auto!important;aspect-ratio:1/1;object-fit:cover;object-position:50% 12%;border-radius:50%;border:3px solid var(--lamp);background:#0b1a3a}
.home-toppers strong{display:block;margin-top:12px;font:600 16px/1.2 var(--display);color:var(--paper)}
.home-toppers span{font-size:13px;color:var(--lamp)}
@media (max-width:1100px){.topper-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.home-toppers{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:600px){.topper-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.topper strong{font-size:14px}.home-toppers{gap:12px}.home-toppers strong{font-size:14px}}
.home-toppers img{max-width:150px;margin:0 auto;display:block}
.topper-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
/* campus bar in home hero */
.future-hero{display:flex!important;flex-direction:column}
.future-hero .future-copy{margin-top:auto!important;margin-bottom:auto!important;padding:56px 0 40px}
.campus-bar{position:relative;z-index:3;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 var(--gutter);border-top:1px solid rgba(255,255,255,.16)}
.campus-bar a{position:relative;display:flex;flex-direction:column;gap:2px;padding:22px 44px 26px 20px;color:var(--paper)!important;border-left:1px solid rgba(255,255,255,.12);background:linear-gradient(to bottom,rgba(10,16,64,.55),rgba(10,16,64,.8));backdrop-filter:blur(6px);transition:background .35s var(--ease)}
.campus-bar a:first-child{border-left:0}
.campus-bar a::before{content:"";position:absolute;left:0;right:0;top:-1px;height:3px;background:var(--cc);transform-origin:left;transform:scaleX(.25);transition:transform .45s var(--ease)}
.campus-bar a:hover::before,.campus-bar a:focus-visible::before{transform:scaleX(1)}
.campus-bar a:hover{background:rgba(255,255,255,.07)}
.campus-bar small{font-size:12.5px;color:var(--cc);font-weight:600}
.campus-bar strong{font:600 24px/1.15 var(--display);letter-spacing:-.02em;color:var(--paper)}
.campus-bar span{font-size:13.5px;color:#c9cde0}
.campus-bar i{position:absolute;right:18px;top:22px;font-style:normal;color:var(--cc);transition:transform .3s var(--ease)}
.campus-bar a:hover i{transform:translate(3px,-3px)}
.future-hero .floating-campus{bottom:150px!important}
.future-hero .hero-facts{margin-top:32px!important}
@media (max-width:900px){
  .campus-bar{grid-template-columns:repeat(2,minmax(0,1fr));margin:0 var(--gutter) 28px;border:1px solid rgba(255,255,255,.14);border-radius:14px;overflow:hidden}
  .campus-bar a{padding:16px 34px 18px 16px;border-left:0}
  .campus-bar a:nth-child(2n){border-left:1px solid rgba(255,255,255,.12)}
  .campus-bar a:nth-child(n+3){border-top:1px solid rgba(255,255,255,.12)}
  .campus-bar strong{font-size:19px}
  .campus-bar span{font-size:12.5px}
  .campus-bar a::before{transform:scaleX(1);height:2px}
  .future-hero .future-copy{padding:36px 0 28px}
  .future-hero .floating-campus{bottom:auto!important}
}
.future-hero{align-items:flex-start;min-height:calc(100vh - 123px)!important;min-height:calc(100svh - 123px)!important}
.future-hero .future-copy{margin-left:var(--gutter)!important;margin-right:0!important;padding:40px 0 32px}
.future-hero h1{font-size:clamp(44px,4.8vw,80px)!important}
.future-hero h1+p{margin-top:22px}
.campus-bar{align-self:stretch}
.future-hero .floating-campus{display:none!important}
.home-facts{padding-top:56px!important;padding-bottom:56px!important}
.home-facts .hero-facts{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;margin:0!important;padding:0!important;border:0!important}
.home-facts .hero-facts strong{font:600 clamp(34px,3.6vw,56px)/1 var(--display);color:var(--crest)}
.home-facts .hero-facts span{font-size:15px;color:var(--graphite);letter-spacing:0;text-transform:none}
@media (max-width:700px){.home-facts .hero-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){.future-hero{min-height:0!important}}
.future-hero .future-copy{padding:clamp(16px,4.5vh,56px) 0 clamp(16px,3.5vh,40px)!important}
.future-hero h1{font-size:min(4.8vw,8.6vh,80px)!important}
.future-hero .future-copy p{font-size:clamp(15px,2.1vh,18px)}
.future-hero .actions{margin-top:clamp(16px,3vh,32px)!important}
.campus-bar a{padding:clamp(14px,2.2vh,22px) 40px clamp(16px,2.6vh,26px) 20px}
.campus-bar a:first-child{padding-left:0}
@media (max-width:900px){
  .future-hero h1{font-size:clamp(38px,11vw,52px)!important}
  .future-hero .future-copy p{font-size:15.5px;margin-top:14px}
  .future-hero .actions{margin-top:18px!important}
  .future-hero .actions .watch-link{display:none}
  .campus-bar a,.campus-bar a:first-child{padding:14px 30px 16px 14px}
  .campus-bar{background:rgba(10,16,64,.6)}
}
.home-facts .hero-facts strong{color:var(--crest)!important;font-size:clamp(34px,3.6vw,56px)!important}
.home-facts .hero-facts span{color:var(--graphite)!important;font-size:15px!important;margin-top:8px}
.home-facts .hero-facts>div{border-top:2px solid var(--stone);padding-top:18px}

@media(min-width:701px){.home-results .result-metrics{grid-template-columns:repeat(4,1fr)!important}}
@media(min-width:701px) and (max-width:1000px){.home-results .result-metrics{grid-template-columns:1fr 1fr!important}}
