@font-face{font-family:satoshi;src:url(../media/Satoshi_Regular-s.p.0dvfn5g0xv8bu.woff2)format("woff2");font-display:swap;font-weight:400;font-style:normal}@font-face{font-family:satoshi;src:url(../media/Satoshi_Medium-s.p.1jgchyhj64537.woff2)format("woff2");font-display:swap;font-weight:500;font-style:normal}@font-face{font-family:satoshi;src:url(../media/Satoshi_Bold-s.p.2_-zzs2una4mm.woff2)format("woff2");font-display:swap;font-weight:700;font-style:normal}@font-face{font-family:satoshi Fallback;src:local(Arial);ascent-override:102.23%;descent-override:24.29%;line-gap-override:10.12%;size-adjust:98.8%}.satoshi_1c1f82fb-module__IKM5Uq__className{font-family:satoshi,satoshi Fallback}.satoshi_1c1f82fb-module__IKM5Uq__variable{--font-sans-family:"satoshi", "satoshi Fallback"}
@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b12e986493c137cf-s.2njitm-prmz2_.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/36363bfb06833f56-s.p.38hmww4cj4vme.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b2fa3ef4ca165ab4-s.12_ml6bnugnre.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a73419dd2ba2d841-s.p.2yee423r7ahpo.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono Fallback;src:local(Arial);ascent-override:73.71%;descent-override:23.03%;line-gap-override:0.0%;size-adjust:134.59%}.dm_mono_e4028bde-module__6WoR4a__className{font-family:DM Mono,DM Mono Fallback;font-style:normal}.dm_mono_e4028bde-module__6WoR4a__variable{--font-mono-family:"DM Mono", "DM Mono Fallback"}
.CustomCursor-module__scj-aG__cursor{z-index:9999;pointer-events:none;opacity:0;transition:opacity var(--transition-fast);will-change:transform, opacity, width, height;position:fixed;top:0;left:0;transform:translate(-100px,-100px)translate(-50%,-50%)}.CustomCursor-module__scj-aG__cursor,.CustomCursor-module__scj-aG__cursor *{pointer-events:none}.CustomCursor-module__scj-aG__visible{opacity:1}.CustomCursor-module__scj-aG__cursorDot{background:var(--color-text);border-radius:50%;width:16px;height:16px;transition:width .22s,height .22s,border-radius .22s,background .22s}.CustomCursor-module__scj-aG__cursorLabel{border-radius:var(--radius-full);background:color-mix(in srgb, var(--color-text) 72%, transparent);-webkit-backdrop-filter:blur(10px);justify-content:center;align-items:center;min-width:16px;min-height:16px;padding:.625rem 1.125rem;transition:width .22s,height .22s,border-radius .22s,background .22s,padding .22s;display:inline-flex}.CustomCursor-module__scj-aG__cursorLabelViewProject{background:#3d9a5ac7}.CustomCursor-module__scj-aG__cursorLabelComingSoon{background:#e86520c7}.CustomCursor-module__scj-aG__label{opacity:0;white-space:nowrap;max-width:0;color:var(--color-on-button);transition:max-width .22s,opacity .18s;overflow:hidden}.CustomCursor-module__scj-aG__labelVisible{opacity:1;max-width:18rem}.CustomCursor-module__scj-aG__labelWithIcon{align-items:center;gap:6px;display:inline-flex}.CustomCursor-module__scj-aG__labelIcon{width:14px;height:14px;color:var(--color-on-button);flex-shrink:0}

:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f5f4f0;--color-text:#181816;--color-text-muted:#646460;--color-border:color-mix(in srgb, var(--color-text) 16%, var(--color-bg));--color-divider:color-mix(in srgb, var(--color-text) 9%, var(--color-bg));--color-border-strong:color-mix(in srgb, var(--color-text) 26%, var(--color-bg));--color-surface-muted:color-mix(in srgb, var(--color-text) 6%, var(--color-bg));--color-surface-card:color-mix(in srgb, var(--color-text) 4%, var(--color-bg));--color-surface-elevated:color-mix(in srgb, var(--color-text) 3%, var(--color-bg));--color-surface-photo:color-mix(in srgb, var(--color-text) 12%, var(--color-bg));--color-surface-button:var(--color-text);--color-chip-bg:color-mix(in srgb, var(--color-text) 3%, var(--color-bg));--color-chip-border:var(--color-border);--color-on-button:var(--color-bg);--color-text-inverse:var(--color-bg);--color-text-secondary:var(--color-text-muted);--color-text-subtle:color-mix(in srgb, var(--color-text-muted) 52%, var(--color-bg));--text-primary:var(--color-text);--text-muted:var(--color-text-muted);--text-inverse:var(--color-bg);--border-default:var(--color-border);--surface-muted:var(--color-surface-muted);--surface-card:var(--color-surface-card);--surface-photo:var(--color-surface-photo);--surface-button:var(--color-surface-button);--text-dark:var(--color-text);--text-dark-bold:var(--color-text);--text-dark-muted:var(--color-text-muted);--text-dark-subtle:var(--color-text-muted);--border-subtle:var(--color-border);--quote-accent:var(--color-border-strong);--surface-soft:var(--color-surface-muted);--surface-soft-hover:color-mix(in srgb, var(--color-text) 10%, var(--color-bg));--surface-raised:var(--color-surface-elevated);--surface-raised-hover:color-mix(in srgb, var(--color-text) 10%, var(--color-bg));--toggle-segment-active:var(--color-surface-elevated);--color-placeholder:var(--color-surface-card);--tag-chip-bg:var(--color-chip-bg);--font-family-sans:var(--font-sans-family), "Satoshi", sans-serif;--font-family-mono:var(--font-mono-family), "DM Mono", monospace;--font-sans:var(--font-family-sans);--font-mono:var(--font-family-mono);--font-size-display:36px;--font-size-title:24px;--font-size-body:16px;--font-size-label:16px;--font-size-caption:var(--font-size-body);--font-size-small:var(--font-size-body);--font-size-copy:var(--font-size-body);--font-size-title-sm:var(--font-size-body);--font-size-title-md:var(--font-size-title);--font-size-title-lg:var(--font-size-title);--font-size-tag:var(--font-size-body);--font-size-sm:var(--font-size-body);--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-display:normal;--line-height-title:normal;--line-height-body:1.76;--line-height-label:1.76;--line-height-copy:var(--line-height-body);--line-height-copy-px:28px;--line-height-quote:var(--line-height-body);--line-height-tight:1.3;--line-height-heading:1.35;--line-height-mono:var(--line-height-label);--line-height-ui:2;--letter-spacing-display:-.04em;--letter-spacing-title:-.04em;--letter-spacing-body:-.02em;--letter-spacing-label:0;--letter-spacing-tight:-.04em;--letter-spacing-quote:-.02em;--space-2xs:8px;--space-xs:12px;--space-sm:16px;--space-md:20px;--space-lg:24px;--space-xl:32px;--space-2xl:56px;--space-3xl:80px;--space-4xl:100px;--page-max:940px;--content-column:580px;--page-gutter:clamp(24px, 5vw, 170px);--header-offset:76px;--section-padding-y:88px;--section-gap:var(--space-3xl);--content-gap:var(--space-md);--stack-gap:var(--space-sm);--radius-xs:4px;--radius-sm:4px;--radius-md:4px;--radius-lg:4px;--radius-full:9999px;--transition-fast:.2s ease;--button-transition:background var(--transition-fast), opacity var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);--button-hover-opacity:.88;--button-hover-bg:var(--surface-soft-hover);--button-active-scale:.98;--reveal-duration:.52s;--reveal-ease:cubic-bezier(.22, 1, .36, 1);--reveal-offset:12px;--reveal-stagger:45ms}
.text-display,.type-display{font-family:var(--font-family-sans);font-size:var(--font-size-display);font-weight:var(--font-weight-medium);line-height:var(--line-height-display);letter-spacing:var(--letter-spacing-display)}.text-title,.type-title-md,.type-title-lg,.type-title-sm{font-family:var(--font-family-sans);font-size:var(--font-size-title);font-weight:var(--font-weight-medium);line-height:var(--line-height-title);letter-spacing:var(--letter-spacing-title)}.text-body,.type-body,.type-copy,.type-caption,.type-ui{font-family:var(--font-family-sans);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body)}.text-label,.type-label,.type-mono,.capsLabel{font-family:var(--font-family-mono);font-size:var(--font-size-label);font-weight:var(--font-weight-medium);line-height:var(--line-height-label);letter-spacing:var(--letter-spacing-label);text-transform:uppercase}
.btn{font-family:var(--font-family-sans);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);line-height:var(--line-height-ui);letter-spacing:var(--letter-spacing-body);border-radius:var(--radius-xs);cursor:pointer;transition:var(--button-transition);border:1px solid #0000;justify-content:center;align-items:center;gap:10px;padding:2px 16px;text-decoration:none;display:inline-flex}.btn:focus-visible{outline:none}.btn:active{transform:scale(var(--button-active-scale))}.btn-primary{color:var(--color-on-button);background:var(--color-surface-button)}.btn-primary:hover,.btn-primary:focus-visible{opacity:var(--button-hover-opacity)}.btn-secondary{color:var(--color-text);background:var(--color-surface-elevated);border-color:var(--color-border)}.btn-secondary:hover,.btn-secondary:focus-visible{background:var(--surface-raised-hover)}.btn-muted{color:var(--color-text);background:var(--color-surface-muted);border-color:var(--color-border)}.btn-muted:hover,.btn-muted:focus-visible{background:var(--button-hover-bg)}.btn-icon{width:40px;height:40px;color:var(--color-text-muted);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-full);flex-shrink:0;gap:0;padding:0}.btn-icon:hover,.btn-icon:focus-visible{color:var(--color-text);background:var(--button-hover-bg)}.btn-icon:active{transform:scale(.96)}.btn-iconActive{color:var(--color-text);background:var(--button-hover-bg)}.btn-segment{width:32px;height:32px;color:var(--color-text-muted);border-radius:var(--radius-full);background:0 0;border:none;gap:0;padding:0}.btn-segment:hover,.btn-segment:focus-visible{color:var(--color-text);background:var(--button-hover-bg)}.btn-segmentActive,.btn-segmentActive:hover,.btn-segmentActive:focus-visible{color:var(--color-text);background:var(--toggle-segment-active)}.btn-chip{font-size:var(--font-size-small);font-weight:var(--font-weight-semibold);text-transform:capitalize;color:var(--color-text-muted);border-radius:var(--radius-sm);background:0 0;border:none;gap:0;padding:4px 10px;line-height:1.25}.btn-chip:hover,.btn-chip:focus-visible{color:var(--color-text);background:var(--button-hover-bg)}@media (prefers-reduced-motion:reduce){.btn:active,.btn-icon:active{transform:none}}
.homeSection{padding-inline:var(--page-gutter);padding-block:var(--section-padding-y);color:var(--color-text)}.siteSection{padding-inline:var(--page-gutter);padding-bottom:var(--section-padding-y);color:var(--color-text)}.siteSection:before{content:"";width:100%;max-width:var(--page-max);border-top:1px solid var(--color-divider);padding-top:var(--section-padding-y);margin-inline:auto;display:block}.siteSectionInset{padding-bottom:var(--section-padding-y)}.siteSectionInset:before{content:"";width:100%;max-width:var(--page-max);border-top:1px solid var(--color-divider);padding-top:var(--section-padding-y);margin-inline:auto;display:block}.siteSectionFlushTop:before{display:none}.siteSectionFlushTop{padding-top:var(--section-padding-y)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;height:100%;font-family:var(--font-family-sans);font-size:var(--font-size-body);font-synthesis:none}html,body{max-width:100vw;overflow-x:hidden}body{min-height:100%;color:var(--color-text);background:var(--color-bg);font-family:var(--font-family-sans);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background var(--transition-fast), color var(--transition-fast)}body.customCursorActive,body.customCursorActive a,body.customCursorActive button,body.customCursorActive [role=button],body.customCursorActive input,body.customCursorActive textarea,body.customCursorActive select,body.customCursorActive label{cursor:none}strong,b{font-weight:var(--font-weight-bold);color:var(--color-text)}a,button,input,textarea,select,h1,h2,h3,h4,h5,h6,p,span,li,label{font-family:inherit}a{color:inherit;text-decoration:none}button{font-family:var(--font-family-sans);font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;cursor:pointer;background:0 0;border:none}img{max-width:100%;display:block}.tagLine{flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tagLineItem{font-family:var(--font-family-sans);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-body);text-transform:capitalize;color:var(--color-text);white-space:nowrap;border:1px solid var(--color-border-strong);border-radius:var(--radius-xs);background:0 0;align-items:center;padding:2px 8px;line-height:1.4;display:inline-flex}.capsLabel{color:var(--color-text-muted);margin:0}.capsLabelCenter{text-align:center}[data-reveal],[data-reveal-load]{opacity:0;transform:translate3d(0, var(--reveal-offset), 0);transition:opacity var(--reveal-duration) var(--reveal-ease), transform var(--reveal-duration) var(--reveal-ease);will-change:opacity, transform}[data-reveal].is-revealed,[data-reveal-load].is-revealed{opacity:1;transform:translate(0,0)}[data-reveal-delay="1"]{transition-delay:calc(var(--reveal-stagger) * 1)}[data-reveal-delay="2"]{transition-delay:calc(var(--reveal-stagger) * 2)}[data-reveal-delay="3"]{transition-delay:calc(var(--reveal-stagger) * 3)}[data-reveal-stagger] [data-reveal-stagger-item]{opacity:0;transform:translate3d(0, var(--reveal-offset), 0);transition:opacity var(--reveal-duration) var(--reveal-ease), transform var(--reveal-duration) var(--reveal-ease);will-change:opacity, transform}[data-reveal-stagger].is-revealed [data-reveal-stagger-item]{opacity:1;transform:translate(0,0)}[data-reveal-stagger].is-revealed [data-reveal-stagger-item]:first-child{transition-delay:calc(var(--reveal-stagger) * 0)}[data-reveal-stagger].is-revealed [data-reveal-stagger-item]:nth-child(2){transition-delay:calc(var(--reveal-stagger) * 1)}[data-reveal-stagger].is-revealed [data-reveal-stagger-item]:nth-child(3){transition-delay:calc(var(--reveal-stagger) * 2)}[data-reveal-stagger].is-revealed [data-reveal-stagger-item]:nth-child(4){transition-delay:calc(var(--reveal-stagger) * 3)}[data-reveal-stagger].is-revealed [data-reveal-stagger-item]:nth-child(5){transition-delay:calc(var(--reveal-stagger) * 4)}[data-reveal-stagger].is-revealed [data-reveal-stagger-item]:nth-child(6){transition-delay:calc(var(--reveal-stagger) * 5)}[data-reveal-stagger].is-revealed [data-reveal-stagger-item]:nth-child(7){transition-delay:calc(var(--reveal-stagger) * 6)}[data-reveal-stagger].is-revealed [data-reveal-stagger-item]:nth-child(8){transition-delay:calc(var(--reveal-stagger) * 7)}[data-reveal-stagger].is-revealed [data-reveal-stagger-item]:nth-child(9){transition-delay:calc(var(--reveal-stagger) * 8)}[data-reveal-stagger].is-revealed [data-reveal-stagger-item]:nth-child(10){transition-delay:calc(var(--reveal-stagger) * 9)}[data-reveal-stagger].is-revealed [data-reveal-stagger-item]:nth-child(11){transition-delay:calc(var(--reveal-stagger) * 10)}[data-reveal-stagger].is-revealed [data-reveal-stagger-item]:nth-child(12){transition-delay:calc(var(--reveal-stagger) * 11)}@media (prefers-reduced-motion:reduce){[data-reveal],[data-reveal-load],[data-reveal-stagger] [data-reveal-stagger-item]{opacity:1;will-change:auto;transition:none;transform:none}}
