@import"https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600;9..144,700&family=IBM+Plex+Mono:wght@400;500;600&family=Instrument+Serif:ital@0;1&display=swap";@import"https://api.fontshare.com/v2/css?f[]=switzer@400,500,600,700&display=swap";:root{--paper: oklch(96.5% .02 295);--paper-2: oklch(92% .028 290);--paper-3: oklch(86% .035 288);--vellum: oklch(98.5% .014 300);--ink: oklch(22% .04 285);--ink-soft: oklch(40% .05 285);--ink-faint: oklch(60% .04 290);--ink-line: oklch(72% .04 292);--indigo: oklch(44% .18 285);--indigo-deep: oklch(30% .16 285);--indigo-soft: oklch(84% .07 290);--gold: oklch(74% .13 80);--gold-deep: oklch(58% .14 70);--sage: oklch(70% .045 130);--sage-deep: oklch(48% .06 135);--rust: oklch(58% .15 35);--rust-deep: oklch(42% .14 35);--bg: var(--paper);--bg-card: var(--vellum);--bg-sunken: var(--paper-2);--bg-deep: var(--paper-3);--fg: var(--ink);--fg-soft: var(--ink-soft);--fg-faint: var(--ink-faint);--border: var(--ink-line);--border-strong:var(--ink-soft);--accent: var(--indigo);--accent-hover: var(--indigo-deep);--accent-soft: var(--indigo-soft);--emphasis: var(--gold);--emphasis-deep:var(--gold-deep);--success: var(--sage-deep);--danger: var(--rust);--shadow-color: var(--ink);--font-display: "Fraunces", "Times New Roman", serif;--font-sans: "Switzer", -apple-system, "Helvetica Neue", sans-serif;--font-mono: "IBM Plex Mono", "SF Mono", Menlo, monospace;--font-italic: "Instrument Serif", "Iowan Old Style", serif;--t-xs: 12px;--t-sm: 14px;--t-base: 16px;--t-md: 18px;--t-lg: 22px;--t-xl: 28px;--t-2xl: 36px;--t-3xl: 48px;--t-4xl: 64px;--t-5xl: 88px;--t-6xl: 120px;--lh-tight: 1.05;--lh-snug: 1.15;--lh-normal: 1.4;--lh-loose: 1.6;--ls-tight: -.02em;--ls-snug: -.01em;--ls-normal: 0;--ls-loose: .04em;--ls-wide: .12em;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 64px;--s-9: 96px;--s-10: 144px;--r-0: 0;--r-1: 2px;--r-2: 4px;--r-3: 8px;--r-pill: 999px;--shadow-hard: 3px 3px 0 0 var(--shadow-color);--shadow-hard-sm: 2px 2px 0 0 var(--shadow-color);--shadow-hard-lg: 6px 6px 0 0 var(--shadow-color);--shadow-soft: 0 8px 24px -8px oklch(22% .04 285 / .18);--shadow-float: 0 18px 48px -12px oklch(22% .04 285 / .28);--ease-out: cubic-bezier(.2, .7, .2, 1);--ease-snap: cubic-bezier(.4, 0, .1, 1);--dur-fast: .12s;--dur-base: .2s;--dur-slow: .36s;color-scheme:light}[data-theme=dark]{--paper: oklch(17% .03 285);--paper-2: oklch(22% .038 285);--paper-3: oklch(28% .045 285);--vellum: oklch(13% .025 285);--ink: oklch(94% .025 295);--ink-soft: oklch(80% .03 295);--ink-faint:oklch(64% .03 290);--ink-line: oklch(42% .045 285);--indigo: oklch(78% .16 290);--indigo-deep: oklch(88% .1 290);--indigo-soft: oklch(38% .12 285);--gold: oklch(82% .13 80);--gold-deep: oklch(72% .13 75);--sage: oklch(70% .05 130);--sage-deep: oklch(78% .06 130);--rust: oklch(70% .14 35);--rust-deep: oklch(58% .14 35);--bg: var(--paper);--bg-card: var(--paper-2);--bg-sunken: var(--vellum);--bg-deep: var(--paper-3);--fg: var(--ink);--fg-soft: var(--ink-soft);--fg-faint: var(--ink-faint);--border: var(--ink-line);--border-strong: var(--ink-soft);--accent: var(--indigo);--accent-hover: var(--indigo-deep);--accent-soft: var(--indigo-soft);--emphasis: var(--gold);--emphasis-deep: var(--gold-deep);--success: var(--sage-deep);--danger: var(--rust);--shadow-color: var(--ink);--shadow-soft: 0 8px 24px -8px oklch(8% .02 285 / .55);--shadow-float: 0 18px 48px -12px oklch(8% .02 285 / .7);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}html{background:var(--bg)}body{background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:var(--t-base);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}#root{min-height:100vh;display:flex;flex-direction:column}html,body{transition:background-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out)}::selection{background:color-mix(in oklch,var(--accent) 65%,transparent);color:var(--vellum)}[data-theme=dark] ::selection{background:color-mix(in oklch,var(--accent) 50%,transparent);color:var(--paper)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--r-1)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.fm-display{font-family:var(--font-display);font-variation-settings:"opsz" 144;font-weight:500;line-height:var(--lh-tight);letter-spacing:var(--ls-tight)}.fm-eyebrow{font-family:var(--font-mono);font-size:var(--t-xs);font-weight:500;letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--fg-faint);display:inline-flex;align-items:center;gap:var(--s-2)}.fm-eyebrow .sig{width:12px;height:12px;flex-shrink:0}.fm-eyebrow .sig img{width:100%;height:100%}[data-theme=dark] .fm-eyebrow .sig img,[data-theme=dark] .invert-on-dark{filter:invert(1) hue-rotate(180deg) brightness(1.05)}.fm-italic{font-family:var(--font-italic);font-style:italic;font-weight:400}.fm-mono{font-family:var(--font-mono);font-size:.95em}a{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}a:hover{color:var(--accent-hover);border-bottom-color:currentColor}.fm-btn{font-family:var(--font-sans);font-weight:600;font-size:var(--t-sm);letter-spacing:0;border:1px solid var(--fg);border-radius:var(--r-2);padding:10px 18px;cursor:pointer;display:inline-flex;align-items:center;gap:var(--s-2);text-decoration:none;transition:box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out);background:var(--bg-card);color:var(--fg);border-bottom-color:var(--fg)}.fm-btn:hover{box-shadow:var(--shadow-hard);background:var(--bg-sunken);border-bottom-color:var(--fg)}.fm-btn:active{transform:translate(2px,2px);box-shadow:none}.fm-btn-primary{background:var(--accent);color:var(--vellum);border-color:var(--fg)}[data-theme=dark] .fm-btn-primary{background:var(--accent);color:var(--paper)}.fm-btn-primary:hover{background:var(--accent-hover);color:var(--vellum)}[data-theme=dark] .fm-btn-primary:hover{color:var(--paper)}.fm-btn-gold{background:var(--emphasis);color:var(--ink)}.fm-btn-gold:hover{background:var(--emphasis-deep);color:var(--vellum)}.fm-rule{display:flex;align-items:center;gap:var(--s-4);margin:0}.fm-rule .line{flex:1;height:1px;background:var(--border)}.fm-rule .sig{width:14px;height:14px;opacity:.7}html,body,#root{height:100%;height:100dvh;overflow:hidden}.desktop{position:relative;width:100%;height:100%;display:flex;flex-direction:column;background:radial-gradient(ellipse 70% 55% at 88% 0%,color-mix(in oklch,var(--accent-soft) 40%,transparent),transparent 60%),radial-gradient(ellipse 65% 45% at 8% 105%,color-mix(in oklch,var(--accent) 12%,transparent),transparent 55%),var(--bg);overflow:hidden;isolation:isolate}[data-theme=dark] .desktop{background:radial-gradient(ellipse 70% 55% at 88% 0%,color-mix(in oklch,var(--accent-soft) 50%,transparent),transparent 60%),radial-gradient(ellipse 65% 45% at 8% 105%,color-mix(in oklch,var(--accent) 18%,transparent),transparent 55%),var(--bg)}.desktop:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle at 1px 1px,color-mix(in oklch,var(--accent) 50%,var(--border)) .7px,transparent .7px);background-size:22px 22px;opacity:.4;pointer-events:none;z-index:0}.desktop:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:url(/grain.svg);background-size:256px;opacity:.045;pointer-events:none;mix-blend-mode:multiply;z-index:0}[data-theme=dark] .desktop:after{mix-blend-mode:screen;opacity:.06}.menubar{position:relative;z-index:50;display:flex;align-items:center;gap:var(--s-5);padding:0 var(--s-5);height:36px;flex-shrink:0;background:color-mix(in oklch,var(--bg-card) 86%,transparent);border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:var(--t-xs);letter-spacing:.04em;color:var(--fg-soft);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.menubar .lockup{display:inline-flex;align-items:center;gap:var(--s-2);font-family:var(--font-display);font-variation-settings:"opsz" 144;font-size:16px;font-weight:500;letter-spacing:-.01em;color:var(--fg);text-decoration:none;border:none;padding-right:var(--s-3);border-right:1px solid var(--border)}.menubar .lockup .mark{width:18px;height:18px}.menubar .menus{display:flex;gap:var(--s-1)}.menubar .menus button{font-family:inherit;font-size:inherit;letter-spacing:inherit;color:var(--fg-soft);background:transparent;border:0;padding:4px 8px;border-radius:var(--r-2);cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.menubar .menus button:hover,.menubar .menus button[data-active=true]{background:var(--bg-sunken);color:var(--fg)}.menubar .spacer{flex:1}.menubar .right{display:flex;align-items:center;gap:var(--s-4)}.menubar .clock{font-variant-numeric:tabular-nums;letter-spacing:.05em}@media (max-width: 640px){.menubar .clock,.menubar .menus{display:none}.menubar{gap:var(--s-3);padding:0 var(--s-3)}}.theme-toggle{background:transparent;border:1px solid var(--border);color:var(--fg-soft);padding:3px 9px;border-radius:var(--r-pill);cursor:pointer;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;transition:all var(--dur-fast) var(--ease-out);display:inline-flex;align-items:center;gap:6px}.theme-toggle:hover{background:var(--bg-sunken);color:var(--fg);border-color:var(--border-strong)}.desktop-icons{position:absolute;top:var(--s-4);right:var(--s-4);z-index:0;display:flex;flex-direction:column;gap:var(--s-3);pointer-events:none}.desktop-icon{pointer-events:auto;background:transparent;border:0;display:flex;flex-direction:column;align-items:center;gap:6px;padding:6px 6px 8px;cursor:pointer;border-radius:var(--r-2);width:78px;transition:background var(--dur-fast) var(--ease-out)}.desktop-icon:hover{background:color-mix(in oklch,var(--accent-soft) 35%,transparent)}.desktop-icon:active,.desktop-icon:focus-visible{background:color-mix(in oklch,var(--accent-soft) 60%,transparent);outline:none}.desktop-icon .icon-glyph{position:relative;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-2);box-shadow:var(--shadow-hard-sm);transition:box-shadow var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);color:var(--fg)}.desktop-icon:hover .icon-glyph{box-shadow:3px 3px 0 0 var(--accent);border-color:var(--accent)}.desktop-icon:active .icon-glyph{transform:translate(2px,2px);box-shadow:none}.desktop-icon .icon-glyph .open-dot{position:absolute;bottom:4px;right:4px;width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px var(--bg-card)}.desktop-icon .icon-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-soft);text-align:center;line-height:1.2;text-shadow:0 0 4px var(--bg),0 0 4px var(--bg)}.desktop-icon:hover .icon-label,.desktop-icon:focus-visible .icon-label{color:var(--fg)}@media (max-width: 760px){.desktop-icons{display:none}}.stage{position:relative;z-index:1;flex:1;min-height:0;padding-bottom:76px}.stage.stacked{display:block;padding:var(--s-4) var(--s-3) calc(110px + env(safe-area-inset-bottom,0px));overflow-y:auto;-webkit-overflow-scrolling:touch}.stage.stacked .win.stacked{position:relative;width:100%;max-width:720px;height:auto;margin:0 auto;min-width:0}.dock{position:fixed;bottom:var(--s-4);left:50%;transform:translate(-50%);z-index:60;display:flex;align-items:center;gap:4px;padding:6px;background:color-mix(in oklch,var(--bg-card) 92%,transparent);border:1px solid var(--border);border-radius:var(--r-pill);box-shadow:var(--shadow-float);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.dock button{position:relative;display:inline-flex;align-items:center;gap:var(--s-2);padding:8px 14px;background:transparent;border:0;border-radius:var(--r-pill);font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-soft);cursor:pointer;transition:all var(--dur-fast) var(--ease-out)}.dock button:hover,.dock button[data-focused=true]{background:var(--bg-sunken);color:var(--fg)}.dock button[data-state=closed]{opacity:.55}.dock button .state-dot{width:4px;height:4px;border-radius:50%;background:transparent;margin-left:2px;transition:background var(--dur-fast) var(--ease-out)}.dock button[data-state=open] .state-dot,.dock button[data-state=maximized] .state-dot{background:var(--accent)}.dock button[data-state=minimized] .state-dot{background:var(--emphasis)}@media (max-width: 640px){.dock{width:calc(100% - 24px);overflow-x:auto;justify-content:flex-start;padding:5px;bottom:calc(8px + env(safe-area-inset-bottom,0px))}.dock button{flex-shrink:0;font-size:10px;padding:5px 9px;gap:5px}.dock button .label{display:inline}}@media (max-width: 380px){.dock button{padding:4px 7px;font-size:9px;letter-spacing:.06em}}.win{position:absolute;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-3);box-shadow:var(--shadow-hard-sm);display:flex;flex-direction:column;overflow:hidden;transition:box-shadow var(--dur-base) var(--ease-out),border-color var(--dur-base) var(--ease-out),opacity var(--dur-base) var(--ease-out);min-width:360px;min-height:240px;will-change:left,top}.win[data-focused=true]{box-shadow:5px 5px 0 0 var(--accent);border-color:var(--accent)}[data-theme=dark] .win[data-focused=true]{box-shadow:5px 5px 0 0 var(--accent),0 0 0 1px var(--accent)}.win[data-state=maximized]{border-radius:var(--r-2)}.win.stacked{position:relative;box-shadow:var(--shadow-hard-sm);min-height:0}.win-titlebar{display:flex;align-items:center;gap:var(--s-3);padding:8px 14px;background:var(--bg-sunken);border-bottom:1px solid var(--border);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;touch-action:none}.win-titlebar:active{cursor:grabbing}.win.stacked .win-titlebar{cursor:default}.win-traffic{display:inline-flex;gap:6px;flex-shrink:0}.win-traffic .light{width:12px;height:12px;border-radius:50%;border:1px solid color-mix(in oklch,var(--fg) 30%,transparent);cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;transition:filter var(--dur-fast) var(--ease-out)}.win-traffic .light .glyph{font-family:var(--font-mono);font-size:9px;font-weight:700;line-height:1;color:#0000008c;opacity:0;transition:opacity var(--dur-fast) var(--ease-out);pointer-events:none}.win-titlebar:hover .win-traffic .light .glyph{opacity:1}.win-traffic .light.r{background:var(--rust)}.win-traffic .light.y{background:var(--gold)}.win-traffic .light.g{background:var(--sage-deep)}.win-traffic .light:hover{filter:brightness(.9)}.win-traffic .light:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.win-title{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-faint);display:inline-flex;align-items:center;gap:var(--s-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.win[data-focused=true] .win-title{color:var(--fg)}.win-title .sig{width:12px;height:12px;opacity:.75;flex-shrink:0}.win-titlebar .spacer{flex:1}.win-titlebar .meta{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-faint);flex-shrink:0}@media (max-width: 480px){.win-titlebar .meta{display:none}}.win-body{padding:var(--s-6);overflow-y:auto;flex:1;min-height:0}.win-resize{position:absolute;bottom:0;right:0;width:18px;height:18px;cursor:nwse-resize;touch-action:none;display:flex;align-items:flex-end;justify-content:flex-end;padding:2px;color:var(--fg-faint);opacity:.55;transition:color var(--dur-fast) var(--ease-out),opacity var(--dur-fast) var(--ease-out);z-index:2}.win:hover .win-resize{opacity:1}.win-resize:hover{color:var(--accent)}.win[data-focused=true] .win-resize{color:var(--accent);opacity:.85}.win.stacked .win-body{padding:var(--s-5)}@media (max-width: 480px){.win-body{padding:var(--s-4)}}.hero h1{font-family:var(--font-display);font-variation-settings:"opsz" 144;font-weight:500;font-size:clamp(28px,4.4vw,48px);line-height:1;letter-spacing:-.025em;margin:0 0 var(--s-4);max-width:22ch;color:var(--fg)}.hero h1 em{font-family:var(--font-italic);font-style:italic;font-weight:400;color:var(--accent)}.hero .lede{font-size:var(--t-base);line-height:1.5;max-width:60ch;color:var(--fg-soft);margin:0 0 var(--s-5)}.hero .ctas{display:flex;gap:var(--s-3);flex-wrap:wrap;align-items:center}.hero .hero-eyebrow{margin-bottom:var(--s-4)}.hero .hero-meta{display:flex;flex-wrap:wrap;gap:var(--s-5);margin-top:var(--s-6);padding-top:var(--s-4);border-top:1px solid var(--border)}.hero .meta-item{font-family:var(--font-mono);font-size:var(--t-xs);color:var(--fg-faint);letter-spacing:.06em}.hero .meta-item b{color:var(--fg);font-weight:600}.tagline-alts{margin-top:var(--s-6);padding-top:var(--s-4);border-top:1px solid var(--border)}.tagline-alts h4{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-faint);font-weight:500;margin:0 0 var(--s-3)}.tagline-alts .alt-list{display:flex;flex-direction:column;gap:var(--s-2)}.tagline-alts button.alt{text-align:left;background:transparent;border:1px dashed var(--border);border-radius:var(--r-2);padding:10px 12px;cursor:pointer;font-family:var(--font-display);font-variation-settings:"opsz" 72;font-size:var(--t-sm);line-height:1.3;color:var(--fg-soft);transition:all var(--dur-fast) var(--ease-out)}.tagline-alts button.alt:hover{border-style:solid;border-color:var(--fg);color:var(--fg);box-shadow:var(--shadow-hard-sm);background:var(--bg-sunken)}.tagline-alts button.alt[aria-pressed=true]{border-style:solid;border-color:var(--accent);color:var(--fg);background:color-mix(in oklch,var(--accent-soft) 50%,var(--bg-card))}.services .section-head{margin-bottom:var(--s-4)}.services .section-head h2{font-family:var(--font-display);font-variation-settings:"opsz" 96;font-weight:500;font-size:var(--t-xl);line-height:1.05;letter-spacing:-.015em;margin:var(--s-2) 0 var(--s-2);color:var(--fg)}.services .section-head p{font-size:var(--t-sm);line-height:1.5;color:var(--fg-soft);margin:0;max-width:50ch}.service-grid{display:grid;border:1px solid var(--border);border-radius:var(--r-2);overflow:hidden;background:var(--border);gap:1px}.service-grid.two-col{grid-template-columns:repeat(2,1fr)}@media (max-width: 540px){.service-grid.two-col{grid-template-columns:1fr}}.service{background:var(--bg-card);padding:var(--s-4);display:flex;flex-direction:column;gap:6px;transition:background var(--dur-base) var(--ease-out)}.service:hover{background:var(--bg-sunken)}.service .num{font-family:var(--font-mono);font-size:11px;color:var(--fg-faint);letter-spacing:.12em}.service h3{font-family:var(--font-display);font-variation-settings:"opsz" 72;font-weight:500;font-size:var(--t-md);line-height:1.15;letter-spacing:-.01em;margin:0;color:var(--fg)}.service p{font-size:13px;line-height:1.5;color:var(--fg-soft);margin:0}.service .tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}.service .tag{font-family:var(--font-mono);font-size:10px;color:var(--fg-soft);background:var(--bg);padding:2px 7px;border:1px solid var(--border);border-radius:var(--r-1);letter-spacing:.04em}.howwework{display:flex;flex-direction:column;height:100%}.howwework .steps-scroll{flex:1;min-height:120px;overflow-y:auto;margin-top:var(--s-3);margin-right:calc(var(--s-5) * -1);padding-right:var(--s-5);mask-image:linear-gradient(to bottom,black calc(100% - 16px),transparent);-webkit-mask-image:linear-gradient(to bottom,black calc(100% - 16px),transparent)}.win.stacked .howwework{height:auto}.win.stacked .howwework .steps-scroll{flex:initial;min-height:0;overflow-y:visible;mask-image:none;-webkit-mask-image:none;margin-right:0;padding-right:0}.howwework h2{font-family:var(--font-display);font-variation-settings:"opsz" 96;font-weight:500;font-size:var(--t-xl);line-height:1.05;letter-spacing:-.015em;margin:var(--s-2) 0 var(--s-3);color:var(--fg)}.howwework h2 em{font-family:var(--font-italic);font-style:italic;color:var(--accent)}.howwework .lede{font-size:var(--t-sm);line-height:1.5;color:var(--fg-soft);margin:0 0 var(--s-4);max-width:60ch}.steps{display:flex;flex-direction:column;gap:0;margin-top:var(--s-3)}.step{display:grid;grid-template-columns:48px 1fr;gap:var(--s-3);padding:var(--s-3) 0;border-top:1px solid var(--border)}.step:last-child{border-bottom:1px solid var(--border)}.step .index{font-family:var(--font-mono);font-size:10px;color:var(--fg-faint);letter-spacing:.1em;padding-top:4px}.step h4{font-family:var(--font-sans);font-size:var(--t-sm);font-weight:600;letter-spacing:-.005em;margin:0 0 4px;color:var(--fg)}.step p{font-size:13px;line-height:1.5;color:var(--fg-soft);margin:0}.step .label{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--emphasis-deep);margin-bottom:4px;display:inline-block}.contact h2{font-family:var(--font-display);font-variation-settings:"opsz" 144;font-weight:500;font-size:var(--t-xl);line-height:1;letter-spacing:-.02em;margin:var(--s-2) 0 var(--s-3);color:var(--fg)}.contact h2 em{font-family:var(--font-italic);font-style:italic;color:var(--accent)}.contact .lede{font-size:var(--t-sm);line-height:1.5;color:var(--fg-soft);margin:0 0 var(--s-5);max-width:56ch}.fs-form{display:flex;flex-direction:column;gap:var(--s-4)}.fs-field{display:flex;flex-direction:column;gap:4px}.fs-label{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-faint)}.fs-input,.fs-textarea{font-family:var(--font-sans);font-size:var(--t-sm);line-height:1.4;background:var(--bg);color:var(--fg);border:1px solid var(--border);border-radius:var(--r-2);padding:10px 12px;width:100%;transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);-moz-appearance:none;appearance:none;-webkit-appearance:none}.fs-input:focus,.fs-textarea:focus{outline:none;border-color:var(--fg);box-shadow:var(--shadow-hard-sm)}.fs-textarea{min-height:100px;resize:vertical}.fs-description{font-family:var(--font-mono);font-size:10px;color:var(--fg-faint);margin:2px 0 0;letter-spacing:.02em}.fs-button-group{display:flex;gap:var(--s-3);align-items:center;flex-wrap:wrap;margin-top:var(--s-2)}.fs-button{font-family:var(--font-sans);font-weight:600;font-size:var(--t-sm);border:1px solid var(--fg);border-radius:var(--r-2);padding:10px 18px;cursor:pointer;background:var(--accent);color:var(--vellum);transition:box-shadow var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out);display:inline-flex;align-items:center;gap:var(--s-2)}[data-theme=dark] .fs-button{color:var(--paper)}.fs-button:hover{box-shadow:var(--shadow-hard);background:var(--accent-hover)}.fs-button:active{transform:translate(2px,2px);box-shadow:none}.fs-button[disabled]{opacity:.55;cursor:progress}.fs-status{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--success)}.fs-status[data-tone=error]{color:var(--danger)}.contact .footer-mark{margin-top:var(--s-5);padding-top:var(--s-3);border-top:1px solid var(--border);font-family:var(--font-mono);font-size:10px;color:var(--fg-faint);letter-spacing:.06em;display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--s-2)}.contact .footer-mark em{font-family:var(--font-italic);font-style:italic;color:var(--emphasis-deep);font-size:12px;letter-spacing:0}
