:root{--text:#5b5b5b;--dark:#06241b;--green:#20b486;--green-soft:#73cfb3;--header:#ceeee4;--bg:#f9f9f9;--line:#a19e9e;--shadow:0 18.83px 47.08px rgba(47,50,125,.1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;font-family:"Poppins",Arial,sans-serif;color:var(--text)}img{max-width:100%;display:block}
.container{max-width:1294px;width:92%;margin:0 auto}.section{padding:88px 0;scroll-margin-top:120px}
h1,h2,h3,p{margin:0}.sub{text-align:center;color:#4a4949;font-weight:500;font-size:18px;margin:16px 0 52px}
h2{font-size:35px;font-weight:600;text-align:center;color:var(--dark)}h2 span,h1 span{color:var(--green);position:relative}
h2 span:after,h1 span:after{content:"";position:absolute;left:0;bottom:-11px;width:112%;height:24px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 24' preserveAspectRatio='none'%3E%3Cpath d='M0,13 Q50,4 100,5 Q150,6 200,16 L200,17 Q150,9 100,8 Q50,7 0,20 Z' fill='%23f8bd73'/%3E%3C/svg%3E") center/100% 100% no-repeat;border:0;border-radius:0;transform:rotate(1.5deg)}
.btn{display:inline-flex;padding:10px 24px;height:59px;align-items:center;justify-content:center;border-radius:10px;background:var(--green);color:#fff;text-decoration:none;font-size:18px;font-weight:600;transition:.25s}
.btn:hover{transform:translateY(-2px);filter:brightness(.95)}.soft{background:var(--green-soft);font-family:"Be Vietnam Pro",Arial,sans-serif;font-size:18px;font-weight:500;height:50px;padding:0 24px}

.site-header{background:var(--header);padding:6px 0;position:sticky;top:0;z-index:20}
.nav{max-width:1400px;margin:0 auto;width:100%;padding:0 24px;display:flex;align-items:center;justify-content:space-between;min-height:72px}
.nav-inner{display:flex;align-items:center;flex:1}
.brand{position:relative;flex-shrink:0;width:130px;height:130px;margin-right:40px}
.brand img{position:absolute;left:0;top:50%;width:130px;height:130px;max-width:none;object-fit:contain;transform:translateY(-50%);pointer-events:none}
.brand-icon{display:none}
.brand-mark-mobile{display:none}
.brand-text{display:none}
.main-nav{display:flex;align-items:center;gap:clamp(20px,2vw,40px);margin-left:18px;flex-wrap:nowrap}.main-nav a{text-decoration:none;color:var(--green);font-size:18px;font-weight:600;white-space:nowrap;transition:color .2s ease}.main-nav a:hover{color:#16a57a}
.nav-right{flex-shrink:0;display:flex;align-items:center;gap:clamp(20px,2vw,40px)}.nav-right p{font-size:17px;font-weight:600;color:var(--green);line-height:1.3;white-space:nowrap;font-family:"Be Vietnam Pro",Arial,sans-serif}.nav-right span{display:block;font-weight:400;margin-top:2px}

.hero{background:#f1fff8;position:relative;overflow:hidden}
.hero:after{
  content:"";
  position:absolute;
  left:-10%;
  right:-10%;
  bottom:-120px;
  height:240px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 240' preserveAspectRatio='none'%3E%3Cpath d='M0,0 C400,180 1040,180 1440,0 L1440,240 L0,240 Z' fill='%23f1fff8'/%3E%3C/svg%3E") center/100% 100% no-repeat;
}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(400px,0.8fr);gap:60px;align-items:center}
.pill{position:relative;display:inline-flex;align-items:center;justify-content:center;width:286px;height:48px;overflow:hidden;background:#e6ffdd;border:1px solid rgba(32,180,134,.35);border-radius:25px;color:#35564d;font-size:18px;font-weight:600;margin-bottom:36px;box-shadow:0 10px 24px rgba(32,180,134,.12)}
.pill:after{
  content:"";
  position:absolute;
  top:-40%;
  left:-55%;
  width:42%;
  height:180%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent);
  transform:rotate(18deg);
  animation:pill-shine 2.8s ease-in-out infinite;
}
@keyframes pill-shine{
  0%,35%{left:-55%}
  70%,100%{left:115%}
}
.hero h1{font-size:55px;line-height:1.45;font-weight:700;color:var(--text);margin-bottom:30px}
.hero h1 span{
  color:var(--green);
  position:relative;
}
.inspiring-text{
  display:inline-block;
  background:linear-gradient(90deg,var(--green) 0%,#4dd4a8 25%,var(--green) 50%,#4dd4a8 75%,var(--green) 100%);
  background-size:200% auto;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  animation:shimmer 3s ease-in-out infinite;
}
@keyframes shimmer{
  0%{background-position:200% center}
  100%{background-position:-200% center}
}
.hero h1 span:after{
  content:"";
  position:absolute;
  left:0;
  bottom:-18px;
  width:200px;
  height:24px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 24' preserveAspectRatio='none'%3E%3Cpath d='M0,13 Q50,4 100,5 Q150,6 200,16 L200,17 Q150,9 100,8 Q50,7 0,20 Z' fill='%23f8bd73'/%3E%3C/svg%3E") center/100% 100% no-repeat;
  border:0;
  border-radius:0;
  transform:rotate(1.2deg);
  transform-origin:left center;
  z-index:1;
}
.hero p{width:686px;max-width:100%;font-size:18px;font-weight:500;color:#67c1a5;margin-bottom:34px}
.hero-image{width:min(490px,100%);height:675px;margin:0;background:#20b486;border-radius:24px;overflow:hidden;justify-self:end}.hero-image img{width:100%;height:100%;object-fit:cover}

.about{background:#fff}.about-grid{display:grid;grid-template-columns:minmax(0,652px) minmax(520px,1fr);gap:56px;align-items:start}.about h2{text-align:left;margin-bottom:30px}.about h2 span:after{left:0;bottom:-11px;width:132px;height:24px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 24' preserveAspectRatio='none'%3E%3Cpath d='M0,13 Q50,4 100,5 Q150,6 200,16 L200,17 Q150,9 100,8 Q50,7 0,20 Z' fill='%23f8bd73'/%3E%3C/svg%3E") center/100% 100% no-repeat;border:0;border-radius:0;transform:rotate(1.5deg)}
.about article p{font-size:18px;line-height:32px;margin-bottom:12px}.about article strong{color:#000}.about .btn{margin-top:28px}
.vision-title,.mission-title{position:relative;display:inline;font-size:20px}.vision-desc,.mission-desc{font-size:19px;line-height:34px;display:inline}
.vision-text{margin-bottom:4px}
.about-mobile-image{display:none}
.about-gallery{
  position:relative;
  width:100%;
  max-width:780px;
  height:700px;
  padding-top:8px;
  isolation:isolate;
}
.about-gallery img{
  position:absolute;
  object-fit:cover;
  border-radius:26px;
  border:0;
  z-index:2;
  box-shadow:0 22px 45px rgba(6,36,27,.14);
  transition:transform .32s ease,box-shadow .32s ease;
}
.about-top{
  top:0;
  left:70px;
  width:500px;
  height:290px;
  transform:rotate(-2.5deg);
}
.about-main{
  position:absolute;
  top:140px;
  left:180px;
  width:560px;
  height:520px;
  z-index:3;
  transform:rotate(1.8deg);
  border-radius:26px;
  box-shadow:20px 20px 0 rgba(86,223,159,.24),0 26px 52px rgba(6,36,27,.16);
  overflow:hidden;
}
.about-main img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:26px;
  transition:opacity .3s ease,transform .4s ease;
}
.about-main::after{
  content:"";
  position:absolute;
  inset:0;
  background:url('images/kid.png') center/cover no-repeat;
  border-radius:26px;
  opacity:0;
  transition:opacity .3s ease,transform .4s ease;
  transform:rotateY(180deg);
}
.about-gallery:hover .about-main img,
.about-gallery:active .about-main img{
  opacity:0;
  transform:rotateY(180deg);
}
.about-gallery:hover .about-main::after,
.about-gallery:active .about-main::after{
  opacity:1;
  transform:rotateY(0deg);
}
/* .about-main::before{content:none} */
/* .about-gallery::after{
  content:"";
  position:absolute;
  top:242px;
  left:545px;
  width:132px;
  height:315px;
  border-radius:0 22px 22px 0;
  background:#49bbbd;
  z-index:1;
} */
.about-small{
  top:420px;
  left:40px;
  width:300px;
  height:280px;
  z-index:4;
  transform:rotate(-4deg);
  box-shadow:-14px 14px 0 rgba(16,174,185,.22),0 20px 42px rgba(6,36,27,.14);
}
.about-gallery:hover .about-top{
  transform:translateY(-8px) rotate(-1deg);
}
.about-gallery:hover .about-main{
  box-shadow:22px 22px 0 rgba(86,223,159,.3),0 30px 60px rgba(6,36,27,.18);
}
.about-gallery:hover .about-small{
  transform:translate(-6px,-5px) rotate(-2deg);
  box-shadow:-16px 16px 0 rgba(16,174,185,.28),0 26px 50px rgba(6,36,27,.16);
}

.programs{background:var(--bg)}.program-grid,.why-grid,.experts-grid{display:grid;gap:34px}
.program-grid{
  grid-template-columns:repeat(6,143px);
  justify-content:center;
  margin-bottom:120px;
}
.program-grid .program-card{
  grid-column:span 2;
}
.program-grid .program-card:nth-child(4){
  grid-column:2 / span 2;
}
.program-grid .program-card:nth-child(5){
  grid-column:4 / span 2;
}
.program-card{background:#fff;height:299px;border-radius:20px;box-shadow:var(--shadow);padding:22px 14px;text-align:center;transition:.25s}
.program-card:hover,.why-card:hover,.expert-card:hover{transform:translateY(-5px)}.program-card span{display:grid;place-items:center;width:74px;height:71px;margin:0 auto 16px;background:linear-gradient(145deg,#dffbf4,#b8f0e8);border:1px solid rgba(32,180,134,.18);border-radius:18px;font-size:0;color:#0b7d64;box-shadow:0 14px 28px rgba(32,180,134,.14)}
.program-card span:before{font-family:"Font Awesome 6 Free";font-weight:900;font-size:30px;line-height:1}
.program-card:nth-child(1) span:before{content:"\f1ae"}
.program-card:nth-child(2) span:before{content:"\f549"}
.program-card:nth-child(3) span:before{content:"\f5da"}
.program-card:nth-child(4) span:before{content:"\f501"}
.program-card:nth-child(5) span:before{content:"\f559"}
.program-card:nth-child(2) span{background:linear-gradient(145deg,#e7f6ff,#c9ecff);color:#0878b8;box-shadow:0 14px 28px rgba(8,120,184,.12)}
.program-card:nth-child(3) span{background:linear-gradient(145deg,#fff6e8,#ffe0b8);color:#c77716;box-shadow:0 14px 28px rgba(199,119,22,.12)}
.program-card:nth-child(4) span{background:linear-gradient(145deg,#eefbf0,#cdf2d4);color:#348a3f;box-shadow:0 14px 28px rgba(52,138,63,.12)}
.program-card:nth-child(5) span{background:linear-gradient(145deg,#f5f0ff,#dfd2ff);color:#6b50b6;box-shadow:0 14px 28px rgba(107,80,182,.12)}
.program-card h3{font-size:18px;font-weight:600;color:#000;min-height:56px}.program-card p{font-size:14px;color:#5b5b5b}

.why-title{margin-top:8px}.why-grid{grid-template-columns:repeat(3,280px);justify-content:center}
.why-card{height:294px;border-radius:0 24px;box-shadow:0 4px 4px 3px rgba(147,147,147,.25);padding:16px 27px;transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s ease,border-radius .35s ease;position:relative;overflow:hidden}
.why-card::before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .6s ease}
.why-card:hover{transform:translateY(-12px) scale(1.02);box-shadow:0 20px 40px rgba(0,0,0,.15);border-radius:24px}
.why-card:hover::before{left:100%}
.c1{background:#fcf7e5}.c2{background:#f0fde6}.c3{background:#e6fcfd}
.why-card strong{display:block;text-align:right;color:#75a66f;font-size:40px;font-weight:700;transition:transform .3s ease,color .3s ease}.why-card:hover strong{transform:scale(1.1) translateX(-5px);color:#4a9c42}.why-card h3{margin:20px 0 14px;font-size:19.69px;font-weight:600;color:#3c3c3c;transition:transform .3s ease}.why-card:hover h3{transform:translateX(5px)}.why-card p{font-size:15.13px;color:#000;transition:opacity .3s ease}.why-card:hover p{opacity:.8}

.experts{background:#f9f9f9}.experts-grid{grid-template-columns:repeat(3,minmax(240px,312px));justify-content:center}
.expert-card{background:#fff;border-radius:24px;box-shadow:0 3px 12px rgba(75,75,75,.08);padding:16px;text-align:center;position:relative;transition:transform .4s cubic-bezier(.175,.885,.32,1.275),box-shadow .4s ease;transform-style:preserve-3d;perspective:1000px}.expert-card:hover{transform:rotateY(8deg) rotateX(-5deg) translateY(-10px);box-shadow:0 25px 50px rgba(0,0,0,.2)}.expert-card img{height:264px;width:100%;object-fit:cover;border-radius:12px;transition:transform .5s ease,border-radius .3s ease}.expert-card:hover img{transform:scale(1.08);border-radius:20px}
.expert-card h3{font-size:20px;color:#1b1d1f;font-weight:400;margin-top:14px;position:relative;display:inline-block;transition:color .3s ease,transform .3s ease}.expert-card:hover h3{color:var(--green);transform:translateY(-3px)}.expert-card p{font-size:16px;color:#6d737a;margin-top:4px;opacity:.8;transition:opacity .3s ease,transform .3s ease}.expert-card:hover p{opacity:1;transform:translateY(2px)}

.cta-banner{background:#fff;padding:56px 0}
.cta-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:48px;
  background:#f5f5f5;
  border-radius:12px;
  padding:56px 64px;
}
.cta-content{max-width:640px}
.cta-content h2{
  font-family:"Be Vietnam Pro",sans-serif;
  font-size:clamp(28px,3.2vw,48px);
  font-weight:600;
  line-height:1.2;
  color:#06241b;
  text-align:left;
  margin-bottom:20px;
}
.cta-content h2 span{color:var(--green)}
.cta-content h2 span:after{display:none}
.cta-content p{
  font-family:"Be Vietnam Pro",sans-serif;
  font-size:18px;
  line-height:1.5;
  color:#4c4c4d;
  margin-bottom:28px;
}
.cta-btn{
  margin-top:4px;
  height:auto;
  padding:18px 24px;
  border-radius:8px;
  font-family:"Be Vietnam Pro",sans-serif;
  font-size:18px;
  white-space:nowrap;
}
.cta-portrait-bg{
  width:400px;
  height:420px;
  background:#f5f5f5;
  border-radius:20px;
  flex-shrink:0;
  overflow:hidden;
  position:relative;
}
.cta-portrait-bg img{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  object-fit:cover;
  mix-blend-mode:multiply;
}

.faq{background:#fff}.faq .container{background:#f8f8fa;padding:40px 54px}.faq h2{text-align:left}.faq h2 span:after{left:0}.faq-list{margin-top:22px}
.faq details{background:#fff;margin:16px 0;border-bottom:1px solid var(--line)}.faq summary{position:relative;list-style:none;padding:9px 15px;font-size:30px;font-weight:500;color:#000;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"▾";position:absolute;right:14px;top:16px;font-size:18px}.faq details p{padding:4px 15px 15px;font-size:16px}
.faq summary{font-size:26px;color:#1d2623}
.faq details p{font-size:18px;line-height:1.65;color:#4f5d59}

.site-footer{
  position:relative;
  background:radial-gradient(circle at 8% 0%, #1a222a 0%, #171d24 38%, #2d2f34 100%);
  color:#fff;
  padding:26px 0 30px;
  border-top:2px solid #94e4d2;
}
.footer-grid{
  display:grid;
  grid-template-columns:minmax(430px,1.4fr) 180px minmax(330px,1fr);
  gap:48px;
  align-items:start;
}
.footer-logo{
  width:74px;
  height:74px;
  object-fit:contain;
  margin-bottom:12px;
}
.footer-about p{
  font-size:12px;
  line-height:1.6;
  color:#f0f3f6;
  max-width:560px;
}
.footer-links{
  display:grid;
  gap:10px;
  padding-top:12px;
}
.footer-links a{
  font-size:18px;
  font-weight:500;
  line-height:1.06;
  text-decoration:none;
  color:#fff;
  transition:.2s color;
}
.footer-links a:hover{color:#cce6ff}
.footer-contact{
  font-style:normal;
  padding-top:10px;
}
.footer-contact h3{
  margin:0 0 8px;
  font-size:18px;
  line-height:1.02;
  font-weight:500;
}
.footer-contact p{
  margin:4px 0;
  font-size:12px;
  line-height:1.45;
  color:#fff;
}
.footer-contact .footer-cta{
  margin-top:14px;
  font-size:14px;
  line-height:1.05;
  font-weight:600;
  color:#fff;
}
.site-footer{
  background:linear-gradient(180deg,#f6fbf9 0%,#e5f7f0 45%,#0f2a24 45%,#0f2a24 100%);
  color:#17342d;
  padding:72px 0 34px;
  border-top:0;
}
.site-footer > .footer-grid{display:none}
.footer-panel{
  display:grid;
  grid-template-columns:minmax(280px,1.1fr) minmax(320px,.9fr) minmax(280px,.8fr);
  gap:44px;
  align-items:start;
  background:#fff;
  border:1px solid rgba(32,180,134,.14);
  border-radius:22px;
  padding:42px;
  box-shadow:0 28px 70px rgba(7,42,34,.14);
}
.footer-brand h2{
  margin:8px 0 14px;
  text-align:left;
  font-size:34px;
  line-height:1;
  color:#08251e;
}
.footer-brand h2:after{display:none}
.footer-brand p,.footer-demo p{
  max-width:430px;
  font-size:15px;
  line-height:1.75;
  color:#52645f;
}
.footer-logo{
  width:68px;
  height:68px;
  margin:0;
}
.footer-social{
  display:flex;
  gap:12px;
  margin-top:24px;
}
.footer-social a{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:50%;
  background:#eefaf5;
  color:#0f7f62;
  border:1px solid rgba(32,180,134,.18);
  transition:transform .2s ease,background .2s ease,color .2s ease;
}
.footer-social a:hover{
  transform:translateY(-2px);
  background:var(--green);
  color:#fff;
}
.footer-social svg{
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.footer-social path{fill:currentColor;stroke:none}
.footer-columns{
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:38px;
}
.footer-links,.footer-contact{
  display:grid;
  gap:12px;
  padding-top:4px;
}
.footer-links h3,.footer-contact h3,.footer-demo h3{
  margin:0 0 8px;
  font-size:16px;
  line-height:1.2;
  font-weight:700;
  color:#08251e;
}
.footer-links a,.footer-contact a,.footer-contact span,.footer-bottom a{
  color:#52645f;
  text-decoration:none;
  font-size:14px;
  line-height:1.35;
  transition:color .2s ease;
}
.footer-links a:hover,.footer-contact a:hover,.footer-bottom a:hover{color:var(--green)}
.footer-contact{font-style:normal}
.footer-demo{
  align-self:stretch;
  padding:26px;
  border-radius:18px;
  background:#f2fbf7;
  border:1px solid rgba(32,180,134,.14);
}
.footer-demo h3{
  font-size:24px;
  line-height:1.25;
  max-width:320px;
}
.footer-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  margin-top:22px;
  padding:12px 20px;
  border-radius:12px;
  background:var(--green);
  color:#fff;
  text-decoration:none;
  font-weight:700;
  box-shadow:0 14px 28px rgba(32,180,134,.24);
}
.footer-bottom{
  grid-column:1 / -1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding-top:26px;
  margin-top:4px;
  border-top:1px solid #e5eeeb;
}
.footer-bottom p{
  margin:0;
  color:#6c7c78;
  font-size:13px;
}
.footer-bottom div{
  display:flex;
  gap:22px;
  flex-wrap:wrap;
  padding-right:92px;
}
.call-float{display:none}

.whatsapp{
  position:fixed;
  right:44px;
  bottom:24px;
  width:72px;
  height:72px;
  background:#82d863;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  z-index:40;
  box-shadow:0 6px 18px rgba(46,125,50,.35);
  transition:transform .2s ease,box-shadow .2s ease;
}
.whatsapp:hover{transform:scale(1.05);box-shadow:0 10px 28px rgba(46,125,50,.45)}
.whatsapp[data-tooltip]::before{
  content:attr(data-tooltip);
  position:absolute;
  right:80px;
  top:50%;
  transform:translateY(-50%);
  background:#e8f5e9;
  color:#2e7d32;
  padding:8px 14px;
  border-radius:8px;
  font-size:14px;
  font-weight:500;
  white-space:nowrap;
  opacity:0;
  visibility:hidden;
  transition:opacity .25s ease,visibility .25s ease;
  box-shadow:0 4px 12px rgba(0,0,0,.1);
}
.whatsapp[data-tooltip]::after{
  content:"";
  position:absolute;
  right:72px;
  top:50%;
  transform:translateY(-50%);
  border:6px solid transparent;
  border-left-color:#e8f5e9;
  opacity:0;
  visibility:hidden;
  transition:opacity .25s ease,visibility .25s ease;
}
.whatsapp:hover[data-tooltip]::before,
.whatsapp:hover[data-tooltip]::after{
  opacity:1;
  visibility:visible;
}
.whatsapp img{
  width:48px;
  height:48px;
  object-fit:contain;
  display:block;
}

.menu-toggle{display:none;background:none;border:0;margin-left:auto}.menu-toggle span{display:block;width:28px;height:3px;background:#1a3f34;margin:5px 0}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}

@media (max-width:1400px){
  .main-nav a{font-size:17px}
  .nav-right p{font-size:16px}
  .hero h1{font-size:48px}
  .hero-image{width:min(450px,100%)}
  .brand{width:120px;height:120px}
  .brand img{width:120px;height:120px}
}

@media (max-width:1220px){
  .nav{gap:28px}.nav-right{gap:36px}
  .main-nav{gap:22px}.main-nav a,.nav-right p{font-size:18px}.soft{font-size:18px;height:52px;padding:10px 20px}
  .hero-grid,.about-grid{grid-template-columns:1fr}.hero-image{justify-self:start;width:min(560px,100%);height:auto}
  .about-gallery{width:100%;max-width:780px;height:720px}
  .about-top{left:50px;width:520px;height:300px}
  .about-main{left:160px;width:540px;height:500px}
  .program-grid{grid-template-columns:repeat(2,minmax(260px,1fr))}
  .program-grid .program-card:nth-child(4),
  .program-grid .program-card:nth-child(5){grid-column:auto}
  .why-grid{grid-template-columns:repeat(2,minmax(260px,1fr))}
  .experts-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}
  .footer-grid{grid-template-columns:1fr;gap:24px}
  .footer-links{padding-top:0}
  .footer-links a,.footer-contact h3{font-size:18px}
  .footer-contact .footer-cta{font-size:14px}
  .footer-panel{grid-template-columns:1fr;gap:34px}
  .footer-columns{grid-template-columns:repeat(2,minmax(180px,1fr))}
  .cta-inner{flex-direction:column;align-items:flex-start;padding:32px 24px}
  .cta-portrait-bg{width:min(400px,100%);height:auto;aspect-ratio:400/420;border-radius:18px}
}
@media (max-width:780px){
  .site-header{padding:8px 0}
  .nav{
    padding:0 14px;
    gap:0;
  }
  .nav-inner{
    width:100%;
    max-width:none;
    gap:14px;
    margin:0;
  }
  .brand{
    display:flex;
    align-items:center;
    gap:10px;
    width:auto;
    height:64px;
    margin-right:0;
    text-decoration:none;
  }
  .brand .brand-logo{
    display:none;
  }
  .brand-icon{
    display:block;
    width:64px;
    height:64px;
    overflow:hidden;
    border-radius:12px;
    flex-shrink:0;
  }
  .brand .brand-mark-mobile{
    display:block;
    position:static;
    width:112px;
    height:112px;
    max-width:none;
    transform:translate(-24px,-19px);
  }
  .brand-text{
    display:block;
    color:#0b3a2f;
    font-size:23px;
    line-height:1;
    font-weight:700;
    letter-spacing:0;
  }
  .menu-toggle{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:48px;
    height:48px;
    padding:0;
    border:1px solid rgba(6,36,27,.12);
    border-radius:14px;
    background:#e8fbf4;
    box-shadow:0 8px 18px rgba(6,36,27,.08);
  }
  .menu-toggle span{
    width:23px;
    height:2px;
    margin:2px 0;
    border-radius:999px;
    background:#063a2f;
  }
  .section{padding:62px 0;scroll-margin-top:80px}.main-nav{position:absolute;left:14px;right:14px;top:74px;background:#fff;border:1px solid rgba(32,180,134,.12);box-shadow:0 18px 38px rgba(6,36,27,.12);border-radius:16px;padding:16px;display:grid;gap:12px;opacity:0;pointer-events:none;transform:translateY(-8px);transition:.25s}
  .main-nav.open{opacity:1;pointer-events:auto;transform:none}.nav-right{display:none}.hero h1{font-size:38px}.pill{width:100%;max-width:286px}.program-grid,.why-grid,.experts-grid{grid-template-columns:1fr}
  .hero-grid{
    grid-template-columns:minmax(0,1fr);
  }
  .hero .container{
    width:96%;
  }
  .hero-grid article{
    min-width:0;
  }
  .hero-image{
    justify-self:center;
    width:100%;
    max-width:480px;
    height:clamp(330px,76vw,420px);
  }
  .hero-image img{
    height:100%;
    object-position:center center;
    transform:scale(1.12);
  }
  .program-grid .program-card{
    grid-column:1 / -1;
    height:auto;
    min-height:260px;
  }
  .cta-inner{padding:28px 18px;gap:24px;flex-direction:column;align-items:center;text-align:center}
  .cta-content{order:1}
  .cta-content h2{font-size:26px}
  .cta-portrait-bg{order:2;width:100%;max-width:340px;height:auto;aspect-ratio:340/360;margin:16px auto;border-radius:16px}
  .cta-btn{order:3;margin-top:16px;padding:14px 20px;font-size:16px}
  .faq .container{padding:24px 16px}.faq summary{font-size:22px}.faq details p{font-size:16px}
  .expert-farsana{object-position:center top!important}
  .whatsapp{
    width:72px;
    height:72px;
    right:12px;
    background:transparent;
    box-shadow:none;
  }
  .whatsapp:hover{
    box-shadow:none;
  }
  .whatsapp[data-tooltip]::before{
    right:80px;
    font-size:13px;
    padding:6px 12px;
  }
  .whatsapp[data-tooltip]::after{
    right:72px;
    border-width:5px;
  }
  .whatsapp img{
    display:block;
    width:72px;
    height:72px;
  }
  .call-float{
    position:fixed;
    right:16px;
    bottom:100px;
    z-index:40;
    display:grid;
    place-items:center;
    width:62px;
    height:62px;
    border-radius:50%;
    background:#d9f0ff;
    color:#0878b8;
    border:1px solid rgba(8,120,184,.16);
    box-shadow:0 10px 28px rgba(8,120,184,.22);
    text-decoration:none;
    transition:transform .2s ease,box-shadow .2s ease;
  }
  .call-float:hover{
    transform:scale(1.05);
    box-shadow:0 12px 30px rgba(8,120,184,.3);
  }
  .call-float svg{
    width:28px;
    height:28px;
    fill:currentColor;
  }
  .about-gallery{
    display:none;
  }
  .about-mobile-image{
    display:block;
    position:relative;
    width:100%;
    max-width:420px;
    aspect-ratio:577/430;
    margin:28px auto 24px;
    border-radius:20px;
    box-shadow:14px 14px 0 rgba(32,180,134,.28),0 18px 42px rgba(47,50,125,.12);
    overflow:hidden;
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
  }
  .about-mobile-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:20px;
    transition:opacity .3s ease,transform .4s ease;
  }
  .about-mobile-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:url('images/kid.png') center/cover no-repeat;
    border-radius:20px;
    opacity:0;
    transition:opacity .3s ease,transform .4s ease;
    transform:rotateY(180deg);
  }
  .about-mobile-image:active img,
  .about-mobile-image.flipped img{
    opacity:0;
    transform:rotateY(180deg);
  }
  .about-mobile-image:active::after,
  .about-mobile-image.flipped::after{
    opacity:1;
    transform:rotateY(0deg);
  }
  .site-footer{padding:44px 0 24px}
  .footer-panel{
    width:94%;
    padding:26px 20px;
    border-radius:18px;
    gap:28px;
  }
  .footer-brand h2{font-size:30px}
  .footer-brand p,.footer-demo p{font-size:14px}
  .footer-columns{grid-template-columns:1fr;gap:26px}
  .footer-demo{padding:22px}
  .footer-demo h3{font-size:22px}
  .footer-bottom{
    align-items:flex-start;
    flex-direction:column;
    gap:14px;
  }
  .footer-bottom div{padding-right:0}
}

