:root{--primary-purple: #5347ce;--accent-blue: #4896fe;--primary-purple-hover: color-mix(in oklab, var(--primary-purple), #000 12%);--primary-purple-soft: color-mix( in srgb, var(--primary-purple) 8%, transparent );--success: #22c55e;--error: #ef4444;--bg-app: #f5f7fb;--bg-surface: #ffffff;--bg-elevated: #fcfcfd;--bg-dark: #0f172a;--border: #e6eaf2;--border-muted: #eef2f7;--text-primary: #111827;--text-secondary: #4b5563;--text-muted: #8a94a6;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--shadow-card: 0 2px 8px rgba(15, 23, 42, .04);--shadow-panel: 0 8px 24px rgba(15, 23, 42, .08);--shadow-modal: 0 20px 48px rgba(15, 23, 42, .14);--ease-out: cubic-bezier(.23, 1, .32, 1);--container: 1200px;--gutter: 24px;--edge: max( var(--gutter), calc((100vw - var(--container)) / 2 + var(--gutter)) );color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg-app: #0b0f1a;--bg-surface: #141a28;--bg-elevated: #1c2333;--border: #273049;--border-muted: #1d2436;--text-primary: #f1f5f9;--text-secondary: #adb7c8;--text-muted: #8a93a3;--shadow-card: 0 2px 8px rgba(0, 0, 0, .4);--shadow-panel: 0 8px 24px rgba(0, 0, 0, .5);--shadow-modal: 0 24px 56px rgba(0, 0, 0, .62);color-scheme:dark}}:root[data-theme=dark]{--bg-app: #0b0f1a;--bg-surface: #141a28;--bg-elevated: #1c2333;--border: #273049;--border-muted: #1d2436;--text-primary: #f1f5f9;--text-secondary: #adb7c8;--text-muted: #8a93a3;--shadow-card: 0 2px 8px rgba(0, 0, 0, .4);--shadow-panel: 0 8px 24px rgba(0, 0, 0, .5);--shadow-modal: 0 24px 56px rgba(0, 0, 0, .62);color-scheme:dark}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-block-start:80px}body{font-family:SF Pro Display,Inter,-apple-system,system-ui,sans-serif;background:var(--bg-app);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased}img,video,canvas{display:block;max-inline-size:100%}a{color:inherit;text-decoration:none}ul,ol{list-style:none}:focus-visible{outline:2px solid var(--primary-purple);outline-offset:3px;border-radius:var(--radius-sm)}h1{font-size:clamp(38px,4.6vw,58px);line-height:1.04;letter-spacing:-.035em;font-weight:700;text-wrap:balance}h2{font-size:clamp(30px,3.4vw,42px);line-height:1.12;letter-spacing:-.028em;font-weight:700;text-wrap:balance}h3{font-size:17px;font-weight:600;letter-spacing:-.01em}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;block-size:38px;padding-inline:16px;border-radius:8px;border:1px solid transparent;font:inherit;font-size:14px;font-weight:600;white-space:nowrap;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,transform .12s ease}.btn:active{transform:scale(.97)}.btn-lg{block-size:46px;padding-inline:22px;border-radius:var(--radius-md);font-size:15px}.btn-primary{background:var(--primary-purple);color:#fff}.btn-primary:hover{background:var(--primary-purple-hover)}.btn-secondary{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border)}.btn-secondary:hover{border-color:color-mix(in srgb,var(--primary-purple) 35%,var(--border))}.btn-ghost{background:none;color:var(--text-secondary)}.btn-ghost:hover{color:var(--text-primary);background:var(--primary-purple-soft)}.btn-on-dark{color:#e2e8f0;border-color:#ffffff2e}.btn-on-dark:hover{border-color:#fff6}@media(prefers-reduced-motion:reduce){.btn{transition:none}}.container{max-inline-size:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.section{display:block;padding-block:112px}@media(max-width:640px){.section{padding-block:80px}}.section-alt{background:var(--bg-surface);border-block:1px solid var(--border)}.section-head{max-inline-size:640px;margin-block-end:48px}.section-head p{margin-block-start:14px;font-size:17px;color:var(--text-secondary);text-wrap:pretty}.section-head.centered{margin-inline:auto;text-align:center}.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-block-start:32px}.dot{inline-size:8px;block-size:8px;border-radius:50%;flex-shrink:0}.dot-blue{background:var(--accent-blue)}.dot-green{background:var(--success);box-shadow:0 0 0 3px color-mix(in srgb,var(--success) 20%,transparent)}.dot-purple{background:var(--primary-purple)}.dot-red{background:var(--error)}.visually-hidden{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
