*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--white:#fff;--off-white:#e8e6e1;--gray-400:#9a9a9a;--gray-600:#6b6b6b;--dark:#111110;--darker:#0a0a09;--accent:#c8ff73;--accent-dim:#c8ff731f;--radius:12px;--radius-lg:20px}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%}body{background:var(--darker);min-height:100%;color:var(--white);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5}.hero{flex-direction:column;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:0;background:radial-gradient(ellipse 80% 60% at 50% -10%,#c8ff7312 0%,transparent 60%),radial-gradient(ellipse 60% 50% at 80% 80%,#648cff0d 0%,transparent 55%),var(--darker);position:absolute;inset:0}.hero-grain{opacity:.35;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");background-repeat:repeat;background-size:200px;position:absolute;inset:0}.hero-orb{filter:blur(100px);pointer-events:none;opacity:.4;border-radius:50%;position:absolute}.hero-orb--1{background:radial-gradient(circle,#c8ff7326,#0000 70%);width:600px;height:600px;animation:14s ease-in-out infinite alternate float;top:-220px;left:50%;transform:translate(-50%)}.hero-orb--2{background:radial-gradient(circle,#64a0ff1a,#0000 70%);width:400px;height:400px;animation:18s ease-in-out 2s infinite alternate float;bottom:-100px;left:-100px}.hero-orb--3{background:radial-gradient(circle,#ffc86412,#0000 70%);width:350px;height:350px;animation:16s ease-in-out 4s infinite alternate float;bottom:10%;right:-80px}@keyframes float{0%{transform:translateY(0)}to{transform:translateY(-30px)}}.nav{z-index:2;justify-content:space-between;align-items:center;padding:22px 36px;display:flex;position:relative}.nav-logo{object-fit:contain;width:auto;height:64px}.hero-content{z-index:1;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;max-width:860px;margin:0 auto;padding:0 24px;animation:.8s cubic-bezier(.16,1,.3,1) both heroIn;display:flex;position:relative}@keyframes heroIn{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}.hero-headline{letter-spacing:-.04em;color:var(--white);margin-bottom:20px;font-size:clamp(2.6rem,6.5vw,4.5rem);font-weight:800;line-height:1.04}.hero-sub{color:var(--gray-400);max-width:520px;margin-bottom:44px;font-size:clamp(1.05rem,2vw,1.3rem);font-weight:400;line-height:1.55}.hero-btn{color:var(--dark);background:var(--accent);cursor:pointer;letter-spacing:-.01em;border:none;border-radius:999px;align-items:center;gap:10px;padding:16px 36px;font-family:inherit;font-size:1.05rem;font-weight:700;transition:background .2s,transform .18s,box-shadow .2s;display:inline-flex}.hero-btn:hover{background:#d4ff90;transform:translateY(-2px);box-shadow:0 12px 40px #c8ff7340}.hero-btn:active{transform:translateY(0)}.hero-btn-arrow{font-size:1.2rem;transition:transform .2s}.hero-btn:hover .hero-btn-arrow{transform:translate(3px)}.hero-footer{z-index:1;text-align:center;color:var(--gray-600);padding:24px;font-size:.78rem;position:relative}.overlay{z-index:100;-webkit-backdrop-filter:blur(6px);background:#000000a6;justify-content:center;align-items:center;padding:24px;animation:.25s both overlayIn;display:flex;position:fixed;inset:0}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--white);width:100%;max-width:480px;color:var(--dark);border-radius:var(--radius-lg);max-height:90vh;padding:36px 32px 32px;animation:.35s cubic-bezier(.16,1,.3,1) both modalIn;position:relative;overflow-y:auto;box-shadow:0 24px 80px #00000059}@keyframes modalIn{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-close{width:32px;height:32px;color:var(--gray-600);cursor:pointer;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;font-size:1.4rem;transition:background .16s,color .16s;display:flex;position:absolute;top:16px;right:18px}.modal-close:hover{color:var(--dark);background:#f0f0f0}.modal-title{letter-spacing:-.03em;text-align:center;margin-bottom:6px;font-size:1.5rem;font-weight:800}.modal-sub{color:var(--gray-600);text-align:center;margin-bottom:24px;font-size:.92rem}.form{gap:16px;display:grid}.field{flex-direction:column;gap:5px;min-width:0;display:flex}.field--grow{flex:1}.field-label{color:var(--dark);letter-spacing:.02em;text-transform:uppercase;font-size:.78rem;font-weight:600}.field-input{border-radius:var(--radius);width:100%;color:var(--dark);background:#fafafa;border:1.5px solid #ddd;outline:none;padding:11px 14px;font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.field-input::placeholder{color:#b0b0b0}.field-input:focus{border-color:var(--dark);background:var(--white);box-shadow:0 0 0 3px #11111014}.field-row{gap:12px;display:flex}.submit-btn{background:var(--dark);width:100%;color:var(--white);cursor:pointer;letter-spacing:-.01em;border:none;border-radius:999px;margin-top:4px;padding:14px 24px;font-family:inherit;font-size:1rem;font-weight:700;transition:background .2s,transform .18s,box-shadow .2s}.submit-btn:hover:not(:disabled){background:#222;transform:translateY(-1px);box-shadow:0 8px 24px #0000002e}.submit-btn:active:not(:disabled){transform:translateY(0)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.success{text-align:center;padding:20px 0;animation:.4s cubic-bezier(.16,1,.3,1) both heroIn}.success-icon{color:#3a7d00;background:#c8ff7333;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:16px;font-size:1.5rem;display:inline-flex}.success h2{letter-spacing:-.02em;color:var(--dark);margin-bottom:6px;font-size:1.35rem;font-weight:800}.success p{color:var(--gray-600);font-size:.95rem}@media (max-width:640px){.nav{padding:16px 18px}.nav-logo{height:52px}.hero-content{padding:0 18px}.modal{border-radius:16px;padding:28px 22px 24px}.field-row{flex-direction:column;gap:16px}}
