@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(../media/32687112bd2dd8db-s.1gepa_7fcx9fm.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(../media/28868e710e86be81-s.p.2eksvhm1z0jwa.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:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.2cyn07wtgehh0.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:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(../media/32687112bd2dd8db-s.1gepa_7fcx9fm.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(../media/28868e710e86be81-s.p.2eksvhm1z0jwa.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:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.2cyn07wtgehh0.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:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(../media/32687112bd2dd8db-s.1gepa_7fcx9fm.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(../media/28868e710e86be81-s.p.2eksvhm1z0jwa.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:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.2cyn07wtgehh0.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:Space Grotesk Fallback;src:local(Arial);ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.0%;size-adjust:109.69%}.space_grotesk_25269f57-module__jV_gZq__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_25269f57-module__jV_gZq__variable{--font-space-grotesk:"Space Grotesk", "Space Grotesk Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.p.3-6t-g6q0vh0a.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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.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:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_991aebb-module__bYvC1W__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_991aebb-module__bYvC1W__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e390973e931a41c5-s.0rgnxg2b64rzs.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/59b15b4bcd7b1eb5-s.2vemzm0itqzfy.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e532fa1b9921e1cd-s.3cb5lpr2l6xud.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2fe89d53234c61d4-s.p.1u30mmyq6lnsd.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:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/99e609270109b47d-s.p.40sczeszzbjw1.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5e05ae5b48faa55e-s.1yd4_i3e35931.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a7afbb44bec2bb18-s.1qc6dx89jd2qv.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/02263ebadd758ea4-s.29yke99gs9qpn.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/68757d6cddeff913-s.p.1i-sca43-qwng.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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(../media/effe91970fc4db64-s.p.0oace-s_gkfks.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:IBM Plex Mono Fallback;src:local(Arial);ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.0%;size-adjust:134.59%}.ibm_plex_mono_a1b1d054-module__XaeIyW__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_a1b1d054-module__XaeIyW__variable{--font-plex-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
.SiteHeader-module__Tkw0gW__header{z-index:100;transition:background var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out);border-bottom:1px solid #0000;position:sticky;top:0}.SiteHeader-module__Tkw0gW__scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom-color:var(--hairline);background:#08090ad1}.SiteHeader-module__Tkw0gW__inner{justify-content:space-between;align-items:center;gap:2rem;height:72px;display:flex}.SiteHeader-module__Tkw0gW__brand{color:var(--bone);align-items:center;display:flex}.SiteHeader-module__Tkw0gW__logo{transition:color var(--dur) var(--ease-out);display:block}.SiteHeader-module__Tkw0gW__brand:hover .SiteHeader-module__Tkw0gW__logo{color:var(--cyan)}.SiteHeader-module__Tkw0gW__nav{gap:2.25rem;margin-left:auto;display:flex}.SiteHeader-module__Tkw0gW__navLink{color:var(--muted);transition:color var(--dur) var(--ease-out);padding-block:.5rem;font-size:.9375rem;position:relative}.SiteHeader-module__Tkw0gW__navLink:after{content:"";background:var(--cyan);transform-origin:0;width:100%;height:1px;transition:transform var(--dur) var(--ease-out);position:absolute;bottom:0;left:0;transform:scaleX(0)}.SiteHeader-module__Tkw0gW__navLink:hover{color:var(--bone)}.SiteHeader-module__Tkw0gW__navLink:hover:after{transform:scaleX(1)}.SiteHeader-module__Tkw0gW__right{align-items:center;gap:1rem;display:flex}.SiteHeader-module__Tkw0gW__contact{font-family:var(--font-mono);font-size:var(--t-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--bone);border:1px solid var(--hairline-strong);min-height:44px;transition:border-color var(--dur) var(--ease-out), color var(--dur) var(--ease-out);align-items:center;gap:.5em;padding:.7rem 1.1rem;display:inline-flex}.SiteHeader-module__Tkw0gW__contact:hover{border-color:var(--cyan);color:var(--cyan)}.SiteHeader-module__Tkw0gW__contact:hover .SiteHeader-module__Tkw0gW__arrow{transform:translate(3px)}.SiteHeader-module__Tkw0gW__contact .SiteHeader-module__Tkw0gW__arrow{transition:transform var(--dur) var(--ease-out)}.SiteHeader-module__Tkw0gW__toggle{border:1px solid var(--hairline-strong);cursor:pointer;background:0 0;width:44px;height:44px;padding:0;display:none;position:relative}.SiteHeader-module__Tkw0gW__bar{background:var(--bone);width:18px;height:1px;transition:transform var(--dur) var(--ease-out);position:absolute;left:50%;transform:translate(-50%)}.SiteHeader-module__Tkw0gW__bar:first-of-type{top:18px}.SiteHeader-module__Tkw0gW__bar:last-of-type{bottom:18px}.SiteHeader-module__Tkw0gW__barTop{transform:translate(-50%)translateY(4px)rotate(45deg)}.SiteHeader-module__Tkw0gW__barBottom{transform:translate(-50%)translateY(-4px)rotate(-45deg)}.SiteHeader-module__Tkw0gW__panel{background:var(--black);border-top:1px solid var(--hairline);padding:var(--gutter);padding-block:1.5rem 2rem;display:none}.SiteHeader-module__Tkw0gW__panelLink{border-bottom:1px solid var(--hairline);font-family:var(--font-display);letter-spacing:-.02em;color:var(--bone);animation:SiteHeader-module__Tkw0gW__fade-rise .38s var(--ease-out) both;animation-delay:calc(var(--i,0) * 45ms);align-items:baseline;gap:1rem;padding-block:1.05rem;font-size:1.75rem;display:flex}.SiteHeader-module__Tkw0gW__panelLink:hover{color:var(--cyan)}@media (max-width:900px){.SiteHeader-module__Tkw0gW__nav,.SiteHeader-module__Tkw0gW__contact{display:none}.SiteHeader-module__Tkw0gW__toggle{display:block}.SiteHeader-module__Tkw0gW__panel{border-top-color:#0000;max-height:0;padding-block:0;display:block;overflow:hidden}.SiteHeader-module__Tkw0gW__panelOpen{border-top-color:var(--hairline);max-height:calc(100dvh - 72px);padding-block:1.5rem 2rem;overflow-y:auto}.SiteHeader-module__Tkw0gW__header:has(.SiteHeader-module__Tkw0gW__panelOpen){background:var(--black)}}.SiteHeader-module__Tkw0gW__lang{font-family:var(--font-mono);font-size:var(--t-mono-sm);letter-spacing:.14em;align-items:center;display:flex}.SiteHeader-module__Tkw0gW__langItem{align-items:center;display:inline-flex}.SiteHeader-module__Tkw0gW__langSep{color:#f1f0eb47;padding-inline:.4rem}.SiteHeader-module__Tkw0gW__langLink{min-width:30px;min-height:44px;color:var(--muted);transition:color var(--dur) var(--ease-out);justify-content:center;align-items:center;display:inline-flex}.SiteHeader-module__Tkw0gW__langLink:hover{color:var(--bone)}.SiteHeader-module__Tkw0gW__langActive{color:var(--cyan)}@media (max-width:900px){.SiteHeader-module__Tkw0gW__langDesktop{display:none}.SiteHeader-module__Tkw0gW__panelFoot{justify-content:flex-start;padding-top:1.25rem;display:flex}.SiteHeader-module__Tkw0gW__panelFoot .SiteHeader-module__Tkw0gW__langLink{min-width:44px}}
.SiteFooter-module__p-5sba__footer{border-top:1px solid var(--hairline);background:var(--black);color:var(--bone);padding-top:clamp(3.5rem,2rem + 5vw,6rem)}.SiteFooter-module__p-5sba__inner{grid-template-columns:1.6fr 1fr 1fr;gap:clamp(2rem,1rem + 4vw,5rem);padding-bottom:clamp(3rem,2rem + 3vw,5rem);display:grid}.SiteFooter-module__p-5sba__brand{color:var(--bone);align-items:center;display:inline-flex}.SiteFooter-module__p-5sba__logo{transition:color var(--dur) var(--ease-out);display:block}.SiteFooter-module__p-5sba__brand:hover .SiteFooter-module__p-5sba__logo{color:var(--cyan)}.SiteFooter-module__p-5sba__tagline{color:var(--muted);max-width:30ch;font-size:var(--t-body);margin-top:1.15rem}.SiteFooter-module__p-5sba__links,.SiteFooter-module__p-5sba__locale{flex-direction:column;align-items:flex-start;gap:.7rem;display:flex}.SiteFooter-module__p-5sba__links span,.SiteFooter-module__p-5sba__locale span:first-child{margin-bottom:.4rem}.SiteFooter-module__p-5sba__links a{color:var(--muted);transition:color var(--dur) var(--ease-out);font-size:.9375rem}@media (pointer:coarse){.SiteFooter-module__p-5sba__links{gap:0}.SiteFooter-module__p-5sba__links a{align-items:center;min-height:44px;display:flex}}.SiteFooter-module__p-5sba__links a:hover{color:var(--cyan)}.SiteFooter-module__p-5sba__locale p{color:var(--muted);font-size:.9375rem;line-height:1.5}.SiteFooter-module__p-5sba__bottom{border-top:1px solid var(--hairline);flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-block:1.5rem;display:flex}@media (max-width:780px){.SiteFooter-module__p-5sba__inner{grid-template-columns:1fr 1fr}.SiteFooter-module__p-5sba__brandCol{grid-column:1/-1}}
:root{--black:#08090a;--graphite:#151719;--steel:#25282b;--bone:#f1f0eb;--muted:#b9bab7;--cyan:#69e6e2;--cyan-deep:#0b6360;--ink-muted:#5a5e5c;--hairline:#f1f0eb1f;--hairline-strong:#f1f0eb38;--hairline-dark:#08090a24;--cyan-glow:#69e6e229;--cyan-faint:#69e6e212;--bg:var(--black);--fg:var(--bone);--fg-dim:var(--muted);--rule:var(--hairline);--font-display:var(--font-space-grotesk), "Space Grotesk", system-ui, sans-serif;--font-body:var(--font-inter), Inter, system-ui, -apple-system, sans-serif;--font-mono:var(--font-plex-mono), "IBM Plex Mono", ui-monospace, "SF Mono", monospace;--t-display:clamp(2.75rem, 1.2rem + 6.6vw, 7.5rem);--t-h1:clamp(2.25rem, 1.2rem + 4.4vw, 5rem);--t-h2:clamp(1.875rem, 1.1rem + 3.1vw, 3.75rem);--t-h3:clamp(1.375rem, 1rem + 1.5vw, 2.125rem);--t-h4:clamp(1.125rem, .95rem + .7vw, 1.5rem);--t-body-lg:clamp(1.0625rem, 1rem + .35vw, 1.3125rem);--t-body:clamp(1rem, .97rem + .15vw, 1.0625rem);--t-small:.9375rem;--t-mono:.75rem;--t-mono-sm:.6875rem;--gutter:clamp(1.25rem, .6rem + 2.6vw, 3.5rem);--section-y:clamp(5rem, 3rem + 9vw, 11.5rem);--max-w:1440px;--measure:62ch;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-inout:cubic-bezier(.65, 0, .35, 1);--dur-fast:.16s;--dur:.24s;--dur-slow:.52s}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:var(--t-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis-weight:none;text-rendering:optimizelegibility;line-height:1.6;overflow-x:hidden}img,svg,video{max-width:100%;display:block}button,input,textarea,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.03em;text-wrap:balance;font-weight:500;line-height:1.02}p{text-wrap:pretty}::selection{background:var(--cyan);color:var(--black)}:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:1px}.section--light :focus-visible{outline-color:var(--cyan-deep)}.skip-link{z-index:200;background:var(--cyan);color:var(--black);font-family:var(--font-mono);font-size:var(--t-mono);letter-spacing:.08em;text-transform:uppercase;padding:.75rem 1.25rem;position:absolute;top:0;left:-9999px}.skip-link:focus{top:1rem;left:1rem}.container{width:100%;max-width:var(--max-w);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--section-y);position:relative}.section--light{background:var(--bone);color:var(--black);--fg:var(--black);--fg-dim:var(--ink-muted);--rule:var(--hairline-dark)}.section--graphite{background:var(--graphite)}.section-index{font-family:var(--font-mono);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-dim);align-items:center;gap:.875rem;margin-bottom:clamp(2rem,1rem + 2.4vw,3.5rem);display:flex}.section-index:after{content:"";background:var(--rule);flex:1;height:1px}.section-index strong{color:var(--cyan);font-weight:500}.section--light .section-index strong{color:var(--cyan-deep)}.meta{font-family:var(--font-mono);font-size:var(--t-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-dim)}.meta-sm{font-family:var(--font-mono);font-size:var(--t-mono-sm);letter-spacing:.16em;text-transform:uppercase;color:var(--fg-dim)}.lede{font-size:var(--t-body-lg);color:var(--fg-dim);max-width:var(--measure);line-height:1.55}.btn{--btn-fg:var(--black);--btn-bg:var(--cyan);background:var(--btn-bg);min-height:48px;color:var(--btn-fg);font-family:var(--font-mono);font-size:var(--t-mono);letter-spacing:.12em;text-transform:uppercase;border:1px solid var(--btn-bg);cursor:pointer;transition:background var(--dur) var(--ease-out), color var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out);align-items:center;gap:.7em;padding:.95rem 1.5rem;display:inline-flex}.btn:hover{--btn-bg:transparent;--btn-fg:var(--cyan)}.section--light .btn:hover{--btn-fg:var(--cyan-deep)}.btn--ghost{--btn-bg:transparent;--btn-fg:var(--fg);border-color:var(--hairline-strong)}.btn--ghost:hover{--btn-bg:transparent;--btn-fg:var(--cyan);border-color:var(--cyan)}.section--light .btn--ghost{border-color:var(--hairline-dark)}.btn .arrow{transition:transform var(--dur) var(--ease-out)}.btn:hover .arrow{transform:translate(4px)}.link{color:var(--cyan);transition:color var(--dur) var(--ease-out);position:relative}.section--light .link{color:var(--cyan-deep)}.link:after{content:"";transform-origin:0;width:100%;height:1px;transition:transform var(--dur) var(--ease-out);background:currentColor;position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.link:hover:after{transform:scaleX(1)}@keyframes signal-travel{0%{stroke-dashoffset:var(--signal-len,600)}to{stroke-dashoffset:0}}@keyframes signal-pulse{0%,to{opacity:.25}50%{opacity:1}}@keyframes fade-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.reveal{opacity:0;transition:opacity var(--dur-slow) var(--ease-out), transform var(--dur-slow) var(--ease-out);transition-delay:var(--reveal-delay,0s);transform:translateY(18px)}.reveal.is-visible{opacity:1;transform:none}.status-dot{background:var(--cyan);width:6px;height:6px;animation:blink 2.6s var(--ease-inout) infinite;border-radius:50%;display:inline-block}.section--light .status-dot{background:var(--cyan-deep)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}.status-dot{animation:none}}
