@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#0b1530;--deep:#071329;--ink:#152345;--blue:#405cf5;--purple:#765bf1;--lime:#d1fc7d;--soft:#f7f9fe;--muted:#69758e;--stroke:#e5e9f4;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--soft);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif;line-height:1.65}h1,h2,h3,.brand{font-family:Manrope,system-ui,sans-serif;letter-spacing:-.055em;line-height:1.14}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid #8bb6ff;outline-offset:4px}.shell{max-width:1200px;padding:0 28px;margin:auto}.site-header{position:relative;z-index:5;background:#fff;border-bottom:1px solid #edf0f7}.topbar{display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:20px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;font-size:24px;letter-spacing:-.055em;color:#17213c}.logo{width:42px;height:42px;background:#485cf4;color:white;border-radius:15px;display:grid;place-items:center;transform:rotate(-9deg);box-shadow:0 6px 20px #4a67ee30}.logo b{transform:rotate(9deg);font-size:27px;line-height:1}.nav{display:flex;align-items:center;gap:28px}.nav a{text-decoration:none;color:#46516d;font-size:14px;font-weight:700}.nav a:hover{color:var(--blue)}.nav .nav-button{background:#152445;color:white;border-radius:12px;padding:11px 18px}.nav .nav-button:hover{color:white;background:#344d9e}.hero{background:var(--deep);overflow:hidden;position:relative;color:#fff}.hero::before{content:"";position:absolute;width:700px;height:700px;background:radial-gradient(circle,#4450c956,transparent 66%);right:-180px;top:-210px;pointer-events:none}.hero::after{content:"";position:absolute;width:400px;height:400px;background:radial-gradient(circle,#6549d135,transparent 66%);left:-220px;bottom:-240px;pointer-events:none}.hero-grid{min-height:600px;display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center;position:relative;z-index:1}.hero-copy{padding:70px 0 90px;max-width:590px}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:11px;text-transform:uppercase;letter-spacing:.19em;font-weight:800;color:#a6b8ff}.eyebrow .pip{width:9px;height:9px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px #d1fc7d25}.hero h1{font-size:clamp(43px,5.4vw,76px);margin:22px 0 18px;font-weight:800;letter-spacing:-.075em}.hero h1 em{font-style:normal;color:var(--lime)}.hero p{font-size:17px;line-height:1.85;color:#cbd5ed;max-width:495px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:47px;padding:12px 20px;border-radius:12px;text-decoration:none;font-weight:800;font-size:14px;transition:transform .15s,background .15s}.btn:hover{transform:translateY(-2px)}.btn-lime{background:var(--lime);color:#152345}.btn-outline{border:1px solid #5c6887;color:#fff}.btn-blue{background:var(--blue);color:#fff}.hero-art{position:relative;height:520px;display:grid;place-items:center}.orbit{width:min(90%,440px);aspect-ratio:1;border:1px solid #7889cf47;border-radius:50%;position:absolute}.orbit.two{width:min(68%,325px);border-style:dashed;transform:rotate(-20deg)}.circle-glow{width:260px;height:260px;border-radius:50%;background:linear-gradient(135deg,#6577ff,#7152e7);filter:drop-shadow(0 24px 70px #4a61fc55);position:absolute;display:grid;place-items:center;box-shadow:inset 0 1px 0 #ffffff88}.circle-glow span{font-family:Manrope;font-size:116px;font-weight:800;line-height:1;color:#fff;transform:rotate(-7deg)}.float{position:absolute;background:#fff;border-radius:18px;color:#172345;box-shadow:0 22px 80px #0005;padding:15px 22px;display:flex;gap:12px;align-items:center;font-weight:800;font-size:15px}.float small{display:block;font-size:11px;color:#77829a;font-weight:700}.float .sym{font-family:Georgia,serif;color:#445cf3;font-size:27px}.float.one{top:82px;left:0;transform:rotate(-7deg)}.float.two{right:0;top:156px;transform:rotate(8deg)}.float.three{bottom:74px;left:30px;transform:rotate(5deg)}.star{position:absolute;color:var(--lime);font-size:34px}.star.a{top:66px;right:75px}.star.b{bottom:68px;right:30px}.section{padding:96px 0}.section-header{max-width:650px;margin-bottom:32px}.kicker{color:#5366e4;font-size:12px;letter-spacing:.2em;font-weight:800;text-transform:uppercase}.section h2{font-size:clamp(32px,4vw,49px);margin:12px 0 15px;font-weight:800}.section-lead{color:var(--muted);font-size:17px;max-width:680px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature{background:#fff;border:1px solid var(--stroke);border-radius:24px;padding:34px 28px;box-shadow:0 9px 30px #16244b08}.feature .iconbox{width:54px;height:54px;border-radius:16px;background:#edf0ff;color:var(--blue);display:grid;place-items:center;font-size:27px;margin-bottom:24px}.feature h3{font-size:21px;letter-spacing:-.04em;margin:0 0 10px}.feature p{color:var(--muted);font-size:14px;margin:0}.learning{background:#eff3ff}.programs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.program{min-height:240px;display:flex;flex-direction:column;justify-content:space-between;border-radius:24px;padding:28px;overflow:hidden;position:relative;background:#fff;border:1px solid #dfe5f3}.program:nth-child(2){background:#e9e6ff}.program:nth-child(3){background:#e6f4eb}.program .num{font-weight:800;color:#8590a9;font-size:12px}.program h3{font-size:27px;max-width:230px;margin:16px 0}.program p{font-size:14px;color:#56617c;margin:0}.program .shape{position:absolute;font-size:105px;right:-8px;top:0;color:#6773ee22;font-weight:900}.cta{padding:65px 0;background:var(--deep);color:white}.cta-grid{display:flex;align-items:center;justify-content:space-between;gap:25px}.cta h2{font-size:37px;margin:0 0 12px}.cta p{color:#c7d4ed;margin:0}.footer{background:#fff;padding:45px 0 24px;border-top:1px solid var(--stroke)}.footer-grid{display:flex;align-items:start;justify-content:space-between;gap:35px}.footer a{color:#64708b;text-decoration:none}.footer a:hover{text-decoration:underline}.foot-links{display:flex;flex-wrap:wrap;gap:20px;font-size:13px}.copyright{margin-top:40px;padding-top:20px;border-top:1px solid var(--stroke);font-size:12px;color:#808aa1}.subhero{padding:80px 0 56px;background:var(--deep);color:#fff}.subhero h1{font-size:clamp(38px,5vw,62px);margin:12px 0 15px}.subhero p{max-width:740px;color:#cbd5ed}.content{background:#fff;max-width:850px;margin:60px auto 90px;padding:50px 58px;border:1px solid var(--stroke);border-radius:24px}.content h2{font-size:24px;margin-top:36px;letter-spacing:-.045em}.content p,.content li{color:#495671}.content a{color:#405cf5}.content ul{padding-left:24px}.notice{padding:18px 20px;border-radius:13px;background:#f1f4ff;border-left:3px solid var(--blue);color:#42516d;margin:26px 0}.contact-card{padding:30px;background:#eff3ff;border-radius:20px}.contact-card a{color:#354bea;font-weight:800}.footer .brand{color:var(--ink)}@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-copy{padding-bottom:5px}.hero-art{height:400px}.features,.programs{grid-template-columns:1fr 1fr}.nav{gap:14px}}@media(max-width:620px){.shell{padding:0 20px}.topbar{min-height:72px}.brand{font-size:20px}.logo{width:36px;height:36px}.nav>a:not(.nav-button){display:none}.nav .nav-button{font-size:12px;padding:9px 11px}.hero-grid{min-height:unset}.hero-copy{padding:62px 0 0}.hero h1{font-size:48px}.hero-art{height:325px}.circle-glow{width:190px;height:190px}.circle-glow span{font-size:83px}.orbit{width:295px}.orbit.two{width:230px}.float{padding:10px 13px;font-size:12px}.float.one{top:20px}.float.two{top:105px}.float.three{bottom:25px}.star{display:none}.section{padding:65px 0}.features,.programs{grid-template-columns:1fr}.cta-grid,.footer-grid{display:block}.cta .btn{margin-top:25px}.foot-links{margin-top:22px}.content{border-radius:0;margin:0;padding:38px 20px}.subhero{padding:60px 0 43px}}@media(prefers-reduced-motion:no-preference){.circle-glow{animation:bob 6s ease-in-out infinite}.float.one{animation:float1 6s ease-in-out infinite}@keyframes bob{50%{translate:0 -13px}}@keyframes float1{50%{translate:0 9px}}}
