@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:200 900;font-display:swap;src:url("../fonts/source-serif-4-latin-ext.24102cbae868.woff2") format("woff2")}@font-face{font-family:"Playfair Display";font-style:normal;font-weight:500 700;font-display:swap;src:url("../fonts/playfair-display-latin.6da252de0cbc.woff2") format("woff2")}@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url("../fonts/inter-latin-ext.1ad231aac0a8.woff2") format("woff2")}:root{--color-brand-cyan-100:#dff6fa;--color-brand-cyan-500:#79d6e6;--color-brand-cyan-700:#176b7a;--color-ink-950:#1e2529;--color-ink-900:#2c353a;--color-ink-700:#48565d;--color-surface:#fff;--color-surface-soft:#f5fafb;--color-border:#d7e5e8;--color-focus:#0b6778;--serif:"Source Serif 4",Iowan Old Style,Baskerville,"Times New Roman",serif;--sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--page-gutter:24px;--shell:1920px;--header-height:76px;--ease-enter:cubic-bezier(.22,1,.36,1);--ease-state:cubic-bezier(.4,0,.2,1)}*,*::before,*::after{box-sizing:border-box}html{color-scheme:light;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 12px);background-color:var(--color-ink-950)}body{margin:0;color:var(--color-ink-950);background:var(--color-surface);font:400 1rem/1.625 var(--sans)}body.is-menu-open{overflow:hidden}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.2em}button,input,select,textarea{font:inherit}button,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:600;letter-spacing:-.025em;overflow-wrap:anywhere}h1{margin-bottom:24px;font-size:clamp(2.25rem,5vw,4.7rem);line-height:1.02}h2{margin-bottom:16px;font-size:clamp(2rem,3.3vw,3.25rem);line-height:1.08}h3{font-size:1.4rem;line-height:1.25}.shell{width:min(calc(100% - (2 * var(--page-gutter))),var(--shell));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:100;top:12px;left:12px;padding:10px 14px;background:var(--color-ink-950);color:#fff;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}#main-content{scroll-margin-top:5rem}.eyebrow{margin-bottom:12px;color:var(--color-brand-cyan-700);font-size:.75rem;font-weight:700;letter-spacing:.13em;line-height:1.35;text-transform:uppercase}.pending-note,.review-note{color:var(--color-ink-700);font-size:.875rem}.site-header{position:sticky;top:0;z-index:30;border-bottom:1px solid var(--color-border);background:rgba(255,255,255,.96)}.header-inner{min-height:76px;display:flex;align-items:center;gap:28px}.brand{display:flex;flex:0 0 auto;align-items:center;gap:12px;text-decoration:none}.brand__mark{width:auto;height:52px;flex:0 0 auto}.brand__name{display:grid;gap:2px;min-width:0}.brand__school{color:var(--color-ink-950);font-family:"Playfair Display",var(--serif);font-size:clamp(1.24rem,1.85vw,1.68rem);font-style:italic;font-weight:500;line-height:1.02;letter-spacing:0.012em;white-space:nowrap}.brand__kicker{color:var(--color-ink-700);font-size:0.68rem;font-weight:600;letter-spacing:0.09em;line-height:1.2;text-transform:uppercase;white-space:nowrap}.site-footer img{width:auto;height:56px;max-width:184px;object-fit:contain;object-position:left center}.desktop-nav{margin-left:auto;display:flex;align-items:center;gap:4px}.desktop-nav>a,.nav-disclosure>summary{min-height:44px;display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:6px;text-decoration:none;font-size:.9rem;font-weight:600;cursor:pointer;list-style:none}.desktop-nav>a:hover,.nav-disclosure>summary:hover,.nav-disclosure[open]>summary{background:var(--color-surface-soft);color:var(--color-brand-cyan-700)}.desktop-nav>a[aria-current="page"],.nav-disclosure>summary.is-current,.nav-menu a[aria-current="page"],.mobile-dialog__nav a[aria-current="page"]{background:var(--color-brand-cyan-100);color:var(--color-brand-cyan-700)}.nav-disclosure{position:relative}.nav-disclosure summary::-webkit-details-marker{display:none}.nav-menu{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%);display:flex;gap:4px;padding:8px;border:1px solid var(--color-border);border-radius:10px;background:#fff;box-shadow:0 18px 50px rgba(30,37,41,.12);white-space:nowrap}.nav-menu::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:12px}.nav-menu a{display:block;padding:10px 14px;border-radius:6px;text-decoration:none;font-weight:600}.nav-menu a:hover,.nav-menu a:focus-visible{background:var(--color-brand-cyan-100)}.nav-disclosure[open] .nav-menu{animation:nav-menu-in 240ms var(--ease-enter)}@keyframes nav-menu-in{from{opacity:0;transform:translate(-50%,-6px)}to{opacity:1;transform:translate(-50%,0)}}.desktop-nav.has-glide{position:relative}.has-glide>a,.has-glide>.nav-disclosure>summary{position:relative;z-index:1;transition:color 200ms var(--ease-state)}.nav-glide{position:absolute;top:0;left:0;z-index:0;border-radius:999px;background:rgba(255,255,255,0.7);box-shadow:inset 0 1px 0 #fff,0 8px 18px -12px rgba(23,107,122,0.55);opacity:0;pointer-events:none;transition:transform 340ms cubic-bezier(0.3,1.15,0.4,1),width 340ms cubic-bezier(0.3,1.15,0.4,1),height 340ms cubic-bezier(0.3,1.15,0.4,1),opacity 200ms var(--ease-state)}.nav-glide.is-visible{opacity:1}.nav-glide.is-still{transition:opacity 200ms var(--ease-state)}.nav-menu .nav-glide{border-radius:8px;background:var(--color-surface-soft);box-shadow:inset 0 0 0 1px rgba(23,107,122,0.14)}.site-header .has-glide>a:not([aria-current]):hover,.site-header .has-glide>a:not([aria-current]):focus-visible,.site-header .has-glide>.nav-disclosure>summary:hover,.site-header .nav-disclosure[open]>summary,.site-header .nav-menu.has-glide a:not([aria-current]):hover,.site-header .nav-menu.has-glide a:not([aria-current]):focus-visible{background:transparent}.site-header .has-glide>a:hover,.site-header .nav-menu.has-glide a:hover{color:var(--color-brand-cyan-700)}@media (prefers-reduced-motion:reduce){.nav-glide{transition:opacity 120ms linear}.nav-disclosure[open] .nav-menu{animation:none}}.header-actions{display:flex;align-items:center;gap:8px}.language-control{min-height:38px;min-width:62px;display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border:1px solid var(--color-border);border-radius:6px;color:var(--color-ink-700);text-decoration:none;font-size:.78rem;font-weight:700}.language-control.is-pending{cursor:help}.icon-button{width:44px;height:44px;display:inline-grid;place-items:center;border:1px solid var(--color-border);border-radius:6px;background:#fff;color:var(--color-ink-950);cursor:pointer;transition:background 120ms,border-color 120ms}.icon-button:hover{border-color:var(--color-brand-cyan-700);background:var(--color-brand-cyan-100)}.icon-button--overlay{width:48px;min-width:48px;height:48px;padding:0;border:0;border-radius:50%;background:rgba(30,37,41,0.28);color:#fff;font-size:1.15rem;line-height:1;box-shadow:0 2px 10px rgba(30,37,41,0.12);backdrop-filter:blur(6px)}.icon-button--overlay:hover,.icon-button--overlay:focus-visible{border-color:transparent;background:rgba(30,37,41,0.52);color:#fff}.icon-button--overlay:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.icon-button__chevron{display:block;width:22px;height:22px}.menu-trigger,.no-js-mobile-nav{display:none}.mobile-dialog{width:min(90vw,420px);height:100dvh;max-height:none;margin:0 0 0 auto;padding:0;border:0;background:#fff;transform:translateX(100%);transition:transform 220ms var(--ease-enter),display 220ms allow-discrete,overlay 220ms allow-discrete}.mobile-dialog[open]{display:flex;flex-direction:column;transform:translateX(0)}@starting-style{.mobile-dialog[open]{transform:translateX(100%)}}.mobile-dialog::backdrop{background:rgba(30,37,41,.5)}.mobile-dialog__header{min-height:76px;display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border)}.mobile-dialog__header p{margin:0;font-weight:700}.mobile-dialog__nav{display:flex;flex-direction:column;padding:12px 20px;overflow-y:auto}.mobile-dialog__nav>a,.mobile-dialog__nav details>a,.mobile-dialog__nav summary{min-height:48px;display:flex;align-items:center;padding:10px 8px;border-bottom:1px solid var(--color-border);text-decoration:none;font-weight:600}.mobile-dialog__nav details>a{padding-left:24px;color:var(--color-ink-700);font-weight:500}.mobile-dialog__nav summary{cursor:pointer}.mobile-dialog__footer{margin-top:auto;display:grid;gap:12px;padding:20px;border-top:1px solid var(--color-border)}.hero{padding:clamp(32px,4.5vw,64px) 0 40px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:center;gap:clamp(28px,4vw,64px)}.hero-copy{min-width:0}.hero-lead{margin-bottom:28px;color:var(--color-ink-700);font-size:clamp(1.05rem,1.8vw,1.25rem);line-height:1.55}.button-row{display:flex;flex-wrap:wrap;gap:12px}.button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border:1px solid var(--color-brand-cyan-700);border-radius:6px;background:var(--color-brand-cyan-700);color:#fff;text-decoration:none;font-weight:650;transition:transform 120ms,background 120ms}.button:hover{background:var(--color-focus);transform:translateY(-1px)}.button--secondary{border-color:var(--color-border);background:#fff;color:var(--color-ink-950)}.button--light{border-color:#fff;background:#fff;color:var(--color-ink-950)}.hero-carousel{min-width:0}.hero-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}.hero-slide{position:relative;min-width:100%;margin:0;overflow:hidden;border-radius:0;background:var(--color-surface-soft);scroll-snap-align:start}.hero-slide img{width:100%;aspect-ratio:16/11;object-fit:cover}.hero-slide figcaption{position:absolute;right:12px;bottom:12px;max-width:calc(100% - 24px);padding:5px 9px;border-radius:6px;background:rgba(30,37,41,.78);color:#fff;font-size:.75rem}.js .hero-track{position:relative;display:grid;overflow:hidden}.js .hero-slide{grid-area:1/1;opacity:0;transform:none;transition:opacity 700ms var(--ease-state);pointer-events:none}.js .hero-slide.is-active{opacity:1;pointer-events:auto}.no-js .carousel-actions{display:none}.welcome-message{padding:clamp(36px,5vw,56px) 0;background:var(--color-brand-cyan-100);text-align:left}.welcome-message__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);column-gap:clamp(32px,5vw,80px);align-items:end}.welcome-message__inner>.eyebrow,.welcome-message__inner>h2{grid-column:1}.welcome-message__inner>p:not(.eyebrow),.welcome-message__inner>.text-link{grid-column:2}.welcome-message__inner>p:not(.eyebrow){grid-row:1 / span 2;align-self:end}.welcome-message__inner>.text-link{justify-self:start}.welcome-message h2{margin-bottom:0;font-size:clamp(1.65rem,2.6vw,2.45rem);line-height:1.15}.welcome-message__inner>p:not(.eyebrow){margin:0 0 12px;color:var(--color-ink-700);font-size:clamp(1rem,1.6vw,1.15rem)}.section{padding:clamp(40px,4.5vw,64px) 0;border-top:1px solid var(--color-border)}.section--soft{background:var(--color-surface-soft)}.section-heading{max-width:none;margin-bottom:40px}.section-heading>p:not(.eyebrow){color:var(--color-ink-700);font-size:1.08rem}@media (min-width:761px){.section-heading:not(.section-heading--row):not(.section-heading--sticky){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);column-gap:clamp(32px,4vw,72px);row-gap:8px;align-items:end}.section-heading:not(.section-heading--row):not(.section-heading--sticky) .eyebrow{grid-column:1;grid-row:1}.section-heading:not(.section-heading--row):not(.section-heading--sticky) h2{grid-column:1;grid-row:2;margin-bottom:0}.section-heading:not(.section-heading--row):not(.section-heading--sticky):not(:has(>p:not(.eyebrow),>.section-facts)) h2{grid-column:1 / -1}.section-heading:not(.section-heading--row):not(.section-heading--sticky)>p:not(.eyebrow),.section-heading:not(.section-heading--row):not(.section-heading--sticky)>.section-facts{grid-column:2;grid-row:1 / span 2;margin:0}}.section-heading--row{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:24px}.section-heading__tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap}#campus-life{scroll-margin-top:calc(var(--header-height) + 12px)}#campus-life .section-heading--row{position:sticky;top:calc(var(--header-height) + 1px);z-index:20;background:var(--color-surface)}@media (max-width:1050px){#campus-life .section-heading--row{position:static}}.school-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(24px,4vw,64px)}.school-grid::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;border-radius:2px;background:var(--color-border)}.school-card{position:relative;min-height:0;display:flex;flex-direction:column;padding:34px 0 4px;color:inherit;text-decoration:none}.school-card::before{content:"";position:absolute;top:-7px;left:0;z-index:1;width:16px;height:16px;box-sizing:border-box;border:2px solid var(--color-brand-cyan-700);border-radius:50%;background:#fff;box-shadow:0 0 0 5px #fff;transition:background 260ms var(--ease-state),box-shadow 260ms var(--ease-state)}.school-card::after{content:"";position:absolute;top:0;left:0;right:0;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--color-brand-cyan-700),var(--color-brand-cyan-500));transform:scaleX(0);transform-origin:left center;transition:transform 520ms var(--ease-enter)}.school-card__number{color:var(--color-brand-cyan-700);font-weight:700;letter-spacing:0.08em}.school-card h3{margin:10px 0 8px;font-size:2rem;transition:color 220ms var(--ease-state)}.school-card p{margin:0 0 20px;color:var(--color-ink-700)}.school-card .text-link{margin-top:auto;align-self:flex-start}.school-card .text-link span{display:inline-block;transition:transform 260ms var(--ease-state)}.school-card:hover::after,.school-card:focus-visible::after{transform:scaleX(1)}.school-card:hover::before,.school-card:focus-visible::before{background:var(--color-brand-cyan-700);box-shadow:0 0 0 5px #fff,0 0 0 9px rgba(121,214,230,0.35)}.school-card:hover h3,.school-card:focus-visible h3{color:var(--color-brand-cyan-700)}.school-card:hover .text-link span{transform:translateX(4px)}.section--soft .school-card::before{box-shadow:0 0 0 5px var(--color-surface-soft)}.text-link{color:var(--color-brand-cyan-700);font-weight:700;text-decoration:underline;text-underline-offset:.2em}.text-link:hover{color:var(--color-focus)}.editorial-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:start}.section-heading--sticky{position:sticky;top:calc(76px + 12px)}.accordion-list details{border-top:1px solid var(--color-border)}.accordion-list details:last-child{border-bottom:1px solid var(--color-border)}.accordion-list summary{display:grid;grid-template-columns:54px minmax(0,1fr) 1.25rem;column-gap:8px;align-items:start;padding:24px 0;cursor:pointer;font-family:var(--serif);font-size:clamp(1.2rem,2.4vw,2rem);font-weight:600;line-height:1.25;overflow-wrap:anywhere;list-style:none}.accordion-list summary::-webkit-details-marker{display:none}.accordion-list summary::after{content:"+";grid-column:3;font-family:var(--sans)}.accordion-list details[open] summary::after{content:"−"}.accordion-list summary span{color:var(--color-brand-cyan-700);font:700 .75rem/2 var(--sans);letter-spacing:.1em}.details-body{padding:0 0 28px 54px;color:var(--color-ink-700);overflow-wrap:anywhere}.level-prose{color:var(--color-ink-700);font-size:1.08rem;line-height:1.75;overflow-wrap:anywhere}.level-prose p{margin:0 0 1.15em}.level-prose p:last-child{margin-bottom:0}.level-prose .review-note{margin:0 0 12px}.evidence{background:var(--color-ink-950);color:#fff;border-top:0}.section-heading--light .eyebrow{color:var(--color-brand-cyan-500)}.section-heading--light>p:not(.eyebrow){color:#c4d0d4}.counter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.counter-card{min-height:220px;padding:26px 24px;border:1px solid rgba(215,229,232,0.17);border-radius:16px;background:radial-gradient(125% 100% at 0% 0%,rgba(121,214,230,0.1),transparent 60%),linear-gradient(170deg,rgba(255,255,255,0.058),rgba(255,255,255,0.014));transition:border-color 300ms var(--ease-state),transform 300ms var(--ease-state),box-shadow 300ms var(--ease-state)}.counter-value{margin-bottom:20px;color:var(--color-brand-cyan-500);font:600 clamp(2.7rem,5vw,4.5rem)/1 var(--serif);font-variant-numeric:tabular-nums}.counter-card h3{margin-bottom:8px;overflow-wrap:anywhere}.counter-card--year{min-height:0}.counter-card--year h3{margin-bottom:0;font-size:1.15rem;font-family:var(--sans);font-weight:700;letter-spacing:0}.counter-grid--four .stat-donut{width:102px;height:102px}.counter-card>p:last-child{color:#c4d0d4}.stat-donut{width:112px;height:112px;margin-bottom:20px;color:var(--color-brand-cyan-500)}.stat-chart--ring{display:block;width:100%;height:100%;overflow:visible;transform:scale(1);transform-origin:center;transition:transform 360ms var(--ease-enter)}.stat-chart--ring .stat-chart__well{fill:rgba(121,214,230,0.05);stroke:rgba(215,229,232,0.09);stroke-width:1}.stat-chart--ring .stat-chart__track{stroke:rgba(215,229,232,0.14);stroke-width:14}.stat-chart--ring .stat-chart__depth{stroke:var(--color-brand-cyan-700);stroke-width:14;stroke-linecap:round}.stat-chart--ring .stat-chart__halo{stroke:var(--color-brand-cyan-500);stroke-width:24;stroke-linecap:round;opacity:0.17}.stat-chart--ring .stat-chart__fill{stroke:currentColor;stroke-width:14;stroke-linecap:round}.stat-chart--ring .stat-chart__depth,.stat-chart--ring .stat-chart__halo,.stat-chart--ring .stat-chart__fill{transition:stroke-dashoffset 900ms var(--ease-enter)}.js [data-reveal].will-reveal .stat-chart--ring .stat-chart__depth,.js [data-reveal].will-reveal .stat-chart--ring .stat-chart__halo,.js [data-reveal].will-reveal .stat-chart--ring .stat-chart__fill{stroke-dashoffset:100}.stat-meter{margin-bottom:20px;color:var(--color-brand-cyan-500)}.stat-meter__svg{display:block;width:100%;height:auto;overflow:visible}.stat-meter__track{fill:rgba(215,229,232,0.12)}.stat-meter__side{fill:var(--color-brand-cyan-700)}.stat-meter__top{fill:currentColor}.stat-meter__gloss{fill:#fff;fill-opacity:0.34}.stat-meter__grow{transform-box:fill-box;transform-origin:0 50%;transform:scaleX(1);transition:transform 900ms var(--ease-enter)}.js [data-reveal].will-reveal .stat-meter__grow{transform:scaleX(0)}@media (hover:hover) and (prefers-reduced-motion:no-preference){.counter-card:hover,.counter-card:focus-within{transform:translateY(-3px);border-color:rgba(121,214,230,0.42);box-shadow:0 20px 38px -24px rgba(121,214,230,0.6)}.counter-card:hover .stat-chart--ring,.counter-card:focus-within .stat-chart--ring{transform:scale(1.04)}.counter-card:hover .stat-meter__top,.counter-card:focus-within .stat-meter__top{fill:var(--color-brand-cyan-100)}}.pending-panel{padding:24px;border:1px solid rgba(215,229,232,.35);border-radius:10px;color:#d7e5e8}.pending-panel--ink{border-color:var(--color-border);color:var(--color-ink-700);background:#fff}.spotlight{margin-top:32px;display:flex;align-items:end;justify-content:space-between;gap:24px;padding:32px;border-radius:10px;background:var(--color-brand-cyan-700)}.spotlight .eyebrow{color:var(--color-brand-cyan-100)}.segments{display:flex;gap:8px;margin-bottom:28px;overflow-x:auto;padding:3px}.segments a,.segments button,.segments__tab{flex:0 0 auto;padding:8px 14px;border:1px solid var(--color-border);border-radius:999px;text-decoration:none;font:inherit;font-size:.875rem;font-weight:650;color:inherit;background:#fff;cursor:pointer}.segments a:hover,.segments a.is-active,.segments button:hover,.segments button.is-active,.segments__tab:hover,.segments__tab.is-active{border-color:var(--color-brand-cyan-700);background:var(--color-brand-cyan-100);color:var(--color-brand-cyan-700)}.segments button:focus-visible,.segments__tab:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}@media (max-width:760px){.segments{flex-wrap:wrap;overflow:visible}}.section--tabs-top{padding-top:clamp(28px,3.5vw,44px)}.section--tabs-top .segments--tabs{margin-bottom:22px}.programme-panel{margin-top:0}.programme-panel[hidden]{display:none}.programme-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin:0;padding:0;list-style:none;overflow-wrap:anywhere}@media (hover:hover) and (prefers-reduced-motion:no-preference){.programme-card:hover{transform:translateY(-3px);border-color:var(--color-brand-cyan-500);box-shadow:0 20px 34px -26px rgba(23,107,122,0.55)}}@media (max-width:980px){.programme-films__tracks{grid-template-columns:repeat(2,minmax(0,1fr))}.programme-track--perks{grid-column:1 / -1}.programme-films__strip{grid-template-columns:repeat(4,minmax(0,1fr))}.programme-films__strip li.is-feature{grid-column:1 / -1;aspect-ratio:16 / 10}}@media (max-width:760px){.programme-list{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.programme-card{padding:14px 16px}.programme-films__tracks{grid-template-columns:minmax(0,1fr)}.programme-films__strip{grid-template-columns:repeat(2,minmax(0,1fr))}.programme-films__strip li.is-feature{aspect-ratio:4 / 5}}.no-js .programme-panel[hidden]{display:block}.no-js .segments--tabs{display:none}.story-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(310px,calc((100% - 48px)/2.25));gap:24px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}.story-carousel::-webkit-scrollbar{display:none}.story-card{overflow:hidden;border:1px solid var(--color-border);border-radius:6px;background:#fff;scroll-snap-align:start}.story-card[hidden]{display:none}.story-card__media{display:block}.story-card__media:focus-visible{outline:3px solid var(--color-focus);outline-offset:-3px}.story-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.story-card__body{padding:24px}.story-card__body h3 a{text-decoration:none}.story-detail,.programme-detail{overflow-wrap:anywhere}.section--story-detail,.section--programme-detail{padding-top:0;border-top:none}.story-detail__date{margin:8px 0 0;color:var(--color-ink-700)}.story-detail__media{margin:0 0 24px;overflow:hidden;border-radius:10px;background:var(--color-surface-soft)}.story-detail__media img{width:100%;aspect-ratio:4/3;object-fit:cover}.story-detail__body,.programme-detail__body{color:var(--color-ink-900);font-size:1.08rem;line-height:1.75;overflow-wrap:anywhere}.story-detail__body p,.programme-detail__body p{margin:0 0 1.15em}.story-detail__body p:last-child,.programme-detail__body p:last-child{margin-bottom:0}.programme-detail .review-note{margin:0 0 8px}.story-card__body>p:last-child{color:var(--color-ink-700)}.carousel-actions{display:flex;gap:8px}.teacher-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}.teacher-card{min-width:0;color:inherit;text-decoration:none}.teacher-card__media{box-shadow:0 0 0 0 transparent;transition:box-shadow 360ms var(--ease-enter);display:block;width:100%;aspect-ratio:5 / 6;overflow:hidden;border-radius:10px;background:var(--color-border)}.teacher-card__media img,.teacher-card>img{width:100%;height:100%;aspect-ratio:5 / 6;object-fit:cover;object-position:center top;border-radius:10px;background:var(--color-border);transform:scale(1);transition:transform 360ms var(--ease-enter)}@media (hover:hover) and (prefers-reduced-motion:no-preference){.teacher-card:hover .teacher-card__media img,.teacher-card:focus-visible .teacher-card__media img,.teacher-card:focus-within .teacher-card__media img,.teacher-card:hover>img,.teacher-profile__media:hover img{transform:scale(1.06)}}@media (min-width:761px){.teacher-profile--stacked .teacher-profile__media{position:sticky;top:112px}}@media (hover:hover){.teacher-card:hover .teacher-card__media,.teacher-card:focus-visible .teacher-card__media,.teacher-profile__media:hover{box-shadow:0 0 0 3px var(--color-brand-cyan-700)}}.teacher-card h3{margin:22px 0 4px;font-size:1.3rem;line-height:1.25;overflow-wrap:anywhere}.teacher-card p{color:var(--color-ink-700);font-size:.875rem}.partners-contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}.partners-panel{display:flex;flex-direction:column;justify-content:center;min-height:100%;padding:clamp(28px,5vw,56px);border:1px solid var(--color-border);border-radius:14px;background:#fff}.partners-panel h2{margin-bottom:24px}.partner-list{display:flex;flex-wrap:wrap;align-items:center;gap:24px}.partner-list img{max-width:180px;max-height:72px;object-fit:contain}.partner-mark{display:inline-flex;align-items:center;justify-content:center}.contact-card{padding:clamp(28px,5vw,56px);border-radius:14px;background:var(--color-brand-cyan-100)}.site-footer{padding-top:64px;border-top:1px solid var(--color-border);background:var(--color-ink-950);color:#fff}.footer-logo{display:inline-flex;align-items:center}.footer-grid{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(0,.8fr)) minmax(0,1.3fr) minmax(0,.7fr);gap:40px}.footer-grid>div:first-child p{margin-top:20px;color:#c4d0d4}.footer-grid nav,.footer-group{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-group>.eyebrow{margin-bottom:4px}.footer-grid nav a[aria-current="page"]{color:var(--color-brand-cyan-500);text-decoration:underline;text-underline-offset:.2em}.footer-grid .eyebrow{color:var(--color-brand-cyan-500)}.footer-grid .pending-note{color:#c4d0d4}@media (max-width:1200px) and (min-width:761px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid>div:first-child{grid-column:1 / -1}}@media (max-width:1200px) and (min-width:900px){.footer-grid{grid-template-columns:repeat(4,minmax(0,auto));justify-content:space-between}}.footer-grid>div:first-child p.footer-tagline{margin-top:20px;color:#fff;font-family:var(--serif);font-size:1.2rem;font-style:italic}.footer-grid>div:first-child p.footer-tagline + p{margin-top:6px}.footer-contact{display:grid;gap:10px;color:#c4d0d4;font-style:normal;overflow-wrap:anywhere}.footer-contact a{color:#fff;text-underline-offset:.2em}.footer-social{display:inline-flex;align-items:center;gap:10px}.footer-social svg{width:20px;height:20px;flex:none;fill:currentColor}.footer-bottom{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:48px;border-top:1px solid rgba(215,229,232,.2)}.js [data-reveal].will-reveal{opacity:0;transform:translateY(20px)}.js [data-reveal].is-revealed{opacity:1;transform:none;transition:opacity 420ms var(--ease-enter),transform 420ms var(--ease-enter)}@media (max-width:1050px){.desktop-nav{display:none}.header-actions{margin-left:auto}.js .menu-trigger{display:inline-grid}.no-js .no-js-mobile-nav{display:block;width:100%;order:4}.no-js .header-inner{flex-wrap:wrap;padding-block:12px}.no-js .no-js-mobile-nav summary{min-height:44px;cursor:pointer;font-weight:700}.no-js .no-js-mobile-nav nav{display:grid;padding:12px 0}.no-js .no-js-mobile-nav a{min-height:44px;padding:8px;border-top:1px solid var(--color-border)}.hero-grid{grid-template-columns:1fr 1.1fr}.editorial-grid{gap:48px}}@media (max-width:760px){:root{--page-gutter:16px;--header-height:64px}.shell{width:min(calc(100% - (2 * var(--page-gutter))),var(--shell))}.header-inner{min-height:64px}.brand__mark{height:40px}.hero{padding:32px 0 24px}.hero-grid,.editorial-grid,.partners-contact__grid{grid-template-columns:1fr;gap:28px}.section-heading{margin-bottom:30px}.section-heading--row{flex-wrap:wrap}.section-heading__tools{width:100%;justify-content:space-between}.school-grid{grid-template-columns:1fr;gap:28px}.school-grid::before{display:none}.school-card{padding:30px 0 0;border-top:2px solid var(--color-border)}.school-card::after{top:-2px}.school-card::before{top:-9px}.school-card h3{font-size:1.7rem}h2{font-size:clamp(1.55rem,7.2vw,2rem)}.section-heading--sticky{position:static}.counter-grid{grid-template-columns:1fr}.counter-card{min-height:180px;border-right:0;border-bottom:1px solid rgba(215,229,232,.28)}.counter-card--year{min-height:0}.counter-card:last-child{border-bottom:0}.spotlight{align-items:start;flex-direction:column}.story-carousel{grid-auto-columns:min(86vw,360px);gap:16px}.teacher-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-bottom{align-items:flex-start;flex-direction:column;justify-content:center}}@media (max-width:430px){h1{font-size:2.1rem}.button-row .button{width:100%}.accordion-list summary{grid-template-columns:40px minmax(0,1fr) 1.1rem;font-size:1.15rem}.details-body{padding-left:40px}.teacher-grid{grid-template-columns:1fr}}.page-hero{padding:clamp(48px,6vw,80px) 0 48px;border-bottom:1px solid var(--color-border)}.page-hero--teacher{padding-top:clamp(24px,3.5vw,40px);padding-bottom:clamp(16px,2.5vw,24px);border-bottom:none}.page-hero--teacher .eyebrow{margin-bottom:8px}.page-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(32px,5vw,64px);align-items:center}.page-hero h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.08}.page-hero .shell:not(.page-hero__grid) .page-hero__copy{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);column-gap:clamp(32px,4vw,80px);row-gap:0;align-items:start}.page-hero .shell:not(.page-hero__grid) .page-hero__copy .eyebrow,.page-hero .shell:not(.page-hero__grid) .page-hero__copy h1{grid-column:1 / -1}.page-hero .shell:not(.page-hero__grid) .page-hero__copy .page-lead:nth-of-type(n + 3){grid-column:2}.page-hero--teacher h1{display:flex;flex-wrap:nowrap;align-items:baseline;gap:0.35em 0.65em;max-width:none;margin-bottom:4px;font-size:clamp(1.85rem,3.6vw,2.75rem);line-height:1.15}.page-hero--teacher .teacher-profile__name{min-width:0}.page-hero--teacher .teacher-card__role{flex:0 0 auto;align-self:center;display:inline-block;padding:5px 12px;border-radius:999px;background:var(--color-brand-cyan-100);color:var(--color-brand-cyan-700);font-size:0.78rem;line-height:1.3}.teacher-profile__sep,.teacher-profile__level{font-weight:400;color:var(--color-ink-700)}.teacher-profile-intro .teacher-card__subject{margin-top:0;color:var(--color-ink-700);font-size:clamp(1.05rem,1.8vw,1.15rem)}.section--teacher-profile{padding-top:0;border-top:none}.error-actions{padding-top:0}.error-actions .button-row{margin:0}.page-lead{margin-bottom:16px;color:var(--color-ink-700);font-size:clamp(1.05rem,1.8vw,1.2rem);line-height:1.55;overflow-wrap:anywhere}.page-hero .shell:not(.page-hero__grid) .page-hero__copy .page-lead{max-width:none}.page-hero .shell:not(.page-hero__grid) .page-hero__copy .page-lead:nth-of-type(2):last-of-type{grid-column:1 / -1}.page-hero__copy .page-lead + .page-lead{margin-top:-4px}.page-lead__brand{font-weight:800;color:var(--color-ink-950)}.teacher-profile--stacked{display:grid;grid-template-columns:minmax(240px,340px) minmax(0,1fr);align-items:start;gap:clamp(24px,3vw,44px);text-align:left}.teacher-profile__media{margin:0 auto;box-shadow:0 0 0 0 transparent;transition:box-shadow 360ms var(--ease-enter);width:min(100%,340px);aspect-ratio:5 / 6;overflow:hidden;border-radius:10px;background:var(--color-border)}.teacher-profile__media img{width:100%;height:100%;aspect-ratio:5 / 6;object-fit:cover;object-position:center top;border-radius:10px;background:var(--color-border);transform:scale(1);transition:transform 360ms var(--ease-enter)}.teacher-profile__body{width:100%}.teacher-bio{color:var(--color-ink-900);font-size:1.08rem;line-height:1.75}.teacher-bio p{margin:0 0 1.15em}.teacher-bio p:last-child{margin-bottom:0}.teacher-quote{max-width:62rem;margin:0 0 32px;padding:2px 0 2px 20px;border-left:3px solid var(--color-brand-cyan-700);color:var(--color-ink-950);font-family:var(--serif);font-size:clamp(1.12rem,1.5vw,1.3rem);font-style:italic;line-height:1.5}.teacher-quote p{margin:0}.page-hero__media{margin:0;overflow:hidden;border-radius:10px;background:var(--color-surface-soft)}.hero-mosaic{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-template-rows:repeat(2,minmax(0,1fr));gap:12px;aspect-ratio:16 / 11;margin:0}.hero-mosaic__tile{display:block;overflow:hidden;border-radius:16px;background:var(--color-surface-soft);box-shadow:0 22px 44px -32px rgba(15,77,88,0.55)}.hero-mosaic__tile:first-child{grid-row:1 / -1}.hero-mosaic__tile img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.001);transition:transform 700ms var(--ease-enter)}@media (hover:hover) and (prefers-reduced-motion:no-preference){.hero-mosaic__tile:hover img{transform:scale(1.05)}}.page-hero__media img{width:100%;aspect-ratio:16/11;object-fit:cover}.page-hero__media--empty{aspect-ratio:16 / 11;background:radial-gradient(circle at 78% 18%,rgba(121,214,230,0.22),transparent 58%),linear-gradient(155deg,var(--color-surface-soft),#fff 70%)}.link-card-grid,.pending-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.link-card,.teacher-card--text{padding:24px;border:1px solid var(--color-border);border-radius:10px;background:#fff}.teacher-card--text{display:flex;flex-direction:column;height:100%}.teacher-card__copy{display:flex;flex-direction:column;flex:1 1 auto;min-width:0}.link-card p,.teacher-card--text p{color:var(--color-ink-700)}.pending-grid{grid-template-columns:repeat(2,1fr)}.pending-panel h3{margin-bottom:8px;font-size:1.25rem}.teacher-directory{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}.medal-directory{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--color-border)}.medal-directory--portraits{grid-template-columns:repeat(auto-fill,220px);gap:24px 28px;justify-content:start;border-top:0}.medal-entry{padding:24px 0;border-bottom:1px solid var(--color-border)}.medal-directory--portraits .medal-entry{padding:0;border-bottom:0}.medal-entry--photo{display:grid;grid-template-columns:1fr;gap:12px;align-items:start}.medal-directory--portraits .medal-entry--photo{padding:0}.medal-entry__media{display:block;width:100%;margin:0;aspect-ratio:1;overflow:hidden;border-radius:10px;background:var(--color-border)}.medal-entry__photo{width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:10px;transform:scale(1);transition:transform 360ms var(--ease-enter)}@media (hover:hover) and (prefers-reduced-motion:no-preference){.medal-entry--photo:hover .medal-entry__photo,.medal-entry--photo:focus-within .medal-entry__photo{transform:scale(1.06)}.medal-directory--people .medal-entry:hover,.medal-directory--people .medal-entry:focus-within,.year-rotator:hover .year-rotator__stage,.year-rotator:focus-within .year-rotator__stage{border-color:var(--color-brand-cyan-500);box-shadow:0 0 0 4px rgba(121,214,230,0.32),0 24px 40px -22px rgba(23,107,122,0.55)}.medal-directory--people .medal-entry:hover,.medal-directory--people .medal-entry:focus-within{transform:translateY(-4px)}.year-rotator:hover .medal-entry__photo,.year-rotator:focus-within .medal-entry__photo{transform:scale(1.06)}}.medal-directory--people{grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:22px;justify-content:stretch}.year-rotators{display:grid;grid-template-columns:repeat(auto-fit,minmax(224px,1fr));gap:22px;align-items:start;margin-top:28px}.year-rotator{display:flex;flex-direction:column;gap:10px;min-width:0}.year-rotator:focus{outline:none}.year-rotator:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px;border-radius:18px}.year-rotator__year{margin:0;color:var(--color-ink-700);font-family:var(--sans);font-size:0.82rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase}.year-rotator__stage{position:relative;border:1px solid var(--color-border);border-radius:16px;overflow:hidden;background:var(--color-surface);box-shadow:0 16px 30px -26px rgba(30,37,41,0.55);transition:border-color 300ms var(--ease-state),box-shadow 300ms var(--ease-state)}.year-rotator__viewport{display:grid;min-width:0;touch-action:pan-y}.year-rotator__slide{grid-area:1 / 1;min-width:0}.year-rotator__slide .medal-entry__copy{padding-bottom:16px}.year-rotator__controls.carousel-actions{position:absolute;inset:0 auto auto 0;display:block;gap:0;width:100%;aspect-ratio:5 / 6;pointer-events:none;z-index:2}.year-rotator__controls .icon-button--overlay{position:absolute;top:auto;bottom:12px;transform:none;pointer-events:auto}.year-rotator__controls [data-rotator-prev]{left:10px}.year-rotator__controls [data-rotator-next]{right:10px}.no-js .year-rotator__controls{display:none}.medal-directory--people .medal-entry__media,.year-rotator__slide .medal-entry__media{display:grid;place-items:center;aspect-ratio:5 / 6;border-radius:0;background:#fafbfb}.medal-directory--people .medal-entry__media--blank,.year-rotator__slide .medal-entry__media--blank{background:linear-gradient(168deg,#eef6f8,#dbe8ec)}.medal-directory--people .medal-entry__photo,.year-rotator__slide .medal-entry__photo{border-radius:0;object-fit:contain;object-position:center bottom}.medal-entry__avatar{width:44%;height:auto;fill:var(--color-brand-cyan-700);opacity:0.42}.medal-directory--people .medal-entry__copy,.year-rotator__slide .medal-entry__copy{padding:14px 16px 18px}.medal-directory--people .medal-entry h3,.medal-directory--people .medal-entry h4,.year-rotator__slide h4{margin-bottom:4px;font-size:1.06rem;line-height:1.25}.medal-directory--people .medal-entry__award,.year-rotator__slide .medal-entry__award{font-size:0.85rem}.medal-entry__copy{min-width:0}.medal-entry h3,.medal-entry h4{margin:0 0 6px;font-family:var(--serif);font-size:1.35rem;font-weight:600}.medal-entry__award{margin:0;color:var(--color-brand-cyan-700);font-size:0.95rem;letter-spacing:0.02em}.medal-entry__year{margin:8px 0 0;color:var(--color-ink-700)}.medal-directory--posters{grid-template-columns:minmax(0,1fr);gap:0;justify-content:stretch;align-items:start}.medal-directory--posters .medal-entry--photo{min-width:0;display:flex;flex-direction:column;align-items:stretch}.medal-directory--posters .medal-entry__media{aspect-ratio:1200 / 1622;width:100%;flex:0 0 auto;background:#f3eee6}.medal-directory--posters .medal-entry__copy{min-width:0;padding:12px 8px 0;text-align:center;overflow-wrap:anywhere}.medal-directory--posters .medal-entry h3{font-size:1.05rem;line-height:1.25;overflow-wrap:anywhere}.medal-directory--posters .medal-entry__award,.medal-directory--posters .medal-entry__year{font-size:0.82rem;line-height:1.4;overflow-wrap:anywhere}section[aria-labelledby="graduates-year-title"],#graduates-year-title{scroll-margin-top:calc(var(--header-height) + 24px)}.medal-directory--posters .medal-entry__media a{display:block;width:100%;height:100%}.medal-directory--posters .medal-entry__media a:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.medal-directory--posters .medal-entry__photo{object-fit:contain;object-position:center}.graduate-rotator{min-width:0}.graduate-rotator:focus{outline:none}.graduate-rotator:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}.graduate-rotator__heading{margin-bottom:28px;text-align:center}.graduate-rotator__heading h2{margin-bottom:0}.graduate-rotator__board{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:stretch}.graduate-rotator__chart{display:none}.graduate-chart{display:flex;flex-direction:column;gap:16px;height:100%;min-height:0;margin:0;padding:22px 20px 16px;border:1px solid var(--color-border);border-radius:18px;background:linear-gradient(180deg,#fff 0%,#eef6f8 100%);box-shadow:0 22px 40px -30px rgba(30,37,41,0.55)}.graduate-chart__heading{display:flex;flex-direction:column;gap:4px;text-align:center}.graduate-chart__eyebrow{color:var(--color-brand-cyan-700);font-size:0.68rem;font-weight:700;letter-spacing:0.13em;line-height:1.35;text-transform:uppercase}.graduate-chart__group{color:var(--color-ink-950);font-family:var(--serif);font-size:1.12rem;font-weight:600;letter-spacing:-0.02em;line-height:1.2}.graduate-chart__scene{flex:0 0 auto;width:100%}.graduate-chart__donut{display:block;width:min(100%,18rem);height:auto;margin-inline:auto}.graduate-chart__ground{fill:rgba(30,37,41,0.16)}.graduate-chart__face{cursor:pointer;stroke:rgba(255,255,255,0.42);stroke-width:0.9;transition:filter 200ms var(--ease-state)}.graduate-chart__face:hover{filter:brightness(1.12)}.graduate-chart__hole-count{pointer-events:none;fill:var(--color-brand-cyan-700);font-family:var(--serif);font-weight:650;letter-spacing:-0.04em}.graduate-chart__bars{display:grid;align-content:space-between;gap:12px;flex:1 1 auto;margin:0;padding:0;list-style:none}.graduate-chart__bar{min-width:0;border-radius:8px;outline:none;cursor:pointer;transition:transform 200ms var(--ease-state)}.graduate-chart__bar:hover,.graduate-chart__bar:focus-visible{transform:translateY(-2px)}.graduate-chart__bar:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}.graduate-chart__bar-head{display:flex;align-items:baseline;justify-content:space-between;gap:0.6em;margin:0 0 4px}.graduate-chart__bar-name{color:var(--color-ink-700);font-family:var(--sans);font-size:0.78rem;font-weight:650;letter-spacing:-0.01em;line-height:1.25}.graduate-chart__bar-count{color:var(--color-ink-950);font-family:var(--serif);font-size:1.05rem;font-weight:600;line-height:1}.graduate-chart__bar-svg{display:block;width:100%;height:auto}.graduate-chart__bar-track{fill:rgba(30,37,41,0.08)}.graduate-chart__bar-gloss{fill:#fff;fill-opacity:0.3}.graduate-chart__readout{flex:0 0 auto;align-self:center;max-width:100%;min-height:1.8rem;margin:-4px 0 0;padding:5px 14px;border-radius:999px;background:rgba(23,107,122,0.1);color:var(--color-brand-cyan-700);font-size:0.82rem;font-weight:700;line-height:1.35;text-align:center}.graduate-chart__readout:empty{visibility:hidden}.graduate-rotator__stage{position:relative;width:min(100%,28rem);margin-inline:auto;min-width:0}.graduate-rotator__viewport{display:grid;gap:28px;min-width:0;touch-action:pan-y}ul.graduate-rotator__slide.medal-directory.medal-directory--portraits.medal-directory--posters{width:100%;max-width:100%;grid-template-columns:minmax(0,1fr);justify-content:stretch}.graduate-rotator .medal-directory--posters .medal-entry--photo{display:flex;flex-direction:column;grid-template-columns:none;align-items:stretch}.js .graduate-rotator__viewport,.js .year-rotator__viewport{gap:0;overflow:hidden}.js [data-rotator-slide]{grid-area:1 / 1;transform:translate3d(0,0,0);visibility:hidden;pointer-events:none;z-index:0;backface-visibility:hidden;transition:transform 720ms var(--ease-enter)}.js [data-rotator-slide].is-from-right{transform:translate3d(100%,0,0);visibility:visible;transition:none}.js [data-rotator-slide].is-from-left{transform:translate3d(-100%,0,0);visibility:visible;transition:none}.js [data-rotator-slide].is-exit-left{transform:translate3d(-100%,0,0);visibility:visible;z-index:1}.js [data-rotator-slide].is-exit-right{transform:translate3d(100%,0,0);visibility:visible;z-index:1}.js [data-rotator-slide].is-park{transform:translate3d(0,0,0);visibility:hidden;transition:none}.js [data-rotator-slide].is-active{transform:translate3d(0,0,0);visibility:visible;pointer-events:auto;z-index:2}.graduate-rotator__controls{position:absolute;inset:0 auto auto 0;width:100%;aspect-ratio:1200 / 1622;z-index:2;pointer-events:none}.graduate-rotator__controls.carousel-actions{display:block;gap:0}.graduate-rotator__controls .icon-button--overlay{position:absolute;top:auto;bottom:18px;transform:none;pointer-events:auto}.graduate-rotator__controls [data-rotator-prev]{left:14px}.graduate-rotator__controls [data-rotator-next]{right:14px}.no-js .graduate-rotator__controls.carousel-actions{display:none}@media (min-width:980px){.graduate-rotator__board{grid-template-columns:minmax(16rem,1fr) minmax(22rem,30rem) minmax(16rem,1fr);gap:clamp(28px,5vw,96px);align-items:stretch}.graduate-rotator__chart{display:block;min-width:0;max-width:26rem}.graduate-rotator__chart--start{justify-self:start}.graduate-rotator__chart--end{justify-self:end}.graduate-rotator__stage{width:100%;max-width:30rem;margin-inline:auto}}@media (hover:hover) and (prefers-reduced-motion:no-preference){.medal-directory--posters .medal-entry--photo:hover .medal-entry__photo,.medal-directory--posters .medal-entry--photo:focus-within .medal-entry__photo{transform:none}}.named-group{margin-top:28px}.named-group:first-of-type{margin-top:8px}.named-group__title{margin:0 0 4px;font-family:var(--serif);font-size:1.15rem;font-weight:600;color:var(--color-ink-700)}.teacher-card--text h3{display:flex;flex-wrap:wrap;align-items:baseline;gap:0.2em 0.55em;margin:22px 0 6px;font-size:1.35rem;line-height:1.25;white-space:normal}.teacher-card--text .teacher-card__name{white-space:nowrap;font-size:1.35rem}.teacher-card__role{font-family:var(--sans);font-size:0.78rem;font-weight:700;line-height:1.3;letter-spacing:0.02em;color:var(--color-ink-700);white-space:nowrap}.teacher-card__subject{margin:0}.teacher-card__action{margin:auto 0 0;padding-top:14px}.section-follow{margin-top:28px}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.story-grid .story-card{scroll-snap-align:unset}.counter-grid--four{grid-template-columns:repeat(4,1fr)}.verification-note{margin:32px 0 0;color:#c4d0d4}.graduates-pointer{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;align-items:center}.graduates-pointer figure{margin:0;overflow:hidden;border-radius:10px}.graduates-pointer img{width:100%;aspect-ratio:4/3;object-fit:cover}.graduates-pointer p:not(.eyebrow){color:var(--color-ink-700)}.staff-level-block{margin-top:40px}.staff-level-title{margin-bottom:16px;font-size:1.5rem}.staff-level-block[hidden]{display:none}.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start}.pending-details{display:grid;gap:16px;margin:0}.pending-details dt{font-weight:700}.pending-details dd{margin:4px 0 0;color:var(--color-ink-700);overflow-wrap:anywhere}.pending-details dd a{color:var(--color-brand-cyan-700);font-weight:600;text-underline-offset:.2em}.contact-form-panel{padding:clamp(24px,4vw,40px);border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface-soft)}.contact-form{display:grid;gap:16px;margin-top:16px}.contact-form label{display:grid;gap:6px;font-weight:600}.contact-form input,.contact-form textarea{width:100%;padding:12px 14px;border:1px solid var(--color-border);border-radius:6px;background:#fff}.contact-form input:disabled,.contact-form textarea:disabled,.contact-form button:disabled{opacity:.65;cursor:not-allowed}.contact-form .hp{position:absolute;left:-9999px;height:0;overflow:hidden}.form-messages{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:8px}.form-message{padding:10px 12px;border-radius:6px;border:1px solid var(--color-border)}.form-message--success{background:#f3faf5;border-color:#b7dcc3}.form-message--error{background:#fff5f4;border-color:#e7b6b0}.form-errors,.field-error{color:#8a2f24;font-size:0.92rem;font-weight:500}.form-errors{list-style:none;margin:0;padding:0}.gallery-dialog{width:min(960px,calc(100vw - 32px));max-width:960px;padding:0;border:1px solid var(--color-border);border-radius:12px;background:#fff;color:var(--color-ink-950)}.gallery-dialog::backdrop{background:rgba(30,37,41,0.72)}.gallery-dialog__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--color-border)}.gallery-dialog__header p{margin:0;font-size:0.95rem;letter-spacing:0.04em;text-transform:uppercase;color:var(--color-ink-700)}.gallery-dialog__figure{margin:0;padding:20px}.gallery-dialog__figure img{width:100%;max-height:min(70vh,720px);object-fit:contain;background:var(--color-surface-soft);border-radius:8px}.gallery-dialog__figure figcaption{display:flex;justify-content:space-between;gap:16px;margin-top:14px;color:var(--color-ink-700);font-size:0.95rem}.gallery-dialog__nav{display:flex;justify-content:space-between;gap:12px;padding:0 20px 20px}@media (max-width:1050px){.page-hero__grid,.graduates-pointer,.contact-layout{grid-template-columns:1fr;gap:32px}.page-hero__media--empty{display:none}.page-hero .shell:not(.page-hero__grid) .page-hero__copy{grid-template-columns:1fr}.page-hero .shell:not(.page-hero__grid) .page-hero__copy .page-lead:nth-of-type(n + 3){grid-column:auto}.link-card-grid,.story-grid,.counter-grid--four{grid-template-columns:repeat(2,1fr)}.teacher-directory,.medal-directory:not(.medal-directory--portraits){grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.link-card-grid,.pending-grid,.story-grid,.counter-grid--four,.teacher-directory,.medal-directory:not(.medal-directory--portraits){grid-template-columns:1fr}.medal-directory--portraits:not(.medal-directory--posters){grid-template-columns:1fr;gap:16px}.medal-entry--photo{grid-template-columns:112px 1fr;align-items:center;padding:8px 0}.medal-directory--portraits.medal-directory--people{grid-template-columns:none;grid-auto-columns:min(62vw,232px);gap:14px}.medal-directory--people .medal-entry--photo{align-items:stretch;padding:0}.medal-directory--people .medal-entry__copy,.year-rotator__slide .medal-entry__copy{padding:12px 12px 14px}.medal-directory--portraits.medal-directory--posters,ul.graduate-rotator__slide.medal-directory.medal-directory--portraits.medal-directory--posters{grid-template-columns:minmax(0,1fr)}.medal-directory--posters .medal-entry--photo,.graduate-rotator .medal-directory--posters .medal-entry--photo{display:flex;flex-direction:column;grid-template-columns:none;align-items:stretch;padding:0}.medal-directory--posters .medal-entry h3{font-size:0.95rem}.medal-directory--posters .medal-entry__award,.medal-directory--posters .medal-entry__year{font-size:0.75rem;line-height:1.35}.icon-button--overlay{width:44px;min-width:44px;height:44px;font-size:1rem}.icon-button__chevron{width:18px;height:18px}.graduate-rotator__controls .icon-button--overlay{bottom:12px}.graduate-rotator__controls [data-rotator-prev]{left:8px}.graduate-rotator__controls [data-rotator-next]{right:8px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.js [data-reveal]{opacity:1;transform:none}.js .hero-slide{transform:none}.js [data-rotator-slide]{transition:none}}.hero--video,.page-hero--video{position:relative;isolation:isolate;overflow:hidden;border-bottom:0;color:#fff;background-color:var(--color-ink-950)}.hero--video{padding:clamp(56px,8vw,120px) 0 clamp(48px,6vw,88px)}@media (min-width:761px){.hero--video{display:flex;flex-direction:column;justify-content:center;min-height:100svh}}.page-hero--video{padding:clamp(64px,9vw,128px) 0 clamp(48px,6vw,80px)}.hero-video{position:absolute;inset:0;z-index:-1;background:var(--color-ink-950) url("../video/graduation-2026-poster.6451248b5739.webp") center / cover no-repeat}.hero-video__media{width:100%;height:100%;object-fit:cover}.hero-video__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,26,30,0.86) 0%,rgba(20,26,30,0.66) 50%,rgba(20,26,30,0.5) 100%),linear-gradient(0deg,rgba(20,26,30,0.55),rgba(20,26,30,0) 45%)}.hero--video h1,.page-hero--video h1{color:#fff}.hero--video .eyebrow,.page-hero--video .eyebrow{color:var(--color-brand-cyan-500)}.hero--video :is(.eyebrow,h1,.hero-lead),.page-hero--video :is(.eyebrow,h1,.page-lead){text-shadow:0 1px 12px rgba(0,0,0,.45)}.hero--video .hero-lead,.page-hero--video .page-lead,.page-hero--video .review-note{color:rgba(255,255,255,0.86)}.hero--video strong,.hero--video .page-lead__brand,.page-hero--video .page-lead__brand{color:#fff}.hero--video .button--secondary{border-color:rgba(255,255,255,0.7);background:rgba(255,255,255,0.08);color:#fff}.hero--video .hero-slide,.page-hero--video .page-hero__media{border-radius:14px;box-shadow:0 30px 60px -30px rgba(0,0,0,0.7)}@media (max-width:760px){.hero-video__shade{background:linear-gradient(180deg,rgba(20,26,30,0.55),rgba(20,26,30,0.85))}}@media (prefers-reduced-motion:reduce){.hero-video__media{display:none}}.hero-grid--solo{grid-template-columns:minmax(0,1fr);min-height:clamp(420px,62vh,680px)}.hero-grid--solo .hero-copy{max-width:760px}.intro{position:fixed;inset:0;z-index:200;display:grid;place-items:center;overflow:hidden;padding:32px var(--page-gutter);background:#fbfdfd;color:var(--color-ink-950)}.no-js .intro,.intro-seen .intro,.intro.is-done{display:none}html.intro-active,html.intro-active body{overflow:hidden}.intro.is-leaving{animation:intro-leave 760ms var(--ease-enter) forwards}.intro__backdrop{position:absolute;inset:0;pointer-events:none}.intro__blob{position:absolute;width:46vmax;height:46vmax;border-radius:50%;filter:blur(70px);opacity:0.55}.intro__blob--one{top:-18vmax;left:-12vmax;background:#9fe4ef;animation:intro-drift-a 9s ease-in-out infinite alternate}.intro__blob--two{bottom:-22vmax;right:-14vmax;background:#b9d9ff;animation:intro-drift-b 11s ease-in-out infinite alternate}.intro__blob--three{top:30%;left:40%;width:30vmax;height:30vmax;background:#d6f3e6;opacity:0.45;animation:intro-drift-c 13s ease-in-out infinite alternate}.intro__grid{position:absolute;inset:0;background-image:radial-gradient(rgba(23,107,122,0.22) 1px,transparent 1.4px);background-size:26px 26px;mask-image:radial-gradient(ellipse at center,#000 20%,transparent 72%);animation:intro-grid 18s linear infinite}.intro__ring{position:absolute;top:50%;left:50%;border:1px solid rgba(23,107,122,0.16);border-radius:50%;transform:translate(-50%,-50%);animation:intro-pulse 3.6s var(--ease-enter) infinite}.intro__ring--one{width:60vmin;height:60vmin}.intro__ring--two{width:60vmin;height:60vmin;animation-delay:1.2s}.intro__layout{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(32px,6vw,110px);width:min(100%,1360px)}.intro__brand>*,.intro__partners>*{opacity:0;animation:intro-rise 700ms var(--ease-enter) forwards}.intro__logo{width:clamp(180px,22vw,280px);height:auto;margin-bottom:26px;animation-delay:80ms}.intro__welcome{margin:0 0 6px;color:var(--color-brand-cyan-700);font-size:0.8rem;font-weight:700;letter-spacing:0.22em;text-transform:uppercase;animation-delay:320ms}.intro__name{margin:0 0 12px;font-family:var(--serif);font-size:clamp(2rem,4.6vw,4.6rem);font-weight:600;letter-spacing:-0.03em;line-height:1.02;white-space:nowrap;animation-delay:480ms}.intro__name span{background:linear-gradient(100deg,var(--color-brand-cyan-700),#2c8fa3 55%,var(--color-brand-cyan-700));-webkit-background-clip:text;background-clip:text;color:transparent}.intro__tagline{margin:0 0 8px;color:var(--color-ink-900);font-family:var(--serif);font-size:clamp(1.05rem,1.9vw,1.35rem);font-weight:600;animation-delay:640ms}.intro__motto{margin:0 0 28px;max-width:46ch;color:var(--color-ink-700);font-size:clamp(0.88rem,1.3vw,1rem);line-height:1.5;animation-delay:700ms}.intro__progress{width:min(100%,320px);height:4px;overflow:hidden;border-radius:999px;background:rgba(23,107,122,0.12);animation-delay:760ms}.intro__progress span{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--color-brand-cyan-500),var(--color-brand-cyan-700));transform:scaleX(0);transform-origin:left center;animation:intro-progress 2400ms 800ms var(--ease-state) forwards}.intro__loading{margin:10px 0 0;color:var(--color-ink-700);font-size:0.78rem;letter-spacing:0.04em;animation-delay:860ms}.intro__partners{display:flex;flex-direction:column;align-items:center;justify-content:center;align-self:stretch;min-width:clamp(240px,24vw,340px);padding:28px 0 28px clamp(32px,5vw,80px);border-left:1px solid rgba(23,107,122,0.18);text-align:center}.intro__partners-label{margin:0 0 18px;color:var(--color-ink-700);font-size:0.78rem;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;animation-delay:1000ms}.intro__partner-list{display:flex;flex-direction:column;align-items:center;gap:28px;margin:0;padding:0;list-style:none}.intro__partner:nth-child(1){animation-delay:1180ms}.intro__partner:nth-child(2){animation-delay:1360ms}.intro__partner:nth-child(3){animation-delay:1540ms}.intro__partner{display:flex;align-items:center;justify-content:center;height:96px;transition:transform 380ms var(--ease-enter)}.intro__partner img{max-width:260px;max-height:96px;width:auto;height:auto;object-fit:contain}@keyframes intro-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes intro-progress{to{transform:scaleX(1)}}@keyframes intro-leave{to{opacity:0;transform:translateY(-3%);visibility:hidden}}@keyframes intro-drift-a{to{transform:translate(8vmax,6vmax) scale(1.08)}}@keyframes intro-drift-b{to{transform:translate(-10vmax,-4vmax) scale(1.12)}}@keyframes intro-drift-c{to{transform:translate(-6vmax,5vmax) scale(0.9)}}@keyframes intro-grid{to{background-position:26px 26px}}@keyframes intro-pulse{from{opacity:0.9;transform:translate(-50%,-50%) scale(0.6)}to{opacity:0;transform:translate(-50%,-50%) scale(1.8)}}@media (max-width:760px){.intro{place-items:center stretch}.intro__layout{grid-template-columns:1fr;gap:34px;text-align:center}.intro__logo{margin-inline:auto}.intro__progress{margin-inline:auto}.intro__partners{padding:26px 0 0;border-left:0;border-top:1px solid rgba(23,107,122,0.18)}.intro__name{white-space:normal}.intro__motto{margin-inline:auto}.intro__partners{min-width:0;padding:26px 0 0}.intro__partner-list{gap:18px}.intro__partner{height:56px;justify-content:center}.intro__partner img{max-height:48px;max-width:140px}}@media (prefers-reduced-motion:reduce){.intro *,.intro{animation-duration:1ms!important;animation-delay:0ms!important;animation-iteration-count:1!important}}@media (max-width:760px){.hero--video,.page-hero--video{display:flex;flex-direction:column;justify-content:flex-end;min-height:calc(100svh - var(--header-height));padding:24px 0 32px;background:#000}.hero-video{background:#000}.hero-video__media{object-fit:contain}.hero-video__shade{background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,0.72) 72%,rgba(0,0,0,0.92) 100%)}.hero-grid--solo{min-height:0}}@media (max-width:760px){.page-hero--video .hero-video__media{object-position:center top}.page-hero--video .hero-video__shade{background:linear-gradient(180deg,rgba(0,0,0,0) 22%,rgba(0,0,0,0.9) 34%,#000 100%)}}.hero-partners{display:none}.page-hero--video::after{content:"";position:absolute;inset:auto 0 0 0;z-index:-1;height:120px;background:linear-gradient(180deg,rgba(30,37,41,0),var(--color-ink-950));pointer-events:none}@media (max-width:760px){.hero--video{display:grid;grid-template-columns:var(--page-gutter) minmax(0,1fr) var(--page-gutter);grid-template-rows:1fr auto auto auto auto auto auto auto 1fr;justify-content:normal;padding:24px 0 28px}.hero--video .shell,.hero--video .hero-grid,.hero--video .hero-copy{display:contents}.hero--video .hero-copy>*{grid-column:2}.hero--video .eyebrow{grid-row:3;margin-bottom:8px}.hero--video h1{grid-row:4;margin-bottom:10px;font-size:clamp(1.9rem,8.4vw,2.5rem)}.hero--video .hero-lead{grid-row:5;margin-bottom:0}.hero--video .hero-partners{grid-row:6}.hero--video .button-row{grid-row:8}.hero--video .hero-video{position:relative;inset:auto;z-index:0;grid-column:1 / -1;grid-row:7;aspect-ratio:16 / 9;margin:24px 0;background-color:#000}.hero--video .hero-video__media{object-fit:cover}.hero--video .hero-video__shade{display:none}.page-hero--video::after{display:none}}@media (max-width:760px){.hero--video .hero-partners{display:flex;align-items:center;gap:14px;margin-top:20px;padding-top:16px;border-top:1px solid rgba(255,255,255,0.14)}.hero-partners__label{margin:0;color:rgba(255,255,255,0.6);font-size:0.66rem;font-weight:700;letter-spacing:0.14em;line-height:1.3;text-transform:uppercase}.hero-partners__list{display:flex;align-items:center;gap:18px;margin:0 0 0 auto;padding:0;list-style:none}.hero-partners__list img{display:block;width:auto;height:30px;max-width:92px;object-fit:contain}.hero--video .button-row{gap:10px}.hero--video .button-row .button{flex:1 1 0;justify-content:center;text-align:center}}@media (max-width:760px){.hero--video{display:flex;flex-direction:column;justify-content:flex-end;grid-template-columns:none;grid-template-rows:none;min-height:calc(100svh - var(--header-height));padding:0 0 26px}.hero--video .shell,.hero--video .hero-grid,.hero--video .hero-copy{display:block}.hero--video .hero-copy>*{grid-column:auto;grid-row:auto}.hero--video .hero-video{position:absolute;inset:0;z-index:-1;aspect-ratio:auto;margin:0;grid-column:auto;grid-row:auto}.hero--video .hero-video__media{object-fit:cover}.hero--video .hero-video__shade{display:block;background:linear-gradient(180deg,rgba(0,0,0,0.45) 0%,rgba(0,0,0,0) 22%),linear-gradient(0deg,rgba(0,0,0,0.88) 0%,rgba(0,0,0,0.55) 28%,rgba(0,0,0,0) 55%)}.hero--video .eyebrow{margin-bottom:6px;font-size:0.68rem}.hero--video h1{margin-bottom:8px;font-size:clamp(1.6rem,7vw,2.1rem)}.hero--video .hero-lead{margin-bottom:18px;font-size:0.95rem}.hero--video .hero-partners{position:absolute;top:14px;right:var(--page-gutter);display:block;margin:0;padding:0;border:0}.hero--video .hero-partners__label{display:none}.hero--video .hero-partners__list{flex-direction:column;align-items:flex-end;gap:10px;margin:0}.hero--video .hero-partners__list img{height:22px;max-width:64px;filter:drop-shadow(0 1px 3px rgba(0,0,0,0.55))}}@media (max-width:760px){.hero--video{--hero-band:56px;background:#000}.hero--video .hero-video{inset:var(--hero-band) 0 0 0}.hero--video .hero-video__shade{background:linear-gradient(0deg,rgba(0,0,0,0.88) 0%,rgba(0,0,0,0.55) 28%,rgba(0,0,0,0) 55%)}.hero--video .hero-partners{top:0;right:0;left:0;height:var(--hero-band);padding:0 var(--page-gutter)}.hero--video .hero-partners__list{flex-direction:row;align-items:center;justify-content:space-between;height:100%}.hero--video .hero-partners__list img{height:30px;max-width:96px;filter:none}}:root{--glass-offset:12px}.site-header{top:0;padding-top:var(--glass-offset);border-bottom:0;background:transparent;pointer-events:none}.site-header .header-inner{position:relative;min-height:calc(var(--header-height) - var(--glass-offset));padding:0 10px 0 18px;border:1px solid rgba(255,255,255,0.55);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,0.74),rgba(255,255,255,0.5));box-shadow:inset 0 1px 0 rgba(255,255,255,0.9),inset 0 -1px 0 rgba(30,37,41,0.06),0 10px 30px -12px rgba(30,37,41,0.28),0 1px 3px rgba(30,37,41,0.08);-webkit-backdrop-filter:blur(22px) saturate(180%);backdrop-filter:blur(22px) saturate(180%);pointer-events:auto}.site-header .header-inner::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(105deg,rgba(255,255,255,0.55) 0%,rgba(255,255,255,0) 38%,rgba(255,255,255,0) 70%,rgba(255,255,255,0.28) 100%);mix-blend-mode:soft-light;pointer-events:none}.site-header .header-inner>*{position:relative}.site-header .brand__mark{height:52px}.desktop-nav>a,.nav-disclosure>summary{border-radius:999px}.desktop-nav>a:hover,.nav-disclosure>summary:hover,.nav-disclosure[open]>summary{background:rgba(255,255,255,0.55)}.desktop-nav>a[aria-current="page"],.nav-disclosure>summary.is-current{background:rgba(223,246,250,0.75);box-shadow:inset 0 1px 0 rgba(255,255,255,0.9)}.site-header .language-control,.site-header .menu-trigger{border-color:rgba(255,255,255,0.7);border-radius:999px;background:rgba(255,255,255,0.45);box-shadow:inset 0 1px 0 rgba(255,255,255,0.85)}.site-header .nav-menu{border-color:var(--color-border);border-radius:18px;background:#fff}body:has(.hero--video,.page-hero--video) .site-header{margin-bottom:calc(-1 * var(--header-height))}body:has(.hero--video,.page-hero--video) .hero--video,body:has(.hero--video,.page-hero--video) .page-hero--video{padding-top:calc(var(--header-height) + clamp(40px,6vw,96px))}@media (max-width:760px){:root{--glass-offset:8px}.site-header .header-inner{width:calc(100% - 16px);padding:0 6px 0 12px;border-radius:20px}.site-header .brand__mark{height:38px}.brand{gap:9px}.brand__school{font-size:1.08rem}.brand__kicker{font-size:0.6rem;letter-spacing:0.07em}body:has(.hero--video) .hero--video{min-height:100svh;padding-top:0}body:has(.hero--video) .hero--video .hero-partners{top:var(--header-height)}body:has(.hero--video) .hero--video .hero-video{inset:calc(var(--header-height) + var(--hero-band)) 0 0 0}body:has(.page-hero--video) .page-hero--video{padding-top:calc(var(--header-height) + 24px)}body:has(.page-hero--video) .page-hero--video .hero-video{top:var(--header-height)}}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.site-header .header-inner{background:rgba(255,255,255,0.94)}}.legal-layout{display:grid;grid-template-columns:minmax(180px,220px) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:start}.legal-toc{position:sticky;top:110px}.legal-toc ul{display:grid;gap:4px;margin:0;padding:0;list-style:none}.legal-toc a{display:block;padding:8px 12px;border-radius:8px;color:var(--color-ink-700);font-weight:600;text-decoration:none}.legal-toc a:hover{background:var(--color-surface-soft);color:var(--color-ink-950)}.legal-toc a[aria-current="page"]{background:var(--color-brand-cyan-100);color:var(--color-brand-cyan-700)}.legal-section + .legal-section{margin-top:36px}.legal-section h2{margin:0 0 12px;font-size:clamp(1.25rem,2vw,1.5rem)}.legal-section p,.legal-section li{color:var(--color-ink-900);overflow-wrap:anywhere}.legal-section ul{padding-left:1.2rem}.legal-section li + li{margin-top:6px}.legal-table{overflow-x:auto;border:1px solid var(--color-border);border-radius:12px}.legal-table table{width:100%;min-width:520px;border-collapse:collapse;font-size:.92rem}.legal-table th,.legal-table td{padding:12px 14px;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top}.legal-table thead th{background:var(--color-surface-soft);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}.legal-table tbody tr:last-child>*{border-bottom:0}.legal-updated{margin-top:48px;padding-top:16px;border-top:1px solid var(--color-border);color:var(--color-ink-700);font-size:.875rem}@media (max-width:760px){.legal-layout{grid-template-columns:minmax(0,1fr)}.legal-toc{position:static}.legal-toc ul{display:flex;flex-wrap:wrap;gap:8px}.legal-toc a{border:1px solid var(--color-border);border-radius:999px;padding:6px 14px;font-size:.875rem}.legal-table table,.legal-table tbody,.legal-table tr,.legal-table th,.legal-table td{display:block;min-width:0}.legal-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.legal-table tr{padding:14px 16px;border-bottom:1px solid var(--color-border)}.legal-table tbody tr:last-child{border-bottom:0}.legal-table th,.legal-table td{padding:0;border:0}.legal-table td{margin-top:8px}.legal-table td::before{content:attr(data-label);display:block;color:var(--color-ink-700);font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}}.form-consent{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:start}.contact-form .form-consent input{width:22px;height:22px;margin:2px 0 0;padding:0;accent-color:var(--color-brand-cyan-700)}.form-consent label{display:block;font-weight:600}.form-consent label a{color:var(--color-brand-cyan-700);text-underline-offset:.2em}.form-consent__note,.form-consent .field-error{grid-column:2;margin:0;font-size:.875rem}.form-consent__note{color:var(--color-ink-700)}.icon{width:1.25em;height:1.25em;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.button .icon{margin-right:8px}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:260ms;animation-timing-function:var(--ease-state)}}.header-cta{min-height:40px;display:inline-flex;align-items:center;padding:8px 16px;border-radius:999px;background:var(--color-brand-cyan-700);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 6px 16px -8px rgba(23,107,122,.8);color:#fff;font-size:.88rem;font-weight:700;text-decoration:none;white-space:nowrap;transition:background 160ms var(--ease-state),transform 160ms var(--ease-state)}.header-cta:hover,.header-cta[aria-current="page"]{background:var(--color-focus);transform:translateY(-1px)}@media (max-width:1239px) and (min-width:1051px){.header-cta{display:none}}@media (max-width:560px){.header-cta{display:none}}.back-to-top{position:fixed;z-index:20;right:clamp(16px,3vw,28px);bottom:clamp(16px,3vw,28px);width:46px;height:46px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.7);border-radius:50%;background:rgba(255,255,255,.72);box-shadow:0 10px 26px -12px rgba(30,37,41,.45);color:var(--color-ink-950);font-size:1.2rem;text-decoration:none;-webkit-backdrop-filter:blur(14px) saturate(160%);backdrop-filter:blur(14px) saturate(160%);opacity:0;transform:translateY(12px);transition:opacity 220ms var(--ease-state),transform 220ms var(--ease-state)}.back-to-top.is-visible{opacity:1;transform:none}.back-to-top:hover{background:#fff}.facts-band{background:var(--color-ink-950);color:#fff;border-top:0}.facts-band .section-heading{margin-bottom:36px}.text-link--light{color:var(--color-brand-cyan-500)}.text-link--light:hover{color:#fff}.facts-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0}.fact{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:10px;padding:26px 24px;border:1px solid rgba(215,229,232,.16);border-radius:18px;background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.02));transition:border-color 300ms var(--ease-state),transform 300ms var(--ease-state),box-shadow 300ms var(--ease-state)}.fact::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(220px circle at var(--light-x,50%) var(--light-y,0%),rgba(121,214,230,0.2),transparent 70%);opacity:0;transition:opacity 300ms var(--ease-state)}.fact__value{transition:text-shadow 300ms var(--ease-state)}@media (hover:hover) and (prefers-reduced-motion:no-preference){.fact:hover{transform:translateY(-3px);border-color:rgba(121,214,230,0.42);box-shadow:0 20px 38px -24px rgba(121,214,230,0.6)}.fact:hover::before{opacity:1}.fact:hover .fact__value{text-shadow:0 0 24px rgba(121,214,230,0.45)}}.fact__value{margin:0;color:var(--color-brand-cyan-500);font:600 clamp(2.6rem,4.6vw,3.8rem)/1 var(--serif);font-variant-numeric:tabular-nums}.fact__value span{margin-left:2px;font-size:.55em}.fact__label{color:#d7e5e8;font-size:.95rem;line-height:1.45}.service-glass{position:relative;isolation:isolate;overflow:hidden;border-radius:26px}.service-glass__blob{position:absolute;z-index:-1;border-radius:50%;filter:blur(8px);opacity:0.75;pointer-events:none}.service-glass__blob--one{top:-18%;left:4%;width:36%;aspect-ratio:1;background:radial-gradient(circle,rgba(121,214,230,0.75),rgba(121,214,230,0) 68%);animation:glass-drift-one 22s ease-in-out infinite alternate}.service-glass__blob--two{bottom:-30%;left:38%;width:30%;aspect-ratio:1;background:radial-gradient(circle,rgba(79,179,196,0.5),rgba(79,179,196,0) 68%);animation:glass-drift-two 26s ease-in-out infinite alternate}.service-glass__blob--three{top:-10%;right:2%;width:28%;aspect-ratio:1;background:radial-gradient(circle,rgba(191,233,240,0.9),rgba(191,233,240,0) 68%);animation:glass-drift-three 30s ease-in-out infinite alternate}@keyframes glass-drift-one{to{transform:translate(28%,22%) scale(1.15)}}@keyframes glass-drift-two{to{transform:translate(-34%,-18%) scale(0.9)}}@keyframes glass-drift-three{to{transform:translate(-22%,30%) scale(1.1)}}.service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:6px;list-style:none;border:1px solid rgba(255,255,255,0.85);border-radius:26px;background:rgba(255,255,255,0.58);box-shadow:inset 0 1px 0 #fff,0 30px 60px -44px rgba(15,77,88,0.55);-webkit-backdrop-filter:blur(22px) saturate(170%);backdrop-filter:blur(22px) saturate(170%)}.service-item{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr);align-items:start;gap:2px 16px;padding:20px 22px;border-radius:20px;transition:background 260ms var(--ease-state)}.service-item::after{content:"";position:absolute;inset:auto 22px 0;height:1px;background:rgba(23,107,122,0.1)}.service-item:nth-last-child(-n + 3)::after{display:none}.service-item__icon{grid-row:span 2;display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:linear-gradient(160deg,#fff,var(--color-brand-cyan-100));box-shadow:inset 0 1px 0 #fff,0 8px 18px -12px rgba(23,107,122,0.6);color:var(--color-brand-cyan-700);font-size:1.2rem;transition:transform 300ms cubic-bezier(0.3,1.3,0.5,1),background 300ms var(--ease-state),color 300ms var(--ease-state)}.service-item__title{margin:2px 0 2px;font-size:1.12rem}.service-item__text{margin:0;color:var(--color-ink-700);font-size:0.93rem;line-height:1.5}@media (hover:hover){.service-item:hover{background:rgba(255,255,255,0.7)}.service-item:hover .service-item__icon{transform:translateY(-2px) rotate(-4deg);background:var(--color-brand-cyan-700);color:#fff}}@media (prefers-reduced-motion:reduce){.service-glass__blob{animation:none}}@media (max-width:1000px){.service-list{grid-template-columns:repeat(2,minmax(0,1fr))}.service-item:nth-last-child(-n + 3)::after{display:block}.service-item:nth-last-child(-n + 2)::after{display:none}}@media (max-width:640px){.service-list{grid-template-columns:minmax(0,1fr)}.service-item:nth-last-child(-n + 2)::after{display:block}.service-item:last-child::after{display:none}.service-item{padding:16px 16px}}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}.service-card{padding:26px;border:1px solid var(--color-border);border-radius:18px;background:#fff;transition:border-color 220ms var(--ease-state),transform 220ms var(--ease-state),box-shadow 220ms var(--ease-state)}.service-card__icon{width:48px;height:48px;display:grid;place-items:center;margin-bottom:18px;border-radius:14px;background:var(--color-brand-cyan-100);color:var(--color-brand-cyan-700);font-size:1.25rem}.service-card h3{margin:0 0 6px;font-size:1.25rem}.service-card p{margin:0;color:var(--color-ink-700)}.values-row{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 clamp(20px,3vw,44px);margin:0;padding:0;list-style:none}.values-row::before{content:"";position:absolute;top:34px;left:0;right:0;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--color-brand-cyan-700),var(--color-brand-cyan-500) 60%,rgba(121,214,230,0.2));transform-origin:left center;transition:transform 1200ms var(--ease-enter)}.value{position:relative;min-width:0;--draw-delay:0ms}.value:nth-child(2){--draw-delay:220ms}.value:nth-child(3){--draw-delay:440ms}.value:nth-child(4){--draw-delay:660ms}.value__mark{position:relative;z-index:1;display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:radial-gradient(circle at 32% 26%,#fff 0%,var(--color-brand-cyan-100) 78%);box-shadow:0 0 0 8px #fff,inset 0 1px 0 #fff,0 16px 30px -18px rgba(23,107,122,0.6);color:var(--color-brand-cyan-700);transition:transform 320ms cubic-bezier(0.3,1.3,0.5,1),background 320ms var(--ease-state),color 320ms var(--ease-state)}.value__icon{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.value__icon path{stroke-dasharray:1;stroke-dashoffset:0;transition:stroke-dashoffset 1000ms var(--ease-enter) var(--draw-delay)}.value__title{margin:22px 0 8px;font-size:clamp(1.4rem,2vw,1.8rem)}.value__text{margin:0;color:var(--color-ink-700);line-height:1.6;transition:opacity 700ms var(--ease-enter) var(--draw-delay),transform 700ms var(--ease-enter) var(--draw-delay)}.value__title{transition:opacity 700ms var(--ease-enter) var(--draw-delay),transform 700ms var(--ease-enter) var(--draw-delay)}.js .values-row:not(.is-revealed)::before{transform:scaleX(0)}.js .values-row:not(.is-revealed) .value__icon path{stroke-dashoffset:1}.js .values-row:not(.is-revealed) :is(.value__title,.value__text){opacity:0;transform:translateY(10px)}.js .values-row[data-reveal].will-reveal{opacity:1;transform:none}@media (hover:hover){.value:hover .value__mark{transform:translateY(-4px);background:var(--color-brand-cyan-700);color:#fff}}@media (max-width:900px){.values-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px}.values-row::before{display:none}}@media (max-width:520px){.values-row{grid-template-columns:minmax(0,1fr)}}.value-card h3{margin:10px 0 8px;font-size:1.6rem}.value-card p{margin:0;color:var(--color-ink-700)}.visit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(20px,3vw,36px);align-items:stretch}.visit__card{display:flex;flex-direction:column;padding:clamp(24px,3.4vw,40px);border:1px solid rgba(255,255,255,0.9);border-radius:24px;background:rgba(255,255,255,0.8);box-shadow:inset 0 1px 0 #fff,0 28px 56px -44px rgba(15,77,88,0.55)}.visit__card h2{margin-bottom:20px;font-size:clamp(1.6rem,2.8vw,2.3rem)}.visit__facts{display:grid;gap:0;margin:0 0 24px}.visit__fact{display:grid;grid-template-columns:minmax(0,9.5rem) minmax(0,1fr);gap:4px 16px;padding:12px 0;border-bottom:1px solid var(--color-border)}.visit__fact:last-child{border-bottom:0}.visit__fact dt{display:flex;align-items:center;gap:10px;color:var(--color-ink-700);font-size:0.86rem;font-weight:600}.visit__fact dt .icon{color:var(--color-brand-cyan-700)}.visit__fact dd{margin:0;color:var(--color-ink-950);font-weight:500;overflow-wrap:anywhere}.visit__fact dd a{color:inherit;text-decoration-color:rgba(23,107,122,0.35)}.visit__fact dd a:hover{color:var(--color-brand-cyan-700)}.visit__card .button-row{margin-top:auto}.visit-map{position:relative;min-height:320px;margin:0;overflow:hidden;border-radius:24px;background:#f2efe9;box-shadow:0 28px 56px -40px rgba(15,77,88,0.6)}.visit-map__link{position:absolute;inset:0;display:block}.visit-map img{width:100%;height:100%;object-fit:cover;filter:saturate(0.6) contrast(1.02);transform:scale(1.02);transition:filter 500ms var(--ease-state),transform 900ms var(--ease-enter)}.visit-map:hover img{filter:saturate(1);transform:scale(1.06)}.visit-map__pin{position:absolute;top:50%;left:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border:4px solid #fff;border-radius:50%;background:var(--color-brand-cyan-700);box-shadow:0 6px 16px rgba(15,77,88,0.45)}.visit-map__pin::after{content:"";position:absolute;inset:-12px;border-radius:50%;border:2px solid var(--color-brand-cyan-700);opacity:0;animation:timeline-pulse 2.4s ease-out infinite}.visit-map__credit{position:absolute;right:10px;bottom:10px;padding:3px 8px;border-radius:6px;background:rgba(255,255,255,0.85);color:var(--color-ink-700);font-size:0.72rem}.visit-map__credit a{color:inherit}@media (prefers-reduced-motion:reduce){.visit-map__pin::after{animation:none}}@media (max-width:900px){.visit{grid-template-columns:minmax(0,1fr)}.visit-map{min-height:240px}}@media (max-width:480px){.visit__fact{grid-template-columns:minmax(0,1fr)}}.admissions-band{background:linear-gradient(135deg,var(--color-brand-cyan-100),#fff 70%)}.admissions-band__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,6vw,80px);align-items:center}.admissions-band__copy>p:not(.eyebrow){margin-bottom:24px;color:var(--color-ink-700);font-size:1.08rem}.admissions-band__dates{padding:26px;border:1px solid var(--color-border);border-radius:20px;background:rgba(255,255,255,.85);box-shadow:0 24px 48px -36px rgba(23,107,122,.6)}.admissions-band__dates .text-link{display:inline-block;margin-top:16px}.calendar-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.calendar-item{display:flex;align-items:flex-start;gap:14px;padding:14px 16px;border:1px solid var(--color-border);border-radius:14px;background:#fff}.calendar-item__icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:var(--color-brand-cyan-100);color:var(--color-brand-cyan-700)}.calendar-item__copy{display:grid;gap:2px}.calendar-item time{color:var(--color-ink-950);font-weight:700}.calendar-item__copy>span{color:var(--color-ink-700);font-size:.95rem}.calendar-item.is-past{border-style:dashed;background:var(--color-surface-soft)}.calendar-item.is-past time{color:var(--color-ink-700);text-decoration:line-through;text-decoration-thickness:1px}.calendar-item.is-past .calendar-item__icon{background:#fff;color:var(--color-ink-700)}.calendar-list--compact .calendar-item{padding:10px 12px;border-color:transparent;background:var(--color-surface-soft)}.calendar-source{margin:14px 0 0;font-size:.85rem}.calendar-source a{color:var(--color-ink-700);text-underline-offset:.2em}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}.step{position:relative;padding:28px 24px 26px;border:1px solid var(--color-border);border-radius:18px;background:#fff}.step__number{width:40px;height:40px;display:grid;place-items:center;margin-bottom:18px;border-radius:50%;background:var(--color-brand-cyan-700);color:#fff;font-weight:700}.step h3{margin:0 0 8px;font-size:1.3rem}.step p{margin:0;color:var(--color-ink-700)}.contact-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:28px}.contact-action{display:flex;align-items:center;gap:12px;min-width:0;padding:14px 16px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface-soft);color:var(--color-ink-950);font-weight:650;text-decoration:none;overflow-wrap:anywhere;transition:border-color 160ms,background 160ms}.contact-action:hover{border-color:var(--color-brand-cyan-700);background:var(--color-brand-cyan-100)}.contact-action small{display:block;color:var(--color-ink-700);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.contact-action__icon{width:40px;height:40px;flex:none;display:grid;place-items:center;border-radius:12px;background:#fff;color:var(--color-brand-cyan-700)}.admissions-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,80px);align-items:start}.admissions-split h2{font-size:clamp(1.6rem,2.6vw,2.2rem)}.checklist{display:grid;gap:10px;margin:0 0 16px;padding:0;list-style:none}.checklist li{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:14px;background:#fff}.checklist .icon{margin-top:2px;color:var(--color-brand-cyan-700)}.faq-list summary{font-size:clamp(1.1rem,1.8vw,1.45rem)}.programme-links{display:grid;gap:4px;margin:0;padding:0;list-style:none}.programme-links a{display:grid;gap:2px;padding:10px 12px;margin-inline:-12px;border-radius:10px;color:inherit;text-decoration:none;transition:background 160ms}.programme-links a:hover{background:#fff}.programme-links strong{color:var(--color-ink-950)}.programme-links span{font-size:.92rem}.programme-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}@media (min-width:1100px){.programme-tiles--cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.programme-tiles--cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.programme-tiles--cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:700px) and (max-width:1099px){.programme-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.programme-tiles--cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.programme-tile{display:flex;flex-direction:column;gap:6px;padding:22px;border:1px solid var(--color-border);border-radius:16px;background:#fff;color:inherit;text-decoration:none;transition:border-color 220ms var(--ease-state),transform 220ms var(--ease-state),box-shadow 220ms var(--ease-state)}.programme-tile__category{color:var(--color-brand-cyan-700);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.programme-tile h3{margin:0;font-size:1.2rem}.programme-tile p{margin:0;color:var(--color-ink-700);font-size:.95rem}.breadcrumb{margin-bottom:14px;color:var(--color-ink-700);font-size:.85rem;font-weight:600}.breadcrumb a{color:var(--color-brand-cyan-700);text-underline-offset:.2em}.level-chips{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0;list-style:none}.level-chips a{display:inline-block;padding:6px 14px;border:1px solid var(--color-border);border-radius:999px;background:#fff;color:var(--color-ink-950);font-size:.88rem;font-weight:600;text-decoration:none}.level-chips a:hover{border-color:var(--color-brand-cyan-700);color:var(--color-brand-cyan-700)}.programme-entry{display:grid;grid-template-columns:minmax(0,0.8fr) minmax(0,1.2fr);gap:14px clamp(32px,5vw,88px);padding:32px 0;border-top:1px solid var(--color-border);scroll-margin-top:calc(var(--header-height,76px) + 24px)}.programme-entry:first-of-type{border-top:0}.programme-entry__head h2{margin:0 0 8px;font-size:clamp(1.45rem,2.4vw,1.9rem)}.programme-entry__summary{margin:0;color:var(--color-ink-700)}.programme-entry .programme-detail__body{columns:auto}.programme-entry__films{grid-column:1 / -1;min-width:0}.programme-panel__more{margin:0 0 24px}.ask-card--band{position:static;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 32px;margin-top:24px}.ask-card--band p{margin:0}.ask-card--band .ask-card__actions{display:flex;flex-wrap:wrap}@media (max-width:900px){.programme-entry{grid-template-columns:minmax(0,1fr)}}.ask-card{position:sticky;top:calc(var(--header-height,76px) + 24px);padding:26px;border-radius:20px;background:var(--color-ink-950);color:#fff}.ask-card h2{margin-bottom:8px;color:#fff;font-size:1.5rem}.ask-card p{color:#c4d0d4}.ask-card__actions{display:grid;gap:10px}.ask-card .button--secondary{border-color:rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:#fff}@media (hover:hover) and (prefers-reduced-motion:no-preference){.service-card:hover,.programme-tile:hover,.step:hover{border-color:var(--color-brand-cyan-500);transform:translateY(-3px);box-shadow:0 22px 40px -30px rgba(23,107,122,.55)}}@media (max-width:1050px){.facts-grid,.values-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.steps,.contact-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admissions-band__grid,.admissions-split,.programme-detail-layout{grid-template-columns:minmax(0,1fr)}.ask-card{position:static}}@media (max-width:760px){.facts-grid,.values-grid,.service-grid,.steps,.contact-actions{grid-template-columns:minmax(0,1fr)}.fact{padding:20px}.service-card{display:grid;grid-template-columns:auto 1fr;column-gap:16px;padding:20px}.service-card__icon{grid-row:span 2;margin:0}.programme-detail__reel .programme-films__strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media print{.site-header,.site-footer,.back-to-top,.hero-video,.admissions-band,.intro,.skip-link{display:none!important}body{color:#000;background:#fff}.section{padding:16px 0;border:0}a{color:inherit}}@media (min-width:761px){.editorial-grid>.section-heading:not(.section-heading--row):not(.section-heading--sticky){display:block}}.editorial-grid>.section-heading h2{overflow-wrap:normal;hyphens:manual}.programme-detail-layout .programme-detail{max-width:none;margin-inline:0}.section--programme-detail:has(.programme-detail-layout){padding-top:clamp(40px,5vw,64px)}.contact-action{font-size:.92rem}@media (max-width:760px){.step{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:16px;padding:18px}.step__number{grid-row:span 2;margin:0}.step h3{margin-top:6px}}.legal-updated--top{margin:0 0 20px;padding:0;border:0}.legal-contents{margin-bottom:40px;padding:20px 24px;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface-soft)}.legal-contents__title{margin:0 0 10px;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-brand-cyan-700)}.legal-contents ol{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:6px 28px;margin:0;padding-left:1.4rem}.legal-contents a{color:var(--color-ink-900);text-underline-offset:.2em}.legal-contents a:hover{color:var(--color-brand-cyan-700)}.legal-section{scroll-margin-top:calc(var(--header-height,76px) + 24px)}.legal-section__number{color:var(--color-brand-cyan-700);font-variant-numeric:tabular-nums}.legal-dl{display:grid;gap:12px;margin:0 0 16px}.legal-dl dt{font-weight:700;color:var(--color-ink-950)}.legal-dl dd{margin:2px 0 0;color:var(--color-ink-900)}.legal-links{display:flex;flex-wrap:wrap;gap:8px;padding:0!important;list-style:none}.legal-links li + li{margin-top:0!important}.legal-links a{display:inline-block;padding:6px 14px;border:1px solid var(--color-border);border-radius:999px;color:var(--color-ink-950);font-size:.9rem;font-weight:600;text-decoration:none}.legal-links a:hover{border-color:var(--color-brand-cyan-700);color:var(--color-brand-cyan-700)}.legal-faq{margin-top:48px}.legal-faq h2{font-size:clamp(1.25rem,2vw,1.5rem)}.owner-card{margin:8px 0 16px;padding:20px 22px;border:1px solid var(--color-border);border-radius:14px;background:#fff}.owner-card__title{margin:0 0 6px;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-brand-cyan-700)}.owner-card__name{margin:0 0 12px;font-family:var(--serif);font-size:1.2rem;font-weight:600;color:var(--color-ink-950)}.owner-card dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:10px 24px;margin:0}.owner-card dt{font-size:.75rem;font-weight:700;color:var(--color-ink-700)}.owner-card dd{margin:2px 0 0;color:var(--color-ink-950);overflow-wrap:anywhere}.owner-card__code{font-variant-numeric:tabular-nums;letter-spacing:.04em}.tracker-categories{display:grid;gap:0;margin:0 0 16px;padding:0!important;list-style:none;border-top:1px solid var(--color-border)}.tracker-categories li{margin:0!important;padding:16px 0;border-bottom:1px solid var(--color-border)}.tracker-categories__head{display:flex;align-items:center;justify-content:space-between;gap:16px}.tracker-categories h3{margin:0;font-family:var(--sans);font-size:1rem;font-weight:700;letter-spacing:0}.tracker-categories p{margin:6px 0 0;color:var(--color-ink-700);font-size:.95rem}.tracker-status{flex:none;padding:3px 12px;border:1px solid var(--color-border);border-radius:999px;color:var(--color-ink-700);font-size:.78rem;font-weight:700;white-space:nowrap}.tracker-status.is-active{border-color:transparent;background:var(--color-brand-cyan-100);color:var(--color-brand-cyan-700)}.faq-list summary{grid-template-columns:minmax(0,1fr) 1.25rem}.faq-list summary::after{grid-column:2}.faq-list .details-body{padding-left:0}.footer-owner{color:#c4d0d4}.privacy-dialog{width:min(92vw,560px);max-height:min(88dvh,760px);padding:0;border:0;border-radius:20px;background:#fff;color:var(--color-ink-950);box-shadow:0 40px 80px -30px rgba(30,37,41,.6)}.privacy-dialog::backdrop{background:rgba(30,37,41,.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.privacy-dialog__head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px 12px;background:#fff}.privacy-dialog__head h2{margin:0;font-size:1.5rem}.privacy-dialog__intro{margin:0;padding:0 24px 12px;color:var(--color-ink-700)}.privacy-dialog .tracker-categories{margin:0 24px}.privacy-dialog__actions{position:sticky;bottom:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:16px 24px 20px;background:#fff;border-top:1px solid var(--color-border)}@media (max-width:760px){.legal-contents ol,.owner-card dl{grid-template-columns:minmax(0,1fr)}.footer-bottom{gap:4px;padding-block:16px;padding-right:60px}}.nowrap{white-space:nowrap}@media (min-width:1100px){.legal-section>ul,.legal-dl{columns:2;column-gap:48px}.legal-section>ul li,.legal-dl>div{break-inside:avoid}.programme-detail__body,.story-detail__body{columns:2;column-gap:48px}.programme-detail__body p,.story-detail__body p{break-inside:avoid}}@media (min-width:1280px){.teacher-bio{columns:2;column-gap:56px;column-fill:balance}.teacher-bio p{orphans:3;widows:3}}@media (max-width:760px){.welcome-message__inner{grid-template-columns:minmax(0,1fr)}.welcome-message__inner>*{grid-column:1!important;grid-row:auto!important}.welcome-message h2{margin-bottom:12px}.teacher-profile--stacked{grid-template-columns:minmax(0,1fr)}.teacher-profile__media{width:min(100%,340px);margin:0 auto}.page-hero--teacher h1{flex-wrap:wrap}.teacher-bio{font-size:1.02rem;line-height:1.7}}.legal-layout{align-items:stretch}.legal-aside{position:sticky;top:calc(var(--header-height,76px) + 24px);align-self:start;display:grid;gap:20px;max-height:calc(100dvh - var(--header-height,76px) - 48px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.legal-aside .legal-toc{position:static}.legal-sidebar-sections{padding-top:16px;border-top:1px solid var(--color-border)}.legal-sidebar-sections ol{display:grid;gap:2px;margin:0;padding:0;list-style:none;counter-reset:legal}.legal-sidebar-sections li{counter-increment:legal}.legal-sidebar-sections a{display:grid;grid-template-columns:2.1em minmax(0,1fr);padding:5px 10px;border-radius:8px;color:var(--color-ink-700);font-size:.88rem;line-height:1.35;text-decoration:none}.legal-sidebar-sections a::before{content:counter(legal) ".";color:var(--color-brand-cyan-700);font-variant-numeric:tabular-nums}.legal-sidebar-sections a:hover{background:var(--color-surface-soft);color:var(--color-ink-950)}.legal-sidebar-sections a[aria-current="true"]{background:var(--color-brand-cyan-100);color:var(--color-brand-cyan-700);font-weight:700}@media (min-width:761px){.legal-body>.legal-contents{display:none}}@media (max-width:760px){.legal-aside{position:static;max-height:none;overflow:visible}.legal-sidebar-sections{display:none}}.site-header::before{content:"";position:absolute;z-index:-1;inset:0 0 -18px 0;background:linear-gradient(180deg,rgba(245,250,251,0.55),rgba(245,250,251,0.2));-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 62%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 62%,transparent 100%);opacity:0;pointer-events:none;transition:opacity 280ms var(--ease-state)}.site-header.is-scrolled::before{opacity:1}@media (prefers-reduced-motion:reduce){.site-header::before{transition:none}}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.site-header::before{background:linear-gradient(180deg,rgba(245,250,251,0.94),rgba(245,250,251,0.7))}}@media (max-width:760px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}.footer-grid>div:first-child{grid-column:1 / -1}.footer-group{gap:10px;min-width:0}.footer-group>.eyebrow{margin-bottom:2px;font-size:.66rem;letter-spacing:.1em}.footer-group a,.footer-contact,.footer-contact a,.footer-contact span{font-size:.88rem;line-height:1.4}.footer-contact{gap:10px}.footer-contact a{overflow-wrap:break-word}.footer-social{gap:8px}}.mobile-dialog{width:min(76vw,300px);height:calc(100dvh - 20px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));margin:calc(10px + env(safe-area-inset-top,0px)) 10px 10px auto;overflow:hidden;border:1px solid rgba(255,255,255,0.7);border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,0.78),rgba(255,255,255,0.56));box-shadow:inset 0 1px 0 rgba(255,255,255,0.9),inset 0 -1px 0 rgba(30,37,41,0.06),0 30px 60px -24px rgba(30,37,41,0.45),0 2px 6px rgba(30,37,41,0.08);-webkit-backdrop-filter:blur(28px) saturate(180%);backdrop-filter:blur(28px) saturate(180%);transform:translateX(calc(100% + 16px));transition:transform 320ms var(--ease-enter),display 320ms allow-discrete,overlay 320ms allow-discrete}.mobile-dialog[open]{transform:translateX(0)}@starting-style{.mobile-dialog[open]{transform:translateX(calc(100% + 16px))}}.mobile-dialog::before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(105deg,rgba(255,255,255,0.5) 0%,rgba(255,255,255,0) 40%,rgba(255,255,255,0) 70%,rgba(255,255,255,0.25) 100%);mix-blend-mode:soft-light;pointer-events:none}.mobile-dialog>*{position:relative}.mobile-dialog::backdrop{background:rgba(30,37,41,0.22);-webkit-backdrop-filter:blur(10px) saturate(120%);backdrop-filter:blur(10px) saturate(120%);opacity:0;transition:opacity 320ms var(--ease-state),display 320ms allow-discrete,overlay 320ms allow-discrete}.mobile-dialog[open]::backdrop{opacity:1}@starting-style{.mobile-dialog[open]::backdrop{opacity:0}}.mobile-dialog__header{min-height:64px;padding:12px 12px 8px 20px;border-bottom:0}.mobile-dialog__header p{font-size:0.78rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--color-brand-cyan-700)}.mobile-dialog__header .icon-button{width:40px;height:40px;border-color:rgba(255,255,255,0.8);border-radius:999px;background:rgba(255,255,255,0.55);box-shadow:inset 0 1px 0 rgba(255,255,255,0.9)}.mobile-dialog__nav{gap:2px;padding:4px 10px 12px}.mobile-dialog__nav>a,.mobile-dialog__nav details>a,.mobile-dialog__nav summary{min-height:44px;padding:10px 12px;border-bottom:0;border-radius:14px;font-size:0.98rem}.mobile-dialog__nav details>a{padding-left:24px;font-size:0.92rem}.mobile-dialog__nav>a:hover,.mobile-dialog__nav details>a:hover{background:rgba(255,255,255,0.55)}.mobile-dialog__nav a[aria-current="page"]{background:rgba(223,246,250,0.8);box-shadow:inset 0 1px 0 rgba(255,255,255,0.9)}.mobile-dialog__nav details{padding-bottom:6px;margin-bottom:4px;border-bottom:1px solid rgba(30,37,41,0.08)}.mobile-dialog__footer{gap:8px;padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid rgba(30,37,41,0.08)}.mobile-dialog__footer .button{min-height:44px;border-radius:999px}.mobile-dialog__footer .button--secondary{border-color:rgba(255,255,255,0.8);background:rgba(255,255,255,0.55);box-shadow:inset 0 1px 0 rgba(255,255,255,0.9)}@media (prefers-reduced-motion:reduce){.mobile-dialog,.mobile-dialog::backdrop{transition:none}}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.mobile-dialog{background:rgba(255,255,255,0.97)}.mobile-dialog::backdrop{background:rgba(30,37,41,0.5)}}.mobile-dialog__header{min-height:52px;padding-block:8px 2px}.mobile-dialog__nav{flex:1 1 auto;min-height:0;gap:0;padding:0 10px 6px}.mobile-dialog__nav>a{flex:1 1 0;min-height:28px;max-height:46px;padding:0 14px;font-size:clamp(0.86rem,2.1dvh,1rem)}.mobile-dialog__nav>a.mobile-dialog__sub{padding-left:24px;color:var(--color-ink-700);font-size:clamp(0.82rem,2dvh,0.94rem);font-weight:500}.mobile-dialog__group{flex:none;margin:clamp(4px,1dvh,10px) 14px 2px;color:var(--color-brand-cyan-700);font-size:0.68rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase}.mobile-dialog__rule{flex:none;height:1px;margin:clamp(4px,1dvh,8px) 14px;background:rgba(30,37,41,0.08)}@media (max-height:520px){.mobile-dialog__nav>a{min-height:25px;font-size:0.82rem}.mobile-dialog__nav>a.mobile-dialog__sub{font-size:0.8rem}.mobile-dialog__group{margin-top:2px;font-size:0.62rem}.mobile-dialog__rule{margin-block:3px}.mobile-dialog__header{min-height:46px}}.mobile-dialog__tools{display:flex;align-items:center;gap:8px}.mobile-dialog__lang{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border:1px solid rgba(255,255,255,0.8);border-radius:999px;background:rgba(255,255,255,0.55);box-shadow:inset 0 1px 0 rgba(255,255,255,0.9);color:var(--color-ink-950);font-size:0.86rem;font-weight:700;text-decoration:none}.mobile-dialog__lang{border-color:var(--color-brand-cyan-700);background:var(--color-brand-cyan-700);box-shadow:0 6px 16px -8px rgba(23,107,122,0.8);color:#fff}.mobile-dialog__lang:hover{border-color:var(--color-focus);background:var(--color-focus);color:#fff}.mobile-dialog__nav>a.mobile-dialog__cta,.mobile-dialog__nav>a.mobile-dialog__cta[aria-current="page"],.mobile-dialog__nav.is-selecting>a.mobile-dialog__cta,.mobile-dialog__nav.is-selecting>a.mobile-dialog__cta.is-lens-target{justify-content:center;margin-top:clamp(4px,1dvh,8px);border-radius:999px;background:var(--color-brand-cyan-700);box-shadow:0 8px 20px -10px rgba(23,107,122,0.9),inset 0 1px 0 rgba(255,255,255,0.25);color:#fff;font-weight:700}.mobile-dialog__nav>a.mobile-dialog__cta:hover{background:var(--color-focus)}.mobile-dialog__nav{position:relative;-webkit-user-select:none;user-select:none}.mobile-dialog__nav a,.mobile-dialog__nav summary{position:relative;z-index:1;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;transition:color 180ms var(--ease-state),transform 220ms cubic-bezier(0.3,1.3,0.5,1)}.menu-lens{position:absolute;top:0;left:0;z-index:0;border:1px solid rgba(255,255,255,0.9);border-radius:999px;background:radial-gradient(120% 140% at 30% 0%,rgba(255,255,255,0.95) 0%,rgba(255,255,255,0.55) 55%,rgba(223,246,250,0.5) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,1),inset 0 -1px 2px rgba(23,107,122,0.12),0 14px 28px -14px rgba(23,107,122,0.6),0 3px 8px rgba(30,37,41,0.1);-webkit-backdrop-filter:blur(6px) saturate(160%);backdrop-filter:blur(6px) saturate(160%);opacity:0;pointer-events:none;transform-origin:50% 50%;will-change:transform,height;transition:opacity 180ms var(--ease-state),box-shadow 200ms var(--ease-state)}.menu-lens::after{content:"";position:absolute;inset:2px 10% auto;height:40%;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,0.85),rgba(255,255,255,0));opacity:0.7}.menu-lens.is-visible{opacity:1}.menu-lens.is-away{opacity:0.35}.menu-lens.is-chosen{box-shadow:inset 0 1px 0 rgba(255,255,255,1),0 0 0 3px rgba(121,214,230,0.45),0 16px 30px -14px rgba(23,107,122,0.7)}.menu-haptic{position:fixed;left:-9999px;top:0;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.mobile-dialog__nav.is-selecting .is-lens-target{color:var(--color-brand-cyan-700);transform:translateX(4px)}.mobile-dialog__nav.is-selecting a[aria-current="page"]{background:transparent;box-shadow:none}.mobile-dialog__nav.is-selecting a[aria-current="page"]:not(.is-lens-target){color:var(--color-ink-950)}@media (hover:none){.mobile-dialog__nav>a:hover,.mobile-dialog__nav details>a:hover{background:transparent}}@media (prefers-reduced-motion:reduce){.mobile-dialog__nav a,.mobile-dialog__nav summary{transition:color 120ms linear}.mobile-dialog__nav.is-selecting .is-lens-target{transform:none}}.gallery-caption{display:grid;justify-items:start;gap:8px;margin-top:16px;min-width:0}.gallery-dialog__figure figcaption.gallery-caption{display:grid}.gallery-caption [hidden]{display:none!important}.gallery-caption__meta{color:var(--color-brand-cyan-700);font-size:0.72rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase}.gallery-caption__name{color:var(--color-ink-950);font-family:"Playfair Display",var(--serif);font-size:clamp(1.45rem,5vw,1.9rem);font-weight:600;line-height:1.15;letter-spacing:-0.01em;overflow-wrap:break-word;text-wrap:balance}.gallery-caption__field{max-width:100%;padding:6px 14px;border:1px solid rgba(23,107,122,0.25);border-radius:14px;background:var(--color-brand-cyan-100);color:var(--color-brand-cyan-700);font-size:0.92rem;font-weight:650;line-height:1.35;overflow-wrap:break-word}.gallery-caption__text{color:var(--color-ink-700);font-size:0.98rem;line-height:1.5}.gallery-dialog__nav{align-items:center}.gallery-dialog__position{margin:0;padding:6px 14px;border-radius:999px;background:var(--color-surface-soft);color:var(--color-ink-700);font-size:0.88rem;font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}.gallery-dialog{border-radius:20px}.gallery-dialog__figure img{border-radius:12px}.gallery-dialog__header p{font-size:0.78rem;font-weight:700;letter-spacing:0.12em;color:var(--color-brand-cyan-700)}.gallery-dialog__header .icon-button,.gallery-dialog__nav .icon-button{border-radius:999px}@media (max-width:760px){.gallery-dialog__figure{padding:16px}.gallery-dialog__figure img{max-height:min(58dvh,620px)}.gallery-dialog__nav{padding:0 16px 16px}}html.is-page-locked{overflow:hidden;scroll-behavior:auto}html.is-page-locked body{position:fixed;left:0;right:0;width:100%;overflow:hidden}.gallery-dialog,.privacy-dialog,.mobile-dialog{overscroll-behavior:contain}.gallery-dialog::backdrop{background:rgba(30,37,41,0.45);-webkit-backdrop-filter:blur(14px) saturate(120%);backdrop-filter:blur(14px) saturate(120%)}.privacy-dialog::backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.gallery-dialog[open]{display:flex;flex-direction:column;max-height:calc(100dvh - 24px);overflow:hidden}.gallery-dialog__header,.gallery-dialog__nav{flex:none}.gallery-dialog__figure{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.gallery-dialog__figure img{flex:1 1 auto;min-height:140px;height:auto;max-height:min(70vh,720px)}.gallery-caption{flex:none}@media (max-width:760px){.gallery-dialog__header{padding:10px 12px 10px 18px}.gallery-dialog__figure{padding:12px 14px 10px}.gallery-dialog__figure img{max-height:none}.gallery-caption{gap:6px;margin-top:12px}.gallery-caption__name{font-size:1.4rem}.gallery-caption__field{padding:5px 12px;font-size:0.86rem}.gallery-dialog__nav{padding:4px 14px 14px}}.mobile-dialog{position:fixed;inset:0 0 0 auto}html,body{overflow-x:clip}.news-list{display:grid;gap:0;margin:0;padding:0;list-style:none;border-top:1px solid var(--color-border)}.news-item{display:grid;grid-template-columns:9rem minmax(0,1.1fr) minmax(0,1.6fr);gap:clamp(20px,3vw,48px);align-items:start;padding-block:clamp(24px,3vw,40px);border-bottom:1px solid var(--color-border)}.news-item--undated{grid-template-columns:minmax(0,1.1fr) minmax(0,1.6fr)}.news-item__date{display:grid;gap:4px;color:var(--color-ink-700)}.news-item__day{font-size:clamp(2.5rem,4vw,3.5rem);font-weight:700;line-height:1;color:var(--color-ink-900);font-variant-numeric:tabular-nums}.news-item__month{font-size:.95rem;text-transform:capitalize}.news-item__media{display:block;overflow:hidden;border-radius:6px}.news-item__media img{width:100%;aspect-ratio:4 / 3;object-fit:cover;transition:transform .4s ease}.news-item__media:hover img{transform:scale(1.03)}.news-item__body h2{margin-block:8px 12px;font-size:clamp(1.4rem,2.4vw,2rem);line-height:1.15}.news-item__body h2 a{text-decoration:none}.news-item__body h2 a:hover{text-decoration:underline}.news-item__body>p:not(.eyebrow){color:var(--color-ink-700)}.story-card__date{font-weight:500;letter-spacing:0;text-transform:none}@media (max-width:820px){.news-item,.news-item--undated{grid-template-columns:minmax(0,1fr);gap:16px}.news-item__date{display:flex;align-items:baseline;gap:10px}.news-item__day{font-size:2rem}}.story-album{grid-column:1 / -1;margin-top:clamp(32px,5vw,64px)}.story-album__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 24px;margin-bottom:20px}.story-album__head h2{margin:0}.story-album__head p{margin:0;color:var(--color-ink-700)}.story-album__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:12px;margin:0;padding:0;list-style:none}.story-album__item{margin:0}.story-album__item a{display:block;overflow:hidden;border-radius:6px}.story-album__item img,.story-album__item video{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:6px;background:#0d1b1f}.story-album__item a img{transition:transform .4s ease}.story-album__item a:hover img{transform:scale(1.04)}.story-album__item a:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.story-album__caption{margin:8px 0 0;color:var(--color-ink-700);font-size:.9rem}@media (max-width:520px){.story-album__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.story-album__item--clip{grid-column:1 / -1}}.chat{--chat-edge:clamp(16px,2.4vw,28px);--chat-teal:var(--color-brand-cyan-700)}.chat-launcher{position:fixed;z-index:60;right:var(--chat-edge);bottom:calc(var(--chat-edge) + env(safe-area-inset-bottom,0px));display:inline-flex;align-items:center;gap:10px;height:58px;min-width:58px;padding:0 20px 0 17px;border:0;border-radius:999px;background:linear-gradient(145deg,#1f8394,#115864);box-shadow:0 18px 40px -16px rgba(17,88,100,.75),0 2px 6px rgba(17,88,100,.25),inset 0 1px 0 rgba(255,255,255,.22);color:#fff;font-weight:600;font-size:.95rem;cursor:pointer;transition:transform 200ms var(--ease-state),box-shadow 200ms var(--ease-state),padding 240ms var(--ease-state)}.chat-launcher:hover{transform:translateY(-2px);box-shadow:0 22px 44px -16px rgba(17,88,100,.85),0 2px 6px rgba(17,88,100,.3),inset 0 1px 0 rgba(255,255,255,.22)}.chat-launcher:active{transform:scale(.96)}.chat-launcher:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}.chat-launcher__icon{width:24px;height:24px;flex:none}.chat-launcher__icon--close{display:none}.chat.is-open .chat-launcher{padding:0;width:58px;justify-content:center}.chat.is-open .chat-launcher__label,.chat.is-open .chat-launcher__icon--open{display:none}.chat.is-open .chat-launcher__icon--close{display:block}.back-to-top{bottom:calc(clamp(16px,2.4vw,28px) + 58px + 14px + env(safe-area-inset-bottom,0px));right:calc(clamp(16px,2.4vw,28px) + 6px)}.chat-panel{position:fixed;z-index:61;right:var(--chat-edge);bottom:calc(var(--chat-edge) + 58px + 14px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;width:min(384px,calc(100vw - 2 * var(--chat-edge)));height:min(620px,calc(100dvh - 58px - 14px - 2 * var(--chat-edge) - var(--header-height)));min-height:360px;overflow:hidden;border:1px solid rgba(23,107,122,.14);border-radius:22px;background:var(--color-surface);box-shadow:0 40px 80px -30px rgba(20,44,50,.55),0 12px 30px -18px rgba(20,44,50,.35);opacity:0;transform:translateY(14px) scale(.98);transform-origin:bottom right;transition:opacity 200ms var(--ease-state),transform 240ms var(--ease-enter)}.chat-panel[hidden]{display:none}.chat-panel.is-visible{opacity:1;transform:none}.chat-panel__head{display:flex;align-items:center;gap:12px;padding:14px 10px 14px 16px;background:linear-gradient(145deg,#1a7888,#0f4f5a);color:#fff}.chat-panel__avatar{flex:none;width:40px;height:40px;border-radius:12px;background:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.35);object-fit:cover}.chat-panel__titles{flex:1;min-width:0}.chat-panel__titles h2{margin:0;color:#fff;font-family:var(--sans);font-size:1.02rem;font-weight:650;letter-spacing:-.01em;line-height:1.25}.chat-panel__titles p{display:flex;align-items:center;gap:6px;margin:2px 0 0;color:rgba(255,255,255,.8);font-size:.78rem;line-height:1.3}.chat-panel__dot{width:7px;height:7px;flex:none;border-radius:50%;background:#7ee2a8;box-shadow:0 0 0 3px rgba(126,226,168,.25)}.chat-panel__tool{display:grid;place-items:center;width:38px;height:38px;flex:none;border:0;border-radius:10px;background:transparent;color:#fff;cursor:pointer}.chat-panel__tool:hover{background:rgba(255,255,255,.14)}.chat-panel__tool:focus-visible{outline:2px solid #fff;outline-offset:-2px}.chat-panel__tool svg{width:20px;height:20px}.chat-panel__log{flex:1;display:flex;flex-direction:column;gap:12px;overflow-y:auto;overscroll-behavior:contain;padding:18px 16px 12px;background:linear-gradient(180deg,#f3f9fa,#fff 140px);scroll-behavior:smooth}.chat-panel__log:focus-visible{outline:2px solid var(--color-focus);outline-offset:-2px}.chat-msg{display:flex;flex-direction:column;gap:8px;max-width:88%;animation:chat-in 260ms var(--ease-enter) both}.chat-msg.is-static{animation:none}.chat-msg--user{align-self:flex-end;align-items:flex-end}.chat-msg--bot{align-self:flex-start}.chat-msg__bubble{padding:10px 14px;border-radius:18px 18px 18px 6px;background:#fff;box-shadow:0 1px 0 rgba(23,107,122,.08),0 0 0 1px rgba(23,107,122,.1);color:var(--color-ink-950);font-size:.94rem;line-height:1.5;overflow-wrap:anywhere}.chat-msg__bubble p{margin:0}.chat-msg__bubble p + p,.chat-msg__bubble p + ul,.chat-msg__bubble ul + p{margin-top:8px}.chat-msg__bubble ul{margin:0;padding-left:18px}.chat-msg__bubble li + li{margin-top:2px}.chat-msg--user .chat-msg__bubble{border-radius:18px 18px 6px 18px;background:var(--chat-teal);box-shadow:none;color:#fff}.chat-msg__links{display:flex;flex-wrap:wrap;gap:6px}.chat-link{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px 12px;border:1px solid rgba(23,107,122,.28);border-radius:999px;background:#fff;color:var(--chat-teal);font-size:.86rem;font-weight:600;text-decoration:none;transition:background 160ms,border-color 160ms}.chat-link:hover{border-color:var(--chat-teal);background:var(--color-brand-cyan-100)}.chat-msg__contact{display:grid;gap:6px;padding:12px;border-radius:14px;background:var(--color-surface-soft);box-shadow:0 0 0 1px var(--color-border)}.chat-msg__contact p{margin:0 0 2px;color:var(--color-ink-700);font-size:.84rem}.chat-contact{display:flex;align-items:center;gap:10px;min-height:40px;padding:8px 12px;border-radius:10px;background:#fff;box-shadow:0 0 0 1px var(--color-border);color:var(--color-ink-950);font-size:.9rem;font-weight:600;text-decoration:none}.chat-contact:hover{box-shadow:0 0 0 1px var(--chat-teal);color:var(--chat-teal)}.chat-contact svg{width:18px;height:18px;flex:none;fill:none;stroke:var(--chat-teal);stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}.chat-msg--typing .chat-msg__bubble{display:flex;gap:5px;padding:14px 16px}.chat-msg--typing .chat-msg__bubble span{width:7px;height:7px;border-radius:50%;background:#8fb6bd;animation:chat-dot 1.1s infinite ease-in-out}.chat-msg--typing .chat-msg__bubble span:nth-child(2){animation-delay:.15s}.chat-msg--typing .chat-msg__bubble span:nth-child(3){animation-delay:.3s}.chat-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.chat-chips[hidden]{display:none}.chat-chips button{min-height:36px;padding:7px 13px;border:1px solid rgba(23,107,122,.26);border-radius:999px;background:#fff;color:var(--chat-teal);font-size:.86rem;font-weight:600;cursor:pointer;transition:background 160ms,border-color 160ms}.chat-chips button:hover{border-color:var(--chat-teal);background:var(--color-brand-cyan-100)}.chat-panel__composer{display:flex;align-items:flex-end;gap:8px;margin:0 12px;padding:6px 6px 6px 14px;border:1px solid var(--color-border);border-radius:18px;background:#fff;transition:border-color 160ms,box-shadow 160ms}.chat-panel__composer:focus-within{border-color:var(--chat-teal);box-shadow:0 0 0 3px rgba(23,107,122,.14)}.chat-panel__composer textarea{flex:1;min-width:0;max-height:120px;padding:8px 0;border:0;outline:0;resize:none;background:transparent;color:var(--color-ink-950);font-size:1rem;line-height:1.4}.chat-panel__send{display:grid;place-items:center;width:38px;height:38px;flex:none;border:0;border-radius:12px;background:var(--chat-teal);color:#fff;cursor:pointer;transition:opacity 160ms,transform 160ms}.chat-panel__send:disabled{opacity:.35;cursor:default}.chat-panel__send:not(:disabled):active{transform:scale(.94)}.chat-panel__send svg{width:20px;height:20px}.chat-panel__notice{margin:0;padding:8px 16px 12px;color:var(--color-ink-700);font-size:.72rem;line-height:1.4;text-align:center}.chat-panel__notice a{color:inherit}@keyframes chat-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes chat-dot{0%,80%,100%{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@media (max-width:600px){.chat-launcher{height:54px;min-width:54px;padding:0;width:54px;justify-content:center}.chat-launcher__label{display:none}.chat.is-open .chat-launcher{opacity:0;pointer-events:none}.back-to-top{bottom:calc(clamp(16px,2.4vw,28px) + 54px + 12px + env(safe-area-inset-bottom,0px));right:calc(clamp(16px,2.4vw,28px) + 4px)}.chat-panel{inset:max(10px,env(safe-area-inset-top,0px)) 0 0 0;width:100%;height:auto;min-height:0;border-radius:22px 22px 0 0;transform:translateY(24px);transform-origin:bottom center}.chat-panel__notice{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}.chat-msg{max-width:92%}}@media print{.chat{display:none!important}}.chat-backdrop{position:fixed;z-index:59;inset:0;background:rgba(12,30,35,.28);-webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);opacity:0;transition:opacity 220ms var(--ease-state)}.chat-backdrop.is-visible{opacity:1}.chat-backdrop[hidden]{display:none}@media (min-width:601px){.chat-backdrop{display:none}}.chat-feedback{flex:1;display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding:22px 18px 12px;background:linear-gradient(180deg,#f3f9fa,#fff 140px)}.chat-feedback[hidden],.chat-panel__log[hidden],.chat-panel__composer[hidden]{display:none}.chat-feedback h3{margin:0 0 4px;font-family:var(--sans);font-size:1.1rem;font-weight:650;letter-spacing:-.01em}.chat-feedback h3:focus{outline:none}.chat-feedback__rating{display:grid;grid-template-columns:1fr 1fr;gap:8px}.chat-feedback__rating button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:8px 10px;border:1px solid var(--color-border);border-radius:14px;background:#fff;color:var(--color-ink-950);font-size:.92rem;font-weight:600;cursor:pointer;transition:border-color 160ms,background 160ms,color 160ms}.chat-feedback__rating button:hover{border-color:var(--chat-teal)}.chat-feedback__rating button[aria-pressed="true"]{border-color:var(--chat-teal);background:var(--chat-teal);color:#fff}.chat-feedback__rating svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.chat-feedback__rating svg.is-down{transform:rotate(180deg)}.chat-feedback label{margin-top:4px;color:var(--color-ink-900);font-size:.9rem;font-weight:600}.chat-feedback textarea{width:100%;min-height:110px;padding:10px 12px;border:1px solid var(--color-border);border-radius:14px;resize:vertical;font-size:1rem;line-height:1.45}.chat-feedback textarea:focus{border-color:var(--chat-teal);outline:0;box-shadow:0 0 0 3px rgba(23,107,122,.14)}.chat-feedback__note{margin:0;color:var(--color-ink-700);font-size:.8rem;line-height:1.4}.chat-feedback__status{margin:0;min-height:1.2em;color:#1d7a4a;font-size:.88rem;font-weight:600}.chat-feedback__status.is-error{color:#b3261e}.chat-feedback__actions{display:flex;gap:8px;margin-top:auto;padding-top:4px}.chat-feedback__back,.chat-feedback__send{flex:1;min-height:44px;border-radius:12px;font-size:.92rem;font-weight:600;cursor:pointer}.chat-feedback__back{border:1px solid var(--color-border);background:#fff;color:var(--color-ink-950)}.chat-feedback__send{border:0;background:var(--chat-teal);color:#fff}.chat-feedback__send:disabled{opacity:.4;cursor:default}.chat-panel.is-feedback [data-chat-feedback-open]{background:rgba(255,255,255,.2)}.chat-panel__tool{width:36px;height:36px}.chat.is-open .chat-launcher{opacity:0;pointer-events:none;transform:scale(.8)}.chat-panel{bottom:calc(var(--chat-edge) + env(safe-area-inset-bottom,0px));height:min(640px,calc(100dvh - 2 * var(--chat-edge) - var(--header-height)));border:1px solid rgba(255,255,255,.7);background:linear-gradient(160deg,rgba(255,255,255,.9),rgba(236,248,250,.84));-webkit-backdrop-filter:blur(40px) saturate(190%);backdrop-filter:blur(40px) saturate(190%);box-shadow:0 0 0 1px rgba(23,107,122,.1),0 30px 70px -28px rgba(15,79,90,.55),0 0 60px -4px rgba(47,170,196,.45),inset 0 1px 0 rgba(255,255,255,.9)}.chat-panel__head{position:relative;background:linear-gradient(145deg,rgba(31,131,148,.92),rgba(15,79,90,.9));box-shadow:inset 0 -1px 0 rgba(255,255,255,.14),inset 0 1px 0 rgba(255,255,255,.25)}.chat-panel__head::after{content:"";position:absolute;inset:0 0 50% 0;background:linear-gradient(180deg,rgba(255,255,255,.16),transparent);pointer-events:none}.chat-panel__head>*{position:relative;z-index:1}.chat-panel__log,.chat-feedback{background:transparent}.chat-msg--bot .chat-msg__bubble,.chat-link,.chat-chips button,.chat-contact,.chat-feedback__rating button:not([aria-pressed="true"]),.chat-feedback__back{background:rgba(255,255,255,.82)}.chat-msg--user .chat-msg__bubble{background:linear-gradient(145deg,#1f8394,#135f6c);box-shadow:0 6px 16px -8px rgba(19,95,108,.6)}.chat-panel__composer{background:rgba(255,255,255,.88);box-shadow:0 6px 20px -12px rgba(15,79,90,.35)}.chat-panel__composer:focus-within{box-shadow:0 0 0 3px rgba(47,170,196,.22),0 6px 20px -12px rgba(15,79,90,.35)}.chat-msg__contact{background:rgba(240,249,251,.7)}@media (max-width:600px){.chat-panel{bottom:0;height:auto;border-bottom:0;box-shadow:0 -10px 50px -12px rgba(47,170,196,.35),inset 0 1px 0 rgba(255,255,255,.9)}}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.chat-panel{background:#fff}}.medal-directory--named{column-gap:clamp(20px,3vw,40px)}@media (min-width:900px){.medal-directory--named.medal-directory--cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.medal-directory--named.medal-directory--cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.medal-directory--named.medal-directory--cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:899px){.medal-directory--named{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.medal-directory--named{grid-template-columns:minmax(0,1fr)}}@media (max-width:760px){.footer-grid nav,.footer-grid .footer-group{gap:0}.footer-group>.eyebrow{margin-bottom:6px}.footer-group>a,.footer-contact>a,.footer-social a{padding-block:10px;margin-block:-5px}.footer-contact{gap:0}.footer-contact>span{padding-block:5px}}.topic-choice{margin:0;padding:0;border:0;min-width:0}.topic-choice legend{margin-bottom:6px;padding:0;font-weight:600}.topic-choice__options{display:flex;flex-wrap:wrap;gap:8px}.contact-form .topic-choice__option{position:relative;display:inline-flex;gap:0;font-weight:600}.topic-choice__option input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.topic-choice__option span{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid var(--color-border);border-radius:999px;background:#fff;color:var(--color-ink-900);font-size:.94rem;transition:background 160ms,border-color 160ms,color 160ms}.topic-choice__option input:checked + span{border-color:var(--color-brand-cyan-700);background:var(--color-brand-cyan-700);color:#fff}.topic-choice__option input:focus-visible + span{outline:3px solid var(--color-focus);outline-offset:2px}.programme-panel__intro{margin:0 0 8px;color:var(--color-ink-700);font-size:clamp(1rem,1.4vw,1.12rem);line-height:1.65}.course-showcase{margin-top:36px}.course-tracks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.glass-panel{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,0.55);border-radius:20px;background:linear-gradient(150deg,rgba(255,255,255,0.72),rgba(255,255,255,0.34));box-shadow:inset 0 1px 0 rgba(255,255,255,0.9),0 18px 40px -30px rgba(23,107,122,0.5);-webkit-backdrop-filter:blur(14px) saturate(1.3);backdrop-filter:blur(14px) saturate(1.3);transition:transform 420ms cubic-bezier(0.22,1,0.36,1),box-shadow 420ms cubic-bezier(0.22,1,0.36,1),border-color 420ms ease}.glass-panel::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,0.55) 50%,transparent 62%);transform:translateX(-120%);opacity:0;pointer-events:none;transition:transform 900ms cubic-bezier(0.22,1,0.36,1),opacity 300ms ease}.course-track{padding:18px 20px 20px}.course-track__ages{display:inline-block;margin:0 0 10px;padding:4px 11px;border-radius:999px;background:rgba(121,214,230,0.34);color:var(--color-ink-900);font-size:0.74rem;font-weight:700;letter-spacing:0.07em;text-transform:uppercase}.course-track h4{margin:0 0 6px;font-family:var(--serif);font-size:clamp(1.1rem,1.7vw,1.3rem);font-weight:600;line-height:1.2}.course-track__text{margin:0 0 12px;color:var(--color-ink-700);font-size:0.92rem;line-height:1.55}.course-track__steps{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;counter-reset:step}.course-track__steps li{counter-increment:step;padding:4px 11px 4px 8px;border-radius:999px;background:rgba(23,107,122,0.09);color:var(--color-ink-900);font-size:0.8rem;font-weight:600}.course-track__steps li::before{content:counter(step);display:inline-grid;place-items:center;width:17px;height:17px;margin-right:6px;border-radius:50%;background:var(--color-brand-cyan-500);color:#fff;font-size:0.68rem}.course-facts{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 20px;margin-top:16px;padding:14px 4px 0;border-top:1px solid var(--color-border)}.course-facts__list{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0;padding:0;list-style:none}.course-facts__list li{color:var(--color-ink-700);font-size:0.88rem;font-weight:600}.course-facts__list li::before{content:"";display:inline-block;width:6px;height:6px;margin-right:8px;border-radius:50%;background:var(--color-brand-cyan-500);vertical-align:middle}.course-facts__call{color:var(--color-ink-900);font-size:1rem;font-weight:700;text-decoration:none;white-space:nowrap}.course-facts__call span{display:block;color:var(--color-ink-700);font-size:0.7rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase}.course-facts__call:hover{color:var(--color-brand-cyan-700,#176b7a)}.course-skills{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0 0;padding:0;list-style:none}.course-skills li{padding:5px 12px;border-radius:999px;background:rgba(23,107,122,0.07);color:var(--color-ink-700);font-size:0.8rem}.film-stage{margin-top:34px}.film-stage__note{margin:0 0 14px;color:var(--color-ink-700);font-size:0.85rem}.film-stage__screen{position:relative;overflow:hidden;width:100%;height:clamp(420px,43vw,600px);border-radius:24px;background:#101a1d;box-shadow:0 34px 66px -44px rgba(23,107,122,0.7)}.film-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity 460ms cubic-bezier(0.22,1,0.36,1),visibility 0s linear 460ms}.film-slide.is-active{opacity:1;visibility:visible;transition:opacity 460ms cubic-bezier(0.22,1,0.36,1),visibility 0s}.film-slide__wash{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.25);filter:blur(90px) saturate(1.5) brightness(0.68);opacity:0.92}.film-slide__still,.film-slide__video{position:absolute;inset:0;width:auto;max-width:100%;height:100%;margin:auto;object-fit:contain;border-radius:14px}.film-slide__video{opacity:0;transition:opacity 320ms ease}.film-slide__video.is-playing{opacity:1}.film-stage__main{position:relative}.film-stage__caption{position:absolute;inset:auto 0 0 0;border-radius:0 0 24px 24px;padding:clamp(48px,8vw,96px) clamp(20px,3vw,40px) clamp(18px,2.4vw,30px);background:linear-gradient(to top,rgba(12,18,20,0.92),rgba(12,18,20,0.62) 46%,rgba(12,18,20,0) 100%);color:#fff;pointer-events:none}.film-copy{display:none}.film-copy.is-active{display:block;animation:film-copy-in 460ms cubic-bezier(0.22,1,0.36,1) both}@keyframes film-copy-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.film-copy__count{margin:0 0 8px;color:var(--color-brand-cyan-100,#cdeff5);font-size:0.75rem;font-weight:700;letter-spacing:0.1em}.film-copy h4{margin:0 0 8px;color:#fff;font-family:var(--serif);font-size:clamp(1.3rem,2.2vw,1.9rem);font-weight:600;line-height:1.15}.film-copy__text{max-width:62ch;margin:0;color:rgba(255,255,255,0.86);font-size:clamp(0.92rem,1.2vw,1.02rem);line-height:1.55}.film-arrow{position:absolute;top:50%;z-index:2;display:grid;place-items:center;width:46px;height:46px;border:1px solid rgba(255,255,255,0.5);border-radius:50%;background:rgba(255,255,255,0.22);color:#fff;font-size:1.1rem;cursor:pointer;transform:translateY(-50%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background 260ms ease,transform 260ms cubic-bezier(0.22,1,0.36,1)}.film-arrow--prev{left:clamp(10px,1.6vw,20px)}.film-arrow--next{right:clamp(10px,1.6vw,20px)}.film-arrow:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.film-rail{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:18px 0 0;padding:4px;scrollbar-width:none;list-style:none}.film-rail::-webkit-scrollbar{display:none}.film-rail__item{position:relative;overflow:hidden;flex:1 1 0;min-width:0;max-width:148px;padding:4px;border-radius:20px;transition:transform 340ms cubic-bezier(0.22,1,0.36,1),box-shadow 340ms ease}.film-rail__item.is-active{transform:translateY(-5px) scale(1.05);box-shadow:0 20px 34px -20px rgba(23,107,122,0.75)}.film-rail__item::before{content:"";position:absolute;left:50%;top:50%;width:190%;height:190%;background:conic-gradient(from 0deg,var(--color-brand-cyan-500,#79d6e6),var(--color-brand-cyan-700,#176b7a) 28%,#ffffff 52%,var(--color-brand-cyan-500,#79d6e6) 78%,var(--color-brand-cyan-700,#176b7a));opacity:0;transform:translate(-50%,-50%);animation:film-ring 5s linear infinite;transition:opacity 320ms ease}.film-rail__item.is-active::before{opacity:1}@keyframes film-ring{to{transform:translate(-50%,-50%) rotate(1turn)}}.film-thumb{position:relative;z-index:1;display:block;width:100%;overflow:hidden;aspect-ratio:4 / 5;padding:0;border:0;border-radius:16px;background:var(--color-surface-soft,#f5fafb);cursor:pointer;opacity:0.58;transition:opacity 340ms ease,transform 340ms cubic-bezier(0.22,1,0.36,1),box-shadow 340ms ease}.film-thumb img{display:block;width:100%;height:100%;object-fit:cover}.film-thumb.is-active{opacity:1}.film-thumb:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}.no-js .film-stage__screen{height:auto}.no-js .film-slide{position:static;opacity:1;visibility:visible;margin-bottom:12px}.no-js .film-slide__wash,.no-js .film-arrow,.no-js .film-rail{display:none}.no-js .film-slide__still,.no-js .film-slide__video{position:static;width:100%;height:auto}.no-js .film-slide__video{display:none}.no-js .film-stage__caption{position:static;padding:0;background:none;color:inherit}.no-js .film-copy{display:block}.no-js .film-copy h4,.no-js .film-copy__text{color:inherit}.course-slides{margin-top:34px}.course-slides__viewport{overflow:hidden;border-radius:18px}.course-slides__track{display:flex;margin:0;padding:0;list-style:none;transition:transform 520ms cubic-bezier(0.22,1,0.36,1)}.course-slides__slide{position:relative;overflow:hidden;flex:0 0 100%;min-width:0;height:clamp(300px,44vw,560px);background:#101a1d}.course-slides__wash{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.25);filter:blur(90px) saturate(1.5) brightness(0.68);opacity:0.92}.course-slides__photo{position:absolute;inset:0;width:auto;max-width:100%;height:100%;margin:auto;object-fit:contain}.course-slides__caption{position:absolute;z-index:1;inset:auto 0 0 0;margin:0;padding:44px 20px 16px;background:linear-gradient(to top,rgba(12,18,20,0.88),rgba(12,18,20,0));color:#fff;font-size:0.92rem;font-weight:600}.course-slides__controls{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:12px}.slide-button{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--color-border);border-radius:50%;background:rgba(255,255,255,0.6);color:var(--color-ink-900);font-size:1rem;cursor:pointer;transition:border-color 260ms ease,background 260ms ease}.slide-button:hover{border-color:var(--color-brand-cyan-500);background:#fff}.slide-button:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.course-slides__dots{display:flex;gap:7px}.course-slides__dot{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:rgba(23,107,122,0.24);cursor:pointer;transition:background 260ms ease,transform 260ms ease}.course-slides__dot.is-active{background:var(--color-brand-cyan-500);transform:scale(1.3)}.page-partners{align-self:start;margin-top:30px;padding-top:20px;border-top:1px solid var(--color-border)}.page-partners__lead{margin:0 0 14px;color:var(--color-ink-700);font-size:0.72rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase}.page-partners__list{display:flex;flex-wrap:wrap;gap:14px 34px;margin:0;padding:0;list-style:none}.partner-mark{display:flex;align-items:center;gap:12px;min-width:0}.partner-mark img{display:block;width:auto;height:46px;flex:0 0 auto}.partner-mark span{color:var(--color-ink-900);font-size:0.92rem;font-weight:650;line-height:1.25}.section-facts{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 26px;margin:22px 0 0;padding:0;list-style:none}.page-hero__copy .section-facts{align-self:start;margin-top:30px;padding-top:20px;border-top:1px solid var(--color-border)}.section-facts li{color:var(--color-ink-700);font-size:0.95rem}.section-facts b{margin-right:7px;color:var(--color-ink-950);font-family:var(--serif);font-size:1.35rem;font-weight:600}@media (hover:hover){.page-partners__list img:hover{filter:none;opacity:1}.glass-panel:hover{transform:translateY(-4px);border-color:rgba(121,214,230,0.8);box-shadow:inset 0 1px 0 rgba(255,255,255,0.95),0 0 0 4px rgba(121,214,230,0.28),0 26px 46px -28px rgba(23,107,122,0.55)}.glass-panel:hover::after{transform:translateX(120%);opacity:1}.film-thumb:hover{opacity:1}.film-rail__item:hover{transform:translateY(-5px) scale(1.05);box-shadow:0 20px 34px -20px rgba(23,107,122,0.7)}.film-rail__item:hover::before{opacity:0.8}.film-arrow:hover{background:rgba(255,255,255,0.38);transform:translateY(-50%) scale(1.07)}}@media (max-width:980px){.film-stage__screen{width:100%;max-width:420px;height:auto;aspect-ratio:4 / 5;margin-inline:auto}.film-stage__caption{position:static;padding:18px 0 0;background:none;color:inherit;pointer-events:auto}.film-copy__count{color:var(--color-brand-cyan-700,#176b7a)}.film-copy h4{color:var(--color-ink-950)}.film-copy__text{max-width:none;color:var(--color-ink-700)}.film-arrow{width:40px;height:40px;border-color:rgba(255,255,255,0.6);background:rgba(20,28,30,0.42)}.film-rail{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;scroll-snap-type:x proximity;margin-top:18px}.film-rail__item{flex:0 0 auto;width:clamp(64px,17vw,88px);max-width:none}.film-thumb{scroll-snap-align:start}}@media (max-width:760px){.course-tracks{grid-template-columns:minmax(0,1fr)}.course-facts{justify-content:flex-start}}@media (max-width:560px){.film-stage__screen{border-radius:18px}.film-rail{gap:8px}}.subject-chart-wrap{max-width:46rem;margin-top:clamp(24px,3vw,36px);padding-top:clamp(20px,2.5vw,28px);border-top:1px solid rgba(215,229,232,0.17)}.subject-chart{margin:0}.subject-chart__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 16px;margin-bottom:14px}.subject-chart__title{color:#fff;font-family:var(--serif);font-size:clamp(1rem,1.3vw,1.15rem);font-weight:600;line-height:1.25}.subject-chart__scale{color:var(--color-brand-cyan-500);font-size:0.74rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase}.subject-chart__rows{display:grid;gap:1px;margin:0;padding:0;list-style:none}.subject-row{display:grid;grid-template-columns:minmax(0,13rem) minmax(0,1fr) auto;align-items:center;gap:16px;padding:4px 8px;border-radius:8px;transition:background 220ms ease}.subject-row:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.subject-row__name{color:#dfe8ea;font-size:0.86rem}.subject-row__plot{display:block;width:100%;height:12px;overflow:visible}.subject-row__rule{fill:rgba(215,229,232,0.22)}.subject-row__lead{fill:rgba(121,214,230,0.45)}.subject-row__mark{stroke:var(--color-brand-cyan-500);stroke-width:4;stroke-linecap:round;transition:stroke 220ms ease}.subject-row__value{min-width:2.2rem;color:#fff;font-family:var(--serif);font-size:0.98rem;font-weight:600;font-variant-numeric:tabular-nums;text-align:right}.subject-chart__axis{display:flex;justify-content:space-between;margin:6px 0 0;margin-inline-start:calc(13rem + 16px + 8px);margin-inline-end:calc(2.2rem + 16px + 8px);color:rgba(223,232,234,0.6);font-size:0.68rem;font-variant-numeric:tabular-nums}.subject-chart__note{margin:12px 0 0;color:#a9bcc1;font-size:0.75rem}@media (hover:hover){.subject-row:hover{background:rgba(215,229,232,0.07)}.subject-row:hover .subject-row__mark{stroke:#fff}}@media (max-width:760px){.subject-row{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px}.subject-row__name{grid-column:1;grid-row:1}.subject-row__value{grid-column:2;grid-row:1}.subject-row__plot{grid-column:1 / -1;grid-row:2}.subject-chart__axis{margin-inline:10px}}.activity-gallery{margin-top:34px}.activity-gallery__group + .activity-gallery__group{margin-top:28px}.activity-gallery__title{margin:0 0 12px;font-family:var(--serif);font-size:clamp(1.05rem,1.5vw,1.25rem);font-weight:600}.activity-gallery__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}.activity-shot{min-width:0}.activity-shot a{display:block;overflow:hidden;aspect-ratio:4 / 5;border:1px solid transparent;border-radius:16px;background:var(--color-surface-soft,#f5fafb);box-shadow:0 20px 38px -30px rgba(30,37,41,0.75);transition:transform 380ms cubic-bezier(0.22,1,0.36,1),box-shadow 380ms cubic-bezier(0.22,1,0.36,1),border-color 380ms ease}.activity-shot img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 520ms cubic-bezier(0.22,1,0.36,1),filter 380ms ease}.activity-shot a:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}@media (hover:hover){.activity-shot a:hover{transform:translateY(-5px);border-color:var(--color-brand-cyan-500);box-shadow:0 0 0 4px rgba(121,214,230,0.45),0 0 34px 6px rgba(121,214,230,0.32),0 26px 46px -24px rgba(23,107,122,0.6)}.activity-shot a:hover img{transform:scale(1.06);filter:brightness(1.1) saturate(1.06)}}@media (max-width:860px){.activity-gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}@media (max-width:420px){.activity-gallery__grid{gap:10px}}.year-rotator__authority{margin:-4px 0 10px;color:var(--color-ink-700);font-size:0.72rem;font-weight:600;letter-spacing:0.06em;text-transform:uppercase}.leadership__grid{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:center}.leadership__portrait{margin:0;overflow:hidden;aspect-ratio:4 / 5;border:1px solid transparent;border-radius:20px;background:var(--color-surface-soft);box-shadow:0 24px 46px -34px rgba(23,107,122,0.7);transition:transform 380ms cubic-bezier(0.22,1,0.36,1),box-shadow 380ms cubic-bezier(0.22,1,0.36,1),border-color 380ms ease}.leadership__portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform 520ms cubic-bezier(0.22,1,0.36,1)}.leadership__closing{margin:18px 0 0;color:var(--color-ink-900);font-family:var(--serif);font-size:clamp(1rem,1.4vw,1.12rem);font-style:italic;line-height:1.55}.leadership__copy h2{margin:0 0 16px}.leadership__quote{margin:0 0 20px;padding-left:18px;border-left:3px solid var(--color-brand-cyan-500);color:var(--color-ink-950);font-family:var(--serif);font-size:clamp(1.15rem,2vw,1.5rem);font-style:italic;line-height:1.35}.leadership__text{margin:0 0 14px;color:var(--color-ink-700);line-height:1.65}.leadership__name{margin:22px 0 2px;color:var(--color-ink-950);font-family:"Playfair Display",var(--serif);font-size:clamp(1.2rem,1.9vw,1.5rem);font-weight:600;line-height:1.15}.leadership__role{margin:0;color:var(--color-ink-700);font-size:0.88rem;font-weight:600;letter-spacing:0.02em}.leadership__pillars{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}.leadership__pillars li{padding:7px 14px;border-radius:999px;background:rgba(23,107,122,0.08);color:var(--color-ink-900);font-size:0.85rem;font-weight:600}.leadership--compact .leadership__grid{grid-template-columns:minmax(0,280px) minmax(0,1fr)}.leadership--compact .leadership__text:last-of-type{display:none}@media (hover:hover){.leadership__portrait:hover{transform:translateY(-4px);border-color:var(--color-brand-cyan-500);box-shadow:0 0 0 4px rgba(121,214,230,0.4),0 0 30px 5px rgba(121,214,230,0.26),0 26px 46px -24px rgba(23,107,122,0.6)}.leadership__portrait:hover img{transform:scale(1.06)}}@media (max-width:860px){.leadership__grid,.leadership--compact .leadership__grid{grid-template-columns:minmax(0,1fr);gap:24px}.leadership__portrait{max-width:420px;margin-inline:auto}}.school-story__top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px clamp(32px,5vw,88px);align-items:center}.school-story__head{display:flex;flex-direction:column;gap:10px}.school-story__intro{margin:0;color:var(--color-ink-700);font-size:clamp(1rem,1.5vw,1.12rem);line-height:1.6}.timeline{--year-size:1.5rem;--node:14px;position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:0;margin:38px 0 0;padding:0;list-style:none}.timeline::before{content:"";position:absolute;top:calc(var(--year-size) + 16px + var(--node) / 2 - 1px);left:0;right:0;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--color-brand-cyan-700),var(--color-brand-cyan-500) 70%,rgba(121,214,230,0.25));transform-origin:left center;transition:transform 1500ms cubic-bezier(0.45,0,0.2,1)}.timeline__step{position:relative;padding:0 24px 4px 0;--step-delay:150ms}.timeline__step:nth-child(2){--step-delay:520ms}.timeline__step:nth-child(3){--step-delay:890ms}.timeline__step:nth-child(4){--step-delay:1260ms}.timeline__step:nth-child(n + 5){--step-delay:1500ms}.timeline__year{margin:0 0 16px;color:var(--color-brand-cyan-700,#176b7a);font-family:var(--serif);font-size:var(--year-size);font-weight:600;line-height:1;font-variant-numeric:tabular-nums;transition:opacity 600ms var(--ease-enter) var(--step-delay),transform 600ms var(--ease-enter) var(--step-delay)}.timeline__node{position:relative;display:block;width:var(--node);height:var(--node);margin:0 0 16px;border-radius:50%;background:var(--color-brand-cyan-700);box-shadow:0 0 0 5px #fff,0 0 0 7px rgba(121,214,230,0.55);transition:transform 520ms cubic-bezier(0.3,1.7,0.5,1) var(--step-delay)}.timeline__text{margin:0;color:var(--color-ink-700);font-size:0.92rem;line-height:1.6;transition:opacity 700ms var(--ease-enter) calc(var(--step-delay) + 120ms),transform 700ms var(--ease-enter) calc(var(--step-delay) + 120ms)}.timeline__step:last-child .timeline__node::after{content:"";position:absolute;inset:-7px;border-radius:50%;border:2px solid var(--color-brand-cyan-500);animation:timeline-pulse 2.6s ease-out 2s infinite;opacity:0}@keyframes timeline-pulse{0%{transform:scale(0.6);opacity:0.8}100%{transform:scale(1.8);opacity:0}}.js .timeline:not(.is-revealed)::before{transform:scaleX(0)}.js .timeline:not(.is-revealed) .timeline__node{transform:scale(0)}.js .timeline:not(.is-revealed) .timeline__year{opacity:0;transform:translateY(-12px)}.js .timeline:not(.is-revealed) .timeline__text{opacity:0;transform:translateY(12px)}.js .timeline[data-reveal].will-reveal{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.timeline__step:last-child .timeline__node::after{animation:none}}.recognition{margin:0;padding:0 0 0 22px;border-left:3px solid var(--color-brand-cyan-500)}.recognition__quote{margin:0;color:var(--color-ink-950);font-family:"Playfair Display",var(--serif);font-size:clamp(1.6rem,3.6vw,2.5rem);font-style:italic;font-weight:500;line-height:1.15}.recognition__quote::before{content:"\201C"}.recognition__quote::after{content:"\201D"}.recognition__source{margin-top:10px;color:var(--color-ink-700);font-size:0.8rem;font-weight:600;letter-spacing:0.05em}.school-story__closing{margin:22px 0 0;color:var(--color-ink-700);line-height:1.7}.school-story__aims{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);gap:24px clamp(32px,5vw,80px);align-items:stretch;margin-top:48px}.aim{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center;margin:0;padding:clamp(56px,7vw,96px) clamp(32px,5vw,72px);border-radius:24px;background:radial-gradient(120% 90% at 100% 0%,rgba(121,214,230,0.28),transparent 55%),linear-gradient(150deg,var(--color-brand-cyan-700),#0f4d58);color:#fff;text-align:center;box-shadow:0 30px 60px -42px rgba(15,77,88,0.8)}.aim::before,.aim::after{position:absolute;color:rgba(255,255,255,0.1);font-family:"Playfair Display",var(--serif);font-size:clamp(8rem,13vw,14rem);line-height:1;pointer-events:none}.aim::before{content:"\201C";top:-0.12em;left:0.12em}.aim::after{content:"\201D";right:0.12em;bottom:-0.52em}.aim__label{position:relative;margin:0 0 16px;color:var(--color-brand-cyan-100);font-size:0.76rem;font-weight:700;letter-spacing:0.14em;text-transform:uppercase}.aim__text{position:relative;max-width:24ch;margin:0;color:#fff;font-family:var(--serif);font-size:clamp(1.6rem,2.9vw,2.35rem);font-weight:600;line-height:1.28}@media (max-width:900px){.aim{padding:72px 28px}.aim::before,.aim::after{font-size:7rem}}.objectives{margin:0}.objectives__title{margin:0 0 8px;font-family:var(--serif);font-size:clamp(1.35rem,2.2vw,1.75rem);font-weight:600}.objectives__lead{margin:0 0 14px;color:var(--color-ink-700)}.objectives__list{margin:0;padding:0;list-style:none;counter-reset:objective}.objectives__list li{counter-increment:objective;position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:baseline;gap:16px;padding:14px 10px 14px 0;border-bottom:1px solid var(--color-border);color:var(--color-ink-900);font-size:0.98rem;line-height:1.55;transition:background 220ms var(--ease-state),padding 220ms var(--ease-state)}.objectives__list li:last-child{border-bottom:0}.objectives__list li::before{content:counter(objective);display:grid;place-items:center;width:30px;height:30px;align-self:start;border-radius:50%;background:var(--color-brand-cyan-100);color:var(--color-brand-cyan-700,#176b7a);font-size:0.85rem;font-weight:700;transition:background 220ms var(--ease-state),color 220ms var(--ease-state)}@media (hover:hover){.objectives__list li:hover{background:var(--color-surface-soft);padding-left:10px}.objectives__list li:hover::before{background:var(--color-brand-cyan-700);color:#fff}}.school-story--brief .text-link{display:inline-block;margin-top:18px}@media (max-width:900px){.school-story__top,.school-story__aims{grid-template-columns:minmax(0,1fr)}}@media (max-width:560px){.timeline{grid-template-columns:minmax(0,1fr);gap:26px}.timeline::before{top:6px;bottom:6px;left:calc(var(--node) / 2 - 1px);right:auto;width:2px;height:auto;transform-origin:top center}.js .timeline:not(.is-revealed)::before{transform:scaleY(0)}.timeline__step{padding:0 0 0 34px}.timeline__node{position:absolute;top:4px;left:0;margin:0}.timeline__year{margin-bottom:8px}}.level-life__head{display:flex;flex-direction:column;gap:10px;max-width:68ch;margin-bottom:24px}.level-life__lead{margin:0;color:var(--color-ink-700);font-size:clamp(1rem,1.5vw,1.1rem);line-height:1.6}.level-life__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}.level-life__grid .activity-shot a{aspect-ratio:4 / 3}.level-life__quote{margin-top:32px}@media (max-width:860px){.level-life__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}.light-card{position:relative;isolation:isolate;overflow:hidden}.light-card::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(220px circle at var(--light-x,50%) var(--light-y,0%),rgba(121,214,230,0.2),transparent 70%);opacity:0;transition:opacity 300ms var(--ease-state);pointer-events:none}@media (hover:hover) and (prefers-reduced-motion:no-preference){.light-card:hover::before{opacity:1}}.evidence-board{display:grid;grid-template-columns:minmax(0,0.75fr) minmax(0,1.25fr);gap:clamp(16px,3vw,36px);align-items:stretch}.evidence-board--even{grid-template-columns:repeat(2,minmax(0,1fr))}.evidence-lead{display:flex;flex-direction:column;justify-content:center;padding:clamp(28px,4vw,48px);border:1px solid rgba(215,229,232,0.16);border-radius:24px;background:radial-gradient(120% 100% at 0% 0%,rgba(121,214,230,0.14),transparent 60%),linear-gradient(165deg,rgba(255,255,255,0.07),rgba(255,255,255,0.015));transition:border-color 300ms var(--ease-state),box-shadow 300ms var(--ease-state)}.evidence-lead__figure{margin:0 0 14px;color:var(--color-brand-cyan-500);font:600 clamp(4rem,9vw,7rem)/0.95 var(--serif);font-variant-numeric:tabular-nums;text-shadow:0 0 40px rgba(121,214,230,0.35)}.evidence-lead__statement{margin:0;color:#fff;font-family:var(--serif);font-size:clamp(1.2rem,2vw,1.55rem);line-height:1.3}.evidence-lead__total{margin:18px 0 0;padding-top:16px;border-top:1px solid rgba(215,229,232,0.16);color:#c4d0d4;font-size:0.95rem}.evidence-lead__total strong{color:#fff;font-size:1.15rem}.year-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.6vw,20px);margin:0;padding:0;list-style:none}.year-column{display:grid;grid-template-rows:auto auto auto auto;justify-items:center;align-content:end;gap:6px;padding:30px 12px 18px;border:1px solid rgba(215,229,232,0.14);border-radius:22px;background:linear-gradient(170deg,rgba(255,255,255,0.06),rgba(255,255,255,0.012));text-align:center;--column-delay:0ms;transition:border-color 300ms var(--ease-state),transform 300ms var(--ease-state),box-shadow 300ms var(--ease-state)}.year-column:nth-child(2){--column-delay:140ms}.year-column:nth-child(3){--column-delay:280ms}.year-column:nth-child(4){--column-delay:420ms}.year-column__badge{position:absolute;top:10px;left:50%;transform:translateX(-50%);padding:2px 10px;border-radius:999px;background:rgba(121,214,230,0.18);color:var(--color-brand-cyan-500);font-size:0.66rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;white-space:nowrap}.year-column__value{margin-top:8px;color:var(--color-brand-cyan-500);font:600 clamp(1.7rem,2.8vw,2.5rem)/1 var(--serif);font-variant-numeric:tabular-nums;transition:text-shadow 300ms var(--ease-state)}.year-column__unit{color:#aebfc3;font-size:0.8rem}.year-column__track{width:min(58px,64%);height:var(--column-height,200px);margin-top:8px;overflow:hidden;border-radius:16px;background:rgba(255,255,255,0.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,0.06),inset 0 10px 18px -12px rgba(0,0,0,0.6)}.year-column__svg{display:block;width:100%;height:100%}.year-column__fill{fill:#3f9fb0}.year-column__surface{fill:#bff0f7}.year-column.is-peak .year-column__fill{fill:var(--color-brand-cyan-500)}.year-column.is-peak{border-color:rgba(121,214,230,0.36)}.year-column__grow{transform-box:fill-box;transform-origin:50% 100%;transition:transform 1100ms cubic-bezier(0.2,0.9,0.25,1) var(--column-delay)}.year-column__year{margin-top:8px;color:#fff;font-weight:700;font-size:0.92rem;font-variant-numeric:tabular-nums}.js .year-columns:not(.is-revealed) .year-column__grow{transform:scaleY(0)}.js .year-columns[data-reveal].will-reveal{opacity:1;transform:none}@media (hover:hover) and (prefers-reduced-motion:no-preference){.year-column:hover,.evidence-lead:hover{border-color:rgba(121,214,230,0.42);box-shadow:0 20px 38px -24px rgba(121,214,230,0.6)}.year-column:hover{transform:translateY(-3px)}.year-column:hover .year-column__value{text-shadow:0 0 24px rgba(121,214,230,0.5)}}.year-columns__note{margin:14px 0 0;color:#aebfc3;font-size:0.85rem}.evidence-board>.year-columns__note{grid-column:1 / -1}.evidence-panel{display:flex;flex-direction:column;gap:18px;padding:clamp(20px,3vw,32px);border:1px solid rgba(215,229,232,0.12);border-radius:24px;background:rgba(255,255,255,0.025)}.evidence-panel .year-columns{--column-height:180px}.evidence-panel__head,.subject-bars__head{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:0}.evidence-panel__title,.subject-bars__title{color:#fff;font-family:var(--serif);font-size:clamp(1.15rem,1.8vw,1.4rem);font-weight:600}.evidence-panel__scale,.subject-bars__scale{color:var(--color-brand-cyan-500);font-size:0.72rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase}.subject-bars{display:flex;flex-direction:column;gap:14px;height:100%;margin:0}.subject-bars__rows{flex:1;display:grid;align-content:space-between;gap:4px;margin:0;padding:0;list-style:none}.subject-bar,.subject-bars__axis{display:grid;grid-template-columns:minmax(7rem,11rem) minmax(0,1fr) 2.6rem;align-items:center;gap:14px}.subject-bar{padding:10px 14px;border:1px solid transparent;border-radius:14px;outline:none;--bar-delay:0ms;transition:border-color 260ms var(--ease-state),background 260ms var(--ease-state)}.subject-bar:nth-child(2){--bar-delay:90ms}.subject-bar:nth-child(3){--bar-delay:180ms}.subject-bar:nth-child(4){--bar-delay:270ms}.subject-bar:nth-child(5){--bar-delay:360ms}.subject-bar:nth-child(n + 6){--bar-delay:450ms}.subject-bar__name{color:#e6eff0;font-size:0.95rem}.subject-bar__tag{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:rgba(121,214,230,0.18);color:var(--color-brand-cyan-500);font-size:0.64rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;vertical-align:2px}.subject-bar__track{height:14px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,0.07);box-shadow:inset 0 0 0 1px rgba(255,255,255,0.05)}.subject-bar__svg{display:block;width:100%;height:100%}.subject-bar__fill{fill:#3f9fb0}.subject-bar.is-top .subject-bar__fill{fill:var(--color-brand-cyan-500)}.subject-bar__grow{transform-box:fill-box;transform-origin:0 50%;transition:transform 1000ms cubic-bezier(0.2,0.9,0.25,1) var(--bar-delay)}.js .subject-bars:not(.is-revealed) .subject-bar__grow{transform:scaleX(0)}.js .subject-bars[data-reveal].will-reveal{opacity:1;transform:none}.subject-bar__value{color:#fff;font:600 1.25rem/1 var(--serif);text-align:right;font-variant-numeric:tabular-nums}.subject-bars__axis{margin:0;padding:0 14px;color:#8fa3a7;font-size:0.74rem}.subject-bars__ticks{display:flex;justify-content:space-between}.subject-bars__note{margin:0;color:#aebfc3;font-size:0.85rem}.subject-bar:hover,.subject-bar:focus-visible{border-color:rgba(121,214,230,0.35);background:rgba(255,255,255,0.04)}.year-ledger{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;padding:0;list-style:none;border-top:2px solid var(--color-brand-cyan-700)}.year-ledger__year{display:flex;flex-direction:column;gap:10px;padding:24px clamp(16px,2vw,28px) 26px;border-right:1px solid var(--color-border);--ledger-delay:0ms;transition:background 260ms var(--ease-state)}.year-ledger__year:last-child{border-right:0}.year-ledger__year:nth-child(2){--ledger-delay:120ms}.year-ledger__year:nth-child(3){--ledger-delay:240ms}.year-ledger__year:nth-child(4){--ledger-delay:360ms}.year-ledger__year.light-card::before{background:radial-gradient(220px circle at var(--light-x,50%) var(--light-y,0%),rgba(121,214,230,0.22),transparent 70%)}.year-ledger__label{margin:0;color:var(--color-brand-cyan-700);font-size:0.8rem;font-weight:700;letter-spacing:0.08em;font-variant-numeric:tabular-nums}.year-ledger__figure{display:flex;align-items:baseline;gap:8px;margin:0}.year-ledger__number{color:var(--color-ink-950);font:600 clamp(2.4rem,4vw,3.2rem)/1 var(--serif);font-variant-numeric:tabular-nums}.year-ledger__figure--small .year-ledger__number{font-size:clamp(1.5rem,2.4vw,1.9rem)}.year-ledger__unit{color:var(--color-ink-700);font-size:0.95rem}.year-ledger__meter{display:block;height:8px;overflow:hidden;border-radius:999px;background:var(--color-brand-cyan-100)}.year-ledger__meter svg{display:block;width:100%;height:100%}.year-ledger__meter rect{fill:var(--color-brand-cyan-700)}.year-ledger__grow{transform-box:fill-box;transform-origin:0 50%;transition:transform 1000ms cubic-bezier(0.2,0.9,0.25,1) var(--ledger-delay)}.js .year-ledger:not(.is-revealed) .year-ledger__grow{transform:scaleX(0)}.js .year-ledger[data-reveal].will-reveal{opacity:1;transform:none}.year-ledger__pass{display:flex;align-items:center;gap:8px;margin:4px 0 0;color:var(--color-ink-700);font-size:0.9rem}.year-ledger__pass .icon{color:#2f9e64}.year-ledger__pass strong{color:var(--color-ink-950)}@media (hover:hover){.year-ledger__year:hover{background:var(--color-surface-soft)}}@media (max-width:1000px){.evidence-board,.evidence-board--even{grid-template-columns:minmax(0,1fr)}.year-ledger{grid-template-columns:repeat(2,minmax(0,1fr))}.year-ledger__year:nth-child(2){border-right:0}.year-ledger__year:nth-child(-n + 2){border-bottom:1px solid var(--color-border)}}@media (max-width:560px){.year-columns{gap:8px}.year-column{padding:26px 6px 14px}.year-columns,.evidence-panel .year-columns{--column-height:130px}.year-column__value{font-size:1.5rem}.year-column__year{font-size:0.72rem}.year-column__badge{font-size:0.56rem;padding:1px 6px}.subject-bar,.subject-bars__axis{grid-template-columns:minmax(0,1fr) 2.6rem}.subject-bar__track{grid-column:1 / -1;grid-row:2}.subject-bars__axis>span:first-child,.subject-bars__axis>span:last-child{display:none}.subject-bars__ticks{grid-column:1 / -1}.year-ledger{grid-template-columns:minmax(0,1fr)}.year-ledger__year{border-right:0;border-bottom:1px solid var(--color-border)}}@media (prefers-reduced-motion:reduce){.year-column__grow,.subject-bar__grow,.year-ledger__grow{transition:none}}section[aria-labelledby="graduates-year-title"]{position:relative;overflow:hidden;isolation:isolate}section[aria-labelledby="graduates-year-title"]::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(38% 55% at 50% 58%,rgba(121,214,230,0.32),transparent 70%),radial-gradient(30% 45% at 12% 30%,rgba(23,107,122,0.12),transparent 70%),radial-gradient(30% 45% at 88% 70%,rgba(23,107,122,0.12),transparent 70%);animation:graduates-breathe 12s ease-in-out infinite alternate}@keyframes graduates-breathe{from{opacity:0.75;transform:scale(1)}to{opacity:1;transform:scale(1.04)}}.graduate-rotator__heading{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:36px}.graduate-rotator__heading .eyebrow{margin:0}.graduate-rotator__lead{margin:0;color:var(--color-ink-700);font-size:1.05rem}.graduate-rotator__stage{isolation:isolate}.graduate-rotator__stage::before,.graduate-rotator__stage::after{content:"";position:absolute;inset:0 0 auto 0;z-index:-1;aspect-ratio:1200 / 1622;border-radius:14px;background:linear-gradient(160deg,#fff,var(--color-brand-cyan-100));box-shadow:0 24px 40px -30px rgba(15,77,88,0.6)}.graduate-rotator__stage::before{transform:rotate(-4deg) translate(-14px,10px) scale(0.97);opacity:0.7}.graduate-rotator__stage::after{transform:rotate(3deg) translate(14px,6px) scale(0.98);opacity:0.85}.graduate-rotator .medal-entry__media{border-radius:14px;box-shadow:0 40px 70px -40px rgba(15,77,88,0.75)}.js .graduate-rotator [data-rotator-slide]{transition:transform 700ms var(--ease-enter),opacity 700ms var(--ease-enter)}.js .graduate-rotator [data-rotator-slide].is-from-right{transform:translate3d(9%,0,0) scale(0.94);opacity:0}.js .graduate-rotator [data-rotator-slide].is-from-left{transform:translate3d(-9%,0,0) scale(0.94);opacity:0}.js .graduate-rotator [data-rotator-slide].is-exit-left{transform:translate3d(-9%,0,0) scale(0.94);opacity:0}.js .graduate-rotator [data-rotator-slide].is-exit-right{transform:translate3d(9%,0,0) scale(0.94);opacity:0}.js .graduate-rotator [data-rotator-slide].is-active{opacity:1}.graduate-rotator__progress{display:flex;align-items:center;gap:14px;width:min(100%,30rem);margin:18px auto 0}.graduate-rotator__count{flex:none;color:var(--color-ink-700);font-size:0.85rem;font-variant-numeric:tabular-nums}.graduate-rotator__count b{color:var(--color-brand-cyan-700);font-size:1rem}.graduate-rotator__line{position:relative;flex:1;height:3px;overflow:hidden;border-radius:3px;background:rgba(23,107,122,0.14)}.graduate-rotator__line>span{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg,var(--color-brand-cyan-700),var(--color-brand-cyan-500));transform:scaleX(0);transform-origin:left center}.graduate-rotator__line>span.is-running{animation:rotator-progress var(--rotator-delay,3000ms) linear forwards}@keyframes rotator-progress{to{transform:scaleX(1)}}.graduate-rotator__board .graduate-chart{gap:14px;border-color:rgba(255,255,255,0.9);background:rgba(255,255,255,0.62);box-shadow:inset 0 1px 0 #fff,0 30px 60px -44px rgba(15,77,88,0.6);-webkit-backdrop-filter:blur(18px) saturate(160%);backdrop-filter:blur(18px) saturate(160%)}.graduate-rotator__board .graduate-chart__bars{align-content:start;gap:6px}.graduate-rotator__board .graduate-chart__bar{padding:8px 10px;border-radius:12px;transition:background 300ms var(--ease-state),opacity 300ms var(--ease-state),transform 200ms var(--ease-state)}.graduate-chart__bar-svg>rect:not(.graduate-chart__bar-track){transform-box:view-box;transform-origin:0 50%;transition:transform 1100ms cubic-bezier(0.2,0.9,0.25,1) 200ms}.js .graduate-rotator__chart:not(.is-revealed) .graduate-chart__bar-svg>rect:not(.graduate-chart__bar-track){transform:scaleX(0)}.graduate-chart__donut{transition:transform 900ms var(--ease-enter),opacity 900ms var(--ease-enter)}.js .graduate-rotator__chart:not(.is-revealed) .graduate-chart__donut{transform:translateY(12px) rotateX(35deg) scale(0.9);opacity:0}.js .graduate-rotator__chart[data-reveal].will-reveal{opacity:1;transform:none}.graduate-chart__face{transition:filter 300ms var(--ease-state),opacity 300ms var(--ease-state)}.graduate-chart.has-current .graduate-chart__face:not(.is-current){opacity:0.35}.graduate-chart.has-current .graduate-chart__bar:not(.is-current){opacity:0.55}.graduate-chart__bar.is-current{background:rgba(23,107,122,0.1);transform:translateX(4px)}.graduate-chart__bar.is-current .graduate-chart__bar-name{color:var(--color-brand-cyan-700)}.graduate-chart__face.is-current{filter:brightness(1.12) drop-shadow(0 4px 8px rgba(15,77,88,0.35))}@media (prefers-reduced-motion:reduce){section[aria-labelledby="graduates-year-title"]::before{animation:none}.graduate-rotator__line>span.is-running{animation:none}}@media (max-width:979px){.graduate-rotator__stage::before,.graduate-rotator__stage::after{display:none}}@media (min-width:980px){.graduate-rotator__board{align-items:center}.graduate-rotator__board .graduate-chart{height:auto}}.closing-banner{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;min-height:clamp(360px,38vw,480px);border-radius:28px;background:var(--color-ink-950);box-shadow:0 40px 80px -50px rgba(15,77,88,0.8)}.closing-banner__photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:60% 50%;transform:scale(1.02);transition:transform 1600ms var(--ease-enter)}.closing-banner::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(20,26,30,0.92) 0%,rgba(20,26,30,0.7) 38%,rgba(20,26,30,0.1) 72%)}.closing-banner__copy{width:min(100%,680px);padding:clamp(28px,5vw,64px);color:#fff}.closing-banner .button{gap:8px}.closing-banner__copy .eyebrow{color:var(--color-brand-cyan-500)}.closing-banner__copy h2{margin-bottom:12px;color:#fff;font-size:clamp(2rem,4vw,3.2rem)}.closing-banner__copy p:not(.eyebrow){margin:0 0 24px;color:rgba(255,255,255,0.86);font-size:1.05rem}.button--glass{border:1px solid rgba(255,255,255,0.45);background:rgba(255,255,255,0.14);color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.button--glass:hover{background:rgba(255,255,255,0.24);color:#fff}@media (hover:hover) and (prefers-reduced-motion:no-preference){.closing-banner:hover .closing-banner__photo{transform:scale(1.07)}}@media (max-width:700px){.closing-banner{align-items:flex-end;min-height:460px}.closing-banner::before{background:linear-gradient(0deg,rgba(20,26,30,0.94) 0%,rgba(20,26,30,0.6) 55%,rgba(20,26,30,0.05) 100%)}}.asr-intro{padding:clamp(40px,4.5vw,64px) 0;background:var(--color-ink-950);color:#fff}.asr-intro__grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,0.9fr);gap:clamp(32px,5vw,88px);align-items:center}.asr-intro .eyebrow{color:var(--color-brand-cyan-500)}.asr-intro h2{margin-bottom:10px;color:#fff}.asr-intro__tagline{margin:0 0 22px;color:var(--color-brand-cyan-500);font:italic 600 clamp(1.4rem,2.4vw,2rem)/1.2 var(--serif);letter-spacing:-0.01em}.asr-intro__lead{margin:0 0 18px;color:#dbe5e8;font-size:clamp(1.02rem,1.3vw,1.15rem)}.asr-intro__note{display:inline-flex;align-items:center;gap:10px;margin:0;padding:8px 14px 8px 12px;border:1px solid rgba(121,214,230,0.35);border-radius:999px;color:#fff;font-size:0.92rem;font-weight:600}.asr-intro__note::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--color-brand-cyan-500);box-shadow:0 0 0 4px rgba(121,214,230,0.18)}.asr-pillars{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 28px;padding:0;list-style:none}.asr-pillar{display:flex;flex-direction:column;gap:4px;padding:18px 20px;border-top:1px solid rgba(255,255,255,0.12);border-radius:14px}.asr-pillar:nth-child(odd){border-right:1px solid rgba(255,255,255,0.08);border-radius:0}.asr-pillar:nth-child(even){border-radius:0}.asr-pillar__word{color:#fff;font:600 clamp(1.5rem,2.4vw,2rem)/1.1 var(--serif);letter-spacing:-0.02em}.asr-pillar__detail{color:#aebfc4;font-size:0.9rem}.asr-fields__label{margin:0 0 10px;color:#8fa3a7;font-size:0.74rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase}.asr-fields{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.asr-fields li{padding:6px 14px;border:1px solid rgba(255,255,255,0.16);border-radius:999px;color:#e7eff1;font-size:0.88rem;font-weight:600;transition:border-color 200ms var(--ease-state),background-color 200ms var(--ease-state)}.asr-fields li:hover{border-color:var(--color-brand-cyan-500);background:rgba(121,214,230,0.1)}.asr-levels{margin:0;padding:0;list-style:none}.asr-level{display:grid;grid-template-columns:8.5rem minmax(0,1.25fr) minmax(15rem,0.75fr);gap:10px clamp(24px,3.5vw,56px);align-items:center}.asr-level{padding:24px 16px;border-top:1px solid var(--color-border);transition:background-color 240ms var(--ease-state)}.asr-level:hover{background:var(--color-surface-soft)}.asr-level.light-card::before{background:radial-gradient(260px circle at var(--light-x,50%) var(--light-y,0%),rgba(121,214,230,0.18),transparent 70%)}.asr-level__ages{margin:0;color:var(--color-ink-700);font-size:0.82rem;font-weight:600}.asr-level__ages span{display:block;color:var(--color-brand-cyan-700);font:600 clamp(1.9rem,3vw,2.5rem)/1 var(--serif);letter-spacing:-0.02em;font-variant-numeric:tabular-nums}.asr-level__body h3{margin:0 0 6px;font-size:clamp(1.25rem,1.8vw,1.5rem)}.asr-level__body p{margin:0;color:var(--color-ink-700)}.asr-level__side{display:flex;flex-direction:column;gap:12px}.asr-level__track{display:block;height:12px}.asr-level__track svg{display:block;width:100%;height:100%;overflow:visible}.asr-level__rail{fill:var(--color-border)}.asr-level__bar{fill:var(--color-brand-cyan-700);transform-box:fill-box;transform-origin:0 50%;transition:transform 900ms cubic-bezier(0.2,0.9,0.25,1) 120ms}.asr-level__bar.is-open{fill:#3f9fb0}.js .asr-level:not(.is-revealed) .asr-level__bar{transform:scaleX(0)}.asr-level:hover .asr-level__bar{fill:var(--color-focus)}.asr-tags,.asr-principles{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.asr-tags li{padding:3px 10px;border-radius:999px;background:var(--color-brand-cyan-100);color:var(--color-brand-cyan-700);font-size:0.78rem;font-weight:700}.asr-level__scale{position:relative;display:grid;grid-template-columns:repeat(21,minmax(0,1fr));margin-top:-6px;padding-top:9px;background:linear-gradient(90deg,var(--color-border) 1px,transparent 1px) 0 0 / calc(100% / 21) 5px repeat-x;color:var(--color-brand-cyan-700);font:700 0.72rem/1 ui-monospace,"SFMono-Regular",Menlo,monospace;font-variant-numeric:tabular-nums}.asr-level__scale>span{transform:translateX(-50%);white-space:nowrap}.asr-level__scale>span:first-child{transform:none}.asr-level__scale>.asr-level__scale-end{position:absolute;right:0;transform:none}.asr-trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px clamp(24px,3.5vw,56px);margin-top:clamp(40px,4.5vw,64px)}.asr-trio__item{padding-top:18px;border-top:2px solid var(--color-brand-cyan-700)}.asr-trio__item h3{margin:0 0 8px;font-size:1.3rem}.asr-trio__item p{margin:0;color:var(--color-ink-700)}.asr-platform-list{margin:0;padding:0;list-style:none}.asr-platform{display:grid;grid-template-columns:minmax(0,0.8fr) minmax(0,1.1fr) minmax(0,0.9fr);gap:12px clamp(24px,3.5vw,56px);align-items:center;padding:26px 16px;border-top:1px solid var(--color-border);transition:background-color 240ms var(--ease-state)}.asr-platform:hover{background:#fff}.asr-platform__area{margin:0 0 4px;color:var(--color-brand-cyan-700);font-size:0.74rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase}.asr-platform__name h3{margin:0;font-size:clamp(1.5rem,2.4vw,2rem)}.asr-platform__text{margin:0;color:var(--color-ink-700)}.asr-platform__points{display:grid;gap:6px;margin:0;padding:0;list-style:none}.asr-platform__points li{position:relative;padding-left:20px;font-size:0.95rem;font-weight:600}.asr-platform__points li::before{content:"";position:absolute;top:0.62em;left:0;width:10px;height:2px;background:var(--color-brand-cyan-700)}.asr-flow{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px;margin:0 0 28px;padding:0;list-style:none}.asr-flow::before,.asr-flow::after{content:"";position:absolute;top:7px;left:8px;right:8px;height:2px;background:var(--color-border)}.asr-flow::after{background:var(--color-brand-cyan-700);transform-origin:0 50%;transition:transform 1400ms var(--ease-enter) 150ms}.js .asr-flow:not(.is-revealed)::after{transform:scaleX(0)}.asr-flow__step{position:relative;z-index:1;display:flex;flex-direction:column;gap:4px;padding-top:30px}.asr-flow__dot{position:absolute;top:0;left:0;width:16px;height:16px;border:2px solid var(--color-brand-cyan-700);border-radius:50%;background:#fff;transition:background-color 300ms var(--ease-state),transform 300ms var(--ease-state)}.asr-flow__step:hover .asr-flow__dot{background:var(--color-brand-cyan-700);transform:scale(1.2)}.asr-flow__step strong{font:600 clamp(1.25rem,1.9vw,1.6rem)/1.15 var(--serif);letter-spacing:-0.02em}.asr-flow__step span:last-child{color:var(--color-ink-700);font-size:0.92rem}.asr-principles li{padding:6px 14px;border:1px solid var(--color-border);border-radius:999px;font-size:0.88rem;font-weight:600}.asr-system__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px clamp(32px,5vw,88px);align-items:start}.asr-system .section-heading:not(.section-heading--row):not(.section-heading--sticky){display:block;margin-bottom:28px}.asr-system .section-heading:not(.section-heading--row):not(.section-heading--sticky)>p:not(.eyebrow){margin:12px 0 0}.asr-system .section-heading h2{font-size:clamp(1.7rem,2.6vw,2.4rem)}.asr-steps{counter-reset:asr-step;position:relative;margin:0;padding:0;list-style:none}.asr-steps::before{content:"";position:absolute;top:6px;bottom:6px;left:15px;width:2px;background:var(--color-border)}.asr-step{counter-increment:asr-step;position:relative;padding:0 0 24px 52px}.asr-step::before{content:counter(asr-step);position:absolute;top:0;left:0;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--color-brand-cyan-700);color:#fff;font-size:0.85rem;font-weight:700}.asr-step h3,.asr-offer__item h3,.asr-audience h3{margin:0 0 4px;font-family:var(--sans);font-size:1.02rem;font-weight:700;letter-spacing:0}.asr-step p,.asr-offer__item p,.asr-audience p{margin:0;color:var(--color-ink-700);font-size:0.95rem}.asr-offer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px;margin:0;padding:0;list-style:none}.asr-offer__item{padding-top:14px;border-top:1px solid var(--color-border)}.asr-audiences{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 28px;margin-top:32px}.asr-audience{padding:20px 22px;border-radius:16px;background:var(--color-ink-950)}.asr-audience h3{color:var(--color-brand-cyan-500)}.asr-audience p{color:#c4d0d4}.asr-skills{padding:clamp(40px,4.5vw,64px) 0;background:var(--color-ink-950);color:#fff}.asr-skills__grid{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);gap:32px clamp(32px,5vw,88px);align-items:center}.asr-skills .eyebrow{color:var(--color-brand-cyan-500)}.asr-skills h2{color:#fff}.asr-skills__lead{color:#c4d0d4;font-size:1.08rem}.asr-source{margin:0;color:#8fa3a7;font-size:0.85rem}.asr-source a{color:var(--color-brand-cyan-500)}.asr-skill-words{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(20px,3vw,40px);margin:0;padding:0;list-style:none}.asr-skill-words li{display:flex;align-items:center;gap:14px;padding:14px 0;border-top:1px solid rgba(121,214,230,0.16);color:#e7eff1;font:600 clamp(1.15rem,1.7vw,1.5rem)/1.2 var(--serif);letter-spacing:-0.01em;transition:color 200ms var(--ease-state),padding 250ms var(--ease-enter)}.asr-skill-words li::before{content:"";flex:none;width:8px;height:8px;border:1.5px solid var(--color-brand-cyan-500);transform:rotate(45deg);transition:background-color 200ms var(--ease-state)}.asr-skill-words li:hover{padding-left:6px;color:var(--color-brand-cyan-500)}.asr-skill-words li:hover::before{background:var(--color-brand-cyan-500)}@media (max-width:1100px){.asr-level{grid-template-columns:6.5rem minmax(0,1fr)}.asr-level__side{grid-column:2}.asr-flow{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:28px}.asr-flow::before,.asr-flow::after{display:none}.asr-platform{grid-template-columns:minmax(0,0.8fr) minmax(0,1.2fr)}.asr-platform__points{grid-column:2}}@media (max-width:900px){.asr-intro__grid,.asr-skills__grid,.asr-system__grid,.asr-trio{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.asr-level{grid-template-columns:minmax(0,1fr);padding-inline:4px}.asr-level__side{grid-column:1}.asr-level__ages span{display:inline;margin-right:4px}.asr-flow{grid-template-columns:minmax(0,1fr);row-gap:0}.asr-flow::before,.asr-flow::after{display:block;top:8px;bottom:8px;left:7px;right:auto;width:2px;height:auto}.asr-flow::after{transform-origin:50% 0}.js .asr-flow:not(.is-revealed)::after{transform:scaleY(0)}.asr-flow__step{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr);align-items:baseline;column-gap:12px;padding:0 0 18px 32px}.asr-flow__step:last-child{padding-bottom:0}.asr-flow__dot{top:4px}.asr-flow__step span:last-child{font-size:0.88rem}.robo-cta__actions{display:grid;grid-template-columns:minmax(0,1fr);width:100%}.robo-cta__actions .button{width:100%}.robo-page .section-heading--row{flex-direction:column;align-items:flex-start;gap:6px}.robo-page .section-heading--row h2{margin:0;font-size:1.6rem}.robo-page .section-heading--row .text-link{white-space:nowrap}.asr-platform{grid-template-columns:minmax(0,1fr);padding-inline:4px}.asr-platform__points{grid-column:1}.asr-offer,.asr-audiences{grid-template-columns:minmax(0,1fr)}.asr-pillar{padding:14px 12px}}@media (prefers-reduced-motion:reduce){.asr-level__bar,.asr-flow::after{transition:none}}.robo-page{--robo-bg:#0f171a;--robo-bg-2:#141f23;--robo-deep:#0a1113;--robo-line:rgba(121,214,230,0.16);--robo-text:#e8f1f3;--robo-muted:#a3b6bb;--robo-cyan:#79d6e6;--robo-glow:0 0 0 1px rgba(121,214,230,0.35),0 18px 60px rgba(23,107,122,0.35);background:var(--robo-bg);color:var(--robo-text)}.robo-page h1,.robo-page h2,.robo-page h3{color:#fff}.robo-mono{margin:0;color:var(--robo-cyan);font:600 0.74rem/1.4 ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;letter-spacing:0.14em;text-transform:uppercase}.robo-intro,.robo-media,.robo-cta{position:relative;isolation:isolate}.robo-intro::before,.robo-media::before,.robo-cta::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(121,214,230,0.07) 1px,transparent 1px),linear-gradient(90deg,rgba(121,214,230,0.07) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 0%,#000 20%,transparent 75%);mask-image:radial-gradient(ellipse 80% 70% at 50% 0%,#000 20%,transparent 75%);pointer-events:none}.robo-film{position:relative;overflow:hidden;background:#000}.robo-film__media{display:block;width:100%;height:auto;aspect-ratio:16 / 9;max-height:100svh;object-fit:cover}.robo-film::after{content:"";position:absolute;inset:auto 0 0;height:38%;background:linear-gradient(to top,var(--robo-bg),transparent);pointer-events:none}.robo-film__scan{position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,var(--robo-cyan),transparent);box-shadow:0 0 18px var(--robo-cyan);opacity:0;animation:robo-scan 2.6s var(--ease-enter) 0.4s 1 both;pointer-events:none}@keyframes robo-scan{0%{opacity:0;transform:translateY(0)}12%{opacity:1}100%{opacity:0;transform:translateY(56.25vw)}}.robo-film__bar{position:absolute;z-index:1;inset:auto 0 clamp(14px,2.4vw,32px);display:flex;align-items:center;justify-content:flex-start;gap:12px;width:min(calc(100% - (2 * var(--page-gutter))),var(--shell));margin-inline:auto}.robo-film__sound{position:relative;display:grid;place-items:center;width:52px;height:52px;padding:0;border:1px solid rgba(255,255,255,0.4);border-radius:50%;background:rgba(10,17,19,0.5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;cursor:pointer;transition:border-color 200ms var(--ease-state),background-color 200ms var(--ease-state),transform 250ms var(--ease-enter),box-shadow 250ms var(--ease-enter)}.robo-film__sound:hover{border-color:var(--robo-cyan);background:rgba(23,107,122,0.6);transform:scale(1.06)}.robo-film__sound[aria-pressed="true"]{border-color:var(--robo-cyan);box-shadow:0 0 0 4px rgba(121,214,230,0.2),0 0 24px rgba(121,214,230,0.35)}.robo-film__icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.robo-film__icon path:first-child{fill:currentColor;stroke:none}.robo-film__icon--sound{display:none}.robo-film__sound[aria-pressed="true"] .robo-film__icon--muted{display:none}.robo-film__sound[aria-pressed="true"] .robo-film__icon--sound{display:block}.robo-film__progress{position:absolute;z-index:2;inset:auto 0 0;height:3px;background:rgba(255,255,255,0.12);pointer-events:none}.robo-film__progress span{display:block;height:100%;background:var(--robo-cyan);box-shadow:0 0 12px var(--robo-cyan);transform:scaleX(var(--film-progress,0));transform-origin:0 50%}@media (min-width:761px){body:has(.robo-film) .site-header{margin-bottom:calc(-1 * var(--header-height))}}.robo-intro{padding:clamp(40px,4.5vw,64px) 0;background:var(--robo-bg)}.robo-intro__grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,0.8fr);gap:40px clamp(32px,5vw,88px);align-items:end}.robo-breadcrumb{margin-bottom:18px;color:var(--robo-muted)}.robo-breadcrumb a{color:var(--robo-cyan)}.robo-title{display:inline-block;margin:0 0 18px;padding-bottom:0.06em;font-size:clamp(3.4rem,9vw,8.5rem);line-height:0.95;letter-spacing:-0.04em;background:linear-gradient(100deg,#fff 15%,#c6f0f7 50%,var(--robo-cyan) 90%);-webkit-background-clip:text;background-clip:text;color:transparent}.robo-intro__lead{margin:0 0 26px;color:#cfdde0;font-size:clamp(1.02rem,1.3vw,1.18rem)}.robo-intro__actions,.robo-cta__actions{display:flex;flex-wrap:wrap;gap:12px}.robo-button{gap:8px;min-height:48px;padding-inline:22px;border-radius:999px;border-color:var(--robo-cyan);background:var(--robo-cyan);color:#0a1113}.robo-button:hover{background:#fff;border-color:#fff;color:#0a1113}.robo-button--ghost{border-color:rgba(255,255,255,0.3);background:transparent;color:#fff}.robo-button--ghost:hover{border-color:var(--robo-cyan);background:rgba(121,214,230,0.12);color:#fff}.robo-partner{display:flex;align-items:center;gap:18px;margin-bottom:26px}.robo-partner img{width:clamp(110px,12vw,150px);height:auto}.robo-partner p{margin:0;color:var(--robo-muted);font-size:0.95rem}.robo-readouts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;border-top:1px solid var(--robo-line)}.robo-readout{display:flex;flex-direction:column;gap:6px;padding:18px 16px 4px 0}.robo-readout + .robo-readout{padding-left:16px;border-left:1px solid var(--robo-line)}.robo-readout b{color:#fff;font:600 clamp(1.8rem,3vw,2.6rem)/1 var(--serif);letter-spacing:-0.02em;font-variant-numeric:tabular-nums}.robo-readout span{color:var(--robo-muted);font-size:0.86rem}.robo-logos{padding:8px 0 clamp(36px,4vw,56px);background:var(--robo-bg)}.robo-logos__head{margin-bottom:16px}.robo-logos__head h2{font-family:ui-monospace,"SFMono-Regular",Menlo,monospace}.robo-marquee{display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}.robo-marquee__track{flex:none;display:flex;align-items:center;gap:14px;margin:0;padding:10px 14px 16px 0;list-style:none;animation:robo-marquee 60s linear infinite}.robo-marquee:hover .robo-marquee__track,.robo-marquee:focus-within .robo-marquee__track{animation-play-state:paused}@keyframes robo-marquee{to{transform:translateX(-100%)}}.robo-logo a,.robo-logo__plain{display:flex;align-items:center;justify-content:center;height:84px;padding:0 30px;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,0.25);transition:transform 300ms var(--ease-enter),box-shadow 300ms var(--ease-enter)}.robo-logo a:hover,.robo-logo a:focus-visible{transform:translateY(-4px);box-shadow:var(--robo-glow)}.robo-logo img{display:block;width:auto;height:36px}.robo-logo--vex-robotics img{height:50px}.robo-logo--booster-robotics img{height:40px}.robo-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:12px clamp(32px,4vw,72px);align-items:end;margin-bottom:32px}.robo-heading h2{margin:8px 0 0}.robo-heading>p{margin:0;color:var(--robo-muted);font-size:1.05rem}.robo-media{padding:clamp(40px,4.5vw,64px) 0;background:var(--robo-bg-2);border-top:1px solid var(--robo-line)}.robo-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.robo-filters button{min-height:40px;padding:0 16px;border:1px solid var(--robo-line);border-radius:999px;background:transparent;color:var(--robo-text);font-weight:600;cursor:pointer;transition:all 200ms var(--ease-state)}.robo-filters button:hover{border-color:var(--robo-cyan)}.robo-filters button.is-active{border-color:var(--robo-cyan);background:var(--robo-cyan);color:#0a1113}.robo-media{--reel-height:clamp(300px,34vw,500px)}.robo-reel__bar{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:18px}.robo-reel__count{margin-right:auto}.robo-reel__bar .robo-filters{margin:0}.robo-reel__arrows{display:flex;gap:8px}.robo-reel__arrow{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--robo-line);border-radius:50%;background:rgba(255,255,255,0.04);color:#fff;font-size:1.1rem;cursor:pointer;transition:border-color 200ms var(--ease-state),background-color 200ms var(--ease-state),opacity 200ms var(--ease-state)}.robo-reel__arrow:hover:not(:disabled){border-color:var(--robo-cyan);background:rgba(121,214,230,0.14)}.robo-reel__arrow:disabled{opacity:0.35;cursor:default}.robo-reel__track{display:flex;gap:14px;margin:0;padding:6px max(var(--page-gutter),calc((100% - var(--shell)) / 2)) 14px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:max(var(--page-gutter),calc((100% - var(--shell)) / 2));scrollbar-width:none;list-style:none}.robo-reel__track::-webkit-scrollbar{display:none}.robo-tile{flex:none;height:var(--reel-height);margin:0;scroll-snap-align:start}.robo-tile[hidden]{display:none}.robo-tile--9x16{aspect-ratio:9 / 16}.robo-tile--2x3{aspect-ratio:2 / 3}.robo-tile--3x4{aspect-ratio:3 / 4}.robo-tile--4x5{aspect-ratio:4 / 5}.robo-tile--1x1{aspect-ratio:1}.robo-tile--5x4{aspect-ratio:5 / 4}.robo-tile--4x3{aspect-ratio:4 / 3}.robo-tile--3x2{aspect-ratio:3 / 2}.robo-tile--16x9{aspect-ratio:16 / 9}.robo-reel__progress{height:2px;margin-top:4px;overflow:hidden;border-radius:2px;background:var(--robo-line)}.robo-reel__progress span{display:block;width:100%;height:100%;background:var(--robo-cyan);box-shadow:0 0 10px var(--robo-cyan);transform:scaleX(var(--reel-progress,0.08));transform-origin:0 50%;transition:transform 160ms linear}.robo-tile__button{position:relative;display:block;width:100%;height:100%;padding:0;overflow:hidden;border:0;border-radius:18px;background:var(--robo-deep);color:#fff;text-align:left;cursor:zoom-in;box-shadow:0 0 0 1px var(--robo-line);transition:box-shadow 300ms var(--ease-state),transform 300ms var(--ease-enter)}.robo-tile__button:hover,.robo-tile__button:focus-visible{box-shadow:var(--robo-glow);transform:translateY(-3px)}.robo-tile__media{display:block;width:100%;height:100%;object-fit:cover;transition:transform 700ms var(--ease-enter)}.robo-tile__button:hover .robo-tile__media{transform:scale(1.04)}.robo-tile__hud::before,.robo-tile__hud::after{content:"";position:absolute;width:26px;height:26px;border:2px solid var(--robo-cyan);opacity:0;transition:opacity 300ms var(--ease-state),transform 300ms var(--ease-enter)}.robo-tile__hud::before{top:12px;left:12px;border-right:0;border-bottom:0;border-top-left-radius:8px;transform:translate(6px,6px)}.robo-tile__hud::after{right:12px;bottom:12px;border-left:0;border-top:0;border-bottom-right-radius:8px;transform:translate(-6px,-6px)}.robo-tile__button:hover .robo-tile__hud::before,.robo-tile__button:hover .robo-tile__hud::after,.robo-tile__button:focus-visible .robo-tile__hud::before,.robo-tile__button:focus-visible .robo-tile__hud::after{opacity:1;transform:none}.robo-tile__kind{position:absolute;top:12px;right:12px;padding:5px 9px;border-radius:999px;background:rgba(10,17,19,0.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:0.66rem}.robo-tile__caption{position:absolute;inset:auto 0 0;display:flex;flex-direction:column;gap:4px;padding:44px 16px 14px;background:linear-gradient(to top,rgba(8,13,15,0.92),transparent);font-size:0.86rem}.robo-tile__caption b{font-size:1rem}.robo-tile__caption span{max-height:0;overflow:hidden;color:#cfdde0;opacity:0;transition:max-height 450ms var(--ease-enter),opacity 300ms var(--ease-state)}.robo-tile__button:hover .robo-tile__caption span,.robo-tile__button:focus-visible .robo-tile__caption span{max-height:7em;opacity:1}@media (hover:none){.robo-tile__caption span{display:none}}.robo-course{padding:clamp(40px,4.5vw,64px) 0;background:var(--robo-bg);border-top:1px solid var(--robo-line);scroll-margin-top:var(--header-height)}.robo-course__grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,0.85fr);gap:24px clamp(24px,3vw,48px);align-items:stretch}.robo-still{position:relative;margin:0;overflow:hidden;border-radius:22px;box-shadow:0 0 0 1px var(--robo-line)}.robo-still img{display:block;width:100%;height:100%;object-fit:cover;transition:transform 1200ms var(--ease-enter)}.robo-still:hover img{transform:scale(1.03)}.robo-still::before,.robo-still::after{content:"";position:absolute;z-index:1;width:34px;height:34px;border:2px solid var(--robo-cyan)}.robo-still::before{top:16px;left:16px;border-right:0;border-bottom:0;border-top-left-radius:10px}.robo-still::after{right:16px;bottom:16px;border-left:0;border-top:0;border-bottom-right-radius:10px}.robo-still figcaption{position:absolute;inset:auto 0 0;padding:40px 60px 18px 20px;background:linear-gradient(to top,rgba(8,13,15,0.85),transparent);color:#dbe6e8;font-size:0.88rem}.robo-tracks{display:grid;gap:16px}.robo-track{padding:24px clamp(16px,5cqi,24px) 22px;border-radius:20px;background:linear-gradient(160deg,rgba(121,214,230,0.1),rgba(121,214,230,0.02));box-shadow:inset 0 0 0 1px var(--robo-line)}.robo-track h3{margin:8px 0 8px;font-size:clamp(1.35rem,2vw,1.7rem)}.robo-track>p:not(.robo-mono){margin:0 0 16px;color:var(--robo-muted)}.robo-track{container-type:inline-size}.robo-track__steps{display:flex;flex-wrap:nowrap;align-items:center;gap:0;margin:0;padding:0;list-style:none;counter-reset:robo-step;font-size:clamp(0.62rem,4.4cqi,0.95rem)}.robo-track__steps li{counter-increment:robo-step;display:flex;flex:none;align-items:center;gap:0.5em;font-weight:650;white-space:nowrap}.robo-track__steps li:not(:last-child){flex:1 1 auto}.robo-track__steps li::before{content:counter(robo-step);display:grid;flex:none;place-items:center;width:1.9em;height:1.9em;border-radius:50%;background:var(--robo-cyan);color:#0a1113;font-size:0.85em;font-weight:800;box-shadow:0 0 0 4px rgba(121,214,230,0.14)}.robo-track__steps li:not(:last-child)::after{content:"";flex:1 1 auto;min-width:0.5em;height:2px;margin-inline:0.45em;border-radius:2px;background:linear-gradient(90deg,var(--robo-cyan),rgba(121,214,230,0.25))}.robo-facts{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 clamp(24px,3vw,48px);margin-top:24px;padding:6px clamp(20px,2.4vw,32px);border-radius:22px;background:linear-gradient(120deg,rgba(121,214,230,0.07),rgba(121,214,230,0.015));box-shadow:inset 0 0 0 1px var(--robo-line)}.robo-facts__row{grid-column:1;display:grid;grid-template-columns:12.5rem minmax(0,1fr);align-items:center;gap:8px 20px;padding:18px 0}.robo-facts__row + .robo-facts__row{border-top:1px solid var(--robo-line)}.robo-facts__label{font-size:0.7rem}.robo-facts__perks,.robo-facts__skills{display:flex;flex-wrap:wrap;align-items:center;margin:0;padding:0;list-style:none}.robo-facts__perks{gap:10px 28px}.robo-facts__perks li{display:inline-flex;align-items:center;gap:10px;font-weight:650}.robo-facts__perks li::before{content:"";flex:none;width:18px;height:18px;border-radius:50%;background:radial-gradient(circle,var(--robo-cyan) 0 3px,transparent 4px),rgba(121,214,230,0.16);box-shadow:0 0 12px rgba(121,214,230,0.35)}.robo-facts__skills{gap:8px}.robo-facts__skills li{padding:6px 14px;border:1px solid var(--robo-line);border-radius:999px;font-size:0.88rem;font-weight:600;transition:border-color 200ms var(--ease-state),color 200ms var(--ease-state)}.robo-facts__skills li:hover{border-color:var(--robo-cyan);color:var(--robo-cyan)}.robo-facts__call{grid-column:2;grid-row:1 / span 2;display:inline-flex;align-items:center;gap:14px;padding:12px 22px 12px 12px;border-radius:999px;background:var(--robo-cyan);color:#0a1113;text-decoration:none;transition:transform 250ms var(--ease-enter),box-shadow 250ms var(--ease-enter),background-color 200ms var(--ease-state)}.robo-facts__call:hover{background:#fff;transform:translateY(-2px);box-shadow:var(--robo-glow)}.robo-facts__call-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#0a1113;color:var(--robo-cyan)}.robo-facts__call-icon svg{width:20px;height:20px}.robo-facts__call-text{display:flex;flex-direction:column;line-height:1.2}.robo-facts__call-text small{font:700 0.66rem/1.4 ui-monospace,"SFMono-Regular",Menlo,monospace;letter-spacing:0.14em;text-transform:uppercase}.robo-facts__call-text b{font:600 1.2rem/1.2 var(--serif)}.robo-page :is(.asr-intro,.asr-pathway,.asr-platforms,.asr-method,.asr-system,.asr-skills){--color-border:var(--robo-line);--color-ink-700:var(--robo-muted);--color-surface-soft:rgba(255,255,255,0.04);--color-brand-cyan-100:rgba(121,214,230,0.12);--color-brand-cyan-700:var(--robo-cyan);color:var(--robo-text)}.robo-page .asr-intro{background:var(--robo-bg-2);border-top:1px solid var(--robo-line)}.robo-page .asr-pathway,.robo-page .asr-method{background:var(--robo-bg)}.robo-page .asr-platforms,.robo-page .asr-system{background:var(--robo-bg-2)}.robo-page .asr-skills{background:var(--robo-deep);border-top:1px solid var(--robo-line)}.robo-page .asr-platform:hover{background:rgba(255,255,255,0.04)}.robo-page .asr-flow__dot{background:var(--robo-bg)}.robo-page .asr-step::before{color:#0a1113}.robo-page .asr-audience{background:rgba(121,214,230,0.08);box-shadow:inset 0 0 0 1px var(--robo-line)}.robo-page .asr-level__bar.is-open{fill:#3f9fb0}.robo-page .asr-level:hover .asr-level__bar{fill:#fff}.robo-page .eyebrow{color:var(--robo-cyan);font-family:ui-monospace,"SFMono-Regular",Menlo,monospace}.robo-classroom{padding:clamp(40px,4.5vw,64px) 0;background:var(--robo-bg);border-top:1px solid var(--robo-line)}.robo-classroom__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:28px clamp(24px,3.5vw,56px)}.robo-class{padding-top:18px;border-top:2px solid var(--robo-cyan);scroll-margin-top:calc(var(--header-height) + 24px)}.robo-class h3{margin:0 0 8px;font-size:1.45rem}.robo-class__summary{color:#fff;font-weight:600}.robo-class__body p{color:var(--robo-muted)}.robo-cta{padding:clamp(40px,4.5vw,64px) 0;background:radial-gradient(ellipse 70% 120% at 85% 50%,rgba(23,107,122,0.55),transparent 70%),var(--robo-deep);border-top:1px solid var(--robo-line)}.robo-cta__grid{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px 48px}.robo-cta h2{margin:0 0 8px}.robo-cta p{margin:0;color:#cfdde0}.robo-cta .button svg{width:18px;height:18px}.robo-page .section--soft{background:var(--robo-bg-2);border-top-color:var(--robo-line)}.robo-page .section-heading--row .text-link{color:var(--robo-cyan)}.robo-page .programme-tile{border-color:var(--robo-line);background:rgba(255,255,255,0.04);color:var(--robo-text)}.robo-page .programme-tile p{color:var(--robo-muted)}.robo-page .programme-tile:hover{border-color:var(--robo-cyan);box-shadow:var(--robo-glow)}.robo-viewer{width:min(1200px,calc(100vw - 24px));max-width:none;max-height:calc(100svh - 24px);padding:0;overflow:hidden;border:1px solid var(--robo-line);border-radius:22px;background:#0a1113;color:#e8f1f3;opacity:0;transform:translateY(12px) scale(0.98);transition:opacity 260ms var(--ease-enter),transform 260ms var(--ease-enter),overlay 260ms allow-discrete,display 260ms allow-discrete}.robo-viewer[open]{display:flex;flex-direction:column;opacity:1;transform:none}@starting-style{.robo-viewer[open]{opacity:0;transform:translateY(12px) scale(0.98)}}.robo-viewer::backdrop{background:rgba(5,9,11,0.86);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.robo-viewer__bar,.robo-viewer__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px 10px 18px}.robo-viewer .icon-button{border-color:var(--robo-line);border-radius:999px;background:rgba(255,255,255,0.06);color:#fff}.robo-viewer .icon-button:hover{border-color:#79d6e6;background:rgba(121,214,230,0.16)}.robo-viewer__stage{display:grid;place-items:center;min-height:0;flex:1;padding:0 12px}.robo-viewer__stage img,.robo-viewer__stage video{display:block;max-width:100%;max-height:calc(100svh - 190px);width:auto;height:auto;border-radius:14px;background:#000}.robo-viewer__caption{flex:1;margin:0;color:#cfdde0;font-size:0.92rem;text-align:center}.robo-viewer__caption b{display:block;color:#fff;font-size:1rem}@media (max-width:1000px){.robo-intro__grid,.robo-course__grid,.robo-heading{grid-template-columns:minmax(0,1fr)}.robo-still{aspect-ratio:16 / 9}}@media (max-width:640px){.robo-film__sound{width:44px;height:44px}.robo-film__icon{width:20px;height:20px}.robo-readouts{grid-template-columns:minmax(0,1fr)}.robo-readout{flex-direction:row;align-items:baseline;gap:12px;padding:12px 0}.robo-readout + .robo-readout{padding-left:0;border-left:0;border-top:1px solid var(--robo-line)}.robo-media{--reel-height:62vw}.robo-reel__track{gap:10px}.robo-reel__arrows{display:none}.robo-tile__button{border-radius:14px}.robo-facts{grid-template-columns:minmax(0,1fr);padding-bottom:20px}.robo-facts__row{grid-template-columns:minmax(0,1fr)}.robo-facts__call{grid-column:1;grid-row:auto;justify-self:start}.asr-skill-words{grid-template-columns:minmax(0,1fr)}.robo-tile__caption{padding:30px 10px 10px;font-size:0.78rem}.robo-tile__caption b{font-size:0.86rem}.robo-logo a,.robo-logo__plain{height:68px;padding:0 22px;border-radius:14px}.robo-logo img{height:28px}.robo-logo--vex-robotics img{height:40px}.robo-logo--booster-robotics img{height:32px}}@media (prefers-reduced-motion:reduce){.robo-marquee__track{animation:none;flex-wrap:wrap;justify-content:center;width:100%;padding-right:0}.robo-marquee__track[aria-hidden="true"],.robo-logo[aria-hidden="true"]{display:none}.robo-marquee{-webkit-mask-image:none;mask-image:none}.robo-film__scan{animation:none}.robo-tile__media,.robo-still img,.robo-tile__caption,.robo-viewer{transition:none}}.programme-hero{position:relative;overflow:hidden;isolation:isolate}.programme-hero__grid{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:32px clamp(32px,5vw,88px)}.programme-hero--languages .programme-hero__grid,.programme-hero--sport_arts:has(.programme-photos) .programme-hero__grid{grid-template-columns:minmax(0,1.3fr) minmax(0,0.7fr)}.programme-hero--languages{background:radial-gradient(ellipse 60% 90% at 85% 40%,var(--color-brand-cyan-100),transparent 70%),var(--color-surface)}.programme-globe{position:relative;justify-self:center;width:min(100%,320px);aspect-ratio:1;border-radius:50%;box-shadow:inset 0 0 0 1.5px rgba(23,107,122,0.35),0 30px 80px rgba(23,107,122,0.15);background:radial-gradient(circle at 35% 30%,#fff,var(--color-brand-cyan-100) 70%);overflow:hidden}.programme-globe::before,.programme-globe::after,.programme-globe span{content:"";position:absolute;inset:0;border-radius:50%}.programme-globe::before{background:repeating-linear-gradient(0deg,transparent 0 calc(16.66% - 1px),rgba(23,107,122,0.28) calc(16.66% - 1px) 16.66%)}.programme-globe span{inset:0 -50%;background:radial-gradient(ellipse 12% 50% at 50% 50%,transparent 98%,rgba(23,107,122,0.3) 99% 100%,transparent 101%),radial-gradient(ellipse 30% 50% at 50% 50%,transparent 98.5%,rgba(23,107,122,0.3) 99% 100%,transparent 100.5%),radial-gradient(ellipse 45% 50% at 50% 50%,transparent 99%,rgba(23,107,122,0.3) 99.3% 100%,transparent 100.3%);border-radius:0;animation:globe-turn 18s linear infinite}.programme-globe::after{box-shadow:inset -30px -20px 60px rgba(23,107,122,0.18)}@keyframes globe-turn{from{transform:translateX(-12%)}to{transform:translateX(12%)}}.programme-hero--sport_arts{background:linear-gradient(180deg,var(--color-surface-soft),var(--color-surface))}.programme-photos{position:relative;justify-self:center;width:min(100%,360px);aspect-ratio:1 / 1.1}.programme-photos__item{position:absolute;width:72%;height:auto;aspect-ratio:1112 / 1200;object-fit:cover;border:6px solid #fff;border-radius:18px;box-shadow:0 24px 60px rgba(30,37,41,0.22);transition:transform 500ms var(--ease-enter)}.programme-photos__item:first-child{top:0;left:0;transform:rotate(-5deg)}.programme-photos__item:last-child:not(:first-child){right:0;bottom:0;transform:rotate(4deg)}.programme-photos:hover .programme-photos__item:first-child{transform:rotate(-2deg) translate(-6px,-4px)}.programme-photos:hover .programme-photos__item:last-child:not(:first-child){transform:rotate(1deg) translate(6px,4px)}@media (max-width:760px){.programme-hero--languages .programme-hero__grid,.programme-hero--sport_arts:has(.programme-photos) .programme-hero__grid{grid-template-columns:minmax(0,1fr)}.programme-globe{display:none}.programme-photos{width:min(100%,300px)}}@media (prefers-reduced-motion:reduce){.programme-globe span{animation:none}.programme-photos__item{transition:none}}.language-control__short{display:none}@media (max-width:420px){.site-header .header-inner{gap:10px}.brand{flex:0 1 auto;min-width:0}.brand__name{min-width:0;overflow:hidden}.brand__kicker{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.header-actions{flex:none;gap:6px}.site-header .language-control{min-width:44px;padding-inline:10px}.language-control__long{display:none}.language-control__short{display:inline}}@media (max-width:370px){.site-header .brand__mark{height:32px}.brand{gap:7px}.brand__school{font-size:0.98rem}.brand__kicker{font-size:0.52rem;letter-spacing:0.04em}}@media (max-width:345px){.brand__kicker{display:none}}.robot{--robot-face:#fff;--robot-edge:rgba(23,107,122,0.32);--robot-stem:rgba(23,107,122,0.55);--robot-visor:#10434c;--robot-glow:#79d6e6;display:block;overflow:visible}.robot__face,.robot__body{fill:var(--robot-face);stroke:var(--robot-edge);stroke-width:1.2}.robot__visor{fill:var(--robot-visor)}.robot__eye,.robot__mouth,.robot__ear{fill:var(--robot-glow)}.robot__ear{opacity:0.85}.robot__stem{fill:none;stroke:var(--robot-stem);stroke-width:2;stroke-linecap:round}.robot__light{fill:var(--robot-glow)}.robot__all,.robot__head,.robot__eyes,.robot__eye,.robot__mouth,.robot__light{transform-box:fill-box;transform-origin:center}.robot__head{transform-box:view-box;transform-origin:24px 40px;transition:transform 700ms var(--ease-enter)}.robot__eyes{transition:transform 600ms var(--ease-enter)}@media (prefers-reduced-motion:no-preference){.robot.is-live .robot__all{animation:robot-float 4.8s ease-in-out infinite}.robot.is-live .robot__eye{animation:robot-blink 5.6s ease-in-out infinite}.robot.is-live .robot__light{animation:robot-glow 2.8s ease-in-out infinite}.robot.is-thinking .robot__head{animation:robot-think 2.8s ease-in-out infinite}.robot.is-thinking .robot__eyes{animation:robot-look 2.8s ease-in-out infinite}.robot.is-thinking .robot__light{animation-duration:1s}.robot.is-speaking .robot__mouth{animation:robot-talk 0.36s ease-in-out infinite}.robot.is-speaking .robot__all{animation-duration:2.4s}}@keyframes robot-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-1.6px)}}@keyframes robot-blink{0%,90%,100%{transform:scaleY(1)}93%{transform:scaleY(0.12)}96%{transform:scaleY(1)}}@keyframes robot-glow{0%,100%{opacity:0.55;filter:none}50%{opacity:1;filter:drop-shadow(0 0 2.5px var(--robot-glow))}}@keyframes robot-think{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}@keyframes robot-look{0%,100%{transform:translate(-1.6px,-1px)}50%{transform:translate(1.6px,-1px)}}@keyframes robot-talk{0%,100%{transform:scaleY(1)}50%{transform:scaleY(2.6)}}.chat-launcher .robot,.chat-panel__avatar .robot{--robot-edge:rgba(255,255,255,0.5);--robot-stem:rgba(255,255,255,0.85)}.chat-launcher .robot.chat-launcher__icon{width:30px;height:30px}.chat-panel__avatar{display:grid;place-items:center;padding:3px;border-radius:50%;background:rgba(255,255,255,0.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,0.3),0 0 0 2px rgba(255,255,255,0.12);object-fit:initial}.chat-panel__avatar .robot{width:34px;height:34px}.chat-msg--bot{position:relative;padding-left:38px}.chat-msg__robot{position:absolute;top:0;left:0;width:30px;height:30px}.chat-msg--bot:not(:has(.chat-msg__robot)){padding-left:0}@media (prefers-reduced-motion:no-preference){.chat-msg__bubble.is-revealing .chat-word{display:inline-block;max-width:100%;opacity:0;filter:blur(3px);transform:translateY(3px);animation:chat-word-in 480ms var(--ease-enter) forwards;animation-delay:var(--word-delay,0ms)}}@keyframes chat-word-in{to{opacity:1;filter:none;transform:none}}@media (prefers-reduced-motion:reduce){.robot__head,.robot__eyes{transition:none}}.chat-launcher{width:58px;padding:0;justify-content:center}.chat-launcher__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.chat-launcher .robot.chat-launcher__icon{width:34px;height:34px}@media (max-width:600px){.chat-launcher{width:54px}.chat-launcher .robot.chat-launcher__icon{width:30px;height:30px}}.medal-photos__heading{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:12px 32px;margin-bottom:clamp(20px,3vw,32px)}.medal-photos__heading h2{margin:0}.medal-photos__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(14px,2vw,24px)}.medal-photos__item{position:relative;grid-column:span 2;height:clamp(300px,30vw,480px);margin:0;overflow:hidden;border-radius:22px;background:var(--color-surface-soft);box-shadow:0 30px 60px -40px rgba(23,107,122,0.75)}.medal-photos--feature .medal-photos__item:nth-child(-n + 2){grid-column:span 3;height:clamp(360px,40vw,620px)}.medal-photos__item:nth-child(2){transition-delay:100ms}.medal-photos__item:nth-child(3){transition-delay:200ms}.medal-photos__item img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%;transition:transform 900ms var(--ease-enter)}.medal-photos__item:hover img{transform:scale(1.04)}@media (max-width:760px){.medal-photos__grid{grid-template-columns:1fr}.medal-photos__item,.medal-photos--feature .medal-photos__item:nth-child(-n + 2){grid-column:auto;height:auto;aspect-ratio:4 / 5}}@media (prefers-reduced-motion:reduce){.medal-photos__item img{transition:none}.medal-photos__item:hover img{transform:none}}.home-film{--robo-cyan:#79d6e6;--robo-bg:#0f171a}.home-film__frame{border-radius:24px;box-shadow:0 34px 70px -44px rgba(15,23,26,0.85)}.home-film__frame::after{height:30%;background:linear-gradient(to top,rgba(15,23,26,0.55),transparent)}.home-film__frame .robo-film__media{max-height:82svh}.home-film__link{margin-left:auto;padding:10px 18px;border:1px solid rgba(255,255,255,0.4);border-radius:999px;background:rgba(15,23,26,0.45);color:#fff;font-weight:600;text-decoration:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color 240ms ease,background 240ms ease}.home-film__link:hover{border-color:var(--robo-cyan);background:rgba(23,107,122,0.6)}.home-film .robo-film__bar{width:calc(100% - 2 * clamp(14px,2.4vw,32px))}html{background:var(--color-surface)}body{background:transparent}.fluid-bg{position:fixed;inset:0;z-index:-1;width:100%;height:100%;pointer-events:none}