.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}:root{--c-primary:#C084FC;--c-accent:#4FE1C6;--c-accent-light:#7FF0DA;--gradient-primary:linear-gradient(135deg,var(--purple-medium),var(--purple-dark-gradient),var(--purple-medium));--c-bg:#0D0D0F;--c-bg-gradient:linear-gradient(180deg,#0D0D0F,#101015);--c-surface:#141418;--c-surface-alt:#1A1A1F;--c-border:#2B2B33;--c-text:#FFFFFF;--c-text-secondary:#B0B0B5;--c-text-muted:#4A4A55;--c-text-2:var(--c-text-secondary);--c-muted:var(--c-text-muted);--c-success:#39D98A;--c-danger:#FF6B6B;--c-warning:#FFC857;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:40px;--space-2xl:56px;--space-3xl:72px;--spacing-xs:var(--space-xs);--spacing-sm:var(--space-sm);--spacing-md:var(--space-md);--spacing-lg:var(--space-lg);--spacing-xl:var(--space-xl);--font-sans:"PP Neue Montreal",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial;--font-heading:var(--font-sans);--font-body:var(--font-sans);--font-size-h1:48px;--font-size-h2:36px;--font-size-h3:24px;--font-size-body:16px;--font-size-small:14px;--line-height-h1:56px;--line-height-h2:44px;--line-height-h3:32px;--line-height-body:24px;--line-height-small:16px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--shadow-soft:0 8px 24px rgba(0,0,0,0.6);--shadow-gloss:0 6px 20px rgba(192,132,252,0.12);--shadow-gloss-hover:0 8px 24px rgba(192,132,252,0.2);--shadow-card-inset:inset 0 0 0 1px rgba(255,255,255,0.05);--shadow-card-soft:0 4px 10px rgba(0,0,0,0.4);--shadow-card-combined:inset 0 0 0 1px rgba(255,255,255,0.05),0 4px 10px rgba(0,0,0,0.4);--shadow-button-3d:0 2px 12px rgba(192,132,252,0.25);--shadow-nav-active:0 0 12px rgba(192,132,252,0.3);--shadow-sm:0 1px 2px 0 rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1);--radius-sm:6px;--radius-md:12px;--radius-lg:16px;--radius-pill:9999px;--transition-fast:120ms cubic-bezier(0.22,0.9,0.31,1);--transition-base:200ms cubic-bezier(0.22,0.9,0.31,1);--transition-slow:360ms cubic-bezier(0.22,0.9,0.31,1);--purple:var(--c-primary);--purple-dark:#230e5f;--purple-medium:#885aea;--purple-dark-gradient:#4e3694;--purple-light:#bd9fff;--black:var(--c-text);--white:var(--c-text);--gray-700:var(--c-text-secondary);--gray-500:var(--c-text-muted);--gray-200:var(--c-border);--background:var(--c-bg);--ios-blue:#3b82f6;--gradient:var(--gradient-primary)}@media (prefers-color-scheme:dark){:root{--ios-blue:#007aff}}html{scroll-behavior:smooth;scroll-padding-top:80px;background:var(--c-bg)}body{max-width:100vw;overflow-x:hidden;height:100%;font-family:var(--font-body);color:var(--c-text);background:var(--c-bg-gradient);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}::selection{background-color:var(--c-primary);color:var(--c-text)}*{box-sizing:border-box;padding:0;margin:0}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--c-text);line-height:1.1}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold)}h1{font-size:var(--font-size-h1);line-height:var(--line-height-h1)}h2{font-size:var(--font-size-h2);line-height:var(--line-height-h2)}h2,h3{font-weight:var(--font-weight-semibold)}h3{font-size:var(--font-size-h3);line-height:var(--line-height-h3)}.copy,p{font-size:var(--font-size-body);line-height:var(--line-height-body);color:var(--c-text-secondary);font-weight:var(--font-weight-normal)}@media (prefers-reduced-motion:reduce){body,html{scroll-behavior:auto}*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.container{max-width:1200px;margin:0 auto;padding:0 var(--space-lg)}.glass{background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3)}.glass,.glass-dark{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.glass-dark{background:rgba(0,0,0,.8);border:1px solid rgba(255,255,255,.1)}.gradient-text{background-image:linear-gradient(154deg,var(--purple-dark),var(--purple-medium) 77%,var(--purple-light) 104%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-1.5px}@keyframes buttonGradient{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.page-container{min-height:100vh;display:flex;flex-direction:column}.page-container main{flex:1 1}