/* Annotated layout refinements: clear quick access, a complete map panel and a unified footer. */
.section.quick-links{padding-block:64px}
.quick-links>.wrap{background:#f1e7de;border:1px solid #e3d4c8;border-radius:30px;padding:40px;box-shadow:0 18px 44px #65000008}
.quick-links .quick-links-heading{display:block;margin-bottom:28px}
.quick-links .quick-links-heading h2{font-size:clamp(34px,3.5vw,58px);margin:0;line-height:1.1}
.quick-links .quick-links-grid{gap:14px}
.quick-links .quick-link{background:#fffdfb;border-color:#eaded5;box-shadow:0 3px 12px #65000003}
.quick-links .quick-link:is(:hover,:focus-visible){border-color:#eaded5;box-shadow:0 12px 28px #76000012}
/* Map takes all of the right-hand side, including its vertical area and outer edge. */
.section.school-location{padding:0}
.school-location>.wrap.location-grid{width:100%;max-width:none;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:0;align-items:stretch;margin:0}
.location-grid>div:first-child{padding:clamp(64px,5vw,100px) var(--site-gutter);align-self:center}
.school-location h2{font-size:clamp(42px,4.1vw,74px);max-width:680px}
.school-location .location-map{height:100%;min-height:620px;border:0;border-radius:0}
.school-location .location-map iframe{position:absolute;inset:0;width:100%;height:100%;min-height:620px}
.school-location .map-placeholder{height:100%;min-height:620px}
/* One deep-red footer, a restrained texture and a single fine separator. */
.site-footer.school-footer{background-color:#650000;background-image:radial-gradient(circle,rgba(255,221,202,.085) .8px,transparent 1px);background-size:20px 20px}
.school-footer .footer-rule{height:1px;background:#fff0e533;margin-inline:auto}
.school-footer .footer-welcome{padding-block:64px}
.school-footer .footer-directory{padding-top:58px}
.footer-contact address{font-size:14px;line-height:1.7;font-style:normal;color:#edc7c1;max-width:230px;margin:0 0 14px}
@media(max-width:1100px){.quick-links>.wrap{padding:32px}.quick-links-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.school-location h2{font-size:46px}.location-grid>div:first-child{padding:64px 32px}.school-location .location-map,.school-location .location-map iframe,.school-location .map-placeholder{min-height:580px}}
@media(max-width:760px){
 /* A horizontal identity above three equally sized, readable actions. */
 .menu-enhanced .site-header,.menu-enhanced .site-header.is-scrolled{height:142px;min-height:142px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:54px 54px;gap:10px 16px;padding:10px 16px 12px;align-content:center}
 .site-header .brand.brand-tile,.menu-enhanced .site-header .brand.brand-tile{grid-column:1;grid-row:1;width:164px;height:44px;margin:0;padding:0;align-self:center}
 .site-header .brand-picture{width:164px;height:44px;display:block}.site-header .brand-symbol.brand-horizontal{width:164px;height:44px;object-fit:contain;object-position:left center}
 .menu-enhanced .site-header .menu-trigger{grid-column:2;grid-row:1;align-self:center;justify-self:end;min-height:44px;padding:8px 0;font-size:14px;gap:9px;margin:0}
 .site-header .header-actions,.menu-enhanced .site-header .header-actions{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:8px;align-items:stretch}
 .site-header .header-actions .header-portal,.menu-enhanced .site-header .header-actions .header-cta{display:flex;align-items:center;justify-content:center;width:100%;max-width:none;height:54px;min-height:54px;padding:9px 7px;margin:0;gap:0;white-space:normal;text-align:center;text-wrap:balance;font-size:12px;line-height:1.3;border-radius:17px}
 .site-header .header-actions .header-portal .school-icon,.site-header .header-actions .header-cta>span{display:none}
 .section.quick-links{padding-block:36px}.quick-links>.wrap{width:calc(100% - 32px);padding:27px 16px;border-radius:24px;margin-inline:16px}
 .quick-links .quick-links-heading{margin-bottom:22px}.quick-links .quick-links-heading h2{font-size:33px}.quick-links .quick-links-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .quick-links .quick-link{padding:22px 10px;min-height:220px;border-radius:18px}.quick-links .quick-link-copy strong{font-size:23px}.quick-links .quick-link-copy>span{font-size:14px}
 .school-location>.wrap.location-grid{grid-template-columns:1fr}.location-grid>div:first-child{padding:56px 24px}.school-location h2{font-size:36px}.school-location .location-map,.school-location .location-map iframe,.school-location .map-placeholder{height:380px;min-height:380px}
 .school-footer .footer-welcome{padding-block:48px}.school-footer .footer-directory{padding-top:42px}
}
@media(max-width:360px){.site-header .brand.brand-tile,.menu-enhanced .site-header .brand.brand-tile,.site-header .brand-picture,.site-header .brand-symbol.brand-horizontal{width:148px}.site-header .header-actions .header-portal,.menu-enhanced .site-header .header-actions .header-cta{font-size:11.5px;padding-inline:5px}.quick-links .quick-link-copy strong{font-size:21px}.quick-links .quick-link-copy>span{font-size:13px}.location-grid>div:first-child{padding-inline:20px}}

.site-header .header-portal-label{font-size:inherit;transform:none!important}
@media(max-width:760px){.site-header .header-portal-label{display:block;max-width:76px;white-space:normal;text-wrap:balance}}
.high-contrast .quick-links>.wrap{background:#101010;border-color:#fff}
.high-contrast .quick-links .quick-link{background:#151515;border-color:#fff;box-shadow:none}
.high-contrast .quick-link-copy strong{color:#fff}
.high-contrast .site-footer.school-footer{background:#050505;background-image:none}
.site-header .header-actions .header-cta{height:52px;line-height:1.2}
@media(max-width:760px){.menu-enhanced .site-header .header-actions .header-cta{height:54px;line-height:1.3}}
