/* Shared page rhythm: one visual language across story, courses and visits. */
:root{--lavender:#b29aff;--page-width:1400px}
.masthead nav a{font-family:var(--sans);text-decoration:none}
.about-page .masthead nav a,.course-page .masthead nav a{padding:9px 0;font-size:12px;font-weight:600;min-height:44px;color:var(--muted);border-radius:0}
.about-page .masthead nav a.active-nav,.course-page .masthead nav a:hover{color:var(--lime)}
.about-page .masthead nav a.active-nav:after{left:0;right:0;bottom:2px}
.about-page main{max-width:var(--page-width);margin:auto;overflow:visible;padding:0 6%}
.about-hero{min-height:0;padding:48px 0 42px;grid-template-columns:1fr 1fr;gap:5%;background:none}
.about-hero-copy h1{font-size:clamp(48px,5.1vw,72px);line-height:1.05;letter-spacing:-.7px;text-transform:none;margin:20px 0;font-weight:700}
.about-hero-copy h1 em{color:var(--lime)}
.about-hero-copy>p:not(.eyebrow){font-size:17px;line-height:1.7}
.about-actions{gap:16px;flex-wrap:wrap;margin-top:26px}
.about-hero-image img{height:440px;filter:none;box-shadow:none;border-radius:24px}
.about-hero-image:before{display:none}
.about-hero-image figcaption{background:linear-gradient(0deg,#101113ee,#10111380);border:0;backdrop-filter:none;left:0;right:0;bottom:0;border-radius:0 0 24px 24px;padding:28px}
.about-intro,.about-journey,.about-experience,.about-locations{padding:60px 0;background:none;gap:5%}
.about-intro{grid-template-columns:.35fr 1.65fr}
.about-intro h2,.about-journey h2,.about-experience h2,.about-locations h2{font-size:clamp(34px,3.8vw,52px);line-height:1.08;margin-bottom:22px}
.about-intro>div>p,.about-journey>div>p{font-size:16px;line-height:1.75}
.about-values{margin:0 0 60px;background:none;border:0;border-radius:0;gap:20px}
.about-values article{min-height:0;padding:30px;border:1px solid var(--line);border-radius:16px;background:#17181c}
.about-values article:hover{transform:none;border-color:#c8ff6560}
.about-values h3{margin:26px 0 16px;font-size:30px}
.about-values p{font-size:14px}
.about-journey{grid-template-columns:.7fr 1.3fr}.journey-visual{width:100%;max-width:300px;margin:auto}.journey-visual strong{font-size:88px}
.about-journey dl{margin-top:26px}.about-journey dd{line-height:1.5}
.about-location-grid{margin-top:28px;gap:24px}.about-location-grid article{background:#17181c;border-color:#ffffff25;border-radius:18px;padding:32px}
.about-location-grid .text-link{display:block;margin-top:18px;color:var(--lime)}
.about-finale{padding:58px 30px;margin:0 0 65px;border:1px solid #c8ff6535;border-radius:18px;background:radial-gradient(circle at 80% 0,#a58bfa15,transparent 70%),#17181c}
.about-finale h2{font-size:clamp(38px,4.5vw,62px);line-height:1.04;text-transform:none}.about-finale h2 em{color:var(--lime)}
.course-hero{min-height:0;padding-top:48px;padding-bottom:42px;gap:5%}.course-hero h1{font-size:clamp(50px,5.4vw,78px);line-height:1.03;letter-spacing:-.7px}.course-summary{font-size:17px}.course-back{margin-bottom:22px}.course-hero-photo img{height:440px;max-height:440px;border-radius:24px}.course-actions{gap:18px;flex-wrap:wrap}
.visit-intro h1{font-size:clamp(48px,5.1vw,72px);letter-spacing:-.7px}.visit-intro>p:not(.eyebrow){font-size:17px}
@media(max-width:860px){.about-page .masthead nav a,.course-page .masthead nav a{min-height:70px;padding:18px 42px 18px 34px;font:600 34px/1 var(--serif);color:var(--ink)}.about-page .masthead nav a.active-nav:after{left:auto;right:2px;bottom:auto;height:auto;background:none}.about-hero{grid-template-columns:1fr 1fr}.about-hero-copy h1{font-size:48px}.about-hero-image img{height:380px}}
@media(max-width:700px){.about-page main{padding:0 6%}.about-hero{grid-template-columns:1fr;padding:32px 0;gap:24px}.about-hero-copy h1,.visit-intro h1{font-size:clamp(44px,9.4vw,64px)}.about-hero-copy>p:not(.eyebrow){font-size:15px}.about-hero-image img{height:290px;border-radius:16px}.about-hero-image figcaption{padding:20px;border-radius:0 0 16px 16px}.about-actions{flex-direction:row;align-items:center}.about-intro,.about-journey,.about-experience{grid-template-columns:1fr;gap:24px;padding:40px 0}.about-values{grid-template-columns:1fr;gap:14px;margin-bottom:40px}.about-values article{padding:26px}.about-locations{padding:40px 0}.about-location-grid{grid-template-columns:1fr}.about-journey dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.about-journey dt{font-size:27px}.about-finale{padding:38px 22px;margin-bottom:40px}.about-finale h2{font-size:42px}.course-hero{padding-top:32px}.course-hero h1{font-size:52px;line-height:1.04}.course-hero-photo img{height:290px}.course-summary{font-size:15px}}
.skip-link{position:fixed;left:16px;top:-100px;z-index:100;padding:10px 16px;background:var(--lime);color:#101113;border-radius:6px}.skip-link:focus{top:12px}
/* Identical site chrome on every page. */
.masthead.unified-header{height:82px;padding:0 max(5%,calc((100vw - 1280px)/2));gap:28px}
.unified-header .brand{gap:12px}.unified-header .brand-logo{width:50px;height:50px;flex:0 0 50px}.unified-header .brand>span:last-child{font:800 16px/1.15 var(--sans);letter-spacing:2px}.unified-header .brand small{font:700 8px/1.5 var(--sans);letter-spacing:1.7px;margin-top:5px}
.masthead.unified-header nav{gap:26px}.masthead.unified-header nav a{position:relative;padding:12px 0;min-height:44px;font:600 12px/20px var(--sans);border:0;border-radius:0;color:var(--muted)}
.masthead.unified-header nav a:hover,.masthead.unified-header nav .active-nav{color:var(--lime)}.masthead.unified-header nav a:before,.masthead.unified-header nav a:after{display:none}.masthead.unified-header nav a.active-nav:after{display:block;content:'';position:absolute;left:0;right:0;bottom:4px;top:auto;height:2px;background:var(--lime);transform:none}
.unified-header .header-actions{gap:12px}.unified-header .admission-button{height:46px;padding:0 20px;gap:0;font:800 12px/1 var(--sans);white-space:nowrap}.unified-header .admission-button .cta-long,.unified-header .admission-button .cta-short{font:inherit}
.site-footer.unified-footer,.course-page>.site-footer.unified-footer{display:block;margin:0;width:100%;padding:48px 6% 24px;border-top:1px solid var(--line);background:#0d0e10}
.unified-footer .footer-inner{display:grid;grid-template-columns:1.3fr 1fr .7fr;gap:35px;max-width:1232px;margin:auto;font:400 12px/1.7 var(--sans);text-transform:none;letter-spacing:0}
.unified-footer .footer-school,.unified-footer .footer-connect,.unified-footer nav{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.unified-footer .footer-name{font-weight:800;font-size:15px;letter-spacing:1px}.unified-footer p{color:var(--muted);margin-bottom:6px}.unified-footer .footer-connect>span{font-size:9px;letter-spacing:1.5px;color:var(--muted)}.unified-footer a{font:inherit;color:#c7c8cf}.unified-footer a:hover{color:var(--lime)}.unified-footer .footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:22px;margin-top:10px;font-size:10px;color:var(--muted)}
.visit-main{width:100%;max-width:1400px;padding-top:48px}.visit-intro{padding-bottom:40px}.visit-card{padding:32px}.visit-card h2{font-size:36px}.visit-help{padding-top:48px;margin-top:48px}.visit-media{padding-top:48px}
.course-results,.course-roadmap,.course-fit,.course-faq-focused,.course-proof{padding-top:60px;padding-bottom:60px}.course-final{padding-top:60px;padding-bottom:60px}.course-final h2{font-size:clamp(38px,4.5vw,62px);line-height:1.04}.course-hero-photo figcaption{border:0;border-radius:0 0 24px 24px;left:0;right:0;bottom:0;padding:28px;background:linear-gradient(0deg,#101113ee,#10111380);backdrop-filter:none}.course-results h2,.course-roadmap h2,.course-proof h2,.course-fit h2,.course-faq-focused h2{font-size:clamp(34px,3.8vw,52px);line-height:1.08}
@media(max-width:900px){.masthead.unified-header{height:68px;padding:0 5%;gap:12px}.unified-header .brand-logo{width:40px;height:40px;flex-basis:40px}.unified-header .brand>span:last-child{font-size:12px;letter-spacing:1.2px}.unified-header .brand small{font-size:6px;letter-spacing:1px}.unified-header .menu-toggle{display:grid}.unified-header .admission-button{height:44px;padding:0 14px}.unified-header .cta-long{display:none}.unified-header .cta-short{display:inline}.masthead.unified-header nav{display:none;position:fixed;top:68px;left:0;right:0;height:calc(100dvh - 68px);padding:25px 6%;gap:0;background:#121316fa}.masthead.unified-header nav.is-open{display:flex;flex-direction:column;align-items:stretch}.masthead.unified-header nav a{min-height:70px;font:600 32px/1 var(--serif);padding:20px 0;border-bottom:1px solid var(--line)}.masthead.unified-header nav a.active-nav:after{display:none}}
@media(min-width:901px){.unified-header .menu-toggle{display:none}.unified-header .cta-long{display:inline}.unified-header .cta-short{display:none}}
@media(max-width:700px){.site-footer.unified-footer{padding-top:35px}.unified-footer .footer-inner{grid-template-columns:1fr 1fr;gap:28px}.unified-footer .footer-school{grid-column:1/-1}.unified-footer .footer-bottom{flex-direction:column;gap:10px}.visit-main{padding-top:32px}.visit-help,.visit-media{padding-top:40px}.course-results,.course-roadmap,.course-fit,.course-faq-focused,.course-proof{padding-top:40px;padding-bottom:40px}.course-final{padding:40px 6%}.course-final h2{font-size:42px}.course-hero-photo figcaption{padding:20px;border-radius:0 0 16px 16px}}
.course-proof .proof-gallery{grid-template-columns:1fr}.course-proof .proof-gallery figure.wide{grid-column:auto}.course-proof .proof-gallery img,.course-proof .proof-gallery .wide img{height:310px;width:100%;border-radius:16px}.course-quick-proof{gap:16px}.visit-help p+.button,.visit-help p+.text-link{margin-top:18px}
/* One content boundary across every page. The course rail sits outside it. */
:root{--content-width:1232px;--content-gutter:6vw}
.explore-intro,.catalogue{max-width:none;width:min(var(--content-width),calc(100% - 2 * var(--content-gutter)));padding-left:0;padding-right:0;margin-left:auto;margin-right:auto}
.home-proof{width:100%;max-width:none;padding-left:0;padding-right:0}
.about-page main,.visit-main{width:min(var(--content-width),calc(100% - 2 * var(--content-gutter)));max-width:none;padding-left:0;padding-right:0;margin-left:auto;margin-right:auto}
.course-page main{width:100%;margin-left:0;overflow:visible}
.course-page main>section{width:min(var(--content-width),calc(100% - 2 * var(--content-gutter)));margin-left:auto;margin-right:auto;padding-left:0;padding-right:0}
.course-page .course-conversion-band{padding:24px 28px}.course-page .course-final{padding-left:28px;padding-right:28px;border-radius:18px;margin-bottom:60px}
.course-side-strip{width:48px}.course-side-strip strong{font-size:15px}
@media(max-width:700px){.course-page main>section,.about-page main,.visit-main,.explore-intro,.catalogue{width:calc(100% - 12vw)}.course-side-strip{width:100%}.course-page .course-conversion-band{padding:20px}.course-page .course-final{padding-left:22px;padding-right:22px;margin-bottom:40px}}
.home-proof{width:min(var(--content-width),calc(100% - 2 * var(--content-gutter)));margin-left:auto;margin-right:auto}

.unified-footer .footer-bottom{flex-wrap:wrap;align-items:center}.unified-footer .developer-credit{line-height:1.6}
