@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap";:root{--color-page: #ffffff;--color-surface: #f6f6f6;--color-card: #ffffff;--color-text: #111111;--color-text-secondary: #4a4a4a;--color-text-muted: #666666;--color-primary: #111111;--color-primary-hover: #333333;--color-on-primary: #ffffff;--color-border: #e5e5e5;--color-border-strong: #bdbdbd;--color-focus: #111111;--color-shadow-color: #00000014;--color-image-overlay: #00000099;--color-modal-overlay: #000000f5;--font-body: "DM Sans", Arial, sans-serif;--font-heading: "Libre Caslon Display", Georgia, serif;--font-brand: Georgia, serif;--font-heading-1: clamp(48px,5.5vw,84px);--font-heading-2: clamp(38px,4vw,58px);--font-size-23: 23px;--font-size-12: 12px;--font-size-24: 24px;--font-size-10: 10px;--font-size-13: 13px;--font-size-16: 16px;--font-size-11: 11px;--font-size-36: 36px;--font-size-15: 15px;--font-size-30: 30px;--font-size-27: 27px;--font-size-14: 14px;--font-size-35: 35px;--font-size-28: 28px;--font-size-48: 48px;--font-size-38: 38px;--font-size-19: 19px;--font-size-18: 18px;--font-size-20: 20px;--font-size-59: 59px;--font-size-41: 41px;--font-size-51: 51px;--font-size-8: 8px;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--line-body: 1.8;--line-heading: 1.06;--line-title: 1.35;--line-compact: 1.6;--content-width: 1240px;--content-percentage: 90%;--section-space: 85px;--section-space-mobile: 55px;--card-padding: 30px;--card-radius: 18px;--button-radius: 8px;--input-radius: 8px;--card-shadow: 0 8px 28px var(--color-shadow-color);--card-shadow-hover: 0 16px 40px var(--color-shadow-color);--transition-duration: .18s;--purpose-gap: 24px;--font-topbar: 14px;--header-height: 92px;--header-nav-gap: 22px;--font-header-nav: 13px;--font-welcome-school: clamp(16px, 1.5vw, 20px);--font-welcome-prefix: 13px;--font-hero-mobile: clamp(36px, 10vw, 59px);--touch-target: 44px;--font-partnership-caption: 14px;--font-values-strip: 15px;--font-approach-eyebrow: 13px;--font-highlight-label: 13px;--social-icon-size: 38px;--admissions-blink-duration: 2s;--font-program-title: clamp(18px, 1.6vw, 22px);--font-program-heading: clamp(32px, 3.6vw, 52px);--hero-building-height: 580px;--highlight-grid-gap: 22px;--highlight-label-height: 48px;--gallery-control-height: 62px;--gallery-image-height: 280px;--learning-gallery-image-height: 360px;--contact-column-gap: 24px;--contact-info-gap: 32px;--logo-size: 64px;--footer-logo-size: 80px;--powered-by-logo-size: 56px;--font-footer-credit: 13px;--founder-photo-height: 350px;--founder-photo-position: center 25%;--leadership-heading-width: 620px;font-family:var(--font-body);font-size:var(--font-size-16);color:var(--color-text);background:var(--color-page);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--color-focus);outline-offset:5px}button{color:inherit}p{line-height:var(--line-body);color:var(--color-text-secondary)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--font-heading);font-weight:var(--weight-regular);line-height:var(--line-heading);letter-spacing:-1.5px}h1{font-size:var(--font-heading-1)}h2{font-size:var(--font-heading-2);margin-bottom:25px}h3{font-size:var(--font-size-23);font-weight:var(--weight-medium);line-height:var(--line-title)}em{font-style:normal;color:var(--color-text)}img{display:block;width:100%;object-fit:cover}.wrap{width:min(var(--content-width),var(--content-percentage));margin:auto}.utility{background:var(--color-primary);color:var(--color-on-primary);font-size:var(--font-size-12);letter-spacing:.5px;padding:10px 0}.utility .wrap{display:flex;justify-content:space-between;align-items:center}.utility button{border:0;background:none;color:var(--color-on-primary);font-size:var(--font-size-12)}header{position:sticky;top:0;z-index:10;background:var(--color-page);border-bottom:1px solid var(--color-border)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:100px;gap:20px}.brand{display:flex;align-items:center;gap:12px;border:0;background:none;text-align:left;font-family:var(--font-brand);font-size:var(--font-size-24);letter-spacing:2px;padding:0}.brand>span>span{display:block;font-family:var(--font-body);font-size:var(--font-size-10);letter-spacing:3px;margin-top:5px}.crest{width:47px;height:58px;border:1px solid var(--color-border-strong);border-radius:3px 3px 21px 21px;display:flex;align-items:center;flex-direction:column;justify-content:center;color:var(--color-text)}.crest span{font:var(--font-size-8) var(--font-body)!important;letter-spacing:2px!important}.header-inner nav{display:flex;gap:23px}.nav-item{position:relative}.nav-item>button{font-size:var(--font-size-13);padding:14px 0;border:0;background:none;white-space:nowrap}.nav-item>button.active{box-shadow:0 2px 0 var(--color-text)}.dropdown{display:none;position:absolute;top:100%;left:0;min-width:180px;background:var(--color-on-primary);padding:12px;box-shadow:0 8px 25px var(--color-shadow-color)}.dropdown button{border:0;background:none;display:block;padding:10px;text-align:left;width:100%;font-size:var(--font-size-13)}.nav-item:hover .dropdown,.nav-item:focus-within .dropdown{display:block}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:610px}.hero-copy{padding:78px 8% 40px max(5vw,calc((100vw - var(--content-width))/2))}.eyebrow{text-transform:uppercase;letter-spacing:2.5px;font-size:var(--font-size-10);font-weight:var(--weight-bold);color:var(--color-text-muted);margin-bottom:24px}.hero-copy>p:not(.eyebrow){max-width:420px;font-size:var(--font-size-16);margin-bottom:30px}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{background:var(--color-primary);color:var(--color-on-primary);border:1px solid var(--color-primary);padding:17px 24px;font-size:var(--font-size-13);display:inline-flex;justify-content:space-between;gap:25px;align-items:center}.button:hover{background:var(--color-primary-hover)}.text-button{border:0;border-bottom:1px solid var(--color-border-strong);padding:8px 0;background:none;font-size:var(--font-size-13);font-weight:var(--weight-semibold);text-align:left}.text-button span{margin-left:15px}.hero-foot{display:flex;align-items:center;gap:12px;font-size:var(--font-size-11);color:var(--color-text-muted);margin-top:58px}.line{height:1px;width:35px;background:var(--color-border-strong)}.hero figure{margin:0;position:relative;overflow:hidden;background:var(--color-surface)}.hero figure>img{height:100%;position:absolute;filter:brightness(.85)}.hero figcaption{position:absolute;bottom:12px;left:24px;color:var(--color-on-primary);font-size:var(--font-size-10);background:var(--color-image-overlay);padding:5px 8px}.photo-label{position:absolute;bottom:75px;left:40px;color:var(--color-on-primary);font-family:var(--font-heading);font-size:var(--font-size-36)}.photo-label strong{font-weight:var(--weight-regular)}.values-strip{background:var(--color-surface);padding:25px 0}.values-strip .wrap{display:flex;justify-content:space-around;gap:20px;font-size:var(--font-size-13)}.values-strip span+span{border-left:1px solid var(--color-border);padding-left:60px}.section{padding-top:var(--section-space);padding-bottom:var(--section-space)}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}.intro p{font-size:var(--font-size-15)}.program-section{background:var(--color-surface)}.section-top{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:30px}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.program{border-top:1px solid var(--color-border-strong);padding:25px 15px 20px 0}.number{display:block;font-family:var(--font-brand);font-size:var(--font-size-30);color:var(--color-text-muted);margin-bottom:40px}.program .eyebrow{margin-bottom:12px}.program h3{max-width:250px;font-size:var(--font-size-27)}.program p{font-size:var(--font-size-14)}.program h2{font-size:var(--font-size-35)}.small{font-size:var(--font-size-12)}.muted{color:var(--color-text-muted)}.life-preview{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center}.image-panel{position:relative}.image-panel img{height:410px}.image-panel span{position:absolute;bottom:0;left:0;background:var(--color-primary);color:var(--color-on-primary);padding:20px 25px;font-size:var(--font-size-12)}.life-preview p{font-size:var(--font-size-15)}.life-preview hr{border:0;border-top:1px solid var(--color-border);margin:25px 0}.news-preview{background:var(--color-surface)}.news-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.news-grid article{border-top:1px solid var(--color-border);padding-top:30px}.news-grid h3{max-width:350px;font-size:var(--font-size-28)}.reading{max-width:700px}.cta{background:var(--color-primary);color:var(--color-on-primary);padding:65px 0}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{margin:0;font-size:var(--font-size-48)}.cta .eyebrow{color:var(--color-on-primary)}.cta .button{background:var(--color-on-primary);color:var(--color-primary);border-color:var(--color-on-primary)}footer{background:var(--color-surface);padding:60px 0 20px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr 1fr;gap:40px}footer h3{font-size:var(--font-size-13);font-weight:var(--weight-bold)}footer p,footer button{font-size:var(--font-size-12)}.footer-grid>div>button{display:block;background:none;border:0;padding:6px 0}.footer-brand{font-family:var(--font-brand);font-size:var(--font-size-27);letter-spacing:2px;margin-bottom:20px}.footer-brand span{font:var(--font-size-10) var(--font-body);letter-spacing:3px}.footer-bottom{border-top:1px solid var(--color-border);padding-top:22px;margin-top:45px;display:flex;justify-content:space-between;font-size:var(--font-size-10);color:var(--color-text-muted);gap:20px}.page-heading{background:var(--color-surface);padding:65px 0}.page-heading h1{max-width:850px;margin-bottom:20px}.page-heading p:last-child{max-width:650px;margin-bottom:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.paper,.enquiry{padding:35px;background:var(--color-surface);border:1px solid var(--color-border)}.paper h3{margin-top:25px}.enquiry h2{font-size:var(--font-size-38)}.form-note{font-size:var(--font-size-12);background:var(--color-surface);padding:15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:var(--font-size-12);font-weight:var(--weight-medium);margin-bottom:20px}input,select,textarea{display:block;width:100%;padding:13px;border:1px solid var(--color-border-strong);background:var(--color-on-primary);margin-top:8px;color:var(--color-text);border-radius:0}input:focus,select:focus,textarea:focus{outline:2px solid var(--color-focus);outline-offset:2px}.checkbox{display:flex;align-items:start;gap:10px;font-weight:var(--weight-regular);line-height:var(--line-compact)}.checkbox input{width:18px;height:18px;flex-shrink:0;margin:0}.enquiry [role=status]{font-size:var(--font-size-13);margin-top:20px}.notice{padding:25px;background:var(--color-surface);margin-top:35px}.notice p{font-size:var(--font-size-14)}.step{display:flex;gap:25px;border-bottom:1px solid var(--color-border);padding:23px 0}.step>span{font:var(--font-size-27) var(--font-brand);color:var(--color-text-muted)}.step h3{font-size:var(--font-size-19);margin-bottom:8px}.step p{font-size:var(--font-size-14);margin:0}.faq{padding-top:0;max-width:900px}details{border-bottom:1px solid var(--color-border);padding:22px 0}summary{cursor:pointer;font-size:var(--font-size-16)}details p{padding-top:20px;font-size:var(--font-size-14);margin-bottom:0}.tabs{display:flex;gap:10px;margin-bottom:45px}.tabs button{background:none;border:1px solid var(--color-border-strong);padding:13px 23px}.tabs .selected{background:var(--color-primary);color:var(--color-on-primary)}.empty-state{padding:50px;background:var(--color-surface);max-width:800px}.empty-state p{max-width:550px}.gallery-photo{position:relative;border:0;background:none;padding:0;width:min(800px,100%);text-align:left}.gallery-photo img{height:430px}.gallery-photo span{display:block;background:var(--color-primary);color:var(--color-on-primary);padding:20px}.contact-row{padding:20px 0;border-bottom:1px solid var(--color-border)}.contact-row h3{font-size:var(--font-size-18);margin:0}.contact-row p{font-size:var(--font-size-14);margin:10px 0}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-modal-overlay);z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px;gap:20px}.lightbox img{max-width:1000px;max-height:75vh;object-fit:contain}.lightbox button{color:var(--color-on-primary);border:1px solid var(--color-on-primary);background:none;padding:12px 20px}.lightbox p{color:var(--color-on-primary);font-size:var(--font-size-12)}@media(min-width:1500px){.hero-copy{padding-left:calc((100vw - var(--content-width))/2)}}@media(max-width:1100px){.header-inner nav{gap:14px}.nav-item>button{font-size:var(--font-size-11)}.hero-copy{padding:60px 7%}.hero{min-height:560px}.intro,.life-preview,.split{gap:40px}.brand{font-size:var(--font-size-20)}}@media(max-width:800px){.header-inner{min-height:80px}.menu-toggle{display:block;background:none;border:1px solid var(--color-border-strong);padding:9px 15px}.header-inner nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--color-page);padding:20px 5%;border-bottom:1px solid var(--color-border)}.header-inner nav.open{display:block}.nav-item>button{font-size:var(--font-size-15);text-align:left;width:100%;padding:12px 0}.dropdown{display:block;position:static;padding:0 0 0 15px;box-shadow:none;background:none}.dropdown button:first-child{display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 5%}.hero figure{min-height:350px}.hero-foot{margin-top:35px}.hero h1{font-size:var(--font-size-59)}.values-strip .wrap{font-size:var(--font-size-10);gap:12px}.values-strip span+span{padding-left:12px}.intro,.life-preview,.split{grid-template-columns:1fr;gap:25px}.section{padding-top:var(--section-space-mobile);padding-bottom:var(--section-space-mobile)}.program-grid{grid-template-columns:1fr;gap:10px}.program{padding-top:20px}.number{margin-bottom:20px}.program h3{max-width:none}.section-top{align-items:start;flex-direction:column;gap:10px}.news-grid{grid-template-columns:1fr;gap:30px}.cta .wrap{align-items:start;flex-direction:column}.cta h2{font-size:var(--font-size-41)}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-bottom{flex-direction:column;gap:12px}.form-grid{grid-template-columns:1fr;gap:0}.enquiry,.paper{padding:25px}.page-heading{padding:45px 0}.page-heading h1{font-size:var(--font-size-51)}.image-panel img,.gallery-photo img{height:320px}.utility,.utility button{font-size:var(--font-size-10)}.empty-state{padding:30px}.faq{padding-top:20px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.hero-copy .hero-welcome{font-weight:var(--weight-regular)}.hero-welcome strong{font-size:var(--font-welcome-school);font-weight:var(--weight-bold);color:var(--color-text);letter-spacing:1px}.social-links .social-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--social-icon-size);height:var(--social-icon-size);border-radius:50%;color:var(--color-text)}.social-icon-placeholder{cursor:default}.social-links a.social-icon:hover{background:var(--color-border)}.utility .wrap .admissions-announcement{border:1px solid var(--color-border-strong);border-radius:var(--button-radius);padding:10px 14px;font-weight:var(--weight-semibold);animation:admissions-blink var(--admissions-blink-duration) ease-in-out 2}.admissions-announcement:hover,.admissions-announcement:focus-visible{animation:none}@keyframes admissions-blink{0%,to{opacity:1}50%{opacity:.5}}@media(prefers-reduced-motion:reduce){.utility .wrap .admissions-announcement{animation:none}}.combined-learning-strip .wrap{justify-content:space-between;flex-wrap:nowrap;gap:28px}.learning-partnership-message{margin:0;font-size:var(--font-size-13);font-weight:var(--weight-semibold);color:var(--color-text)}.learning-pathways{display:flex;align-items:center;gap:16px;flex-shrink:0}.learning-pathways .curriculum-options{flex-wrap:nowrap}@media(max-width:1100px){.combined-learning-strip .wrap{flex-direction:column;gap:12px;text-align:center}}@media(max-width:600px){.learning-pathways{flex-direction:column;gap:10px}.learning-pathways .curriculum-options{gap:8px}.learning-pathways .curriculum-options>span{padding:8px 12px;font-size:var(--font-size-13)}}.branch-card>a.branch-action{display:flex;align-items:center;gap:10px;min-height:44px}.contact-icon{flex-shrink:0}.utility .wrap,.utility .wrap button{font-size:var(--font-topbar)}.program-grid .program h3{max-width:none;font-size:var(--font-program-title)}.hero .hero-gallery .hero-gallery-slide{min-height:var(--hero-building-height)}@media(max-width:800px){.program-grid .program h3{font-size:var(--font-size-23)}.hero .hero-gallery .hero-gallery-slide{min-height:420px}}.program-section .section-top>div{min-width:0}.program-section .section-top h2{font-size:var(--font-program-heading)}.program h3{max-width:none;font-size:var(--font-program-title);letter-spacing:-.3px}.program-grid,.program,.header-inner,.footer-grid>div,.form-grid>label{min-width:0}.form-grid input,.form-grid select{min-width:0;max-width:100%}.footer-grid{overflow-wrap:anywhere}@media(min-width:1101px){.program-section .section-top h2,.program h3{white-space:nowrap}}@media(max-width:1100px)and (min-width:801px){.header-inner{flex-wrap:wrap;padding-top:15px;padding-bottom:15px}.header-inner nav{flex-wrap:wrap}}@media(max-width:800px){.program h3{font-size:var(--font-size-23)}.program-section .section-top h2{white-space:normal}.social-links{gap:8px}.utility-contact,.hero-copy{min-width:0}}@media(max-width:420px){.footer-grid{grid-template-columns:minmax(0,1fr)}.brand{gap:8px;font-size:var(--font-size-18);letter-spacing:1px}.brand>span>span{letter-spacing:2px}.menu-toggle{padding:8px 10px}.hero h1{font-size:var(--font-size-48)}.hero-gallery-controls{padding-left:12px;padding-right:12px}.gallery-navigation{gap:6px}.tabs{flex-wrap:wrap}}.curriculum-strip{background:var(--color-page);border-bottom:1px solid var(--color-border)}.curriculum-strip .wrap{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:20px;padding-top:14px;padding-bottom:14px}.curriculum-label{font-size:var(--font-size-13);color:var(--color-text-secondary)}.curriculum-options{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.curriculum-options>span{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--button-radius);padding:8px 20px;font-size:var(--font-size-15);font-weight:var(--weight-semibold)}.social-links{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.social-links>span:first-child{font-weight:var(--weight-semibold)}.social-placeholder{color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--button-radius);padding:4px 8px}.utility .wrap{flex-wrap:wrap;gap:12px}.utility,.utility button{font-size:var(--font-topbar)}.utility-contact a{display:inline-flex;gap:8px;align-items:center}.utility-contact svg{flex-shrink:0}.hero .hero-gallery-slide{min-height:var(--hero-building-height)}.hero .hero-gallery-slide>img{object-position:center}.reviews-section{background:var(--color-surface)}.review-filters{margin-bottom:0;flex-wrap:wrap}.sample-review-note{font-size:var(--font-size-12);color:var(--color-text-muted);margin-bottom:25px}.reviews-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--purpose-gap)}.review-card,.branch-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow);padding:var(--card-padding)}.review-rating{display:inline-flex;align-items:center;gap:4px;color:var(--color-text)}.review-rating>span{margin-left:8px;font-size:var(--font-size-12)}.review-card blockquote{margin:24px 0;font-size:var(--font-size-16);line-height:var(--line-body);color:var(--color-text-secondary)}.review-author{display:flex;gap:12px;align-items:center}.review-avatar{width:42px;height:42px;border-radius:50%;background:var(--color-surface);display:grid;place-items:center}.review-author strong{display:block;font-size:var(--font-size-14);font-weight:var(--weight-semibold)}.review-author div>span{display:block;margin-top:4px;font-size:var(--font-size-12);color:var(--color-text-muted)}.branches-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:var(--purpose-gap)}.branch-card address{margin-bottom:20px}.branch-card>a{display:block;width:fit-content;margin-top:12px;color:var(--color-text);font-size:var(--font-size-14)}.admission-transport,.faq{scroll-margin-top:130px}@media(max-width:800px){.reviews-grid{grid-template-columns:1fr}.hero .hero-gallery-slide{min-height:420px}}.partnership-strip{background:var(--color-primary);color:var(--color-on-primary)}.partnership-strip .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:16px;padding-bottom:16px}.partnership-strip p{color:inherit;font-size:var(--font-size-13);font-weight:var(--weight-medium);margin:0}.partnership-strip button{color:inherit;background:none;border:0;text-decoration:underline;text-underline-offset:5px;font-size:var(--font-size-12);padding:5px 0;flex-shrink:0}.partnership-strip button:focus-visible{outline-color:var(--color-on-primary)}.school-highlights{scroll-margin-top:120px;background:var(--color-surface)}.highlights-heading{max-width:800px;margin:0 auto 40px;text-align:center}.highlights-heading h2{font-size:var(--font-size-38)}.highlights-heading>p:last-child{font-size:var(--font-size-15)}.highlights-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--highlight-grid-gap)}.highlight-card{padding:var(--card-padding);background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow)}.highlight-label{display:inline-flex;align-items:center;min-height:var(--highlight-label-height);padding:0 15px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--button-radius);font-size:var(--font-size-11);font-weight:var(--weight-bold);letter-spacing:1px;margin-bottom:28px}.highlight-card h3{font-size:var(--font-size-23)}.highlight-card p{font-size:var(--font-size-14);margin-bottom:0}@media(max-width:1100px){.highlights-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.partnership-strip .wrap{flex-direction:column;align-items:flex-start;gap:6px}.highlights-grid{grid-template-columns:minmax(0,1fr)}}.hero-gallery{min-width:0;position:relative;display:flex;flex-direction:column;background:var(--color-surface)}.hero-gallery-track{display:flex;flex:1;min-height:0;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;position:relative}.hero .hero-gallery-slide{flex:0 0 100%;scroll-snap-align:start;min-height:480px;margin:0;position:relative}.hero .hero-gallery-slide>img{width:100%;height:100%;position:absolute;object-fit:cover;filter:none}.hero .hero-gallery-slide figcaption{bottom:0;left:0;right:0;padding:70px 30px 25px;background:linear-gradient(transparent,var(--color-image-overlay))}.hero-gallery-slide figcaption strong{display:block;font-family:var(--font-heading);font-size:var(--font-size-36);font-weight:var(--weight-regular);line-height:var(--line-title);max-width:400px}.hero-gallery-slide figcaption span{display:block;margin-top:12px;font-size:var(--font-size-10)}.hero-gallery-controls{min-height:var(--gallery-control-height);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 20px;background:var(--color-page)}.hero-gallery-controls button{background:var(--color-page);border:1px solid var(--color-border);border-radius:var(--button-radius);padding:9px 12px;font-size:var(--font-size-12)}.hero-gallery-controls>button{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.hero-gallery-controls button:disabled{opacity:.4;cursor:default}.gallery-navigation{display:flex;align-items:center;gap:10px}.gallery-navigation span{font-size:var(--font-size-12)}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--purpose-gap)}.gallery-card{text-align:left;padding:0;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--card-radius);background:var(--color-card);box-shadow:var(--card-shadow)}.gallery-card img{height:var(--gallery-image-height)}.gallery-card-copy{display:block;padding:20px}.gallery-card-copy strong{display:block;font-size:var(--font-size-16);font-weight:var(--weight-medium)}.gallery-card-copy>span{display:block;font-size:var(--font-size-12);color:var(--color-text-muted);margin-top:12px}.gallery-more{margin-top:30px}.gallery-unavailable{display:grid;place-items:center;min-height:var(--gallery-image-height);padding:30px;background:var(--color-surface);color:var(--color-text-secondary)}.gallery-dialog{max-width:min(1000px,94vw);max-height:94vh;border:1px solid var(--color-border);border-radius:var(--card-radius);background:var(--color-page);padding:20px}.gallery-dialog::backdrop{background:var(--color-modal-overlay)}.gallery-dialog img{margin-top:20px;max-height:70vh;object-fit:contain}.gallery-dialog p{margin:15px 0 0;font-size:var(--font-size-14)}@media(max-width:800px){.hero .hero-gallery-slide{min-height:350px}.gallery-grid{grid-template-columns:1fr}}.contact-heading{text-align:center;margin-bottom:40px}.contact-heading h1{margin-bottom:20px}.contact-heading .eyebrow{margin-bottom:16px}.contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:var(--contact-column-gap);align-items:stretch}.contact-info-card{display:flex;flex-direction:column;gap:var(--contact-info-gap);padding:var(--card-padding);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--card-radius)}.contact-info-card h2{font-family:var(--font-body);font-size:var(--font-size-16);font-weight:var(--weight-semibold);line-height:var(--line-title);letter-spacing:normal;margin-bottom:10px}.contact-info-card p,.contact-info-card address,.contact-info-card a{font-size:var(--font-size-14);overflow-wrap:anywhere}.contact-info-card a{color:var(--color-text);text-underline-offset:4px}.contact-info-card p,.contact-info-card address{margin:0 0 12px}.contact-form h2{font-family:var(--font-body);font-size:var(--font-size-23);font-weight:var(--weight-semibold);letter-spacing:normal}.footer-contact address{margin-bottom:16px}@media(max-width:800px){.contact-layout{grid-template-columns:minmax(0,1fr)}}.school-logo{width:var(--logo-size);height:var(--logo-size);object-fit:contain;border-radius:50%;flex-shrink:0}.footer-logo{width:var(--footer-logo-size);height:var(--footer-logo-size);margin-bottom:18px}.utility-contact{display:flex;gap:20px}.utility a,footer a,.contact-row a{color:inherit;text-underline-offset:4px;overflow-wrap:anywhere}.utility a{text-decoration:none}.utility a:hover{text-decoration:underline}.brand-locality{display:block;font-family:var(--font-body);font-size:var(--font-size-10);letter-spacing:normal;font-weight:var(--weight-regular);margin-top:6px}address{font-style:normal;color:var(--color-text-secondary);line-height:var(--line-body);font-size:var(--font-size-14);margin-top:12px}footer address,footer a{font-size:var(--font-size-12)}.footer-grid a{display:block;margin-top:10px}@media(max-width:800px){.utility .wrap{flex-wrap:wrap;gap:10px}.utility-contact{flex-wrap:wrap;gap:8px 15px}}.about-purpose{background:var(--color-surface)}.purpose-grid,.founders-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--purpose-gap)}.purpose-card,.founder-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--card-radius);box-shadow:var(--card-shadow)}.purpose-card{padding:var(--card-padding)}.purpose-marker{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:var(--button-radius);background:var(--color-primary);color:var(--color-on-primary);font-size:var(--font-size-13);margin-bottom:20px}.purpose-card h2{font-family:var(--font-body);font-size:var(--font-size-20);font-weight:var(--weight-semibold);letter-spacing:normal;line-height:var(--line-title);margin-bottom:12px}.purpose-card p{font-size:var(--font-size-14);margin-bottom:0}.about-draft{font-size:var(--font-size-12);color:var(--color-text-muted);margin:20px 0 0}.founders-heading{text-align:center;max-width:var(--leadership-heading-width);margin:0 auto 40px}.founders-heading .eyebrow{margin-bottom:12px}.founders-heading h2{margin-bottom:16px}.founder-card{overflow:hidden}.founder-portrait,.founder-placeholder{height:var(--founder-photo-height)}.founder-portrait{object-position:var(--founder-photo-position)}.founder-placeholder{background:var(--color-surface);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--color-text-muted)}.founder-placeholder>span{font-size:var(--font-size-14)}.founder-placeholder small{font-size:var(--font-size-12)}.portrait-silhouette{width:110px;height:130px;display:flex;align-items:center;flex-direction:column;gap:10px;margin-bottom:12px}.portrait-silhouette span:first-child{width:56px;height:56px;border-radius:50%;background:var(--color-border-strong)}.portrait-silhouette span:last-child{width:110px;height:64px;border-radius:60px 60px 12px 12px;background:var(--color-border-strong)}.founder-details{padding:var(--card-padding)}.founder-details .eyebrow{margin-bottom:12px}.founder-details h3{font-size:var(--font-size-23);margin-bottom:12px}.founder-details>p:last-child{font-size:var(--font-size-14);margin-bottom:0}.school-story{padding-top:0}.school-story>p:last-child{max-width:var(--leadership-heading-width)}@media(max-width:800px){.purpose-grid,.founders-grid{grid-template-columns:1fr}}.program,.news-grid article,.paper,.enquiry,.notice,.empty-state,.contact-row{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--card-radius);padding:var(--card-padding);box-shadow:var(--card-shadow)}.program,.news-grid article{transition:box-shadow var(--transition-duration) ease}.program:hover,.news-grid article:hover{box-shadow:var(--card-shadow-hover)}.button,.tabs button,.menu-toggle{border-radius:var(--button-radius)}input,select,textarea{border-radius:var(--input-radius)}.image-panel,.gallery-photo{border-radius:var(--card-radius);overflow:hidden}.contact-row{margin-top:20px}.form-note{border:1px solid var(--color-border);border-radius:var(--input-radius)}.utility{background:var(--color-surface);color:var(--color-text);border-bottom:1px solid var(--color-border)}.utility button{color:var(--color-text)}.cta{background:var(--color-surface);color:var(--color-text)}.cta .eyebrow{color:var(--color-text-muted)}.cta .button{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.cta .button:hover{background:var(--color-primary-hover)}@media(prefers-reduced-motion:reduce){.program,.news-grid article{transition:none}}.footer-bottom{align-items:center;font-size:var(--font-footer-credit);font-weight:var(--weight-bold);color:var(--color-text);border-top:1px solid var(--color-border);padding-top:24px;padding-bottom:8px;gap:20px}.powered-by{display:inline-flex;align-items:center;gap:14px;max-width:100%;line-height:var(--line-compact)}.powered-by img{width:var(--powered-by-logo-size);height:var(--powered-by-logo-size);object-fit:contain;flex-shrink:0;border:0;box-shadow:none}.founder-portrait.founder-portrait-full{object-fit:contain;object-position:center;background:var(--color-card)}.learning-gallery-grid .gallery-card img{height:var(--learning-gallery-image-height);object-fit:contain;background:var(--color-surface)}.album-count{font-size:var(--font-size-13);font-weight:var(--weight-semibold);border:1px solid var(--color-border);border-radius:var(--button-radius);padding:10px 16px;white-space:nowrap}@media(max-width:1100px)and (min-width:801px){.learning-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.admission-transport .transport-phone{color:var(--color-text);font-size:var(--font-size-20);font-weight:var(--weight-bold)}.hero-learning-details a{color:inherit;text-decoration:underline;text-underline-offset:4px}.footer-contact>a,.footer-grid .footer-contact>button{display:flex;align-items:center;gap:10px;min-height:36px}.footer-contact>a span{min-width:0;overflow-wrap:anywhere}.highlights-heading .eyebrow{font-size:var(--font-approach-eyebrow);color:var(--color-text);font-weight:var(--weight-bold)}.highlights-heading>p:last-child{color:var(--color-text);font-weight:var(--weight-medium)}.highlight-card .highlight-label{font-size:var(--font-highlight-label);font-weight:var(--weight-bold);color:var(--color-text)}.brochure-action{margin-top:24px}.brochure-action p{margin:8px 0 0;font-size:var(--font-size-12)}.brochure-action button:disabled{color:var(--color-text-muted);cursor:default;border-color:var(--color-border)}.enquiry .button:disabled{opacity:.65;cursor:wait}.contact-link-list>a{display:block;width:fit-content;margin-top:10px}.hero-copy .hero-welcome{font-size:var(--font-welcome-prefix);font-weight:var(--weight-bold);letter-spacing:1px}.values-strip .wrap{font-size:var(--font-values-strip);font-weight:var(--weight-bold)}.hero .hero-learning-details p{font-size:var(--font-partnership-caption);font-weight:var(--weight-bold);color:var(--color-text)}.hero-gallery-controls .gallery-navigation button{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary);font-size:var(--font-size-13);font-weight:var(--weight-semibold)}.hero-gallery-controls .gallery-navigation button:hover:not(:disabled){background:var(--color-primary-hover)}.hero-gallery-controls .gallery-navigation button:disabled{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text-muted);opacity:1}.gallery-navigation>span{font-weight:var(--weight-semibold)}@media(max-width:800px){.values-strip .wrap{flex-wrap:wrap;justify-content:center;row-gap:14px;text-align:center}.values-strip span+span{border:0;padding-left:0}.values-strip .wrap>span{padding:0 10px}}.utility{padding:5px 0}.utility .wrap{justify-content:space-between;gap:12px 24px}.social-links{gap:5px}.social-links>span:first-child{margin-right:10px;font-size:var(--font-size-12);color:var(--color-text-muted);font-weight:var(--weight-medium)}.utility .social-icon{width:32px;height:32px}.utility-contact{gap:24px}.utility-contact a{font-size:var(--font-size-13)}.header-inner{min-height:var(--header-height);gap:30px}.header-inner nav{gap:var(--header-nav-gap);align-items:center}.nav-item>button{font-size:var(--font-header-nav)}.nav-admissions>button{padding:13px 18px;background:var(--color-primary);color:var(--color-on-primary);border-radius:var(--button-radius);font-weight:var(--weight-semibold);animation:admissions-blink var(--admissions-blink-duration) ease-in-out 2}.nav-admissions>button.active{box-shadow:none}.nav-admissions>button:hover,.nav-admissions>button:focus-visible{animation:none;background:var(--color-primary-hover)}.nav-admissions .dropdown{left:auto;right:0;min-width:240px}.hero-learning-details{border-top:1px solid var(--color-border);margin-top:32px;padding-top:22px}.hero-curriculum-options{display:flex;align-items:center;gap:0;flex-wrap:wrap}.hero-curriculum-options span{font-size:var(--font-size-14);font-weight:var(--weight-semibold);line-height:var(--line-compact)}.hero-curriculum-options span+span{border-left:1px solid var(--color-border-strong);margin-left:16px;padding-left:16px}.hero-learning-details p{font-size:var(--font-size-12);line-height:var(--line-compact);margin:12px 0 0;color:var(--color-text-muted)}@media(max-width:1100px)and (min-width:801px){.header-inner{flex-wrap:nowrap;gap:16px}.header-inner nav{gap:13px}.nav-item>button{font-size:var(--font-size-11)}.nav-admissions>button{padding:12px}}@media(max-width:800px){.utility .wrap{justify-content:center;gap:4px}.utility-contact{justify-content:center;gap:8px 18px}.header-inner{min-height:80px}.header-inner nav.open{display:flex;align-items:stretch;flex-direction:column;gap:4px;max-height:75vh;overflow-y:auto}.nav-item>button{font-size:var(--font-size-14)}.nav-admissions>button{text-align:center}.nav-admissions .dropdown{padding:8px 0}.hero-learning-details{margin-top:25px;padding-top:20px}}@media(prefers-reduced-motion:reduce){.nav-admissions>button{animation:none}}.hero-copy,.intro>div,.life-preview>div,.split>div,.contact-layout>*{min-width:0}.enquiry textarea{resize:vertical;max-width:100%}@media(max-width:1100px){.header-inner{min-height:80px;flex-wrap:nowrap}.menu-toggle{display:block;flex-shrink:0;background:var(--color-page);border:1px solid var(--color-border-strong);border-radius:var(--button-radius);padding:10px 15px;min-height:var(--touch-target)}.header-inner nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--color-page);padding:20px 5%;border-bottom:1px solid var(--color-border)}.header-inner nav.open{display:flex;flex-direction:column;align-items:stretch;gap:4px;max-height:75dvh;overflow-y:auto}.nav-item>button{text-align:left;width:100%;padding:12px 0;font-size:var(--font-size-14);min-height:var(--touch-target)}.nav-admissions>button{text-align:center;padding:13px 18px}.nav-item .dropdown{display:block;position:static;min-width:0;padding:0 0 0 15px;box-shadow:none;background:none}.nav-item .dropdown button{min-height:var(--touch-target)}.nav-admissions .dropdown{padding:8px 0}.nav-admissions .dropdown button:first-child{display:block}}@media(max-width:800px){.hero h1{font-size:var(--font-hero-mobile);overflow-wrap:break-word}input,select,textarea{font-size:var(--font-size-16)}.button,.tabs button,.hero-gallery-controls button{min-height:var(--touch-target)}.utility-contact a{min-height:36px}.gallery-grid,.program-grid,.founders-grid{grid-template-columns:minmax(0,1fr)}.page-heading h1{font-size:var(--font-hero-mobile);overflow-wrap:break-word}}@media(max-width:360px){.header-inner{gap:10px}.brand .school-logo{width:48px;height:48px}.hero-gallery-controls{gap:8px}.hero-gallery-controls>button{width:100%}}
