:root{--navy:#12364c;--ink:#183647;--teal:#007e85;--amber:#f5b52b;--muted:#566b7a;--line:#dce5eb;--paper:#f5f8fa}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--teal);text-underline-offset:4px}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e6950b;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.14}h1{font-size:clamp(2.3rem,4.8vw,4.65rem);letter-spacing:-.045em;font-weight:760;margin-bottom:24px}h2{font-size:clamp(1.7rem,2.8vw,2.5rem);letter-spacing:-.035em}h3{font-size:1.3rem;letter-spacing:-.02em}em{font-style:normal;color:var(--teal)}small{font-size:.8rem}img{max-width:100%;height:auto}.topline{background:var(--navy);color:white;font-size:.8rem;letter-spacing:.04em}.topline>div{max-width:1400px;margin:auto;padding:9px 4vw;display:flex;justify-content:space-between;gap:20px}header{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:14px max(4vw,calc((100vw - 1288px)/2));background:white}.brand{display:flex;align-items:center;width:240px;flex-shrink:0}.brand img{width:240px;height:96px;object-fit:contain}header nav{display:flex;gap:28px;align-items:center;flex-wrap:wrap}header nav>a{color:var(--navy);font-size:.9rem;font-weight:600;text-decoration:none}.compare-link{border:1px solid var(--line);padding:10px 15px;border-radius:5px}.compare-link span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;margin-left:8px;background:var(--navy);color:white;border-radius:50%;font-size:.8rem}.category-nav{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;padding:16px 4vw;background:white;border-block:1px solid var(--line)}.category-nav a{font-size:.85rem;color:var(--muted);text-decoration:none}main{max-width:1400px;padding:0 4vw;margin:auto}.intro{display:grid;grid-template-columns:1.06fr 1fr;gap:5%;padding:48px 0 52px;align-items:center}.eyebrow{font-weight:750;font-size:.75rem;letter-spacing:.15em;color:var(--teal);margin-bottom:18px}.lead{font-size:1.15rem;color:var(--muted);max-width:660px}.quick-search{display:flex;margin:28px 0;border:1px solid #bacdd6;background:white;padding:6px;border-radius:6px;max-width:580px;box-shadow:0 10px 30px #17394e08}.quick-search input{flex:1;min-width:0;border:0;background:none;padding:10px 12px;color:var(--ink)}.quick-search button,.button{border:0;border-radius:4px;background:var(--teal);color:white;padding:12px 22px;font-weight:650;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;gap:10px;font-size:.9rem}.intro-facts{display:flex;gap:26px;flex-wrap:wrap;color:var(--muted);font-size:.78rem}.intro-facts b{font-size:1.35rem;color:var(--navy);display:block}.photo{margin:0;background:white;border:1px solid var(--line);border-radius:7px;overflow:hidden}.photo img{display:block;width:100%;height:auto}.photo figcaption{font-size:.75rem;line-height:1.55;color:var(--muted);padding:12px 16px}.intro-photo .photo{box-shadow:16px 16px 0 #e1ecef}.photo-note{background:var(--navy);color:white;padding:20px 24px;margin:20px 0 0 36px;border-left:5px solid var(--amber);border-radius:3px}.photo-note span{font-size:.75rem;letter-spacing:.14em;display:block;color:#a9c9d5}.photo-note strong{font-size:1.2rem;line-height:1.3;display:block;margin:8px 0}.photo-note a{color:#fff;font-size:.85rem}.section{padding:42px 0 60px}.section-heading{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:26px}.section-heading p{color:var(--muted);margin-bottom:5px}.section-heading .eyebrow{color:var(--teal);margin-bottom:12px}.section-heading h2{margin-bottom:0}.section-heading>a{flex-shrink:0;font-size:.9rem}.stage-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.stage{display:flex;align-items:start;gap:14px;text-decoration:none;color:var(--navy);padding:22px 20px;background:#fff;border:1px solid var(--line);border-top:4px solid var(--teal);border-radius:6px;position:relative;transition:transform .18s,border-color .18s}.stage:hover{transform:translateY(-3px);border-color:var(--teal)}.stage:nth-child(4n+2){border-top-color:#dfaa27}.stage:nth-child(4n+3){border-top-color:#29678d}.stage:nth-child(4n+4){border-top-color:#715a9f}.stage-no{font-size:.8rem;font-weight:750;color:var(--teal);padding-top:3px}.stage h2{font-size:1.14rem;margin:7px 0 20px;line-height:1.3;letter-spacing:-.015em}.stage small,.stage div>span{color:var(--muted);font-size:.8rem}.stage>b{position:absolute;right:12px;bottom:16px}.stage:last-child{grid-column:span 2}.guide-band{display:grid;grid-template-columns:1.3fr 1fr;gap:8%;padding:42px;background:var(--navy);color:white;border-radius:7px}.guide-band .eyebrow{color:#7cdbd5}.guide-band h2{margin:0;line-height:1.25}.guide-band em{color:var(--amber)}.guide-band p{color:#d1e1e9}.light{background:white;color:var(--navy)}.school-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.school-card{display:flex;flex-direction:column;padding:25px;background:white;border:1px solid var(--line);border-radius:7px;min-width:0}.school-card h3{margin:18px 0 10px}.school-card h3 a{color:var(--navy);text-decoration:none}.school-card h3 a:hover{color:var(--teal)}.school-card p{font-size:.95rem;color:var(--muted);line-height:1.7}.school-card p.address{font-size:.85rem;margin-bottom:16px;color:var(--teal)}.card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.card-top small{font-size:.75rem;color:var(--muted)}.badge{font-size:.75rem;font-weight:650;background:#eaf4f4;color:#00656b;border-radius:4px;padding:4px 9px;text-decoration:none;display:inline-block}.card-actions{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:auto;padding-top:20px;border-top:1px solid #e8eef2;font-size:.875rem}.card-actions a{text-decoration:none;font-weight:650}.compare{background:white;color:var(--navy);border:1px solid #cedbe3;padding:7px 11px;font-size:.875rem;border-radius:4px}.compare[aria-pressed=true]{background:var(--teal);border-color:var(--teal);color:white}.caution{font-size:.8rem;color:#80540b;margin-bottom:20px}.editorial{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:30px 0 65px}.editorial>div{padding-top:24px;border-top:3px solid var(--teal)}.editorial>div+div{border-color:var(--amber)}.editorial h2{font-size:1.75rem;margin:14px 0}.editorial p{color:var(--muted)}footer{background:#e8eff3;margin-top:50px;padding:45px max(4vw,calc((100vw - 1288px)/2)) 25px}.footer-top,.footer-bottom{display:flex;justify-content:space-between;gap:30px}.footer-top strong{font-size:1.1rem;letter-spacing:.05em}.footer-top p{font-size:.9rem;color:var(--muted);margin-top:12px}.footer-top>div+div{display:grid;gap:8px;align-content:start;font-size:.875rem}.footer-bottom{border-top:1px solid #ccdce4;margin-top:26px;padding-top:22px;align-items:center}.footer-bottom small{max-width:700px;color:var(--muted)}.made{display:flex;align-items:center;gap:10px;color:var(--navy);text-decoration:none;white-space:nowrap;font-size:.8rem}.made img{width:112px;height:30px;object-fit:contain}.page-head{padding:48px 0 30px;max-width:970px}.page-head h1{font-size:clamp(2.25rem,4vw,3.7rem)}.page-head>p:last-child{font-size:1.1rem;color:var(--muted);max-width:850px}.filters{display:grid;grid-template-columns:2fr 1fr 1.4fr 1.3fr auto;gap:14px;align-items:end;background:white;padding:22px;border:1px solid var(--line);border-radius:7px}.filters:not(:has(#category)){grid-template-columns:2fr 1fr 1.4fr auto}.filters label{display:block;font-size:.875rem;color:var(--muted);min-width:0}.filters input,.filters select{display:block;width:100%;min-height:46px;margin-top:7px;border:1px solid #c6d4dc;border-radius:4px;padding:9px;background:#fff;color:var(--ink);font-size:.9rem}.reset{padding:10px;border:0;background:transparent;color:var(--teal);font-size:.875rem;min-height:46px}.result-count{font-size:.875rem;color:var(--muted);margin:22px 0}.info{margin:30px 0;padding:22px;background:#e8f3f4;border-left:4px solid var(--teal);font-size:.95rem}.warning{background:#fff5df;border-color:#ca8c14;color:#614511}.breadcrumbs{font-size:.8rem;margin-top:30px;color:var(--muted)}.detail-head{padding:32px 0}.detail-head h1{font-size:clamp(2rem,4vw,3.8rem);max-width:1000px}.tags{display:flex;gap:8px;flex-wrap:wrap}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:55px;align-items:start}.detail-section{padding:0 0 28px;margin-bottom:26px;border-bottom:1px solid var(--line)}.detail-section h2{font-size:1.65rem}.detail-section p{color:#435e6f}.detail-layout .photo{margin-bottom:32px}.contact-card{background:white;border:1px solid var(--line);padding:26px;border-radius:6px;position:sticky;top:22px}.contact-card h2{font-size:1.5rem}.contact-card p{color:var(--muted);font-size:.9rem}.contact-card .button{display:flex;width:100%;margin-top:12px;padding:12px;font-size:.875rem}.contact-card small{display:block;color:var(--muted);margin-top:20px;font-size:.8rem}.contact-line{display:block;margin:10px 0;overflow-wrap:anywhere}.secondary{background:transparent;border:1px solid #bfd0da;color:var(--navy)}.checklist{padding-left:24px}.checklist li{padding:8px 0}.sources{font-size:.875rem;background:#eaf0f4;padding:24px}.sources h2{font-size:1.2rem}.sources a{overflow-wrap:anywhere}.reading{max-width:850px;padding-bottom:30px}.reading h2{font-size:1.65rem;margin:34px 0 14px}.reading p,.reading li{color:#435e6f}.table-wrap{overflow:auto;border:1px solid var(--line);background:white;border-radius:6px;margin:20px 0}table{border-collapse:collapse;width:100%;min-width:650px;font-size:.9rem}td,th{text-align:left;vertical-align:top;padding:20px;border-bottom:1px solid var(--line);min-width:180px;max-width:330px}th{background:#edf4f6}tbody th{width:160px;min-width:140px}td button{margin-top:12px}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);padding:14px 22px;border-radius:6px;background:var(--navy);color:white;box-shadow:0 5px 20px #12364c30;max-width:90vw;z-index:10;display:none}.toast.show{display:block}.skip{position:fixed;left:20px;top:-100px;background:white;padding:10px;z-index:20}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}[hidden]{display:none!important}#empty{background:white;padding:30px;border:1px solid var(--line);margin:20px 0}
@media(max-width:1050px){header nav{gap:14px}.brand,.brand img{width:210px}.stage-grid{grid-template-columns:repeat(3,1fr)}.stage:last-child{grid-column:auto}.school-grid{grid-template-columns:repeat(2,1fr)}.filters,.filters:not(:has(#category)){grid-template-columns:1fr 1fr}.filters .reset{justify-self:start}.detail-layout{gap:26px;grid-template-columns:minmax(0,1fr) 285px}.guide-band{gap:30px;padding:32px}.category-nav{gap:12px 20px}.intro h1{font-size:3.3rem}}
@media(max-width:720px){.topline>div{font-size:.8rem}.topline span{display:none}header{display:block;padding:6px 5vw 18px}.brand,.brand img{width:205px}.brand img{height:82px}header nav{gap:12px 20px;justify-content:space-between}header nav>a{font-size:.875rem}.compare-link{padding:5px 8px}.category-nav{justify-content:start;flex-wrap:nowrap;overflow-x:auto;padding:12px 5vw;gap:20px}.category-nav a{flex-shrink:0;font-size:.875rem}main{padding:0 5vw}.intro{grid-template-columns:1fr;padding-top:32px;gap:30px}.intro h1{font-size:2.9rem}.intro h1 br:nth-of-type(2){display:none}.intro .lead{font-size:1.02rem}.intro-photo{max-width:560px}.intro-facts{gap:24px}.intro-photo .photo{box-shadow:8px 8px 0 #e1ecef}.photo-note{margin:14px 0 0 20px;padding:16px}.stage-grid{grid-template-columns:1fr 1fr;gap:12px}.stage{padding:18px 13px;gap:9px}.stage h2{font-size:1rem}.stage:last-child{grid-column:span 2}.section-heading{align-items:start;flex-direction:column;gap:16px}.section-heading>p br{display:none}.guide-band,.editorial{grid-template-columns:1fr;gap:28px}.guide-band{padding:28px 24px}.school-grid{grid-template-columns:1fr}.filters,.filters:not(:has(#category)){grid-template-columns:1fr;padding:18px}.detail-layout{grid-template-columns:1fr}.contact-card{position:static;grid-row:1}.detail-head h1{font-size:2.3rem;overflow-wrap:anywhere}.footer-top,.footer-bottom{flex-direction:column;align-items:start}.footer-bottom{gap:22px}.page-head{padding-top:32px}.section{padding:30px 0 42px}footer{margin-top:30px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}@media print{header,.category-nav,.filters,.compare,.toast,footer{display:none}.detail-layout{display:block}.contact-card{position:static}.table-wrap{overflow:visible}main{max-width:none}a{color:inherit}}

.badge.status-true{background:#e2f2f7;color:#123e58;border:1px solid #9bc5d6}.badge.status-false{background:#fff1cd;color:#664300;border:1px solid #d6b769}.card-top{flex-wrap:wrap;gap:8px}.badge.status-true,.badge.status-false{font-size:.875rem;font-weight:700}

.early-years{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}.badge.early-badge{background:#d9f3e9;color:#075a43;border:1px solid #78bda4;font-size:.95rem;font-weight:750;padding:7px 12px}
.school-card .photo{margin:0 0 20px}.school-card .photo img{height:210px;object-fit:contain;background:#eef3f5}.school-card .photo figcaption{font-size:.75rem;padding:10px 12px}
.badge.owner-city,.badge.owner-rural{display:inline-block;font-size:.9rem;font-weight:750;padding:7px 12px;margin:8px 0 16px;border-radius:5px}.badge.owner-city{background:#e6ebff;color:#243e86;border:1px solid #879bda}.badge.owner-rural{background:#e5f3dc;color:#315319;border:1px solid #99b885}
.operator-panel{margin:18px 0;padding:18px;border:1px solid #b8c4d4;border-left:5px solid #64748b;background:#f7f9fc;overflow-wrap:anywhere;color:#172b42}
.operator-panel h3{margin:0 0 10px;font-size:1.1rem}.operator-panel p{margin:8px 0}.operator-panel a{display:inline-block;font-weight:650;line-height:1.6;text-decoration:underline}.operator-panel small{display:block;font-size:.875rem;line-height:1.6;margin-top:8px}.operator-panel details{margin-top:14px;font-size:.875rem}.operator-panel summary{cursor:pointer;line-height:1.6}.operator-panel ul{padding-left:18px}.operator-kind{display:inline-block;font-size:.875rem;font-weight:750}.operator-name{font-weight:700}.operator-note{font-size:.9rem;line-height:1.6}.operator-city{border-left-color:#3757b7}.operator-rural{border-left-color:#54882f}.operator-county{border-left-color:#8239b5}.operator-private{border-left-color:#b76b08}.operator-state{border-left-color:#136e86}.operator-church{border-left-color:#727179}
.card-top .area-label{display:inline-block;padding:6px 9px;border-radius:4px;font-size:.875rem;line-height:1.4;font-weight:650;margin-left:auto}.card-top .area-city{background:#e6ebff;color:#243e86;border:1px solid #879bda}.card-top .area-rural{background:#e5f3dc;color:#315319;border:1px solid #99b885}.card-top .area-neutral{color:#566b7a}
.school-card .card-top{display:flex;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:5px;overflow-x:auto;max-width:100%;margin-bottom:16px;padding-bottom:3px}.school-card .card-top .badge,.school-card .card-top .area-label{flex:0 0 auto;margin:0;padding:4px 6px;font-size:.875rem;font-weight:650;line-height:1.4;white-space:nowrap}
