:root{--background:oklch(0.98 0.012 92);--foreground:oklch(0.22 0.05 286);--card:oklch(0.992 0.010 90);--card-foreground:oklch(0.22 0.05 286);--popover:oklch(0.992 0.010 90);--popover-foreground:oklch(0.22 0.05 286);--primary:oklch(0.54 0.23 293);--primary-foreground:oklch(0.985 0.01 90);--secondary:oklch(0.95 0.02 88);--secondary-foreground:oklch(0.34 0.06 286);--muted:oklch(0.93 0.02 88);--muted-foreground:oklch(0.52 0.04 282);--accent:oklch(0.96 0.018 90);--accent-foreground:oklch(0.34 0.06 286);--destructive:oklch(0.577 0.245 27.325);--border:oklch(0.86 0.03 86);--input:oklch(0.86 0.03 86);--ring:oklch(0.60 0.20 294);--radius:0.75rem;--cream-50:oklch(0.992 0.010 92);--cream-100:oklch(0.975 0.016 90);--cream-200:oklch(0.945 0.028 88);--cream-300:oklch(0.905 0.044 86);--cream-400:oklch(0.855 0.060 84);--cream-500:oklch(0.785 0.086 82);--cream-600:oklch(0.705 0.102 80);--cream-700:oklch(0.615 0.092 78);--cream-800:oklch(0.505 0.074 76);--cream-900:oklch(0.385 0.055 72);--plum-50:oklch(0.968 0.030 304);--plum-100:oklch(0.928 0.054 302);--plum-200:oklch(0.862 0.094 300);--plum-300:oklch(0.792 0.132 298);--plum-400:oklch(0.716 0.172 297);--plum-500:oklch(0.642 0.204 295);--plum-600:oklch(0.564 0.228 293);--plum-700:oklch(0.486 0.202 292);--plum-800:oklch(0.402 0.158 290);--plum-900:oklch(0.302 0.104 288);--ink-700:oklch(0.30 0.06 288);--ink-800:oklch(0.24 0.05 288);--ink-900:oklch(0.18 0.04 288);--violet:var(--plum-600);--violet-light:var(--plum-400);--violet-ultra:var(--plum-200);--indigo:var(--cream-600);--indigo-light:var(--cream-400);--sky:var(--cream-400);--sky-light:var(--cream-200);--pink:var(--cream-500);--pink-light:var(--cream-300);--amber:var(--cream-600);--emerald:var(--cream-700);--rose:var(--cream-700);--surface-1:var(--cream-50);--surface-2:var(--cream-100);--surface-3:var(--cream-200);--surface-glass:oklch(from var(--cream-50) l c h / 0.75);--glow-primary:oklch(from var(--plum-500) l c h / 0.28);--glow-pink:oklch(from var(--cream-500) l c h / 0.24);--glow-sky:oklch(from var(--cream-400) l c h / 0.24);--grid-color:oklch(0.80 0.03 285 / 0.5);--dot-color:oklch(0.75 0.04 285 / 0.6);--text-hero:clamp(3rem, 7vw, 6rem);--text-display:clamp(2rem, 4.5vw, 3.75rem);--text-headline:clamp(1.5rem, 3vw, 2.5rem);--text-title:clamp(1.1rem, 2vw, 1.5rem);--text-body:1rem;--text-small:0.875rem;--text-xs:0.75rem;--section-y:clamp(5rem, 10vw, 9rem);--container-x:clamp(1.25rem, 5vw, 6rem);--ease-spring:cubic-bezier(0.175, 0.885, 0.32, 1.275);--ease-out-quart:cubic-bezier(0.25, 1, 0.5, 1);--ease-in-out-quart:cubic-bezier(0.77, 0, 0.175, 1);--transition-fast:150ms var(--ease-out-quart);--transition-base:280ms var(--ease-out-quart);--transition-slow:500ms var(--ease-out-quart);--font-sans:'Sora','Manrope','Segoe UI',sans-serif;--font-display:'Space Grotesk','Sora',sans-serif;--font-mono:'JetBrains Mono','Fira Code',monospace}*,::after,::before{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:auto;-webkit-text-size-adjust:100%}body{background:var(--background);color:var(--foreground);font-family:var(--font-sans);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.15;letter-spacing:-.02em}p{line-height:1.7}canvas,img,svg,video{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:0 0;font-family:inherit}ol,ul{list-style:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground)}::selection{background:oklch(.52 .22 295 / .25);color:var(--foreground)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.lp-container{width:100%;max-width:1280px;margin-left:auto;margin-right:auto;padding-left:var(--container-x);padding-right:var(--container-x)}.lp-section{padding-top:var(--section-y);padding-bottom:var(--section-y);position:relative;overflow:hidden}.lp-section-sm{padding-top:calc(var(--section-y) * .55);padding-bottom:calc(var(--section-y) * .55);position:relative;overflow:hidden}.text-center{text-align:center}.absolute-fill{position:absolute;inset:0;pointer-events:none}