*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:#f6f4f0;color:#272443;font:20px/1.6 Palatino,"Palatino Linotype",Georgia,serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible{outline:3px solid #e21c21;outline-offset:5px}.draftbar{position:sticky;top:0;z-index:10;background:#272443;color:white;padding:12px 24px;display:flex;gap:24px;align-items:center;font:14px Avenir,Arial,sans-serif}.draftbar small{margin-right:auto;color:#e8ced0}.draftbar a{padding:8px 12px}.draftbar a.active{background:#f0dddd;color:#272443}.side{position:fixed;width:225px;padding:28px 16px}.side a{display:block;border:2px solid #272443;text-align:center;padding:18px 5px;margin-bottom:12px;font-weight:bold;font-size:20px}.side a:first-child{background:#e21c21;color:white;border-color:#e21c21}.side p{text-align:center;font-size:15px;margin-top:40px;color:#8b3a3a}main{margin-left:225px;padding:0 5%;max-width:1800px}.hero{text-align:center;padding-top:60px}.welcome{font:800 clamp(44px,6vw,92px)/1.1 Avenir,Arial,sans-serif;color:#e21c21;text-transform:uppercase;margin:0 0 24px}h1{font:700 clamp(18px,2vw,29px)/1.4 Avenir,Arial,sans-serif;letter-spacing:3px;text-transform:uppercase;margin:0 auto;max-width:1100px}.rule{width:64px;height:4px;background:#e21c21;margin:28px auto}.hero p{color:#6a6679;font-size:22px}.world{border:0;width:100%;height:clamp(260px,37vw,550px);display:block}.shortcuts{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid #cecad0;margin-bottom:70px}.shortcuts a{padding:20px;border-right:1px solid #cecad0}.shortcuts a:last-child{border:0}.shortcuts span{float:right}.eyebrow{font:600 13px Avenir,Arial,sans-serif;letter-spacing:2.5px;text-transform:uppercase;color:#8b3a3a;margin:0 0 24px}.eyebrow.row{display:flex;justify-content:space-between}h2{font-size:clamp(34px,3.8vw,62px);line-height:1.12;font-weight:normal;margin:0 0 28px;letter-spacing:-1.6px}h3{font-size:36px;font-weight:normal;line-height:1.15;margin:12px 0 20px}p{margin:0 0 24px}.lead{max-width:650px;color:#696575}.section{padding:0 0 85px}.triptych{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:18px;margin-top:38px}.triptych figure{margin:0}.triptych img{width:100%;height:360px;object-fit:cover}.triptych figure:nth-child(2){padding-top:55px}.triptych figure:nth-child(3){padding-top:110px}.triptych figcaption{padding-top:15px;font-size:25px}.triptych small{display:block;font:12px Avenir,Arial,sans-serif;letter-spacing:2px;color:#8b3a3a}.intro{border-top:1px solid #cecad0;padding-top:60px;display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}.intro img{width:100%;display:block}.video{position:relative;display:block}.video span{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#272443);padding:70px 25px 22px;color:white}.textlink{color:#8b3a3a;border-bottom:1px solid;padding-bottom:5px}.programs{display:grid;grid-template-columns:1fr 1fr;border:1px solid #cecad0}.programs article{padding:40px}.programs article+article{background:#f0dddd;border-left:1px solid #cecad0}.button{display:inline-block;background:#272443;color:white;padding:13px 23px;font:15px Avenir,Arial,sans-serif}.closing{padding:60px 0;text-align:center;border-top:1px solid #cecad0}.closing p{color:#8b3a3a}footer{font-size:14px;text-align:center;padding:25px;border-top:1px solid #cecad0;color:#6a6679}.tabs{display:flex;gap:0;margin:35px 0 0}.tabs button{flex:1;padding:20px 12px;background:transparent;border:1px solid #cecad0;color:#272443}.tabs button[aria-selected=true]{background:#272443;color:#fff}.interest{display:grid;grid-template-columns:1.2fr 1fr;background:#f0dddd}.interest img{width:100%;height:500px;object-fit:cover}.interest .copy{padding:45px;align-self:center}.interest[hidden]{display:none}.quote{font-size:33px;line-height:1.3;text-align:center;margin:65px auto;max-width:730px;color:#8b3a3a}.journey{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;margin:50px 0 75px}.journey img{width:100%;height:430px;object-fit:cover}.journey.reverse{grid-template-columns:1fr 1.1fr}.journey.reverse img{order:2}.number{display:block;font:14px Avenir,Arial,sans-serif;color:#8b3a3a;letter-spacing:3px;margin-bottom:20px}@media(max-width:900px){.side{display:none}main{margin:0;padding:0 6%}.draftbar{gap:4px;padding:8px;flex-wrap:wrap}.draftbar small{display:none}.draftbar a{font-size:12px;padding:9px}.hero{padding-top:40px}.triptych img{height:240px}.intro,.journey,.journey.reverse{gap:25px}.interest .copy{padding:25px}}@media(max-width:600px){body{font-size:18px}.hero p{font-size:18px}.hero h1{letter-spacing:1px}.shortcuts{margin-bottom:45px}.shortcuts a{font-size:14px;padding:14px 7px}.triptych{grid-template-columns:1fr;gap:30px}.triptych figure:nth-child(n){padding-top:0}.triptych img{height:330px}.intro,.programs,.interest,.journey,.journey.reverse{grid-template-columns:1fr}.programs article{padding:27px}.programs article+article{border-left:0;border-top:1px solid #cecad0}.interest img{height:300px}.tabs button{font-size:14px;padding:15px 8px}.journey.reverse img{order:0}.journey{gap:20px;margin-bottom:55px}.journey img{height:320px}.section{padding-bottom:55px}.eyebrow.row span:last-child{display:none}.quote{font-size:28px}}
/* September 5 composition and type, inside the existing opening */
h2{font-weight:700;font-size:clamp(30px,3vw,44px);letter-spacing:-.8px;color:#161616;line-height:1.2}.section-label{display:flex;justify-content:space-between;gap:20px;font:600 12px/1.6 Avenir,Arial,sans-serif;letter-spacing:2px;color:#8b3a3a;margin-bottom:25px}.intro-section{padding-bottom:65px}.intro-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:38px;align-items:center}.intro-words p{font-size:20px}.video-cover{position:relative;overflow:hidden;aspect-ratio:1.5}.video-cover>img{width:100%;height:100%;object-fit:cover}.watch{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,#272443e8);padding:65px 24px 24px;color:white;display:flex;gap:17px;align-items:center;font-size:24px;line-height:1.25}.watch small{display:block;font-size:16px;opacity:.8}.play{display:grid;place-items:center;border-radius:50%;background:#e21c21;width:58px;height:58px;flex-shrink:0;font-size:24px}.underlined{color:#8b3a3a;text-decoration:underline;text-underline-offset:7px}.program-section{padding:0 0 65px}.program-pair{display:grid;grid-template-columns:1fr 1fr;border:1px solid #cecad0}.program-pair article{padding:35px}.program-pair article+article{background:#f0dddd75;border-left:1px solid #cecad0}.mini{font:600 13px/1.6 Avenir,Arial,sans-serif;letter-spacing:2px;color:#8b3a3a}.program-pair h3{font-size:44px;font-weight:bold}.button{background:#e21c21;border:1px solid #e21c21;font:17px Palatino,Georgia,serif}.button.light{background:transparent;color:#272443;border-color:#272443}.faith-section{background:#f0dddd75;padding:45px;text-align:center;margin:0 0 65px}.faith-section>p{max-width:850px;margin:0 auto 24px}.faith-section a{color:#8b3a3a;text-decoration:underline}.parent-desk{padding-bottom:65px}.desk-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:50px}.desk-links a{display:flex;justify-content:space-between;border-bottom:1px solid #cecad0;padding:17px 0;font-size:22px}.desk-links small{display:block;font-size:16px;color:#6a6679}.desk-links b{font-weight:normal}.interest img{height:430px}.interest .copy{padding:32px}.interest h3{font-size:35px;font-weight:bold}.interest p{font-size:19px}.spark-compact{border-top:1px solid #cecad0;padding-top:38px}.spark-compact h2{font-size:32px}.spark-compact .interest img{height:340px}.spark-compact .section{padding-bottom:45px}.shortcuts{margin-bottom:50px}.section{padding-bottom:65px}.variant-note{font:13px Avenir,Arial,sans-serif;color:#8b3a3a;margin-bottom:24px;padding-bottom:15px;border-bottom:1px solid #cecad0}.side{top:60px}.world{height:clamp(260px,37vw,550px)}@media(max-width:1000px){.intro-grid{grid-template-columns:1fr}.intro-words{max-width:760px}.watch{font-size:21px}.desk-grid{gap:25px}}@media(max-width:600px){.program-pair,.desk-grid{grid-template-columns:1fr}.program-pair article+article{border-left:0;border-top:1px solid #cecad0}.program-pair article{padding:25px}.faith-section{padding:30px 22px}.section-label span+span{display:none}.intro-words p{font-size:18px}.watch{padding:40px 14px 16px;font-size:18px}.play{width:45px;height:45px}.interest img,.spark-compact .interest img{height:280px}.interest .copy{padding:25px}.interest p{font-size:18px}.shortcuts{margin-bottom:35px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.sitebar{height:60px;position:sticky;top:0;z-index:12;background:#f6f4f0f5;border-bottom:1px solid #cecad0;display:flex;align-items:center;justify-content:space-between;padding:0 30px;font:15px Avenir,Arial,sans-serif}.sitebar>a{font-weight:700}.sitebar nav{display:flex;gap:26px;align-items:center}.sitebar nav>a:last-of-type{color:#8b3a3a}.sitebar button{display:none}.side{top:60px}.skip{position:fixed;left:-9999px;top:8px;z-index:30;background:white;padding:12px}.skip:focus{left:8px}.tuition-explorer{display:grid;grid-template-columns:1fr 1fr;border:1px solid #cecad0}.tuition-controls,.tuition-result{padding:35px}.tuition-result{background:#f0dddd75;display:flex;flex-direction:column;justify-content:center}.tuition-controls label,.tuition-controls legend{display:block;font-size:18px;margin-bottom:12px}.tuition-controls select{width:100%;padding:13px;background:#f6f4f0;border:1px solid #777181;color:#272443;font:18px Palatino,Georgia,serif}.tuition-controls fieldset{border:0;padding:0;margin:25px 0}#day-buttons{display:flex;flex-wrap:wrap;gap:10px}#day-buttons button{padding:10px 19px;background:transparent;color:#272443;border:1px solid #777181;min-height:44px}#day-buttons button[aria-pressed=true]{background:#272443;color:white}.price{font:600 clamp(44px,5vw,70px)/1.15 Avenir,Arial,sans-serif;color:#8b3a3a;margin-bottom:8px}.fine{font-size:15px;color:#655e70;line-height:1.6;margin-top:18px}#week-preview{padding-top:20px;border-top:1px solid #cecad0}#plan-label{margin-bottom:10px}.video-cover iframe{border:0;width:100%;height:100%}.side{max-height:calc(100dvh - 60px);overflow:auto}.closing .fine{margin-top:24px}.sitebar a,.desk-links a{min-height:44px;display:flex;align-items:center}.desk-links a{justify-content:space-between}.sitebar nav a{white-space:nowrap}footer p{margin:14px 0}.tabs button{min-height:48px}.interest img{object-position:center}.tuition-section{padding-top:15px}@media(max-width:900px){.sitebar{padding:0 18px}.sitebar nav{gap:16px}.sitebar button{display:block;border:0;background:transparent;color:#272443;padding:10px}.menu-open .side{display:block;position:fixed;inset:60px 0 0;width:100%;background:#f6f4f0;z-index:11;padding:20px}.menu-open .side a{padding:12px}.menu-open .side p{display:none}}@media(max-width:600px){.tuition-explorer{grid-template-columns:1fr}.tuition-controls,.tuition-result{padding:25px}.sitebar nav>a:first-child,.sitebar nav>a:nth-child(2){display:none}.sitebar nav{gap:12px}.hero p br{display:none}.fine{font-size:14px}.side{max-height:calc(100dvh - 60px)}.world{height:300px}.shortcuts{grid-template-columns:1fr}.shortcuts a{display:flex;justify-content:space-between;border-right:0;border-bottom:1px solid #cecad0;font-size:17px;padding:13px 0}.shortcuts a:last-child{border-bottom:0}.interest .copy{padding:25px}.intro-words p{font-size:18px}}

/* Full-height sidebar, with the September competition header layout. */
.side{top:0;bottom:0;max-height:100dvh;z-index:15;background:#f6f4f0;padding-top:18px}.sitebar{margin-left:225px;padding:0 28px;gap:12px}.sitebar .mobile-brand{display:none}.sitebar nav{flex-shrink:0;gap:20px}.sitebar button#search-open{display:block;background:transparent;border:0;color:#272443;padding:10px 0;font:15px Avenir,Arial,sans-serif}.sitebar .enroll-top{background:#bd382b;color:#fff!important;padding:7px 20px;min-height:42px}.sitebar kbd{font:11px Avenir,Arial,sans-serif;border:1px solid #cecad0;padding:3px 5px;margin-left:5px}.ticker{overflow:hidden;flex:1;min-width:0;color:#bd382b;font:18px Palatino,Georgia,serif;mask-image:linear-gradient(to right,transparent,#000 18px,#000 calc(100% - 18px),transparent)}.ticker-track{display:flex;width:max-content;animation:ticker-run 30s linear infinite}.ticker-track span{white-space:nowrap;padding-right:65px}.ticker:hover .ticker-track,.ticker.paused .ticker-track{animation-play-state:paused}.sitebar button.ticker-toggle{display:block;flex-shrink:0;border:0;background:transparent;color:#8b3a3a;min-width:32px;min-height:40px;font-size:14px}.world-frame{height:clamp(260px,37vw,550px);overflow:hidden}.world-frame .world{height:calc(100% + 30px);width:100%;display:block}#search-dialog{background:#f6f4f0;color:#272443;border:1px solid #272443;width:min(640px,calc(100% - 32px));max-height:80dvh;padding:28px}#search-dialog::backdrop{background:#27244399}.search-heading{display:flex;justify-content:space-between;gap:20px}.search-heading h2{font-size:30px}.search-heading button{border:0;background:none;color:#272443;font-size:30px;align-self:start;min-width:44px}#search-dialog label{display:block;font-size:16px;margin-bottom:8px}#search-input{width:100%;padding:14px;font:18px Palatino,Georgia,serif;border:1px solid #777181;background:white;color:#272443}#search-results a{display:block;padding:16px 0;border-bottom:1px solid #cecad0;text-decoration:none}#search-results strong{font-size:20px}#search-results p{font-size:16px;margin:4px 0 0}#search-results a:hover{color:#8b3a3a}@keyframes ticker-run{to{transform:translateX(-50%)}}@media(max-width:900px){.sitebar{margin-left:0}.sitebar .mobile-brand{display:flex}.ticker,.sitebar button.ticker-toggle{display:none}.side{top:60px;max-height:calc(100dvh - 60px)}.sitebar nav{gap:14px}}@media(max-width:600px){.sitebar{padding:0 14px}.sitebar nav{gap:12px}.sitebar .enroll-top{display:flex!important;padding:6px 9px;font-size:13px}.sitebar kbd{display:none}.sitebar button#search-open{font-size:13px}.world-frame{height:300px}.world-frame .world{height:330px}}@media(prefers-reduced-motion:reduce){.ticker-track{animation:none}.sitebar button.ticker-toggle{display:none}}
/* Keep a full banner-width of clear space between repeats. */
.ticker{container-type:inline-size}.ticker-track span{padding-right:calc(100cqw + 32px)}.ticker-track{animation-duration:48s}

/* Wider desktop navigation keeps the program name on one line. */
@media(min-width:901px){.side{width:280px}.side a{font-size:19px}.sitebar{margin-left:280px}main{margin-left:280px}}

/* Type hierarchy: body 20/18px; supporting text 17/16px;
   navigation and labels at least 16px; section eyebrows 14px. */
:root{--text-body:20px;--text-support:17px;--text-control:16px;--text-label:14px}
body{font-size:var(--text-body)}
.fine,.watch small,.desk-links small,footer{font-size:var(--text-support);line-height:1.6}
.eyebrow,.mini,.section-label{font-size:var(--text-label);line-height:1.6;letter-spacing:1.5px}
.per-student{font-size:22px;font-weight:600;margin:16px 0 0;line-height:1.4}
.sitebar,.sitebar button#search-open{font-size:var(--text-control)}
.sitebar .ticker-toggle{font-size:16px}
.side p{font-size:18px;line-height:1.5}
.interest p,.intro-words p{font-size:var(--text-body)}
#search-dialog label,#search-results p{font-size:var(--text-support)}
@media(max-width:600px){
 :root{--text-body:18px;--text-support:16px}
 .fine,.watch small,.desk-links small,footer{font-size:var(--text-support)}
 .sitebar button#search-open,.sitebar .enroll-top,.sitebar #menu{font-size:16px}
 .sitebar nav{gap:9px}.sitebar{padding-inline:12px}
 .tabs button{font-size:16px;line-height:1.4;padding:15px 8px}
 .interest p,.intro-words p{font-size:var(--text-body)}
 .per-student{font-size:21px}
}
/* Keep the smallest phone widths readable without horizontal scrolling. */
.program-pair article,.interest>*{min-width:0}.program-pair .button{max-width:100%;white-space:normal}
@media(max-width:360px){.tabs{flex-direction:column}.tabs button{text-align:left;padding:12px 16px}.sitebar nav{gap:5px}.sitebar{padding-inline:10px}.sitebar .mobile-brand{font-size:14px}.program-pair article{padding:20px}.program-pair h3{font-size:36px}}
