:root{--blue:#25578c;--navy:#102e4c;--ink:#142e45;--lime:#d7e124;--mist:#eef4f7;--line:#d7e0e6}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,a,input{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #149fae;outline-offset:5px}img,video{max-width:100%;display:block}button{font:inherit;cursor:pointer}.wrap{width:min(1240px,88%);margin:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08;letter-spacing:-.045em}h2{font-size:clamp(2.15rem,4vw,3.65rem);font-weight:750;margin-bottom:24px}h3{font-size:1.6rem}p{margin-bottom:22px}.eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.16em;line-height:1.5;margin-bottom:22px}.utility{background:var(--navy);color:white;padding:9px 5%;display:flex;justify-content:space-between;font-size:.72rem;letter-spacing:.09em}.utility div{display:flex;gap:27px}.utility a{font-size:.8rem;letter-spacing:0}header{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--blue);padding:21px 5%;color:white}.brand{width:292px;flex-shrink:0}nav{display:flex;align-items:center;gap:25px;font-size:.9rem;font-weight:700}.button{display:inline-block;background:var(--lime);color:var(--navy);padding:15px 27px;font-size:.9rem;font-weight:800;text-decoration:none!important;letter-spacing:.01em;border:1px solid transparent}.button:hover{background:#e9f151}.menu-toggle{display:none}.skip{position:absolute;top:-100px;z-index:30;background:white;padding:15px}.skip:focus{top:5px}.hero{position:relative;min-height:640px;height:calc(100svh - 148px);max-height:830px;isolation:isolate;background:var(--navy);color:white;overflow:hidden}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:50% 45%;z-index:-3}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(7,27,46,.92),rgba(7,27,46,.42) 55%,rgba(7,27,46,.08))}.hero-copy{width:88%;margin:auto;padding:65px 0 80px}.hero h1{font-size:clamp(3.8rem,7.4vw,7.2rem);line-height:.98;letter-spacing:-.06em;margin:0 0 27px;max-width:750px}.hero h1 em{color:var(--lime);font-style:normal}.hero-copy>p:not(.eyebrow){font-size:1.13rem;line-height:1.65}.hero-actions{display:flex;align-items:center;gap:30px}.video-link{border-bottom:1px solid white;font-size:.95rem;font-weight:700;padding:10px 0}.hero-caption{position:absolute;right:4%;bottom:35px;writing-mode:vertical-rl;font-size:.65rem;letter-spacing:.18em}.welcome{padding:90px 0;display:grid;grid-template-columns:1.2fr 1fr;gap:9%}.welcome>div:last-child{padding-top:38px;font-size:1.1rem;color:#4a6070}.text-link{font-size:.92rem;font-weight:800;border-bottom:2px solid var(--blue);padding-bottom:5px;color:var(--blue)}.schools-section{background:var(--mist);padding:85px 0}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:35px}.section-heading h2{margin:0}.section-heading>p{color:#506879;max-width:350px}.link-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:30px 0}.link-cards>a{display:block;background:white;border-top:5px solid var(--blue);padding:30px;box-shadow:0 8px 22px #0d355507;text-decoration:none}.link-cards>a:hover{background:#e4eef3;transform:translateY(-3px)}.card-index{display:block;color:var(--blue);font-size:.8rem;letter-spacing:.1em;margin-bottom:45px}.link-cards h3{font-size:1.8rem;margin-bottom:18px}.link-cards p{font-size:.95rem;color:#526675;min-height:50px}.life{padding:100px 0;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.life-photo{position:relative}.life-photo img{width:100%;height:490px;object-fit:cover}.photo-label{position:absolute;background:var(--lime);left:-20px;bottom:30px;padding:12px 22px;font-size:.77rem;font-weight:800;letter-spacing:.1em}.life-copy>p{color:#526675}.life-copy>.eyebrow{color:var(--blue)}.program-list{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.program-list a{border-bottom:1px solid var(--line);padding:14px 0;font-weight:700;font-size:.95rem}.mission-band{padding:90px 0;background:var(--navy);color:white;text-align:center}.mission-band h2{font-size:clamp(2.5rem,5vw,4.6rem)}.mission-band em{font-style:normal;color:var(--lime)}.mission-band p:not(.eyebrow){max-width:580px;margin:0 auto 30px;color:#d9e5ed}.outline{background:transparent;color:white;border-color:#8398a9;margin:5px 8px}.outline:hover{background:white;color:var(--navy)}.news-section{padding:95px 0}.news-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.news-card{border:1px solid var(--line);text-decoration:none!important}.news-card>img{width:100%;height:290px;object-fit:cover;object-position:center 35%}.news-card:first-child>img{object-fit:contain;background:#e6f0d8}.news-card>div{padding:30px}.news-card h3{font-size:1.9rem;max-width:450px}.news-card .eyebrow{font-size:.72rem;color:#506879}.family-strip{padding:40px 0 90px;display:grid;grid-template-columns:1.15fr 1fr;gap:10%}.family-strip a{display:block;border-bottom:1px solid var(--line);padding:15px 0;font-weight:700}.join{background:var(--lime);padding:62px 6%;display:flex;align-items:center;justify-content:space-between;gap:35px}.join h2{margin:0}.join .button{background:var(--navy);color:white}.join .eyebrow{margin-bottom:15px}footer{background:var(--navy);color:white;padding:60px 6% 20px;font-size:.92rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;padding-bottom:50px}.footer-logo{width:310px;margin-bottom:24px}.footer-grid h3{font-size:1.05rem;letter-spacing:0}.footer-grid a{display:block;margin:8px 0;color:#dbe7f0}.footer-grid p{color:#dbe7f0}.footer-bottom{border-top:1px solid #456079;padding-top:23px;display:flex;justify-content:space-between;gap:20px;font-size:.78rem;color:#cad9e4}.footer-bottom a{margin-left:20px}.mast{background:var(--mist);padding:65px 0 70px;border-bottom:8px solid var(--lime)}.mast h1{font-size:clamp(3rem,6vw,5.5rem);margin:0;max-width:1000px}.mast .eyebrow{color:var(--blue)}.intro{font-size:1.15rem;max-width:720px;margin-top:25px}.document{padding:65px 0 90px;min-height:400px}.document>div:not(.link-cards){max-width:100%}.document p,.document li{max-width:880px}.document p{margin-bottom:22px}.document h2{font-size:2.2rem;margin-top:35px}.document h3{font-size:1.65rem;margin-top:28px}.document a:not(.button):not(.link-cards a){color:var(--blue);text-decoration:underline;text-underline-offset:4px}.document img{max-height:650px;object-fit:contain;margin:30px 0}.document video{width:100%;max-width:1000px;max-height:620px;background:#102e4c;margin:30px 0}.document .lead{font-size:1.6rem;line-height:1.4;font-weight:600;max-width:900px}.document table{width:100%;border-collapse:collapse}.document td,.document th{padding:12px;border:1px solid var(--line)}.document .link-cards a{text-decoration:none}.action-panel{padding:35px;background:var(--mist);margin:35px 0}.action-panel h2{margin-top:0}.event{display:flex;gap:30px;border-bottom:1px solid var(--line);padding:25px 0;margin-bottom:30px}.event>span{background:var(--mist);padding:16px 25px;text-align:center;font-size:.8rem}.event b{font-size:2.5rem;line-height:1.3}.event h2{margin-top:0!important}.document iframe{max-width:100%}
@media(min-width:1600px){header,.utility{padding-left:calc((100vw - 1440px)/2);padding-right:calc((100vw - 1440px)/2)}}@media(max-width:1100px){.brand{width:245px}nav{gap:15px;font-size:.82rem}nav .button{padding:12px 16px}.hero{min-height:640px}.hero h1{font-size:6rem}.link-cards{gap:15px}.link-cards>a{padding:23px}}@media(max-width:900px){header{position:relative;padding:18px 6%}.menu-toggle{display:block;border:1px solid #a5bacf;background:transparent;color:white;padding:7px 13px;font-size:.9rem}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--navy);padding:25px 6%;z-index:20;flex-direction:column;align-items:stretch;gap:18px;font-size:1rem}nav.open{display:flex}.utility>span{display:none}.utility{justify-content:flex-end}.welcome,.life,.family-strip{grid-template-columns:1fr;gap:30px}.welcome>div:last-child{padding:0}.life-photo img{height:420px}.link-cards{grid-template-columns:1fr}.card-index{margin-bottom:20px}.link-cards p{min-height:0}.section-heading{align-items:flex-start;flex-direction:column}.hero{height:650px;min-height:0}.hero h1{font-size:5rem}.hero-copy{padding-top:75px}.hero>img{object-position:60% center}.hero-shade{background:linear-gradient(90deg,#071b2ee8,#071b2e55)}.hero-caption{display:none}.news-card>img{height:220px}.footer-grid{grid-template-columns:1.5fr 1fr;gap:35px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.footer-bottom a{margin:0 20px 0 0}.join{align-items:flex-start;flex-direction:column}}@media(max-width:580px){body{font-size:16px}.brand{width:225px}.hero{height:640px}.hero h1{font-size:4.25rem}.hero-copy{padding-top:60px}.hero-copy>p:not(.eyebrow){font-size:1rem}.hero-actions{gap:20px;flex-wrap:wrap}.hero .eyebrow{font-size:.7rem}.welcome,.life,.news-section{padding:60px 0}.schools-section,.mission-band{padding:60px 0}.news-grid{grid-template-columns:1fr}.life-photo img{height:330px}.photo-label{left:-10px}.family-strip{padding-bottom:60px}.join{padding:45px 6%}.document{padding-top:40px;overflow-wrap:anywhere}.mast{padding:45px 0}.event{gap:15px}.event h2{font-size:1.5rem}.event>span{padding:12px 18px}.footer-grid{grid-template-columns:1fr 1fr;gap:20px}.footer-logo{width:280px}}@media(prefers-reduced-motion:no-preference){a{transition:background .18s,transform .18s}html{scroll-behavior:smooth}}

/* Centered National Blue Ribbon recognition, shared by every page. */
header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:16px 24px;position:relative}
.header-branding{display:contents}
.header-branding .brand{grid-column:1;grid-row:1;max-width:100%;justify-self:start}
.ribbon-badge{grid-column:2;grid-row:1;justify-self:center;width:128px;height:128px;object-fit:contain}
header nav{grid-column:1/-1;grid-row:2;justify-content:center;border-top:1px solid #ffffff30;padding-top:16px}
.menu-toggle{grid-column:3;grid-row:1;justify-self:end}
@media(max-width:1180px){.menu-toggle{display:block;border:1px solid #a5bacf;background:transparent;color:white;padding:7px 13px;font-size:.9rem}header nav{grid-area:auto;display:none;position:absolute;top:100%;left:0;right:0;background:var(--navy);padding:25px 6%;z-index:20;flex-direction:column;align-items:stretch;gap:18px;font-size:1rem}header nav.open{display:flex}}
@media(max-width:580px){header{gap:14px 12px}.header-branding .brand{grid-column:1/3;width:225px;max-width:100%}.ribbon-badge{grid-column:1/-1;grid-row:2;width:96px;height:96px}.menu-toggle{grid-column:3;grid-row:1}header nav{grid-row:auto}}

/* Seamless school-recognition ticker. */
.header-banner{grid-column:1/-1;grid-row:3;min-width:0;display:flex;align-items:center;background:var(--lime);color:var(--navy)}
.banner-window{min-width:0;overflow:hidden;flex:1}
.banner-track{display:flex;width:max-content;animation:school-banner-scroll 42s linear infinite}
.banner-group{display:flex;align-items:center;flex-shrink:0;min-width:100vw;justify-content:space-around;gap:38px;padding:13px 19px;font-size:1rem;font-weight:800;letter-spacing:.025em;white-space:nowrap}
.banner-separator{font-size:1.15rem}
.banner-control{align-self:stretch;border:0;border-left:1px solid #102e4c40;background:var(--lime);color:var(--navy);padding:0 18px;font-size:.875rem;font-weight:700}
.header-banner.is-paused .banner-track,.header-banner:hover .banner-track{animation-play-state:paused}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@keyframes school-banner-scroll{to{transform:translateX(-50%)}}
@media(max-width:580px){.banner-group{font-size:.9rem;gap:26px;padding:11px 13px}.banner-control{padding:0 12px}}
@media(prefers-reduced-motion:reduce){.banner-track{animation:none;width:auto}.banner-group{min-width:0;white-space:normal;text-align:center;display:block}.banner-group>span:not(:first-child),.banner-group+.banner-group,.banner-control{display:none}}

/* Homepage slideshow and admissions */
.hero>.hero-video{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center;z-index:-3}
.hero-video-control{position:absolute;right:5%;bottom:25px;z-index:2;border:1px solid #ffffff99;background:#102e4cd9;color:white;padding:9px 16px;font-size:.8rem;border-radius:3px}
.hero-caption{bottom:90px}
.admissions-intro{display:grid;grid-template-columns:1.4fr 1fr;gap:50px;align-items:center;margin-bottom:48px}.admissions-intro h2{font-size:clamp(2rem,4vw,3.2rem)}.admissions-intro a:not(.button){overflow-wrap:anywhere;color:var(--blue)}.application-downloads{background:var(--mist);padding:28px;border-top:4px solid var(--lime)}.application-downloads .button{display:block;margin:12px 0;text-align:center}.application-card{max-width:980px;margin:auto;padding:48px;border:1px solid var(--line);border-top:6px solid var(--blue);box-shadow:0 12px 40px #102e4c09}.application-card h2{font-size:2.3rem}.application-notice{background:var(--mist);border-left:4px solid var(--blue);padding:18px 22px;font-size:.95rem}.application-notice p{margin:6px 0 0}.application-notice a{color:var(--blue);text-decoration:underline}.required-note{font-size:.85rem;margin:25px 0}.application-form fieldset{border:0;padding:0;margin:0 0 35px;min-width:0}.application-form legend{font-size:1.35rem;font-weight:700;margin-bottom:24px;width:100%;border-bottom:1px solid var(--line);padding-bottom:14px}.application-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.application-field.full-width{grid-column:1/-1}.application-field label{display:block;font-size:.95rem;line-height:1.5;font-weight:700;margin-bottom:9px}.application-field label span{color:var(--blue)}.application-field input,.application-field select{font:inherit;width:100%;height:48px;border:1px solid #bdcdd8;border-radius:3px;padding:10px 12px;background:#f8fafb;color:#4a6070;opacity:1}.application-submit{border-top:1px solid var(--line);padding-top:25px}.application-submit button:disabled{background:#dce3e8;color:#4a6070;cursor:not-allowed}.application-submit p{font-size:.85rem;color:#526675;margin:14px 0 0;max-width:550px}
@media(max-width:700px){.admissions-intro{grid-template-columns:1fr;gap:20px}.application-card{padding:25px 18px}.application-grid{grid-template-columns:1fr}.application-field.full-width{grid-column:auto}.hero-video-control{bottom:20px}.application-downloads{padding:20px}}

/* Academic results: independent percentage rings for each subject. */
.school-results{padding:66px 0 70px;background:#f2f6f8;border-bottom:1px solid var(--line)}.results-heading{margin-bottom:32px}.results-heading .eyebrow{color:var(--blue);margin-bottom:12px}.results-heading h2{font-size:clamp(2rem,3.5vw,3.1rem);margin-bottom:0}.results-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(200px,.7fr);gap:22px;align-items:stretch}.comparison-card{background:white;border:1px solid var(--line);border-top:4px solid var(--blue);padding:26px 18px 24px;border-radius:4px}.comparison-card h3{font-size:1.45rem;text-align:center;letter-spacing:-.02em;margin:0 0 12px}.comparison-card h3 span{font-size:.85rem;font-weight:400;color:#526675;margin:0 5px}.results-legend{display:flex;justify-content:center;gap:20px;font-size:.78rem;font-weight:700;margin-bottom:25px}.results-legend span{display:flex;align-items:center;gap:7px}.results-legend i{display:inline-block;width:11px;height:11px;border-radius:50%}.alcs-key{background:var(--blue)}.comparison-key{background:#789000}.subject-charts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.subject-chart{margin:0;text-align:center}.subject-chart svg{display:block;width:100%;height:auto;overflow:visible}.ring-track,.ring-value{fill:none;stroke-width:7}.ring-track{stroke:#edf1f4}.ring-value{transform:rotate(-90deg);transform-origin:70px 70px}.alcs-ring{stroke:var(--blue)}.comparison-ring{stroke:#789000}.subject-chart text{text-anchor:middle;font-family:Arial,Helvetica,sans-serif;font-weight:800}.alcs-value{font-size:27px;fill:var(--blue)}.comparison-value{font-size:19px;fill:#637800}.subject-chart figcaption{font-size:.85rem;font-weight:700;margin-top:12px}.results-award{text-align:center;align-self:center;padding:0 10px}.results-award img{width:160px;height:160px;object-fit:contain;margin:0 auto 14px}.results-award .eyebrow{font-size:.62rem;color:var(--blue);margin-bottom:8px}.results-award h3{font-size:1.23rem;line-height:1.25;letter-spacing:-.02em;margin-bottom:9px}.results-award p:last-child{font-size:.8rem;line-height:1.5;margin:0;color:#526675}
@media(min-width:1500px){.results-award img{width:185px;height:185px}}
@media(max-width:1000px){.results-layout{grid-template-columns:1fr 1fr}.results-award{grid-column:1/-1;padding:24px 0 0}.results-award img{width:180px;height:180px}.subject-chart svg{max-width:150px;margin:auto}}
@media(max-width:600px){.school-results{padding:42px 0}.results-layout{grid-template-columns:1fr;gap:20px}.results-heading h2{font-size:2.1rem}.comparison-card{padding:24px 14px}.results-award{grid-column:auto}.results-legend{margin-bottom:20px}.subject-chart figcaption{font-size:.82rem}}

/* Give both comparisons and the award the same visual structure. */
.school-results{background:white}
.results-heading{text-align:center;margin-bottom:40px}
.results-layout{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;align-items:start}
.comparison-card,.results-award{display:grid;grid-template-rows:220px minmax(58px,auto) 44px;align-items:center;align-self:start;padding:0;background:transparent;border:0;border-radius:0;text-align:center;grid-column:auto}
.subject-charts{grid-row:1;align-items:center;gap:8px;width:100%}
.subject-chart svg{max-width:140px;margin:0 auto}
.comparison-card h3,.results-award h3{grid-row:2;font-size:1.3rem;line-height:1.3;letter-spacing:-.02em;margin:14px 0 8px;align-self:start}
.results-legend{grid-row:3;align-self:start;margin:8px 0 0;font-size:.82rem}
.results-award img{grid-row:1;width:210px;height:210px;max-width:100%;object-fit:contain;border-radius:50%;margin:auto}
.results-award .eyebrow{display:none}
.results-award p:last-child{grid-row:3;align-self:start;font-size:.82rem;margin:8px 0 0;line-height:1.5}
@media(max-width:900px) and (min-width:701px){.results-layout{gap:18px}.comparison-card,.results-award{grid-template-rows:180px minmax(68px,auto) 44px}.results-award img{width:170px;height:170px}.comparison-card h3,.results-award h3{font-size:1.1rem}.subject-chart figcaption{font-size:.75rem}.results-legend{gap:12px}}
@media(max-width:700px){.results-layout{grid-template-columns:1fr;gap:38px;max-width:440px;margin:auto}.comparison-card,.results-award{grid-template-rows:210px minmax(58px,auto) 44px}.results-award{padding:0}.results-award img{width:210px;height:210px}.results-heading{margin-bottom:28px}}

/* Header logo balance: school identity left, Blue Ribbon badge right. */
.header-branding .brand{grid-column:1;grid-row:1;justify-self:center;width:min(100%,380px);filter:drop-shadow(0 1px 1px #ffffff30)}
.ribbon-badge{grid-column:3;grid-row:1;justify-self:center;width:144px;height:144px;object-fit:contain}
@media(max-width:1180px) and (min-width:581px){.header-branding .brand{grid-column:1;justify-self:center;width:min(100%,350px)}.ribbon-badge{grid-column:2;grid-row:1;width:118px;height:118px}}
@media(max-width:580px){header{grid-template-columns:minmax(0,1fr) 68px auto;gap:12px;padding:18px 5%}.header-branding .brand{grid-column:1;grid-row:1;width:100%;max-width:260px;justify-self:center}.ribbon-badge{grid-column:2;grid-row:1;width:64px;height:64px;justify-self:center}.menu-toggle{grid-column:3;grid-row:1;justify-self:end}}

.mission-video-wrap{width:100%;margin:0 auto 44px;overflow:hidden;background:var(--navy);border-radius:3px}.mission-video{display:block;width:100%;max-height:min(68vh,680px);aspect-ratio:16/9;object-fit:contain;background:#102e4c}.document:has(.mission-video-wrap){padding-top:30px}
@media(max-width:700px){.mission-video-wrap{margin-bottom:30px;border-radius:0}.document:has(.mission-video-wrap){padding-top:20px}.mission-video{max-height:55vh}}

/* Staff directory */
.staff-directory{width:100%;border-collapse:collapse;margin:30px 0 36px;text-align:left;font-size:1rem}.staff-directory thead{background:var(--blue);color:white}.staff-directory th,.staff-directory td{padding:17px 22px;border-bottom:1px solid var(--line);vertical-align:top}.staff-directory tbody th{font-weight:700;width:45%}.staff-directory tbody tr:nth-child(even){background:#f5f7fa}.staff-directory thead th{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}@media(max-width:580px){.staff-directory th,.staff-directory td{padding:14px 12px}.staff-directory{font-size:.9rem}.staff-directory tbody th{width:44%}}

.school-video-wrap{margin:0 0 40px}.school-video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#102e4c;border-radius:3px}.school-video-start{margin-top:16px}.school-video-start[hidden]{display:none}

.video-showcases{margin-bottom:64px}.video-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.video-card{min-width:0}.document .video-gallery video{width:100%;aspect-ratio:16/9;object-fit:contain;margin:0;background:#102e4c;border-radius:3px}.video-features{border-top:1px solid var(--line);padding-top:44px}.video-feature{margin-bottom:52px}.document .video-feature video{margin:18px 0 0;aspect-ratio:16/9;object-fit:contain}.video-feature h2{font-size:clamp(1.4rem,3vw,2rem)}@media(max-width:700px){.video-gallery{grid-template-columns:1fr;gap:22px}.video-showcases{margin-bottom:40px}.video-features{padding-top:30px}}

.results-slideshow{max-width:1100px;margin:28px auto 0}.results-slide{margin:0}.results-slide[hidden]{display:none}.document .results-slide img{display:block;width:100%;max-height:76vh;object-fit:contain;margin:0;background:#f5f7fa}.results-slide figcaption{text-align:center;color:#526675;font-size:.9rem;margin-top:16px}.results-slide-controls{display:flex;align-items:center;justify-content:center;gap:28px;margin:24px 0}.results-slide-count{font-weight:700;min-width:50px;text-align:center}.results-slideshow:focus-visible{outline:3px solid #149fae;outline-offset:8px}@media(max-width:580px){.results-slide-controls{gap:12px}.results-slide-controls .button{padding:12px 16px;font-size:.85rem}.document .results-slide img{max-height:70vh}}

.news-card[href="/news/apple-picking"] img{object-position:30% 62%}.link-cards a[href="/news/apple-picking"] img{width:100%;aspect-ratio:3/2;object-fit:cover;object-position:30% 62%;margin:0 0 22px}

.document .hiring-flyer{display:block;width:100%;max-width:760px;height:auto;max-height:none;object-fit:contain;margin:30px auto 36px}

/* Compact school links */
.link-cards.school-cards{gap:16px}.link-cards.school-cards>a{padding:20px 22px;border-top-width:3px}.school-cards h3,.document .school-cards h3{font-size:1.35rem;margin:0 0 8px}.school-cards p,.document .school-cards p{min-height:0;margin:0 0 12px;font-size:.9rem;line-height:1.45}.school-cards .text-link{font-size:.88rem}@media(max-width:900px){.link-cards.school-cards{gap:12px;margin:22px 0}.link-cards.school-cards>a{padding:17px 20px}.school-cards h3,.document .school-cards h3{font-size:1.2rem}.school-cards p,.document .school-cards p{margin-bottom:8px}}

.document .hiring-flyer{max-width:460px;margin:32px auto}.career-application{max-width:820px;margin:24px auto 32px;padding:26px;background:var(--mist);border:1px solid var(--line);border-radius:4px}.document .career-application h2{margin:0 0 22px;font-size:1.65rem}.career-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.career-fields label{display:block;font-weight:700;margin-bottom:8px}.career-fields input{display:block;width:100%;padding:12px;background:white;border:1px solid #a5bacf;border-radius:3px;font:inherit;box-sizing:border-box}.career-resume{grid-column:1/-1}.career-fields input[type=file]{padding:18px}.career-fields input::file-selector-button{background:var(--blue);color:white;border:0;border-radius:3px;padding:10px 14px;margin-right:12px;cursor:pointer}.document #career-file-note{font-size:.85rem;margin:8px 0 0;color:#526675}.document .career-draft-note{font-size:.9rem;margin:22px 0 0}@media(max-width:580px){.career-application{padding:20px}.career-fields{grid-template-columns:1fr}.career-resume{grid-column:auto}.document .hiring-flyer{max-width:360px}}

/* Keep the headline and the full video in separate columns. */
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:34px;padding:60px 4%;height:auto;min-height:640px;max-height:none}.hero-copy{grid-column:1;grid-row:1;width:100%;margin:0;padding:0;min-width:0}.hero-media{grid-column:2;grid-row:1;position:relative;min-width:0;overflow:hidden;border-radius:4px;background:#071b2e}.hero-media .hero-video{position:static;display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;max-width:none;z-index:auto}.hero-media .hero-video-control{right:16px;bottom:16px}.hero-shade{display:none}.hero-caption{display:none}.hero h1{font-size:clamp(3.8rem,7.4vw,7.2rem)}
@media(max-width:1100px){.hero{grid-template-columns:1fr;gap:32px;padding:48px 6%;min-height:0}.hero-copy{grid-column:1;grid-row:1;padding:0}.hero-media{grid-column:1;grid-row:2;width:100%}.hero h1{font-size:5rem}.hero-media .hero-video-control{bottom:14px}}
@media(max-width:580px){.hero{height:auto;padding:44px 6% 30px;gap:28px}.hero h1{font-size:4.25rem}.hero-copy{padding:0}.hero-media .hero-video-control{right:10px;bottom:10px;padding:8px 12px}}

/* Fill the right hero column from edge to edge. */
@media(min-width:1101px){
 .hero{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:stretch;gap:0;padding:0;min-height:640px}
 .hero-copy{box-sizing:border-box;padding:60px 28px 60px max(28px,8.6%);align-self:center}
 .hero-media{align-self:stretch;width:100%;height:100%;min-height:640px;border-radius:0}
 .hero-media .hero-video{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:16/9;object-fit:contain;object-position:center}
 .hero-media .hero-video-control{right:22px;bottom:22px}
}

@media(min-width:1101px){.hero-media{background:var(--navy)}}

/* Direct ALCS versus region comparisons on a shared 0–100% scale. */
.comparison-key{background:#171717}.comparison-ring{stroke:#171717}.comparison-value{fill:#171717}
.results-layout{align-items:center}.comparison-card{display:flex;flex-direction:column;align-items:stretch;text-align:left;padding:22px;border:1px solid var(--line);border-radius:4px;background:#fff}.comparison-card h3{order:0;text-align:center;margin:0 0 20px;font-size:1.4rem}.comparison-card h3 span{color:#171717;font-weight:700}.comparison-card .results-legend{display:none}.comparison-card .subject-charts{display:flex;flex-direction:column;gap:24px;order:1}.versus-chart{margin:0}.versus-chart figcaption{font-size:.95rem;font-weight:700;margin:0 0 10px}.versus-bar-row{display:grid;grid-template-columns:42px minmax(0,1fr) 44px;gap:9px;align-items:center;margin:7px 0;color:var(--blue);font-size:.82rem}.versus-team{font-weight:700}.versus-track{height:14px;background:#edf1f4;border-radius:2px;overflow:hidden}.versus-bar{display:block;height:100%;border-radius:2px}.alcs-bar{background:var(--blue)}.region-bar{background:#171717}.comparison-bar-row{color:#171717}.versus-bar-row strong{text-align:right;font-size:.9rem}.results-award{align-self:center}@media(max-width:1000px){.results-layout{grid-template-columns:1fr 1fr;gap:20px}.results-award{grid-column:1/-1;justify-self:center;width:100%;max-width:360px}}@media(max-width:700px){.results-layout{grid-template-columns:1fr}.results-award{grid-column:auto}.comparison-card{padding:22px}.comparison-card h3{font-size:1.4rem}.versus-bar-row{grid-template-columns:44px minmax(0,1fr) 46px}}

/* Compact, subject-led comparison graphics. */
.school-results{padding:34px 0}.results-heading{margin-bottom:22px}.results-heading .eyebrow{margin-bottom:6px}.results-heading h2{font-size:clamp(1.6rem,2.6vw,2.1rem);line-height:1.15}.results-layout{grid-template-columns:1fr 1fr .7fr;gap:22px;align-items:center}.comparison-card{padding:16px 14px;border:0;background:#f5f8fb;border-radius:4px}.comparison-card h3{font-size:1.12rem;margin:0 0 14px}.comparison-card .subject-charts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.compact-subject figcaption{display:flex;flex-direction:column;align-items:center;gap:7px;font-size:.8rem;margin:0 0 10px}.document .compact-subject img,.compact-subject img{width:32px;height:32px;margin:0;object-fit:contain}.subject-versus-pair{display:flex;align-items:center;justify-content:center;gap:5px}.subject-score{text-align:center}.subject-score strong{display:block;font-size:1.25rem;line-height:1.2}.alcs-score{color:var(--blue)}.region-score{color:#171717}.subject-score span{display:block;font-size:.6rem;font-weight:700;color:#526675;margin-top:4px}.subject-vs{font-size:.62rem;color:#526675}.results-award{display:flex;flex-direction:column;align-items:center;padding:0;max-width:none;width:auto;grid-column:auto;gap:6px}.results-award img{width:105px;height:105px;margin:0}.results-award h3{font-size:.92rem;line-height:1.2;margin:0;text-align:center}.results-award p:last-child{font-size:.68rem;line-height:1.3;margin:0;text-align:center}@media(max-width:1000px) and (min-width:701px){.results-layout{grid-template-columns:1fr 1fr .65fr;gap:12px}.comparison-card{padding:14px 8px}.comparison-card .subject-charts{gap:6px}.subject-versus-pair{gap:3px}.subject-score strong{font-size:1.05rem}.results-award img{width:90px;height:90px}}@media(max-width:700px){.school-results{padding:28px 0}.results-layout{grid-template-columns:1fr 1fr;gap:12px;max-width:none}.comparison-card{padding:14px 8px}.comparison-card .subject-charts{display:flex;gap:12px}.compact-subject{display:grid;grid-template-columns:70px 1fr;align-items:center;gap:8px}.compact-subject figcaption{flex-direction:row;gap:6px;margin:0;font-size:.75rem}.compact-subject img{width:24px;height:24px}.subject-score strong{font-size:1.15rem}.results-award{grid-column:1/-1;flex-direction:row;justify-content:center;gap:14px;margin-top:4px}.results-award img{width:72px;height:72px}.results-award h3{font-size:.85rem}.results-award p:last-child{display:none}}@media(max-width:440px){.results-layout{grid-template-columns:1fr}.comparison-card .subject-charts{display:grid;grid-template-columns:repeat(3,1fr)}.compact-subject{display:block}.compact-subject figcaption{flex-direction:column;margin-bottom:8px}.results-award{grid-column:auto}.comparison-card h3{margin-bottom:10px}}

.results-heading{text-align:center}.results-heading h2{max-width:900px;margin:0 auto;font-size:clamp(1.4rem,2.5vw,2rem);line-height:1.2}.results-heading .results-year{margin:10px 0 0;font-size:1rem;font-weight:700;color:var(--blue)}

.document .leadership-portrait{display:block;width:100%;max-width:300px;height:auto;max-height:none;object-fit:contain;margin:20px 0 42px;border-radius:3px}

.leadership-profile{max-width:880px;margin:0 auto 44px}.document .leadership-name{text-align:center;max-width:none;margin:0 0 18px;font-size:1.2rem;line-height:1.5}.leadership-name strong{font-weight:800}.leadership-email{display:block;font-size:.95rem;font-weight:400}.document .leadership-portrait{margin:0 auto 22px}.leadership-profile>p:last-child{margin-bottom:0}

.school-cards .school-explore{display:inline-block;background:var(--lime);color:var(--navy);padding:11px 18px;font-size:.85rem;font-weight:800;letter-spacing:.01em;border:1px solid transparent;text-decoration:none}.school-cards>a:hover .school-explore{background:#e9f151}.school-cards p strong{font-weight:800}

.minutes-dropdown{margin:28px 0;border:1px solid var(--line);border-radius:3px;overflow:hidden}.minutes-dropdown summary{padding:17px 22px;background:var(--blue);color:white;font-size:1.1rem;font-weight:800;cursor:pointer}.minutes-dropdown summary:focus-visible{outline:3px solid var(--lime);outline-offset:-4px}.minutes-dropdown ul{list-style:none;padding:0;margin:0;max-height:480px;overflow-y:auto}.document .minutes-dropdown li{max-width:none;margin:0;border-bottom:1px solid var(--line)}.minutes-dropdown li:last-child{border:0}.minutes-dropdown li a{display:block;padding:12px 22px;font-size:.95rem}.minutes-dropdown li a:hover{background:var(--mist)}

.social-links{display:inline-flex;align-items:center;gap:12px}.social-icon{display:inline-flex!important;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid currentColor;border-radius:50%;color:inherit;text-decoration:none}.social-icon svg{display:block;width:18px;height:18px}.social-icon:hover{color:var(--lime)}.utility>div{align-items:center;gap:20px}.utility .social-icon{width:26px;height:26px}.utility .social-icon svg{width:16px;height:16px}footer .social-links{margin:8px 0}footer .social-icon{margin:0}@media(max-width:580px){.utility>div{gap:14px}}

/* Larger school identity without pale outlines or shadows. */
header{grid-template-columns:minmax(0,1.5fr) auto minmax(0,.5fr)}
.header-branding .brand{width:min(100%,520px);justify-self:start;filter:none;border:0;box-shadow:none}
.header-branding .brand img{display:block;width:100%;height:auto;border:0;outline:0;box-shadow:none}
header nav{border-top:0}
@media(max-width:1180px) and (min-width:581px){header{grid-template-columns:minmax(0,1fr) 118px auto}.header-branding .brand{width:min(100%,470px);justify-self:start}}
@media(max-width:580px){header{grid-template-columns:minmax(0,1fr) 54px auto;gap:10px;padding-left:4%;padding-right:4%}.header-branding .brand{width:100%;max-width:none;justify-self:start}.ribbon-badge{width:54px;height:54px}}
.footer-campus{margin:20px 0}.footer-campus p{margin-bottom:5px}.footer-campus strong{font-weight:800}

.alcs-results-single{max-width:650px;margin:0 auto;text-align:center}.alcs-circle-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;max-width:560px;margin:auto}.alcs-circle-chart{margin:0}.alcs-circle-chart svg{display:block;width:100%;max-width:145px;margin:auto;overflow:visible}.alcs-circle-track,.alcs-circle-value{fill:none;stroke-width:8}.alcs-circle-track{stroke:#e7edf3}.alcs-circle-value{stroke:var(--blue);stroke-linecap:round;transform:rotate(-90deg);transform-origin:60px 60px;stroke-dashoffset:var(--score-offset)}.alcs-circle-chart text{fill:var(--blue);font-size:26px;font-weight:800;text-anchor:middle}.alcs-circle-chart figcaption{font-weight:700;font-size:.95rem;margin-top:9px}.alcs-comparison-note{margin:14px 0 0;font-size:.9rem;color:#526675}.alcs-ribbon-small{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:18px}.alcs-ribbon-small img{width:64px;height:64px;object-fit:contain}.alcs-ribbon-small strong{font-size:.8rem}.alcs-results-single.animate-ready .alcs-circle-value{stroke-dashoffset:100;transition:stroke-dashoffset 1.6s ease-out}.alcs-results-single.animate-ready.is-visible .alcs-circle-value{stroke-dashoffset:var(--score-offset)}@media(max-width:580px){.alcs-circle-row{gap:18px}.alcs-circle-chart svg{max-width:110px}.alcs-circle-chart figcaption{font-size:.85rem}}@media(prefers-reduced-motion:reduce){.alcs-results-single.animate-ready .alcs-circle-value{transition:none;stroke-dashoffset:var(--score-offset)}}

/* Consistent subject comparisons with all three reported rates. */
.alcs-results-single{max-width:820px}.alcs-circle-row{max-width:820px;gap:24px}.alcs-circle-chart{padding:20px 18px 12px;background:#f4f7fa;border:1px solid var(--line);border-radius:6px}.alcs-circle-chart figcaption{margin-top:16px}.alcs-circle-chart figcaption h3{font-size:1.1rem;letter-spacing:0;margin:0 0 14px;text-align:center}.result-benchmarks{margin:0;text-align:left}.result-benchmarks>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 3px;border-top:1px solid var(--line);font-size:.92rem}.result-benchmarks dt{font-weight:700}.result-benchmarks dd{margin:0;font-weight:800;font-variant-numeric:tabular-nums}.result-benchmarks .benchmark-alcs{color:var(--blue)}.result-benchmarks .benchmark-nys,.result-benchmarks .benchmark-nyc{color:var(--ink)}
@media(max-width:580px){.alcs-circle-row{gap:9px}.alcs-circle-chart{padding:14px 8px 8px}.alcs-circle-chart figcaption h3{font-size:.9rem;margin-bottom:10px}.result-benchmarks>div{font-size:.75rem;gap:5px;padding:9px 0}.alcs-circle-chart svg{max-width:120px}}

/* Compact homepage results, with a white surround for the award seal. */
.school-results{padding:22px 0}.results-heading{margin-bottom:15px}.results-heading h2{font-size:clamp(1.25rem,2.2vw,1.7rem);line-height:1.2}.results-heading .results-year{font-size:.8rem;margin:6px 0 0}.alcs-results-single,.alcs-circle-row{max-width:940px}.alcs-circle-row{gap:14px}.alcs-circle-chart{display:flex;align-items:center;gap:12px;padding:13px 12px}.alcs-circle-chart svg{width:76px;max-width:76px;flex:0 0 76px}.alcs-circle-chart figcaption{margin:0;flex:1;min-width:0}.alcs-circle-chart figcaption h3{font-size:.9rem;text-align:left;margin:0 0 8px}.result-benchmarks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.result-benchmarks>div{display:block;border:0;padding:0;font-size:.72rem}.result-benchmarks dt{font-size:.62rem;margin-bottom:2px}.result-benchmarks dd{font-size:.85rem}.alcs-ribbon-small{background:#fff;margin-top:12px;gap:9px}.alcs-ribbon-small img{width:44px;height:44px;clip-path:circle(47% at 50% 50%)}.alcs-ribbon-small strong{font-size:.73rem}
@media(max-width:800px){.alcs-circle-row{gap:10px}.alcs-circle-chart{display:block;padding:10px 9px}.alcs-circle-chart svg{width:68px;max-width:68px;margin:0 auto 7px}.alcs-circle-chart figcaption h3{text-align:center;font-size:.82rem;margin-bottom:7px}.result-benchmarks{gap:5px;text-align:center}.result-benchmarks dt{font-size:.58rem}.result-benchmarks dd{font-size:.76rem}}
@media(max-width:400px){.alcs-circle-row{gap:6px}.alcs-circle-chart{padding:9px 5px}.result-benchmarks{gap:3px}.result-benchmarks dd{font-size:.7rem}}
