@import url('https://fonts.googleapis.com/css2?family=Baloo+2:wght@500;600;700;800&family=Nunito:wght@400;600;700;800&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#27304a;background:#fffdf9;font-family:'Nunito',Arial,sans-serif;line-height:1.65}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}.container{width:min(1160px,92%);margin:auto}.site-header{height:78px;position:fixed;inset:0 0 auto;z-index:50;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border-bottom:1px solid rgba(39,48,74,.06);transition:.3s}.site-header.scrolled{box-shadow:0 8px 35px rgba(47,40,80,.10)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:10px}.brand-mark{width:46px;height:46px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,var(--primary),#8f7cff);color:#fff;font-family:'Baloo 2';font-weight:800;font-size:20px;box-shadow:0 8px 20px rgba(108,99,255,.25);transform:rotate(-3deg)}.brand strong{display:block;font-family:'Baloo 2';font-size:19px;line-height:1.05}.brand small{font-size:10px;color:#7b8192}.main-nav{display:flex;align-items:center;gap:22px;font-weight:700;font-size:14px}.main-nav a{transition:.2s}.main-nav>a:not(.nav-cta):hover{color:var(--primary)}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;font-weight:800;transition:.25s}.nav-cta{background:var(--primary);color:#fff!important;padding:11px 18px;box-shadow:0 8px 20px rgba(108,99,255,.18)}.nav-toggle{display:none;border:0;background:#f1efff;width:42px;height:42px;border-radius:12px;font-size:21px;color:var(--primary)}
.hero{position:relative;height:720px;overflow:hidden;background:#ece9ff}.hero-slider,.slide{height:100%}.slide{position:absolute;inset:0;opacity:0;transform:scale(1.02);transition:opacity .8s,transform 1.6s;background:linear-gradient(120deg,#e8e4ff,#fff2d0)}.slide.active{opacity:1;transform:scale(1);z-index:2}.slide:before{content:"";position:absolute;inset:0;background-image:var(--slide-image);background-size:cover;background-position:center;opacity:.9}.slide-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(31,28,65,.76) 0%,rgba(46,38,84,.46) 44%,rgba(46,38,84,.05) 80%)}.slide:not([style*="--slide-image"]) .slide-overlay{background:radial-gradient(circle at 82% 38%,rgba(255,183,3,.42),transparent 18%),radial-gradient(circle at 70% 66%,rgba(108,99,255,.30),transparent 21%),linear-gradient(110deg,#6c63ff 0%,#887afc 48%,#ffd166 140%)}.slide-content{height:100%;display:flex;justify-content:center;flex-direction:column;position:relative;z-index:3;color:white;padding-top:60px}.slide-content>*{max-width:700px}.eyebrow,.section-kicker{display:inline-flex;width:max-content;align-items:center;gap:8px;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.eyebrow{padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.14);backdrop-filter:blur(8px)}h1,h2,h3{font-family:'Baloo 2',sans-serif;line-height:1.1;margin:0}.slide h1{font-size:clamp(48px,7vw,82px);margin:18px 0 14px}.slide p{font-size:19px;max-width:610px;margin:0 0 28px;color:#f7f4ff}.btn{padding:14px 24px;width:max-content}.btn-primary{background:var(--secondary);color:#3b2d00;box-shadow:0 12px 25px rgba(255,183,3,.28)}.btn:hover{transform:translateY(-2px)}.slider-dots{position:absolute;z-index:5;bottom:38px;left:50%;transform:translateX(-50%);display:flex;gap:9px}.dot{width:9px;height:9px;border:0;border-radius:50%;background:rgba(255,255,255,.55);padding:0;transition:.25s}.dot.active{width:28px;border-radius:999px;background:#fff}.hero-decor{position:absolute;z-index:4;color:white;opacity:.35;animation:float 5s ease-in-out infinite}.d1{right:8%;top:22%;font-size:38px}.d2{right:16%;bottom:18%;font-size:32px}.d3{left:5%;bottom:18%;font-size:28px}@keyframes float{50%{transform:translateY(-14px) rotate(8deg)}}
.quick-strip{position:relative;z-index:6;margin-top:-38px}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-radius:26px;box-shadow:0 20px 55px rgba(58,48,100,.12);overflow:hidden}.quick-grid>div{display:grid;grid-template-columns:50px 1fr;grid-template-rows:auto auto;padding:22px 24px;border-right:1px solid #f0edf8}.quick-grid>div:last-child{border:0}.quick-grid span{grid-row:1/3;font-size:30px;align-self:center}.quick-grid b{font-family:'Baloo 2';font-size:17px}.quick-grid small{color:#8a8fa1}.section{padding:105px 0}.section-kicker{color:var(--primary);margin-bottom:12px}.section-head{text-align:center;max-width:720px;margin:0 auto 46px}.section-head .section-kicker{margin-inline:auto}.section-head h2,.about-copy h2{font-size:clamp(36px,5vw,52px);color:#252b47}.section-head p{color:#757c8f;font-size:17px}.about{background:linear-gradient(180deg,#fffdf9,#fbfaff)}.about-grid{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:80px}.about-visual{position:relative;min-height:520px}.blob-card{height:500px;border-radius:48% 52% 45% 55% / 42% 45% 55% 58%;background:linear-gradient(135deg,#ffdf8b,#ffd3e2);overflow:hidden;box-shadow:0 30px 60px rgba(79,59,40,.12)}.blob-card img{width:100%;height:100%;object-fit:cover}.photo-placeholder{height:100%;display:grid;place-items:center;align-content:center;color:#6e6073}.photo-placeholder span{font-size:110px}.float-note{position:absolute;right:-30px;bottom:42px;background:white;border-radius:20px;padding:16px 20px;box-shadow:0 16px 40px rgba(70,55,120,.16);display:flex;flex-direction:column}.float-note strong{font-family:'Baloo 2';font-size:17px}.float-note span{font-size:12px;color:#85899a}.about-copy>p{font-size:17px;color:#6f7689}.welcome-card{position:relative;margin-top:28px;padding:24px 26px;background:#f2f0ff;border-radius:22px;border:1px solid #e7e2ff}.welcome-card .quote{position:absolute;right:20px;top:4px;font-family:serif;font-size:64px;color:rgba(108,99,255,.15)}.welcome-card h3{font-size:22px}.welcome-card p{margin:8px 0;color:#656b7d}.welcome-card strong{color:var(--primary)}
.programs{background:#fff9ed}.program-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.program-card{position:relative;background:#fff;border:1px solid #f1eadb;border-radius:26px;padding:28px;min-height:260px;box-shadow:0 12px 35px rgba(100,72,20,.06);transition:.3s;overflow:hidden}.program-card:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-65px;bottom:-65px;background:color-mix(in srgb,var(--primary) 12%,transparent)}.program-card:hover{transform:translateY(-8px);box-shadow:0 20px 45px rgba(100,72,20,.10)}.program-icon{width:62px;height:62px;display:grid;place-items:center;border-radius:20px;background:#f4f2ff;font-size:30px;margin-bottom:18px}.program-card h3{font-size:23px}.program-card p{color:#747a8d;font-size:14px}.card-arrow{position:absolute;right:22px;top:22px;color:var(--primary);font-weight:800}.teachers{background:#fff}.teacher-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.teacher-card{border-radius:26px;overflow:hidden;background:#fff;box-shadow:0 12px 35px rgba(43,42,72,.09);transition:.3s}.teacher-card:hover{transform:translateY(-6px)}.teacher-photo{height:290px;background:#eeeaff}.teacher-photo img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{height:100%;display:grid;place-items:center;font-size:100px;background:linear-gradient(135deg,#eeeaff,#ffe7bf)}.teacher-info{padding:21px}.teacher-info h3{font-size:21px}.teacher-info>span{color:var(--primary);font-size:13px;font-weight:800}.teacher-info p{font-size:13px;color:#7b8191}.gallery-section{background:#f7f5ff}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:14px}.gallery-item{margin:0;position:relative;border-radius:22px;overflow:hidden}.gallery-item:nth-child(1),.gallery-item:nth-child(6){grid-column:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.5s}.gallery-item:hover img{transform:scale(1.06)}.gallery-item:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(28,24,48,.78))}.gallery-item figcaption{position:absolute;z-index:2;left:18px;bottom:16px;color:white;display:flex;flex-direction:column}.gallery-item figcaption span{font-size:11px;text-transform:uppercase;letter-spacing:.12em}.gallery-item figcaption strong{font-family:'Baloo 2';font-size:18px}.news-section{background:#fff}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.news-card{overflow:hidden;border:1px solid #eceaf1;border-radius:24px;background:#fff;box-shadow:0 12px 30px rgba(44,44,72,.06)}.news-card>img,.news-img-placeholder{height:220px;width:100%;object-fit:cover}.news-img-placeholder{display:grid;place-items:center;font-size:70px;background:linear-gradient(135deg,#f0edff,#fff1c8)}.news-body{padding:23px}.news-body time{font-size:12px;color:#9196a5}.news-body h3{font-size:22px;margin:7px 0 8px}.news-body p{font-size:14px;color:#747a8b}.news-body a{font-weight:800;color:var(--primary)}.contact{padding-top:40px;background:#fff}.contact-card{border-radius:34px;background:linear-gradient(135deg,var(--primary),#8d7bff);color:white;padding:48px 54px;display:flex;align-items:center;justify-content:space-between;gap:30px;box-shadow:0 20px 60px rgba(108,99,255,.25);position:relative;overflow:hidden}.contact-card:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-100px;top:-130px;background:rgba(255,255,255,.1)}.section-kicker.light{color:#ffe89c}.contact-card h2{font-size:42px;max-width:680px}.contact-card p{max-width:620px;color:#ece9ff}.contact-list{display:flex;gap:20px;flex-wrap:wrap;font-size:13px}.btn-light{background:white;color:var(--primary);position:relative;z-index:2;white-space:nowrap}footer{background:#20243b;color:#c8cbd7;padding:90px 0 20px;margin-top:80px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:50px}.footer-brand{color:white}.footer-grid>div>p{max-width:380px}.footer-grid h4{color:#fff;font-family:'Baloo 2';font-size:18px}.footer-grid>div:nth-child(2){display:flex;flex-direction:column;gap:8px}.footer-grid a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:50px;padding-top:20px;display:flex;justify-content:space-between;font-size:12px}.reveal{opacity:0;transform:translateY(25px);transition:.65s}.reveal.visible{opacity:1;transform:none}
.article-page{padding:140px 0 60px;min-height:70vh}.article-wrap{max-width:840px}.back-link{color:var(--primary);font-weight:800}.article-wrap>time{display:block;color:#8a8fa0;margin-top:25px}.article-wrap h1{font-size:clamp(38px,6vw,62px);margin:8px 0 28px}.article-cover{width:100%;max-height:500px;object-fit:cover;border-radius:28px;margin-bottom:30px}.article-content{font-size:17px;color:#50566a;white-space:normal}
@media(max-width:980px){.main-nav{position:absolute;left:4%;right:4%;top:82px;background:#fff;border-radius:20px;box-shadow:0 18px 50px rgba(30,30,60,.14);padding:18px;flex-direction:column;align-items:stretch;gap:4px;opacity:0;visibility:hidden;transform:translateY(-10px);transition:.25s}.main-nav.open{opacity:1;visibility:visible;transform:none}.main-nav a{padding:10px 12px}.nav-toggle{display:block}.hero{height:650px}.quick-grid{grid-template-columns:repeat(2,1fr)}.about-grid{grid-template-columns:1fr;gap:35px}.about-visual{max-width:600px;margin:auto}.program-grid,.teacher-grid{grid-template-columns:repeat(2,1fr)}.news-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}.contact-card{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}}
@media(max-width:640px){.site-header{height:70px}.brand small{display:none}.brand-mark{width:40px;height:40px}.hero{height:620px}.slide-content{padding-top:50px}.slide h1{font-size:48px}.slide p{font-size:16px}.quick-strip{margin-top:-28px}.quick-grid{grid-template-columns:1fr;border-radius:20px}.quick-grid>div{padding:15px 18px;border-right:0;border-bottom:1px solid #f0edf8}.section{padding:78px 0}.about-visual{min-height:400px}.blob-card{height:390px}.float-note{right:-5px}.program-grid,.teacher-grid,.news-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:240px}.gallery-item:nth-child(1),.gallery-item:nth-child(6){grid-column:span 1}.contact-card{padding:34px 26px}.contact-card h2{font-size:34px}.footer-grid{grid-template-columns:1fr}.footer-bottom{gap:20px;flex-direction:column}.teacher-photo{height:340px}}
