:root{--research-navy:#071e43;--research-gold:#ffad18}.sidebar,.site-footer{background:var(--research-navy)}.brand{display:block}.brand .research-logo,.footer-brand .research-logo{display:block;position:relative;aspect-ratio:1760/470;overflow:hidden;width:100%;max-width:230px;mix-blend-mode:lighten}.brand .research-logo img,.footer-brand .research-logo img{position:absolute;width:109.89%!important;max-width:none!important;height:auto!important;left:-4.83%;top:-40.43%;filter:none!important;background:none!important;padding:0!important}.brand>span:last-child{display:block;margin-top:18px;font-size:8px;letter-spacing:2.5px}.footer-brand .research-logo{max-width:215px;margin-bottom:20px}.modern-hero{background:linear-gradient(125deg,#123665,#071e43)}.hero-visual>img{object-position:50% 38%}.track{position:relative;overflow:hidden}.track .track-icon{display:flex;align-items:center;justify-content:center;width:100px;height:100px;background:none!important;border:0;border-radius:0;box-shadow:none;margin:0 0 20px!important;float:none}.track-icon img{width:100%;height:100%;object-fit:contain}.track>span:nth-of-type(2){font-size:9px;letter-spacing:1.5px}.track:after{content:'';position:absolute;right:-35px;top:-30px;width:140px;height:140px;border:1px solid #e5eaf4;border-radius:50%;pointer-events:none}.school-story .student-portrait img{aspect-ratio:1.45;object-position:50% 42%}.research-gallery img{height:270px}.research-gallery figure:first-child img{object-position:50% 40%}.school-story h3{font-size:36px}.validation-summary{padding:16px 18px;background:#fff3ec;border:1px solid #e7c0af;border-radius:12px;margin:0 0 22px;color:#803c2d;font-size:12px}.validation-summary[hidden]{display:none}.validation-summary ul{padding-left:20px;margin:10px 0 0}.validation-summary li{margin:6px 0}.field-error{border-color:#be4d43!important;background:#fff9f7!important}.field-error:focus{outline:2px solid #bd6558}.revision-policy{scroll-margin-top:95px;background:linear-gradient(120deg,#f8faff,#fff9ee);border:1px solid #e0e6f0;border-radius:16px;padding:26px;margin:20px 0 26px}.revision-policy h2{font-size:20px;letter-spacing:-.5px;margin:8px 0 14px}.revision-policy p,.revision-policy li{font-size:12px;line-height:1.8}.revision-policy ul{padding-left:20px}.revision-badge{background:#edf5ed;color:#3e6546;border:1px solid #cfe0d1;padding:7px 12px;border-radius:30px;font-size:10px;font-weight:650}.application-check{display:flex;align-items:center;gap:8px}.application-check img{width:22px;height:22px}.locked-help{background:#eef2f8;border-radius:9px;padding:12px 15px;font-size:11px;color:#62738c}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.cheetahbot{position:fixed;right:25px;bottom:24px;z-index:2000;font-family:inherit}.bot-launcher{display:flex;gap:11px;align-items:center;border:1px solid #ffffff24;background:linear-gradient(125deg,#123665,#071e43);color:white;padding:10px 15px 10px 10px;border-radius:18px;box-shadow:0 8px 28px #071e4333;cursor:pointer}.bot-launcher>img{width:42px;height:42px}.bot-launcher span{display:grid;text-align:left;gap:4px}.bot-launcher strong{font-size:13px;letter-spacing:.2px}.bot-launcher small{font-size:9px;color:#c0cde1}.bot-launcher i{color:#ffb32b;font-style:normal;margin-left:7px}.bot-launcher:hover{box-shadow:0 12px 35px #071e4344;transform:translateY(-2px)}.bot-launcher[aria-expanded=true]{background:#203d65}.bot-panel{position:absolute;bottom:78px;right:0;width:385px;height:min(580px,calc(100dvh - 130px));background:#f8faff;border:1px solid #dfe5ee;box-shadow:0 22px 70px #071e433b;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;animation:bot-in .22s ease}.bot-panel[hidden]{display:none!important}.bot-panel>header{background:linear-gradient(120deg,#123665,#071e43);color:white;padding:18px;display:flex;gap:12px;align-items:center}.bot-panel>header>img{width:42px;height:42px}.bot-panel header>div{display:grid;gap:5px}.bot-panel header strong{font-size:16px}.bot-panel header span{font-size:10px;color:#c7d2e2}.bot-close{margin-left:auto;border:1px solid #ffffff30;color:white;background:#ffffff0c;width:30px;height:30px;border-radius:9px;font-size:23px;cursor:pointer}.bot-scope{padding:10px 12px;background:#fff1d6;color:#6e572d;font-size:9px;text-align:center;letter-spacing:.15px}.bot-messages{flex:1;min-height:80px;overflow-y:auto;overscroll-behavior:contain;padding:17px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth}.bot-message{font-size:12px;line-height:1.7;max-width:95%;border-radius:13px;padding:12px 14px;background:white;border:1px solid #e1e6ef;color:#435570;align-self:flex-start;overflow-wrap:anywhere}.bot-message p{margin:0;white-space:pre-line}.bot-message.user{align-self:flex-end;background:#143866;border-color:#143866;color:white;border-bottom-right-radius:4px}.bot-message.bot{border-top-left-radius:4px}.bot-sources{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.bot-sources a{font-size:9px;line-height:1.5;color:#6b5832;background:#fff3dc;border-radius:6px;text-decoration:none;padding:5px 7px}.bot-suggestions{padding:6px 14px 11px;display:flex;flex-wrap:wrap;gap:6px}.bot-suggestions button{border:1px solid #dce4ef;border-radius:20px;background:white;color:#546880;font-size:9px;padding:7px 10px;cursor:pointer}.bot-form{display:flex;gap:8px;padding:0 14px 10px;flex-shrink:0}.bot-form input{min-width:0;flex:1;border:1px solid #d9e2ee;border-radius:10px;background:white;font:inherit;font-size:12px;padding:13px;color:#233a5c}.bot-form button{width:41px;border:0;border-radius:10px;background:#ffad18;color:#102b51;font-size:23px;font-weight:700;cursor:pointer}.bot-form button:disabled,.bot-suggestions button:disabled{opacity:.45;cursor:default}.bot-footnote{padding:0 18px 13px;font-size:8px;text-align:center;line-height:1.6;color:#7a8a9e}.bot-fix,.bot-signin{display:inline-block;margin-top:12px;border:0;background:#fff0d0;color:#75551f;padding:8px 11px;font-size:11px;border-radius:7px;text-decoration:none;cursor:pointer}.cheetahbot button:focus-visible,.cheetahbot input:focus-visible{outline:3px solid #78a9eb;outline-offset:3px}@keyframes bot-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.brand{display:flex;align-items:center;gap:20px}.brand .research-logo{width:175px;flex-shrink:0}.brand>span:last-child{margin-top:0;font-size:7px;letter-spacing:1.6px}.track .track-icon{width:90px;height:90px}.school-story h3{font-size:29px}.research-gallery img{height:260px}.cheetahbot{right:15px;bottom:15px}.bot-launcher{padding:8px 11px 8px 8px;border-radius:16px}.bot-launcher img{width:36px;height:36px}.bot-launcher small{display:none}.bot-launcher strong{font-size:11px}.bot-launcher i{display:none}.bot-panel{bottom:66px;right:0;width:min(385px,calc(100vw - 45px));height:min(570px,calc(100dvh - 110px))}.revision-policy{padding:20px}.form-actions{flex-wrap:wrap;gap:12px}.site-footer{padding-bottom:65px}}
@media(prefers-reduced-motion:reduce){.bot-panel,.bot-launcher{animation:none;transition:none;transform:none}.bot-messages{scroll-behavior:auto}}@media print{.cheetahbot{display:none!important}.revision-policy{break-inside:avoid}}

@media(max-width:760px){nav{scrollbar-width:none}nav::-webkit-scrollbar{display:none}}

.school-map-panel{display:grid;grid-template-columns:.9fr 1.4fr;border:1px solid #d8e2ee;box-shadow:0 15px 45px #10274b0b;background:#071e43;border-radius:22px;overflow:hidden;margin:25px 0}.map-information{padding:34px;color:#fff}.map-information .section-kicker{color:#8eb4d5}.map-information h2{font-size:34px;color:#fff;letter-spacing:-1.1px;line-height:1.13;margin:16px 0 24px}.map-address{display:flex;gap:12px;align-items:flex-start;color:#e3ebf6}.map-address>span{font-size:26px;line-height:1.1;color:#ffb126}.map-address address{font-size:13px;font-style:normal;line-height:1.8}.map-contact{display:block;font-size:13px;color:#dce7f7;margin:17px 0;text-decoration:none}.map-actions{display:flex;flex-wrap:wrap;align-items:center;gap:15px;margin-top:26px}.map-open{font-size:11px;color:#fff}.map-help{font-size:11px;line-height:1.8;color:#abc1d9;margin:25px 0 0}.map-help a{color:#fff}.map-frame{position:relative;min-height:470px;background:#e6edf4}.map-frame iframe{display:block;width:100%;height:100%;min-height:470px;border:0}.map-fallback{position:absolute;left:14px;bottom:14px;background:white;color:#284a75;border:1px solid #dbe3ee;border-radius:8px;padding:10px 13px;font-size:11px;text-decoration:none;box-shadow:0 5px 20px #071e431a}.map-breadcrumb{margin:0 0 18px;font-size:12px}.map-detail{display:block;color:#fff;font-size:12px;margin-top:24px}.map-compact .map-frame,.map-compact .map-frame iframe{min-height:360px}.map-compact .map-information{padding:27px}.map-compact .map-information h2{font-size:27px}.map-compact .map-address address{font-size:12px}.about-map-link{display:inline-block;font-size:12px;margin:18px 0 0 18px;font-weight:650;color:#264975}@media(max-width:1050px){.school-map-panel{grid-template-columns:1fr 1.2fr}.map-information{padding:25px}.map-information h2{font-size:28px}.map-address address{font-size:12px}}@media(max-width:760px){.school-map-panel{grid-template-columns:1fr;border-radius:17px}.map-information{padding:28px}.map-information h2{font-size:31px}.map-frame,.map-frame iframe{min-height:350px;height:350px}.map-compact .map-frame,.map-compact .map-frame iframe{min-height:300px;height:300px}.about-map-link{margin-left:0;display:block}.map-contact{font-size:13px}.map-address address{font-size:13px}}@media print{.map-frame{display:none}.school-map-panel{display:block;background:white}.map-information,.map-information h2,.map-contact,.map-address{color:#111}}

.campus-map{position:absolute;inset:0;width:100%;height:100%;min-height:300px;z-index:1}.map-frame .map-fallback{left:auto;bottom:auto;top:14px;right:14px;z-index:450}.campus-map .leaflet-control-attribution{font-size:9px;background:#fffffff0}.campus-map .leaflet-popup-content{font-family:inherit;font-size:12px;line-height:1.7;color:#19385d}.campus-map .leaflet-control-zoom a{color:#19385d}.campus-map .leaflet-tile{max-width:none!important}.map-frame{isolation:isolate}

.owner-access{margin:0 0 25px!important;background:linear-gradient(110deg,#fffaf0,#fff)!important}.owner-access h2{font-size:20px;margin:10px 0}.owner-access>p{font-size:12px;line-height:1.8;max-width:750px}.owner-access form{display:flex;align-items:flex-end;gap:15px;margin:20px 0}.owner-access form .field{min-width:220px;flex:1;max-width:430px}.owner-access-list>div{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px 0;border-top:1px solid #e7e3d8;font-size:12px}@media(max-width:760px){.owner-access form{align-items:stretch;flex-direction:column}.owner-access-list>div{flex-wrap:wrap}}

.privacy-notice{padding:20px 0;border-top:1px solid #ffffff20;color:#c9d7e9;scroll-margin-top:90px}.privacy-notice summary{cursor:pointer;font-size:12px;color:#e7edf7}.privacy-notice>div{max-width:900px;font-size:11px;line-height:1.9;padding:12px 0}.privacy-notice a{color:#fff;text-decoration:underline}
