@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800;900&display=swap";
:root{--green:#04b88f;--green-dark:#039473;--green-glow:#04b88f59;--green-light:#e8faf5;--midnight:#002340;--midnight-light:#003a6b;--white:#fff;--off-white:#f7f8fa;--gray:#8a96a3;--gray-light:#e1e4e8;--gold:gold;--gold-dark:#e6c200;--font-heading:"Outfit", sans-serif;--font-body:"Inter", sans-serif;--shadow-sm:0 2px 8px #0023400f;--shadow-md:0 8px 24px #00234014;--shadow-lg:0 16px 48px #0023401f;--shadow-glow:0 0 30px var(--green-glow);--radius-md:12px;--radius-lg:20px;--radius-pill:50px;--transition:.35s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--midnight);background:var(--midnight);-webkit-font-smoothing:antialiased;line-height:1.65}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.15}a{color:inherit;text-decoration:none}button{font-family:var(--font-heading);cursor:pointer;background:0 0;border:none}img{max-width:100%;height:auto}@keyframes fadeInUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}@keyframes pulseGlow{0%{box-shadow:0 0 0 0 var(--green-glow)}70%{box-shadow:0 0 0 18px #04b88f00}to{box-shadow:0 0 #04b88f00}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.animate-on-scroll{opacity:0;filter:blur(5px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1),filter .8s;transform:translateY(50px)}.animate-on-scroll.is-visible{opacity:1;filter:blur();transform:translateY(0)}.stagger-1{transition-delay:.1s}.stagger-2{transition-delay:.2s}.stagger-3{transition-delay:.3s}.stagger-4{transition-delay:.4s}.stagger-5{transition-delay:.5s}.navbar{z-index:50;z-index:50;background:var(--midnight);transition:background var(--transition);border-bottom:1px solid #04b88f26;padding:0 2rem;position:sticky;top:0}.navInner{justify-content:space-between;align-items:center;max-width:1550px;height:80px;margin:0 auto;display:flex}.navLogo{width:auto;height:38px;transition:transform var(--transition)}.navLogo:hover{transform:scale(1.05)}.navLogoGroup{align-items:center;gap:.75rem;display:flex}.navBrandingDivider{background:#ffffff40;width:1px;height:32px}.navLinks{align-items:center;gap:2rem;list-style:none;display:flex}.navLink{color:#ffffffbf;font-family:var(--font-heading);letter-spacing:.3px;transition:color var(--transition);padding:.35rem 0;font-size:.95rem;font-weight:600;position:relative}.navLink:after{content:"";background:var(--green);width:0;height:2px;transition:width var(--transition);position:absolute;bottom:0;left:0}.navLink:hover,.navLink.active{color:var(--green)}.navLink:hover:after,.navLink.active:after{width:100%}.navRightGroup{flex-shrink:0;align-items:center;gap:5rem;display:flex}.navLinks{gap:1.5rem;margin:0;padding:0;list-style:none;display:flex}.navBranding{flex-shrink:0;align-items:center;gap:1.5rem;margin-right:4rem;display:flex}.navPartnerDivider{background:#ffffff26;width:1px;height:24px}.navPartners{flex-shrink:0;align-items:center;gap:1.25rem;display:flex}.navPartnerImg{filter:brightness(0)invert();opacity:.9;width:auto;height:auto;max-height:30px;transition:opacity var(--transition);flex-shrink:0}.kids2codersLogo{opacity:1;max-height:none;transform:translateY(8px);filter:brightness(0)invert()!important;width:auto!important;height:75px!important}.navPartnerImg:hover{opacity:1}.navCta{background:var(--green);border-radius:var(--radius-pill);white-space:nowrap;transition:background var(--transition), transform var(--transition);flex-shrink:0;padding:.55rem 1.4rem;font-size:.9rem;font-weight:700;color:var(--white)!important}.navCta:hover{background:var(--green-dark);transform:translateY(-2px)}.navCta:after{display:none!important}@media (max-width:1200px){.navBranding{display:none}}.hamburger{cursor:pointer;z-index:60;flex-direction:column;gap:5px;display:none}.hamburger span{background:var(--white);width:26px;height:3px;transition:var(--transition);border-radius:2px}@media (max-width:768px){.hamburger{display:flex}.navRightGroup{opacity:0;pointer-events:none;transition:opacity var(--transition);background:#002340fa;flex-direction:column;justify-content:center;gap:2.5rem;position:fixed;inset:0}.navRightGroup.open{opacity:1;pointer-events:all}.navLinks{flex-direction:column;align-items:center;gap:2rem}.navLink{font-size:1.3rem}}.pageTransition{opacity:0;animation:.8s cubic-bezier(.16,1,.3,1) forwards pageEntrance}@keyframes pageEntrance{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.pickerOverlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#002340d9;justify-content:center;align-items:center;padding:2rem;animation:.3s forwards fadeIn;display:flex;position:fixed;inset:0}.pickerModal{background:var(--white);border-radius:var(--radius-lg);text-align:center;width:100%;max-width:600px;box-shadow:var(--shadow-lg);padding:3rem;animation:.4s cubic-bezier(.16,1,.3,1) forwards scaleIn;position:relative}.pickerTitle{color:var(--midnight);margin-bottom:.5rem;font-size:2.2rem}.pickerSub{color:var(--gray);margin-bottom:2.5rem}.pickerOptions{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.pickerCard{background:var(--off-white);border:2px solid var(--gray-light);border-radius:var(--radius-md);transition:all var(--transition);flex-direction:column;align-items:center;padding:2rem 1rem;display:flex}.pickerCard:hover{border-color:var(--green);box-shadow:var(--shadow-md);transform:translateY(-5px)}.pickerEmoji{margin-bottom:1rem;font-size:2.5rem}.pickerLocation{color:var(--midnight);font-size:1.2rem;font-weight:800}.pickerDate{color:var(--green-dark);font-size:.9rem}.pickerClose{color:var(--gray);transition:color var(--transition);margin-top:2rem;font-weight:600;text-decoration:underline}.pickerClose:hover{color:var(--midnight)}@media (max-width:600px){.pickerOptions{grid-template-columns:1fr}}
