/* Approved Workday-led school website. Scoped away from the existing sign-in modal. */
@font-face{font-family:Hanken;src:url('/fonts/school-website/hanken.woff2') format('woff2');font-weight:100 900;font-display:swap}
.school-public-site{--navy:#022043;--blue:#0057ae;--cream:#fcf9ef;--orange:#e86c3a;--gold:#b9851d;--muted:#46566b;--line:#d6dee6;--white:#fff;--font:Hanken,Arial,Helvetica,sans-serif;color-scheme:light}
.school-public-site *{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body.school-public-page{margin:0;color:var(--navy);background:var(--white);font:18px/1.6 var(--font)}.school-public-site button,.school-public-site input{font:inherit}.school-public-site button,.school-public-site a,.school-public-site summary{-webkit-tap-highlight-color:transparent}.school-public-site button,.school-public-site summary{cursor:pointer}.school-public-site button{border:0}.school-public-site button:disabled{cursor:default}.school-public-site a{color:inherit;text-decoration:none}.school-public-site a:hover{text-decoration:underline;text-underline-offset:5px}.school-public-site button:focus-visible,.school-public-site a:focus-visible,.school-public-site summary:focus-visible,.school-public-site input:focus-visible,.school-public-site video:focus-visible{outline:3px solid #277acb;outline-offset:5px}.school-public-site h1,.school-public-site h2,.school-public-site h3,.school-public-site p,.school-public-site figure{margin:0}.school-public-site h1,.school-public-site h2,.school-public-site h3{text-wrap:balance}.school-public-site img{display:block;max-width:100%}.school-public-site svg{display:block;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.school-public-site [hidden]{display:none!important}.school-public-site section[id],.school-public-site details[id]{scroll-margin-top:95px}.school-public-site .sw-skip-link{position:fixed;top:-100px;left:18px;z-index:100;background:white;color:var(--blue);padding:12px 20px}.school-public-site .sw-skip-link:focus{top:12px}.school-public-site .sw-masthead{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:72px;padding:9px max(32px,calc((100vw - 1320px)/2));border-bottom:1px solid var(--line)}.school-public-site .sw-school-brand{display:flex;align-items:center;gap:14px;font-size:21px;font-weight:750;line-height:1.2;min-width:0}.school-public-site .sw-school-brand img{object-fit:contain;width:40px;height:48px;flex:none}.school-public-site .sw-masthead-utilities{display:flex;align-items:center;gap:27px}.school-public-site .sw-contact-utility{display:flex;align-items:center;gap:10px;font-size:14px;min-height:44px}.school-public-site .sw-contact-utility svg{width:20px;height:20px}.school-public-site .sw-icon-button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:inherit;flex:none;border-radius:50%;font-size:29px;line-height:1}.school-public-site .sw-icon-button:hover{background:#edf3f9}.school-public-site .sw-icon-button svg{width:23px;height:23px}.school-public-site .sw-powered-mark{font-size:13px;color:var(--muted)}.school-public-site .sw-powered-mark strong{color:var(--navy);font-size:17px;font-weight:750;margin-left:3px}.school-public-site .sw-navigation-bar{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line)}.school-public-site .sw-navigation-inner{max-width:1384px;margin:auto;min-height:64px;padding:8px 32px;display:flex;align-items:center;gap:35px}.school-public-site .sw-section-brand{font-size:21px;font-weight:750;white-space:nowrap}.school-public-site .sw-desktop-navigation{display:flex;gap:25px;align-items:stretch;align-self:stretch;font-size:15px;font-weight:650}.school-public-site .sw-desktop-navigation>a{min-height:44px;display:inline-flex;align-items:center;position:relative}.school-public-site .sw-desktop-navigation>a::after{content:'';position:absolute;height:3px;bottom:-8px;left:-5px;right:-5px;background:transparent}.school-public-site .sw-desktop-navigation>a.sw-active::after{background:var(--navy)}.school-public-site .sw-navigation-portal{margin-left:auto;white-space:nowrap}.school-public-site .sw-menu-toggle{display:none;background:transparent;color:var(--navy);min-height:44px;align-items:center;gap:8px;font-size:15px}.school-public-site .sw-menu-toggle svg{width:20px;height:20px}.school-public-site .sw-button{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:11px 25px;border-radius:28px;font-size:16px;font-weight:750;line-height:1.4;border:1px solid transparent;transition:background .18s,color .18s}.school-public-site .sw-button-primary{background:var(--blue);color:var(--white)}.school-public-site .sw-button-primary:hover:not(:disabled){background:#03447f;text-decoration:none}.school-public-site .sw-button-primary:disabled{background:#a1b5cc;color:#fff}.school-public-site .sw-button svg{width:21px;height:21px;stroke-width:1.8}.school-public-site .sw-button-white{background:white;color:var(--blue)}.school-public-site .sw-button-white:hover{background:#e7effa;text-decoration:none}.school-public-site .sw-motto-band{display:flex;align-items:center;justify-content:center;gap:13px;min-height:50px;background:#192e60;color:white;padding:12px 25px}.school-public-site .sw-motto-band p{font-size:17px;line-height:1.4;font-weight:550}.school-public-site .sw-motto-band svg{width:25px;height:25px;color:#e8c46b;stroke-width:1.4}.school-public-site .sw-hero{position:relative;isolation:isolate;padding:64px 32px 44px;overflow:hidden}.school-public-site .sw-hero-inner{max-width:1320px;margin:auto;display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.72fr);gap:50px;align-items:start}.school-public-site .sw-hero-copy{min-width:0;position:relative;z-index:2}.school-public-site .sw-section-label{font-size:14px;font-weight:750;line-height:1.4;text-transform:uppercase;letter-spacing:.02em;padding-bottom:15px;margin-bottom:24px;position:relative}.school-public-site .sw-section-label::after{content:'';position:absolute;left:0;bottom:0;width:60px;height:3px;background:var(--orange)}.school-public-site .sw-hero h1{font-size:clamp(48px,4.35vw,64px);line-height:1.06;font-weight:800;letter-spacing:-.045em;margin:0 0 26px;max-width:520px;overflow-wrap:anywhere}.school-public-site .sw-original-message{font-size:18px;line-height:1.55;font-weight:500;max-width:68ch}.school-public-site .sw-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 25px;margin-top:25px}.school-public-site .sw-text-link{color:var(--blue);display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:16px;line-height:1.4;font-weight:650;background:transparent;padding:0;text-align:left;text-decoration:underline;text-underline-offset:5px}.school-public-site .sw-text-link svg{width:22px;height:22px;stroke-width:1.8}.school-public-site .sw-welcome-film{align-self:start;position:relative;z-index:2;min-width:0;margin-top:0}.school-public-site .sw-film-window{position:relative;aspect-ratio:16/9;background:#11253c;border-radius:6px;overflow:hidden}.school-public-site .sw-film-poster,.school-public-site #school-welcome-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.school-public-site .sw-film-poster{z-index:0}.school-public-site #school-welcome-video{z-index:1}.school-public-site .sw-video-start{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;width:94px;height:94px;border-radius:50%;background:var(--blue);display:flex;align-items:center;justify-content:center;color:white;box-shadow:0 4px 20px #00224c20;transition:background .18s,box-shadow .18s}.school-public-site .sw-video-start:hover{background:#03447f;box-shadow:0 4px 24px #00224c50}.school-public-site .sw-video-start svg{width:44px;height:44px;fill:currentColor;stroke:none;margin-left:5px}.school-public-site .sw-film-window.sw-playing .sw-video-start{display:none}.school-public-site .sw-welcome-film figcaption{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:8px;font-size:13px;line-height:1.4;color:var(--muted)}.school-public-site .sw-film-controls{display:flex;align-items:center;gap:5px;flex:none}.school-public-site .sw-film-controls>button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 11px;background:transparent;color:var(--blue);font-weight:650;font-size:13px;border-radius:5px}.school-public-site .sw-film-controls>button:hover{background:#edf3fa}.school-public-site .sw-film-controls>button:last-child{width:44px;padding:10px}.school-public-site .sw-film-controls svg{width:21px;height:21px}.school-public-site .sw-media-feedback{font-size:14px;color:var(--blue);margin-top:8px;line-height:1.5}.school-public-site .sw-media-feedback[data-kind=error]{color:#99382c}.school-public-site .sw-media-feedback:empty{display:none}.school-public-site .sw-royal-glitter{position:absolute;inset:0;z-index:5;width:100%;height:100%;pointer-events:none}.school-public-site .sw-learning-strip{max-width:1320px;margin:auto;padding:45px 32px 68px;text-align:center}.school-public-site .sw-learning-strip h2{font-size:22px;line-height:1.4;letter-spacing:-.025em;font-weight:650;margin-bottom:33px}.school-public-site .sw-learning-links{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.school-public-site .sw-learning-links>a{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:94px;padding:8px 15px}.school-public-site .sw-learning-links strong{font-size:clamp(27px,2.7vw,39px);line-height:1.2;letter-spacing:-.035em;font-weight:750;color:var(--navy)}.school-public-site .sw-learning-links span{font-size:14px;color:var(--muted);margin-top:12px}.school-public-site .sw-page-section{padding:86px 32px}.school-public-site .sw-section-container{max-width:1240px;margin:auto}.school-public-site .sw-page-section h2,.school-public-site .sw-contact-section h2{font-size:clamp(36px,3.5vw,48px);line-height:1.14;letter-spacing:-.04em;font-weight:800}.school-public-site .sw-section-introduction>p:not(.sw-section-label){font-size:20px;line-height:1.6;margin-top:25px;max-width:52ch;font-weight:500}.school-public-site .sw-section-introduction>.sw-text-link{margin-top:28px}.school-public-site .sw-learning-section{background:var(--cream)}.school-public-site .sw-learning-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:90px;align-items:start}.school-public-site .sw-academic-sections{min-width:0}.school-public-site .sw-academic-detail{background:white;border:1px solid #d7dde3;border-radius:7px;margin-bottom:18px;overflow:hidden}.school-public-site .sw-academic-detail summary{padding:24px 25px;display:flex;justify-content:space-between;gap:25px;align-items:center;list-style:none}.school-public-site .sw-academic-detail summary::-webkit-details-marker{display:none}.school-public-site .sw-academic-detail summary>span:first-child{display:grid;grid-template-columns:45px 1fr;gap:6px 18px;align-items:center;min-width:0}.school-public-site .sw-academic-detail summary svg{width:38px;height:38px;grid-row:1/3;color:var(--blue);stroke-width:1.5}.school-public-site .sw-academic-detail strong{font-size:26px;line-height:1.2;letter-spacing:-.025em}.school-public-site .sw-academic-detail small{font-size:15px;line-height:1.5;color:var(--muted);font-weight:400}.school-public-site .sw-disclosure-symbol{width:20px;height:20px;position:relative;color:var(--blue);flex:none}.school-public-site .sw-disclosure-symbol::before,.school-public-site .sw-disclosure-symbol::after{content:'';position:absolute;background:currentColor;left:2px;right:2px;height:2px;top:9px}.school-public-site .sw-disclosure-symbol::after{transform:rotate(90deg);transition:transform .18s}.school-public-site details[open]>summary .sw-disclosure-symbol::after{transform:rotate(0deg)}.school-public-site .sw-academic-content{padding:0 25px 24px 88px;font-size:15px}.school-public-site .sw-form-tags{display:flex;flex-wrap:wrap;gap:9px;list-style:none;padding:0;margin:18px 0}.school-public-site .sw-form-tags li{background:#edf3f9;color:var(--navy);padding:6px 12px;border-radius:4px;font-size:14px}.school-public-site .sw-academic-content .sw-text-link{font-size:15px}.school-public-site .sw-school-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.school-public-site .sw-school-identity-art{position:relative;min-height:430px;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f1f6fc;border-radius:8px;overflow:hidden}.school-public-site .sw-school-sun{position:absolute;inset:0;width:100%;height:100%;stroke:#d9a43b;stroke-width:2;fill:none;z-index:-1}.school-public-site .sw-crest-circle{width:245px;height:245px;border-radius:50%;background:white;box-shadow:0 4px 25px #143b5e0b;display:flex;align-items:center;justify-content:center}.school-public-site .sw-crest-circle img{width:128px;height:145px;object-fit:contain}.school-public-site .sw-school-identity-art>p{font-size:20px;line-height:1.4;font-weight:650;margin-top:27px;background:#f1f6fc;padding:0 12px}.school-public-site .sw-admissions{background:#f4f7fb}.school-public-site .sw-admissions-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.school-public-site .sw-section-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:30px}.school-public-site .sw-admission-questions{padding-top:18px}.school-public-site .sw-admission-questions h3{font-size:26px;font-weight:750;letter-spacing:-.025em;margin-bottom:25px}.school-public-site .sw-admission-questions details{border-top:1px solid #c8d3df;padding:0}.school-public-site .sw-admission-questions summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;min-height:70px;padding:18px 0;font-size:18px;font-weight:650;line-height:1.4}.school-public-site .sw-admission-questions summary::-webkit-details-marker{display:none}.school-public-site .sw-admission-questions details>p{font-size:17px;line-height:1.7;padding:0 25px 23px 0;color:var(--muted)}.school-public-site .sw-admission-questions .sw-text-link{margin-bottom:24px}.school-public-site .sw-royal-quotation{padding:65px 32px 72px;background:var(--cream)}.school-public-site .sw-royal-quotation>.sw-section-container{display:grid;grid-template-columns:90px 1fr;gap:40px;max-width:1080px}.school-public-site .sw-quote-mark{width:64px;height:48px;fill:#d7a33b;stroke:none;margin-top:8px}.school-public-site .sw-royal-quotation blockquote{font-size:29px;line-height:1.5;font-weight:550;letter-spacing:-.025em;margin:0;max-width:950px}.school-public-site .sw-royal-quotation cite{display:block;font-style:normal;font-size:16px;font-weight:650;margin-top:25px;letter-spacing:0}.school-public-site .sw-news-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:38px}.school-public-site .sw-news-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:40px}.school-public-site .sw-notice-panel,.school-public-site .sw-calendar-panel{padding:33px 35px;border:1px solid var(--line);border-radius:6px}.school-public-site .sw-notice-panel>svg{width:40px;height:40px;color:var(--blue);margin-bottom:22px}.school-public-site .sw-notice-panel h3,.school-public-site .sw-calendar-panel h3{font-size:25px;font-weight:700;line-height:1.3;letter-spacing:-.025em}.school-public-site .sw-notice-panel p,.school-public-site .sw-calendar-panel p{margin-top:20px;font-size:17px;line-height:1.7;color:var(--muted)}.school-public-site .sw-calendar-panel{border:0;background:#edf4fb;display:flex;flex-direction:column;justify-content:center}.school-public-site .sw-calendar-panel .sw-text-link{margin-top:22px;align-self:start}.school-public-site .sw-contact-section{padding:70px 32px 78px;background:var(--navy);color:white}.school-public-site .sw-contact-layout{display:flex;align-items:center;justify-content:space-between;gap:60px}.school-public-site .sw-contact-section p{margin-top:25px;font-size:18px;color:#e0e8f1}.school-public-site .sw-contact-actions{display:flex;flex-direction:column;align-items:center;gap:22px}.school-public-site .sw-contact-actions .sw-button{min-width:260px}.school-public-site .sw-contact-email{font-size:18px;text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere;min-height:44px;display:flex;align-items:center}.school-public-site .sw-site-footer{padding:60px 32px 25px;background:white}.school-public-site .sw-footer-top{display:grid;grid-template-columns:1.25fr .7fr .85fr 1fr;gap:50px}.school-public-site .sw-footer-top>.sw-school-brand{align-self:start;font-size:21px;line-height:1.3;align-items:start}.school-public-site .sw-school-brand small{display:block;margin-top:10px;font-size:13px;font-weight:400;line-height:1.5}.school-public-site .sw-footer-column{min-width:0}.school-public-site .sw-footer-column h2{font-size:16px;line-height:1.4;font-weight:750;margin-bottom:18px}.school-public-site .sw-footer-column a,.school-public-site .sw-footer-column button{display:flex;align-items:center;min-height:44px;font-size:14px;background:transparent;color:var(--navy);padding:0;text-align:left;overflow-wrap:anywhere}.school-public-site .sw-footer-column p{font-size:14px;margin-top:18px}.school-public-site .sw-footer-column button:hover{text-decoration:underline;text-underline-offset:5px}.school-public-site .sw-footer-bottom{border-top:1px solid var(--line);margin-top:42px;padding-top:25px;display:flex;align-items:start;justify-content:space-between;gap:28px;font-size:12px}.school-public-site .sw-footer-bottom p{max-width:55ch}.school-public-site .sw-footer-bottom a{min-height:44px}.school-public-site .sw-preview-note{font-size:12px;color:var(--muted);text-align:center;margin-top:20px}
.school-public-site dialog{width:min(480px,calc(100vw - 24px));max-height:94dvh;padding:30px;border:1px solid #b4c5d7;border-radius:10px;color:var(--navy);background:white;box-shadow:0 20px 80px #00254b45;overflow:auto}.school-public-site dialog::backdrop{background:#001f43b0;backdrop-filter:blur(5px)}.school-public-site .sw-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.school-public-site .sw-dialog-heading h2{font-size:25px;line-height:1.3;letter-spacing:-.025em}.school-public-site .sw-school-menu{width:min(560px,calc(100vw - 24px))}.school-public-site .sw-school-menu nav{display:flex;flex-direction:column;margin-top:24px}.school-public-site .sw-school-menu nav a{min-height:56px;padding:13px 0;border-top:1px solid var(--line);font-size:20px;font-weight:550}.school-public-site .sw-school-menu nav button{margin-top:25px}.school-public-site .sw-close-portal{position:absolute;top:10px;right:10px}.school-public-site .sw-portal-identity{display:flex;align-items:center;gap:15px;padding-right:30px}.school-public-site .sw-portal-identity img{width:45px;height:54px;object-fit:contain}.school-public-site .sw-portal-identity>div>p{color:var(--blue);font-size:29px;font-weight:750;line-height:1.2}.school-public-site .sw-portal-identity h2{font-size:15px;line-height:1.4;font-weight:650;margin-top:6px;letter-spacing:0}.school-public-site .sw-demo-note{font-size:12px;line-height:1.5;padding:10px 12px;background:#edf3fa;color:#405670;margin:22px 0 18px}.school-public-site #preview-form>label:not(.sw-salutation){display:block;font-size:14px;margin:16px 0 8px}.school-public-site #preview-form input:not([type=checkbox]){width:100%;height:50px;padding:12px;border:1px solid #aabbd0;border-radius:5px;font-size:16px;background:white;color:var(--navy)}.school-public-site .sw-password-field{position:relative}.school-public-site .sw-password-field input{padding-right:70px!important}.school-public-site .sw-password-field button{position:absolute;right:3px;top:3px;min-height:44px;padding:6px 10px;background:white;color:var(--blue);font-size:13px;font-weight:650}.school-public-site .sw-recovery{display:block;min-height:44px;padding:8px 0;margin:6px 0 12px auto;background:transparent;color:var(--blue);font-size:14px;text-decoration:underline}.school-public-site .sw-salutation{display:flex;align-items:center;gap:14px;padding:15px;background:#fcf7e9;border:1px solid #c1a45a;border-radius:5px;min-height:62px;cursor:pointer;font-size:15px;font-weight:650}.school-public-site .sw-salutation input{width:22px;height:22px;flex:none;accent-color:var(--blue)}.school-public-site .sw-gate-help{font-size:12px;color:var(--muted);line-height:1.5;margin:9px 0 20px}.school-public-site #preview-sign-in{width:100%}.school-public-site .sw-preview-feedback{font-size:14px;line-height:1.6;margin-top:13px}.school-public-site .sw-preview-feedback:empty{display:none}.school-public-site .sw-portal-quote{font-size:13px;color:var(--muted);line-height:1.6;font-style:italic;padding-top:20px;border-top:1px solid var(--line);margin:25px 0 15px}.school-public-site .sw-portal-quote cite{display:block;font-size:12px;font-style:normal;margin-top:10px}.school-public-site .sw-account-help{display:flex;align-items:center;min-height:44px;font-size:13px;color:var(--blue);text-decoration:underline;text-underline-offset:4px}.school-public-site .sw-portal-attribution{font-size:12px;color:var(--muted);line-height:1.5;margin-top:10px}
@media(min-width:1600px){.school-public-site .sw-hero{padding-top:72px;padding-bottom:52px}.school-public-site .sw-hero-inner{gap:65px}.school-public-site .sw-hero h1{font-size:66px}.school-public-site .sw-original-message{font-size:19px}}
@media(max-width:1150px){.school-public-site .sw-masthead-utilities{gap:18px}.school-public-site .sw-powered-mark{display:none}.school-public-site .sw-navigation-inner{gap:26px}.school-public-site .sw-desktop-navigation{gap:19px;font-size:14px}.school-public-site .sw-section-brand{font-size:19px}.school-public-site .sw-hero-inner{grid-template-columns:minmax(290px,.85fr) minmax(0,1.65fr);gap:35px}.school-public-site .sw-hero h1{font-size:53px}.school-public-site .sw-original-message{font-size:17px}.school-public-site .sw-welcome-film figcaption{flex-wrap:wrap;gap:4px}.school-public-site .sw-learning-layout,.school-public-site .sw-school-layout,.school-public-site .sw-admissions-layout{gap:60px}.school-public-site .sw-academic-detail summary{padding:23px 20px}.school-public-site .sw-academic-detail strong{font-size:24px}.school-public-site .sw-academic-content{padding-left:80px}.school-public-site .sw-footer-top{gap:30px}.school-public-site .sw-footer-top>.sw-school-brand{font-size:18px}.school-public-site .sw-contact-layout{gap:40px}}
@media(max-width:900px){.school-public-site .sw-masthead{padding:14px 25px;min-height:82px}.school-public-site .sw-school-brand{font-size:19px}.school-public-site .sw-contact-utility{font-size:13px}.school-public-site .sw-navigation-inner{padding-inline:25px;min-height:68px;gap:24px}.school-public-site .sw-section-brand{font-size:18px}.school-public-site .sw-desktop-navigation{gap:17px}.school-public-site .sw-desktop-navigation>a:first-child{display:none}.school-public-site .sw-navigation-portal{padding:11px 20px;font-size:14px}.school-public-site .sw-hero{padding:48px 25px 35px}.school-public-site .sw-hero-inner{display:flex;flex-direction:column;gap:34px}.school-public-site .sw-hero-copy{max-width:680px}.school-public-site .sw-hero h1{font-size:54px}.school-public-site .sw-original-message{font-size:18px;line-height:1.6}.school-public-site .sw-welcome-film{width:100%}.school-public-site .sw-section-label{font-size:12px}.school-public-site .sw-welcome-film{margin-top:0}.school-public-site .sw-video-start{width:72px;height:72px}.school-public-site .sw-video-start svg{width:36px;height:36px}.school-public-site .sw-film-controls>button{font-size:12px;padding:8px}.school-public-site .sw-film-controls{gap:0}.school-public-site .sw-welcome-film figcaption{font-size:12px}.school-public-site .sw-hero-actions{gap:12px 20px}.school-public-site .sw-hero-actions .sw-button{padding:11px 20px}.school-public-site .sw-hero-actions .sw-text-link{font-size:15px}.school-public-site .sw-learning-strip{padding:35px 25px 50px}.school-public-site .sw-learning-links{gap:18px}.school-public-site .sw-learning-links span{font-size:13px}.school-public-site .sw-page-section{padding:65px 25px}.school-public-site .sw-learning-layout{grid-template-columns:.82fr 1.18fr;gap:35px}.school-public-site .sw-section-introduction>p:not(.sw-section-label){font-size:18px}.school-public-site .sw-page-section h2,.school-public-site .sw-contact-section h2{font-size:38px}.school-public-site .sw-academic-detail summary{padding:20px 18px;gap:14px}.school-public-site .sw-academic-detail summary>span:first-child{grid-template-columns:32px 1fr;gap:5px 12px}.school-public-site .sw-academic-detail summary svg{width:29px;height:29px}.school-public-site .sw-academic-detail strong{font-size:22px}.school-public-site .sw-academic-detail small{font-size:14px}.school-public-site .sw-academic-content{padding:0 20px 20px 62px}.school-public-site .sw-school-layout,.school-public-site .sw-admissions-layout{gap:45px}.school-public-site .sw-school-identity-art{min-height:350px}.school-public-site .sw-crest-circle{width:210px;height:210px}.school-public-site .sw-school-identity-art>p{font-size:17px}.school-public-site .sw-royal-quotation{padding:55px 25px}.school-public-site .sw-royal-quotation>.sw-section-container{grid-template-columns:65px 1fr;gap:25px}.school-public-site .sw-quote-mark{width:50px;height:40px}.school-public-site .sw-royal-quotation blockquote{font-size:26px}.school-public-site .sw-admission-questions summary{font-size:17px}.school-public-site .sw-news-layout{gap:25px}.school-public-site .sw-notice-panel,.school-public-site .sw-calendar-panel{padding:28px 25px}.school-public-site .sw-notice-panel h3,.school-public-site .sw-calendar-panel h3{font-size:23px}.school-public-site .sw-contact-section{padding:60px 25px}.school-public-site .sw-contact-layout{gap:30px}.school-public-site .sw-contact-actions .sw-button{min-width:230px}.school-public-site .sw-contact-email{font-size:16px}.school-public-site .sw-site-footer{padding:45px 25px 22px}.school-public-site .sw-footer-top{grid-template-columns:1fr 1fr;gap:35px 50px}.school-public-site .sw-footer-bottom{flex-wrap:wrap}.school-public-site .sw-footer-bottom p:nth-child(2){max-width:45ch}}
@media(max-width:700px){.school-public-site .sw-masthead{padding:14px 20px;min-height:80px}.school-public-site .sw-school-brand{font-size:17px;gap:10px}.school-public-site .sw-school-brand img{width:38px;height:45px}.school-public-site .sw-masthead-utilities{gap:0}.school-public-site .sw-contact-utility{display:none}.school-public-site .sw-masthead-utilities .sw-icon-button{width:40px;height:44px}.school-public-site .sw-navigation-inner{padding:10px 20px;min-height:68px;gap:12px}.school-public-site .sw-section-brand{font-size:17px;margin-right:auto}.school-public-site .sw-desktop-navigation{display:none}.school-public-site .sw-menu-toggle{display:flex}.school-public-site .sw-navigation-portal{padding:10px 16px;font-size:13px;min-height:44px}.school-public-site .sw-motto-band{min-height:48px;padding:10px 20px;gap:10px}.school-public-site .sw-motto-band p{font-size:15px}.school-public-site .sw-motto-band svg{width:22px;height:22px}.school-public-site .sw-hero{padding:40px 24px 30px}.school-public-site .sw-hero-inner{display:flex;flex-direction:column;gap:32px}.school-public-site .sw-hero h1{font-size:clamp(43px,10vw,64px);line-height:1.08;max-width:520px;margin-bottom:25px}.school-public-site .sw-section-label{font-size:13px;margin-bottom:24px;padding-bottom:15px}.school-public-site .sw-original-message{font-size:18px;line-height:1.6;max-width:68ch}.school-public-site .sw-hero-actions{margin-top:25px;gap:14px 25px}.school-public-site .sw-hero-actions .sw-button{font-size:16px;padding:12px 24px}.school-public-site .sw-hero-actions .sw-text-link{font-size:16px}.school-public-site .sw-welcome-film{width:100%;margin:0}.school-public-site .sw-film-window{border-radius:5px}.school-public-site .sw-video-start{width:74px;height:74px}.school-public-site .sw-welcome-film figcaption{font-size:12px;gap:5px 12px;align-items:center}.school-public-site .sw-film-controls{margin-left:auto}.school-public-site .sw-film-controls>button{font-size:12px;padding:8px 9px}.school-public-site .sw-learning-strip{padding:28px 24px 40px}.school-public-site .sw-learning-strip h2{font-size:23px;max-width:350px;margin:0 auto 20px}.school-public-site .sw-learning-links{grid-template-columns:1fr;gap:0}.school-public-site .sw-learning-links>a{min-height:105px;padding:20px 10px;border-top:1px solid var(--line)}.school-public-site .sw-learning-links>a:last-child{border-bottom:1px solid var(--line)}.school-public-site .sw-learning-links strong{font-size:31px}.school-public-site .sw-learning-links span{font-size:14px;margin-top:9px}.school-public-site .sw-page-section{padding:48px 24px}.school-public-site .sw-learning-layout,.school-public-site .sw-school-layout,.school-public-site .sw-admissions-layout{grid-template-columns:1fr;gap:35px}.school-public-site .sw-page-section h2,.school-public-site .sw-contact-section h2{font-size:39px;line-height:1.12}.school-public-site .sw-section-introduction>p:not(.sw-section-label){font-size:18px;line-height:1.65;margin-top:24px}.school-public-site .sw-section-introduction>.sw-text-link{margin-top:24px}.school-public-site .sw-academic-detail{margin-bottom:15px}.school-public-site .sw-academic-detail summary{padding:23px 20px;gap:18px}.school-public-site .sw-academic-detail summary>span:first-child{grid-template-columns:33px 1fr;gap:5px 13px}.school-public-site .sw-academic-detail summary svg{width:30px;height:30px}.school-public-site .sw-academic-detail strong{font-size:24px}.school-public-site .sw-academic-detail small{font-size:14px}.school-public-site .sw-academic-content{padding:0 22px 24px 67px}.school-public-site .sw-academic-content .sw-text-link{font-size:14px}.school-public-site .sw-form-tags{gap:7px}.school-public-site .sw-form-tags li{font-size:13px;padding:5px 10px}.school-public-site .sw-school-identity-art{min-height:340px;order:2}.school-public-site .sw-crest-circle{width:210px;height:210px}.school-public-site .sw-crest-circle img{width:115px;height:135px}.school-public-site .sw-school-identity-art>p{font-size:18px;margin-top:20px}.school-public-site .sw-admission-questions{padding-top:0}.school-public-site .sw-admission-questions h3{font-size:25px;margin-bottom:20px}.school-public-site .sw-admission-questions summary{min-height:72px;font-size:18px}.school-public-site .sw-admission-questions details>p{font-size:17px}.school-public-site .sw-section-actions{gap:18px 25px;margin-top:25px}.school-public-site .sw-royal-quotation{padding:42px 24px 45px}.school-public-site .sw-royal-quotation>.sw-section-container{display:block}.school-public-site .sw-quote-mark{width:40px;height:35px;margin:0 0 20px}.school-public-site .sw-royal-quotation blockquote{font-size:25px;line-height:1.5;letter-spacing:-.02em}.school-public-site .sw-royal-quotation cite{font-size:15px;margin-top:22px}.school-public-site .sw-news-heading{display:block;margin-bottom:28px}.school-public-site .sw-news-heading>.sw-text-link{margin-top:20px}.school-public-site .sw-news-layout{grid-template-columns:1fr;gap:20px}.school-public-site .sw-notice-panel,.school-public-site .sw-calendar-panel{padding:28px 25px}.school-public-site .sw-notice-panel h3,.school-public-site .sw-calendar-panel h3{font-size:24px}.school-public-site .sw-notice-panel p,.school-public-site .sw-calendar-panel p{font-size:17px;margin-top:20px}.school-public-site .sw-contact-section{padding:48px 24px 52px}.school-public-site .sw-contact-layout{display:block}.school-public-site .sw-contact-section h2{font-size:37px}.school-public-site .sw-contact-section p{font-size:17px;margin-top:25px}.school-public-site .sw-contact-actions{align-items:start;margin-top:30px;gap:18px}.school-public-site .sw-contact-actions .sw-button{min-width:230px}.school-public-site .sw-contact-email{font-size:17px}.school-public-site .sw-site-footer{padding:40px 24px 20px}.school-public-site .sw-footer-top{grid-template-columns:1fr 1fr;gap:32px 22px}.school-public-site .sw-footer-top>.sw-school-brand{grid-column:1/-1;font-size:20px;margin-bottom:5px}.school-public-site .sw-footer-top .sw-school-brand img{width:44px;height:53px}.school-public-site .sw-footer-column:last-child{grid-column:1/-1}.school-public-site .sw-footer-column h2{font-size:16px;margin-bottom:12px}.school-public-site .sw-footer-column a,.school-public-site .sw-footer-column button{font-size:14px}.school-public-site .sw-footer-bottom{margin-top:30px;padding-top:22px;flex-direction:column;gap:12px;font-size:12px}.school-public-site .sw-preview-note{font-size:11px;line-height:1.5;margin-top:12px}.school-public-site dialog{padding:25px 20px}.school-public-site .sw-portal-identity{gap:12px}.school-public-site .sw-portal-identity h2{font-size:14px}.school-public-site .sw-portal-identity>div>p{font-size:28px}.school-public-site .sw-portal-identity img{width:39px;height:48px}.school-public-site .sw-school-menu{padding:24px}.school-public-site .sw-dialog-heading h2{font-size:25px}}
@media(max-width:370px){.school-public-site .sw-masthead{padding-inline:17px}.school-public-site .sw-school-brand{font-size:16px;gap:9px}.school-public-site .sw-school-brand img{width:34px;height:41px}.school-public-site .sw-masthead-utilities .sw-icon-button{width:36px}.school-public-site .sw-navigation-inner{padding-inline:18px;gap:8px}.school-public-site .sw-section-brand{font-size:15px}.school-public-site .sw-menu-toggle{font-size:13px;gap:3px}.school-public-site .sw-menu-toggle svg{width:16px}.school-public-site .sw-navigation-portal{font-size:12px;padding:10px 12px}.school-public-site .sw-hero{padding:35px 20px 28px}.school-public-site .sw-hero h1{font-size:42px}.school-public-site .sw-original-message{font-size:17px}.school-public-site .sw-hero-actions{gap:13px 22px}.school-public-site .sw-hero-actions .sw-button{font-size:15px;padding:11px 22px}.school-public-site .sw-hero-actions .sw-text-link{font-size:15px}.school-public-site .sw-welcome-film figcaption{display:block}.school-public-site .sw-film-controls{justify-content:flex-start;margin-top:5px}.school-public-site .sw-film-controls>button{padding-inline:10px}.school-public-site .sw-page-section{padding-inline:20px}.school-public-site .sw-academic-detail summary{padding-inline:16px}.school-public-site .sw-academic-detail summary>span:first-child{grid-template-columns:28px 1fr;gap:5px 10px}.school-public-site .sw-academic-detail summary svg{width:26px;height:26px}.school-public-site .sw-academic-detail strong{font-size:22px}.school-public-site .sw-academic-detail small{font-size:13px}.school-public-site .sw-academic-content{padding-left:54px;padding-right:16px}.school-public-site .sw-contact-section h2{font-size:34px}.school-public-site .sw-motto-band p{font-size:14px}.school-public-site .sw-section-introduction h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.school-public-site *,.school-public-site *::before,.school-public-site *::after{animation:none!important;transition:none!important}.school-public-site .sw-royal-glitter{display:none}}

/* Public navigation names destinations; the school identity already sits above it. */
/* Each anchor supplies its own header clearance; do not add that space twice. */
html { scroll-padding-top: 0; }
.school-public-site .sw-utility-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: var(--navy);
  font-size: 14px;
  font-weight: 650;
  white-space: nowrap;
}
.school-public-site .sw-utility-link:hover { text-decoration: underline; text-underline-offset: 5px; }
.school-public-site .sw-inline-link { color: var(--blue); text-decoration: underline; text-underline-offset: 4px; }
.school-public-site .sw-fees-section { background: var(--cream); }
.school-public-site .sw-admission-questions > .sw-fees-account-note { padding: 22px 0 0; font-size: 16px; }
.school-public-site #term-dates { scroll-margin-top: 100px; }
@media (max-width: 900px) {
  .school-public-site .sw-desktop-navigation { display: none; }
  .school-public-site .sw-menu-toggle { display: inline-flex; font-weight: 650; }
  .school-public-site .sw-navigation-inner { justify-content: space-between; }
  .school-public-site .sw-navigation-portal { margin-left: auto; }
}
@media (max-width: 700px) {
  .school-public-site .sw-utility-link { display: none; }
}

/* Published schedules lead the Fees section; enquiry guidance is the empty state. */
.school-public-site .sw-fees-section[data-fees-state="published"] .sw-admissions-layout { row-gap: 36px; }
.school-public-site .sw-fees-section[data-fees-state="published"] .sw-section-introduction,.school-public-site .sw-fees-section[data-fees-state="published"] .sw-admission-questions,.school-public-site #published-fees { grid-column: 1 / -1; }
.school-public-site .sw-fees-section[data-fees-state="published"] .sw-section-introduction > p { max-width: 65ch; }
.school-public-site .sw-fees-section[data-fees-state="published"] .sw-admission-questions { max-width: 760px; }
.school-public-site .sw-published-fee-schedule + .sw-published-fee-schedule { margin-top: 42px; }
.school-public-site .sw-published-fee-schedule h3 { font-size: 28px; line-height: 1.3; letter-spacing: -.02em; }
.school-public-site .sw-fee-schedule-facts { display: flex; flex-wrap: wrap; gap: 18px 48px; margin: 22px 0 28px; }
.school-public-site .sw-fee-schedule-facts dt { color: var(--muted); font-size: 14px; }
.school-public-site .sw-fee-schedule-facts dd { margin: 4px 0 0; font-size: 18px; font-weight: 650; }
.school-public-site .sw-published-fee-schedule table { width: 100%; border-collapse: collapse; background: white; font-size: 17px; text-align: left; }
.school-public-site .sw-published-fee-schedule caption { text-align: left; padding-bottom: 15px; font-weight: 650; }
.school-public-site .sw-published-fee-schedule th,.school-public-site .sw-published-fee-schedule td { padding: 18px 22px; border-bottom: 1px solid var(--line); overflow-wrap: anywhere; vertical-align: top; }
.school-public-site .sw-published-fee-schedule thead { background: var(--navy); color: white; }
.school-public-site .sw-published-fee-schedule tbody th { font-weight: 550; }
.school-public-site .sw-published-fee-schedule thead th:nth-child(2) { width: 28%; }
.school-public-site .sw-published-fee-schedule thead th:last-child { width: 25%; }
.school-public-site .sw-fee-schedule-note { max-width: 75ch; margin: 20px 0 12px; font-size: 16px; }
.school-public-site .sw-published-fee-schedule > .sw-text-link { margin-top: 15px; }
.school-public-site .sw-fee-document { display: block; width: 100%; height: 600px; margin-top: 20px; border: 1px solid var(--line); background: white; }
.school-public-site #fees-retry { margin-top: 20px; }
.school-public-site #published-fees { scroll-margin-top: 95px; }
.school-public-site .sw-fee-preview-tools { padding: 16px 20px; margin-bottom: 32px; border: 1px solid #b6c9de; border-radius: 6px; background: white; font-size: 14px; }
.school-public-site .sw-fee-preview-tools > p { font-weight: 650; }
.school-public-site .sw-fee-preview-tools > div { display: flex; flex-wrap: wrap; gap: 8px 28px; margin-top: 6px; }
.school-public-site .sw-fee-preview-tools a { display: inline-flex; align-items: center; min-height: 44px; color: var(--blue); text-decoration: underline; text-underline-offset: 4px; }
.school-public-site .sw-fee-preview-tools a[aria-current] { font-weight: 750; }
.school-public-site .sw-fee-example-notice { padding: 15px 18px; margin-bottom: 24px; color: var(--navy); background: #fff2c9; border: 1px solid #cba450; font-size: 16px; line-height: 1.5; font-weight: 650; }
@media (max-width: 700px) {
  .school-public-site .sw-published-fee-schedule h3 { font-size: 25px; }
  .school-public-site .sw-fee-schedule-facts { gap: 16px 25px; }
  .school-public-site .sw-fee-schedule-facts dd { font-size: 16px; }
  .school-public-site .sw-published-fee-schedule table { font-size: 14px; }
  .school-public-site .sw-published-fee-schedule th,.school-public-site .sw-published-fee-schedule td { padding: 14px 10px; }
  .school-public-site .sw-fee-document { height: 480px; }
}

.school-public-site{font-family:var(--font);font-size:18px;line-height:1.6;color:var(--navy);background:white;isolation:isolate}
.school-public-site .sw-masthead{position:static;inset:auto;height:auto;transform:none;backdrop-filter:none;box-shadow:none;border:0}
body.school-public-page{margin:0;padding:0;background:white}
body.school-public-page>.mobile-portal-cta{display:none!important}
.school-public-site .sw-hero h1{font-weight:800}
.school-public-site .sw-academic-detail summary>span:first-child{display:block}
.school-public-site .sw-academic-detail small{display:block;margin-top:8px}
.school-public-site .sw-academic-content{padding-left:30px}
.school-public-site .sw-fees-intro{max-width:65ch;margin-top:28px}
.school-public-site .sw-published-fee-schedule{margin-top:38px}
.school-public-site .sw-section-introduction h3{font-size:24px;margin-top:28px}
.school-public-site #school-menu-toggle{background:transparent;border:0}
.school-public-site .sw-royal-glitter{position:absolute;inset:0;pointer-events:none;z-index:4;width:100%;height:100%}
.school-public-site .sw-masthead-utilities .bi{font-size:23px}
.school-public-site .sw-school-brand img{object-fit:contain}
.school-public-site .sw-media-feedback{font-size:14px;line-height:1.5;margin-top:8px}
.school-public-site .sw-school-curriculum:empty{display:none}
.school-public-site .sw-school-curriculum:not(:empty){padding-bottom:28px}
.school-public-site .sw-school-statistics .stats{background:#f5f8fc;padding:36px 24px}
.school-public-site .sw-school-statistics .stats-container{max-width:1200px;margin:auto;display:flex;justify-content:space-around;gap:24px;flex-wrap:wrap}
.school-public-site .sw-school-statistics .stat-card{background:transparent;border:0;box-shadow:none;text-align:center}
.school-public-site .sw-school-statistics .stat-number{color:var(--navy);font-size:38px;font-weight:800}
.school-public-site .sw-school-policy{border:0;border-radius:14px;width:min(850px,calc(100% - 32px));max-height:85vh;padding:30px;color:var(--navy);background:white}
.school-public-site .sw-school-policy::backdrop{background:#071b35b3}
.school-public-site .sw-school-policy #privacy-policy{display:block!important;padding:0!important}
.school-public-site .sw-school-policy #hidePrivacyBtn{display:none}
.school-public-site #school-policy-close{float:right;position:sticky;top:0;background:white;font-size:30px}
@media(max-width:900px){.school-public-site .sw-desktop-navigation{display:none}.school-public-site .sw-menu-toggle{display:inline-flex}.school-public-site .sw-navigation-inner{justify-content:space-between}}

/* Full-width school presence, with admissions as the leading navigation action. */
.school-public-site {
  --apply-gold: #edbd60;
  --apply-gold-hover: #e2aa42;
}
.school-public-site .sw-navigation-inner,
.school-public-site .sw-hero-inner,
.school-public-site .sw-learning-strip,
.school-public-site .sw-section-container,
.school-public-site .sw-royal-quotation > .sw-section-container,
.school-public-site .sw-school-statistics .stats-container { max-width: none; }
.school-public-site .sw-masthead { padding-inline: 32px; }
.school-public-site .sw-navigation-inner { gap: 24px; }
.school-public-site .sw-navigation-actions { display: flex; align-items: center; gap: 12px; margin-left: auto; flex-shrink: 0; }
.school-public-site .sw-navigation-actions .sw-navigation-portal { margin-left: 0; color: var(--blue); background: white; border: 1px solid var(--blue); }
.school-public-site .sw-navigation-actions .sw-navigation-portal:hover { background: #edf4fc; }
.school-public-site .sw-button-apply { color: var(--navy); background: var(--apply-gold); border: 1px solid var(--apply-gold); white-space: nowrap; box-shadow: 0 3px 0 #b9851d40; }
.school-public-site .sw-button-apply:hover { color: var(--navy); background: var(--apply-gold-hover); border-color: var(--apply-gold-hover); text-decoration: none; }
.school-public-site .sw-school-menu nav > .sw-button-apply { padding: 14px 22px; margin-bottom: 18px; font-size: 18px; font-weight: 750; }
@media (min-width: 1440px) {
  .school-public-site .sw-hero-inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1.55fr); gap: clamp(48px, 4vw, 96px); }
  .school-public-site .sw-hero h1 { max-width: 12ch; }
}
@media (max-width: 1150px) {
  .school-public-site .sw-desktop-navigation { gap: 16px; }
  .school-public-site .sw-navigation-actions .sw-button { padding-inline: 18px; font-size: 14px; }
}
@media (max-width: 900px) {
  .school-public-site .sw-masthead { padding-inline: 25px; }
}
@media (max-width: 700px) {
  .school-public-site .sw-masthead { padding-inline: 20px; }
  .school-public-site .sw-navigation-inner { gap: 10px; }
  .school-public-site .sw-navigation-actions { gap: 8px; }
  .school-public-site .sw-navigation-actions .sw-button { min-height: 44px; padding: 10px 14px; font-size: 13px; }
  .school-public-site .sw-button-apply .bi { display: none; }
}
@media (max-width: 370px) {
  .school-public-site .sw-masthead { padding-inline: 17px; }
  .school-public-site .sw-navigation-inner { gap: 8px; }
  .school-public-site .sw-navigation-actions { gap: 7px; }
  .school-public-site .sw-navigation-actions .sw-button { padding-inline: 11px; font-size: 12px; }
}

/* Every school supplies its own accent; foregrounds are contrast-checked server-side. */
.school-public-site {
  --school-theme: #0057ae;
  --school-on-theme: #ffffff;
  --school-ink: #022043;
  --school-theme-hover: #004d99;
  --school-theme-link: #0057ae;
  --school-theme-soft: #f5f8fc;
  --school-theme-border: #c7daed;
  --school-glitter-rgb: 0,87,174;
  --navy: var(--school-ink);
  --blue: var(--school-theme-link);
  --gold: var(--school-theme-link);
  --orange: var(--school-theme);
  --cream: var(--school-theme-soft);
  --apply-gold: var(--school-theme);
  --apply-gold-hover: var(--school-theme-hover);
}
.school-public-site .sw-button-primary,
.school-public-site .sw-button-apply { background: var(--school-theme); border-color: var(--school-theme-link); color: var(--school-on-theme); box-shadow: none; }
.school-public-site .sw-button-primary:hover:not(:disabled),
.school-public-site .sw-button-apply:hover { background: var(--school-theme-hover); border-color: var(--school-theme-link); color: var(--school-on-theme); }
.school-public-site .sw-video-start { background: var(--school-theme); color: var(--school-on-theme); }
.school-public-site .sw-video-start:hover { background: var(--school-theme-hover); }
.school-public-site .sw-navigation-actions .sw-navigation-portal:hover { background: var(--school-theme-soft); }
.school-public-site .sw-desktop-navigation > a.sw-active::after { background: var(--school-theme-link); }
.school-public-site .sw-school-identity-art { background: var(--school-theme-soft); }
.school-public-site .sw-quote-mark { fill: var(--school-theme-link); }
.school-public-site .sw-contact-section { background: var(--school-theme); color: var(--school-on-theme); }
.school-public-site .sw-contact-section .sw-contact-email { color: var(--school-on-theme); }
.school-public-site .sw-contact-section p { color: var(--school-on-theme); }
.school-public-site .sw-contact-section .sw-button-white { border: 1px solid var(--school-theme-link); color: var(--school-theme-link); }
.school-public-site :is(a,button,input,summary,video):focus-visible { outline-color: var(--school-theme-link); }
body.school-public-page { --primary: var(--school-theme-link, #0057ae); --primary-dark: var(--school-theme-link, #0057ae); --secondary: var(--school-theme-link, #0057ae); --accent: var(--school-theme-link, #0057ae); --primary-light: var(--school-theme-border, #c7daed); --primary-lighter: var(--school-theme-soft, #f5f8fc); font:18px/1.6 Hanken,Arial,Helvetica,sans-serif; }
body.school-public-page #loginModal .btn-login { background: var(--school-theme, #0057ae); color: var(--school-on-theme, #fff); border: 1px solid var(--school-theme-link, #0057ae); box-shadow: none; }
body.school-public-page #loginModal .btn-login:hover:not(:disabled) { background: var(--school-theme-hover, #004d99); color: var(--school-on-theme, #fff); }
body.school-public-page #loginModal .bayethe-checkbox-label input:checked ~ .bayethe-checkmark { background: var(--school-theme); border-color: var(--school-theme-link); }
body.school-public-page #loginModal .bayethe-checkmark::after { border-color: var(--school-on-theme); }
body.school-public-page #loginModal .salutation-panel .bayethe-checkbox-label:focus-within { outline-color: var(--school-theme-link); }
body.school-public-page #loginModal .form-control:focus { box-shadow: 0 0 0 3px var(--school-theme-border); }
.school-public-site .sw-contact-section :focus-visible { outline-color: var(--school-on-theme); }

/* Compact, shared public header: school identity, utilities, then grouped browsing. */
.school-public-site { --school-navigation-height: 57px; --school-header-height: 119px; }
.school-public-site .sw-masthead { min-height: 62px; padding: 8px 32px; gap: 24px; }
.school-public-site .sw-masthead .sw-school-brand { flex: 1; font-size: 22px; overflow-wrap: anywhere; }
.school-public-site .sw-masthead .sw-school-brand img { width: 40px; height: 44px; }
.school-public-site .sw-masthead-utilities { gap: 22px; flex-shrink: 0; }
.school-public-site .sw-contact-links { display: flex; align-items: center; gap: 4px; }
.school-public-site .sw-portal-utility { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 8px 4px; background: transparent; color: var(--school-theme-link); font-size: 14px; font-weight: 750; white-space: nowrap; }
.school-public-site .sw-portal-utility:hover { text-decoration: underline; text-underline-offset: 5px; }
.school-public-site .sw-masthead .sw-powered-mark { font-size: 12px; white-space: nowrap; }
.school-public-site .sw-masthead .sw-powered-mark strong { font-size: 14px; }
.school-public-site .sw-navigation-inner { min-height: 56px; padding: 4px 32px; gap: 24px; }
.school-public-site .sw-desktop-navigation { gap: 22px; }
.school-public-site .sw-desktop-navigation > .sw-nav-group-start { margin-left: 16px; }
.school-public-site .sw-desktop-navigation > .sw-nav-group-start::before { content: ''; position: absolute; left: -19px; width: 1px; height: 16px; background: var(--line); }
.school-public-site .sw-desktop-navigation > .sw-nav-group-start:first-child { margin-left: 0; }
.school-public-site .sw-desktop-navigation > .sw-nav-group-start:first-child::before { display: none; }
.school-public-site .sw-desktop-navigation > a::after { bottom: -4px; }
.school-public-site .sw-navigation-actions .sw-navigation-portal { display: none; }
.school-public-site .sw-navigation-actions .sw-button-apply { min-height: 48px; padding: 10px 24px; font-size: 16px; }
@media (max-width: 1150px) {
  .school-public-site .sw-masthead-utilities { gap: 18px; }
  .school-public-site .sw-contact-links { display: none; }
  .school-public-site .sw-desktop-navigation { gap: 18px; }
  .school-public-site .sw-desktop-navigation > .sw-nav-group-start { margin-left: 12px; }
  .school-public-site .sw-desktop-navigation > .sw-nav-group-start::before { left: -15px; }
}
@media (max-width: 900px) {
  .school-public-site { --school-header-height: 121px; }
  .school-public-site .sw-masthead { min-height: 64px; padding: 8px 25px; }
  .school-public-site .sw-masthead .sw-school-brand { font-size: 20px; }
  .school-public-site .sw-masthead-utilities { display: none; }
  .school-public-site .sw-navigation-inner { min-height: 56px; padding: 4px 25px; gap: 12px; }
  .school-public-site .sw-navigation-actions { gap: 12px; }
  .school-public-site .sw-navigation-actions .sw-navigation-portal { display: inline-flex; border: 0; padding: 8px; min-height: 44px; font-size: 14px; }
}
@media (max-width: 700px) {
  .school-public-site .sw-masthead { padding-inline: 20px; }
  .school-public-site .sw-masthead .sw-school-brand { font-size: 19px; gap: 10px; }
  .school-public-site .sw-navigation-inner { padding-inline: 20px; }
  .school-public-site .sw-navigation-actions { gap: 8px; }
  .school-public-site .sw-navigation-actions .sw-button-apply { padding-inline: 18px; font-size: 14px; }
}
@media (max-width: 370px) {
  .school-public-site .sw-masthead { padding-inline: 16px; }
  .school-public-site .sw-masthead .sw-school-brand { font-size: 18px; }
  .school-public-site .sw-navigation-inner { padding-inline: 16px; gap: 8px; }
  .school-public-site .sw-navigation-actions { gap: 4px; }
  .school-public-site .sw-navigation-actions .sw-button-apply { padding-inline: 14px; }
}
/* Public landing content. This scope excludes the application and workspace shells. */
.sw-landing-site { --sw-content-gap: 32px; --sw-surface: #f7f8fa; --sw-rule: #dfe4ea; }
.sw-landing-site .sw-page-section { padding-block: 64px; }
.sw-landing-site .sw-page-section h2 { font-size: clamp(30px, 3vw, 40px); line-height: 1.15; }
.sw-landing-site .sw-page-section p { font-size: 17px; line-height: 1.65; }
.sw-landing-site .sw-section-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px 48px; margin-bottom: 32px; }
.sw-landing-site .sw-section-heading > div { min-width: 0; flex: 1; }
.sw-landing-site .sw-section-heading p { max-width: none; margin-top: 14px; }
.sw-landing-site .sw-section-heading > a { flex: none; margin-top: 2px; }
.sw-landing-site .sw-button-outline { border-color: var(--school-theme-link); color: var(--school-theme-link); background: white; }
.sw-landing-site .sw-button-outline:hover { background: var(--school-theme-soft); text-decoration: none; }
.sw-landing-site .sw-section-label { text-transform: none; letter-spacing: 0; padding-bottom: 0; margin-bottom: 18px; font-weight: 600; }
.sw-landing-site .sw-section-label::after { display: none; }
.sw-landing-site .sw-hero { padding-block: 48px; }

/* One institution story; local navigation stays in the existing About dropdown. */
.sw-landing-site .sw-about-layout { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.65fr); gap: 64px; align-items: start; }
.sw-landing-site .sw-about-heading p { margin-top: 16px; color: var(--school-theme-link); }
.sw-landing-site .sw-about-content { min-width: 0; }
.sw-landing-site .sw-purpose-grid { display: grid; gap: 28px; }
.sw-landing-site .sw-purpose-statement h3, .sw-landing-site .sw-about-values h3 { font-size: 21px; font-weight: 650; line-height: 1.3; margin-bottom: 10px; }
.sw-landing-site .sw-purpose-statement p, .sw-landing-site .sw-history-story > p, .sw-landing-site .sw-history-prose p { max-width: none; }
.sw-landing-site .sw-purpose-statement p + p, .sw-landing-site .sw-history-prose p + p { margin-top: 14px; }
.sw-landing-site .sw-about-values { margin-top: 28px; }
.sw-landing-site .sw-about-values ul { display: flex; gap: 8px 32px; flex-wrap: wrap; padding-left: 20px; margin: 0; }
.sw-landing-site .sw-history { margin-top: 28px; border-top: 1px solid var(--sw-rule); border-bottom: 1px solid var(--sw-rule); }
.sw-landing-site .sw-history summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 18px 0; font-size: 21px; font-weight: 650; list-style: none; }
.sw-landing-site .sw-history summary::-webkit-details-marker, .sw-landing-site .sw-nav-group summary::-webkit-details-marker { display: none; }
.sw-landing-site .sw-history-prose { padding-bottom: 24px; }
.sw-landing-site [id^="school-"] { scroll-margin-top: 88px; }

/* Department disclosures share the whole reading width; programme names are the details links. */
.sw-landing-site .sw-learning-section { background: var(--sw-surface); }
.sw-landing-site .sw-learning-layout { display: block; }
.sw-landing-site .sw-school-curriculum:not(:empty) { padding-bottom: 24px; display: flex; flex-wrap: wrap; gap: 16px 40px; }
.sw-landing-site .sw-school-curriculum h3 { font-size: 15px; font-weight: 650; color: var(--muted); margin-bottom: 4px; }
.sw-landing-site .sw-academic-detail { border: 0; border-top: 1px solid var(--sw-rule); border-radius: 0; margin: 0; background: transparent; overflow: visible; }
.sw-landing-site .sw-academic-detail:last-child { border-bottom: 1px solid var(--sw-rule); }
.sw-landing-site .sw-academic-detail summary { padding: 20px 0; min-height: 64px; }
.sw-landing-site .sw-academic-detail strong { font-size: 21px; font-weight: 650; line-height: 1.35; }
.sw-landing-site .sw-programme-list { padding: 0 0 16px 24px; }
.sw-landing-site .sw-programme-list article { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 16px 32px; border-top: 1px solid var(--sw-rule); padding: 8px 0; }
.sw-landing-site .sw-programme-list h3 { font-size: 17px; line-height: 1.5; font-weight: 550; letter-spacing: 0; }
.sw-landing-site .sw-programme-list h3 a { display: flex; align-items: center; min-height: 44px; padding-block: 6px; }
.sw-landing-site .sw-programme-apply { display: inline-flex; align-items: center; min-height: 44px; font-size: 15px; color: var(--school-theme-link); font-weight: 650; }
.sw-landing-site .sw-academic-content { padding: 0 0 24px 24px; }

/* Admission dates, the application action and costs form one continuous decision sequence. */
.sw-landing-site .sw-admissions { background: white; padding-bottom: 40px; }
.sw-landing-site .sw-admissions-layout { display: block; }
.sw-landing-site .sw-admissions-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.sw-landing-site .sw-admission-period { margin: 24px 0 12px; max-width: none; }
.sw-landing-site .sw-admission-period p + p { margin-top: 4px; }
.sw-landing-site .sw-admissions-resources { display: flex; flex-wrap: wrap; gap: 4px 32px; }
.sw-landing-site .sw-admissions-resources a { display: inline-flex; align-items: center; min-height: 44px; font-size: 15px; font-weight: 600; color: var(--school-theme-link); text-decoration: underline; text-underline-offset: 4px; }
.sw-landing-site .sw-fees-section { padding-top: 0; background: white; }
.sw-landing-site .sw-fees-section > .sw-section-container { border-top: 1px solid var(--sw-rule); padding-top: 36px; }
.sw-landing-site .sw-fees-section .sw-section-heading { margin-bottom: 28px; }
.sw-landing-site .sw-fees-section .sw-section-heading h2 { font-size: 28px; letter-spacing: -.02em; }
.sw-landing-site .sw-fees-section .sw-section-heading p { color: var(--muted); font-size: 16px; max-width: none; }
.sw-landing-site .sw-fees-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(230px, .36fr); gap: 48px; align-items: start; }
.sw-landing-site .sw-fee-schedules { min-width: 0; }
.sw-landing-site .sw-fee-schedules:only-child { grid-column: 1 / -1; }
.sw-landing-site .sw-published-fee-schedule { margin-top: 0; }
.sw-landing-site .sw-published-fee-schedule + .sw-published-fee-schedule { margin-top: 32px; }
.sw-landing-site .sw-published-fee-schedule h3, .sw-landing-site .sw-funding-info h3 { font-size: 21px; line-height: 1.35; letter-spacing: 0; }
.sw-landing-site .sw-fee-schedule-facts { gap: 12px 32px; margin: 16px 0; }
.sw-landing-site .sw-fee-schedule-facts dd { font-size: 16px; margin-top: 2px; }
.sw-landing-site .sw-fee-table-scroll { overflow-x: auto; }
.sw-landing-site .sw-published-fee-schedule table { font-size: 16px; }
.sw-landing-site .sw-published-fee-schedule caption { caption-side: top; padding: 0 0 10px; font-size: 14px; font-weight: 500; color: var(--muted); }
.sw-landing-site .sw-published-fee-schedule thead { background: var(--school-theme-soft); color: var(--school-ink); }
.sw-landing-site .sw-published-fee-schedule th, .sw-landing-site .sw-published-fee-schedule td { padding: 12px 16px; }
.sw-landing-site .sw-published-fee-schedule th:last-child, .sw-landing-site .sw-published-fee-schedule td:last-child { text-align: right; }
.sw-landing-site .sw-published-fee-schedule td:last-child { white-space: nowrap; font-variant-numeric: tabular-nums; font-weight: 650; }
.sw-landing-site .sw-published-fee-schedule .sw-fee-schedule-note { font-size: 14px; color: var(--muted); margin: 12px 0 0; }
.sw-landing-site .sw-funding-info { border-left: 1px solid var(--sw-rule); padding-left: 28px; }
.sw-landing-site .sw-funding-info p { margin-top: 12px; font-size: 16px; }
.sw-landing-site .sw-section-actions { margin-top: 16px; gap: 12px 24px; }

/* Small amounts of school-life and update content do not become oversized cards. */
.sw-landing-site .sw-student-life { padding-block: 36px; background: var(--sw-surface); }
.sw-landing-site .sw-student-life > .sw-section-container { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.65fr); gap: 64px; }
.sw-landing-site .sw-student-life h2 { font-size: 28px; }
.sw-landing-site .sw-student-life-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 24px; }
.sw-landing-site .sw-student-life-grid h3 { font-size: 20px; margin: 0 0 8px; }
.sw-landing-site .sw-student-life-grid ul { padding-left: 20px; margin: 0; }
.sw-landing-site .sw-student-life-grid a { font-size: 15px; margin-top: 4px; }
.sw-landing-site .sw-royal-quotation { padding-block: 36px; background: white; }
.sw-landing-site .sw-royal-quotation > .sw-section-container { gap: 24px; grid-template-columns: 44px 1fr; max-width: none; }
.sw-landing-site .sw-quote-mark { width: 38px; height: 30px; }
.sw-landing-site .sw-royal-quotation blockquote { font-size: 23px; line-height: 1.5; max-width: 80ch; }
.sw-landing-site .sw-royal-quotation cite { margin-top: 12px; font-size: 15px; }
.sw-landing-site .sw-news-section { border-top: 1px solid var(--sw-rule); padding-block: 40px; }
.sw-landing-site .sw-news-heading { margin-bottom: 20px; }
.sw-landing-site .sw-news-section h2 { font-size: 28px; }
.sw-landing-site .sw-news-layout { gap: 40px; align-items: start; }
.sw-landing-site .sw-news-empty { color: var(--muted); max-width: none; }
.sw-landing-site .sw-notice-panel, .sw-landing-site .sw-calendar-panel { padding: 0; background: transparent; border: 0; border-radius: 0; }
.sw-landing-site .sw-notice-panel + .sw-notice-panel { margin-top: 24px; }
.sw-landing-site .sw-notice-panel h3, .sw-landing-site .sw-calendar-panel h3 { font-size: 20px; }
.sw-landing-site .sw-notice-panel p, .sw-landing-site .sw-calendar-panel p { margin-top: 8px; font-size: 16px; }
.sw-landing-site .sw-calendar-panel .sw-text-link { margin-top: 8px; font-size: 15px; }
.sw-landing-site .sw-contact-section { padding-block: 48px; }
.sw-landing-site .sw-contact-section h2 { font-size: clamp(28px, 3vw, 38px); }
.sw-landing-site .sw-contact-section p { margin-top: 14px; }
.sw-landing-site .sw-site-footer { padding-top: 40px; }

/* Preserve the existing public header and all optional community destinations. */
.sw-landing-site .sw-community-links { display: flex; gap: 20px; font-size: 14px; font-weight: 650; }
.sw-landing-site .sw-masthead-utilities { flex-wrap: wrap; justify-content: flex-end; row-gap: 8px; }
.sw-landing-site .sw-nav-group { position: relative; flex: none; }
.sw-landing-site .sw-nav-group summary { display: flex; align-items: center; gap: 8px; list-style: none; font-weight: 650; padding: 17px 0; font-size: 15px; }
.sw-landing-site .sw-nav-group summary i { font-size: 11px; }
.sw-landing-site .sw-nav-flyout { position: absolute; left: -16px; top: 100%; z-index: 50; min-width: 250px; padding: 8px; background: white; border: 1px solid var(--school-theme-border); border-radius: 6px; box-shadow: 0 8px 20px #00000014; }
.sw-landing-site .sw-nav-flyout a { display: block; min-height: 44px; padding: 10px 12px; }
.sw-landing-site .sw-nav-flyout a:hover { background: var(--school-theme-soft); }
.sw-landing-site .sw-mobile-about-links { display: grid; border-left: 2px solid var(--school-theme-border); padding-left: 16px; gap: 4px; }
.sw-landing-site .sw-mobile-about-links a { font-size: 16px; min-height: 44px; display: flex; align-items: center; }
.sw-landing-site :is(a, button, summary, video, [tabindex]):focus-visible { outline: 3px solid var(--school-theme-link); outline-offset: 4px; }
.sw-landing-site .sw-contact-section :focus-visible { outline-color: var(--school-on-theme); }
@media (max-width: 1100px) {
  .sw-landing-site .sw-masthead-utilities .sw-community-links { display: none; }
  .sw-landing-site .sw-about-layout, .sw-landing-site .sw-student-life > .sw-section-container { gap: 40px; }
}
@media (max-width: 800px) {
  .sw-landing-site .sw-page-section { padding-block: 40px; }
  .sw-landing-site .sw-about-layout, .sw-landing-site .sw-student-life > .sw-section-container { grid-template-columns: 1fr; gap: 24px; }
  .sw-landing-site .sw-fees-section { padding-top: 0; }
  .sw-landing-site .sw-fees-layout { grid-template-columns: 1fr; gap: 28px; }
  .sw-landing-site .sw-funding-info { border: 0; border-top: 1px solid var(--sw-rule); padding: 24px 0 0; }
  .sw-landing-site .sw-section-heading { flex-direction: column; gap: 12px; margin-bottom: 24px; }
  .sw-landing-site .sw-hero { padding-block: 32px; }
  .sw-landing-site .sw-news-layout { grid-template-columns: 1fr; gap: 28px; }
}
@media (max-width: 500px) {
  .sw-landing-site .sw-admissions-heading { align-items: flex-start; flex-wrap: wrap; gap: 16px; }
  .sw-landing-site .sw-admissions-heading .sw-button { min-height: 44px; padding: 10px 18px; font-size: 14px; flex-shrink: 0; white-space: nowrap; }
  .sw-landing-site .sw-programme-list { padding-left: 12px; }
  .sw-landing-site .sw-programme-list article { grid-template-columns: 1fr; gap: 0; padding-block: 12px; }
  .sw-landing-site .sw-programme-apply { justify-self: start; }
  .sw-landing-site .sw-royal-quotation > .sw-section-container { grid-template-columns: 1fr; gap: 12px; }
  .sw-landing-site .sw-royal-quotation blockquote { font-size: 20px; }
  .sw-landing-site .sw-published-fee-schedule th, .sw-landing-site .sw-published-fee-schedule td { padding-inline: 10px; }
}

/* The school's identity and study offering lead; the film supports the introduction. */
.sw-landing-site .sw-hero { padding-block: 40px 28px; }
.sw-landing-site .sw-hero-inner { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr); gap: 32px clamp(32px, 4vw, 72px); align-items: center; }
.sw-landing-site .sw-hero-copy { max-width: none; }
.sw-landing-site .sw-hero h1 { max-width: 18ch; font-size: clamp(42px, 4.4vw, 64px); margin-bottom: 16px; text-wrap: balance; }
.sw-landing-site .sw-hero-slogan { color: var(--school-theme-link); font-size: 25px; line-height: 1.35; margin: 0 0 24px; }
.sw-landing-site .sw-hero-actions { margin-top: 28px; gap: 12px 20px; flex-wrap: wrap; }
.sw-landing-site .sw-hero-actions .sw-button { font-size: 16px; padding: 12px 22px; min-height: 48px; }
.sw-landing-site .sw-welcome-film { width: 100%; max-width: 520px; margin: 0; justify-self: center; align-self: center; }
.sw-landing-site .sw-film-window { aspect-ratio: 16 / 9; }
.sw-landing-site .sw-film-window video { display: block; width: 100%; height: 100%; object-fit: contain; }
.sw-landing-site .sw-video-start { width: 72px; height: 72px; }
.sw-landing-site .sw-video-start svg { width: 34px; height: 34px; }
.sw-landing-site .sw-platform-message { position: relative; z-index: 2; padding: 0; margin-top: 20px; }
.sw-landing-site .sw-platform-message .sw-original-message { max-width: none; font-size: 18px; line-height: 1.65; font-weight: 400; margin: 0; }
.sw-landing-site .sw-school-stage { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px 32px; padding-block: 20px; border-top: 1px solid var(--sw-rule); }
.sw-landing-site .sw-school-stage h3 { font-size: 22px; line-height: 1.35; }
.sw-landing-site .sw-school-stage ul { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 24px; padding: 0; margin: 0; list-style: none; font-size: 17px; }
.school-public-page #loginModal :is(button, a, input):focus-visible { outline: 3px solid var(--school-theme-link); outline-offset: 3px; }

/* History, mission and vision each occupy a row; values may share columns. */
.sw-landing-site .sw-about-layout { display: block; }
.sw-landing-site .sw-about-heading { margin-bottom: 28px; }
.sw-landing-site .sw-about-content { display: grid; grid-template-columns: minmax(0, 1fr); gap: 28px; align-items: start; }
.sw-landing-site .sw-school-description { grid-column: 1 / -1; max-width: none; }
.sw-landing-site .sw-history-story h3 { font-size: 24px; line-height: 1.3; font-weight: 650; margin-bottom: 14px; }
.sw-landing-site .sw-purpose-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; border: 0; padding: 0; }
.sw-landing-site .sw-purpose-grid:only-child { grid-column: 1 / -1; max-width: none; }
.sw-landing-site .sw-purpose-statement { min-width: 0; }
.sw-landing-site .sw-purpose-statement + .sw-purpose-statement { border-top: 1px solid var(--sw-rule); padding-top: 24px; }
.sw-landing-site .sw-about-values { grid-column: 1 / -1; margin-top: 0; }
.sw-landing-site .sw-about-values ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px 32px; }
.sw-landing-site .sw-about-values li { min-width: 0; overflow-wrap: anywhere; }
.sw-landing-site .sw-history-story .sw-history { margin-top: 16px; }
.sw-landing-site .sw-history-story .sw-history summary { font-size: 16px; color: var(--school-theme-link); min-height: 48px; padding-block: 12px; }
.sw-landing-site .sw-curriculum-pair { display: grid; gap: 16px; max-width: 76ch; }
.sw-landing-site .sw-curriculum-pair + .sw-curriculum-pair { border-left: 1px solid var(--sw-rule); padding-left: 32px; }
.sw-landing-site .sw-programme-copy { min-width: 0; }
.sw-landing-site .sw-programme-list article { align-items: start; padding-block: 16px; }
.sw-landing-site .sw-programme-apply { margin-top: 0; }
.sw-landing-site .sw-study-facts { display: flex; gap: 6px 22px; flex-wrap: wrap; list-style: none; padding: 0; margin: 0 0 8px; font-size: 15px; color: var(--muted); }
.sw-landing-site .sw-programme-copy > p { font-size: 16px; max-width: none; }
.sw-landing-site .sw-entry-requirements { max-width: none; }
.sw-landing-site .sw-entry-requirements summary { display: list-item; font-size: 15px; color: var(--school-theme-link); padding: 8px 0; min-height: 44px; font-weight: 600; list-style: revert; }
.sw-landing-site .sw-entry-requirements summary::after { display: none; }
.sw-landing-site .sw-entry-requirements summary::-webkit-details-marker { display: revert; }
.sw-landing-site .sw-entry-requirements p { font-size: 16px; margin-block: 8px 12px; }
.sw-landing-site .sw-student-life > .sw-section-container { grid-template-columns: minmax(0, .72fr) minmax(0, 1.65fr); }
.sw-landing-site .sw-student-life h2 { margin-bottom: 16px; }
.sw-landing-site .sw-life-category ul { list-style: none; padding: 0; }
.sw-landing-site .sw-life-category li + li { margin-top: 18px; }
.sw-landing-site .sw-life-category li strong, .sw-landing-site .sw-life-category li span { display: block; }
.sw-landing-site .sw-life-category li span { font-size: 15px; color: var(--muted); }
.sw-landing-site .sw-life-category li p { font-size: 16px; margin-top: 4px; }
.sw-landing-site .sw-enquiry-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .8fr) minmax(0, 1.2fr); gap: 32px 48px; }
.sw-landing-site .sw-enquiry-grid h3 { font-size: 21px; line-height: 1.4; margin: 0 0 12px; }
.sw-landing-site .sw-enquiry-grid h4 { font-size: 16px; margin: 24px 0 8px; }
.sw-landing-site .sw-enquiry-grid p { font-size: 16px; margin-top: 4px; max-width: none; }
.sw-landing-site .sw-enquiry-grid address { font-size: 16px; font-style: normal; }
.sw-landing-site .sw-enquiry-grid address span { display: block; }
.sw-landing-site .sw-enquiry-actions { display: flex; flex-direction: column; align-items: flex-start; }
.sw-landing-site .sw-enquiry-actions > a { overflow-wrap: anywhere; max-width: 100%; }
.sw-landing-site .sw-enquiry-actions .sw-contact-phone { min-height: 44px; display: flex; align-items: center; font-size: 19px; font-weight: 650; }
.sw-landing-site .sw-enquiry-actions .sw-contact-email { font-size: 16px; min-height: 44px; margin-top: 0; }
.sw-landing-site .sw-enquiry-actions .sw-button { margin-top: 16px; font-size: 16px; padding: 12px 20px; }

