@font-face{font-family:Outfit;src:url('assets/outfit.ttf')}@font-face{font-family:FuturaDisplay;src:url('assets/heading.ttf')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:#06234b;color:#f9ecd1;font-family:Outfit,Arial,sans-serif;font-size:18px;line-height:1.5}a{color:inherit}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #fff;outline-offset:5px}header{max-width:1280px;margin:auto;padding:22px 5%;display:flex;align-items:center;justify-content:space-between}header nav{display:flex;gap:30px;align-items:center}header a{text-decoration:none}.logo{width:100px;display:block}.nav-apply{border-bottom:2px solid #00d78a;padding:8px 0}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;align-items:center}.hero-art{position:relative;aspect-ratio:595/500;overflow:hidden}.hero-art img{position:absolute;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s}.hero-art img.active{opacity:1}.hero-copy{padding:40px 9% 50px 7%}.eyebrow{font-size:18px;letter-spacing:2.5px;color:#fff7e5;margin-bottom:22px}h1,h2{font-family:FuturaDisplay,'Arial Narrow',Impact,sans-serif;font-weight:900;line-height:.98;margin:0 0 28px;font-size:clamp(48px,5.5vw,82px);letter-spacing:-.5px}h1{color:#00d78a}h2{font-size:clamp(48px,5vw,72px)}p{margin:16px 0}.hero-copy>p:not(.eyebrow):not(.stars){color:#c2cbd6;max-width:570px;font-size:18px}.stars{letter-spacing:5px;color:white;font-size:18px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:45px;background:#ff0807;color:white;text-decoration:none;border:2px solid #ff0807;border-radius:5px;padding:12px 28px;font-size:22px;font-weight:bold;line-height:1.3}.button:hover{background:#d90000;border-color:#d90000}.outline{background:transparent}.section{max-width:1080px;margin:auto;padding:80px 28px}.intro,.access{text-align:center}.green{color:#00d78a}.colleges{width:min(650px,100%);display:block;margin:40px auto 55px}.testimonial{text-align:center;max-width:750px;position:relative;padding:35px 25px}.testimonial blockquote{margin:0;min-height:112px;font-size:23px;line-height:1.4;color:#e3ad80}.testimonial cite{font-style:normal;color:#f9ecd1;display:block;font-size:18px;margin-top:14px}.portrait{height:62px;width:62px;border-radius:50%;object-fit:cover;margin:8px auto;display:block}.controls{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:20px;font-size:18px}.controls button{color:white;background:#06234bd9;border:1px solid #8593a5;border-radius:50%;width:34px;height:34px}.hero-art .controls{position:absolute;bottom:18px;left:0;right:0}.ribbon{width:100%;max-height:160px;object-fit:fill;display:block}.access{padding:70px 28px}.membership{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;align-items:center}.membership ul{list-style:none;padding:0}.membership li{padding:13px 0 13px 28px;border-bottom:1px solid #ffffff20;position:relative}.membership li:before{content:'✓';color:#00d78a;position:absolute;left:0}.price{color:#00d78a;font-size:40px}.price span{font-size:18px}.apply{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-bottom:90px}.apply>div>p:last-child{color:#c2cbd6}form{display:grid;gap:16px}label{font-size:18px;display:block}input,select{width:100%;display:block;border:2px solid transparent;background:#00d78a;color:#06234b;padding:13px 16px;border-radius:5px;margin-top:6px;min-height:50px}input::placeholder{color:#173f48;opacity:1}input:focus,select:focus{outline:2px solid #f9ecd1;outline-offset:3px}.hint{font-size:18px;color:#b7c5d6}.school-field{position:relative}#school-results{position:absolute;z-index:10;background:#fffdf5;color:#06234b;top:78px;left:0;right:0;padding:0;margin:0;list-style:none;max-height:280px;overflow:auto;box-shadow:0 10px 30px #0006;border-radius:5px}#school-results li{padding:12px 15px;border-bottom:1px solid #ddd;cursor:pointer;font-size:18px}#school-results li[aria-selected=true],#school-results li:hover{background:#b8f8df}#school-results small{display:block;color:#4b6574}.consent{display:flex;gap:12px;align-items:flex-start;color:#c2cbd6;font-size:18px}.consent input{width:18px;min-height:18px;flex-shrink:0;accent-color:#00d78a;margin:2px 0}.honeypot{display:none}.submit{width:100%}.submit:disabled{opacity:.6;cursor:wait}#form-status{font-size:18px;margin:0}footer{text-align:center;border-top:1px solid #ffffff20;padding:40px 24px;font-size:18px}footer .logo{margin:auto}footer .hint{margin-top:28px}.thanks{text-align:center;padding:70px 24px;max-width:800px;margin:auto}.thanks h1{font-family:Outfit,sans-serif;font-size:48px}.thanks-banner{display:block;width:min(620px,100%);margin:auto}.thanks .button{margin-top:20px}@media(max-width:700px){header{padding:16px 22px}header nav{gap:18px;font-size:18px}.logo{width:82px}.hero{display:flex;flex-direction:column}.hero-art{width:100%}.hero-copy{text-align:center;padding:24px 28px 40px}h1,h2{font-size:53px}.hero-copy .eyebrow{font-size:18px}.section{padding:55px 25px}.membership,.apply{grid-template-columns:1fr;gap:24px}.membership{text-align:center}.membership ul{text-align:left}.testimonial blockquote{font-size:20px;min-height:145px}.colleges{margin:30px auto}.ribbon{min-height:70px}.apply>div{text-align:center}.apply{padding-bottom:65px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-art img{transition:none}}
body{background:#03204b}.title-art{display:block;width:100%;max-width:540px;height:auto;margin:auto}h1:has(.title-art),h2:has(.title-art){line-height:0}.hero-copy h1{margin-bottom:24px}.intro h2,.access h2{max-width:520px;margin:0 auto 28px}.membership h2,.apply h2{max-width:470px}@media(max-width:900px){.hero{display:flex;flex-direction:column}.hero-art{width:min(680px,100%)}.hero-copy{text-align:center;padding:25px 30px 40px;max-width:720px}.hero-copy>p{margin-left:auto;margin-right:auto}}

/* One centred column at every viewport width. */
.hero{display:flex;flex-direction:column;max-width:1080px}
.hero-art{width:min(780px,100%)}
.hero-copy{width:100%;max-width:720px;text-align:center;padding:32px 28px 48px}
.hero-copy>p{margin-left:auto;margin-right:auto}
.membership,.apply{display:flex;flex-direction:column;align-items:center;text-align:center;gap:28px}
.membership>div,.apply>div{width:100%;max-width:600px}
.membership h2,.apply h2{margin-left:auto;margin-right:auto}
.membership ul{width:100%;max-width:640px;text-align:center;margin:0 auto}
.membership li{padding:13px 12px}
.membership li:before{position:static;margin-right:8px}
.apply form{width:100%;max-width:520px;text-align:left;min-width:0}
.apply>div>p:last-child{max-width:510px;margin-left:auto;margin-right:auto}
.testimonial{margin-left:auto;margin-right:auto}
input,select{min-width:0;max-width:100%}
@media(max-width:360px){header{padding-left:16px;padding-right:16px}header nav{gap:12px;font-size:18px}.section{padding-left:18px;padding-right:18px}.hero-copy{padding-left:20px;padding-right:20px}}

#school-results small{font-size:18px}

/* Pricing keeps the same centred layout, palette and minimum text size. */
header nav [aria-current="page"]{color:#00d78a}
.pricing-intro{text-align:center;max-width:850px;padding-top:65px}
.pricing-intro h1{font-family:Outfit,Arial,sans-serif;font-size:clamp(34px,5vw,58px);line-height:1.15;letter-spacing:-1px;color:#f9ecd1}
.pricing-intro h1 span{color:#00d78a}.pricing-intro p:not(.eyebrow){max-width:720px;margin:24px auto;color:#c2cbd6}.pricing-intro .button{margin-top:16px}
.pricing-section{text-align:center;max-width:1200px}.pricing-section h2{max-width:470px;margin:0 auto 24px}.currency-note{color:#c2cbd6}
.pricing-table{border-collapse:separate;border-spacing:0;width:100%;margin:36px auto;text-align:left;border:1px solid #ffffff30;border-radius:12px;overflow:hidden;table-layout:fixed}
.pricing-table caption{font-size:24px;color:#f9ecd1;margin-bottom:24px}
.pricing-table th,.pricing-table td{padding:26px 22px;vertical-align:top;border-bottom:1px solid #ffffff25;font-size:18px;overflow-wrap:anywhere}
.pricing-table thead th{background:#00d78a;color:#03204b;font-weight:600}.pricing-table thead th:first-child{width:29%}.pricing-table thead th:nth-child(2){width:27%}.pricing-table tbody th{font-weight:400}.pricing-table tbody td:last-child{color:#c2cbd6}.step-label{display:block;color:#00d78a;margin-bottom:10px}.pricing-table strong{display:block}.pricing-table .cost{font-size:26px;line-height:1.2;color:#00d78a}.cost-unit{display:block;margin-top:8px}.pricing-table .comparison{background:#f9ecd1}.pricing-table .comparison th,.pricing-table .comparison td:last-child,.pricing-table .comparison .cost,.pricing-table .comparison .step-label,.comparison .cost-unit{color:#03204b}.pricing-table tr:last-child th,.pricing-table tr:last-child td{border-bottom:0}.pricing-notes{max-width:850px;margin:30px auto;color:#c2cbd6}.pricing-notes strong{color:#f9ecd1}
@media(max-width:700px){header{flex-wrap:wrap;justify-content:center;gap:16px}header nav{flex-wrap:wrap;justify-content:center;gap:18px}.pricing-intro{padding-top:40px}.pricing-table{display:block;border:0;overflow:visible}.pricing-table caption{display:block}.pricing-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.pricing-table tbody{display:block}.pricing-table tr{display:block;border:1px solid #ffffff30;border-radius:10px;margin-bottom:22px;overflow:hidden}.pricing-table th,.pricing-table td{display:block;width:100%;padding:18px 22px;border:0}.pricing-table tbody th{padding-bottom:8px}.pricing-table tbody td:last-child{padding-top:8px;padding-bottom:24px}.pricing-table tbody th strong{font-size:23px}.pricing-table .cost{font-size:28px}}

.pricing-intro .confidence-title{width:100%;max-width:720px;height:auto}

.testimonial blockquote{display:flex;flex-direction:column;justify-content:flex-end;min-height:0;margin:0}
.testimonial .quote-name{display:block;font-style:normal;font-size:18px;color:#f9ecd1;margin:10px 0 0}
.testimonial .stars{margin:3px 0;line-height:1.2}
.testimonial .portrait{display:block;width:62px;height:62px;min-width:62px;min-height:62px;max-width:62px;max-height:62px;object-fit:cover;border-radius:50%;margin:6px auto}
.testimonial .controls{margin-top:6px;gap:12px}
.quote-disclosure{font-size:18px;line-height:1.4;min-height:2.8em;margin:0 0 8px;color:#c2cbd6}

.quote-disclosure{min-height:4.2em}

/* Shared heading artwork scale: identical source font, canvas width and line spacing. */
.hero-copy h1,.intro h2,.access h2,.membership h2,.apply h2,.pricing-section h2,.pricing-intro h1{width:100%;max-width:540px;margin-left:auto;margin-right:auto}
.title-art,.pricing-intro .confidence-title{display:block;width:100%;max-width:540px;height:auto;margin:auto}
.quote-disclosure{display:none}
