/* Final enrollment and mobile polish, layered over the existing design. */
[hidden]{display:none!important}
body{font-family:"Avenir Next",Avenir,"Segoe UI",Arial,sans-serif}
.serif,.approach-card h3,.program-tab strong,.program-detail h3,.timeline-row strong,.space-stage figcaption,.hero-note,.family-image strong,summary{font-family:Georgia,"Times New Roman",serif}
.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(3.2rem,5.6vw,5.8rem);letter-spacing:-.055em;line-height:1.09}
.hero h1 em{color:#a25747}.hero-copy,.hero-photo,.program-detail,.family-copy,.faq-list{min-width:0}
.hero-inner{padding-block:48px 68px}.hero-photo{position:relative;top:auto;left:auto;width:100%;height:auto;mask-image:none}
.photo-frame{border-radius:32px;aspect-ratio:4/3.7;max-height:580px;border:5px solid #fffdf9}
.hero-note{white-space:normal;font-family:inherit;font-size:1rem;font-weight:700;left:16px;bottom:28px;padding:12px 22px;background:#fff9ee;border-color:#dbc5af;box-shadow:0 8px 24px #203b4320}
.hero-note:hover{background:white}.hero-actions .button,.nav-cta{background:#b34e42;border-color:#b34e42;color:#fff;border-radius:999px}
.button,.nav-cta{border-radius:999px}.nav-cta{box-shadow:0 5px 18px #b34e421e}
.hero-copy .subsidy-pill{display:inline-flex;gap:8px;align-items:center;margin:22px 0 0;font-size:.9rem;color:#346764}
.subsidy-pill:before{content:"✓";display:grid;place-items:center;border-radius:50%;width:22px;height:22px;background:#d6ece5;font-size:.8rem}
.facts strong{font-family:Georgia,serif}.facts small{color:#355e62}.facts>div{min-width:0}
.section{padding-block:82px}.section-head h2{font-size:clamp(2.4rem,4.5vw,4rem);line-height:1.16;letter-spacing:-.05em}
.approach-card{border-radius:18px}.program-layout,.day-panel,.family-image{border-radius:22px;overflow:hidden}
.program-tab{min-height:125px}.program-detail h3{font-size:clamp(2.2rem,4vw,3.5rem);line-height:1.12}
.space-stage{border-radius:24px}.space-thumb{border-radius:16px;min-height:220px}.space-stage figcaption{font-size:1.35rem}
.subsidy-callout{padding:22px 26px;background:#e5f2eb;border:1px solid #c6dfd2;border-radius:18px;margin:36px 0 0;color:#315d53}
.subsidy-callout strong{display:block;font-size:1.3rem;line-height:1.4;margin-bottom:8px}.subsidy-callout p{margin:0;font-size:1.08rem;line-height:1.65}
.contact-strip{margin-top:26px;display:flex;gap:12px 26px;align-items:center;flex-wrap:wrap;color:#355e62;font-weight:700;font-size:.93rem}
.contact-strip a:hover{text-decoration:underline}.license-line{font-size:.84rem;color:#58696d;margin-top:14px}
.enrollment-path{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:38px auto 32px;max-width:960px;text-align:left}
.enrollment-path article{padding:22px 24px;background:#ffffff90;border:1px solid #dbcfc9;border-radius:18px}
.enrollment-path h3{font-family:Georgia,serif;font-size:1.4rem;margin:0 0 8px;letter-spacing:-.025em}
.enrollment-path p{font-size:.91rem;margin:0;line-height:1.6}.closing{padding-block:72px}.closing h2{font-size:clamp(2.8rem,5vw,5rem)}
.closing .contact-strip{justify-content:center}.closing .contact-strip a{overflow-wrap:anywhere}.closing .contact-caption{margin-top:20px;font-size:.82rem}
.footer .wrap{align-items:center}.footer .footer-details{text-align:right;font-size:.83rem;line-height:1.7}.footer a[href^="tel"]{font-weight:700;font-size:1.1rem}
.skip-link{position:absolute;top:8px;left:16px;padding:12px;background:#173b5e;color:#fff;border-radius:8px;z-index:100;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}
[id]{scroll-margin-top:24px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #235f6c;outline-offset:4px}
.mobile-action{display:none}.menu-button{color:#173b5e;display:none}.brand-logo{max-width:100%}
dialog{width:min(640px,calc(100% - 28px));max-height:calc(100dvh - 32px);border-radius:24px;overscroll-behavior:contain}
.dialog-body{padding:30px}.dialog-top{align-items:start}.dialog-top h2{font-family:Georgia,serif;font-size:2rem;line-height:1.15}.close{min-width:44px;min-height:44px;color:#263b43}
.dialog-intro{font-size:.92rem;line-height:1.65}.form-progress{display:flex;list-style:none;padding:0;margin:0 0 24px;border-bottom:1px solid #d1dfdb;gap:14px}
.form-progress li{padding:0 0 12px;color:#667773;font-size:.81rem;border-bottom:3px solid transparent;flex:1}
.form-progress li[aria-current="step"]{color:#8d3a31;font-weight:700;border-color:#b34e42}.form-progress li.complete{color:#386e5e}
.form-panel{padding:0;border:0;margin:0;min-width:0}.form-panel legend{font:500 1.5rem/1.2 Georgia,serif;margin-bottom:6px;color:#173858}
.step-helper{font-size:.86rem;color:#51616a;margin:0 0 18px}.field{margin-bottom:16px}.field label{font-size:.86rem;line-height:1.4}
.field input,.field select,.field textarea{font-size:16px;border:1px solid #aebebb;border-radius:10px;min-height:48px;background:#fffefa}
.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid #235f6c;outline-offset:2px}.field small{font-size:.78rem;color:#5c6e71;line-height:1.5}
.form-actions{justify-content:space-between;align-items:center}.form-actions .button{font-size:.88rem;min-height:48px}.form-note{font-size:.78rem;line-height:1.65}
.form-error{background:#fff0eb;border:1px solid #e6a793;color:#873b2f;padding:12px 14px;border-radius:10px;font-size:.87rem;margin:0 0 18px}
.review-details{margin:14px 0 22px;background:#edf5f2;border:1px solid #d2e3dc;border-radius:14px;padding:8px 18px;font-size:.86rem}
.review-details>div{display:grid;grid-template-columns:130px 1fr;gap:14px;padding:11px 0;border-bottom:1px solid #d2e3dc}.review-details>div:last-child{border:0}
.review-details dt{color:#51696a}.review-details dd{margin:0;font-weight:600;white-space:pre-wrap;overflow-wrap:anywhere}
.consent{display:flex;align-items:flex-start;gap:10px;font-size:.82rem;line-height:1.6;margin:16px 0 22px}.consent input{width:20px;height:20px;min-width:20px;margin:3px 0 0;accent-color:#b34e42}
.email-action{width:100%;font-size:.95rem}.review-tools{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.review-tools button{border:1px solid #a5b9b8;background:transparent;color:#285a63;border-radius:999px;padding:10px 16px;min-height:44px;font-size:.82rem;font-weight:700}
.request-status{padding:12px 14px;background:#e2f1e8;color:#285947;border:1px solid #bfdcc9;border-radius:12px;font-size:.87rem;margin-top:16px}
.manual-request{font-size:.83rem;margin-top:14px}.manual-request a{text-decoration:underline;color:#285a63}.manual-request textarea{width:100%;min-height:160px;padding:12px;border:1px solid #aebebb;border-radius:10px;font-size:16px;color:#263b43;background:white}
.toast{max-width:calc(100% - 32px);width:max-content;border-radius:12px;text-align:center;font-size:.85rem}
@media(max-width:1050px){.nav-links{gap:15px;font-size:.82rem}}
@media(max-width:850px){.menu-button{display:block}.hero-inner{display:grid;grid-template-columns:1fr;gap:30px;padding-block:40px 50px}.hero-photo{min-height:0;width:100%;margin:0}.photo-frame{aspect-ratio:4/3;max-height:510px}.hero h1{font-size:clamp(3rem,6.5vw,4.7rem);max-width:720px}.hero-note{bottom:18px}.family-layout{grid-template-columns:1fr;gap:28px}.family-image{aspect-ratio:1.5}.space-stage{min-height:450px}.enrollment-path{gap:12px}.enrollment-path article{padding:18px}}
@media(max-width:600px){.wrap{width:calc(100% - 36px)}.site-header .brand{width:min(360px,100%)}.nav{padding-block:12px;gap:8px}.site-header .brand-logo{max-height:180px;object-fit:contain}.nav-cta{font-size:.84rem;padding:12px 18px}.hero-inner{display:flex;flex-direction:column;align-items:stretch;padding-top:28px;gap:28px}.hero-photo{order:0}.hero h1{font-size:clamp(2.65rem,10vw,3.65rem)}.hero .eyebrow{font-size:.67rem;margin-bottom:18px}.hero-lede{font-size:1rem}.hero-actions .button{width:100%;min-height:52px}.hero-note{left:12px;bottom:16px;font-size:.84rem;padding:10px 16px}.photo-frame{border-radius:24px;aspect-ratio:4/3;border-width:3px}.hero-copy .subsidy-pill{font-size:.84rem;line-height:1.5}.intro-strip .facts{grid-template-columns:repeat(2,minmax(0,1fr))}.facts>div{padding:18px 12px!important}.facts small{font-size:.6rem;letter-spacing:.08em}.facts strong{font-size:1rem;line-height:1.45}.section{padding-block:58px}.section-head{margin-bottom:28px}.section-head h2,.day-layout h2,.family-copy h2,.faq-layout h2{font-size:2.35rem}.section-head p{font-size:.95rem}.approach-card h3{font-size:1.65rem}.program-detail{padding:30px}.program-tab{padding:22px;min-height:110px}.program-tab strong{font-size:1.4rem}.space-gallery{grid-template-columns:1fr}.space-stage{min-height:0;height:auto;aspect-ratio:4/3}.space-thumbs{grid-template-columns:repeat(4,1fr);gap:6px}.space-thumb{min-height:94px;border-radius:10px}.space-thumb span{left:6px;bottom:8px;font-size:.61rem}.space-stage figcaption{font-size:1.08rem;padding:28px 16px 15px}.day-panel{padding:22px 18px}.day-tabs{gap:5px}.day-tabs button{padding:9px 11px;min-height:44px;font-size:.8rem}.timeline-row{grid-template-columns:68px 1fr;gap:12px}.family-copy{padding-top:0}.family-image{aspect-ratio:1.4}.enrollment-path{grid-template-columns:1fr;margin-block:26px}.closing{padding-block:58px}.closing h2{font-size:2.8rem}.closing .contact-strip{flex-direction:column;gap:12px}.footer{padding-bottom:102px}.footer .footer-details{text-align:left;margin-top:16px}.mobile-action{display:block;position:fixed;bottom:calc(12px + env(safe-area-inset-bottom));left:16px;right:16px;z-index:25;background:#b34e42;color:white;border:1px solid #fff9;border-radius:999px;min-height:52px;font-weight:700;box-shadow:0 8px 26px #263b4340}.dialog-body{padding:24px 20px}.dialog-top h2{font-size:1.8rem}.fields-two{grid-template-columns:1fr;gap:0}.review-details>div{grid-template-columns:90px 1fr;gap:12px}.form-progress{gap:8px}.form-progress li{font-size:.76rem}.form-actions .button{padding:12px 18px}.toast{bottom:86px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Logo navy actions across desktop, mobile, and the tour request. */
:root{--action-blue:#001845;--action-blue-hover:#123566;--action-ink:#001845;--action-outline:#001845}
.button,.nav-cta,.hero-actions .button,.closing .button,.mobile-action{background:var(--action-blue);border-color:var(--action-outline);color:#fff;box-shadow:0 5px 18px #00184518}
.button:hover,.nav-cta:hover,.hero-actions .button:hover,.closing .button:hover,.mobile-action:hover{background:var(--action-blue-hover);border-color:var(--action-blue-hover);color:#fff;box-shadow:0 8px 24px #00184526}
.button.secondary,.hero .button.secondary{background:#f0f4fa;border-color:var(--action-outline);color:var(--action-ink)}
.button.secondary:hover,.hero .button.secondary:hover{background:#dfe8f5;color:var(--action-ink)}
.hero-note{background:var(--action-blue);border-color:var(--action-outline);color:#fff}
.hero-note:hover{background:var(--action-blue-hover);color:#fff}
.day-tabs button[aria-selected=true]{background:var(--action-blue);border-color:var(--action-outline);color:#fff}
.review-tools button{border-color:var(--action-outline);color:var(--action-ink)}
.review-tools button:hover{background:#dfe8f5}
.form-progress li[aria-current="step"]{color:var(--action-ink);border-color:var(--action-outline)}
.consent input{accent-color:var(--action-blue)}

/* Standalone learning caption beneath the mission cards. */
.learning-caption{margin:clamp(32px,5vw,56px) auto 0;padding:clamp(24px,4vw,40px) 20px;max-width:900px;border-top:1px solid var(--line);text-align:center;font-family:Fraunces,Georgia,serif;font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.25;color:var(--ink)}
.learning-caption strong{display:inline-block;margin-top:8px;font-weight:500;font-size:clamp(2rem,4.5vw,3.6rem);color:var(--action-blue)}

/* Keep daily rhythm labels clear at every screen size. */
.timeline-row{grid-template-columns:minmax(max-content,7rem) minmax(0,1fr);column-gap:24px;row-gap:8px}
.timeline-row>div{min-width:0}
.timeline-row>span{line-height:1.5}
.day-tabs{flex-wrap:wrap}
.day-tabs button{min-height:44px}
.provider-signature strong{display:inline-block;margin-top:4px}
@media(max-width:600px){
  .timeline-row{grid-template-columns:minmax(0,1fr);gap:8px;padding:22px 0}
  .timeline-row>span{padding-top:0}
  .timeline-row strong{display:block;line-height:1.35}
  .timeline-row p{margin-top:6px}
  .day-tabs{gap:6px}
  .day-tabs button{flex:1 1 auto;padding:10px 8px}
}

/* Preserve the full provider portrait on desktop and mobile. */
.family-image.provider-image{aspect-ratio:2/3;width:100%;max-width:480px;margin-inline:auto;padding:0;border-radius:24px;align-self:center}
.family-image.provider-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}

/* Responsive sizing takes precedence over the original inline theme. */
.wrap>* ,.fields-two>* ,.program-layout>* ,.approach-grid>*{min-width:0}
.field input,.field select,.field textarea{min-width:0;max-width:100%}
.manual-request a,.footer-details{overflow-wrap:anywhere}
.family-image.provider-image img{height:auto;aspect-ratio:2/3;filter:none}
@media(max-width:850px){
  .nav{grid-template-columns:minmax(0,1fr) auto}
  .nav-links{position:static;grid-column:1/-1;grid-row:3;width:100%;padding:16px 0;box-shadow:none}
  .nav-links a{display:block;padding:10px 12px;min-height:44px}
  .hero-inner{min-height:0;grid-template-columns:minmax(0,1fr)}
  .approach-grid,.program-layout,.day-layout,.family-layout,.faq-layout{grid-template-columns:minmax(0,1fr)}
  .approach-card{min-height:0}
  .program-list{grid-template-rows:none}
  .program-detail{padding:28px}
  .family-layout{gap:28px}
  .family-image.provider-image{max-width:400px}
}
@media(max-width:600px){
  .hero h1{font-size:clamp(2.25rem,9vw,3.3rem)}
  #approach .section-head h2{font-size:clamp(2rem,8.5vw,2.6rem);line-height:1.16}
  .hero h1 br{display:none}
  .hero h1,.section-head h2,.family-copy h2{overflow-wrap:break-word}
  .hero-photo{align-self:stretch}
  .photo-frame{height:auto;aspect-ratio:4/3}
  .space-thumbs{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .space-thumb{min-height:115px}
  .space-thumb span{font-size:.8rem;left:10px;bottom:10px}
  .subsidy-callout{padding:20px}
  .family-image.provider-image{max-width:340px}
  .dialog-top>div{min-width:0}
  .form-progress li{min-width:0;overflow-wrap:break-word}
  .form-actions .button{max-width:100%;white-space:normal}
  .review-details>div{grid-template-columns:minmax(0,1fr);gap:4px}
  .manual-request p{padding-right:0}
  .footer{padding-bottom:calc(102px + env(safe-area-inset-bottom))}
}

/* Keep the provider's name, portrait, and message together at every width. */
.family-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-areas:"portrait heading" "portrait biography";column-gap:clamp(28px,6vw,72px);row-gap:0;align-items:start}
.provider-heading{grid-area:heading;align-self:end;min-width:0}
.provider-heading h2{font-size:clamp(2.35rem,4vw,4.1rem);line-height:1.12;margin:12px 0 24px;overflow-wrap:break-word}
.provider-heading .eyebrow{margin-bottom:0}
.family-copy{grid-area:biography;padding-top:0}
.family-image.provider-image{grid-area:portrait;align-self:center;aspect-ratio:auto;max-width:440px}
.family-image.provider-image img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
.hero-inner{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr)}
.program-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr)}
.day-layout{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}
.faq-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.nav-links{min-width:0;flex-wrap:wrap}
.dialog-body{overflow-wrap:break-word}
dialog{max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow-y:auto}
@media(max-width:850px){
  .hero-inner,.program-layout,.day-layout,.faq-layout{grid-template-columns:minmax(0,1fr)}
  .family-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"heading" "portrait" "biography";gap:24px}
  .provider-heading{text-align:center}
  .provider-heading h2{margin-bottom:0}
  .family-copy{max-width:640px;margin-inline:auto}
  .family-image.provider-image{max-width:380px}
  .nav-links{gap:4px}
}
@media(max-width:600px){
  .provider-heading h2{font-size:clamp(2rem,8.5vw,2.8rem)}
  .family-image.provider-image{max-width:340px}
  .day-layout h2,.faq-layout h2{font-size:clamp(2rem,8.5vw,2.35rem);overflow-wrap:break-word}
  .dialog-body{padding:22px 16px}
  .form-actions{gap:12px}
  .form-actions .step-helper{flex-basis:100%;margin:0}
  .form-actions .button{flex:1 1 120px}
  .nav-cta{white-space:normal;text-align:center}
  .hero-note{max-width:calc(100% - 24px)}
}

/* Brightwheel announcement and interest-first enrollment. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.interest-helper{font-size:.95rem;line-height:1.6;margin:16px 0 0;color:var(--muted);max-width:470px}
.brightwheel-announcement{background:#fffefa;padding:32px 0 0}
.brightwheel-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;border:1px solid #b6d8d5;border-left:5px solid #477e8b;border-radius:20px;padding:30px 34px;background:#e8f3f1}
.brightwheel-card .eyebrow{margin:0 0 10px;max-width:none;text-align:center}.brightwheel-card h2{font-size:clamp(1.9rem,3.4vw,2.8rem);margin:0 0 14px;line-height:1.15}.brightwheel-card p{max-width:700px;margin:0;color:#35535e;line-height:1.65}
.brightwheel-card .brightwheel-first-step{margin-top:14px}.brightwheel-first-step strong{display:block;color:#102a42}
.brightwheel-action{text-align:center;max-width:340px;min-width:0}.brightwheel-action .button{white-space:normal}.brightwheel-action p{font-size:.78rem;margin:10px 0 12px}.text-link{text-decoration:underline;text-underline-offset:4px;font-weight:700;color:#001845}.text-link:hover{color:#235f6c}
.enrollment-actions{display:flex;align-items:center;flex-direction:column;gap:14px}.closing .enrollment-actions p{margin:6px 0 0;font-size:.9rem}.closing .button.secondary{background:#f0f4fa;color:#001845}.closing .button.secondary:hover{background:#dfe8f5;color:#001845}
.interest-prerequisite{padding:18px;margin:0 0 22px;background:#e8f3f1;border:1px solid #b6d8d5;border-radius:12px}.interest-prerequisite .consent{margin:16px 0 0}
.enrollment-path p{max-width:none}.enrollment-path article{min-width:0}
@media(max-width:850px){.brightwheel-card{grid-template-columns:minmax(0,1fr);gap:22px}.brightwheel-action{text-align:left;max-width:none}.nav-cta{max-width:250px}}
@media(max-width:600px){.brightwheel-announcement{padding-top:24px}.brightwheel-card{padding:24px 20px}.brightwheel-action .button,.enrollment-actions .button{width:100%}.enrollment-actions{width:100%}a.mobile-action{display:flex;justify-content:center;align-items:center;text-align:center;gap:8px;padding:12px 16px}.interest-helper{font-size:.9rem}}

/* A single inquiry entry point with a compact enrollment checklist. */
.brightwheel-card{grid-template-columns:minmax(0,1fr)}
.inquiry-steps{list-style:none;counter-reset:inquiry;max-width:720px;text-align:left;padding:0;margin:28px auto 30px;display:grid;gap:0}
.inquiry-steps li{counter-increment:inquiry;display:grid;grid-template-columns:34px minmax(0,1fr);column-gap:14px;padding:18px 0;border-bottom:1px solid #102a422b}
.inquiry-steps li:first-child{border-top:1px solid #102a422b}
.inquiry-steps li::before{content:counter(inquiry);grid-row:1/3;display:grid;place-items:center;width:32px;height:32px;border:1px solid #102a4280;border-radius:50%;font-size:.85rem;font-weight:700}
.inquiry-steps strong{font-size:1.02rem;line-height:1.5}.inquiry-steps span{display:block;font-size:.94rem;line-height:1.65;margin-top:4px;color:#274856}
.closing .inquiry-phone-note{margin:30px auto 0;max-width:620px;font-size:.98rem}
.footer{padding-bottom:35px}
@media(max-width:600px){.inquiry-steps{margin-block:24px}.inquiry-steps li{column-gap:12px}.footer{padding-bottom:calc(35px + env(safe-area-inset-bottom))}}

/* Original partner logos, with responsive sizing. */
.brightwheel-card .partner-logos{display:flex;align-items:center;justify-content:center;gap:clamp(24px,4vw,52px);flex-wrap:wrap;margin:12px 0 24px;letter-spacing:normal}
.partner-logos img{display:block;object-fit:contain;height:auto;max-width:100%;flex:0 1 auto}
.partner-logos .partner-lakeside{width:300px}
.partner-logos .partner-brightwheel{width:320px}
.partner-plus{font:400 2rem/1 Georgia,serif;color:#477e8b;flex:none}
@media(max-width:600px){.brightwheel-card .partner-logos{flex-direction:column;gap:16px;margin:20px 0 24px}.partner-logos .partner-lakeside{width:min(270px,100%)}.partner-logos .partner-brightwheel{width:min(270px,100%)}.partner-plus{font-size:1.5rem}}

/* Show the Lakeside logo without its slogan in the collaboration only. */
.partner-lakeside-mark{display:block;width:300px;max-width:100%;aspect-ratio:1774/700;overflow:hidden;flex:0 1 auto}
.partner-logos .partner-lakeside-mark .partner-lakeside{display:block;width:100%;max-width:none;height:auto;aspect-ratio:1774/887}
@media(max-width:600px){.partner-lakeside-mark{width:min(270px,100%)}}

/* Make the single General Interest Form action easy to find and tap. */
.closing .interest-form-cta{width:min(100%,540px);min-height:78px;padding:22px 32px;font-size:clamp(1.05rem,1.8vw,1.25rem);font-weight:800;line-height:1.4;text-align:center;background:#001845;color:#fff;border:3px solid #d6ad75;box-shadow:0 0 0 6px #fff8,0 12px 28px #00184526;gap:14px}
.closing .interest-form-cta:hover{background:#123566;border-color:#c99a5c;box-shadow:0 0 0 6px #fffc,0 15px 32px #00184533}
.closing .interest-form-cta>span[aria-hidden]{font-size:1.45em;line-height:1;flex:none}
@media(max-width:600px){.closing .interest-form-cta{padding:20px 18px;min-height:76px;gap:10px}}

/* Compact phone masthead and readable touch navigation. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.menu-label{font-size:1rem;font-weight:700}
@media(max-width:850px){
  .nav{grid-template-columns:minmax(0,1fr);gap:8px;padding-block:10px 14px}
  .menu-button{grid-column:1;grid-row:2;justify-self:center;display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:8px 20px;border:1px solid var(--line);border-radius:999px;text-align:center}
  .nav-links.open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px 0 0}
  .nav-links a{display:flex;align-items:center;justify-content:center;text-align:center;border-radius:12px;background:#edf5f4;min-height:48px}
}
@media(max-width:600px){
  .site-header .brand{width:min(280px,100%)}
  .hero-inner{padding-block:24px 36px;gap:24px}
  .hero h1{margin-bottom:20px}
  .hero-lede{margin-bottom:24px}
  .hero-note{min-height:44px}
  .program-detail h3{font-size:clamp(2rem,8vw,2.7rem)}
  .closing .contact-strip{align-items:stretch}
  .closing .contact-strip a{padding-block:10px;min-height:44px}
}

/* Inquiry stays within reach while families explore the site. */
.inquiry-bubble{position:fixed;right:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:1001;display:flex;align-items:center;gap:10px;min-height:60px;padding:16px 24px;border:2px solid #d6ad75;border-radius:100px;background:#001845;color:white;font-family:inherit;font-size:18px;font-weight:750;line-height:1.2;box-shadow:0 6px 25px #00184540;cursor:pointer}
.inquiry-bubble:hover{background:#123566}.inquiry-bubble:focus-visible,.inquiry-panel button:focus-visible{outline:3px solid #b4823b;outline-offset:4px}.inquiry-panel{position:fixed;right:24px;bottom:100px;z-index:1000;width:min(460px,calc(100vw - 32px));height:min(720px,calc(100dvh - 128px));border:1px solid #d6ad75;border-radius:20px;box-shadow:0 12px 60px #00184545;background:white;overflow:hidden;display:flex;flex-direction:column}.inquiry-panel-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#001845;color:#fff;font-size:14px;flex:none}.inquiry-panel-bar button{background:transparent;color:white;border:0;font-size:30px;line-height:1;min-width:44px;min-height:44px;cursor:pointer}.inquiry-panel iframe{border:0;width:100%;flex:1;min-height:0;background:white}.footer{padding-bottom:110px}.inquiry-bubble-note{max-width:620px;margin:24px auto!important}
@media(max-width:600px){.inquiry-bubble{right:16px;min-height:56px;padding:14px 20px}.inquiry-panel{right:16px;bottom:96px;height:calc(100dvh - 120px)}}

/* Keep the schedule easy to reach and read across screen sizes. */
#daily-schedule{scroll-margin-top:20px;min-width:0}
.day-panel h3{font-size:clamp(1.25rem,2vw,1.6rem);line-height:1.35;margin:0 0 10px}
@media(max-width:1050px) and (min-width:851px){
 .timeline-row{grid-template-columns:minmax(0,1fr);gap:8px}
}
@media(max-width:850px){
 .day-panel{grid-row:1}
 .day-layout{gap:32px}
 .nav-links a{overflow-wrap:anywhere}
}
