@import url('https://fonts.googleapis.com/css2?family=Fredoka:wght@500;600;700&family=Nunito:wght@400;600;700;800&display=swap');

:root{--sky:#62c6ed;--deep:#183c68;--blue:#287bc1;--yellow:#ffd85a;--pink:#ff709d;--green:#75c96d;--cream:#fffaf0;--white:#fff;--shadow:0 18px 45px rgba(31,91,127,.16);--radius:28px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--deep);background:var(--cream);font-family:Nunito,Arial,sans-serif;line-height:1.6}img{max-width:100%;display:block}a{color:inherit}.skip-link{position:absolute;left:-999px;top:8px;background:#fff;padding:10px;z-index:20}.skip-link:focus{left:8px}.site-header{position:absolute;z-index:10;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:22px clamp(20px,6vw,90px)}.brand img{width:clamp(170px,20vw,250px)}nav{display:flex;gap:30px}nav a{text-decoration:none;font-weight:800;color:#174471;text-shadow:0 1px 0 #fff}nav a:hover,nav a:focus{color:#b93367}.hero{min-height:760px;padding:150px clamp(24px,7vw,110px) 80px;display:grid;grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr);align-items:center;position:relative;overflow:hidden;background:linear-gradient(#7fd3f2 0 62%,#dff4be 62% 70%,#8bd376 70%)}.hero:after{content:"";position:absolute;inset:auto -5% -105px;height:250px;background:#63bc5b;border-radius:50% 50% 0 0/45% 45% 0 0}.hero-copy,.hero-art{position:relative;z-index:2}.hero-art{align-self:end}.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.82rem;font-weight:800;color:#2973a9;margin:0 0 10px}.hero h1,.section h2{font-family:Fredoka,Nunito,sans-serif;line-height:1.02;margin:0}.hero h1{font-size:clamp(3.4rem,7vw,6.5rem);color:#fff;text-shadow:0 5px 0 rgba(36,105,154,.22)}.hero h1 span{color:var(--yellow)}.lead{font-size:clamp(1.1rem,2vw,1.42rem);font-weight:700;max-width:580px;margin:28px 0 32px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 25px;border-radius:999px;text-decoration:none;font-weight:800;transition:transform .2s,box-shadow .2s}.button:hover,.button:focus{transform:translateY(-2px)}.button-primary{background:var(--pink);color:#fff;box-shadow:0 8px 0 #c94272}.cloud{position:absolute;width:150px;height:44px;background:rgba(255,255,255,.78);border-radius:99px}.cloud:before,.cloud:after{content:"";position:absolute;background:inherit;border-radius:50%}.cloud:before{width:66px;height:66px;left:25px;bottom:0}.cloud:after{width:85px;height:85px;right:18px;bottom:0}.cloud-one{top:120px;right:6%}.cloud-two{top:310px;left:42%;transform:scale(.65)}.section{padding:100px clamp(24px,7vw,110px)}.section-heading{text-align:center;max-width:760px;margin:0 auto 45px}.section h2{font-size:clamp(2.4rem,5vw,4rem);color:var(--deep)}.section-heading>p:last-child{font-size:1.15rem}.learning-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;max-width:1180px;margin:auto}.learning-grid .learning-card{background:#fff;text-align:center;padding:25px 10px 18px;border-radius:22px;box-shadow:var(--shadow);border-bottom:7px solid var(--yellow)}.learning-grid .learning-card:nth-child(2n){border-color:var(--pink)}.learning-grid .learning-card:nth-child(3n){border-color:var(--green)}.learning-grid span{display:grid;place-items:center;height:70px;font-family:Fredoka,sans-serif;font-size:2rem;font-weight:700;color:var(--blue)}.learning-grid h3{margin:8px 0 0;font-size:1rem}.follow{background:#fff}.social-links{display:flex;justify-content:center;gap:18px;flex-wrap:wrap}.social-links a{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;background:#f5faff;border:2px solid #daeaf5;border-radius:999px;padding:12px 22px}.social-links span{font-size:1.35rem;color:var(--pink)}.social-links a:hover,.social-links a:focus{border-color:var(--blue);transform:translateY(-2px)}.contact-card{display:flex;align-items:center;gap:16px;max-width:430px;margin:38px auto 0;padding:20px 25px;border-radius:20px;background:var(--yellow);box-shadow:var(--shadow)}.contact-card>span{font-size:2rem}.contact-card small,.contact-card a{display:block}.contact-card small{text-transform:uppercase;font-weight:800;letter-spacing:.1em}.contact-card a{font-weight:800;text-decoration:none;font-size:1.05rem}footer{text-align:center;background:#163b66;color:#fff;padding:45px 20px}footer img{margin:0 auto 20px;filter:drop-shadow(0 2px 0 rgba(255,255,255,.2))}footer p{margin:5px 0;font-size:.88rem}footer span{color:var(--pink)}
@media(max-width:900px){nav{display:none}.hero{grid-template-columns:1fr;padding-top:130px;text-align:center}.hero-copy{max-width:680px;margin:auto}.hero-art{max-width:700px;margin:35px auto 0}.lead{margin-left:auto;margin-right:auto}.learning-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:560px){.site-header{justify-content:center}.hero{min-height:700px;padding-left:18px;padding-right:18px}.hero h1{font-size:3.25rem}.section{padding:72px 18px}.learning-grid{grid-template-columns:repeat(2,1fr);gap:12px}.contact-card{padding:16px;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Final BabaBooLand artwork */
.brand img{width:clamp(90px,10vw,125px);height:auto}
.hero-art{align-self:center;border:8px solid rgba(255,255,255,.72);border-radius:36px;overflow:hidden;box-shadow:0 25px 60px rgba(20,75,115,.25);transform:rotate(1deg)}
.hero-art img{width:100%;height:auto}
footer img{width:110px;height:auto;margin:0 auto 12px}

/* Centered hero with the supplied group artwork */
.site-header{justify-content:center}
.hero{display:flex;flex-direction:column;justify-content:center;gap:30px;padding-top:120px;text-align:center}
.hero-copy{width:100%}
.hero h1{font-size:clamp(2.8rem,6vw,5.5rem)}
.hero-art{width:min(1050px,92vw);margin:0 auto;align-self:auto;transform:none}
@media(max-width:900px){.hero{padding-top:110px}.hero-art{margin:0 auto}}

/* Full artwork at its natural aspect ratio on every screen */
.hero{min-height:0;gap:0;padding:62px 0 0;background:#62c6ed}
.hero:after,.hero .cloud{display:none}
.hero h1{font-size:clamp(2.45rem,5vw,4.6rem);text-shadow:0 4px 0 rgba(36,105,154,.18)}
.hero-art{width:100%;height:auto;max-width:none;border:0;border-radius:0;box-shadow:none;overflow:hidden}
.hero-art img{width:100%;height:auto;object-fit:contain}
.about{padding-top:62px}
@media(max-width:900px){.hero{padding-top:60px}.hero-art{width:100%;height:auto}.about{padding-top:54px}}
@media(max-width:560px){.hero{padding-top:58px}.hero-art{height:auto}}

/* Clickable learning categories: two rows of four, two columns on phones. */
.learning-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;max-width:1120px}
.learning-grid .learning-card{--card-accent:#f2c94c;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:180px;padding:24px 16px;text-decoration:none;border:2px solid #e3ebf2;border-bottom:5px solid var(--card-accent);border-radius:24px;box-shadow:0 8px 20px rgba(31,91,127,.09);transition:transform .2s,box-shadow .2s,border-color .2s}
.learning-grid .learning-card:nth-child(2n){--card-accent:#f47ba5;border-color:#e3ebf2;border-bottom-color:var(--card-accent)}
.learning-grid .learning-card:nth-child(3n){--card-accent:#79c970;border-color:#e3ebf2;border-bottom-color:var(--card-accent)}
.learning-grid .learning-card span{white-space:nowrap;height:70px}
.learning-grid .learning-card h3{margin:14px 0 0;overflow-wrap:anywhere;font-size:1.1rem}
.learning-grid .learning-card:hover{transform:translateY(-3px);border-color:var(--card-accent);box-shadow:0 12px 26px rgba(31,91,127,.15)}
.learning-grid .learning-card:focus-visible{outline:3px solid var(--blue);outline-offset:5px;border-color:var(--card-accent)}
@media(max-width:600px){.learning-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.learning-grid .learning-card{min-height:155px;padding:18px 10px;border-radius:20px}}