:root{--navy:#20375b;--pink:#f03960;--pink-dark:#c3264b;--blue:#5495d6;--yellow:#fab235;--green:#5bbc40;--body:#50617a;--pale-blue:#eff7fe;--page-blue:#0754a6;--page-green:#166b45;--gallery-blue:#064b96;--on-blue:#fff;--on-blue-muted:#e3efff;--font-heading:'Nunito',sans-serif;--font-body:'DM Sans',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--navy);font-family:var(--font-body);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;height:auto;display:block}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--navy);outline-offset:5px}::selection{background:#ffdf87;color:var(--navy)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:var(--font-heading);letter-spacing:-.035em;line-height:1.12;font-weight:900}h1{font-size:clamp(2.9rem,5.7vw,5.5rem)}h2{font-size:clamp(2rem,3.5vw,3.4rem);white-space:pre-line}h3{font-size:1.55rem}p{color:var(--body)}.section-wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.section-padding{padding-block:100px}.topline{background:var(--navy);color:#fff;padding:9px max(48px,calc((100vw - 1240px)/2));display:flex;justify-content:space-between;gap:20px;font-size:.875rem;line-height:1.6}.topline a{white-space:nowrap}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.98);border-bottom:1px solid #eef0f4}.header-inner{width:min(1240px,calc(100% - 96px));margin:auto;min-height:106px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand img{width:57px;height:70px;object-fit:contain}.brand>span{font-family:var(--font-heading);font-weight:900;font-size:1.5rem;letter-spacing:-.04em;line-height:1.15}.brand small{display:block;font-family:var(--font-body);font-size:.75rem;letter-spacing:.16em;margin-top:7px;font-weight:600}.desktop-nav{display:flex;align-items:center;gap:30px;font-size:.9375rem;font-weight:500}.desktop-nav a:hover,.text-link:hover{color:var(--pink-dark)}.header-actions{display:flex;align-items:center;gap:17px}.language-switch{background:none;border:none;border-bottom:1px solid #a7b4c5;padding:7px 3px;cursor:pointer;min-width:36px;min-height:44px;color:var(--navy);font-size:.875rem;font-weight:700}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:55px;padding:15px 27px;background:var(--pink-dark);color:#fff;border-radius:50px;font-weight:700;font-size:1rem;line-height:1.4;transition:background .2s,transform .2s}.button:hover{background:#a61a3b;transform:translateY(-2px)}.button-small{min-height:45px;padding:12px 24px;font-size:.875rem}.hero{padding-top:67px;padding-bottom:52px}.hero-top{display:grid;grid-template-columns:1.25fr .75fr;gap:65px;align-items:center;margin-bottom:45px}.eyebrow{font-weight:700;font-size:.78rem;letter-spacing:.13em;line-height:1.6;color:var(--navy);margin-bottom:20px;display:flex;align-items:center;gap:11px}.little-line{display:inline-block;width:24px;height:3px;background:var(--pink)}.hero-heading{position:relative}.hero-heading h1{position:relative;display:inline-block}.blue-text{color:#3f7eb8}.pink-text{color:var(--pink-dark)}.spark{display:inline-block;color:var(--yellow);font-size:.65em;position:absolute;right:-.75em;top:-.22em;font-weight:600;transform:rotate(10deg)}.hero-intro{padding-top:28px}.hero-intro>p{font-size:1.14rem;line-height:1.8;max-width:390px;margin-bottom:25px}.review-link{display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-size:.8rem;margin-top:20px;color:var(--body)}.review-link strong{color:var(--navy)}.stars{color:#ad7100;letter-spacing:.035em;font-size:1rem;white-space:nowrap}.hero-photo{position:relative;border-radius:30px;overflow:hidden;background:var(--pale-blue)}.hero-photo img{width:100%;height:auto}.hero-photo figcaption{position:absolute;bottom:24px;left:25px;display:flex;align-items:center;gap:11px;background:#fff;padding:12px 20px;border-radius:30px;font-weight:600;font-size:.875rem;box-shadow:0 4px 20px #20375b12}.hero-photo figcaption>span:first-child{color:var(--pink);font-size:1.3rem}.play-band{display:flex;justify-content:center;gap:clamp(22px,5vw,90px);align-items:center;background:#fff7df;border-block:1px solid #ffefba;padding:23px 24px;font-family:var(--font-heading);font-size:clamp(1rem,2vw,1.7rem);letter-spacing:.08em;font-weight:800}.play-band>span:nth-child(even){color:#bb7911}.section-intro{max-width:680px;text-align:center;margin:0 auto 44px}.section-intro .eyebrow{justify-content:center}.section-intro>p:last-child{max-width:560px;margin:22px auto 0;font-size:1.05rem}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.approach-card{border-radius:23px;padding:32px}.card-yellow{background:#fff4d6}.card-blue{background:#eaf4fe}.card-green{background:#ecf8e7}.card-number{display:flex;align-items:center;justify-content:center;width:45px;height:45px;border-radius:50%;background:#fff;font-family:var(--font-heading);font-weight:800;margin-bottom:26px}.approach-card h3{margin-bottom:15px}.approach-card p{font-size:1rem;line-height:1.8}.spaces-section{background:var(--pale-blue)}.section-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:35px}.section-heading-row h2{max-width:690px}.text-link{display:inline-flex;align-items:center;gap:10px;font-weight:600;font-size:.9375rem;text-decoration:underline;text-underline-offset:5px}.section-heading-row>.text-link{flex-shrink:0;margin-bottom:5px}.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:24px}.gallery-item img{width:100%;aspect-ratio:1.5;object-fit:cover;border-radius:22px}.gallery-item figcaption{margin-top:13px;font-weight:600;font-size:.9375rem}.visit-section{display:grid;grid-template-columns:1.1fr .8fr;gap:100px;align-items:center}.visit-copy>p:not(.eyebrow){margin:25px 0;max-width:500px;font-size:1.05rem;line-height:1.85}.contact-card{border:1px solid #dce5ef;border-radius:25px;padding:35px;background:#fff}.contact-heading{display:flex;gap:20px;align-items:center;padding-bottom:25px;border-bottom:1px solid #e6ecf2}.contact-heading img{width:65px;height:auto}.contact-heading h3{font-size:1.7rem}.contact-heading small{display:block;font-family:var(--font-body);font-size:.75rem;letter-spacing:.19em;margin-top:7px;font-weight:600}.contact-detail{margin-top:25px}.contact-detail>span{display:block;font-size:.75rem;letter-spacing:.12em;color:var(--body);font-weight:700;margin-bottom:8px}.contact-detail address{font-style:normal;font-size:1.1rem;line-height:1.6;margin-bottom:11px}.phone-link{font-family:var(--font-heading);font-size:1.5rem;font-weight:800}.contact-detail .text-link{color:var(--pink-dark)}footer{background:var(--navy);color:#fff;padding:27px 0 88px}.footer-inner{display:flex;gap:25px;justify-content:space-between;flex-wrap:wrap;font-size:.8rem}footer p{color:#e0e9f6}.whatsapp-float{position:fixed;z-index:25;bottom:24px;right:25px;border-radius:50px;background:#137d45;color:#fff;display:flex;align-items:center;gap:10px;padding:14px 21px;box-shadow:0 4px 20px #133d3026;font-weight:700;line-height:1.5}.whatsapp-float:hover{background:#096334}.whatsapp-float:focus-visible{outline-color:#fab235}.skip-link{position:fixed;top:-100px;left:20px;background:var(--navy);color:#fff;z-index:100;padding:12px 20px}.skip-link:focus{top:10px}
@media(min-width:1450px){.hero-top{gap:100px}.hero-photo{max-height:650px}.hero-photo img{object-fit:cover;object-position:center}}
@media(max-width:1100px){.desktop-nav{gap:18px}.brand>span{font-size:1.3rem}.header-inner{gap:18px}.hero-top{gap:40px;grid-template-columns:1.15fr .85fr}.visit-section{gap:50px}.spark{right:-.4em;font-size:.5em}.brand small{font-size:.75rem}}
@media(max-width:900px){.section-wrap,.header-inner{width:calc(100% - 48px)}.topline{padding-inline:24px}.desktop-nav{display:none}.hero{padding-top:45px}.hero-top{grid-template-columns:1fr;gap:8px}.hero-heading h1{font-size:clamp(3rem,8vw,4.9rem)}.hero-intro{padding-top:14px;display:grid;grid-template-columns:1fr auto;column-gap:28px;align-items:center}.hero-intro>p{margin:0;max-width:520px}.hero-intro .review-link{grid-column:1/-1;margin-top:20px}.section-padding{padding-block:70px}.approach-grid{gap:15px}.approach-card{padding:24px}.section-heading-row{display:block}.section-heading-row>.text-link{margin-top:20px}.visit-section{grid-template-columns:1fr 1fr;gap:30px}.contact-card{padding:25px}}
@media(max-width:600px){html{scroll-padding-top:100px}.section-wrap,.header-inner{width:calc(100% - 36px)}.topline{padding:8px 18px;justify-content:center;font-size:.75rem}.topline>span{display:none}.header-inner{min-height:88px;gap:10px}.brand{gap:8px}.brand img{width:40px;height:52px}.brand>span{font-size:1.05rem}.brand small{font-size:.75rem;letter-spacing:.1em}.header-actions{gap:10px}.header-actions .button{display:none}.language-switch{min-width:44px}.hero{padding-top:35px;padding-bottom:32px}.eyebrow{font-size:.75rem;margin-bottom:15px}.hero-heading h1{font-size:clamp(2.45rem,10vw,3.7rem);letter-spacing:-.045em}.spark{position:static;margin-left:7px;font-size:.45em;vertical-align:top}.hero-top{margin-bottom:28px}.hero-intro{display:block}.hero-intro>p{font-size:1rem;line-height:1.75;margin-bottom:20px}.hero-intro>.button{padding:14px 23px;min-height:50px}.review-link{font-size:.78rem;gap:8px}.hero-photo{border-radius:18px;overflow:visible;background:transparent}.hero-photo img{border-radius:18px}.hero-photo figcaption{position:static;box-shadow:none;padding:12px 0 0;font-size:.8rem;gap:8px;background:transparent}.play-band{gap:14px;padding:18px 10px;letter-spacing:.015em;font-size:.8rem;flex-wrap:wrap}.play-band>span:nth-child(6),.play-band>span:nth-child(7){display:none}.section-padding{padding-block:56px}h2{font-size:2rem;line-height:1.18}.section-intro{margin-bottom:28px}.section-intro>p:last-child{font-size:1rem}.approach-grid{grid-template-columns:1fr;gap:15px}.approach-card{padding:27px}.card-number{margin-bottom:17px}.approach-card h3{font-size:1.5rem}.gallery{grid-template-columns:1fr}.gallery-item img{aspect-ratio:auto;border-radius:18px}.visit-section{grid-template-columns:1fr;gap:32px}.contact-card{padding:26px}.visit-copy>p:not(.eyebrow){font-size:1rem}.footer-inner{display:block;font-size:.8rem}.footer-inner>p{margin-bottom:9px}.footer-inner>a{display:inline-block;margin-top:8px}.whatsapp-float{bottom:16px;right:16px;padding:12px 18px;font-size:.9rem}.whatsapp-float svg{width:23px;height:23px}footer{padding-bottom:95px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-item{min-width:0}.gallery-item img{aspect-ratio:4/5;object-position:center}.video-story{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);min-width:0;gap:48px;align-items:center;margin-top:60px;padding-top:48px;border-top:1px solid #d6e5f2}.video-story>*{min-width:0}.video-story-copy h3{font-size:clamp(1.8rem,3vw,2.5rem)}.video-story-copy>p:last-child{margin-top:18px;max-width:340px}.day-video{display:block;width:100%;min-width:0;max-width:100%;height:auto;object-fit:contain;aspect-ratio:16/9;background:var(--navy);border-radius:22px}.day-video:focus-visible{outline:3px solid var(--navy);outline-offset:5px}
@media(max-width:600px){.gallery{grid-template-columns:1fr}.gallery-item img{aspect-ratio:4/5}.video-story{grid-template-columns:minmax(0,1fr);gap:24px;margin-top:36px;padding-top:32px}.day-video{border-radius:18px}}

@media(max-width:600px){.brand-location{display:none}}
@media(max-width:600px){html[lang="es"] .hero-heading h1{font-size:clamp(2rem,8.5vw,3.2rem)}}

body{background:var(--page-blue)}
.site-header{background:rgba(234,244,254,.98);border-bottom-color:#d9e7f5}
.brand img{mix-blend-mode:multiply}
.hero{position:relative;isolation:isolate;background:var(--page-blue);color:var(--on-blue)}
.hero::before{content:"";position:absolute;inset:0;z-index:0;background:url("assets/logo.png") no-repeat right 24px top 8px;background-size:clamp(280px,38vw,460px) auto;opacity:.09;filter:grayscale(1) invert(1);mix-blend-mode:screen;pointer-events:none}
.hero>*{position:relative;z-index:1}
.experience-background{position:relative;isolation:isolate;background:var(--page-blue);color:var(--on-blue)}
.experience-background::before{content:"";position:absolute;inset:0;z-index:0;background:url("assets/logo.png") no-repeat left 4% top 35px;background-size:clamp(260px,35vw,440px) auto;opacity:.09;filter:grayscale(1) invert(1);mix-blend-mode:screen;pointer-events:none}
.experience{position:relative;z-index:1}
.approach-card{color:var(--navy);box-shadow:0 0 0 1px #20375b0d,0 8px 24px #20375b08}
.visit-background{background:var(--page-green)}
.visit-copy{color:#fff}
.visit-copy>p{color:#e6f5eb}
.visit-copy .pink-text{color:#ffd4df}
.visit-copy a:focus-visible{outline-color:var(--yellow)}
.spaces-section{background:var(--gallery-blue);color:var(--on-blue)}
.hero .blue-text,.hero .review-link strong{color:var(--on-blue)}
.hero .eyebrow,.hero-intro>p,.hero .review-link,.experience .section-intro p,.spaces-section p{color:var(--on-blue-muted)}
.hero .stars{color:var(--yellow)}
.hero-photo figcaption{color:var(--navy)}
.hero .little-line{background:var(--yellow)}
.spaces-section .text-link:hover{color:#ffda7d}
.video-story{border-top-color:#ffffff35}
.hero a:focus-visible,.spaces-section a:focus-visible,.spaces-section video:focus-visible{outline-color:var(--yellow)}
@media(max-width:600px){.hero::before{background-position:right top 110px;background-size:260px auto;opacity:.06}.hero-photo figcaption{color:var(--on-blue-muted)}.hero-photo figcaption>span:first-child{color:var(--yellow)}}
@media(max-width:600px){.experience-background::before{background-position:left 18px top 26px;background-size:220px auto;opacity:.06}}

.puzzle-piece{background:currentColor;-webkit-mask:url("assets/puzzle.svg") center/contain no-repeat;mask:url("assets/puzzle.svg") center/contain no-repeat}
.play-band .puzzle-piece{display:block;width:34px;height:34px}
.spark.puzzle-piece{width:1em;height:1em}
.puzzle-blue{color:var(--blue)}
.puzzle-green{color:var(--green)}
.puzzle-pink{color:var(--pink)}
@media(max-width:600px){.play-band .puzzle-piece{width:20px;height:20px}}

.facebook-video-content{min-width:0}
.facebook-video-frame{position:relative;width:100%;min-width:0;aspect-ratio:16/9;overflow:hidden;border-radius:22px;background:var(--navy)}
.facebook-video-frame iframe{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;max-width:100%;border:0}
.facebook-video-link{margin-top:14px}
.license-detail p{font-size:1rem;color:var(--navy)}
.footer-inner{align-items:center}
.footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px}
.footer-social-link,.footer-back{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem}
.footer-social-link{gap:9px}
.footer-links a:hover{color:#ffda7d}
.footer-links a:focus-visible{outline-color:var(--yellow)}
.footer-branding{min-width:0}
.footer-contact{padding-block:12px 32px}.footer-contact h2{font-size:1.8rem;margin-bottom:24px}
.footer-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.footer-contact-item{display:flex;align-items:center;gap:12px;min-width:0;min-height:48px;font-size:1rem;font-weight:600;line-height:1.6}
.footer-contact-item>span:last-child{overflow-wrap:anywhere}.footer-contact-item:hover{color:#ffda7d}.footer-contact-item:focus-visible{outline-color:var(--yellow)}
.footer-contact-icon{display:flex;align-items:center;justify-content:center;width:38px;height:38px;flex:none;border-radius:50%;background:#ffffff18;color:#ffda7d}
.footer-contact-icon .phone-icon{-webkit-mask-image:url("assets/phone.svg");mask-image:url("assets/phone.svg")}.footer-contact-icon .location-icon{-webkit-mask-image:url("assets/map-pin.svg");mask-image:url("assets/map-pin.svg")}
.footer-inner{border-top:1px solid #ffffff25;padding-top:24px}
@media(max-width:900px){.footer-contact-grid{grid-template-columns:1fr;gap:14px}.footer-contact{padding-bottom:28px}}
.footer-inner{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:24px}
.footer-links{justify-content:center}.footer-back{justify-self:end}.footer-social-link{max-width:100%}.footer-social-link span:last-child{overflow-wrap:anywhere}
@media(max-width:1100px){.footer-inner{grid-template-columns:1fr}.footer-links{justify-self:center}.footer-back{justify-self:center}}
.footer-credit{margin-top:4px;text-align:left;font-size:.75rem;color:#bfd0e6}
.footer-credit a{color:#fff;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.footer-credit a:hover{color:#ffda7d}
.footer-credit a:focus-visible{outline-color:var(--yellow)}
@media(pointer:coarse){.footer-credit a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}}
.social-icon{display:block;flex:none;width:22px;height:22px;background:currentColor;-webkit-mask:center/contain no-repeat;mask:center/contain no-repeat}
.desktop-nav{gap:18px;flex-wrap:wrap}
.desktop-nav a[aria-current="page"]{color:var(--pink-dark);text-decoration:underline;text-underline-offset:6px}
.content-page{background:var(--page-blue);color:#fff;min-height:65vh;position:relative;isolation:isolate}
.content-page::before{content:"";position:absolute;inset:0;background:url("assets/logo.png") right 5% top 50px/340px auto no-repeat;filter:grayscale(1) invert(1);mix-blend-mode:screen;opacity:.07;z-index:-1;pointer-events:none}
.about-page{background:linear-gradient(135deg,#0754a6 20%,#0867b5 55%,#0754a6 85%)}
.about-wave{position:absolute;left:0;width:100%;height:70px;z-index:2;background:#e6f2ff url("assets/about-waves.svg") center/100% 100% no-repeat;pointer-events:none}
.about-wave-top{top:0}.about-wave-bottom{bottom:0;transform:rotate(180deg)}
.home-wave-section{position:relative;background:linear-gradient(135deg,#0754a6 20%,#0867b5 55%,#0754a6 85%)}
.home-wave-section>.hero{background:transparent;padding-top:120px;padding-bottom:110px}
@media(max-width:600px){.home-wave-section>.hero{padding-top:75px;padding-bottom:75px}}
.about-page>.section-wrap{padding-block:130px}
@media(max-width:600px){.about-wave{height:42px}.about-page>.section-wrap{padding-block:82px}}
.page-intro{max-width:850px;margin-bottom:40px}
.content-page .eyebrow,.content-page .page-intro p,.about-copy p{color:var(--on-blue-muted)}
.page-intro h1{font-size:clamp(2.5rem,5vw,4.5rem);margin-bottom:24px}
.page-intro p,.about-copy p{font-size:1.15rem;line-height:1.9}
.about-copy{max-width:800px}.about-copy p+p{margin-top:22px}.about-copy .button{margin-top:32px}
.program-card .age-range{font-weight:700;color:var(--navy);margin-bottom:20px}
.program-card h2{font-size:1.8rem;margin-bottom:12px}
.program-card{border-top:7px solid var(--program-accent);background:var(--program-tint)}
.program-card.card-yellow{--program-accent:#fab235;--program-tint:#fff1c6}
.program-card.card-blue{--program-accent:#1785d1;--program-tint:#dcefff}
.program-card.card-green{--program-accent:#f03960;--program-tint:#ffe2eb}
.program-symbol{width:90px;height:90px;border-radius:50%;background:var(--program-accent);display:flex;align-items:center;justify-content:center;margin-bottom:24px}
.program-symbol .puzzle-piece{width:48px;height:48px;color:#fff;transform:rotate(-12deg)}
.program-card h2,.program-card h3{font-size:1.8rem;margin-bottom:12px;color:var(--navy)}
.page-cta{margin-top:40px}
.hero-intro>p{font-family:var(--font-heading);font-weight:700;letter-spacing:.01em}
.team-section{margin-top:70px}.team-section>h2{margin-bottom:32px}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.team-card{min-width:0;overflow:hidden;border-radius:24px;color:var(--navy)}
.team-photo-placeholder{aspect-ratio:4/5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;margin:20px 20px 0;border:2px dashed #20375b40;border-radius:16px;color:var(--body);font-size:.875rem}
.team-photo-placeholder .puzzle-piece{width:64px;height:64px;color:#20375b40}
.team-card-copy{padding:28px}.team-card h3{margin-bottom:18px;font-size:1.65rem}.team-card p{color:var(--body);line-height:1.8}
@media(max-width:900px){.team-grid{grid-template-columns:1fr}.team-card{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr)}.team-photo-placeholder{margin:20px;align-self:start}.team-card-copy{padding:28px 28px 28px 0}}
@media(max-width:600px){.team-section{margin-top:48px}.team-card{display:block}.team-photo-placeholder{margin:20px 20px 0}.team-card-copy{padding:26px}}
@media(max-width:1100px){.header-inner{flex-wrap:wrap;padding-block:14px}.desktop-nav{order:3;width:100%;justify-content:center}}
@media(max-width:900px){.desktop-nav{display:flex;gap:8px 20px}.desktop-nav a{display:inline-flex;align-items:center;min-height:44px}}
@media(max-width:600px){.desktop-nav{font-size:.8rem;gap:0 15px}.content-page::before{background-size:220px auto}.page-intro p,.about-copy p{font-size:1rem}html{scroll-padding-top:190px}}
.facebook-icon{-webkit-mask-image:url("assets/facebook.svg");mask-image:url("assets/facebook.svg")}
.mail-icon{-webkit-mask-image:url("assets/mail.svg");mask-image:url("assets/mail.svg")}
.review-link .review-invitation{flex-basis:100%;font-size:.875rem;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.tour-full{position:relative;color:#fff}.tour-full-blue{background:#0754a6}.tour-full-red{background:#c3264b}
.tour-full>.video-story{margin-top:0;padding-block:110px 70px;border:0;border-radius:0}.tour-full p{color:#fff}.tour-full video:focus-visible{outline-color:#fff}
.tour-wave{position:absolute;top:0;left:0;width:100%;height:60px;pointer-events:none;background-position:center;background-size:100% 100%;background-repeat:no-repeat}
.tour-wave-blue{background-color:var(--yellow);background-image:url("assets/about-waves.svg")}.tour-wave-red{background-color:#0754a6;background-image:url("assets/red-waves.svg")}
#visit>.green-wave-top{background-color:#c3264b}
@media(max-width:600px){.tour-full>.video-story{padding-block:80px 48px}.tour-wave{height:38px}}
#spaces #day-video,#spaces #second-tour-video{padding:40px;border-top:0;border-radius:28px;color:#fff}
#spaces #day-video{background:#0754a6}#spaces #second-tour-video{background:#c3264b;margin-top:28px}
#spaces #day-video p,#spaces #second-tour-video p{color:#fff}
#spaces #day-video video:focus-visible,#spaces #second-tour-video video:focus-visible{outline-color:#fff}
@media(max-width:600px){#spaces #day-video,#spaces #second-tour-video{padding:24px 18px;border-radius:20px}}
#visit{position:relative}#visit>.visit-section{padding-block:120px}
.green-wave{position:absolute;left:0;width:100%;height:60px;background:#fff url("assets/green-waves.svg") center/100% 100% no-repeat;pointer-events:none}.green-wave-top{top:0}.green-wave-bottom{bottom:0;transform:rotate(180deg);background-color:var(--navy)}
@media(max-width:600px){#visit>.visit-section{padding-block:80px}.green-wave{height:38px}}
#experience{background:#fff;color:var(--navy)}
#experience::before{background-attachment:fixed;background-position:center center;background-size:auto min(70vh,620px);filter:none;mix-blend-mode:normal;opacity:.07}
#experience .section-intro p{color:var(--body)}#experience .section-intro .eyebrow{color:var(--navy)}
#spaces{position:relative;background:var(--yellow);color:var(--navy)}#spaces p{color:#334765}#spaces .eyebrow{color:var(--navy)}
#spaces>.section-wrap{padding-block:120px}#spaces .text-link:hover{color:var(--pink-dark)}#spaces .video-story{border-top-color:#20375b40}
#spaces a:focus-visible,#spaces video:focus-visible{outline-color:var(--navy)}
.yellow-wave{position:absolute;left:0;width:100%;height:60px;background:#fff url("assets/yellow-waves.svg") center/100% 100% no-repeat;pointer-events:none}.yellow-wave-top{top:0}.yellow-wave-bottom{bottom:0;transform:rotate(180deg)}
@media(max-width:600px){#spaces>.section-wrap{padding-block:80px}.yellow-wave{height:38px}}
.approach-grid>.program-card{position:relative;isolation:isolate;overflow:hidden;background:var(--program-tint)}
.approach-grid>.program-card::before{content:"";position:absolute;inset:0;z-index:-2;background:var(--program-image) center/cover no-repeat}
.approach-grid>.program-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to bottom,#ffffff38 0%,#fffffff0 42%,#fffffff5 100%)}
.approach-grid>.program-card.card-yellow{--program-image:url("assets/program-infants.png")}.approach-grid>.program-card.card-blue{--program-image:url("assets/program-toddlers.png")}.approach-grid>.program-card.card-green{--program-image:url("assets/program-preschool.png")}
.program-detail-copy>p:not(.program-detail-age){color:#fff}
.programs-menu{position:relative;color:var(--navy)}.programs-menu summary{display:flex;align-items:center;gap:7px;min-height:44px;cursor:pointer;list-style:none;font-weight:500}.programs-menu summary::-webkit-details-marker{display:none}.programs-menu summary:focus-visible{outline:3px solid var(--pink);outline-offset:4px}.programs-menu[open] summary{color:var(--pink-dark)}.programs-menu[open] .dropdown-chevron{transform:rotate(180deg)}
.programs-dropdown{position:absolute;top:100%;left:0;min-width:210px;padding:8px;background:#fff;border:1px solid #20375b20;border-radius:12px;box-shadow:0 12px 30px #20375b26;z-index:20}.desktop-nav .programs-dropdown a{display:flex;align-items:center;min-height:44px;padding:10px 14px;border-radius:7px;color:var(--navy)}.desktop-nav .programs-dropdown a:hover,.desktop-nav .programs-dropdown a:focus-visible{background:#e6f2ff;color:var(--pink-dark)}
.program-card-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;margin-top:20px;font-weight:700;color:var(--navy);text-decoration:underline;text-underline-offset:4px}
.program-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}.program-detail-copy{min-width:0}.program-detail h1{font-size:clamp(2.5rem,4vw,3.5rem);line-height:1.15;margin-bottom:12px}.program-detail-age{font-size:1.2rem;font-weight:700;margin-bottom:26px;color:#ffda7d}.program-detail-copy h2{font-size:1.5rem;line-height:1.4;margin-bottom:20px}.program-detail-copy>p:not(.eyebrow):not(.program-detail-age){font-size:1.05rem;line-height:1.8;margin-bottom:18px}.program-detail-copy .button{margin-top:12px}.program-detail-image{min-width:0;overflow:hidden;border-radius:28px;margin:0;background:#e6f2ff}.program-detail-image img{display:block;width:100%;height:auto}.program-focus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-block:48px 30px}.program-focus-grid h2{font-size:1.4rem}
@media(max-width:900px){.program-detail-grid{grid-template-columns:1fr;gap:30px}.program-detail-image{max-width:560px;justify-self:center}.program-focus-grid{grid-template-columns:1fr}}
@media(max-width:600px){.programs-dropdown{left:50%;transform:translateX(-50%);min-width:200px}.program-detail-image{border-radius:18px}.program-detail-copy>p:not(.eyebrow):not(.program-detail-age){font-size:1rem}}
.home-wave-section>.hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:40px;padding-block:76px}
.home-wave-section>.about-wave{height:40px}
.hero-copy{min-width:0}.hero .hero-heading h1{font-size:clamp(2rem,3.3vw,3.4rem);line-height:1.12;letter-spacing:-.025em;margin-bottom:20px}
.hero .hero-intro{display:block;padding-top:0}.hero .hero-intro>p{max-width:440px;font-size:1.05rem;line-height:1.65;margin-bottom:22px}
.hero .hero-photo{min-width:0;max-height:none;overflow:hidden;margin:0}.hero .hero-photo img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.hero::before{background-position:left center;background-size:360px auto;opacity:.055}
@media(max-width:900px){.home-wave-section>.hero{grid-template-columns:1fr;gap:28px;padding-block:64px}.hero .hero-intro>p{max-width:620px}.hero .hero-heading h1{font-size:2.5rem}.hero .hero-photo{max-width:760px;width:100%;justify-self:center}}
@media(max-width:600px){.home-wave-section>.about-wave{height:28px}.home-wave-section>.hero{padding-block:48px;gap:24px}.hero .hero-heading h1{font-size:2rem}.hero .hero-intro>p{font-size:1rem}.hero .hero-photo{overflow:visible}.hero::before{background-position:left top 35px;background-size:240px auto}}
@media(max-width:600px){.facebook-video-frame{border-radius:18px}.footer-links{margin-top:14px}.footer-branding{margin-bottom:12px}}
