/* Landing page only: Royal Blue, warm accents and a more welcoming school identity. */
.hero-screen-reader{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.hero-slides{display:grid;position:relative;z-index:1;touch-action:pan-y pinch-zoom}
.hero-slide{grid-area:1/1;min-width:0;align-self:center}
.hero-slide[hidden],.hero-controls[hidden]{display:none!important}
.hero.is-enhanced .hero-slide{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .55s ease,visibility .55s}
.hero.is-enhanced .hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}
.hero-controls{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:36px}
.hero-control{border:1px solid #ffffff55;background:#ffffff0b;color:#fff;border-radius:12px;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font:inherit;transition:background .2s}
.hero-control:hover{background:#ffffff24}
.hero-control:focus-visible,.hero-dots button:focus-visible{outline:3px solid #ffe177;outline-offset:3px}
.hero-arrow{font-size:1.2rem}
.hero-dots{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;max-width:220px}
.hero-dots button{display:grid;place-items:center;min-width:32px;min-height:44px;padding:0;border:0;border-radius:8px;background:none;cursor:pointer}
.hero-dots button>span{width:8px;height:8px;border-radius:10px;background:#ffffff80;transition:width .2s,background .2s}
.hero-dots button[aria-current=true]>span{width:22px;background:#ffe177}
.hero-counter{font-size:.7rem;color:#e1eaff;padding-inline:4px;font-variant-numeric:tabular-nums}
.hero-play{padding:9px 12px;font-size:.7rem}
@media(max-width:767px){.hero-controls{gap:6px;margin-top:26px}.hero-dots{max-width:160px}.hero-dots button{min-width:28px}.hero-counter{display:none}}
.home-page{--blue:#2455df;--dark-blue:#193fa9;--yellow:#ffe177;--mint:#d8f5e6;--radius:24px;background:#fff}
.home-page h1,.home-page h2,.home-page h3{font-weight:800;letter-spacing:-.045em}
.home-page h2{font-size:clamp(1.85rem,3.15vw,2.8rem);line-height:1.22}
.home-page .section{padding-block:64px}
.landing-icon{display:inline-block;vertical-align:middle;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.home-page .topbar{background:#173ba3;color:#e1eaff;font-size:.69rem}
.home-page .topbar a{color:#fff}
.home-page .site-header{background:#fffffff5;backdrop-filter:blur(14px)}
.home-page .nav-wrap{min-height:80px}
.home-page .brand strong{font-weight:800;color:#214dcb;letter-spacing:-.03em}
.home-page .brand small{font-size:.67rem}
.home-page .site-nav a{border-radius:10px}
.home-page .site-nav>a[aria-current=page]{background:#edf2ff;color:#214dcb}
.home-page .site-nav .button{border-radius:12px;box-shadow:0 5px 14px #2455df24}
.home-page .button{border-radius:12px;gap:10px;min-height:48px;transition:transform .2s,box-shadow .2s,background .2s}
.home-page .button:hover{transform:translateY(-3px);box-shadow:0 8px 22px #14368e22}
.home-page .button-outline{border-color:#c8d7fc;background:#fff;color:#214dcb}
.home-page .button-outline:hover{background:#edf2ff}
.home-page .text-link{font-size:.83rem;display:inline-flex;align-items:center;gap:12px}
.home-page .eyebrow{display:flex;align-items:center;gap:9px;letter-spacing:.095em;font-size:.68rem;font-weight:800;margin-bottom:18px}
.home-page .eyebrow .landing-icon{width:19px;height:19px}
.home-page .hero{background:radial-gradient(ellipse at 90% 12%,#507cf5 0,transparent 55%),linear-gradient(125deg,#173fae,#285ce5 68%,#3267ee);position:relative;isolation:isolate;color:#fff;padding:34px 0 70px;overflow:hidden}
.home-page .hero-grid{position:relative;z-index:1;display:grid;gap:42px;align-items:center}
.hero-orbit{position:absolute;width:720px;height:720px;border:1px solid #ffffff13;border-radius:50%;right:-230px;top:-230px;pointer-events:none;box-shadow:0 0 0 100px #ffffff03,0 0 0 200px #ffffff03}
.home-page .hero .hero-label{color:#f0f5ff;font-size:.61rem;letter-spacing:.07em;background:#ffffff12;border:1px solid #ffffff3d;border-radius:30px;display:inline-flex;padding:9px 13px;margin-bottom:23px;max-width:100%}
.home-page .hero .dot{background:var(--yellow);box-shadow:0 0 0 4px #ffe17720;width:7px;height:7px}
.home-page .hero .hero-slide-heading{color:#fff;font-size:clamp(2.2rem,8.6vw,3.5rem);line-height:1.14;letter-spacing:-.05em;margin:0}
.home-page .hero .hero-slide-heading>span{display:block;overflow-wrap:anywhere}
.home-page .hero .hero-slide-heading .hero-highlight{color:var(--yellow)}
.home-page .hero-description{color:#e1eaff;font-size:.89rem;line-height:1.85;max-width:520px;margin-top:24px}
.home-page .hero .button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.home-page .hero-primary{background:var(--yellow);color:#273461;font-size:.72rem;padding:12px 14px;box-shadow:0 7px 20px #10257522}
.home-page .hero-primary .landing-icon{width:20px;height:20px}
.home-page .hero-secondary{background:#ffffff0b;border:1px solid #ffffff5c;color:#fff;font-size:.72rem;padding:12px 14px}
.home-page .hero-secondary:hover{background:#ffffff20}
.home-page .hero-footnote{display:flex;align-items:center;gap:12px;color:#fff;margin-top:28px;font-size:.68rem;line-height:1.6}
.hero-mini-logo{display:grid;place-items:center;background:#ffffffed;border-radius:50%;width:44px;height:44px;flex-shrink:0}
.hero-mini-logo img{width:32px;height:32px;object-fit:contain}
.home-page .hero-footnote small{display:block;color:#c6d8ff;font-size:.67rem}
.hero-art{position:relative;margin:10px 12px 15px;min-width:0}
.hero-art:before{content:"";position:absolute;inset:30px -6px -10px 12px;background:#80b4ff44;border:1px solid #ffffff20;border-radius:32px;transform:rotate(6deg)}
.home-page .hero-visual{position:relative;background:#fff;padding:16px;margin:0;border:0;border-radius:26px;box-shadow:0 24px 70px #10276a42;transform:rotate(-3deg);overflow:hidden}
.school-card-heading{display:flex;align-items:center;gap:10px;padding:2px 0 14px;color:#18377c}
.school-card-heading strong{display:block;font-size:1rem;letter-spacing:-.03em;font-weight:800}
.school-card-heading div>span{display:block;font-size:.6rem;color:#687c9f;margin-top:3px}
.school-card-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:#edf2ff;color:#2455df}
.school-card-spark{margin-left:auto;color:#e8b832;font-size:1.8rem}
.hero-picture{border-radius:15px;overflow:hidden;background:#edf5ff}
.home-page .hero-image{width:100%;height:auto;aspect-ratio:1.5;object-fit:cover;border-radius:0;display:block}
.home-page .hero-visual figcaption{display:block;color:#6b7b98;font-size:.59rem;padding:10px 1px;letter-spacing:0}
.school-card-bottom{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #eaf0f9;padding-top:12px;color:#3457a0;font-size:.6rem;font-weight:700}
.school-card-bottom>span{display:flex;align-items:center;gap:6px}
.school-card-bottom .landing-icon{width:16px;height:16px}
.floating-note{position:absolute;z-index:2;display:flex;align-items:center;gap:11px;box-shadow:0 12px 32px #112c762c;border-radius:14px;padding:12px 15px;transition:transform .2s}
a.floating-note:hover{transform:rotate(0) translateY(-4px)}
.note-ppdb{background:#f3fff7;color:#176b47;right:-10px;top:-20px;transform:rotate(3deg)}
.note-icon{background:#d9f4e4;border-radius:10px;padding:8px;display:grid;place-items:center}
.note-ppdb small{display:block;font-size:.52rem;font-weight:700;letter-spacing:.08em}
.note-ppdb strong{display:block;font-size:.85rem;margin-top:4px}
.note-motto{background:var(--yellow);color:#504329;bottom:-18px;left:-12px;transform:rotate(2deg);font-size:.7rem;line-height:1.5}
.note-motto>span{font-size:1.8rem;color:#9d7710}
.art-spark{position:absolute;color:var(--yellow);z-index:2;line-height:1;pointer-events:none}
.spark-one{left:-14px;top:-10px;font-size:2.5rem;transform:rotate(12deg)}
.spark-two{right:-10px;bottom:0;font-size:2.3rem;color:#c4d8ff}
.hero-wave{position:absolute;bottom:-1px;left:0;width:100%;height:36px;z-index:0}
.home-page .services-wrap{position:relative;z-index:2;margin-top:-22px}
.home-page .quick-access{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;background:#fff;border:1px solid #edf1fa;box-shadow:0 14px 40px #1c3d7b0c;border-radius:20px;overflow:hidden}
.home-page .quick-access>a{padding:18px 14px;display:flex;flex-wrap:wrap;align-items:center;gap:12px;border:0;transition:background .2s}
.home-page .quick-access>a:hover{background:#f5f8ff}
.home-page .quick-access>a:nth-child(odd){border-right:1px solid #edf1fa}
.home-page .quick-access>a:nth-child(-n+2){border-bottom:1px solid #edf1fa}
.home-page .quick-access>a>span:nth-child(2){flex:1;min-width:0}
.service-icon{width:40px;height:40px;display:grid;place-items:center;background:#eaf0ff;color:#2455df;border-radius:12px;flex-shrink:0}
.quick-access>a:nth-child(2) .service-icon{background:#dcf5e7;color:#19805b}
.quick-access>a:nth-child(3) .service-icon{background:#fff2cf;color:#a57208}
.quick-access>a:nth-child(4) .service-icon{background:#eee8ff;color:#7851bf}
.home-page .quick-access strong{font-size:.72rem;line-height:1.5}
.home-page .quick-access small{font-size:.64rem;line-height:1.6;margin-top:3px;color:#6a7992}
.home-page .quick-arrow{display:none;color:#788bab}
.home-page .announcement{gap:12px;padding:20px 0;align-items:center;border-bottom:1px solid #edf1fa}
.home-page .pill{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;background:#fff3cf;color:#805b08;padding:7px 10px;font-size:.55rem;border-radius:8px}
.home-page .pill .landing-icon{width:14px;height:14px}
.home-page .announcement p{font-size:.72rem;line-height:1.7}
.home-page .announcement>a{display:grid;place-items:center;min-width:40px;min-height:40px;font-size:1.25rem}
.school-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 12px;padding-block:34px 40px;align-items:center}
.numbers-title{grid-column:1/-1;text-align:center}
.section-kicker{font-size:.63rem;letter-spacing:.1em;font-weight:800;color:#60769d;display:block}
.numbers-title h2{font-size:1.2rem;margin-top:5px}
.number-item{text-align:center;border-right:1px solid #e6edf9;min-width:0}
.number-item:nth-last-of-type(1){border-right:0}
.number-item strong{display:block;font-size:2.5rem;line-height:1.2;letter-spacing:-.04em;font-weight:800;color:#2455df}
.number-item>span{display:block;font-size:.66rem;color:#627492;margin-top:8px}
.numbers-note{grid-column:1/-1;text-align:center;color:#72819b;font-size:.66rem;margin:0}
.programs-section{background:#f4f7ff;position:relative;scroll-margin-top:0}
.heading-centered{justify-content:center;text-align:center}
.home-page .heading-centered .eyebrow{justify-content:center}
.home-page .section-heading{margin-bottom:30px}
.home-page .section-heading p:not(.eyebrow){font-size:.86rem;color:#71809b;line-height:1.8;margin-top:16px;max-width:580px}
.home-page .major-card{border:1px solid #e4ebfa;border-radius:22px;padding:28px;box-shadow:0 7px 24px #274d9506;transition:transform .25s,box-shadow .25s;min-height:280px}
.home-page .major-card:hover{transform:translateY(-6px);box-shadow:0 16px 35px #274d9512}
.major-symbol{display:grid;place-items:center;width:55px;height:55px;border-radius:16px;background:#edf2ff;color:#2455df;margin-bottom:22px}
.major-card:nth-child(3n+2) .major-symbol{color:#16835f;background:#e2f6ed}
.major-card:nth-child(3n+3) .major-symbol{color:#a57208;background:#fff2cf}
.home-page .major-card h3{font-size:1.35rem;line-height:1.4}
.home-page .major-card img{border-radius:14px}
.section-bottom-link{display:flex;justify-content:center;margin-top:30px}
.program-preview{display:flex;flex-direction:column;align-items:center;gap:24px;text-align:center;background:#fff;border:1px solid #e0e9fa;border-radius:24px;padding:32px 24px;box-shadow:0 10px 30px #274d9505}
.preview-symbols{display:flex;padding:4px}
.preview-symbols>span{display:grid;place-items:center;width:58px;height:68px;border:4px solid #fff;border-radius:16px;background:#e8efff;color:#2455df;transform:rotate(-12deg)}
.preview-symbols>span:nth-child(2){background:#fff2cf;color:#987008;transform:rotate(0);z-index:1;margin-inline:-8px}
.preview-symbols>span:nth-child(3){background:#dff5ea;color:#17805c;transform:rotate(12deg)}
.program-preview h3{font-size:1.3rem;margin-block:10px;line-height:1.4}
.program-preview p{font-size:.8rem;color:#71809b;line-height:1.8;max-width:520px}
.program-preview .button{font-size:.77rem;flex-shrink:0}
.about-section{display:grid;gap:36px;align-items:center}
.about-story .lead{font-size:.9rem;color:#71809b;margin-block:24px;line-height:1.95}
.about-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}
.about-links a{display:flex;align-items:center;gap:7px;font-size:.68rem;font-weight:700;color:#526c9a;background:#f0f5ff;padding:11px;border-radius:10px;min-height:44px}
.about-links a:hover{background:#e3edff}
.about-links .landing-icon{width:17px;height:17px}
.welcome-card{position:relative;background:#f0f5ff;border:1px solid #e1eafb;border-radius:26px;padding:32px 26px;overflow:hidden}
.welcome-card:after{content:"";position:absolute;right:-55px;top:-55px;width:180px;height:180px;border:26px solid #e3ecff;border-radius:50%;pointer-events:none}
.welcome-card>.eyebrow{font-size:.59rem;position:relative;z-index:1}
.welcome-card h3{font-size:1.75rem;line-height:1.3;color:#23448c;position:relative;z-index:1}
.welcome-card>p:not(.eyebrow){font-size:.84rem;line-height:1.9;color:#687c9f;margin-top:20px;position:relative;z-index:1}
.welcome-quote{position:absolute;right:32px;bottom:28px;font:130px/.6 Georgia,serif;color:#d9e5fc;pointer-events:none}
.principal-byline{display:flex;align-items:center;gap:12px;margin-top:26px;position:relative;z-index:1}
.principal-symbol{width:44px;height:44px;background:#dce8ff;display:grid;place-items:center;border-radius:50%;color:#456bb8;flex-shrink:0}
.principal-byline strong{display:block;font-size:.77rem;color:#23448c}
.principal-byline small{display:block;font-size:.63rem;color:#71809b;margin-top:4px}
.life-section{background:#f9fafc}
.home-page .section-heading>.heading-note{font-size:.82rem;max-width:300px;margin:0;line-height:1.85}
.life-grid{display:grid;gap:20px}
.life-card{display:flex;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid #e5ecf8;border-radius:23px;padding:28px;min-width:0}
.life-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:#eaf0ff;color:#2455df;margin-bottom:20px}
.life-card:nth-child(2) .life-icon{background:#fff2cf;color:#9f720d}
.life-card:nth-child(3) .life-icon{background:#e2f6ed;color:#17805c}
.life-card .section-kicker{font-size:.58rem}
.life-card h3{font-size:1.35rem;line-height:1.35;margin-top:12px;max-width:230px;color:#1b335e}
.life-card>p:not(.section-kicker){font-size:.8rem;color:#71809b;margin-top:14px;line-height:1.85}
.pending-note{font-size:.63rem;color:#71809b;padding:10px 0;margin-top:15px;margin-bottom:16px}
.life-card>.text-link{margin-top:auto;font-size:.76rem}
.life-updates{width:100%;margin-block:16px 22px}
.life-updates a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-block-start:1px solid #edf1fa;font-size:.76rem;line-height:1.6;color:#345b9c}
.home-page .content-card{border-radius:22px;border-color:#e4ebf7;box-shadow:0 8px 24px #1f4a8e06;transition:transform .2s}
.home-page .content-card:hover{transform:translateY(-5px)}
.home-page .content-card h3{font-size:1.23rem}
.home-page .content-card img{aspect-ratio:1.5}
.home-page .card-category{background:#edf2ff;border-radius:6px;padding:5px 8px;font-size:.59rem;display:inline-block}
.editorial-empty{display:flex;align-items:center;gap:24px;flex-direction:column;text-align:center;background:#f8faff;border:1px solid #e6edfa;border-radius:24px;padding:34px 24px}
.editorial-art{width:120px;height:110px;background:#e6eeff;display:grid;place-items:center;border-radius:24px;transform:rotate(-7deg);color:#4570d0;flex-shrink:0;position:relative}
.editorial-art>.landing-icon{width:58px;height:58px}
.editorial-art>span{position:absolute;right:-10px;top:-6px;color:#d5a537;font-size:2.5rem}
.editorial-empty h3{font-size:1.35rem;color:#254577;margin-block:10px;line-height:1.4}
.editorial-empty p{font-size:.82rem;color:#71809b;line-height:1.85;max-width:500px}
.gallery-section{background:#132f7c;color:#c5d6ff;position:relative;overflow:hidden}
.gallery-section:before{content:"";position:absolute;right:-160px;top:-220px;width:600px;height:600px;border:1px solid #ffffff0b;border-radius:50%;pointer-events:none;box-shadow:0 0 0 100px #ffffff02}
.gallery-section>.container{position:relative}
.home-page .gallery-section h2{color:#fff}
.gallery-section h2>span{color:#a6c6ff}
.home-page .gallery-section .eyebrow,.home-page .gallery-section .text-link{color:#c6d9ff}
.gallery-grid{display:grid;gap:16px}
.gallery-tile{position:relative;min-height:220px;border-radius:20px;overflow:hidden;background:#25458a}
.gallery-tile img{width:100%;height:100%;object-fit:cover;aspect-ratio:1.35;transition:transform .35s}
.gallery-tile:hover img{transform:scale(1.04)}
.gallery-caption{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:40px 22px 22px;background:linear-gradient(transparent,#081d50e8);color:#fff}
.gallery-caption strong{font-size:.88rem;line-height:1.6;max-width:90%}
.gallery-caption>span{font-size:1.4rem}
.gallery-no-image{height:100%;min-height:240px;display:grid;place-items:center;background:linear-gradient(145deg,#274b9a,#375fb0)}
.gallery-no-image .landing-icon{width:65px;height:65px;color:#abc8ff}
.gallery-empty{display:flex;align-items:center;gap:36px;flex-direction:column;text-align:center;border:1px solid #ffffff1e;background:#ffffff05;border-radius:24px;padding:40px 24px}
.photo-stack{position:relative;width:170px;height:140px;flex-shrink:0;margin-bottom:10px}
.photo-stack>span{position:absolute;display:grid;place-items:center;inset:8px 25px 0 0;border:8px solid #f2f6ff;border-bottom-width:26px;border-radius:10px;background:#7298e7;color:#e4edff;transform:rotate(-12deg);box-shadow:0 8px 22px #091c4c22}
.photo-stack>span:nth-child(2){inset:0 0 8px 25px;transform:rotate(10deg);background:#bcd3fc;color:#4f74b9}
.photo-stack .landing-icon{width:44px;height:44px}
.gallery-empty h3{font-size:1.5rem;color:#fff;line-height:1.4}
.gallery-empty p{font-size:.84rem;line-height:1.8;color:#bdcff4;margin-block:14px 20px}
.home-page .agenda-section{padding-top:64px;align-items:center;gap:30px}
.agenda-intro{font-size:.84rem;color:#71809b;line-height:1.85;margin-block:20px}
.agenda-list{min-width:0}
.home-page .agenda-list>a{background:#f7f9ff;border:1px solid #e5ecfa;border-radius:16px;margin-bottom:12px;padding:18px;gap:18px}
.home-page .agenda-list time{min-width:64px;background:#e7efff;color:#2455df;padding:10px;border-radius:10px;display:grid;text-align:center;gap:5px}
.home-page .agenda-list time strong{font-size:1.7rem;line-height:1;color:#2455df}
.agenda-list time span{font-size:.55rem;white-space:nowrap}
.home-page .agenda-list>a>strong{font-size:.86rem;line-height:1.6}
.agenda-empty{border:1px solid #e3ebfa;border-radius:22px;padding:32px;background:#f8faff}
.agenda-empty h3{font-size:1.3rem;color:#254577}
.agenda-empty p{font-size:.82rem;color:#71809b;margin-top:12px;line-height:1.85}
.home-page .cta-banner{position:relative;overflow:hidden;border-radius:26px;background:radial-gradient(ellipse at 95% 100%,#507ef5,transparent 65%),#2455df;padding:36px 26px;display:block;color:#d7e4ff}
.cta-banner>div{position:relative;z-index:1}
.home-page .cta-banner h2{font-size:clamp(1.8rem,3.5vw,3rem);max-width:840px;line-height:1.25}
.home-page .cta-banner h2>span{color:var(--yellow)}
.home-page .cta-banner .eyebrow{font-size:.59rem;color:#d9e5ff;max-width:85%}
.home-page .cta-banner .button-row{margin-top:26px;gap:22px}
.home-page .cta-banner .text-link{color:#fff}
.home-page .cta-banner .button-white{background:#fff;color:#214dcb;font-size:.78rem}
.cta-decoration{position:absolute;right:4%;top:20px;color:#ffffff15;font-size:12rem;line-height:1;transform:rotate(10deg);pointer-events:none}
.home-page .contact-strip h2{font-size:1.6rem}
.home-page .contact-strip p:not(.eyebrow){font-size:.82rem;max-width:600px;line-height:1.85}
.home-page .site-footer{background:#10265a;border:0;color:#c0cfee;padding-top:50px}
.home-page .site-footer .brand strong,.home-page .site-footer h2{color:#fff}
.home-page .site-footer .brand small{color:#b7c9ed}
.home-page .site-footer .brand img{background:#fff;border-radius:50%;padding:4px}
.home-page .footer-grid p,.home-page .footer-grid>div>a:not(.brand){color:#b7c9ed;font-size:.77rem;line-height:1.9}
.home-page .footer-grid>div>a:hover{color:#fff}
.home-page .footer-grid h2{letter-spacing:0;font-size:.86rem}
.home-page .footer-bottom{border-color:#ffffff16;color:#9bb3de;font-size:.67rem}
.home-page .mobile-actions{border-top:1px solid #e7eefb}
.home-page .mobile-actions a:first-child{background:#2455df}
@media(max-width:767px){.hero-art .floating-note{display:none}.hero-art{margin:0 12px 10px}.hero-art:before{inset:20px -6px -8px 12px}}
@media(min-width:768px){
  .home-page .section{padding-block:76px}
  .home-page .hero{padding-block:64px 94px}
  .home-page .hero-grid{grid-template-columns:1.1fr 1fr;gap:26px}
  .home-page .hero .hero-slide-heading{font-size:clamp(2.35rem,4.6vw,3.5rem)}
  .home-page .hero .hero-label{font-size:.56rem;padding:9px 11px}
  .home-page .hero-description{font-size:.81rem}
  .home-page .hero .button-row{gap:10px}
  .home-page .hero-primary,.home-page .hero-secondary{font-size:.7rem;padding:12px}
  .home-page .hero-footnote{font-size:.61rem;gap:10px}
  .hero-art{margin:0 8px}
  .home-page .hero-visual{padding:15px}
  .school-card-heading strong{font-size:.91rem}
  .school-card-heading div>span{font-size:.56rem}
  .school-card-bottom{font-size:.53rem}
  .home-page .hero-visual figcaption{font-size:.51rem}
  .floating-note{padding:10px 12px;gap:8px}
  .note-ppdb{right:-16px;top:-28px}
  .note-ppdb strong{font-size:.74rem}
  .note-ppdb small{font-size:.48rem}
  .note-icon{padding:6px}
  .note-motto{left:-18px;bottom:-25px;font-size:.65rem}
  .hero-wave{height:54px}
  .home-page .quick-access{grid-template-columns:repeat(4,minmax(0,1fr));border-radius:20px}
  .home-page .quick-access>a{padding:22px 14px;gap:12px;flex-direction:column;align-items:flex-start}
  .home-page .quick-access>a:not(:last-child){border-right:1px solid #edf1fa}
  .home-page .quick-access>a:nth-child(-n+2){border-bottom:0}
  .home-page .quick-access strong{font-size:.76rem}
  .home-page .quick-access small{font-size:.66rem}
  .home-page .announcement{padding-block:22px}
  .home-page .announcement p{font-size:.79rem}
  .school-numbers{grid-template-columns:1.4fr repeat(3,1fr);padding-block:36px 44px;gap:14px}
  .numbers-title{grid-column:auto;text-align:left}
  .numbers-title h2{font-size:1.25rem}
  .number-item strong{font-size:2.65rem}
  .number-item>span{font-size:.66rem}
  .numbers-note{grid-column:2/-1;text-align:center;margin-top:0}
  .program-preview{flex-direction:row;text-align:left;padding:34px;gap:28px;flex-wrap:wrap}
  .program-preview>div:nth-child(2){flex:1;min-width:240px}
  .program-preview>.button{margin-left:auto}
  .about-section{grid-template-columns:1.1fr 1fr;gap:36px}
  .welcome-card{padding:32px 26px}
  .welcome-card h3{font-size:1.6rem}
  .life-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .life-card{padding:23px}
  .life-card h3{font-size:1.2rem}
  .life-card>.text-link{font-size:.7rem;gap:6px}
  .home-page .section-heading>.heading-note{max-width:240px;font-size:.76rem}
  .editorial-empty{flex-direction:row;text-align:left;padding:40px;gap:40px}
  .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery-tile:first-child{grid-column:1/-1}
  .gallery-tile:first-child img{aspect-ratio:2.2}
  .gallery-empty{flex-direction:row;text-align:left;justify-content:center;gap:60px;padding:46px}
  .home-page .agenda-section{padding-top:76px;grid-template-columns:1fr 1fr;gap:48px}
  .home-page .cta-banner{padding:48px}
}
@media(min-width:1024px){
  .home-page .nav-wrap{min-height:88px}
  .home-page .site-nav{gap:7px}
  .home-page .site-nav>a{padding:10px 11px;font-size:.76rem}
  .home-page .site-nav .button{padding:12px 16px;font-size:.73rem}
  .home-page .hero{padding-block:70px 100px}
  .home-page .hero-grid{grid-template-columns:1.1fr 1fr;gap:70px}
  .home-page .hero .hero-slide-heading{font-size:clamp(3.2rem,4.4vw,4.3rem)}
  .home-page .hero .hero-label{font-size:.64rem;padding:10px 15px}
  .home-page .hero-description{font-size:.91rem;max-width:500px}
  .home-page .hero .button-row{gap:14px}
  .home-page .hero-primary,.home-page .hero-secondary{font-size:.8rem;padding:14px 20px}
  .home-page .hero-footnote{font-size:.7rem;margin-top:30px}
  .hero-art{margin:0 22px 0 10px}
  .home-page .hero-visual{padding:20px;border-radius:28px}
  .school-card-heading{padding-bottom:16px;gap:13px}
  .school-card-heading strong{font-size:1.12rem}
  .school-card-heading div>span{font-size:.66rem}
  .school-card-heading .school-card-icon{width:46px;height:46px}
  .home-page .hero-visual figcaption{font-size:.62rem;padding:12px 0}
  .school-card-bottom{font-size:.65rem;padding-top:15px}
  .school-card-bottom .landing-icon{width:18px;height:18px}
  .floating-note{padding:14px 17px;gap:11px;border-radius:15px}
  .note-ppdb{right:-28px;top:-24px}
  .note-ppdb strong{font-size:.88rem}
  .note-ppdb small{font-size:.55rem}
  .note-icon{padding:10px}
  .note-motto{font-size:.74rem;left:-30px;bottom:-24px}
  .spark-one{left:-30px;top:-25px;font-size:3rem}
  .spark-two{right:-29px;bottom:-11px;font-size:3rem}
  .hero-wave{height:64px}
  .home-page .services-wrap{margin-top:-26px}
  .home-page .quick-access>a{flex-direction:row;flex-wrap:nowrap;align-items:center;padding:25px 20px;gap:14px}
  .home-page .quick-access strong{font-size:.78rem}
  .service-icon{width:46px;height:46px;border-radius:14px}
  .home-page .quick-arrow{display:block;font-size:1rem}
  .home-page .pill{font-size:.61rem;padding:8px 12px}
  .home-page .announcement p{font-size:.81rem}
  .school-numbers{padding-block:40px 50px}
  .numbers-title h2{font-size:1.4rem}
  .number-item strong{font-size:3rem}
  .number-item>span{font-size:.74rem}
  .home-page .section{padding-block:90px}
  .home-page .section-heading{margin-bottom:38px}
  .program-preview{padding:40px;flex-wrap:nowrap;gap:35px}
  .program-preview h3{font-size:1.5rem}
  .program-preview p{font-size:.86rem}
  .about-section{gap:90px}
  .welcome-card{padding:40px}
  .welcome-card h3{font-size:2rem}
  .welcome-card>.eyebrow{font-size:.64rem}
  .welcome-card>p:not(.eyebrow){font-size:.87rem}
  .principal-byline strong{font-size:.84rem}
  .principal-byline small{font-size:.69rem}
  .life-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
  .life-card{padding:32px}
  .life-card h3{font-size:1.5rem}
  .life-card .section-kicker{font-size:.62rem}
  .life-card>.text-link{font-size:.8rem}
  .home-page .section-heading>.heading-note{font-size:.84rem;max-width:310px}
  .editorial-empty{padding:44px 60px;gap:55px}
  .editorial-empty h3{font-size:1.55rem}
  .gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gallery-tile:first-child{grid-column:span 2;grid-row:span 2}
  .gallery-tile:first-child img{aspect-ratio:auto;min-height:100%;position:absolute;inset:0}
  .gallery-tile{min-height:230px}
  .gallery-empty{padding:50px 60px;gap:85px}
  .home-page .agenda-section{padding-top:90px;gap:100px}
  .home-page .cta-banner{padding:56px 60px;border-radius:30px}
  .cta-decoration{right:7%;top:15px;font-size:16rem}
  .home-page .footer-grid{grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:44px}
}
@media(min-width:1440px){.home-page .hero-grid{gap:100px}.home-page .hero .hero-slide-heading{font-size:4.15rem}.home-page .hero{padding-block:78px 108px}.home-page .quick-access>a{padding:28px 24px}.home-page .quick-access strong{font-size:.83rem}.home-page .site-nav{gap:12px}.home-page .site-nav>a{font-size:.8rem}}
@media(prefers-reduced-motion:reduce){.home-page *,.home-page *:before,.home-page *:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
