@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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:700;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:700;font-display:swap;src:url(/_next/static/media/36966cca54120369-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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.00%;size-adjust:109.69%}.__className_6b9622{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.__variable_6b9622{--font-heading:"Space Grotesk","Space Grotesk Fallback"}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:400;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:500;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:600;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,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.00%;size-adjust:107.12%}.__className_37ef13{font-family:Inter,Inter Fallback;font-style:normal}.__variable_37ef13{--font-body:"Inter","Inter Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_6d24ac{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_6d24ac{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}:root{--bg:#0b0c0e;--text:#eceef0;--text-secondary:#a7acb3;--text-muted:#9aa0a8;--text-tertiary:#6f747c;--chip-text:#c7cbd1;--nav-link:#b6bac0;--accent:#7fa8ff;--success:#5fd97f;--card-bg:#121316;--chip-bg:#17181b;--border-subtle:rgba(255,255,255,0.08);--border-chip:rgba(255,255,255,0.1);--border-pill:rgba(255,255,255,0.16);color-scheme:dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body)}h1,h2,h3{margin:0;font-family:var(--font-heading)}p{margin:0}a{text-decoration:none}img{max-width:100%;display:block}::selection{background:var(--accent);color:var(--bg)}.page{min-height:100vh;overflow-x:hidden;-ms-overflow-style:none;scrollbar-width:none}.sticky-header{position:fixed;top:0;left:0;width:100%;z-index:1000}&::-webkit-scrollbar{display:none;-ms-overflow-style:none;scrollbar-width:none}.ambient-bg{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.ambient-blob{position:absolute;border-radius:50%;filter:blur(120px);opacity:.55;will-change:transform,opacity}.ambient-blob--violet{top:-14%;left:-10%;width:46vw;height:46vw;max-width:620px;max-height:620px;background:radial-gradient(circle,#6c4fd6,transparent 70%);animation:ambient-drift-a 16s ease-in-out infinite}.ambient-blob--blue{top:2%;right:-14%;width:50vw;height:50vw;max-width:680px;max-height:680px;background:radial-gradient(circle,#3f63d6,transparent 70%);animation:ambient-drift-b 20s ease-in-out infinite}.ambient-blob--teal{bottom:-18%;left:28%;width:54vw;height:54vw;max-width:740px;max-height:740px;background:radial-gradient(circle,#1c7a72,transparent 70%);animation:ambient-drift-c 24s ease-in-out infinite}@keyframes ambient-drift-a{0%,to{transform:translate(0) scale(1);opacity:.5}33%{transform:translate(6%,8%) scale(1.12);opacity:.65}66%{transform:translate(-5%,4%) scale(.94);opacity:.45}}@keyframes ambient-drift-b{0%,to{transform:translate(0) scale(1);opacity:.5}33%{transform:translate(-8%,6%) scale(.92);opacity:.4}66%{transform:translate(5%,-6%) scale(1.1);opacity:.6}}@keyframes ambient-drift-c{0%,to{transform:translate(0) scale(1);opacity:.5}33%{transform:translate(7%,-5%) scale(1.1);opacity:.6}66%{transform:translate(-6%,-8%) scale(.93);opacity:.42}}@media (prefers-reduced-motion:reduce){.ambient-blob{animation:none}}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:50;justify-content:space-between;padding:18px 56px;background:rgba(11,12,14,.85);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-subtle)}.nav,.nav-brand{display:flex;align-items:center}.nav-brand{gap:12px}.nav-logo{width:34px;height:34px;object-fit:contain;filter:invert(1) brightness(1.6)}.nav-wordmark{font-family:var(--font-heading);font-weight:700;font-size:20px;letter-spacing:.5px}.nav-links{display:flex;align-items:center;gap:36px}.nav-links a{color:var(--nav-link);font-size:15px}.nav-links a:hover{color:white}.btn-solid{display:inline-block;background:var(--text);color:var(--bg);padding:10px 22px;border-radius:8px;font-size:14px;font-weight:600}.btn-solid.btn-large{padding:15px 30px;border-radius:9px;font-size:15px}.btn-outline{display:inline-block;border:1px solid var(--border-pill);color:var(--text);padding:15px 30px;border-radius:9px;font-size:15px;font-weight:600}.hero{position:relative;padding:160px 56px 120px;max-width:1100px;margin:0 auto;text-align:center;display:flex;flex-direction:column}.hero,.hero-badge{align-items:center}.hero-badge{display:inline-flex;gap:8px;border:1px solid var(--border-pill);border-radius:999px;padding:7px 16px;font-size:13px;color:var(--text-muted);margin-bottom:32px;font-family:var(--font-mono)}.hero-badge-dot{width:7px;height:7px;border-radius:50%;background:var(--success);display:inline-block}.hero-title{font-size:64px;line-height:1.08;font-weight:700;margin:0 0 24px;letter-spacing:-1px}.hero-title-accent{color:var(--accent)}.typewriter{display:block;min-height:calc(2 * 1.08em)}.typewriter-cursor{display:inline-block;width:.42em;height:.92em;margin-left:2px;vertical-align:-.14em;animation:typewriter-blink 1s steps(1) infinite}@keyframes typewriter-blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.typewriter-cursor{animation:none}}.hero-subhead{font-size:19px;line-height:1.6;color:var(--text-secondary);max-width:620px;margin:0 0 40px}.hero-actions{display:flex;gap:16px}.section{padding:40px 56px 120px;max-width:1200px;margin:0 auto}.section-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:48px;flex-wrap:wrap;gap:12px}.section-title{font-size:36px;font-weight:700}.section-label{color:var(--text-tertiary);font-family:var(--font-mono);font-size:14px}.services-grid{display:flex;flex-wrap:wrap;gap:24px}@media (min-width:1100px){.services-grid{display:grid;grid-template-columns:repeat(4,1fr);align-items:stretch}}.card{flex:1 1 260px;background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:16px;padding:32px 28px;transition:border-color .35s ease,background .35s ease,box-shadow .35s ease}.service-card:hover{border-color:color-mix(in srgb,var(--card-accent,var(--accent)) 55%,transparent);background:linear-gradient(155deg,color-mix(in srgb,var(--card-accent,var(--accent)) 10%,var(--card-bg)),var(--card-bg) 70%);box-shadow:0 16px 40px -20px color-mix(in srgb,var(--card-accent,var(--accent)) 65%,transparent)}.service-num{font-family:var(--font-mono);color:var(--accent);font-size:13px;margin-bottom:18px;transition:color .35s ease}.service-card:hover .service-num{color:var(--card-accent,var(--accent))}.service-title{font-size:20px;font-weight:600;margin:0 0 12px;transition:color .35s ease}.service-card:hover .service-title{color:var(--card-accent,var(--accent))}.service-desc{color:var(--text-muted);font-size:14.5px;line-height:1.6}.stack-list{display:flex;flex-direction:column;gap:28px}.stack-row{display:grid;grid-template-columns:200px 1fr;grid-gap:24px;gap:24px;align-items:start;border-top:1px solid var(--border-subtle);padding-top:24px}.stack-name{font-family:var(--font-heading);font-weight:600;font-size:16px}.stack-tags{display:flex;flex-wrap:wrap;gap:10px}.tag-chip{background:var(--chip-bg);border:1px solid var(--border-chip);color:var(--chip-text);font-family:var(--font-mono);font-size:13px;padding:7px 14px;border-radius:7px;cursor:pointer;transition:color .25s ease,border-color .25s ease,background .25s ease,transform .2s ease,box-shadow .25s ease}.tag-chip:focus-visible,.tag-chip:hover{color:var(--chip-accent,var(--accent));border-color:color-mix(in srgb,var(--chip-accent,var(--accent)) 60%,transparent);background:color-mix(in srgb,var(--chip-accent,var(--accent)) 16%,var(--chip-bg));box-shadow:0 6px 18px -8px color-mix(in srgb,var(--chip-accent,var(--accent)) 70%,transparent);transform:translateY(-2px)}.tag-chip:focus-visible{outline:none}.tag-chip:active{transform:translateY(-1px) scale(.97)}.tech-modal-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(6,7,9,.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.tech-modal{position:relative;overflow:hidden;width:100%;max-width:420px;background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:20px;padding:38px 34px 34px;box-shadow:0 30px 60px -24px rgba(0,0,0,.65),inset 0 0 0 1px rgba(255,255,255,.03)}.tech-modal:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--modal-accent,var(--accent)),transparent);opacity:.8}.tech-modal-glow{position:absolute;top:-60px;right:-60px;width:220px;height:220px;background:radial-gradient(circle,color-mix(in srgb,var(--modal-accent,var(--accent)) 35%,transparent),transparent 72%);pointer-events:none}.tech-modal-content{position:relative}.tech-modal-close{position:absolute;top:16px;right:16px;z-index:1;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-chip);border-radius:8px;background:var(--chip-bg);color:var(--text-secondary);font-size:18px;line-height:1;cursor:pointer;transition:color .2s ease,border-color .2s ease,background .2s ease}.tech-modal-close:hover{color:var(--text);border-color:color-mix(in srgb,var(--modal-accent,var(--accent)) 60%,transparent);background:color-mix(in srgb,var(--modal-accent,var(--accent)) 18%,var(--chip-bg))}.tech-modal-eyebrow{display:flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:12.5px;letter-spacing:.4px;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:16px}.tech-modal-dot{width:7px;height:7px;border-radius:50%;background:var(--modal-accent,var(--accent));box-shadow:0 0 10px 1px color-mix(in srgb,var(--modal-accent,var(--accent)) 70%,transparent)}.tech-modal-title{font-size:23px;font-weight:700;margin:0 0 14px;padding-right:24px}.tech-modal-desc{color:var(--text-muted);font-size:15px;line-height:1.65;margin:0}.work-list{display:flex;flex-direction:column;gap:64px}.project{display:grid;grid-template-columns:1.1fr 1fr;grid-gap:48px;gap:48px;align-items:center}.project-images,.project-images-row,.project-info{min-width:0}.project-eyebrow{color:var(--accent);font-family:var(--font-mono);font-size:13px;margin-bottom:14px;text-transform:uppercase}.project-title{font-size:30px;font-weight:700;margin:0 0 16px}.project-desc{color:var(--text-muted);font-size:15.5px;line-height:1.7;margin:0 0 20px}.project-tags{display:flex;flex-wrap:wrap;gap:8px}.project-tag{background:var(--chip-bg);border:1px solid var(--border-chip);color:var(--nav-link);font-family:var(--font-mono);font-size:12.5px;padding:5px 12px;border-radius:6px;cursor:default;transition:color .25s ease,border-color .25s ease,background .25s ease,transform .2s ease,box-shadow .25s ease}.project-tag:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 60%,transparent);background:color-mix(in srgb,var(--accent) 16%,var(--chip-bg));box-shadow:0 6px 18px -8px color-mix(in srgb,var(--accent) 70%,transparent);transform:translateY(-2px)}.project-link{display:inline-block;margin-top:20px;color:var(--accent);font-family:var(--font-mono);font-size:14px}.project-images{display:flex;flex-direction:column;gap:16px}.project-images img{width:100%;border-radius:12px;border:1px solid var(--border-chip)}.project-images-row{display:flex;gap:16px}.project-images-row img{min-width:0;border-radius:12px;border:1px solid var(--border-chip)}.project-images-row.split img{width:46%}.project-images-row.split img:last-child{margin-top:32px}.project--filmograf{grid-template-columns:1fr 1.1fr}.project--filmograf .project-images-row{order:1;justify-content:flex-start;align-items:flex-end}.project--filmograf .project-info{order:2}.project--filmograf .filmograf-1{flex:0 1 51.5%;width:auto;height:auto;aspect-ratio:272/517;object-fit:cover}.project--filmograf .filmograf-2{flex:0 1 48.5%;width:auto;height:auto;aspect-ratio:256/491;object-fit:cover}.project--dbrocket{grid-template-columns:1fr 1.1fr}.project--dbrocket .project-images-row{order:1}.project--dbrocket .project-info{order:2}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:24px;gap:24px}.team-grid .card{display:flex;gap:30px;align-items:stretch}.team-avatar-col{flex-shrink:0}.team-info{display:flex;flex-direction:column;min-width:0;flex:1 1;gap:2px}.team-avatar{width:96px;height:96px;border-radius:12px;object-fit:cover}.team-avatar-placeholder{width:64px;height:64px;border-radius:12px;background:linear-gradient(135deg,#2a2d33,#17181b);display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:700;font-size:20px;color:var(--accent)}.team-name{font-size:20px;font-weight:600;margin:0 0 6px}.team-role{color:var(--accent);font-size:14px;margin-bottom:14px;font-family:var(--font-mono)}.team-desc{color:var(--text-muted);font-size:14.5px;line-height:1.6;margin:0 0 18px}.team-links{display:flex;gap:14px;margin-top:auto;padding-top:14px}.team-links a{color:var(--chip-text);font-size:13px;font-family:var(--font-mono)}.contact{padding:40px 56px 100px;max-width:900px;margin:0 auto;text-align:center}.contact-title{font-size:40px;font-weight:700;margin:0 0 18px}.contact-desc{color:var(--text-muted);font-size:17px;line-height:1.6;margin:0 0 36px}.contact-actions{flex-direction:column;gap:10px;margin:auto 0}.contact-actions,.contact-rows{display:flex;align-items:center}.contact-rows{gap:16px;justify-content:center;flex-wrap:nowrap;width:100%;max-width:460px;margin:0 auto}.contact-email{flex:1 1 340px;min-width:0;max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-icons{display:flex;gap:16px;flex-shrink:0}.btn-icon{display:inline-flex;width:48px;height:48px;padding:0;border-radius:50%;flex-shrink:0}.btn-icon,.loading{align-items:center;justify-content:center}.loading{min-height:100vh;display:flex;flex-direction:column;gap:20px}.loading-orb{position:relative;width:64px;height:64px;border-radius:50%;background:var(--card-bg);display:flex;align-items:center;justify-content:center}.loading-orb img{filter:invert(1) brightness(1.6);position:relative;z-index:1}.loading-orb-spinner{position:absolute;inset:0;border-radius:50%;border:2.5px solid var(--border-subtle);border-top-color:var(--accent);animation:loading-spin .9s linear infinite}.loading-orb-glow{position:absolute;inset:-20px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 28%,transparent),transparent 72%);animation:loading-pulse 1.8s ease-in-out infinite;pointer-events:none}@keyframes loading-spin{to{transform:rotate(1turn)}}@keyframes loading-pulse{0%,to{opacity:.35;transform:scale(.92)}50%{opacity:.75;transform:scale(1.05)}}.loading-word{font-family:var(--font-heading);font-weight:700;font-size:22px;letter-spacing:1px;color:var(--text)}.loading-status{font-family:var(--font-mono);font-size:13px;letter-spacing:.4px;color:var(--text-tertiary);display:inline-flex}.loading-dots:after{content:"";display:inline-block;width:1.2em;text-align:left;animation:loading-dots 1.4s steps(4) infinite}@keyframes loading-dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}to{content:""}}.loading-bar{position:relative;width:220px;height:3px;border-radius:999px;background:var(--chip-bg);overflow:hidden}.loading-bar-fill{position:absolute;top:0;left:0;height:100%;width:40%;border-radius:inherit;background:linear-gradient(90deg,transparent,var(--accent),transparent);animation:loading-bar-slide 1.3s ease-in-out infinite}@keyframes loading-bar-slide{0%{transform:translateX(-100%)}to{transform:translateX(320%)}}@media (prefers-reduced-motion:reduce){.loading-bar-fill,.loading-dots:after,.loading-orb-glow,.loading-orb-spinner{animation:none}}.footer{border-top:1px solid var(--border-subtle);padding:28px 56px;justify-content:space-between;color:var(--text-tertiary);font-size:13px;flex-wrap:wrap;gap:12px}.footer,.footer-brand{display:flex;align-items:center}.footer-brand{gap:10px}.footer-logo{width:20px;height:20px;object-fit:contain;filter:invert(1) brightness(1.6);opacity:.7}.not-found-body{display:flex;flex-direction:column;min-height:100vh;padding-top:71px}.not-found{position:relative;flex:1 1;width:100%;padding:40px 56px;max-width:900px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.not-found-body .footer{flex-shrink:0}.not-found-badge{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border-pill);border-radius:999px;padding:7px 16px;font-size:13px;color:var(--text-muted);margin-bottom:32px;font-family:var(--font-mono)}.not-found-code{font-size:120px;line-height:1;font-weight:700;letter-spacing:-2px;margin:0 0 16px;background:linear-gradient(135deg,var(--text),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}.not-found-title{font-size:32px;font-weight:700;margin:0 0 16px}.not-found-desc{color:var(--text-secondary);font-size:17px;line-height:1.6;max-width:480px;margin:0 0 40px}.not-found-actions{display:flex;gap:16px}@media (max-width:900px){.not-found{padding:48px 24px 80px}.not-found-code{font-size:80px}.not-found-title{font-size:24px}.not-found-actions{flex-direction:column;width:100%}.nav{padding:16px 24px}.nav-links{display:none}.hero{padding:96px 24px 80px}.hero-title{font-size:40px}.hero-subhead{font-size:17px}.hero-actions{flex-direction:column;width:100%}.section{padding:32px 24px 80px}.section-title{font-size:28px}.stack-row{gap:12px}.project,.project--dbrocket,.project--filmograf,.stack-row{grid-template-columns:1fr}.project--dbrocket .project-images-row,.project--dbrocket .project-info,.project--filmograf .project-images-row,.project--filmograf .project-info,.project-images-row,.project-info{order:0}.contact{padding:32px 24px 80px}.contact-title{font-size:30px}.contact-email{width:100%;max-width:340px}.footer{padding:24px}}