@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Playfair+Display:wght@700;800;900&display=swap";:root{--c-primary:#2563eb;--c-primary-dark:#1d4ed8;--c-primary-light:#60a5fa;--c-primary-glow:#2563eb40;--c-accent:#f59e0b;--c-accent-dark:#d97706;--c-surface:#fff;--c-surface-2:#f8fafc;--c-surface-3:#f1f5f9;--c-bg:#fff;--c-text:#0f172a;--c-text-2:#475569;--c-text-3:#94a3b8;--c-border:#e2e8f0;--c-hero-bg:linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #0f172a 100%);--c-hero-overlay:linear-gradient(135deg, #2563eb26, #9333ea1a);--ff-body:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--ff-heading:"Playfair Display", Georgia, serif;--section-py:clamp(4rem, 8vw, 7rem);--section-px:clamp(1rem, 5vw, 3rem);--max-w:1200px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 12px #00000012;--shadow-lg:0 10px 40px #0000001a;--shadow-xl:0 25px 60px #0000001f;--shadow-glow:0 0 40px var(--c-primary-glow);--ease:cubic-bezier(.4, 0, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--r-sm:8px;--r-md:12px;--r-lg:20px;--r-xl:28px;--r-full:9999px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;scroll-padding-top:80px}body{font-family:var(--ff-body);color:var(--c-text);background:var(--c-bg);line-height:1.7;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}ul{list-style:none}input,select,textarea{border:1.5px solid var(--c-border);border-radius:var(--r-sm);background:var(--c-surface);width:100%;color:var(--c-text);transition:border-color .2s var(--ease), box-shadow .2s var(--ease);outline:none;padding:.875rem 1rem;font-family:inherit;font-size:1rem}input:focus,select:focus,textarea:focus{border-color:var(--c-primary);box-shadow:0 0 0 3px var(--c-primary-glow)}textarea{resize:vertical}.btn{border-radius:var(--r-full);transition:all .3s var(--ease);white-space:nowrap;justify-content:center;align-items:center;gap:.5rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";transition:transform .5s var(--ease);background:linear-gradient(120deg,#0000 30%,#fff3 50%,#0000 70%);position:absolute;inset:0;transform:translate(-100%)}.btn:hover:after{transform:translate(100%)}.btn--sm{padding:.5rem 1.25rem;font-size:.875rem}.btn--lg{padding:.875rem 2rem;font-size:1rem}.btn--full{width:100%}.btn--primary{background:linear-gradient(135deg, var(--c-primary) 0%, var(--c-primary-dark) 100%);color:#fff;box-shadow:0 4px 14px var(--c-primary-glow)}.btn--primary:hover{box-shadow:0 8px 25px var(--c-primary-glow);transform:translateY(-2px)}.btn--outline{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:2px solid #ffffff4d}.btn--outline:hover{background:#ffffff1a;border-color:#fff9;transform:translateY(-2px)}.btn--white{color:var(--c-primary-dark);box-shadow:var(--shadow-lg);background:#fff}.btn--white:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px)scale(1.03)}.btn--accent{background:var(--accent,var(--c-primary));color:#fff}.btn--accent:hover{filter:brightness(1.15);transform:translateY(-2px)}.section__header{text-align:center;margin-bottom:3.5rem}.section__badge{background:var(--c-primary-glow);color:var(--c-primary);border-radius:var(--r-full);margin-bottom:1rem;padding:.375rem 1rem;font-size:.875rem;font-weight:600;display:inline-block}.section__title{font-family:var(--ff-heading);color:var(--c-text);margin-bottom:.75rem;font-size:clamp(2rem,4vw,3rem);font-weight:800;line-height:1.2}.section__sub{color:var(--c-text-2);max-width:600px;margin:0 auto;font-size:1.1rem}.header{z-index:1000;transition:all .3s var(--ease);padding:1rem 0;position:fixed;top:0;left:0;right:0}.header--scrolled{-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%);background:#ffffffeb;padding:.5rem 0;box-shadow:0 1px 20px #0000000f}.header__inner{max-width:var(--max-w);padding:0 var(--section-px);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.header__logo{align-items:center;gap:.6rem;text-decoration:none;display:flex}.header__logo-icon{font-size:2rem}.header__logo-name{font-family:var(--ff-heading);color:#fff;font-size:1.25rem;font-weight:800;transition:color .3s}.header--scrolled .header__logo-name{color:var(--c-text)}.header__logo-slogan{color:#fff9;text-transform:uppercase;letter-spacing:1.5px;font-size:.65rem;font-weight:500;display:block}.header--scrolled .header__logo-slogan{color:var(--c-text-3)}.header__nav{align-items:center;gap:.25rem;display:flex}.header__link{color:#fffc;border-radius:var(--r-sm);transition:all .2s var(--ease);padding:.5rem .85rem;font-size:.9rem;font-weight:500}.header__link:hover{color:#fff;background:#ffffff1a}.header--scrolled .header__link{color:var(--c-text-2)}.header--scrolled .header__link:hover{color:var(--c-primary);background:var(--c-primary-glow)}.header__cta{margin-left:.5rem}.header__burger{z-index:1001;flex-direction:column;gap:5px;padding:8px;display:none}.header__burger span{width:24px;height:2px;transition:all .3s var(--ease);background:#fff;border-radius:2px;display:block}.header--scrolled .header__burger span{background:var(--c-text)}.header__burger--open span:first-child{transform:translateY(7px)rotate(45deg)}.header__burger--open span:nth-child(2){opacity:0}.header__burger--open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.hero{background:var(--c-hero-bg);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background:var(--c-hero-overlay);z-index:1;position:absolute;inset:0}.hero:after{content:"";background:linear-gradient(to top, var(--c-bg), transparent);z-index:2;height:120px;position:absolute;bottom:0;left:0;right:0}.hero__particles{z-index:1;position:absolute;inset:0}.hero__particle{background:#60a5fa40;border-radius:50%;animation:linear infinite float-up;position:absolute;bottom:-10px}@keyframes float-up{0%{opacity:0;transform:translateY(0)scale(1)}10%{opacity:.6}90%{opacity:.3}to{opacity:0;transform:translateY(-100vh)scale(.5)}}.hero__content{z-index:3;text-align:center;padding:2rem var(--section-px);max-width:900px;position:relative}.hero__badge{border-radius:var(--r-full);color:var(--c-primary-light);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fade-in-down .8s var(--ease) both;background:#ffffff14;border:1px solid #ffffff1f;margin-bottom:1.5rem;padding:.4rem 1.2rem;font-size:.875rem;font-weight:500;display:inline-block}.hero__title{font-family:var(--ff-heading);color:#fff;animation:fade-in-down .8s var(--ease) .1s both;margin-bottom:1.5rem;font-size:clamp(2.5rem,7vw,4.5rem);font-weight:900;line-height:1.1}.hero__highlight{background:linear-gradient(135deg, var(--c-primary-light), #a78bfa, #f472b6);-webkit-text-fill-color:transparent;animation:word-swap .4s var(--ease-spring);-webkit-background-clip:text;background-clip:text;display:inline-block}@keyframes word-swap{0%{opacity:0;filter:blur(4px);transform:translateY(20px)scale(.95)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}.hero__sub{color:#ffffffa6;animation:fade-in-down .8s var(--ease) .2s both;margin-bottom:2rem;font-size:clamp(1rem,2vw,1.2rem);line-height:1.8}.hero__actions{animation:fade-in-down .8s var(--ease) .3s both;flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.hero__stats{animation:fade-in-up .8s var(--ease) .5s both;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:4rem;display:grid}.hero__stat{text-align:center;border-radius:var(--r-md);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff0a;border:1px solid #ffffff0f;padding:1rem}.hero__stat-num{color:var(--c-primary-light);margin-bottom:.25rem;font-size:1.75rem;font-weight:800;display:block}.hero__stat-label{color:#ffffff80;font-size:.8rem}.hero__scroll{z-index:3;color:#ffffff59;letter-spacing:2px;text-transform:uppercase;flex-direction:column;align-items:center;gap:.5rem;font-size:.75rem;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.hero__scroll-line{background:linear-gradient(#ffffff4d,#0000);width:1px;height:40px;animation:2s ease-in-out infinite scroll-pulse}@keyframes scroll-pulse{0%,to{opacity:.3;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.3)}}.courses{padding:var(--section-py) var(--section-px);max-width:var(--max-w);margin:0 auto}.courses__grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem;display:grid}.course-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);transition:all .4s var(--ease);opacity:0;padding:2rem;position:relative;overflow:hidden;transform:translateY(30px)}.course-card:before{content:"";background:var(--accent);height:4px;transition:transform .4s var(--ease);transform-origin:0;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.course-card:hover:before{transform:scaleX(1)}.course-card--visible{animation:card-in .6s var(--ease) both}.course-card:hover{box-shadow:var(--shadow-xl);border-color:#0000;transform:translateY(-8px)}.course-card__icon{margin-bottom:.75rem;font-size:3rem}.course-card__ages{background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent);border-radius:var(--r-full);margin-bottom:.75rem;padding:.2rem .75rem;font-size:.8rem;font-weight:600;display:inline-block}.course-card__title{color:var(--c-text);margin-bottom:.5rem;font-size:1.3rem;font-weight:700}.course-card__desc{color:var(--c-text-2);margin-bottom:1rem;font-size:.95rem}.course-card__features{margin-bottom:1.5rem}.course-card__features li{color:var(--c-text-2);padding:.25rem 0;font-size:.875rem}.why{padding:var(--section-py) var(--section-px);background:var(--c-surface-2)}.why__grid{max-width:var(--max-w);grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem;margin:0 auto;display:grid}.why-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);text-align:center;transition:all .4s var(--ease);opacity:0;padding:2rem;transform:translateY(30px)}.why-card--visible{animation:card-in .6s var(--ease) both}.why-card:hover{box-shadow:var(--shadow-lg);border-color:var(--c-primary-light);transform:translateY(-6px)}.why-card__icon{background:var(--c-primary-glow);border-radius:var(--r-md);margin-bottom:1rem;padding:1rem;font-size:2.5rem;display:inline-block}.why-card__title{margin-bottom:.5rem;font-size:1.15rem;font-weight:700}.why-card__desc{color:var(--c-text-2);font-size:.95rem}.teachers{padding:var(--section-py) var(--section-px);max-width:var(--max-w);margin:0 auto}.teachers__grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.5rem;display:grid}.teacher-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);text-align:center;transition:all .4s var(--ease);opacity:0;padding:2rem;transform:translateY(30px)}.teacher-card--visible{animation:card-in .6s var(--ease) both}.teacher-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-8px)}.teacher-card__avatar{background:linear-gradient(135deg, var(--c-primary), #7c3aed);border-radius:50%;justify-content:center;align-items:center;width:100px;height:100px;margin:0 auto 1.25rem;display:flex;position:relative}.teacher-card__avatar:after{content:"";border:2px dashed var(--c-primary-light);border-radius:50%;animation:12s linear infinite spin-slow;position:absolute;inset:-4px}@keyframes spin-slow{to{transform:rotate(360deg)}}.teacher-card__avatar-text{color:#fff;font-size:1.5rem;font-weight:800}.teacher-card__name{margin-bottom:.25rem;font-size:1.15rem;font-weight:700}.teacher-card__origin{color:var(--c-text-3);margin-bottom:.25rem;font-size:.9rem}.teacher-card__role{color:var(--c-primary);margin-bottom:1rem;font-size:.95rem;font-weight:600}.teacher-card__details{color:var(--c-text-2);flex-direction:column;gap:.4rem;font-size:.8rem;display:flex}.level-test{background:linear-gradient(135deg, var(--c-primary) 0%, #7c3aed 100%);padding:var(--section-py) var(--section-px);text-align:center;opacity:0;transition:all .8s var(--ease);position:relative;overflow:hidden;transform:scale(.98)}.level-test--visible{opacity:1;transform:scale(1)}.level-test:before{content:"";background:radial-gradient(circle,#ffffff0d 0%,#0000 60%);width:200%;height:200%;animation:25s linear infinite rotate-bg;position:absolute;top:-50%;left:-50%}@keyframes rotate-bg{to{transform:rotate(360deg)}}.level-test__content{z-index:1;max-width:650px;margin:0 auto;position:relative}.level-test__title{font-family:var(--ff-heading);color:#fff;margin-bottom:1rem;font-size:clamp(1.75rem,4vw,2.5rem)}.level-test__sub{color:#fffc;margin-bottom:2rem;font-size:1.1rem;line-height:1.7}.testimonials{padding:var(--section-py) var(--section-px);background:var(--c-surface-2);overflow:hidden}.testimonials__carousel{border-radius:var(--r-xl);opacity:0;max-width:700px;transition:all .6s var(--ease);margin:0 auto;overflow:hidden;transform:translateY(30px)}.testimonials__carousel--visible{opacity:1;transform:translateY(0)}.testimonials__track{transition:transform .6s var(--ease);display:flex}.testimonial-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-xl);text-align:center;min-width:100%;padding:3rem 2.5rem}.testimonial-card__stars{letter-spacing:4px;margin-bottom:1rem;font-size:1.25rem}.testimonial-card__text{color:var(--c-text-2);margin-bottom:1.5rem;font-size:1.15rem;font-style:italic;line-height:1.8}.testimonial-card__author{justify-content:center;align-items:center;gap:1rem;display:flex}.testimonial-card__avatar{background:linear-gradient(135deg, var(--c-primary), var(--c-accent));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.1rem;font-weight:700;display:flex}.testimonial-card__name{font-size:1rem;font-weight:700}.testimonial-card__role{color:var(--c-primary);font-size:.85rem;font-weight:500}.testimonials__dots{justify-content:center;gap:.5rem;margin-top:1.5rem;display:flex}.testimonials__dot{background:var(--c-border);width:10px;height:10px;transition:all .3s var(--ease);cursor:pointer;border:none;border-radius:50%}.testimonials__dot--active{background:var(--c-primary);transform:scale(1.3)}.contact{padding:var(--section-py) var(--section-px);max-width:var(--max-w);opacity:0;transition:all .6s var(--ease);margin:0 auto;transform:translateY(30px)}.contact--visible{opacity:1;transform:translateY(0)}.contact__wrapper{grid-template-columns:1.2fr 1fr;align-items:start;gap:3rem;display:grid}.contact__form{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-xl);box-shadow:var(--shadow-md);padding:2.5rem}.contact__success{color:#065f46;border-radius:var(--r-md);animation:fade-in-down .4s var(--ease);background:#ecfdf5;border:1px solid #a7f3d0;margin-bottom:1.5rem;padding:1rem 1.25rem;font-weight:500}.contact__field{margin-bottom:1.25rem}.contact__field label{color:var(--c-text);margin-bottom:.4rem;font-size:.875rem;font-weight:600;display:block}.contact__row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.contact__info{flex-direction:column;gap:1.25rem;display:flex}.contact__info-card{background:var(--c-surface-2);border:1px solid var(--c-border);border-radius:var(--r-lg);transition:all .3s var(--ease);padding:1.5rem}.contact__info-card:hover{background:var(--c-surface);box-shadow:var(--shadow-md);transform:translate(4px)}.contact__info-card h3{margin-bottom:.5rem;font-size:1rem}.contact__info-card p{color:var(--c-text-2);font-size:.9rem;line-height:1.6}.contact__phone{letter-spacing:1px;font-weight:800;color:var(--c-primary)!important;font-size:1.5rem!important}.contact__socials{flex-wrap:wrap;gap:.5rem;display:flex}.contact__social{background:var(--c-primary-glow);color:var(--c-primary);border-radius:var(--r-full);transition:all .3s var(--ease);padding:.4rem 1rem;font-size:.85rem;font-weight:600}.contact__social:hover{background:var(--c-primary);color:#fff}.footer{color:#ffffffbf;padding:4rem var(--section-px) 2rem;background:#0f172a}.footer__top{max-width:var(--max-w);grid-template-columns:1fr 2fr;gap:3rem;margin:0 auto 3rem;display:grid}.footer__logo{font-family:var(--ff-heading);color:#fff;margin-bottom:1rem;font-size:1.5rem;font-weight:800}.footer__tagline{color:#ffffff80;font-size:.9rem;line-height:1.7}.footer__links{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.footer__col h4{color:#fff;margin-bottom:1rem;font-size:.95rem;font-weight:700}.footer__col a{color:#ffffff80;padding:.3rem 0;font-size:.9rem;transition:all .2s;display:block}.footer__col a:hover{color:#fff;transform:translate(4px)}.footer__bottom{max-width:var(--max-w);color:#ffffff59;border-top:1px solid #ffffff14;justify-content:space-between;margin:0 auto;padding-top:2rem;font-size:.85rem;display:flex}.back-to-top{background:var(--c-primary);color:#fff;width:48px;height:48px;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transition:all .3s var(--ease);z-index:500;border-radius:50%;justify-content:center;align-items:center;font-size:1.25rem;font-weight:700;display:flex;position:fixed;bottom:2rem;right:2rem;transform:translateY(20px)}.back-to-top--visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes card-in{0%{opacity:0;transform:translateY(30px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=1024px){.hero__stats{grid-template-columns:repeat(2,1fr)}.contact__wrapper,.footer__top{grid-template-columns:1fr}}@media (width<=768px){.header__burger{display:flex}.header__nav{width:80%;max-width:320px;height:100vh;transition:right .3s var(--ease);background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:5rem 2rem 2rem;position:fixed;top:0;right:-100%;box-shadow:-10px 0 40px #00000026}.header__nav--open{right:0}.header__nav .header__link{color:var(--c-text);border-bottom:1px solid var(--c-border);border-radius:0;padding:.85rem 0;font-size:1rem}.header__cta{text-align:center;margin-top:1rem;margin-left:0}.hero__stats{grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2.5rem}.hero__stat-num{font-size:1.35rem}.hero__scroll{display:none}.courses__grid,.why__grid,.teachers__grid,.contact__row,.footer__links{grid-template-columns:1fr}.footer__bottom{text-align:center;flex-direction:column;gap:.5rem}}@media (width<=480px){.hero__title{font-size:2rem}.hero__stats{grid-template-columns:1fr 1fr}.hero__actions{flex-direction:column;align-items:center}.hero__actions .btn{width:100%}.testimonial-card{padding:2rem 1.5rem}.contact__form{padding:1.5rem}.gallery__grid{grid-template-columns:1fr}}.hero__bg-image{opacity:.15;z-index:0;background-position:50%;background-size:cover;position:absolute;inset:0}.hero__brand{color:var(--c-accent);font-size:1.1em;display:inline-block}.gallery{padding:var(--section-py) var(--section-px);max-width:var(--max-w);margin:0 auto}.gallery__grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.gallery__item{border-radius:var(--r-lg);opacity:0;box-shadow:var(--shadow-md);transition:all .4s var(--ease);position:relative;overflow:hidden;transform:translateY(30px)}.gallery__item--visible{animation:card-in .6s var(--ease) both}.gallery__item:hover{box-shadow:var(--shadow-xl);transform:translateY(-6px)scale(1.02)}.gallery__item img{object-fit:cover;width:100%;height:280px;transition:transform .5s var(--ease)}.gallery__item:hover img{transform:scale(1.08)}.gallery__caption{color:#fff;background:linear-gradient(#0000,#000000bf);padding:1rem 1.25rem;font-size:.9rem;font-weight:600;position:absolute;bottom:0;left:0;right:0}.btn--outline-white{color:#fff;border:2px solid #ffffff80}.btn--outline-white:hover{background:#ffffff26;border-color:#fff;transform:translateY(-2px)}.level-test__actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.contact__info-card--highlight{background:linear-gradient(135deg, var(--c-primary), var(--c-primary-dark));color:#fff;border-color:#0000}.contact__info-card--highlight h3{color:#fff}.contact__info-card--highlight p{color:#ffffffe6}.footer__address{color:#ffffff80;margin-top:1rem;font-size:.85rem;line-height:1.7}@media (width<=768px){.gallery__grid{grid-template-columns:1fr}.gallery__item img{height:220px}.level-test__actions{flex-direction:column;align-items:center}}@media (width<=1024px){.gallery__grid{grid-template-columns:repeat(2,1fr)}}
