@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Poppins:wght@400;500;600;700&display=swap";:root{--color-primary: #8B5CF6;--color-primary-dark: #7C3AED;--color-primary-light: #A78BFA;--color-success: #10b981;--color-success-transparent: rgba(16, 185, 129, .1);--color-error: #ef4444;--color-error-transparent: rgba(239, 68, 68, .1);--color-text: #FFFFFF;--color-text-secondary: #E0E0E0;--color-text-secondary-transparent: rgba(224, 224, 224, .1);--color-background: #0d0d14;--color-background-solid: #1A0A20;--color-background-secondary: rgb(255 255 255 / .05);--color-border: rgba(255 255 255 / .1);--color-border-focus: #8B5CF6;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--border-radius-sm: .25rem;--border-radius-md: .5rem;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .3);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .4);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .5);--font-sans: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display: "Poppins", "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--color-background);background-attachment:fixed;min-height:100vh}h1,h2,h3,h4,h5,h6{line-height:1.2;font-weight:700;color:var(--color-text);margin-bottom:var(--spacing-md);font-family:var(--font-display)}h1{font-size:clamp(2rem,5vw,3rem);letter-spacing:-.02em}h2{font-size:clamp(1.5rem,3vw,2.25rem);letter-spacing:-.01em}h3{font-size:1.25rem}p{margin-bottom:var(--spacing-md);color:var(--color-text-secondary)}a{color:var(--color-primary-light);text-decoration:underline;text-underline-offset:2px;transition:color .2s ease}a:hover{color:var(--color-primary)}a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-sm)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.container--narrow{max-width:640px}input[type=email],input[type=text],input[type=url]{width:100%;padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:1rem;font-family:inherit;background-color:#ffffff0d;color:var(--color-text);transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}input[type=email]:focus,input[type=text]:focus,input[type=url]:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px #8b5cf633;background-color:#ffffff14}input[type=email]:invalid:not(:placeholder-shown),input[type=text]:invalid:not(:placeholder-shown),input[type=url]:invalid:not(:placeholder-shown){border-color:var(--color-error)}input[type=email]::placeholder,input[type=text]::placeholder,input[type=url]::placeholder{color:var(--color-text-secondary)}button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);font-size:1rem;font-weight:600;font-family:inherit;color:#fff;background-color:var(--color-primary);border:1px solid var(--color-primary-light);border-radius:var(--radius-md);cursor:pointer;transition:background-color .2s ease,transform .1s ease,border-color .2s ease}button:hover:not(:disabled){background-color:var(--color-primary-dark);border-color:var(--color-primary)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.6;cursor:not-allowed}button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.text-center{text-align:center}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease-out}
