:root{--page:#fff;--ink:#172638;--muted:#4e5a68;--footer:#101922;--accent:#df4b94;--accent-soft:#efbed5;--teal:#08a8ad;--sans:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;--serif:"Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;color:var(--ink);background:var(--footer);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--footer);min-width:320px;min-height:100svh;margin:0}button,input,textarea,select{font:inherit}img{max-width:100%}.route-loading{background:var(--page);min-height:100svh}#top{background:var(--page);min-height:100svh;color:var(--ink);overflow-x:clip}.topbar{z-index:30;background:#fff;padding:0;display:grid;position:sticky;top:0}.header-main{justify-content:space-between;align-items:center;gap:clamp(22px,4vw,60px);width:min(100%,1280px);min-height:86px;margin:0 auto;padding:16px clamp(20px,5vw,84px);display:flex}.site-logo{flex:none;width:clamp(112px,12vw,176px);transition:opacity .18s,transform .18s;display:inline-flex}.site-logo:hover{opacity:.78;transform:translateY(-2px)}.contact-link:focus-visible,.site-logo:focus-visible,.site-menu a:focus-visible,.menu-button:focus-visible,.site-footer a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.site-menu a:focus-visible,.menu-button:focus-visible{outline-color:#fff}.header-menu a:focus-visible,.header-menu .menu-button:focus-visible{outline-color:var(--accent)}.hero-section{justify-items:center;padding:clamp(42px,6vw,84px) clamp(20px,6vw,96px) clamp(64px,8vw,108px);display:grid}.site-logo img{width:100%;height:auto;display:block}.hero-frame{aspect-ratio:2.22;background:#e9e9e7;width:min(100%,1408px);overflow:hidden}.hero-frame img{object-fit:cover;width:100%;height:100%;display:block}.poem-graphic{width:clamp(300px,32vw,500px);max-width:100%;height:auto;margin-top:clamp(24px,3vw,40px);display:block}.identity{color:var(--muted);text-align:center;text-transform:uppercase;gap:8px;margin-top:clamp(36px,5vw,72px);font-size:clamp(12px,1vw,14px);display:grid}.identity strong{color:var(--ink);font-family:var(--serif);font-size:clamp(18px,1.8vw,28px);font-weight:500}.showcase-section,.document-section,.contact-section{padding-inline:clamp(22px,7vw,112px)}.showcase-section h2,.document-section h2,.programs-section h2,.contact-section h2{color:var(--ink);font-family:var(--serif);text-align:center;text-transform:uppercase;margin:clamp(42px,6vw,74px) 0 0;font-size:clamp(30px,3.25vw,46px);font-weight:500;line-height:1}.programs-section{background:#fff;padding:clamp(78px,9vw,132px) clamp(22px,7vw,112px);scroll-margin-top:86px}.programs-shell{width:min(100%,1240px);margin:0 auto}.programs-heading{text-align:center;margin-bottom:clamp(48px,6vw,78px)}.programs-section h2{letter-spacing:normal;margin:0}.programs-heading>p{max-width:560px;color:var(--muted);margin:24px auto 0;font-size:clamp(14px,1vw,16px);line-height:1.55}.programs-list{border-top:2px solid var(--ink)}.program-row{border-bottom:1px solid #1726383d;grid-template-columns:72px minmax(250px,.9fr) minmax(340px,1.1fr);gap:clamp(24px,4vw,64px);padding:clamp(32px,4vw,52px) 0;display:grid}.program-index{color:var(--teal);font-family:var(--serif);font-size:30px;line-height:1}.program-name>p{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:0 0 18px;font-size:10px;font-weight:700;line-height:1.4}.program-name h3{max-width:430px;color:var(--ink);font-family:var(--serif);letter-spacing:-.025em;margin:0;font-size:clamp(27px,2.3vw,36px);font-weight:500;line-height:1.08}.program-detail{align-content:start;display:grid}.program-detail>p{max-width:640px;color:var(--muted);margin:0;font-size:clamp(14px,1vw,16px);line-height:1.6}.program-detail a{min-width:210px;color:var(--ink);letter-spacing:.1em;text-transform:uppercase;border-top:1px solid #17263852;border-bottom:1px solid #17263852;justify-content:space-between;justify-self:start;gap:24px;padding:10px 0;font-size:10px;font-weight:700;text-decoration:none;transition:color .18s,border-color .18s;display:inline-flex}.program-detail a:hover{border-color:var(--accent);color:var(--accent)}.program-detail a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media (width<=900px){.program-row{grid-template-columns:52px minmax(0,.85fr) minmax(0,1.15fr);gap:24px}.program-name h3{font-size:28px}}@media (width<=680px){.programs-section{padding:72px 18px 88px;scroll-margin-top:68px}.programs-heading{margin-bottom:42px}.programs-section h2{font-size:21px}.programs-heading>p{max-width:320px;margin-top:20px;font-size:14px}.program-row{grid-template-columns:38px minmax(0,1fr);gap:18px 14px;padding:30px 0 34px}.program-index{font-size:22px}.program-name h3{font-size:26px}.program-detail{grid-column:2}}.vision-section{background:#fff;padding:clamp(78px,10vw,136px) clamp(22px,7vw,112px)}.vision-shell{width:min(100%,1240px);margin:0 auto}.vision-intro{text-align:center;max-width:none}.vision-intro h2{color:var(--ink);font-family:var(--serif);letter-spacing:normal;text-transform:uppercase;margin:0;font-size:clamp(30px,3.25vw,46px);font-weight:500;line-height:1}.vision-copy{text-align:center;flex-direction:column;align-items:center;gap:24px;margin:28px 0 clamp(48px,6vw,72px);display:flex}.vision-copy p{max-width:760px;color:var(--ink);font-family:var(--serif);letter-spacing:.025em;text-transform:uppercase;margin:0;font-size:clamp(18px,1.8vw,24px);line-height:1.35}.vision-copy a{width:fit-content;color:var(--ink);border-bottom:1px solid #17263866;align-items:center;gap:12px;padding:9px 0;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.vision-copy a span{color:var(--accent);font-size:19px;line-height:0}.vision-principles{border-top:1px solid #1726383d;border-bottom:1px solid #1726383d;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.vision-principles article{min-height:220px;padding:28px clamp(20px,3vw,42px) 32px 0}.vision-principles article+article{border-left:1px solid #1726383d;padding-left:clamp(20px,3vw,42px)}.vision-principles span{color:var(--accent);font-family:var(--serif);font-size:20px}.vision-principles h3{color:var(--ink);font-family:var(--serif);letter-spacing:-.025em;margin:38px 0 14px;font-size:clamp(22px,1.8vw,28px);font-weight:500;line-height:1.08}.vision-principles p{max-width:290px;color:var(--muted);margin:0;font-size:14px;line-height:1.55}@media (width<=760px){.vision-section{padding:78px 22px}.vision-intro h2{font-size:30px}.vision-copy{grid-template-columns:1fr;gap:24px;margin:42px 0 58px}.vision-principles{grid-template-columns:1fr}.vision-principles article,.vision-principles article+article{border-left:0;min-height:0;padding:26px 0 30px}.vision-principles article+article{border-top:1px solid #1726382e}.vision-principles h3{margin-top:28px}}.partners-section{background:#fff;padding:clamp(70px,8vw,108px) clamp(22px,7vw,112px)}.partners-shell{width:min(100%,1240px);margin:0 auto}.partners-heading{border-bottom:1px solid #17263833;padding-bottom:clamp(32px,4vw,48px)}.partners-heading h2{color:var(--ink);font-family:var(--serif);letter-spacing:normal;text-transform:uppercase;margin:0;font-size:clamp(30px,3.25vw,46px);font-weight:500;line-height:1}.partners-groups{border-bottom:1px solid #17263833;grid-template-columns:minmax(360px,1.55fr) minmax(0,2.15fr);display:grid}.partner-group{padding:22px 0 0 30px}.partner-group+.partner-group{border-left:1px solid #17263833}.partner-group h3{color:var(--ink);letter-spacing:.08em;text-transform:uppercase;margin:0 0 16px;font-family:inherit;font-size:12px;font-weight:700;line-height:1.2}.partners-grid{grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.sponsors-grid{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.partner-logo{background:#fff;place-items:center;min-height:112px;padding:18px 22px 28px 0;display:grid}.sponsor-group .partner-logo{padding-right:20px}.partner-logo img{object-fit:contain;width:100%;max-width:130px;max-height:56px;transition:transform .18s;display:block}.partner-logo:hover img,.partner-logo:focus-visible img{transform:scale(1.04)}.partner-logo:focus-visible{outline:2px solid var(--accent);outline-offset:-4px}@media (width<=900px){.partners-groups{grid-template-columns:minmax(300px,1.4fr) minmax(0,1.6fr)}.partner-group{padding-left:20px}.partners-grid{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:8px}}@media (width<=560px){.partners-section{padding:64px 18px 72px}.partners-heading h2{font-size:30px}.partners-groups{grid-template-columns:1fr}.partner-group{padding:22px 0 0}.partner-group+.partner-group{border-top:1px solid #17263833;border-left:0;margin-top:10px}.partner-group h3{margin-bottom:10px}.sponsor-group .partner-logo{min-height:88px;padding:8px 0 24px}.partners-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.partner-logo{min-height:94px;padding:12px 18px 20px 0}.partner-logo img{max-width:112px;max-height:44px}}.split-title{justify-content:center;gap:clamp(6px,.9vw,13px);max-width:100%;display:inline-flex}.section-kicker{width:max-content;color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 auto clamp(22px,3vw,38px);font-size:11px;font-weight:700}.poster-grid,.document-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,3vw,42px);width:min(100%,1180px);margin:0 auto;display:grid}.poster{aspect-ratio:.72;background:#0b0f14;border-radius:2px;overflow:hidden}.poster img{object-fit:cover;width:100%;height:100%;display:block}.document-card{color:var(--ink);text-align:center;text-transform:uppercase;align-content:start;gap:12px;display:grid}.document-inner{background:#fff;border:2px solid #2c3136;align-content:start;min-height:clamp(330px,38vw,520px);padding:clamp(24px,3vw,44px);display:grid;position:relative;overflow:hidden}.document-blue .document-inner:before{content:"";background:linear-gradient(90deg,#3e9bdf,#74c7ef),repeating-linear-gradient(140deg,#ffffff1a 0 16px,#0000 16px 32px);width:30%;position:absolute;top:0;bottom:0;left:0}.document-paper .document-inner{color:#101112}.document-ink .document-inner{text-align:left}.document-chip{background:var(--accent-soft);color:#394169;border-radius:6px;justify-self:end;min-width:64px;padding:6px 10px;font-weight:700}.document-inner h3{z-index:1;color:#293262;width:min(100%,260px);margin:clamp(54px,8vw,112px) auto 8px;font-size:clamp(18px,1.7vw,25px);line-height:1.2;position:relative}.document-inner p{z-index:1;color:#25282c;font-size:12px;font-weight:700;position:relative}.document-lines{gap:10px;margin-top:clamp(28px,4vw,52px);display:grid}.document-lines span{opacity:.12;background:#17191d;height:8px}.document-card>strong{font-family:var(--serif);font-size:clamp(15px,1.05vw,17px);font-weight:500}.contact-section h2{text-align:left;margin-top:0;margin-bottom:clamp(26px,4vw,42px)}.contact-copy .section-kicker{margin:0 0 14px}.contact-list{gap:0;width:100%;margin:0;display:grid}.contact-list div{border-top:1px solid #17263824;grid-template-columns:92px minmax(0,1fr);gap:18px;padding:15px 0;display:grid}.contact-list dt{color:var(--accent);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:700}.contact-list dd{color:var(--ink);margin:0;font-size:clamp(15px,1vw,17px);line-height:1.35}.contact-list a{color:inherit;text-decoration:none}.contact-list a:hover{color:var(--accent)}.contact-link{border:1px solid var(--ink);min-height:44px;color:var(--ink);letter-spacing:.06em;text-transform:uppercase;border-radius:6px;justify-content:center;align-items:center;margin-top:28px;padding:0 18px;font-size:12px;font-weight:700;text-decoration:none;transition:background .18s,color .18s;display:inline-flex}.map-panel-top{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;justify-content:space-between;gap:18px;padding:12px 0;font-size:11px;font-weight:700;display:flex}.map-panel-top span:first-child{color:var(--teal)}.school-map{z-index:0;background:#dce1e4;border-top:1px solid #17263824;width:100%;min-height:460px;overflow:hidden}.map-loader{background:#dce1e4;min-height:460px}.leaflet-container{font-family:var(--sans)}.school-map .leaflet-tile-pane{filter:grayscale()sepia(.12)hue-rotate(164deg)saturate(.72)brightness(.9)contrast(.94)}.school-map .leaflet-overlay-pane{filter:saturate(.75)}.school-map .leaflet-control-zoom{box-shadow:none;border:0}.school-map .leaflet-control-zoom a{color:#fff;background:#101922eb;border-color:#ffffff14}.school-map .leaflet-control-zoom a:hover{background:var(--ink);color:#fff}.school-map .leaflet-control-attribution{color:var(--muted);background:#ffffffb8;font-size:10px}.school-map .leaflet-control-attribution a{color:var(--ink)}.school-map .leaflet-popup-content-wrapper,.school-map .leaflet-popup-tip{background:var(--footer);color:#fff;border-radius:2px;box-shadow:0 12px 28px #10192247}.school-map .leaflet-popup-content{margin:12px 14px;font-size:13px;line-height:1.35}.school-map .leaflet-popup-close-button{color:#ffffffb8}.school-map .leaflet-popup-close-button:hover{color:#fff}.site-footer{background:var(--footer);color:#f6f2ed;box-shadow:0 24px 0 var(--footer);padding:clamp(46px,6vw,72px) clamp(22px,7vw,112px) 24px}.footer-shell{width:min(100%,1240px);margin:0 auto}.footer-main{grid-template-columns:minmax(280px,1.5fr) repeat(2,minmax(180px,.65fr));gap:clamp(30px,5vw,76px);padding-bottom:clamp(42px,6vw,68px);display:grid}.footer-brand{align-self:start}.footer-brand strong{color:#fff;font-family:var(--serif);letter-spacing:.24em;margin-bottom:20px;font-size:clamp(32px,3.2vw,44px);font-weight:400;line-height:1;display:block}.footer-brand p{color:#ffffffc7;font-family:var(--serif);margin:0 0 14px;font-size:clamp(16px,1.25vw,19px);line-height:1.25}.footer-brand>span{color:var(--teal);letter-spacing:.18em;text-transform:uppercase;font-size:10px;font-weight:700}.footer-column{color:#ffffffb3;flex-direction:column;align-items:flex-start;gap:9px;font-size:12px;font-style:normal;line-height:1.55;display:flex}.footer-column strong{color:var(--teal);letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px;font-size:10px}.footer-column a{color:inherit;text-decoration:none;transition:color .16s,transform .16s}.footer-column a:hover{color:#fff;transform:translate(3px)}.footer-contact strong{color:var(--accent)}.footer-contact a:first-of-type{margin-top:10px}.footer-bottom{color:#ffffff75;letter-spacing:.16em;text-transform:uppercase;border-top:1px solid #ffffff47;grid-template-columns:1fr auto;align-items:center;gap:24px;padding-top:18px;font-size:10px;font-weight:700;display:grid}.footer-bottom a{color:#fff;justify-self:end;text-decoration:none}.footer-bottom a span{color:var(--accent);margin-left:8px}.site-menu{text-align:center;grid-template-columns:repeat(4,minmax(92px,1fr));align-items:start;gap:clamp(18px,4vw,56px);width:min(100%,980px);display:grid}.header-menu{text-align:left;flex:auto;grid-template-columns:repeat(6,max-content);justify-content:end;gap:clamp(14px,2vw,30px);width:auto;min-width:0}.menu-column{align-content:start;justify-items:center;gap:4px;min-height:30px;padding-top:13px;transition:min-height .26s cubic-bezier(.22,1,.36,1);display:grid;position:relative}.menu-heart{opacity:0;width:14px;height:auto;transition:opacity .18s,transform .22s;position:absolute;top:0;transform:translateY(-3px)scale(.78)}.menu-column.is-open .menu-heart,.menu-column:focus-within .menu-heart{opacity:1;transform:translateY(0)scale(1)}.menu-button{color:#fff;cursor:pointer;letter-spacing:.18em;text-transform:uppercase;background:0 0;border:0;justify-self:center;padding:0;font-size:clamp(12px,1.4vw,18px);line-height:1.1;text-decoration:none;transition:color .18s;position:relative}.menu-link{display:inline-flex}.header-menu .menu-column{min-height:0;padding-top:0}.header-menu .menu-heart{display:none}.header-menu .menu-button{color:var(--ink);letter-spacing:.02em;white-space:nowrap;-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;font-size:14px;font-weight:700;line-height:1.25}.header-menu .menu-column:has(.submenu a) .menu-button:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:7px;height:7px;margin-left:8px;display:inline-block;transform:translateY(-2px)rotate(45deg)}.menu-column.menu-blue.is-active .menu-button,.menu-column.menu-blue .menu-button:hover,.menu-column.menu-blue .submenu a:hover{color:var(--teal)}.menu-column.menu-pink.is-active .menu-button,.menu-column.menu-pink .menu-button:hover,.menu-column.menu-pink .submenu a:hover{color:var(--accent)}.menu-column.menu-yellow.is-active .menu-button,.menu-column.menu-yellow .menu-button:hover,.menu-column.menu-yellow .submenu a:hover{color:#eca82d}.submenu{opacity:0;pointer-events:none;visibility:hidden;gap:3px;width:max-content;min-width:100%;transition:opacity .22s,transform .24s cubic-bezier(.22,1,.36,1),visibility 0s linear .22s;display:grid;position:absolute;top:39px;left:50%;transform:translate(-50%,8px)}.menu-column.is-open .submenu{opacity:1;pointer-events:auto;visibility:visible;transition:opacity .22s,transform .24s cubic-bezier(.22,1,.36,1),visibility linear;transform:translate(-50%)}.submenu a{color:#fff;letter-spacing:.14em;text-transform:uppercase;font-size:clamp(10px,1.05vw,13px);line-height:1.15;text-decoration:none}.header-menu .submenu{z-index:40;background:#fff;border:1px solid #1726381f;border-radius:2px;width:245px;min-width:230px;padding:10px 0;display:block;top:calc(100% + 18px);left:0;transform:translateY(8px);box-shadow:0 18px 42px #10192224}.header-menu .menu-column:last-child .submenu,.header-menu .menu-column:nth-last-child(2) .submenu{left:auto;right:0}.header-menu .menu-column.is-open .submenu{transform:translate(0)}.header-menu .submenu a{width:100%;min-height:34px;color:var(--ink);letter-spacing:0;text-align:left;text-transform:none;-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;align-items:center;padding:9px 18px;font-size:13px;font-weight:600;line-height:1.25;display:flex}.header-menu .submenu a:hover{background:#1726380d}.hero-copy{max-width:610px}.hero-eyebrow{color:var(--teal);letter-spacing:.18em;text-transform:uppercase;margin:0 0 clamp(34px,5vw,64px);font-size:11px;font-weight:700}.hero-copy h1{color:var(--ink);font-family:var(--serif);letter-spacing:-.06em;margin:0;font-size:clamp(64px,7.7vw,116px);font-weight:400;line-height:.78}.hero-copy h1 em{color:var(--accent);font-weight:400}.hero-lede{max-width:520px;color:var(--muted);margin:clamp(40px,5vw,66px) 0 0;font-size:clamp(16px,1.35vw,20px);line-height:1.45}.hero-actions{flex-wrap:wrap;gap:12px 30px;margin-top:clamp(32px,4vw,48px);display:flex}.hero-actions a{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);min-width:205px;color:var(--ink);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:36px;padding:12px 0;font-size:11px;font-weight:700;text-decoration:none;transition:color .16s,border-color .16s;display:inline-flex}.program-detail>p+a{margin-top:28px}.hero-actions a:first-child,.hero-actions a:hover{border-color:var(--accent);color:var(--accent)}.hero-frame{aspect-ratio:1.08;background:#e9e9e7;width:100%;margin:0}.hero-frame img{object-fit:cover;object-position:49% center;width:100%;height:calc(100% - 34px);display:block}.hero-frame figcaption{height:34px;color:var(--muted);letter-spacing:.15em;text-transform:uppercase;align-items:center;font-size:9px;font-weight:700;display:flex}.showcase-section,.document-section,.contact-section{padding:clamp(76px,10vw,148px) clamp(22px,7vw,112px)}.contact-section{text-align:left;display:block}.showcase-section,.contact-section{background:#f4f3ef}.section-heading{border-top:1px solid #1726386b;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(18px,2.5vw,36px);width:min(100%,1240px);margin:0 auto clamp(48px,7vw,92px);padding-top:16px;display:grid}.section-heading>p:first-child{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;grid-column:1/4;margin:0;font-size:10px;font-weight:700}.section-heading>p:first-child span{color:var(--teal);font-family:var(--serif);letter-spacing:0;margin-right:18px;font-size:17px}.section-heading h2,.contact-section .section-heading h2{color:var(--ink);font-family:var(--serif);letter-spacing:-.045em;text-align:left;text-transform:none;grid-column:4/9;margin:0;font-size:clamp(42px,5.2vw,74px);font-weight:400;line-height:.95}.section-description{color:var(--muted);grid-column:9/13;align-self:end;margin:0;font-size:clamp(14px,1.15vw,17px);line-height:1.45}.poster-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,3vw,42px);width:min(100%,1240px);margin:0 auto;display:grid}.poster{aspect-ratio:auto;background:0 0;border-radius:0;gap:14px;display:grid;overflow:visible}.poster-image{aspect-ratio:.72;background:var(--footer);overflow:hidden}.poster-image img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.22,1,.36,1);display:block}.poster:hover .poster-image img{transform:scale(1.025)}.poster-caption{border-top:1px solid #17263857;grid-template-columns:30px minmax(0,1fr);align-items:baseline;gap:12px;padding-top:12px;display:grid}.poster-caption span{color:var(--accent);font-family:var(--serif);font-size:14px}.poster-caption h3{color:var(--ink);font-family:var(--serif);margin:0;font-size:clamp(18px,1.8vw,26px);font-weight:400}.document-grid{border-bottom:1px solid #17263857;width:min(100%,1240px);margin:0 auto;display:grid}.document-card{min-height:128px;color:var(--ink);text-align:left;text-transform:none;border-top:1px solid #17263857;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:clamp(20px,3vw,44px);padding:24px 18px 24px 0;text-decoration:none;transition:padding .18s,background .18s;display:grid}.document-number{color:var(--teal);font-family:var(--serif);font-size:18px}.document-card p{color:var(--muted);letter-spacing:.15em;text-transform:uppercase;margin:0 0 4px;font-size:10px;font-weight:700}.document-card h3{color:var(--ink);font-family:var(--serif);letter-spacing:-.025em;margin:0;font-size:clamp(24px,2.7vw,40px);font-weight:400;line-height:1.05}.document-arrow{color:var(--accent);font-size:24px}.contact-layout{grid-template-columns:minmax(280px,.78fr) minmax(420px,1.22fr);gap:clamp(30px,5vw,82px);width:min(100%,1240px);margin:0 auto;display:grid}.contact-copy{border-top:1px solid var(--ink);border-bottom:1px solid #1726383d;align-content:start;justify-items:stretch;padding:0;display:grid}.contact-list{width:100%;margin:0;display:grid}.contact-list div{border-top:0;border-bottom:1px solid #17263829;grid-template-columns:90px minmax(0,1fr);gap:18px;padding:18px 0;display:grid}.contact-link{border:0;border-top:1px solid var(--accent);border-bottom:1px solid var(--accent);width:100%;min-height:52px;color:var(--ink);border-radius:0;justify-content:space-between;margin-top:28px;padding:0}.contact-link:hover{color:var(--accent);background:0 0}.map-panel{border-top:1px solid var(--ink);border-bottom:1px solid #1726383d}.hero-section{grid-template-columns:none;place-items:normal center;gap:0;width:auto;min-height:0;margin:0;padding:clamp(42px,6vw,84px) clamp(20px,6vw,96px) clamp(64px,8vw,108px);display:grid}.hero-frame{aspect-ratio:2.22;background:#e9e9e7;width:min(100%,1408px);margin:0;overflow:hidden}.hero-frame img{object-fit:cover;object-position:center;width:100%;height:100%;image-rendering:-webkit-optimize-contrast;image-rendering:high-quality;display:block;transform:translateZ(0)}.showcase-section,.document-section,.contact-section{background:0 0;padding-inline:clamp(22px,7vw,112px)}.showcase-section{padding-top:clamp(46px,7vw,92px);padding-bottom:clamp(58px,9vw,118px)}.document-section{padding-top:clamp(56px,8vw,116px);padding-bottom:clamp(62px,8vw,108px)}.poster-grid,.document-grid{border-bottom:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,3vw,42px);width:min(100%,1180px);margin:0 auto;display:grid}.poster{aspect-ratio:.72;background:#0b0f14;border-radius:2px;display:block;overflow:hidden}.poster img{object-fit:cover;width:100%;height:100%;display:block;transform:none}.document-card{gap:12px;align-items:initial;min-height:0;color:var(--ink);text-align:center;text-transform:uppercase;background:0 0;border-top:0;grid-template-columns:none;align-content:start;padding:0;text-decoration:none;transition:none;display:grid}.document-card:hover{background:0 0;padding-left:0}.contact-section{text-align:left;grid-template-columns:minmax(280px,.78fr) minmax(420px,1.22fr);justify-content:center;align-items:stretch;gap:clamp(30px,5vw,82px);padding-top:clamp(62px,8vw,118px);padding-bottom:clamp(84px,11vw,156px);display:grid}.contact-copy{border-top:2px solid var(--ink);border-bottom:1px solid #1726382e;align-content:center;justify-items:start;padding-block:clamp(26px,4vw,46px);display:grid}.contact-list div{border-top:1px solid #17263824;border-bottom:0;grid-template-columns:92px minmax(0,1fr);gap:18px;padding:15px 0}.contact-list div:last-child{border-bottom:1px solid #17263824}.contact-list dt{color:var(--accent)}.contact-link{border:1px solid var(--ink);border-radius:6px;justify-content:center;width:auto;min-height:44px;margin-top:28px;padding:0 18px}.contact-link:hover{background:var(--ink);color:#fff}.map-panel{border-top:2px solid var(--ink);border-bottom:1px solid #1726382e;grid-template-rows:auto minmax(360px,1fr);display:grid}@media (width<=900px){.topbar{position:static}.header-main{justify-items:center;min-height:0;padding-block:18px 20px;display:grid}.header-menu{text-align:center;grid-template-columns:repeat(3,minmax(92px,1fr));justify-content:center;row-gap:18px;width:min(100%,560px)}.header-menu .submenu{min-width:min(270px,86vw);left:50%;transform:translate(-50%,8px)}.header-menu .menu-column:last-child .submenu,.header-menu .menu-column:nth-last-child(2) .submenu{left:50%;right:auto}.header-menu .menu-column.is-open .submenu{transform:translate(-50%)}.hero-frame{aspect-ratio:1.45}.hero-section{grid-template-columns:1fr;min-height:auto}.hero-copy{max-width:680px}.poster-grid{grid-template-columns:1fr;width:min(100%,460px)}.document-grid{grid-template-columns:1fr;width:min(100%,760px)}.contact-layout{grid-template-columns:1fr}.contact-copy{justify-items:stretch}.contact-list div{text-align:left;grid-template-columns:90px minmax(0,1fr);gap:18px}.map-panel{grid-template-rows:auto 360px}.school-map{min-height:100%}.site-footer{position:static}.footer-main{grid-template-columns:repeat(3,minmax(0,1fr))}.site-menu{grid-template-columns:repeat(2,minmax(130px,1fr));row-gap:24px}.header-menu{grid-template-columns:repeat(3,minmax(92px,1fr))}}@media (width<=560px){.hero-section{gap:48px;padding:50px 18px 70px}.hero-frame{aspect-ratio:1/1.12}.hero-frame img{object-position:46% center}.hero-copy h1{font-size:clamp(58px,19vw,82px)}.hero-actions{display:grid}.hero-actions a{width:100%}.showcase-section,.document-section,.contact-section{padding:68px 18px}.section-heading{margin-bottom:44px;display:block}.section-heading h2,.contact-section .section-heading h2{margin-top:32px;font-size:clamp(42px,14vw,62px)}.section-description{margin-top:24px}.poster-grid{width:100%}.document-card{grid-template-columns:36px minmax(0,1fr) auto;gap:12px;min-height:112px;padding-right:4px}.document-card:hover{padding-left:0}.document-card h3{font-size:clamp(21px,7vw,30px)}.contact-list div{grid-template-columns:1fr;gap:5px}.site-footer{padding-inline:20px}.footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 24px}.footer-brand,.footer-contact{grid-column:1/-1}.footer-bottom{grid-template-columns:1fr auto}.site-menu{grid-template-columns:1fr}.header-menu{grid-template-columns:repeat(2,minmax(120px,1fr))}}@media (width<=900px){.hero-section{grid-template-columns:none;min-height:0}.poster-grid,.document-grid{grid-template-columns:1fr;width:min(100%,460px)}.contact-section{text-align:center;grid-template-columns:1fr}.contact-section h2{text-align:center}.contact-copy{justify-items:center}.contact-list div{text-align:center;grid-template-columns:1fr;gap:4px}}@media (width<=560px){.hero-section{gap:0;padding:clamp(42px,6vw,84px) 14px clamp(64px,8vw,108px)}.hero-frame{aspect-ratio:1/1.12}.split-title{gap:7px}.document-card{grid-template-columns:none;min-height:0;padding:0}.document-card h3{font-size:clamp(18px,2vw,30px)}}.menu-toggle{display:none}@media (width<=1024px){.topbar{position:sticky;top:0}.header-main{align-items:center;justify-items:initial;grid-template-columns:minmax(0,1fr) auto;gap:0 20px;min-height:74px;padding:12px 22px;display:grid}.site-logo{width:122px}.menu-toggle{width:46px;height:46px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #17263838;border-radius:50%;place-content:center;gap:5px;padding:0;transition:border-color .18s,background-color .18s;display:grid}.menu-toggle:hover,.menu-toggle:focus-visible{border-color:var(--ink);background:#1726380a}.menu-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.menu-toggle span{transform-origin:50%;background:currentColor;width:19px;height:1.5px;transition:opacity .18s,transform .22s cubic-bezier(.22,1,.36,1);display:block}.topbar.is-mobile-open .menu-toggle span:first-child{transform:translateY(6.5px)rotate(45deg)}.topbar.is-mobile-open .menu-toggle span:nth-child(2){opacity:0}.topbar.is-mobile-open .menu-toggle span:last-child{transform:translateY(-6.5px)rotate(-45deg)}.header-menu{opacity:0;pointer-events:none;text-align:left;visibility:hidden;border-top:0 solid #1726381f;grid-column:1/-1;grid-template-columns:1fr;justify-content:stretch;gap:0;width:100%;max-height:0;margin:0;padding:0;transition:max-height .32s cubic-bezier(.22,1,.36,1),opacity .18s,margin-top .22s,padding-top .22s,border-width .22s,visibility 0s linear .32s;display:grid;overflow:hidden}.topbar.is-mobile-open .header-menu{opacity:1;pointer-events:auto;visibility:visible;border-top-width:1px;max-height:calc(100svh - 86px);margin-top:12px;padding-top:4px;transition:max-height .42s cubic-bezier(.22,1,.36,1),opacity .2s,margin-top .22s,padding-top .22s,border-width .22s,visibility linear;overflow:hidden auto}.header-menu .menu-column{border-bottom:1px solid #1726381a;min-height:0;padding:0;display:block}.header-menu .menu-button{letter-spacing:.04em;text-align:left;justify-content:space-between;justify-self:stretch;align-items:center;width:100%;min-height:52px;padding:0 4px;font-size:13px;display:flex}.header-menu .menu-column:has(.submenu a) .menu-button:after{flex:none;margin-left:auto;margin-right:4px;transition:transform .22s cubic-bezier(.22,1,.36,1)}.header-menu .menu-column.is-open .menu-button:after{transform:translateY(2px)rotate(225deg)}.header-menu .submenu,.header-menu .menu-column:last-child .submenu,.header-menu .menu-column:nth-last-child(2) .submenu{width:100%;min-width:0;max-height:0;box-shadow:none;opacity:0;pointer-events:none;visibility:hidden;background:#fff;border:0;border-radius:0;gap:0;padding:0;transition:max-height .32s cubic-bezier(.22,1,.36,1),opacity .16s,padding .22s,visibility 0s linear .32s;display:grid;position:static;top:auto;left:auto;right:auto;overflow:hidden;transform:none}.header-menu .menu-column.is-open .submenu{opacity:1;pointer-events:auto;visibility:visible;max-height:580px;padding:5px 0 9px;transition:max-height .38s cubic-bezier(.22,1,.36,1),opacity .18s,padding .22s,visibility linear;transform:none}.header-menu .submenu a{min-height:42px;padding:10px 18px;font-size:13px}}@media (width<=560px){.header-main{min-height:68px;padding:10px 16px}.site-logo{width:108px}.menu-toggle{width:42px;height:42px}.topbar.is-mobile-open .header-menu{max-height:calc(100svh - 78px);margin-top:10px}}.topbar{color:#fff;background:#0b0c0e;position:sticky;top:0}.header-main{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:clamp(24px,4vw,58px);width:min(100%,1120px);min-height:104px;padding:18px 28px;display:grid;position:relative}.site-logo{width:clamp(104px,10vw,136px)}.site-logo img{filter:brightness(0)invert()}.header-center{text-align:center;justify-self:center;justify-items:center;width:max-content;min-width:0;max-width:100%;padding-top:12px;display:grid}.header-school-name{color:#fff;text-transform:uppercase;white-space:nowrap;margin:0 0 9px;font-size:clamp(13px,1.25vw,17px);font-weight:400;line-height:1.2}.header-menu{opacity:1;pointer-events:auto;visibility:visible;grid-template-columns:repeat(4,max-content);justify-content:center;gap:clamp(15px,1.8vw,27px);width:max-content;min-height:14px;max-height:none;margin-inline:auto;transition:min-height .36s cubic-bezier(.22,1,.36,1);display:grid;overflow:visible}.topbar.is-expanded .header-menu{min-height:330px}.header-menu .menu-column{border:0;justify-items:start;min-height:0;padding:0;display:grid}.header-menu .menu-button{color:#e6e6e6;letter-spacing:.16em;text-transform:uppercase;justify-self:start;width:auto;min-height:0;padding:0;font-size:10px;font-weight:600;line-height:1.4}.header-menu .menu-column:has(.submenu a) .menu-button:after{border-width:1px;width:5px;height:5px;margin-left:6px;transform:translateY(-2px)rotate(45deg)}.header-menu .submenu,.header-menu .menu-column:last-child .submenu,.header-menu .menu-column:nth-last-child(2) .submenu{width:max-content;min-width:180px;max-height:600px;box-shadow:none;opacity:0;pointer-events:none;visibility:hidden;background:0 0;border:0;gap:0;padding:0;transition:opacity .22s,transform .3s cubic-bezier(.22,1,.36,1),visibility 0s linear .3s;display:grid;position:absolute;top:26px;left:0;right:auto;overflow:hidden;transform:translateY(-8px)}.header-menu .menu-column.is-open .submenu{opacity:1;pointer-events:auto;visibility:visible;max-height:600px;transition:opacity .26s 45ms,transform .32s cubic-bezier(.22,1,.36,1) 45ms,visibility;transform:translateY(0)}.header-menu .submenu a{color:#d3d3d3;letter-spacing:.08em;text-transform:uppercase;min-height:0;padding:5px 0;font-size:10px;font-weight:500;line-height:1.4}.header-menu .submenu a:hover{color:#fff;background:0 0}.header-menu .menu-column.is-active .menu-button,.header-menu .menu-column .menu-button:hover{color:#fff}.header-menu a:focus-visible,.header-menu .menu-button:focus-visible,.site-logo:focus-visible{outline-color:#fff}.menu-toggle{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:0;grid-column:3;place-content:center;justify-self:end;gap:5px;width:42px;height:42px;margin-top:12px;padding:0;display:grid}.menu-toggle span{background:currentColor;width:22px;height:1px;display:block}.menu-toggle:hover,.menu-toggle:focus-visible{color:#fff;background:0 0}.site-footer{color:#fff;background:#0b0c0e;padding:22px 20px 15px;box-shadow:0 24px #0b0c0e}.footer-shell{width:min(100%,1120px)}.footer-main{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(34px,5vw,72px);padding-bottom:42px}.footer-stack{flex-direction:column;gap:clamp(34px,4vw,52px);display:flex}.footer-block{color:#f3f3f3;letter-spacing:.08em;font-size:12px;font-weight:400;line-height:1.4}.footer-block h2,.footer-block strong{color:#fff;font-family:var(--sans);letter-spacing:.1em;margin:0;font-size:12px;font-weight:700;line-height:1.35;display:block}.footer-block h2{text-transform:uppercase;font-weight:500}.footer-block p{margin:13px 0 0}.footer-address p,.footer-payments p{margin-top:10px}.footer-address p:last-child{margin-top:8px}.footer-payments p:last-child{max-width:220px}.footer-block a{color:inherit;text-decoration:none}.footer-block a:hover{color:#fff;text-underline-offset:2px;text-decoration:underline}.footer-bottom{color:#f3f3f3;letter-spacing:.16em;text-transform:none;border:0;justify-content:center;align-items:center;gap:18px;padding:0;font-size:8px;font-weight:400;display:flex}.footer-bottom a{color:inherit;font-size:7px;font-weight:400;text-decoration:none}.footer-bottom a:hover{color:#fff}@media (width<=1024px){.topbar.is-expanded .header-menu{min-height:0}.header-main{grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:0;min-height:82px;padding:14px 22px;position:static}.header-main:before{content:"";grid-area:1/1}.site-logo{grid-area:1/2;justify-self:center;width:108px}.header-center{display:contents}.header-school-name{display:none}.menu-toggle{grid-area:1/3;margin-top:0}.header-menu{opacity:0;pointer-events:none;visibility:hidden;background:#0b0c0e;border-top:0 solid #ffffff38;grid-template-columns:1fr;gap:0;width:100%;min-height:0;max-height:0;padding:0 22px;display:grid;position:absolute;top:100%;left:0;right:0;overflow:hidden}.topbar.is-mobile-open .header-menu{opacity:1;pointer-events:auto;visibility:visible;border-top-width:1px;max-height:calc(100svh - 82px);margin-top:0;padding:8px 22px 22px;overflow-y:auto}.header-menu .menu-column{border-bottom:1px solid #ffffff24}.header-menu .menu-button{justify-content:space-between;width:100%;min-height:45px;font-size:11px;display:flex}.header-menu .submenu,.header-menu .menu-column:last-child .submenu,.header-menu .menu-column:nth-last-child(2) .submenu{width:100%;min-width:0;max-height:0;position:static;transform:none}.header-menu .menu-column.is-open .submenu{max-height:580px;padding:2px 0 13px}.header-menu .submenu a{min-height:34px;padding:7px 0 7px 14px;font-size:11px}}@media (width<=560px){.header-main{grid-template-columns:42px minmax(0,1fr) 42px;gap:0;min-height:70px;padding:11px 16px}.site-logo{width:78px}.menu-toggle{width:42px;height:42px}.topbar.is-mobile-open .header-menu{max-height:calc(100svh - 70px);padding-inline:16px}}@media (prefers-reduced-motion:reduce){.header-menu,.header-menu .submenu,.header-menu .menu-column.is-open .submenu{transition:none}}@media (width<=740px){.site-footer{padding:38px 20px 22px}.footer-main{grid-template-columns:1fr;gap:30px;padding-bottom:35px}.footer-stack{flex-direction:column;gap:30px;display:flex}.footer-block{letter-spacing:.08em;font-size:12px;line-height:1.4}.footer-block h2,.footer-block strong{letter-spacing:.1em;font-size:12px;line-height:1.4}}.news-section{font-family:var(--sans);background:#fff;padding:clamp(52px,6vw,84px) clamp(22px,7vw,112px) clamp(76px,9vw,112px);scroll-margin-top:86px}.news-shell{width:min(100%,1240px);margin:0 auto}.news-all-link{width:fit-content;color:var(--ink);letter-spacing:.11em;text-transform:uppercase;border-bottom:1px solid #1726385c;justify-content:center;align-items:center;margin:28px auto 0;padding:8px 0;font-size:10px;font-weight:700;text-decoration:none;transition:color .18s,border-color .18s;display:flex}.news-all-link:hover{border-color:var(--accent);color:var(--accent)}.news-grid{border-top:0;border-bottom:1px solid #1726384d;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.news-card{border-right:1px solid #1726382e;flex-direction:column;min-height:350px;padding:22px clamp(18px,2vw,28px) 26px;display:flex;position:relative;overflow:hidden}.news-card:last-child{border-right:0}.news-number{color:#1726380e;font-family:inherit;font-size:clamp(72px,7vw,104px);line-height:.9;transition:color .22s,transform .26s;position:absolute;top:8px;right:12px}.news-meta{z-index:1;min-height:56px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;flex-wrap:wrap;gap:8px 14px;font-size:10px;font-weight:700;display:flex;position:relative}.news-meta span{color:var(--teal)}.news-card h3{z-index:1;color:var(--ink);letter-spacing:-.02em;margin:32px 0 0;font-family:inherit;font-size:clamp(21px,1.65vw,27px);font-weight:650;line-height:1.12;transition:color .18s;position:relative}.news-card>p{z-index:1;color:var(--muted);margin:22px 0 30px;font-size:clamp(13px,.95vw,15px);line-height:1.55;position:relative}.news-card>a{z-index:1;color:var(--ink);letter-spacing:.12em;text-transform:uppercase;border-top:1px solid #1726383d;justify-content:space-between;gap:16px;margin-top:auto;padding-top:12px;font-size:10px;font-weight:700;text-decoration:none;display:flex;position:relative}.news-card:hover h3,.news-card:focus-within h3{color:var(--accent)}.news-card:hover .news-number,.news-card:focus-within .news-number{color:#df4b941f;transform:translateY(-4px)}.news-card a:focus-visible,.news-all-link:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media (width<=900px){.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.news-card{border-bottom:1px solid #1726382e;min-height:320px}.news-card:nth-child(2n){border-right:0}.news-card:nth-last-child(-n+2){border-bottom:0}}@media (width<=560px){.news-section{padding:72px 18px 86px;scroll-margin-top:68px}.news-grid{grid-template-columns:1fr}.news-card,.news-card:nth-child(2n),.news-card:nth-last-child(-n+2){border-bottom:1px solid #1726382e;border-right:0;min-height:290px;padding:20px 14px 24px}.news-card:last-child{border-bottom:0}.news-card h3{max-width:300px;font-size:23px}}.header-menu .menu-column:has(.submenu a) .menu-button:after{content:none!important;display:none!important}.hero-section,.news-section,.programs-section,.showcase-section,.document-section,.contact-section{background:#fff}main>:not(.site-footer) :is(h1,h2,h3){font-family:var(--serif)!important;letter-spacing:.035em!important;text-transform:uppercase!important;font-size:clamp(21px,2.1vw,25px)!important;font-weight:500!important;line-height:1.18!important}a>span[aria-hidden=true]{display:none!important}
