/* MAJA Elite 12 — school-focused composition, full-width headings and light motion. */
:root{
 --maja-v12-navy:var(--maja-primary,#09255b);
 --maja-v12-blue:var(--maja-secondary,#164c9c);
 --maja-v12-gold:var(--maja-accent,#f3ad25);
 --maja-v12-ink:#12213d;
 --maja-v12-muted:#5a6678;
 --maja-v12-paper:#fffdf8;
 --maja-v12-soft:#f3f7fb;
 --maja-v12-line:rgba(9,37,91,.14);
 --maja-v12-radius:18px;
 --maja-v12-shadow:0 18px 55px rgba(13,35,73,.10);
}

/* Root correction: section headings use available width unless the section declares a real split. */
.maja-elite-v12 :where(.section-head,.ps-section-head,.af-section-head,.gallery-header,.maja-section-heading,.v12-section-head,.maja-v12-heading){
 display:grid!important;
 grid-template-columns:minmax(0,1fr)!important;
 align-items:start;
 width:100%!important;
 max-width:none!important;
 gap:.75rem!important;
}
.maja-elite-v12 :where(.section-head,.ps-section-head,.af-section-head,.gallery-header,.maja-section-heading,.v12-section-head,.maja-v12-heading) > :where(h1,h2,h3,.wp-block-heading){
 width:100%!important;
 max-width:100%!important;
 text-wrap:balance;
}
.maja-elite-v12 :where(.section-head,.ps-section-head,.af-section-head,.gallery-header,.maja-section-heading,.v12-section-head,.maja-v12-heading) > div{width:100%!important;max-width:none!important}
.maja-elite-v12 :where(.section-head,.ps-section-head,.af-section-head,.gallery-header,.maja-section-heading,.v12-section-head,.maja-v12-heading) :where(h1,h2,h3,.wp-block-heading){max-width:100%!important}
.maja-elite-v12 :where(.section-head,.ps-section-head,.af-section-head,.gallery-header,.maja-section-heading,.v12-section-head,.maja-v12-heading) > p:not(.eyebrow):not(.maja-kicker){
 width:100%!important;
 max-width:72ch!important;
 margin-inline:0!important;
}
.maja-elite-v12 :where(.admission-inner,.admission-inner h2,.hero-copy,.hero-copy h1){max-width:none}
.maja-elite-v12 :where(h1,h2,h3,h4){overflow-wrap:normal;word-break:normal}
.maja-elite-v12 h1{font-size:clamp(2.55rem,5.8vw,5.5rem);line-height:.98;letter-spacing:-.045em}
.maja-elite-v12 h2{font-size:clamp(2rem,4.25vw,4.25rem);line-height:1.04;letter-spacing:-.035em}
.maja-elite-v12 h3{font-size:clamp(1.18rem,2vw,1.65rem);line-height:1.2;letter-spacing:-.018em}
.maja-elite-v12 :where(p,li){line-height:1.72}
.maja-elite-v12 :where(.is-style-lead,.lead,.maja-page-lead){font-size:clamp(1.05rem,1.45vw,1.3rem);line-height:1.72;color:var(--maja-v12-muted)}
.maja-elite-v12 .maja-kicker{display:flex;align-items:center;gap:.65rem;margin:0 0 .7rem;color:var(--maja-v12-blue);font-size:.75rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.maja-elite-v12 .maja-kicker:before{content:"";width:2.4rem;height:2px;background:currentColor}

/* Header polish without replacing the existing navigation system. */
.maja-elite-v12 .site-header,.maja-elite-v12 .maja-header{transition:box-shadow .25s ease,background-color .25s ease,transform .25s ease}
.maja-elite-v12 .site-header.is-scrolled,.maja-elite-v12 .maja-header.is-scrolled{box-shadow:0 8px 30px rgba(10,31,68,.10);background:rgba(255,255,255,.96)}
.maja-elite-v12 :where(.site-header,.maja-header) a{transition:color .2s ease,background-color .2s ease,transform .2s ease}
.maja-elite-v12 :where(.site-header,.maja-header) nav a:focus-visible{outline:3px solid color-mix(in srgb,var(--maja-v12-gold),transparent 20%);outline-offset:4px;border-radius:6px}

/* New editable page shell. */
.maja-v12-page{background:var(--maja-v12-paper);color:var(--maja-v12-ink)}
.maja-v12-hero{position:relative;min-height:clamp(440px,66vh,720px);display:grid;align-items:end;overflow:hidden;background:linear-gradient(125deg,var(--maja-v12-navy),#164b91)}
.maja-v12-hero__image{position:absolute!important;inset:0;margin:0!important;width:100%!important;height:100%!important;max-width:none!important}
.maja-v12-hero__image img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.maja-v12-hero__scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,25,63,.9) 0%,rgba(5,25,63,.62) 48%,rgba(5,25,63,.18) 100%),linear-gradient(0deg,rgba(5,25,63,.55),transparent 55%)}
.maja-v12-hero__content{position:relative;z-index:2;padding-block:clamp(5rem,10vw,8.5rem) clamp(3.2rem,7vw,6rem);color:#fff}
.maja-v12-hero__content .maja-kicker{color:#ffd166}
.maja-v12-hero__content h1{max-width:1100px;margin:.25rem 0 1.25rem;color:#fff;text-wrap:balance}
.maja-v12-hero__content .maja-page-lead{max-width:68ch;margin:0;color:rgba(255,255,255,.86)}
.maja-v12-page:not(:has(.maja-v12-hero__image img)) .maja-v12-hero:after{content:"MAJA";position:absolute;right:-.03em;bottom:-.22em;color:rgba(255,255,255,.055);font-size:clamp(9rem,26vw,28rem);font-weight:900;line-height:1;letter-spacing:-.08em}

.maja-v12-editor{padding-block:clamp(4.5rem,8vw,8rem)}
.maja-v12-prose{display:grid;gap:clamp(3rem,7vw,7rem)}
.maja-v12-prose > *{margin-block:0}
.maja-v12-prose > .maja-content-band{display:grid;grid-template-columns:minmax(0,.82fr) minmax(300px,1.18fr);gap:clamp(2rem,7vw,8rem);align-items:start;padding-block:clamp(2rem,4vw,4.5rem);border-top:1px solid var(--maja-v12-line)}
.maja-v12-prose > .maja-content-band:nth-child(even){grid-template-columns:minmax(300px,1.18fr) minmax(0,.82fr)}
.maja-v12-prose > .maja-content-band:nth-child(even) h2{order:2}
.maja-v12-prose > .maja-content-band h2{max-width:16ch;margin:0;color:var(--maja-v12-navy);text-wrap:balance}
.maja-v12-prose > .maja-content-band p{max-width:62ch;margin:0}
.maja-v12-prose > :not(.maja-content-band){max-width:100%}
.maja-v12-prose :where(.wp-block-image,.wp-block-gallery){border-radius:var(--maja-v12-radius);overflow:hidden}
.maja-v12-prose .wp-block-image img{width:100%;height:auto}
.maja-content-band--tint{position:relative}
.maja-content-band--tint:before{content:"";position:absolute;inset:-1.5rem -3vw;z-index:-1;background:var(--maja-v12-soft);border-radius:var(--maja-v12-radius)}

.maja-v12-stage-overview,.maja-careers-list{padding-block:clamp(4.5rem,8vw,8rem);background:var(--maja-v12-soft)}
.maja-v12-heading{margin-bottom:clamp(2.3rem,5vw,4.5rem)}
.maja-v12-heading h2{margin:.2rem 0 .8rem;color:var(--maja-v12-navy)}
.maja-v12-heading p{color:var(--maja-v12-muted)}
.maja-stage-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(1rem,2vw,1.75rem)}
.maja-stage-card{position:relative;grid-column:span 4;min-height:480px;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--maja-v12-line);border-radius:var(--maja-v12-radius);background:#fff;box-shadow:0 10px 35px rgba(13,35,73,.06);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease,border-color .35s ease}
.maja-stage-card:hover{transform:translateY(-8px);box-shadow:var(--maja-v12-shadow);border-color:rgba(22,76,156,.35)}
.maja-stage-card__media{display:block;overflow:hidden;aspect-ratio:4/3;background:var(--maja-v12-navy)}
.maja-stage-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.maja-stage-card:hover .maja-stage-card__media img{transform:scale(1.045)}
.maja-stage-card__body{position:relative;display:flex;flex:1;flex-direction:column;padding:clamp(1.5rem,3vw,2.25rem)}
.maja-stage-card__number{position:absolute;right:1.4rem;top:1.1rem;color:rgba(9,37,91,.2);font-size:2.5rem;font-weight:800;line-height:1}
.maja-stage-card h3{margin:.25rem 0 .25rem;color:var(--maja-v12-navy);font-size:clamp(1.55rem,2.4vw,2.35rem)}
.maja-stage-card h3 a{text-decoration:none;color:inherit}
.maja-stage-card__grades{margin:.2rem 0 1rem;color:var(--maja-v12-blue);font-weight:750}
.maja-stage-card .maja-text-link{margin-top:auto;padding-top:1rem;color:var(--maja-v12-navy);font-weight:800;text-decoration:none}
.maja-stage-card.no-media{min-height:420px;background:linear-gradient(145deg,#fff 0 58%,#edf4fb 58%)}
.maja-stage-card.no-media:after{content:"";position:absolute;right:-4rem;bottom:-4rem;width:13rem;height:13rem;border:1.5rem solid rgba(22,76,156,.08);border-radius:50%}
.maja-stage-card--early-years.no-media{background:linear-gradient(145deg,#fffaf0 0 58%,#fff0cd 58%)}
.maja-stage-card--secondary.no-media{background:linear-gradient(145deg,#fff 0 58%,#e9effb 58%)}

.maja-stage-facts-wrap{position:relative;z-index:3;margin-top:clamp(-2.2rem,-4vw,-3.6rem)}
.maja-stage-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(185px,1fr));overflow:hidden;border-radius:14px;background:#fff;box-shadow:var(--maja-v12-shadow)}
.maja-stage-facts>div{display:grid;gap:.35rem;padding:1.4rem 1.6rem;border-right:1px solid var(--maja-v12-line)}
.maja-stage-facts>div:last-child{border-right:0}
.maja-stage-facts span{color:var(--maja-v12-muted);font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.maja-stage-facts strong{color:var(--maja-v12-navy);font-size:1rem;line-height:1.4}
.maja-stage-nav-wrap{padding-bottom:clamp(4rem,8vw,7rem)}
.maja-stage-nav{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.25rem 1.5rem;border-block:1px solid var(--maja-v12-line)}
.maja-stage-nav__label{font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--maja-v12-muted)}
.maja-stage-nav>div{display:flex;flex-wrap:wrap;gap:.5rem}
.maja-stage-nav a{padding:.65rem 1rem;border-radius:999px;color:var(--maja-v12-navy);font-weight:750;text-decoration:none;transition:background .2s ease,color .2s ease,transform .2s ease}
.maja-stage-nav a:hover,.maja-stage-nav a[aria-current="page"]{background:var(--maja-v12-navy);color:#fff;transform:translateY(-2px)}

.maja-careers-list{background:#fff}
.maja-career-openings{display:grid;gap:1rem}
.maja-career-openings .job-card-v3{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2rem;padding:clamp(1.5rem,3vw,2.25rem);border:1px solid var(--maja-v12-line);border-radius:14px;background:var(--maja-v12-paper);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.maja-career-openings .job-card-v3:hover{transform:translateX(6px);border-color:rgba(22,76,156,.35);box-shadow:0 16px 35px rgba(13,35,73,.08)}
.maja-job-empty{padding:clamp(2rem,5vw,4rem);border:1px dashed rgba(9,37,91,.28);border-radius:14px;background:var(--maja-v12-soft);text-align:center}

.maja-v12-cta{position:relative;overflow:hidden;padding-block:clamp(4rem,8vw,7rem);background:var(--maja-v12-navy);color:#fff}
.maja-v12-cta:after{content:"";position:absolute;right:-8vw;top:50%;width:38vw;aspect-ratio:1;border:1px solid rgba(255,255,255,.1);border-radius:50%;transform:translateY(-50%);box-shadow:0 0 0 5vw rgba(255,255,255,.025),0 0 0 10vw rgba(255,255,255,.02)}
.maja-v12-cta__inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:2rem}
.maja-v12-cta h2{max-width:18ch;margin:.2rem 0;color:#fff}
.maja-v12-cta .maja-kicker{color:#ffd166}
.maja-v12-cta .wp-block-button__link{background:var(--maja-v12-gold);color:#14213d;font-weight:800}

/* Existing cards gain image-aware polish without creating blank media boxes. */
.maja-elite-v12 :where(.v6-life-bento article,.maja-facility-card,.event-row,.news-card article,.album-card-v3,.resource-card-v3,.v6-teacher-card){transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.maja-elite-v12 :where(.v6-life-bento article,.maja-facility-card,.event-row,.news-card article,.album-card-v3,.resource-card-v3,.v6-teacher-card):hover{transform:translateY(-5px);box-shadow:0 16px 38px rgba(13,35,73,.09)}
.maja-elite-v12 :where(.v6-life-bento,.maja-facility-grid,.album-grid-v3) img{transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.maja-elite-v12 :where(.v6-life-bento article,.maja-facility-card,.album-card-v3):hover img{transform:scale(1.04)}
.maja-elite-v12 .resource-card-v3:has(img){grid-template-columns:minmax(120px,28%) 1fr}
.maja-elite-v12 :where(.event-row__media,.news-card__media,.resource-card-v3__media){display:block;overflow:hidden;border-radius:10px}
.maja-elite-v12 :where(.event-row__media,.news-card__media,.resource-card-v3__media) img{display:block;width:100%;height:100%;min-height:110px;object-fit:cover;transition:transform .55s ease}
.maja-elite-v12 :where(.event-row,.news-card article,.resource-card-v3):hover :where(.event-row__media,.news-card__media,.resource-card-v3__media) img{transform:scale(1.04)}
.maja-elite-v12 .event-row.has-media{grid-template-columns:minmax(110px,170px) auto minmax(0,1fr) auto}
.maja-elite-v12 .news-card article.has-media{display:grid;grid-template-columns:minmax(100px,34%) 1fr;column-gap:1rem}
.maja-elite-v12 .news-card article.has-media .news-card__media{grid-row:1/5}
.maja-elite-v12 .resource-card-v3.has-media{display:grid;grid-template-columns:minmax(120px,28%) 1fr;align-items:stretch}
.maja-elite-v12 .resource-card-v3.no-media,.maja-elite-v12 .maja-facility-card.no-media{background:linear-gradient(145deg,#fff 0 75%,var(--maja-v12-soft) 75%)}
.maja-elite-v12 :where(a,button,.wp-element-button):focus-visible{outline:3px solid var(--maja-v12-gold);outline-offset:3px}

/* One observer, multiple component-specific entrances. Content remains visible without JS. */
.maja-elite-v12 .reveal{opacity:1;transform:none}
.maja-motion .maja-motion-item{
 opacity:0;
 transform:translate3d(0,38px,0);
 transition-property:opacity,transform,clip-path,filter;
 transition-duration:.76s,.82s,.9s,.72s;
 transition-timing-function:ease,cubic-bezier(.16,.78,.22,1),cubic-bezier(.2,.75,.2,1),ease;
 transition-delay:var(--maja-motion-delay,0ms);
 will-change:opacity,transform,clip-path;
}
.maja-motion .maja-motion-item[data-motion="left"]{transform:translate3d(-52px,0,0)}
.maja-motion .maja-motion-item[data-motion="right"]{transform:translate3d(52px,0,0)}
.maja-motion .maja-motion-item[data-motion="scale"]{transform:translate3d(0,18px,0) scale(.925);filter:saturate(.76)}
.maja-motion .maja-motion-item[data-motion="tilt"]{transform:translate3d(0,34px,0) rotate(1.6deg)}
.maja-motion .maja-motion-item[data-motion="clip-up"]{clip-path:inset(0 0 100% 0);transform:translate3d(0,24px,0)}
.maja-motion .maja-motion-item[data-motion="mask-left"]{clip-path:inset(0 100% 0 0);transform:translate3d(-20px,0,0)}
.maja-motion .maja-motion-item[data-motion="mask-right"]{clip-path:inset(0 0 0 100%);transform:translate3d(20px,0,0)}
.maja-motion .maja-motion-item[data-motion="mask-up"]{clip-path:inset(100% 0 0 0);transform:translate3d(0,22px,0)}
.maja-motion .maja-motion-item.is-visible{opacity:1;transform:none;clip-path:inset(0);filter:none;will-change:auto}

/* Page opening: type hierarchy reveals at separate speeds instead of one generic fade. */
.maja-motion .maja-v12-hero__content>*,.maja-motion .maja-ref-hero__inner>*{opacity:0}
.maja-motion-ready .maja-v12-hero__content>*,.maja-motion-ready .maja-ref-hero__inner>*{animation:maja-v12-rise .78s cubic-bezier(.16,.78,.22,1) forwards}
.maja-motion-ready :is(.maja-v12-hero__content,.maja-ref-hero__inner)>.maja-kicker{animation-name:maja-v12-kicker}
.maja-motion-ready :is(.maja-v12-hero__content,.maja-ref-hero__inner)>h1{animation-name:maja-v12-title;animation-delay:.1s}
.maja-motion-ready :is(.maja-v12-hero__content,.maja-ref-hero__inner)>p:last-child{animation-delay:.24s}
.maja-motion-ready .maja-ref-hero__shade{animation:maja-v12-shade 1.4s ease both}
@keyframes maja-v12-rise{from{opacity:0;transform:translate3d(0,28px,0)}to{opacity:1;transform:none}}
@keyframes maja-v12-kicker{from{opacity:0;transform:translate3d(-30px,0,0);letter-spacing:.24em}to{opacity:1;transform:none}}
@keyframes maja-v12-title{from{opacity:0;transform:translate3d(0,48px,0);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:none;clip-path:inset(0)}}
@keyframes maja-v12-shade{from{opacity:0}to{opacity:1}}

@media (max-width:900px){
 .maja-v12-prose > .maja-content-band,.maja-v12-prose > .maja-content-band:nth-child(even){grid-template-columns:1fr;gap:1rem}
 .maja-v12-prose > .maja-content-band:nth-child(even) h2{order:initial}
 .maja-v12-prose > .maja-content-band h2{max-width:22ch}
 .maja-stage-card{grid-column:span 6}
 .maja-v12-hero{min-height:520px}
 .maja-v12-cta__inner{align-items:flex-start;flex-direction:column}
}
@media (max-width:640px){
 .maja-elite-v12 h1{font-size:clamp(2.4rem,13vw,4rem)}
 .maja-elite-v12 h2{font-size:clamp(1.9rem,10vw,3rem)}
 .maja-v12-hero{min-height:470px}
 .maja-v12-hero__scrim{background:linear-gradient(0deg,rgba(5,25,63,.9),rgba(5,25,63,.38))}
 .maja-stage-card{grid-column:1/-1;min-height:0}
 .maja-stage-card.no-media{min-height:360px}
 .maja-stage-facts{grid-template-columns:1fr 1fr}
 .maja-stage-facts>div:nth-child(2){border-right:0}
 .maja-stage-facts>div{border-bottom:1px solid var(--maja-v12-line)}
 .maja-stage-nav{align-items:flex-start;flex-direction:column}
 .maja-career-openings .job-card-v3{grid-template-columns:1fr}
 .maja-elite-v12 .event-row.has-media{grid-template-columns:1fr}
 .maja-elite-v12 .event-row.has-media time{position:absolute;margin:.75rem}
 .maja-elite-v12 .resource-card-v3.has-media{grid-template-columns:1fr}
 .maja-v12-prose{gap:2.5rem}
 .maja-v12-prose > .maja-content-band{padding-block:1.75rem}
}
@media (prefers-reduced-motion:reduce){
 .maja-elite-v12 *{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
 .maja-motion .maja-motion-item,.maja-motion .maja-v12-hero__content>*{opacity:1!important;transform:none!important}
}

/* Site-wide heading correction: full desktop line first, wrapping only when needed. */
@media(min-width:821px){
 body.maja-elite-v12 :is(.section-head,.ps-section-head,.af-section-head,.gallery-header,.maja-section-heading,.v12-section-head,.maja-v12-heading,.maja-ref-heading,.maja-ref-intro__head,.maja-ref-exam__head){
  display:block!important;width:100%!important;max-width:none!important;grid-template-columns:none!important;
 }
 body.maja-elite-v12 :is(.section-head,.ps-section-head,.af-section-head,.gallery-header,.maja-section-heading,.v12-section-head,.maja-v12-heading,.maja-ref-heading,.maja-ref-intro__head,.maja-ref-exam__head) :is(h1,h2,h3,.wp-block-heading){
  width:100%!important;max-width:none!important;text-wrap:pretty!important;word-break:normal!important;overflow-wrap:normal!important;
 }
 body.maja-elite-v12 :is(.ps-section-head,.af-section-head,.section-head,.gallery-header,.maja-ref-heading,.maja-ref-intro__head,.maja-ref-exam__head)>h2{
  font-size:clamp(2.15rem,3.25vw,3.45rem)!important;line-height:1.08!important;
 }
}

/* Optional Image blocks inside editable information cards become real card media. */
.maja-elite-v12 .ps-info-card:has(>figure:first-child){display:flex;min-height:0;flex-direction:column;padding:0}
.maja-elite-v12 .ps-info-card>figure:first-child{width:100%;aspect-ratio:16/10;margin:0;overflow:hidden;background:var(--maja-v12-soft)}
.maja-elite-v12 .ps-info-card>figure:first-child img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.16,.78,.22,1)}
.maja-elite-v12 .ps-info-card:has(>figure:first-child)>:not(figure){margin-inline:26px}
.maja-elite-v12 .ps-info-card:has(>figure:first-child)>.ps-card-number{top:calc(62.5% + 14px)}
.maja-elite-v12 .ps-info-card:has(>figure:first-child)>.ps-card-icon{margin-top:25px;margin-bottom:25px}
.maja-elite-v12 .ps-info-card:has(>figure:first-child)>:last-child{margin-bottom:26px}
.maja-elite-v12 .ps-info-card:has(>figure:first-child):hover img{transform:scale(1.045)}

/* ========================================================================== 
   12.0.1 focused reference fix
   Corrects the homepage Academics composition and unconstrained arrow SVGs.
   It also tightens the existing stage/Careers layouts without changing data.
   ========================================================================== */

/* Icons must never inherit the width of media/cover SVG rules. */
body.maja-elite-v12 :is(.btn,.text-link,.maja-text-link,.circle-arrow) > svg{
 flex:0 0 auto!important;
 display:inline-block!important;
 width:1.05em!important;
 height:1.05em!important;
 min-width:0!important;
 max-width:1.05em!important;
 min-height:0!important;
 max-height:1.05em!important;
 overflow:visible!important;
 fill:none!important;
 stroke:currentColor!important;
 stroke-width:2!important;
 stroke-linecap:round!important;
 stroke-linejoin:round!important;
}
body.maja-elite-v12 :is(.btn,.text-link,.maja-text-link,.circle-arrow) > svg :is(path,line,polyline){fill:none!important;stroke:currentColor!important;stroke-width:2!important}
body.maja-elite-v12 .maja-text-link{display:inline-flex;align-items:center;gap:.55rem;width:max-content;max-width:100%}

/* Homepage: remove the artificial 700px title column and use the full shell. */
@media (min-width:821px){
 body.maja-elite-v12 #academics .section-head,
 body.maja-elite-v12 .academics .section-head{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin-bottom:clamp(2rem,3.6vw,3.5rem)!important;
 }
 body.maja-elite-v12 #academics .section-head>div,
 body.maja-elite-v12 .academics .section-head>div{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  flex:0 0 100%!important;
 }
 body.maja-elite-v12 #academics .section-head h2,
 body.maja-elite-v12 .academics .section-head h2{
  width:max-content!important;
  max-width:100%!important;
  margin:.6rem 0 0!important;
  font-size:clamp(2.55rem,3.65vw,3.65rem)!important;
  line-height:1.04!important;
  letter-spacing:-.035em!important;
  text-wrap:pretty!important;
 }
 body.maja-elite-v12 #academics .section-head>p,
 body.maja-elite-v12 .academics .section-head>p{
  width:100%!important;
  max-width:74ch!important;
  margin:1rem 0 0!important;
 }
}

/* Homepage stage choices: compact school-navigation panels, not tall SaaS cards. */
body.maja-elite-v12 #academics .maja-stage-grid,
body.maja-elite-v12 .academics .maja-stage-grid{gap:1px;border:1px solid var(--maja-v12-line);border-radius:14px;overflow:hidden;background:var(--maja-v12-line)}
body.maja-elite-v12 #academics .maja-stage-card,
body.maja-elite-v12 .academics .maja-stage-card{
 min-height:0!important;
 height:auto!important;
 border:0!important;
 border-radius:0!important;
 box-shadow:none!important;
 background:#fff!important;
 transform:none;
}
body.maja-elite-v12 #academics .maja-stage-card:hover,
body.maja-elite-v12 .academics .maja-stage-card:hover{transform:none!important;box-shadow:none!important;background:var(--maja-v12-soft)!important}
body.maja-elite-v12 #academics .maja-stage-card__media,
body.maja-elite-v12 .academics .maja-stage-card__media{aspect-ratio:16/9;border-radius:0}
body.maja-elite-v12 #academics .maja-stage-card__body,
body.maja-elite-v12 .academics .maja-stage-card__body{min-height:285px;padding:clamp(1.5rem,2.6vw,2.35rem)}
body.maja-elite-v12 #academics .maja-stage-card__number,
body.maja-elite-v12 .academics .maja-stage-card__number{top:1.25rem;right:1.35rem;font-size:2.15rem;color:rgba(9,37,91,.13)}
body.maja-elite-v12 #academics .maja-stage-card h3,
body.maja-elite-v12 .academics .maja-stage-card h3{font-size:clamp(1.65rem,2.15vw,2.15rem)}
body.maja-elite-v12 #academics .maja-stage-card.no-media:after,
body.maja-elite-v12 .academics .maja-stage-card.no-media:after{display:none!important}
body.maja-elite-v12 #academics .maja-stage-card.no-media,
body.maja-elite-v12 .academics .maja-stage-card.no-media{background:#fff!important}
body.maja-elite-v12 #academics .maja-stage-card--early-years{border-top:4px solid #e6a52d!important}
body.maja-elite-v12 #academics .maja-stage-card--primary{border-top:4px solid #3973b9!important}
body.maja-elite-v12 #academics .maja-stage-card--secondary{border-top:4px solid var(--maja-v12-navy)!important}

/* Stage pages: closer to the reference rhythm—photo first, facts, editorial story. */
body.maja-elite-v12 .maja-v12-page--pre-primary-school .maja-v12-hero{background-image:linear-gradient(90deg,rgba(5,25,63,.82),rgba(5,25,63,.18)),url('../images/maja-gallery/play.jpg');background-size:cover;background-position:center}
body.maja-elite-v12 .maja-v12-page--primary-school .maja-v12-hero{background-image:linear-gradient(90deg,rgba(5,25,63,.82),rgba(5,25,63,.18)),url('../images/maja-gallery/classroom.jpg');background-size:cover;background-position:center}
body.maja-elite-v12 .maja-v12-page--secondary-school .maja-v12-hero{background-image:linear-gradient(90deg,rgba(5,25,63,.82),rgba(5,25,63,.18)),url('../images/graduation.jpg');background-size:cover;background-position:center}
body.maja-elite-v12 .maja-v12-page--stage .maja-v12-hero{min-height:clamp(430px,58vh,630px)}
body.maja-elite-v12 .maja-v12-page--stage .maja-v12-hero__content{padding-block:clamp(5rem,9vw,8rem) clamp(3rem,6vw,5rem)}
body.maja-elite-v12 .maja-v12-page--stage .maja-v12-hero__content h1{max-width:18ch;font-size:clamp(3rem,6vw,5.6rem)}
body.maja-elite-v12 .maja-v12-page--stage .maja-v12-editor{padding-block:clamp(4rem,7vw,7rem)}
body.maja-elite-v12 .maja-v12-prose>:is(.wp-block-media-text,.wp-block-columns){width:100%;max-width:none;gap:clamp(1.5rem,5vw,5rem)}
body.maja-elite-v12 .maja-v12-prose .wp-block-media-text__media img{min-height:340px;max-height:600px;object-fit:cover;border-radius:16px}
body.maja-elite-v12 .maja-v12-prose>.wp-block-gallery{width:100%;max-width:none;gap:12px}
body.maja-elite-v12 .maja-v12-prose>.wp-block-gallery figure{min-height:240px}
body.maja-elite-v12 .maja-v12-prose>.wp-block-gallery img{width:100%;height:100%;object-fit:cover}
body.maja-elite-v12 .maja-stage-facts{border-top:4px solid var(--maja-v12-gold)}

/* Careers: compact institutional presentation and vacancy rows. */
body.maja-elite-v12 .maja-v12-page--careers .maja-v12-hero{min-height:clamp(390px,52vh,570px);background-image:linear-gradient(90deg,rgba(5,25,63,.88),rgba(5,25,63,.28)),url('../images/maja-gallery/bright-classroom.jpg');background-size:cover;background-position:center}
body.maja-elite-v12 .maja-v12-page--careers .maja-v12-editor{padding-block:clamp(3.5rem,6vw,6rem)}
body.maja-elite-v12 .maja-v12-page--careers .maja-v12-prose{gap:1px;border:1px solid var(--maja-v12-line);border-top:4px solid var(--maja-v12-gold);border-radius:12px;overflow:hidden;background:var(--maja-v12-line)}
body.maja-elite-v12 .maja-v12-page--careers .maja-content-band,
body.maja-elite-v12 .maja-v12-page--careers .maja-content-band:nth-child(even){grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:clamp(1.5rem,5vw,5rem);padding:clamp(1.8rem,4vw,3.2rem);border:0;background:#fff}
body.maja-elite-v12 .maja-v12-page--careers .maja-content-band:before{display:none}
body.maja-elite-v12 .maja-v12-page--careers .maja-content-band:nth-child(even) h2{order:initial}
body.maja-elite-v12 .maja-v12-page--careers .maja-content-band h2{font-size:clamp(1.65rem,2.6vw,2.7rem);max-width:18ch}
body.maja-elite-v12 .maja-careers-list{background:var(--maja-v12-soft)}
body.maja-elite-v12 .maja-career-openings .job-card-v3{border-radius:10px;background:#fff;box-shadow:none}
body.maja-elite-v12 .maja-career-openings .job-card-v3:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(13,35,73,.08)}

@media (max-width:820px){
 body.maja-elite-v12 #academics .section-head h2,
 body.maja-elite-v12 .academics .section-head h2{width:100%!important;font-size:clamp(2.15rem,9vw,3.05rem)!important}
 body.maja-elite-v12 #academics .maja-stage-grid,
 body.maja-elite-v12 .academics .maja-stage-grid{display:grid;grid-template-columns:1fr;border-radius:12px}
 body.maja-elite-v12 #academics .maja-stage-card,
 body.maja-elite-v12 .academics .maja-stage-card{grid-column:1/-1}
 body.maja-elite-v12 #academics .maja-stage-card__body,
 body.maja-elite-v12 .academics .maja-stage-card__body{min-height:0}
 body.maja-elite-v12 .maja-v12-page--careers .maja-content-band,
 body.maja-elite-v12 .maja-v12-page--careers .maja-content-band:nth-child(even){grid-template-columns:1fr;gap:1rem}
 body.maja-elite-v12 .maja-v12-page--stage .maja-v12-hero{min-height:470px}
}

/* ========================================================================== 
   Reference-led Pre-Primary, Primary, Secondary and Careers pages
   ========================================================================== */
.maja-ref-page{--ref-accent:var(--maja-v12-gold);--ref-soft:#f4f7fb;--ref-ink:var(--maja-v12-ink);background:#fff;color:var(--ref-ink)}
.maja-ref-page--early{--ref-accent:#ec9e36;--ref-soft:#fff8ec}
.maja-ref-page--primary{--ref-accent:#3b78bc;--ref-soft:#f0f7fc}
.maja-ref-page--secondary{--ref-accent:#153e80;--ref-soft:#f0f3f9}
.maja-ref-page--career{--ref-accent:#d99525;--ref-soft:#f8f7f2}
.maja-ref-page :where(h1,h2,h3,p){margin-top:0}
.maja-ref-page h2{width:100%;max-width:none;color:var(--maja-v12-navy);font-size:clamp(2rem,3.45vw,3.55rem);line-height:1.07;text-wrap:pretty}
.maja-ref-page h3{color:var(--maja-v12-navy)}
.maja-ref-section{position:relative;padding-block:clamp(4.4rem,8vw,8rem)}
.maja-ref-lead{max-width:66ch;color:var(--maja-v12-muted);font-size:clamp(1.05rem,1.35vw,1.25rem);line-height:1.75}
.maja-ref-heading{width:100%;max-width:none;margin-bottom:clamp(2.2rem,4.5vw,4rem)}
.maja-ref-heading>p:last-child{max-width:70ch;color:var(--maja-v12-muted);font-size:1.05rem}

.maja-ref-hero{position:relative;display:grid;align-items:end;min-height:clamp(470px,65vh,720px);overflow:hidden;background-image:linear-gradient(90deg,rgba(5,25,63,.92),rgba(5,25,63,.32)),var(--maja-ref-hero);background-size:cover;background-position:center}
.maja-ref-hero:after{content:"";position:absolute;inset:auto 0 0;height:35%;background:linear-gradient(0deg,rgba(5,25,63,.55),transparent)}
.maja-ref-hero__shade{position:absolute;inset:0;background:radial-gradient(circle at 82% 20%,rgba(255,255,255,.12),transparent 30%)}
.maja-ref-hero__inner{position:relative;z-index:2;padding-block:clamp(7rem,14vw,12rem) clamp(4.5rem,8vw,7rem);color:#fff}
.maja-ref-hero .maja-kicker{color:#ffd36a}
.maja-ref-hero h1{max-width:15ch;margin:.3rem 0 1.2rem;color:#fff;font-size:clamp(3.1rem,7.2vw,7rem);line-height:.94;letter-spacing:-.055em;text-wrap:balance}
.maja-ref-hero__inner>p:last-child{max-width:65ch;margin:0;color:rgba(255,255,255,.86);font-size:clamp(1.02rem,1.5vw,1.25rem);line-height:1.65}
.maja-ref-page--early .maja-ref-hero h1{max-width:18ch}
.maja-ref-page--career .maja-ref-hero{min-height:clamp(400px,54vh,590px)}

.maja-ref-facts{position:relative;z-index:5;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:clamp(-2.6rem,-4vw,-3.8rem);overflow:hidden;border-top:4px solid var(--ref-accent);border-radius:12px;background:#fff;box-shadow:0 18px 50px rgba(8,32,75,.14)}
.maja-ref-facts>div{display:grid;gap:.4rem;padding:1.4rem clamp(1.1rem,2vw,1.8rem);border-right:1px solid var(--maja-v12-line)}
.maja-ref-facts>div:last-child{border-right:0}
.maja-ref-facts span{color:var(--maja-v12-muted);font-size:.68rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.maja-ref-facts strong{color:var(--maja-v12-navy);font-size:.98rem;line-height:1.45}

.maja-ref-intro{padding-top:clamp(6rem,10vw,10rem)}
.maja-ref-split{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(2.5rem,7vw,7rem);align-items:center}
.maja-ref-intro__head{grid-column:1/-1;width:100%;max-width:none;margin-bottom:clamp(-.5rem,-1vw,-1rem)}
.maja-ref-intro__head h2{margin:.45rem 0 0;width:100%;max-width:none}
.maja-ref-split__image{position:relative;min-height:520px}
.maja-ref-split__image:before{content:"";position:absolute;inset:2rem -1.2rem -1.2rem 2rem;border:1px solid color-mix(in srgb,var(--ref-accent) 48%,transparent);border-radius:16px}
.maja-ref-split__image img{position:relative;width:100%;height:100%;min-height:520px;object-fit:cover;border-radius:16px;box-shadow:var(--maja-v12-shadow)}
.maja-ref-page--early .maja-ref-split__image img{border-radius:80px 16px 80px 16px}
.maja-ref-split__copy h2{margin:.45rem 0 1.3rem}
.maja-ref-entry{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--maja-v12-line);color:var(--maja-v12-muted)}
.maja-ref-entry>:first-child{margin-top:0}.maja-ref-entry>:last-child{margin-bottom:0}
.maja-ref-entry h2{font-size:clamp(1.45rem,2vw,2rem)}

.maja-ref-leader{overflow:hidden;background:var(--ref-soft)}
.maja-ref-leader:after{content:"";position:absolute;right:-8rem;bottom:-12rem;width:34rem;aspect-ratio:1;border:5rem solid color-mix(in srgb,var(--ref-accent) 8%,transparent);border-radius:50%}
.maja-ref-leader__grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(230px,.7fr) minmax(0,1.3fr);gap:clamp(2.5rem,7vw,7rem);align-items:center}
.maja-ref-leader__portrait{min-height:420px;align-self:stretch;border-radius:16px;overflow:hidden;background:linear-gradient(145deg,#e5ebf4,#fff)}
.maja-ref-leader__portrait:empty:before{content:"MAJA";display:grid;place-items:center;min-height:420px;color:rgba(9,37,91,.13);font-size:4rem;font-weight:900}
.maja-ref-leader__portrait img{width:100%;height:100%;min-height:420px;object-fit:cover;object-position:top center}
.maja-ref-leader h2{margin:.45rem 0 1.25rem}
.maja-ref-leader span{display:block;margin-top:1.25rem;color:var(--maja-v12-blue);font-weight:800}

.maja-ref-learning{background:#fff}
.maja-ref-learning__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid var(--maja-v12-line)}
.maja-ref-learning__grid article{position:relative;padding:clamp(1.7rem,3vw,2.7rem);border-right:1px solid var(--maja-v12-line);transition:background .25s ease,transform .25s ease}
.maja-ref-learning__grid article:last-child{border-right:0}
.maja-ref-learning__grid article:hover{z-index:1;background:var(--ref-soft);transform:translateY(-4px)}
.maja-ref-learning__grid span{display:block;margin-bottom:2.8rem;color:var(--ref-accent);font-size:.8rem;font-weight:900;letter-spacing:.12em}
.maja-ref-learning__grid h3{margin-bottom:.8rem;font-size:clamp(1.25rem,2vw,1.65rem)}
.maja-ref-learning__grid p{margin:0;color:var(--maja-v12-muted);font-size:.94rem}

.maja-ref-feature{overflow:hidden;background:var(--ref-soft)}
.maja-ref-feature__grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(2.5rem,7vw,7rem);align-items:center}
.maja-ref-feature h2{margin:.45rem 0 1.25rem}
.maja-ref-feature__image{position:relative;min-height:500px}
.maja-ref-feature__image:after{content:"";position:absolute;right:-1.25rem;bottom:-1.25rem;width:48%;height:48%;border-radius:16px;background:var(--ref-accent);opacity:.18}
.maja-ref-feature__image img{position:relative;z-index:1;width:100%;height:100%;min-height:500px;object-fit:cover;border-radius:16px}
.maja-ref-page--early .maja-ref-feature__image img{border-radius:16px 90px 16px 90px}

.maja-ref-exam{background:var(--maja-v12-navy);color:#fff}
.maja-ref-exam__head{display:block;width:100%;max-width:none;margin-bottom:3rem}
.maja-ref-exam h2{width:100%;max-width:none;margin:.45rem 0 1rem;color:#fff;font-size:clamp(2.2rem,3.25vw,3.45rem);text-wrap:pretty}.maja-ref-exam .maja-kicker{color:#ffd36a}.maja-ref-exam__head>p:last-child{max-width:76ch;margin:0;color:rgba(255,255,255,.7)}
.maja-ref-exam__steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid rgba(255,255,255,.17);border-radius:12px;overflow:hidden}
.maja-ref-exam__steps article{padding:1.7rem;border-right:1px solid rgba(255,255,255,.17)}.maja-ref-exam__steps article:last-child{border:0}
.maja-ref-exam__steps span{color:#ffd36a;font-size:.78rem;font-weight:900}.maja-ref-exam__steps h3{margin:1.5rem 0 .65rem;color:#fff}.maja-ref-exam__steps p{margin:0;color:rgba(255,255,255,.68);font-size:.88rem}

.maja-ref-activities{background:#fff}.maja-ref-facilities{background:var(--ref-soft)}.maja-ref-gallery{background:#fff}
.maja-ref-card-grid,.maja-ref-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.6rem)}
.maja-ref-facility-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;border:1px solid var(--maja-v12-line);background:var(--maja-v12-line)}
.maja-ref-card{display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid var(--maja-v12-line);border-radius:12px;background:#fff;transition:transform .28s ease,box-shadow .28s ease}
.maja-ref-card:hover{transform:translateY(-6px);box-shadow:var(--maja-v12-shadow)}
.maja-ref-card__media{display:block;overflow:hidden;aspect-ratio:4/3;background:#e8edf4}
.maja-ref-gallery-grid .maja-ref-card__media{aspect-ratio:4/3}
.maja-ref-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease}.maja-ref-card:hover img{transform:scale(1.045)}
.maja-ref-card__body{display:flex;flex:1;flex-direction:column;padding:1.45rem}.maja-ref-card__body h3{margin-bottom:.7rem}.maja-ref-card__body p{color:var(--maja-v12-muted);font-size:.9rem}.maja-ref-card__body .maja-text-link{margin-top:auto;font-size:.82rem;font-weight:850}
.maja-ref-facility-grid .maja-ref-card{border:0;border-radius:0;box-shadow:none}.maja-ref-facility-grid .maja-ref-card:hover{transform:none;background:#fffdf7}
.maja-ref-facility-grid .maja-ref-card__media{aspect-ratio:16/10}.maja-ref-facility-grid .maja-ref-card__body{padding:1.3rem}.maja-ref-facility-grid .maja-ref-card__body p{display:none}
.maja-ref-card.no-media{min-height:230px;background:linear-gradient(145deg,#fff 0 75%,var(--ref-soft) 75%)}

.maja-ref-testimonials{background:var(--ref-soft)}
.maja-ref-quote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem)}
.maja-ref-quote-grid blockquote{margin:0;padding:clamp(1.6rem,3vw,2.4rem);border-top:3px solid var(--ref-accent);background:#fff;box-shadow:0 10px 30px rgba(13,35,73,.05)}
.maja-ref-stars{margin-bottom:1.2rem;color:#e7a42a;letter-spacing:.18em}.maja-ref-quote-grid blockquote>p{color:var(--maja-v12-muted);font-size:.94rem}.maja-ref-quote-grid footer{margin-top:1.25rem;color:var(--maja-v12-navy)}

.maja-ref-location{background:#fff}
.maja-ref-location__grid{display:grid;grid-template-columns:minmax(260px,.68fr) minmax(0,1.32fr);gap:clamp(2rem,6vw,6rem);align-items:center}
.maja-ref-location h2{margin:.45rem 0 1rem}.maja-ref-location iframe,.maja-ref-map-placeholder{width:100%;min-height:430px;border:0;border-radius:14px;background:#edf2f7}
.maja-ref-map-placeholder{display:grid;place-items:center;align-content:center;gap:1rem;color:var(--maja-v12-muted);text-align:center}.maja-ref-map-placeholder svg{width:3rem;height:3rem;fill:none;stroke:var(--ref-accent);stroke-width:1.5}

.maja-ref-jobs{background:var(--ref-soft)}
.maja-ref-job-list{display:grid;gap:1px;overflow:hidden;border:1px solid var(--maja-v12-line);border-top:4px solid var(--ref-accent);border-radius:10px;background:var(--maja-v12-line)}
.maja-ref-job-list .job-card-v3{margin:0;border:0;border-radius:0;background:#fff;box-shadow:none}.maja-ref-job-list .job-card-v3:hover{transform:none;background:#fffdf7;box-shadow:none}

.maja-ref-cta{position:relative;overflow:hidden;padding-block:clamp(4.5rem,8vw,7rem);background:linear-gradient(120deg,var(--maja-v12-navy),#174d96);color:#fff}
.maja-ref-cta:after{content:"";position:absolute;right:-8rem;top:50%;width:32rem;aspect-ratio:1;border:5rem solid rgba(255,255,255,.035);border-radius:50%;transform:translateY(-50%)}
.maja-ref-page--early .maja-ref-cta{background:linear-gradient(120deg,#e99429,#f4b84e)}
.maja-ref-cta>.maja-shell{position:relative;z-index:1;display:flex;align-items:end;justify-content:space-between;gap:2rem}.maja-ref-cta h2{max-width:18ch;margin:.45rem 0 .85rem;color:#fff}.maja-ref-cta p{max-width:60ch;margin-bottom:0;color:rgba(255,255,255,.78)}.maja-ref-cta .maja-kicker{color:#ffd36a}.maja-ref-page--early .maja-ref-cta :is(h2,p,.maja-kicker){color:#10264c}

/* Rich motion details inspired by the reference pacing, with no animation library. */
.maja-motion .maja-ref-split__image.maja-motion-item img,
.maja-motion .maja-ref-feature__image.maja-motion-item img,
.maja-motion .maja-ref-leader__portrait.maja-motion-item img{transform:scale(1.09);transition:transform 1.15s cubic-bezier(.16,.78,.22,1) var(--maja-motion-delay,0ms)}
.maja-motion .maja-ref-split__image.maja-motion-item.is-visible img,
.maja-motion .maja-ref-feature__image.maja-motion-item.is-visible img,
.maja-motion .maja-ref-leader__portrait.maja-motion-item.is-visible img{transform:scale(1)}
.maja-motion .maja-ref-gallery-grid .maja-ref-card.maja-motion-item img{transform:scale(1.12);transition:transform 1s cubic-bezier(.16,.78,.22,1) var(--maja-motion-delay,0ms)}
.maja-motion .maja-ref-gallery-grid .maja-ref-card.maja-motion-item.is-visible img{transform:scale(1)}
.maja-motion .maja-ref-gallery-grid .maja-ref-card.maja-motion-item.is-visible:hover img{transform:scale(1.045)}

/* Restore hover movement after an observed item reaches its final position. */
.maja-motion .maja-ref-card.maja-motion-item.is-visible:hover{transform:translateY(-6px)}
.maja-motion .maja-ref-learning__grid>article.maja-motion-item.is-visible:hover{transform:translateY(-4px)}
.maja-motion :is(.maja-stage-card,.v6-life-bento>article,.maja-facility-card,.event-row,.resource-card-v3,.v6-teacher-card).maja-motion-item.is-visible:hover{transform:translateY(-5px)}

/* Buttons, navigation and interactive details continue moving after entrance. */
.maja-ref-page :is(.btn,.maja-text-link),.maja-elite-v12 :is(.btn,.maja-text-link){position:relative;overflow:hidden;transition:transform .24s ease,box-shadow .24s ease,background-color .24s ease,color .24s ease}
.maja-ref-page :is(.btn,.maja-text-link) svg,.maja-elite-v12 :is(.btn,.maja-text-link) svg{transition:transform .24s cubic-bezier(.2,.75,.2,1)}
.maja-ref-page :is(.btn,.maja-text-link):hover svg,.maja-elite-v12 :is(.btn,.maja-text-link):hover svg{transform:translateX(4px)}
.maja-ref-page .btn:hover,.maja-elite-v12 .btn:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(7,30,70,.16)}
@media(min-width:981px){
 .maja-elite-v12 :where(.site-header,.maja-header) nav a{position:relative}
 .maja-elite-v12 :where(.site-header,.maja-header) nav>ul>li>a:after{content:"";position:absolute;left:50%;right:50%;bottom:-.35rem;height:2px;background:var(--maja-v12-gold);transition:left .25s ease,right .25s ease}
 .maja-elite-v12 :where(.site-header,.maja-header) nav>ul>li:hover>a:after,.maja-elite-v12 :where(.site-header,.maja-header) nav>ul>li.current-menu-item>a:after{left:.2rem;right:.2rem}
 .maja-elite-v12 :where(.site-header,.maja-header) nav ul ul{opacity:0;transform:translate3d(0,12px,0);transition:opacity .22s ease,transform .28s cubic-bezier(.16,.78,.22,1)}
 .maja-elite-v12 :where(.site-header,.maja-header) nav li:hover>ul,.maja-elite-v12 :where(.site-header,.maja-header) nav li:focus-within>ul{opacity:1;transform:none}
}

@media(min-width:681px){
 .maja-motion-ready .maja-ref-hero{animation:maja-ref-hero-pan 1.6s cubic-bezier(.2,.75,.2,1) both}
 @keyframes maja-ref-hero-pan{from{background-position:56% center}to{background-position:center}}
}

@media(max-width:980px){
 .maja-ref-split,.maja-ref-feature__grid,.maja-ref-leader__grid,.maja-ref-location__grid{grid-template-columns:1fr;gap:2.4rem}
 .maja-ref-split__image,.maja-ref-split__image img,.maja-ref-feature__image,.maja-ref-feature__image img{min-height:420px}
 .maja-ref-learning__grid,.maja-ref-card-grid,.maja-ref-gallery-grid,.maja-ref-quote-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .maja-ref-facility-grid,.maja-ref-exam__steps{grid-template-columns:repeat(2,minmax(0,1fr))}
 .maja-ref-exam__steps article:nth-child(2){border-right:0}.maja-ref-exam__steps article:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.17)}
}
@media(max-width:680px){
 .maja-ref-section{padding-block:4rem}.maja-ref-hero{min-height:520px;background-position:60% center}.maja-ref-hero h1{font-size:clamp(3rem,15vw,4.8rem)}
 .maja-ref-facts{grid-template-columns:1fr 1fr;margin-inline:14px}.maja-ref-facts>div:nth-child(2n){border-right:0}.maja-ref-facts>div{border-bottom:1px solid var(--maja-v12-line)}
 .maja-ref-split__image,.maja-ref-split__image img,.maja-ref-feature__image,.maja-ref-feature__image img{min-height:330px}
 .maja-ref-split__image:before{inset:1rem -.5rem -.5rem 1rem}.maja-ref-leader__portrait,.maja-ref-leader__portrait img{min-height:350px}
 .maja-ref-learning__grid,.maja-ref-card-grid,.maja-ref-gallery-grid,.maja-ref-facility-grid,.maja-ref-quote-grid,.maja-ref-exam__steps{grid-template-columns:1fr}
 .maja-ref-learning__grid article,.maja-ref-exam__steps article{border-right:0;border-bottom:1px solid var(--maja-v12-line)}
 .maja-ref-exam__steps article{border-bottom-color:rgba(255,255,255,.17)!important}.maja-ref-exam__steps article:last-child{border-bottom:0!important}
 .maja-ref-cta>.maja-shell{align-items:flex-start;flex-direction:column}.maja-ref-cta .btn{width:100%}
 .maja-motion .maja-motion-item{transform:translate3d(0,22px,0);transition-duration:.58s,.62s,.68s,.55s}
 .maja-motion .maja-motion-item[data-motion="left"]{transform:translate3d(-22px,0,0)}
 .maja-motion .maja-motion-item[data-motion="right"]{transform:translate3d(22px,0,0)}
 .maja-motion .maja-motion-item[data-motion="tilt"]{transform:translate3d(0,22px,0) rotate(.6deg)}
 .maja-motion .maja-motion-item.is-visible{transform:none}
}

/* Homepage admissions card: isolate it from the hero's light heading rules. */
body.maja-elite-v12.home .hero .hero-card,
body.maja-elite-v12.home .hero .maja-dashboard-admissions-card{
 box-sizing:border-box;
 align-self:center!important;
 width:100%;
 min-height:0!important;
 height:auto!important;
 margin-block:0!important;
 padding:clamp(1.65rem,2.4vw,2rem)!important;
 background:rgba(255,253,248,.98)!important;
 color:var(--maja-v12-ink)!important;
}
body.maja-elite-v12.home .hero .hero-card .hero-card__label{
 display:inline-block;
 margin:0 0 .85rem!important;
 color:var(--maja-v12-blue)!important;
 font-size:.7rem!important;
 line-height:1.3!important;
 font-weight:850;
 letter-spacing:.13em;
}
body.maja-elite-v12.home .hero .hero-card h2,
body.maja-elite-v12.home .hero .maja-dashboard-admissions-card h2{
 width:100%!important;
 max-width:12ch!important;
 margin:0 0 1rem!important;
 color:var(--maja-v12-navy)!important;
 font-size:clamp(2rem,2.6vw,2.55rem)!important;
 line-height:1.02!important;
 letter-spacing:-.035em!important;
 text-wrap:balance;
}
body.maja-elite-v12.home .hero .hero-card>p:not(.hero-card__label){
 max-width:34ch;
 margin:0 0 1.35rem!important;
 color:var(--maja-v12-muted)!important;
 font-size:.9rem!important;
 line-height:1.65!important;
}
body.maja-elite-v12.home .hero .hero-card>.btn{
 min-height:3.5rem;
 margin:0!important;
 padding:.9rem 1.25rem;
 background:var(--maja-v12-navy)!important;
 color:#fff!important;
}
body.maja-elite-v12.home .hero .hero-card .hero-card__meta{
 margin-top:1.25rem!important;
 padding-top:1rem!important;
 color:var(--maja-v12-muted)!important;
}
body.maja-elite-v12.home .hero .hero-card .hero-card__meta :where(span,p,small,a){
 color:inherit!important;
 font-size:.72rem!important;
 line-height:1.4!important;
}
@media(max-width:1100px) and (min-width:821px){
 body.maja-elite-v12.home .hero .hero-grid{grid-template-columns:minmax(0,1fr) minmax(300px,350px);gap:clamp(2rem,4vw,3.5rem)}
 body.maja-elite-v12.home .hero .hero-card h2{font-size:clamp(1.8rem,3vw,2.25rem)!important}
}

/* ========================================================================== 
   Stage pages — reference-led school composition without changing site IA
   ========================================================================== */
.maja-ref-stage{--stage-space:clamp(4.75rem,7vw,6.75rem);background:#fff}
.maja-ref-stage .maja-ref-section{padding-block:var(--stage-space)}
.maja-ref-stage .maja-ref-hero{min-height:clamp(520px,67vh,680px);background-position:center 38%}
.maja-ref-stage .maja-ref-hero__inner{padding-block:clamp(8rem,13vw,11rem) clamp(5.5rem,8vw,7rem)}
.maja-ref-stage .maja-ref-hero h1{max-width:13ch;font-size:clamp(3.5rem,6.5vw,6.2rem)}
.maja-ref-stage .maja-ref-facts{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:-2.8rem;border-radius:8px}
.maja-ref-stage .maja-ref-facts>div{min-width:0;padding:1.3rem 1.45rem}

/* The first content chapter uses the complete width; no empty half-column. */
.maja-ref-stage .maja-ref-intro{padding-top:clamp(6.5rem,9vw,8.5rem)}
.maja-ref-stage .maja-ref-split{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(2rem,4vw,4.5rem);align-items:start}
.maja-ref-stage .maja-ref-intro__head{grid-column:1/6;grid-row:1;width:auto;margin:0}
.maja-ref-stage .maja-ref-intro__head h2{margin:.45rem 0 0;font-size:clamp(2.35rem,4vw,4rem)}
.maja-ref-stage .maja-ref-split__copy{grid-column:7/-1;grid-row:1;padding-top:1.55rem}
.maja-ref-stage .maja-ref-split__copy .maja-ref-lead{margin-bottom:0}
.maja-ref-stage .maja-ref-split__image{grid-column:1/-1;grid-row:2;min-height:clamp(360px,48vw,560px);margin-top:.5rem;overflow:hidden;border-radius:12px}
.maja-ref-stage .maja-ref-split__image:before{display:none}
.maja-ref-stage .maja-ref-split__image img{display:block;min-height:inherit;max-height:620px;border-radius:12px;object-position:center 38%}

/* Primary deliberately bridges the playful and structured page styles. */
.maja-ref-page--primary .maja-ref-intro__head{grid-column:7/-1;grid-row:1}
.maja-ref-page--primary .maja-ref-split__copy{grid-column:7/-1;grid-row:2;padding-top:0}
.maja-ref-page--primary .maja-ref-split__image{grid-column:1/6;grid-row:1/3;min-height:520px;margin:0}
.maja-ref-page--primary .maja-ref-split__image img{height:100%;max-height:none}

.maja-ref-stage .maja-ref-leader__grid{grid-template-columns:minmax(230px,.62fr) minmax(0,1.38fr);gap:clamp(2.5rem,6vw,6rem)}
.maja-ref-stage .maja-ref-leader__portrait,.maja-ref-stage .maja-ref-leader__portrait img{min-height:360px;max-height:470px}
.maja-ref-stage .maja-ref-leader h2{max-width:24ch}

.maja-ref-stage .maja-ref-heading{max-width:1020px;margin-bottom:clamp(2.4rem,4vw,3.5rem)}
.maja-ref-stage .maja-ref-heading h2{margin:.4rem 0 .9rem;font-size:clamp(2.35rem,3.8vw,3.8rem)}
.maja-ref-stage .maja-ref-learning__grid{gap:1rem;border:0}
.maja-ref-stage .maja-ref-learning__grid article{min-height:260px;padding:clamp(1.5rem,2.7vw,2.3rem);border:1px solid var(--maja-v12-line);border-top:4px solid var(--ref-accent);border-radius:8px;background:#fff}
.maja-ref-stage .maja-ref-learning__grid article:last-child{border-right:1px solid var(--maja-v12-line)}
.maja-ref-stage .maja-ref-learning__grid span{margin-bottom:2rem}
.maja-ref-page--early .maja-ref-learning{background:#fffaf1}
.maja-ref-page--early .maja-ref-learning__grid article:nth-child(2){background:#f5fbff}
.maja-ref-page--early .maja-ref-learning__grid article:nth-child(3){background:#fff5f8}

.maja-ref-stage .maja-ref-feature__grid{grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:clamp(2.5rem,6vw,6rem)}
.maja-ref-stage .maja-ref-feature__image,.maja-ref-stage .maja-ref-feature__image img{min-height:430px;max-height:560px}
.maja-ref-page--early .maja-ref-feature{background:linear-gradient(125deg,#fff2d9 0%,#f2f8ff 100%)}
.maja-ref-page--early .maja-ref-feature__image img{border-radius:12px 72px 12px 72px}
.maja-ref-page--primary .maja-ref-feature{background:#eef6fd}
.maja-ref-page--secondary .maja-ref-feature{background:#f1f4f9}

.maja-ref-stage .maja-ref-exam{padding-block:clamp(4.5rem,7vw,6.5rem)}
.maja-ref-stage .maja-ref-exam__head{margin-bottom:2.4rem}
.maja-ref-stage .maja-ref-exam__steps article{min-height:210px}
.maja-ref-stage .maja-ref-card-grid,.maja-ref-stage .maja-ref-gallery-grid{gap:1rem}
.maja-ref-stage .maja-ref-card{border-radius:8px}
.maja-ref-stage .maja-ref-card__media{aspect-ratio:16/10}
.maja-ref-stage .maja-ref-facility-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;border:0;background:transparent}
.maja-ref-stage .maja-ref-facility-grid .maja-ref-card{border:1px solid var(--maja-v12-line)}
.maja-ref-stage .maja-ref-location__grid{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:clamp(2.5rem,6vw,6rem)}
.maja-ref-stage .maja-ref-location iframe,.maja-ref-stage .maja-ref-map-placeholder{min-height:380px;border-radius:8px}
.maja-ref-stage .maja-ref-cta{padding-block:clamp(4rem,6vw,5.5rem)}
.maja-ref-stage .maja-ref-cta>.maja-shell{align-items:center}
.maja-ref-stage .maja-ref-cta h2{max-width:24ch;font-size:clamp(2.3rem,3.8vw,3.7rem)}

@media(max-width:980px){
 .maja-ref-stage .maja-ref-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
 .maja-ref-stage .maja-ref-facts>div:nth-child(2){border-right:0}
 .maja-ref-stage .maja-ref-intro__head,.maja-ref-page--primary .maja-ref-intro__head{grid-column:1/-1;grid-row:1}
 .maja-ref-stage .maja-ref-split__copy,.maja-ref-page--primary .maja-ref-split__copy{grid-column:1/-1;grid-row:2;padding-top:0}
 .maja-ref-stage .maja-ref-split__image,.maja-ref-page--primary .maja-ref-split__image{grid-column:1/-1;grid-row:3;min-height:420px}
 .maja-ref-stage .maja-ref-feature__grid,.maja-ref-stage .maja-ref-leader__grid,.maja-ref-stage .maja-ref-location__grid{grid-template-columns:1fr}
 .maja-ref-stage .maja-ref-facility-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
 .maja-ref-stage{--stage-space:4rem}
 .maja-ref-stage .maja-ref-hero{min-height:500px;background-position:58% center}
 .maja-ref-stage .maja-ref-hero__inner{padding-block:7rem 5rem}
 .maja-ref-stage .maja-ref-hero h1{font-size:clamp(3rem,14vw,4.5rem)}
 .maja-ref-stage .maja-ref-facts{grid-template-columns:1fr;margin:0 14px;border-radius:0 0 8px 8px}
 .maja-ref-stage .maja-ref-facts>div{border-right:0;border-bottom:1px solid var(--maja-v12-line)}
 .maja-ref-stage .maja-ref-split{gap:1.5rem}
 .maja-ref-stage .maja-ref-split__image,.maja-ref-page--primary .maja-ref-split__image{min-height:320px}
 .maja-ref-stage .maja-ref-feature__image,.maja-ref-stage .maja-ref-feature__image img{min-height:320px}
 .maja-ref-stage .maja-ref-learning__grid,.maja-ref-stage .maja-ref-facility-grid{grid-template-columns:1fr}
 .maja-ref-stage .maja-ref-learning__grid article{min-height:0}
 .maja-ref-stage .maja-ref-exam__steps{grid-template-columns:1fr}
 .maja-ref-stage .maja-ref-exam__steps article{min-height:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.17)}
 .maja-ref-stage .maja-ref-cta>.maja-shell{align-items:flex-start}
}
