:root{--ink: #1c1914;--navy: #13293d;--navy-2: #1c3c57;--paper: #f3efe6;--paper-2: #fbf8f2;--white: #fffdf8;--gold: #9a7340;--gold-2: #c6a36a;--line: rgba(19, 41, 61, .14);--muted: #5c6570;--shadow: 0 18px 50px rgba(19, 41, 61, .08);--serif: "Newsreader", "Iowan Old Style", Palatino, serif;--sans: "Figtree", "Avenir Next", "Segoe UI", sans-serif;--wrap: 1120px;--header: 74px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:radial-gradient(900px 420px at 100% -10%,rgba(198,163,106,.18),transparent 55%),var(--paper);font-family:var(--sans);font-size:1.05rem;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:560;letter-spacing:-.03em;line-height:1.08}h1{font-size:clamp(2.2rem,6vw,4.4rem)}h2{font-size:clamp(1.7rem,3vw,2.4rem)}h3{font-size:1.35rem}h4{font-size:1rem;font-family:var(--sans);letter-spacing:0}.wrap{width:min(var(--wrap),calc(100% - 32px));margin-inline:auto;min-width:0}.narrow{display:grid;gap:16px;max-width:46rem}.narrow p+p{margin-top:0}.skip{position:absolute;left:12px;top:-48px;background:var(--navy);color:#fff;padding:8px 12px;z-index:30}.skip:focus{top:12px}:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.util{background:var(--navy);color:#efe6d6;font-size:.82rem}.util__inner,.header__inner,.footer__base{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0}.util__inner{min-height:36px;flex-wrap:wrap;padding:6px 0}.util p{margin:0;flex:1 1 12rem;min-width:0}.langs{display:flex;gap:14px;flex:none}.langs a{color:#efe6d6;text-decoration:none;opacity:.7}.langs a.is-active{opacity:1;border-bottom:1px solid var(--gold-2)}.site-header{position:sticky;top:0;z-index:20;background:#fbf8f2f0;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.site-header:after{content:"";display:block;height:2px;background:linear-gradient(90deg,transparent,var(--gold-2),transparent)}.header__inner{min-height:var(--header);position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;min-width:0}.mark{width:48px;height:48px;object-fit:cover;border-radius:8px;flex:none}.brand__text{display:flex;flex-direction:column;min-width:0}.brand__short{font-family:var(--serif);font-size:1.2rem;letter-spacing:.04em;line-height:1}.brand__long{color:var(--muted);font-size:.75rem;line-height:1.3}.nav-toggle{border:1px solid var(--line);background:transparent;min-height:44px;padding:0 14px;border-radius:999px}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper-2);border-bottom:1px solid var(--line);padding:8px 16px 16px;flex-direction:column}.nav.is-open{display:flex}.nav a{text-decoration:none;padding:12px 4px;border-bottom:1px solid var(--line)}.nav a[aria-current=page]{color:var(--gold)}.kicker{color:var(--gold);font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-bottom:10px}.lede{font-size:1.12rem;max-width:42rem;color:var(--navy)}.updated{color:var(--muted);font-size:.88rem;margin-top:12px}.hero,.page-hero{padding:28px 0 8px}.hero__grid,.split{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:center;min-width:0}.hero__grid>*,.split>*{min-width:0}.figure{min-width:0}.figure img{width:100%;max-width:100%;border-radius:18px;box-shadow:var(--shadow)}.lede,.page-hero p,h1{overflow-wrap:break-word}.actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 16px;border-radius:999px;background:var(--navy);color:var(--paper-2);text-decoration:none;border:0;cursor:pointer}.btn--ghost{background:transparent;color:var(--navy);border:1px solid var(--line)}.section{padding:28px 0}.section h2{margin-bottom:16px}.band{padding:8px 0 20px}.stats{display:grid;grid-template-columns:1fr;gap:10px}.stats p,.points article,.place-grid a,.school,.ad,.near{background:var(--white);border:1px solid var(--line);border-radius:16px}.stats p{margin:0;padding:14px 12px;display:flex;flex-direction:column;gap:4px}.stats strong{font-family:var(--serif);font-size:clamp(1.5rem,4vw,2.2rem);font-weight:560}.stats span,.place-grid small{color:var(--muted);font-size:.82rem}.points{display:grid;gap:12px}.points article{padding:18px}.points p,.steps p{color:var(--navy-2);margin-top:8px}.split .narrow{gap:14px}.finder{position:relative;margin-top:18px;max-width:36rem}.finder label{display:block;font-size:.88rem;margin-bottom:6px}.finder input{width:100%;min-height:48px;border-radius:12px;border:1px solid var(--line);background:var(--white);padding:0 14px}.finder__results{position:absolute;z-index:5;left:0;right:0;top:calc(100% + 6px);background:var(--white);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.finder__results a,.near__item{display:flex;flex-direction:column;gap:2px;padding:12px 14px;text-decoration:none;border-bottom:1px solid var(--line)}.finder__results a:last-child{border-bottom:0}.finder__empty{margin:0;padding:12px 14px;color:var(--muted)}.place-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;gap:8px}.place-grid a{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;text-decoration:none;min-height:48px;align-items:center}.schools{display:grid;gap:14px}.school{padding:16px}.school__head{display:flex;flex-direction:column;gap:4px}.school__name{font-family:var(--serif);font-size:1.5rem}.school__place{color:var(--muted)}.school a{text-underline-offset:3px}.badges,.programs ul,.related,.crumbs ol,.steps{list-style:none;padding:0;margin:12px 0 0}.badges{display:flex;flex-wrap:wrap;gap:6px}.badges li{font-size:.75rem;letter-spacing:.02em;border:1px solid var(--gold-2);color:var(--navy);border-radius:999px;padding:4px 8px}.facts{margin:14px 0 0;display:grid;gap:8px}.facts div{display:grid;grid-template-columns:7.2rem 1fr;gap:8px}.facts dt{color:var(--muted);font-size:.82rem}.facts dd{margin:0}.pre{white-space:pre-line}.rating{margin:12px 0 0;font-family:var(--sans)}.rating__value{font-size:1.4rem;color:var(--navy);font-weight:700}.rating__source,.quiet{display:block;color:var(--muted);font-size:.88rem;margin-top:4px}.about,.reviews{margin-top:16px}.about h2,.reviews h2{font-size:1.15rem}.reviews blockquote{margin:10px 0 0;padding:10px 12px;background:#fff;border-left:3px solid var(--gold)}.reviews footer{color:var(--muted);font-size:.85rem}.programs{display:grid;gap:12px;margin-top:14px}.programs section{border-top:1px solid var(--line);padding-top:10px}.programs li,.related li{margin:4px 0}.sources{margin-top:12px;color:var(--muted);font-size:.88rem}.steps{display:grid;gap:16px;counter-reset:step}.steps li{counter-increment:step}.steps h2{font-size:1.35rem}.steps h2:before{content:counter(step) "  ";color:var(--gold)}.crumbs ol{display:flex;flex-wrap:wrap;gap:6px 0;margin:0 0 14px;font-size:.85rem}.crumbs li:not(:last-child):after{content:"/";margin:0 8px;color:var(--muted)}.faqs{display:grid;gap:8px}.faqs details{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:12px 14px}.faqs summary{cursor:pointer;font-weight:600}.faqs p{margin-top:8px}.related a{text-underline-offset:3px}.near{display:grid;gap:16px;padding:16px}.near__list{display:grid;gap:8px}.near__item{border:1px solid var(--line);border-radius:12px;background:var(--paper)}.near__status{min-height:1.2em;color:var(--muted)}.ad{display:grid;padding:0;overflow:hidden;background:#fff;border:1px solid #c5d7e8;box-shadow:0 16px 40px #0d345e1a}.ad__bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#0d345e;border-bottom:4px solid #1692ce}.ad__logo-chip{display:inline-flex;padding:4px;background:#fff;border-radius:4px}.ad__logo{width:112px;height:auto}.ad__label{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#fff}.ad__body{display:grid;gap:8px 28px;padding:22px 20px 18px;background:#fff}.ad__copy{display:grid;gap:12px;align-content:start}.ad h2{color:#0d345e;font-family:var(--sans);font-weight:700;letter-spacing:-.02em;font-size:clamp(1.45rem,2.5vw,1.85rem)}.ad__copy>p{color:#16385f}.ad ul{margin:0;padding-left:18px;color:#0d345e}.ad li::marker{color:#1692ce}.ad__cta{justify-self:start;display:inline-flex;align-items:center;min-height:46px;margin-top:4px;padding:0 18px;border-radius:8px;background:#1692ce;color:#fff;font-weight:700;text-decoration:none}.ad__cta:hover{background:#0d345e}.ad__note{color:#4a5468;font-size:.88rem}.ad__mark{display:grid;place-items:center;order:-1;width:168px;height:168px;margin:4px auto 8px;border-radius:50%;background:#eaf2f7}.ad__stamp{width:148px;height:auto}.site-footer{margin-top:20px;background:var(--navy);color:#efe6d6;padding:36px 0 20px}.footer__grid{display:grid;gap:22px}.footer__brand{display:grid;justify-items:start;gap:12px}.footer__brand p,.footer__base p{margin:0;color:#d9d0c2}.site-footer h2{color:#fff;font-size:1rem;font-family:var(--sans);letter-spacing:.08em;text-transform:uppercase}.site-footer ul{list-style:none;padding:0;margin:10px 0 0}.site-footer li{margin:8px 0}.site-footer a{color:#efe6d6;text-decoration:none}.footer__base{margin-top:22px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);font-size:.85rem;align-items:flex-start;flex-direction:column}.seal{display:block}@media(min-width:720px){.stats{grid-template-columns:repeat(3,1fr)}.place-grid{grid-template-columns:1fr 1fr}.points{grid-template-columns:repeat(3,1fr)}.facts div{grid-template-columns:9rem 1fr}.footer__grid{grid-template-columns:1.4fr 1fr 1fr 1fr}.footer__base{flex-direction:row}.near{grid-template-columns:1fr 1fr;align-items:start}.ad__body{grid-template-columns:minmax(0,1fr) 176px;align-items:center}.ad__mark{order:0;margin:0}}@media(min-width:960px){.nav-toggle{display:none}.nav{display:flex;position:static;flex-direction:row;align-items:center;gap:18px;background:transparent;border:0;padding:0}.nav a{border:0;padding:0}.hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.split{grid-template-columns:minmax(0,280px) minmax(0,1fr)}.header__inner{display:flex}.place-grid{grid-template-columns:repeat(3,1fr)}.header__inner{gap:24px}}@media(max-width:720px){.util__inner{display:grid;grid-template-columns:1fr;justify-items:start}.facts div{grid-template-columns:1fr;gap:2px}}