/* Long prose aligns on both edges; narrow phone lines keep natural word spacing. */
.sw-landing-site :is(.sw-original-message, .sw-school-description, .sw-purpose-statement p, .sw-history-story > p, .sw-history-prose p, .sw-programme-copy > p, .sw-entry-requirements p) { text-align: justify; text-justify: inter-word; text-indent: 0; hyphens: auto; overflow-wrap: anywhere; }
.sw-landing-site .sw-academic-structure { padding-bottom: 24px; }
.sw-landing-site .sw-academic-structure h3 { font-size: 21px; margin-bottom: 12px; }
.sw-landing-site .sw-academic-structure ul { padding-left: 20px; margin: 0; }
.sw-landing-site .sw-academic-structure li + li { margin-top: 8px; }
.sw-landing-site .sw-daily-section { border-top: 1px solid var(--sw-rule); padding-block: 40px; }
.sw-landing-site .sw-daily-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 48px; }
.sw-landing-site .sw-daily-layout > div { min-width: 0; }
.sw-landing-site .sw-daily-layout > div:only-child { grid-column: 1 / -1; }
.sw-landing-site .sw-daily-layout h3 { font-size: 21px; margin-bottom: 16px; }
.sw-landing-site .sw-daily-layout dl { margin: 0; }
.sw-landing-site .sw-daily-times > div { display: grid; grid-template-columns: minmax(100px, .4fr) minmax(0, 1fr); gap: 8px 24px; padding-block: 12px; border-top: 1px solid var(--sw-rule); }
.sw-landing-site .sw-daily-times dt, .sw-landing-site .sw-uniform-days dt { font-size: 16px; font-weight: 650; }
.sw-landing-site .sw-daily-layout dd { margin: 0; font-size: 16px; overflow-wrap: anywhere; }
.sw-landing-site .sw-uniform-days > div { display: grid; grid-template-columns: minmax(0, .6fr) repeat(2, minmax(0, 1fr)); gap: 12px 20px; padding-block: 12px; border-top: 1px solid var(--sw-rule); }
.sw-landing-site .sw-uniform-days dd > span { display: block; font-size: 14px; color: var(--muted); margin-bottom: 4px; }
.sw-landing-site .sw-uniform-days p { font-size: 16px; line-height: 1.5; }
@media (max-width: 900px) {
  .sw-landing-site .sw-daily-layout { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 480px) {
  .sw-landing-site :is(.sw-original-message, .sw-school-description, .sw-purpose-statement p, .sw-history-story > p, .sw-history-prose p, .sw-programme-copy > p, .sw-entry-requirements p) { text-align: start; hyphens: manual; }
  .sw-landing-site .sw-uniform-days > div { grid-template-columns: minmax(0, 1fr); }
  .sw-landing-site .sw-daily-times > div { grid-template-columns: minmax(0, 1fr); gap: 4px; }
}
@media (max-width: 1150px) {
  .sw-landing-site .sw-hero-inner { grid-template-columns: minmax(0, 1fr) minmax(0, .95fr); gap: 28px; }
  .sw-landing-site .sw-hero h1 { font-size: 46px; }
  .sw-landing-site .sw-about-content { gap: 32px; }
  .sw-landing-site .sw-enquiry-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .sw-landing-site .sw-hero-inner { grid-template-columns: 1fr; gap: 28px; }
  .sw-landing-site .sw-welcome-film { justify-self: start; }
  .sw-landing-site .sw-hero h1 { font-size: clamp(38px, 7vw, 54px); max-width: 18ch; }
  .sw-landing-site .sw-hero-slogan { font-size: 23px; margin-bottom: 16px; }
  .sw-landing-site .sw-platform-message { margin-top: 20px; }
  .sw-landing-site .sw-about-content, .sw-landing-site .sw-student-life > .sw-section-container { grid-template-columns: 1fr; gap: 28px; }
  .sw-landing-site .sw-about-values ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sw-landing-site .sw-curriculum-pair + .sw-curriculum-pair { border-left: 0; padding: 16px 0 0; border-top: 1px solid var(--sw-rule); }
}
@media (max-width: 500px) {
  .sw-landing-site .sw-school-stage { grid-template-columns: minmax(0, 1fr); }
  .sw-landing-site .sw-about-values ul { grid-template-columns: minmax(0, 1fr); }
  .sw-landing-site .sw-enquiry-grid { grid-template-columns: 1fr; }
  .sw-landing-site .sw-platform-message .sw-original-message { font-size: 16px; }
  .sw-landing-site .sw-hero-actions { gap: 12px; }
  .sw-landing-site .sw-hero-actions .sw-button { padding-inline: 16px; }
}
