:root {
  --red:#ef2f2f;
  --blue:#168bc4;
  --yellow:#f5bd16;
  --orange:#f58b18;
  --green:#38a94d;
  --pink:#ee4d8b;
  --purple:#7446bd;
  --ink:#202025;
  --muted:#62626a;
  --paper:#fff;
  --soft:#fff9ef;
  --line:#ece7df;
  --shadow:0 20px 55px rgba(45,35,24,.10);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height,92px) + 16px)}
[id]{scroll-margin-top:calc(var(--header-height,92px) + 16px)}
body{margin:0;font-family:"Trebuchet MS","Arial Rounded MT Bold",Arial,sans-serif;color:var(--ink);background:#f7f7f7;line-height:1.55}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
.page-shell{max-width:1500px;margin:0 auto;background:#fff;min-height:100vh;overflow:hidden;box-shadow:0 0 40px rgba(0,0,0,.06)}
.container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.section-pad{padding:88px 0}

.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(0,0,0,.04)}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:92px;gap:28px}
.brand{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;min-width:300px;line-height:1}
.brand-star{grid-row:1/2;grid-column:1;font-size:22px;color:var(--yellow);transform:rotate(-14deg);margin-right:4px}
.brand-name{grid-column:2;display:flex;align-items:center;font-weight:900;font-size:30px;letter-spacing:-1.4px}
.brand-name span:nth-child(1),.brand-name span:nth-child(6),.brand-name span:nth-child(10){color:var(--red)}
.brand-name span:nth-child(2),.brand-name span:nth-child(7){color:var(--orange)}
.brand-name span:nth-child(3),.brand-name span:nth-child(8){color:var(--blue)}
.brand-name span:nth-child(4),.brand-name span:nth-child(9){color:var(--green)}
.brand-name span:nth-child(11),.brand-name span:nth-child(12){color:var(--pink)}
.brand-gap{width:7px}
.brand small{grid-column:2;margin-top:7px;color:var(--red);font-weight:800;font-size:10px;letter-spacing:1.2px;text-transform:uppercase}
.main-nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:800}
.main-nav a{position:relative;padding:11px 0;white-space:nowrap}
.main-nav a:not(.nav-cta)::after{content:"";position:absolute;left:0;right:0;bottom:3px;height:3px;border-radius:10px;background:var(--red);transform:scaleX(0);transition:.25s}
.main-nav a:hover::after,.main-nav a.active::after{transform:scaleX(1)}
.main-nav a.active{color:var(--red)}
.nav-cta,.btn-primary{background:var(--red);color:#fff;border-radius:999px!important;padding:12px 18px!important;box-shadow:0 8px 18px rgba(239,47,47,.23)}
.menu-toggle{display:none;border:0;background:transparent;padding:8px;cursor:pointer}
.menu-toggle span{display:block;width:25px;height:3px;background:var(--ink);margin:4px;border-radius:4px}

.hero{position:relative;padding-top:70px}
.hero-grid{display:grid;grid-template-columns:44% 56%;align-items:center;min-height:560px;gap:20px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--red);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:1.8px;margin-bottom:14px}
.eyebrow::before{content:"";width:25px;height:3px;border-radius:3px;background:var(--yellow)}
.hero h1{font-size:clamp(54px,6vw,84px);line-height:.94;margin:0 0 28px;letter-spacing:-4px;font-weight:900}
.hero h1 .blue{color:var(--blue)}
.hero h1 .red{color:var(--red)}
.hero-copy>p{max-width:560px;font-size:18px;color:#444;margin:0 0 28px}
.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-bottom:34px}
.btn{border:0;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:900;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(239,47,47,.28)}
.btn-primary{padding:15px 24px!important}
.text-link{font-weight:900;color:var(--blue)}
.text-link span{display:inline-block;transition:.2s}.text-link:hover span{transform:translateX(5px)}
.mini-proof{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;border-top:1px dashed #ddd;padding-top:20px}
.mini-proof span{display:grid;gap:2px}
.mini-proof strong{font-size:12px;color:var(--ink)}
.mini-proof small{font-size:11px;color:#777}

.hero-art{position:relative;height:555px}
.hero-photo-wrap{position:absolute;width:69%;height:57%;right:7%;bottom:6%;border-radius:46% 46% 16% 16%;overflow:hidden;border:8px solid #fff;box-shadow:var(--shadow);z-index:5;background:#eee}
.hero-photo-wrap img{width:100%;height:100%;object-fit:cover}
.rainbow{position:absolute;right:2%;border-style:solid;border-bottom:0;border-radius:400px 400px 0 0;z-index:1}
.rainbow-1{width:82%;height:49%;bottom:30%;border-width:20px;border-color:var(--red)}
.rainbow-2{width:75%;height:44%;bottom:31.8%;right:5.5%;border-width:18px;border-color:var(--orange)}
.rainbow-3{width:68%;height:39%;bottom:33.5%;right:9%;border-width:18px;border-color:var(--yellow)}
.rainbow-4{width:61%;height:34%;bottom:35%;right:12.5%;border-width:18px;border-color:var(--blue)}
.doodle{position:absolute;font-weight:900;z-index:8;user-select:none}
.sun{left:7%;top:5%;font-size:58px;color:var(--yellow);animation:spinSlow 18s linear infinite}
.star{color:var(--pink);font-size:34px}.star-one{right:2%;top:7%;transform:rotate(14deg)}.star-two{left:13%;bottom:15%;color:var(--blue)}
.film-badge{position:absolute;right:1%;bottom:2%;z-index:8;width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--orange),var(--red));color:#fff;font-size:28px;border:7px solid #fff;box-shadow:0 12px 30px rgba(0,0,0,.18)}
.green-cloud{position:absolute;background:#7bc844;border-radius:50%;z-index:3}.cloud-a{width:150px;height:80px;left:18%;bottom:2%;box-shadow:-65px 5px 0 #5eb62f,60px 12px 0 #47a82a}.cloud-b{width:120px;height:70px;right:-3%;bottom:10%;box-shadow:50px 15px 0 #67bd37}
@keyframes spinSlow{to{transform:rotate(360deg)}}

.about{padding-top:75px}
.playful-title{display:flex;justify-content:center;align-items:center;gap:20px;margin-bottom:26px}
.playful-title h2{margin:0;display:flex;gap:9px;font-size:clamp(50px,7vw,82px);line-height:1;font-weight:900;letter-spacing:1px}
.playful-title h2 span:nth-child(1),.playful-title h2 span:nth-child(6){color:var(--red)}
.playful-title h2 span:nth-child(2),.playful-title h2 span:nth-child(7){color:var(--blue)}
.playful-title h2 span:nth-child(3){color:var(--orange)}
.playful-title h2 span:nth-child(4){color:var(--green)}
.playful-title h2 span:nth-child(5){color:var(--purple)}
.playful-title h2 span:nth-child(8){color:var(--yellow)}
.burst{font-size:30px;color:var(--yellow)}
.about-content{display:grid;grid-template-columns:180px 1fr 180px;gap:28px;align-items:center;text-align:center;max-width:980px;margin:0 auto 42px}
.about-text{font-size:16px}.about-text p{margin:8px 0}.about-text strong{color:var(--red)}
.heart-mark{font-size:46px;color:var(--red);line-height:1;margin-top:13px}
.about-side-card{min-height:150px;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:54px;border-radius:40% 55% 42% 53%;background:#fff7dd;border:2px dashed var(--yellow);transform:rotate(-2deg)}
.about-side-card span{font-size:12px;font-weight:900;margin-top:8px}.right-card{background:#eaf8ff;border-color:var(--blue);transform:rotate(2deg)}
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-top:20px}
.feature{display:grid;grid-template-columns:58px 1fr;gap:14px;align-items:flex-start;padding:18px;border-right:1px dashed #ddd}
.feature:last-child{border-right:0}.feature-icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;color:#fff;font-size:26px;font-weight:900}.purple{background:var(--purple)}.green{background:var(--green)}.blue-bg{background:var(--blue)}.yellow{background:var(--yellow)}
.feature h3{font-size:14px;color:var(--red);margin:0 0 6px}.feature p{font-size:12px;margin:0;color:#555}

.courses{position:relative;background:linear-gradient(#fff,#fffaf1 50%,#fff)}
.center-heading{text-align:center;max-width:760px;margin:0 auto 46px}.center-heading>span{display:inline-block;color:var(--red);font-size:13px;text-transform:uppercase;letter-spacing:2px;font-weight:900;margin-bottom:6px}.center-heading h2{font-size:clamp(34px,4vw,52px);margin:0 0 10px;letter-spacing:-1.5px}.center-heading p{margin:0;color:#666}
.course-row{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}
.course-card{text-align:center}.course-image{width:190px;height:190px;margin:0 auto 22px;border-radius:50%;padding:7px;background:#fff;box-shadow:0 12px 25px rgba(0,0,0,.08)}
.course-image img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.ring-blue{border:3px solid var(--blue)}.ring-pink{border:3px solid var(--pink)}.ring-orange{border:3px solid var(--orange)}.ring-green{border:3px solid var(--green)}
.course-number{font-size:10px;color:var(--red);font-weight:900;text-transform:uppercase;letter-spacing:1px}.course-card h3{font-size:20px;margin:5px 0}.course-card p{font-size:13px;color:#666;margin:0}

.mentors{background:#fbfffa;position:relative}.mentors::before,.mentors::after{content:"★";position:absolute;color:#63b63a;font-size:36px;transform:rotate(18deg)}.mentors::before{left:3%;top:80px}.mentors::after{right:4%;bottom:70px;color:var(--blue)}
.mentor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:980px;margin:0 auto}.mentor-card{text-align:center;background:#fff;border-radius:28px;padding:18px 18px 24px;box-shadow:0 14px 35px rgba(0,0,0,.07);border:1px solid #edf0ea}.mentor-photo{height:270px;border-radius:22px;overflow:hidden;margin-bottom:16px}.mentor-photo img{width:100%;height:100%;object-fit:cover}.mentor-card span{color:var(--red);font-size:11px;text-transform:uppercase;font-weight:900;letter-spacing:1.1px}.mentor-card h3{margin:5px 0 7px;font-size:21px}.mentor-card p{font-size:13px;color:#666;margin:0}

.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:260px;gap:18px}.gallery-grid figure{position:relative;margin:0;border-radius:25px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.08)}.gallery-grid .g-wide{grid-column:span 2}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-grid figure:hover img{transform:scale(1.05)}.gallery-grid figcaption{position:absolute;left:16px;bottom:14px;background:#fff;color:var(--ink);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:900}

.testimonials{background:#fff9ef}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.testimonial-grid blockquote{margin:0;background:#fff;border-radius:24px;padding:28px;box-shadow:0 12px 30px rgba(0,0,0,.06);position:relative;border-top:4px solid var(--yellow)}.quote{font-size:58px;color:var(--red);line-height:.6}.testimonial-grid p{font-size:14px}.testimonial-grid footer{display:grid}.testimonial-grid strong{font-size:13px}.testimonial-grid small{color:#888}

.enquiry{background:#fff;position:relative}.enquiry-grid{display:grid;grid-template-columns:38% 62%;gap:50px;align-items:center}.enquiry-copy h2{font-size:46px;line-height:1.05;margin:4px 0 18px}.enquiry-copy p{color:#666;font-size:16px}.contact-chips{display:grid;gap:10px;margin-top:24px}.contact-chips a{display:inline-flex;width:max-content;background:#f6f6f6;padding:10px 15px;border-radius:999px;font-weight:900;font-size:13px}.enquiry-form{background:#fff9ef;border-radius:32px;padding:30px;box-shadow:var(--shadow);border:1px solid #ffe6bd}.field-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.enquiry-form label{display:grid;gap:7px;font-size:12px;font-weight:900;margin-bottom:15px}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;border:1px solid #e1d9cc;border-radius:13px;background:#fff;padding:13px 14px;outline:none;transition:.2s}.enquiry-form input:focus,.enquiry-form select:focus,.enquiry-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(22,139,196,.12)}.enquiry-form textarea{resize:vertical}.submit-btn{width:100%;font-size:14px}.form-status{display:none;margin-bottom:14px;padding:11px 13px;border-radius:12px;font-size:13px;font-weight:800}.form-status.success{display:block;background:#e7f7e8;color:#227337}.form-status.error{display:block;background:#ffe9e9;color:#a52b2b}

.site-footer{position:relative;background:#eef9e9;padding:80px 0 0;margin-top:35px}.footer-wave{position:absolute;left:-3%;right:-3%;top:-45px;height:80px;background:#6fbe38;border-radius:50% 50% 0 0 / 70% 70% 0 0}.footer-wave::before,.footer-wave::after{content:"";position:absolute;background:#51ad2f;border-radius:50%;width:230px;height:75px;top:18px}.footer-wave::before{left:11%}.footer-wave::after{right:13%}.footer-grid{position:relative;z-index:2;background:#fff;border-radius:30px 30px 0 0;display:grid;grid-template-columns:1.2fr 1.5fr 1fr .7fr;padding:30px 34px;gap:24px}.footer-block{padding-right:18px;border-right:1px dashed #ddd}.footer-block:last-child{border:0}.footer-block h3{font-size:14px;color:var(--red);margin:0 0 10px}.footer-block a,.footer-block p{display:block;font-size:12px;margin:4px 0}.social-row{display:flex;gap:8px}.social-row a{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:#fff;font-weight:900}.social-row a:nth-child(2){background:var(--pink)}.social-row a:nth-child(3){background:var(--red)}.copyright{text-align:center;background:#fff;padding:16px;font-size:11px;color:#777;border-top:1px solid #eee}

.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}.delay-3{transition-delay:.24s}

@media (max-width:1050px){
  .main-nav{gap:16px;font-size:12px}.brand{min-width:260px}.brand-name{font-size:26px}
  .hero-grid{grid-template-columns:48% 52%}.hero-art{height:480px}.hero h1{font-size:58px}
  .feature-grid,.course-row{grid-template-columns:repeat(2,1fr)}.feature:nth-child(2){border-right:0}
  .mentor-photo{height:230px}.gallery-grid{grid-auto-rows:220px}
}

@media (max-width:820px){
  .section-pad{padding:68px 0}.container{width:min(100% - 28px,700px)}
  .nav-wrap{min-height:78px}.brand{min-width:auto}.brand-name{font-size:24px}.brand small{display:none}
  .menu-toggle{display:block;z-index:60}.main-nav{position:fixed;inset:78px 0 auto 0;background:#fff;display:flex;flex-direction:column;align-items:stretch;padding:20px 25px 28px;border-bottom:1px solid #eee;box-shadow:0 20px 35px rgba(0,0,0,.1);transform:translateY(-140%);transition:.3s;gap:4px;z-index:55}.main-nav.open{transform:translateY(0)}.main-nav a{padding:11px 8px}.nav-cta{text-align:center;margin-top:7px}
  .hero-grid{grid-template-columns:1fr;min-height:auto}.hero-copy{text-align:center}.eyebrow{justify-content:center}.hero-copy>p{margin-left:auto;margin-right:auto}.hero-actions{justify-content:center}.mini-proof{max-width:560px;margin:0 auto}.hero-art{height:470px;margin-top:12px}
  .about-content{grid-template-columns:1fr}.about-side-card{display:none}.playful-title h2{font-size:50px;gap:4px}.feature-grid{grid-template-columns:1fr 1fr}.feature{border-right:0;border-bottom:1px dashed #ddd}
  .course-row{grid-template-columns:1fr 1fr}.mentor-grid{grid-template-columns:1fr 1fr}.mentor-card:last-child{grid-column:1/-1;max-width:360px;margin:auto}
  .gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid .g-wide{grid-column:span 1}.testimonial-grid{grid-template-columns:1fr}.enquiry-grid{grid-template-columns:1fr}.enquiry-copy{text-align:center}.contact-chips{justify-items:center}.footer-grid{grid-template-columns:1fr 1fr}.footer-block{border-right:0}
}

@media (max-width:560px){
  .container{width:min(100% - 22px,520px)}.section-pad{padding:58px 0}
  .brand-name{font-size:21px}.brand-star{font-size:16px}.hero{padding-top:40px}.hero h1{font-size:47px;letter-spacing:-2.5px}.hero-copy>p{font-size:15px}.mini-proof{grid-template-columns:1fr;gap:8px}.mini-proof span{padding:7px 0;border-bottom:1px dashed #eee}.hero-art{height:360px}.sun{font-size:40px}.film-badge{width:64px;height:64px}.rainbow-1{border-width:14px}.rainbow-2,.rainbow-3,.rainbow-4{border-width:12px}.hero-photo-wrap{width:77%;height:56%;right:3%}
  .playful-title h2{font-size:39px;gap:2px}.burst{display:none}.about-text{font-size:14px}.feature-grid,.course-row,.mentor-grid{grid-template-columns:1fr}.course-image{width:210px;height:210px}.mentor-card:last-child{grid-column:auto}.mentor-photo{height:300px}
  .gallery-grid{grid-template-columns:1fr;grid-auto-rows:230px}.field-row{grid-template-columns:1fr}.enquiry-copy h2{font-size:36px}.enquiry-form{padding:21px 16px;border-radius:24px}.footer-grid{grid-template-columns:1fr;padding:24px 20px}.footer-block{padding:0 0 13px;border-bottom:1px dashed #ddd}.footer-block:last-child{border-bottom:0}
}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.sun{animation:none}}
