:root{--gs-white:#fff;--gs-violet-deep:#150624;--gs-violet:#541690;--gs-red:#ff4949;--gs-orange:#ff8d29;--gs-ink:#150624;--gs-ink-80:rgba(21,6,36,.8);--gs-ink-60:rgba(21,6,36,.6);--gs-ink-40:rgba(21,6,36,.4);--gs-ink-20:rgba(21,6,36,.2);--gs-ink-10:rgba(21,6,36,.1);--gs-ink-05:rgba(21,6,36,.05);--gs-surface:#fff;--gs-surface-soft:#faf8fb;--gs-surface-mute:#f2eef4;--gs-hairline:rgba(21,6,36,.08);--gs-gradient:linear-gradient(90deg,#541690,#ff4949 55%,#ff8d29);--gs-gradient-vertical:linear-gradient(180deg,#541690,#ff4949 55%,#ff8d29);--gs-gradient-45:linear-gradient(45deg,#541690,#ff4949 55%,#ff8d29);--gs-gradient-soft:linear-gradient(90deg,rgba(84,22,144,.1),rgba(255,73,73,.1) 55%,rgba(255,141,41,.1));--fg-1:var(--gs-ink);--fg-2:var(--gs-ink-80);--fg-3:var(--gs-ink-60);--fg-4:var(--gs-ink-40);--fg-on-dark:var(--gs-white);--fg-on-gradient:var(--gs-white);--bg-1:var(--gs-white);--bg-2:var(--gs-surface-soft);--bg-3:var(--gs-surface-mute);--bg-dark:var(--gs-violet-deep);--accent:var(--gs-red);--accent-warm:var(--gs-orange);--accent-cool:var(--gs-violet);--border:var(--gs-hairline);--border-strong:var(--gs-ink-20);--font-sans:var(--font-montserrat),"Montserrat",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-display:var(--font-sans);--font-body:var(--font-sans);--font-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--fs-nav:14px;--fs-body:16px;--fs-lead:18px;--fs-h4:20px;--fs-h3:24px;--fs-h2:30px;--fs-h1:40px;--fs-display:64px;--fs-mega:88px;--lh-tight:1.10;--lh-snug:1.25;--lh-normal:1.45;--lh-loose:1.65;--tracking-tight:-0.01em;--tracking-normal:0;--tracking-wide:0.04em;--tracking-caps:0.12em;--space-1:3px;--space-2:6px;--space-3:9px;--space-4:12px;--space-5:18px;--space-6:24px;--space-7:36px;--space-8:48px;--space-9:72px;--space-10:96px;--space-11:120px;--radius-xs:3px;--radius-sm:6px;--radius-md:9px;--radius-lg:12px;--radius-xl:15px;--radius-2xl:18px;--radius-3xl:21px;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(21,6,36,.06),0 1px 1px rgba(21,6,36,.04);--shadow-md:0 6px 18px rgba(21,6,36,.08),0 2px 4px rgba(21,6,36,.04);--shadow-lg:0 18px 40px rgba(21,6,36,.12),0 4px 10px rgba(21,6,36,.06);--shadow-glow:0 10px 30px rgba(255,73,73,.25);--ease-out:cubic-bezier(0.22,1,0.36,1);--ease-in-out:cubic-bezier(0.65,0,0.35,1);--dur-fast:140ms;--dur-base:220ms;--dur-slow:420ms}.dark{--gs-surface:#150624;--gs-surface-soft:#1e0a33;--gs-surface-mute:#2a1247;--gs-hairline:hsla(0,0%,100%,.1);--fg-1:#fff;--fg-2:hsla(0,0%,100%,.8);--fg-3:hsla(0,0%,100%,.62);--fg-4:hsla(0,0%,100%,.46);--bg-1:var(--gs-surface);--bg-2:var(--gs-surface-soft);--bg-3:var(--gs-surface-mute);--bg-dark:#0e0419;--border:hsla(0,0%,100%,.1);--border-strong:hsla(0,0%,100%,.22);--shadow-sm:0 1px 2px rgba(0,0,0,.4),0 1px 1px rgba(0,0,0,.3);--shadow-md:0 6px 18px rgba(0,0,0,.45),0 2px 4px rgba(0,0,0,.3);--shadow-lg:0 18px 40px rgba(0,0,0,.55),0 4px 10px rgba(0,0,0,.35)}.gs-display{font-size:var(--fs-display)}.gs-display,.gs-h1{font-family:var(--font-display);font-weight:var(--weight-bold);line-height:var(--lh-tight);letter-spacing:var(--tracking-tight);color:var(--fg-1)}.gs-h1{font-size:var(--fs-h1)}.gs-h2{font-weight:var(--weight-regular);font-size:var(--fs-h2)}.gs-h2,.gs-h3{font-family:var(--font-display);line-height:var(--lh-snug);color:var(--fg-1)}.gs-h3{font-weight:var(--weight-bold);font-size:var(--fs-h3)}.gs-h4{font-family:var(--font-display);font-weight:var(--weight-semibold);font-size:var(--fs-h4);line-height:var(--lh-snug);color:var(--fg-1)}.gs-lead{font-size:var(--fs-lead)}.gs-body,.gs-lead{line-height:var(--lh-loose);color:var(--fg-2);font-weight:var(--weight-regular)}.gs-body{font-size:var(--fs-body)}.gs-caption{font-size:13px;line-height:var(--lh-normal);color:var(--fg-3);font-weight:var(--weight-regular)}.gs-nav{font-size:var(--fs-nav);color:var(--fg-1)}.gs-eyebrow,.gs-nav{font-weight:var(--weight-semibold);line-height:1}.gs-eyebrow{font-size:12px;letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--fg-3)}.gs-gradient-text{background:var(--gs-gradient);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}