:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#14213d;--bg:#fff;--surface:#fff;--surface-strong:#fff;--ink:#123252;--muted:#476784;--accent:#f4c430;--accent-dark:#b77900;--teal:#3f7fb1;--border:#1232521f;--shadow:0 24px 60px #2a5c8c24;background:#fff;font-family:Manrope,system-ui,sans-serif;font-weight:500;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.site-shell{min-height:100vh;padding:20px}.topbar,.hero,.stats-band,.section,.site-footer{max-width:1180px;margin:0 auto}.topbar{justify-content:space-between;align-items:center;gap:24px;padding:10px 0 24px;display:flex}.brand{flex:none;align-items:center;gap:0;font-weight:800;line-height:1.05;display:inline-flex}.brand-logo{object-fit:contain;flex:none;width:260px;height:auto;max-height:180px}.nav{color:var(--muted);flex:auto;justify-content:center;align-items:center;gap:18px;min-width:0;display:flex}.nav a{white-space:nowrap;flex:none}.nav a:hover,.nav-cta:hover,.button:hover{opacity:.9}.text-link{color:var(--teal);margin-top:10px;font-weight:700;display:inline-flex}.nav a[aria-current=page]{color:var(--ink);font-weight:800}.nav-cta,.button{border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;min-height:46px;padding:0 18px;font-weight:700;display:inline-flex}.nav-cta,.button.primary{color:#fff;background:linear-gradient(135deg,#1d5f96,#2d79b7)}.button.secondary{border-color:var(--border);background:#fff8dc}.hero{grid-template-columns:1.05fr .95fr;align-items:end;gap:32px;padding:18px 0 24px;display:grid}.hero-media img,.story-image img{object-fit:cover;width:100%;height:100%;box-shadow:var(--shadow);border-radius:8px}.hero-media{min-height:540px}.hero-copy{padding:16px 0}.tagline{color:var(--ink);margin:0 0 20px;font-size:clamp(2.1rem,4.5vw,4rem);font-weight:800;line-height:1.1}.page-hero{padding-top:36px}.schedule-hero{flex-direction:column;align-items:flex-start;gap:14px;padding-top:42px;padding-bottom:34px;display:flex}.schedule-hero h1{max-width:100%;margin-bottom:0;font-size:clamp(2.4rem,4vw,3.6rem);line-height:1}.schedule-hero-copy{gap:18px;max-width:660px;padding-bottom:0;display:grid}.schedule-hero .hero-actions{margin:0}.eyebrow{color:var(--accent-dark);text-transform:uppercase;margin:0 0 10px;font-size:.92rem;font-weight:800}h1,h2,h3,p{margin-top:0}h1{max-width:11ch;margin-bottom:18px;font-size:clamp(3rem,6vw,5rem);line-height:.95}h2{max-width:14ch;margin-bottom:16px;font-size:clamp(2rem,3.8vw,3.1rem);line-height:1}h3{margin-bottom:10px;font-size:1.25rem;line-height:1.1}.hero-text,.section-copy p,.section-heading p,.visit-card p,.visit-note p,.program-card p,.update-card p,.site-footer p{color:var(--muted);font-size:1.02rem}.narrow-copy{max-width:42rem}.hero-actions{flex-wrap:wrap;gap:12px;margin:24px 0;display:flex}.highlight-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.highlight-list li{color:var(--muted);padding-left:18px;position:relative}.highlight-list li:before{content:"";background:var(--teal);border-radius:999px;width:8px;height:8px;position:absolute;top:.6em;left:0}.stats-band{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:12px;display:grid}.stats-band article,.program-card,.update-card,.visit-card,.visit-note,.admissions-panel{background:var(--surface);border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--shadow);border-radius:8px}.stats-band article{padding:24px}.stats-band strong{margin-bottom:6px;font-size:1.7rem;display:block}.stats-band span{color:var(--muted)}.section{padding:72px 0}.two-column,.story-block,.visit-section,.visual-band{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:28px;display:grid}.schedule-list{gap:16px;margin-top:30px;display:grid}.schedule-list span,.card-kicker{color:var(--accent-dark);text-transform:uppercase;font-size:.9rem;font-weight:800}.schedule-list p{margin:4px 0 0}.calendar-section{padding-top:24px}.calendar-section .section-heading{align-items:start}.calendar-section .section-heading h2{max-width:16ch}.calendar-dashboard{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.calendar-stat{border:1px solid var(--border);background:#fff;border-left:6px solid #2d79b7;border-radius:8px;flex-direction:column;justify-content:space-between;min-height:112px;padding:18px;display:flex;box-shadow:0 16px 40px #2a5c8c1a}.calendar-stat:nth-child(2){border-left-color:#8f5dc4}.calendar-stat:nth-child(3){border-left-color:#d25666}.calendar-stat:nth-child(4){border-left-color:#1f8a70}.calendar-stat span{color:var(--muted);text-transform:uppercase;font-size:.82rem;font-weight:800}.calendar-stat strong{color:var(--ink);font-size:1.7rem;line-height:1}.calendar-legend{flex-wrap:wrap;gap:10px;margin-bottom:26px;display:flex}.calendar-legend span,.calendar-badge{--tone:#6f7f8f;--tone-bg:#f4f7fa;--tone-text:#33475b;border:1px solid color-mix(in srgb, var(--tone) 40%, transparent);background:var(--tone-bg);min-height:32px;color:var(--tone-text);text-transform:uppercase;border-radius:999px;align-items:center;padding:0 12px;font-size:.8rem;font-weight:800;display:inline-flex}.calendar-legend span:before{content:"";background:var(--tone);border-radius:999px;width:8px;height:8px;margin-right:8px}.tone-teaching{--tone:#2d79b7;--tone-bg:#eaf5fc;--tone-text:#174e7a}.tone-event{--tone:#d49b17;--tone-bg:#fff6d9;--tone-text:#7a5200}.tone-assessment{--tone:#8f5dc4;--tone-bg:#f3edf9;--tone-text:#5d3a87}.tone-rest{--tone:#d25666;--tone-bg:#fff0f2;--tone-text:#8a2d39}.tone-admin{--tone:#1f8a70;--tone-bg:#e8f6f1;--tone-text:#176451}.tone-general,.tone-muted{--tone:#7d8ea3;--tone-bg:#f4f7fa;--tone-text:#40566e}.calendar-months{gap:26px;display:grid}.calendar-month{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 22px 54px #2a5c8c1f}.calendar-month-header{color:#fff;background:linear-gradient(135deg,#123252,#1f6f8f);justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.calendar-month-header h3{margin:0;font-size:1.45rem}.calendar-month-header span{color:#ffffffd1;flex:none;font-weight:800}.calendar-rows{display:grid}.calendar-row{border-top:1px solid var(--border);background:linear-gradient(90deg, color-mix(in srgb, var(--tone) 9%, transparent), transparent 34%), #fff;grid-template-columns:minmax(220px,.72fr) minmax(0,1.28fr);gap:18px;padding:18px;display:grid}.calendar-row:first-child{border-top:0}.calendar-row:hover{background:linear-gradient(90deg, color-mix(in srgb, var(--tone) 13%, transparent), transparent 38%), #fbfdff}.calendar-dates{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.calendar-date-tile{background:#fff;border:1px solid #1232521f;border-radius:8px;flex-direction:column;justify-content:space-between;min-height:124px;padding:14px;display:flex}.calendar-date-tile.is-empty{color:#7d8ea3;background:#f7fafc}.calendar-date-label,.calendar-note span{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:800}.calendar-date-main{align-items:center;gap:10px;margin-top:12px;display:flex}.calendar-date-main strong{color:#1d5f96;font-size:2.2rem;line-height:1}.calendar-date-main span{color:var(--ink);font-weight:900;line-height:1.05;display:grid}.calendar-date-main small,.calendar-weekday,.calendar-date-empty{color:var(--muted);font-size:.88rem;font-weight:700}.calendar-row-main{gap:12px;min-width:0;display:grid}.calendar-row-top{justify-content:flex-end;display:flex}.calendar-notes{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.calendar-notes.single-note{grid-template-columns:1fr}.calendar-note{border:1px solid color-mix(in srgb, var(--tone) 28%, transparent);border-left:5px solid var(--tone);background:var(--tone-bg);min-height:94px;color:var(--tone-text);border-radius:8px;padding:14px}.calendar-note.is-empty{color:#7d8ea3;background:#f7fafc;border-left-color:#c9d3df}.calendar-note p{color:inherit;overflow-wrap:anywhere;margin:7px 0 0;font-size:.97rem}.calendar-note.label-free p:first-child{margin-top:0;font-weight:800}.program-grid,.updates-grid,.pillar-list,.curriculum-grid{gap:16px;display:grid}.program-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.program-card,.update-card,.admissions-panel,.visit-card,.visit-note,.curriculum-card{padding:24px}.story-image{min-height:440px}.visual-band{align-items:stretch}.visual-band-copy{flex-direction:column;justify-content:center;display:flex}.visual-band-image img{object-fit:cover;width:100%;height:100%;min-height:360px;box-shadow:var(--shadow);border-radius:8px}.pillar-list article{border-top:1px solid var(--border);padding:18px 0}.pillar-list article:last-child{border-bottom:1px solid var(--border)}.admissions{grid-template-columns:.95fr 1.05fr;align-items:start;gap:28px;display:grid}.admissions-panel{gap:22px;display:grid}.admissions-panel ul{color:var(--muted);margin:12px 0 0;padding-left:18px}.number-list{color:var(--muted);gap:10px;margin:12px 0 0;padding-left:20px;display:grid}.admissions-actions,.resource-links{flex-wrap:wrap;gap:12px;display:flex}.section-stack{gap:28px;display:grid}.detail-panel{border-top:1px solid var(--border);padding-top:12px}.detail-panel-header{margin-bottom:20px}.section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px;display:flex}.updates-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.curriculum-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.curriculum-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:8px}.curriculum-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.compact-list{color:var(--muted);gap:8px;margin:10px 0 0;padding-left:18px;display:grid}.top-gap{margin-top:16px}.visit-card{background:#fff}.visit-details{gap:14px;display:grid}.visit-details p{gap:4px;margin:0;display:grid}.visit-details strong{font-size:.92rem}.single-column{grid-template-columns:1fr}.site-footer{border-top:1px solid var(--border);justify-content:space-between;gap:24px;padding:12px 0 30px;display:flex}.site-footer strong{margin-bottom:6px;display:block}.footer-links{flex-wrap:wrap;align-items:start;gap:18px;display:flex}@media (width<=980px){.hero,.two-column,.story-block,.admissions,.visit-section,.visual-band,.schedule-hero,.section-heading,.site-footer,.program-grid,.updates-grid,.stats-band,.calendar-dashboard,.calendar-row,.calendar-notes,.curriculum-grid,.curriculum-columns{grid-template-columns:1fr}.topbar{flex-wrap:wrap}.nav{flex-wrap:wrap;order:3;justify-content:flex-start;gap:12px 16px;width:100%}.hero-media,.story-image{min-height:320px}.site-footer{display:grid}.section-heading{align-items:start;display:grid}.schedule-hero{padding-bottom:34px}.schedule-hero-copy{padding-bottom:0}.calendar-row-top{justify-content:flex-start}}@media (width<=640px){.site-shell{padding:14px}.brand-logo{width:190px;max-height:140px}h1{overflow-wrap:anywhere;font-size:clamp(2.25rem,11vw,3rem)}h2{max-width:100%}.schedule-hero h1{max-width:100%;font-size:clamp(2rem,9vw,2.55rem)}.hero-actions,.admissions-actions{flex-direction:column}.button,.nav-cta{width:100%}.calendar-dashboard{gap:10px}.calendar-stat{min-height:92px}.calendar-month-header,.calendar-dates{grid-template-columns:1fr;display:grid}.calendar-date-tile{min-height:104px}.calendar-note{min-height:0}}
