@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Space+Grotesk:wght@500;700&display=swap";:root{--blue: #23a4ed;--mint: #42d4b6;--cloud: #e9ebe7;--ink: #143348;--ink-soft: #35566d}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:Manrope,sans-serif;color:var(--ink);background:#e9eae7;overflow-x:hidden}.ambient{position:fixed;border-radius:999px;pointer-events:none;z-index:-1;filter:blur(6px)}.ambientTop{width:540px;height:540px;top:-280px;left:-160px;background:radial-gradient(circle,#23a4ed33,#23a4ed00 72%)}.ambientBottom{width:620px;height:620px;bottom:-320px;right:-180px;background:radial-gradient(circle,#42d4b633,#42d4b600 72%)}.page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:32px 20px;text-align:center}.card{max-width:480px;width:100%;animation:riseIn .6s ease-out}.brand{margin:0;font-family:Space Grotesk,sans-serif;font-weight:700;font-size:1.15rem;color:var(--blue);letter-spacing:.02em}.headline{margin:16px 0 0;font-family:Space Grotesk,sans-serif;font-size:clamp(2.2rem,5vw,3.2rem);line-height:1.1}.tagline{margin:12px 0 0;font-size:1.05rem;line-height:1.5;color:var(--ink-soft)}.signupForm{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.emailInput{flex:1;min-width:0;border:1px solid rgba(20,51,72,.2);border-radius:12px;padding:14px;font:inherit;font-size:.95rem;background:#fff}.emailInput:focus{outline:2px solid rgba(35,164,237,.25);outline-offset:1px;border-color:#23a4ed6b}.submitButton{flex-shrink:0;border:none;border-radius:12px;padding:14px 22px;font:inherit;font-weight:700;font-size:.95rem;color:#fff;background:linear-gradient(135deg,var(--blue),var(--mint));cursor:pointer}.success{margin-top:32px;font-weight:700;color:var(--blue)}.formError{margin:10px 0 0;font-size:.9rem;color:#e74c3c}button:disabled{opacity:.6;cursor:not-allowed}.footer{margin-top:auto;padding-top:40px}.footer p{margin:0;font-size:.85rem;color:var(--ink-soft)}@keyframes riseIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 480px){.signupForm{flex-direction:column}.submitButton{width:100%}}
