@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;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:300 700;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:300 700;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_e5349e44-module__2w4zKG__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_e5349e44-module__2w4zKG__variable{--font-sans:"Space Grotesk", "Space Grotesk 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_cb3ea6cd-module__885oPa__className{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.ibm_plex_mono_cb3ea6cd-module__885oPa__variable{--font-mono:"IBM Plex Mono", "IBM Plex Mono Fallback"}
:root{--bg:#080b10;--surface:#0d1118;--surface-2:#121721;--surface-3:#171d28;--text:#f4f7fb;--muted:#99a3b1;--subtle:#687383;--line:#ffffff1f;--line-strong:#ffffff38;--blue:#146ef5;--blue-2:#2d7ff9;--blue-soft:#146ef521;--lime:#c8ff62;--header:#080b10c7;--shadow:0 24px 80px #00000059;--radius:2px;--shell:min(1360px, calc(100vw - 72px))}html[data-theme=light]{--bg:#f2f4f7;--surface:#fff;--surface-2:#e9edf2;--surface-3:#dde3ea;--text:#0a0d12;--muted:#4d5968;--subtle:#6d7885;--line:#080b1021;--line-strong:#080b1042;--blue-soft:#146ef51a;--header:#f2f4f7d1;--shadow:0 24px 80px #1924331f}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{background:var(--bg);color:var(--text);font-family:var(--font-sans), sans-serif;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.55}::selection{background:var(--blue);color:#fff}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{color:inherit}svg{display:block}.shell{width:var(--shell);margin-inline:auto}.skip-link{z-index:1000;background:var(--text);color:var(--bg);padding:10px 16px;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:none}:focus-visible{outline:2px solid var(--blue-2);outline-offset:4px}.site-header{z-index:100;background:var(--header);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);height:76px;position:fixed;inset:0 0 auto}.header-inner{justify-content:space-between;align-items:center;height:100%;display:flex}.wordmark{letter-spacing:-.02em;align-items:center;gap:14px;font-weight:650;display:inline-flex}.wordmark-logo{object-fit:contain;width:34px;height:32px;display:block}.wordmark-name{font-size:14px}.main-nav{align-items:center;gap:32px;font-size:13px;font-weight:500;display:flex}.main-nav>a{color:var(--muted);transition:color .2s}.main-nav>a:hover{color:var(--text)}.main-nav .nav-contact{color:var(--text);align-items:center;gap:8px;display:inline-flex}.nav-contact svg,.project-link-label svg,.button svg,.text-link svg,.footer svg,.next-project svg{fill:none;stroke:currentColor;stroke-width:1.5px;width:15px}.theme-toggle{border:1px solid var(--line-strong);cursor:pointer;background:0 0;border-radius:999px;width:45px;height:26px;padding:0}.theme-orbit{height:100%;display:block;position:relative}.theme-orbit i{background:var(--text);border-radius:50%;width:16px;height:16px;transition:transform .3s,background .3s;position:absolute;top:4px;left:5px}html[data-theme=light] .theme-orbit i{background:var(--blue);transform:translate(18px)}.menu-toggle{display:none}.hero{grid-template-rows:1fr auto;grid-template-columns:1.05fr .95fr;min-height:100svh;padding-top:76px;display:grid;position:relative}.hero-copy{border-right:1px solid var(--line);flex-direction:column;justify-content:center;padding:84px 64px 72px 0;display:flex}.eyebrow,.section-label{font-family:var(--font-mono), monospace;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0;font-size:11px;line-height:1.4}.hero-eyebrow{align-items:center;gap:10px;display:flex}.hero-eyebrow>span:last-child{margin-left:auto}.status-dot{background:var(--lime);border-radius:50%;width:6px;height:6px;box-shadow:0 0 12px #c8ff6299}.hero h1{letter-spacing:-.065em;text-wrap:balance;max-width:850px;margin:36px 0 28px;font-size:clamp(53px,5.5vw,92px);font-weight:560;line-height:.99}.hero-lead{width:min(580px,88%);color:var(--muted);letter-spacing:-.015em;margin:0;font-size:clamp(17px,1.45vw,21px);line-height:1.55}.hero-proof{border-left:2px solid var(--blue);width:min(580px,88%);color:var(--text);margin:22px 0 0;padding-left:16px;font-size:13px;line-height:1.55}.hero-actions{align-items:center;gap:32px;margin-top:36px;display:flex}.button{cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:22px;min-height:48px;padding:0 20px;font-size:13px;font-weight:600;transition:background .2s,color .2s,border .2s,transform .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--blue);color:#fff}.button-primary:hover{background:#0f5ed5}.text-link{border-bottom:1px solid var(--line-strong);align-items:center;gap:10px;padding-bottom:5px;font-size:13px;display:inline-flex}.hero-meta{border-top:1px solid var(--line);min-height:48px;font-family:var(--font-mono), monospace;text-transform:uppercase;letter-spacing:.1em;color:var(--subtle);grid-column:1/-1;align-items:center;gap:18px;font-size:10px;display:flex}.hero-meta i{background:var(--line-strong);width:36px;height:1px}.hero-visual{background:var(--surface);min-height:610px;position:relative;overflow:hidden}.visual-grid{opacity:.62;background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);background-size:68px 68px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 20% 85%,#0000);mask-image:linear-gradient(#0000,#000 20% 85%,#0000)}.hero-visual:after{content:"";background:radial-gradient(circle at 50% 50%, var(--blue-soft), transparent 48%);position:absolute;inset:0}.node{z-index:2;border:1px solid var(--line-strong);background:color-mix(in srgb, var(--surface) 88%, transparent);width:clamp(142px,22%,160px);height:92px;box-shadow:var(--shadow);padding:14px;position:absolute}.node>span{font-family:var(--font-mono), monospace;letter-spacing:.14em;color:var(--subtle);font-size:8px;display:block}.node>strong{margin-top:17px;font-size:14px;font-weight:500;display:block}.node>i{font-family:var(--font-mono), monospace;color:var(--subtle);font-size:8px;font-style:normal;position:absolute;bottom:8px;right:10px}.node-input{top:29%;left:8%}.node-process{place-items:center;width:clamp(126px,19.5%,142px);height:126px;display:grid;top:43%;left:43%}.node-process>span{position:absolute;top:10px;left:12px}.node-output{border-color:#146ef5b3;bottom:20%;right:7%}.process-rings{width:54px;height:54px;animation:12s linear infinite rotate;position:relative}.process-rings i{border:1px solid var(--blue);border-radius:50%;position:absolute;inset:0}.process-rings i:nth-child(2){border-color:var(--line-strong);inset:9px}.process-rings i:nth-child(3){background:var(--blue);inset:20px}.flow-connector{z-index:1;pointer-events:none;position:absolute;overflow:visible}.flow-connector-one{width:calc(35% - clamp(142px,22%,160px));height:calc(14% + 17px);top:calc(29% + 46px);left:calc(8% + clamp(142px,22%,160px))}.flow-connector-two{width:calc(50% - clamp(142px,22%,160px) - clamp(126px,19.5%,142px));height:calc(37% - 109px);top:calc(43% + 63px);left:calc(43% + clamp(126px,19.5%,142px))}.flow-path{fill:none;stroke:var(--line-strong);stroke-width:1px;vector-effect:non-scaling-stroke}.flow-signal{fill:var(--surface);stroke:var(--blue);stroke-width:1.5px;vector-effect:non-scaling-stroke}.flow-signal-solid{fill:var(--blue)}.visual-coordinate,.visual-caption{font-family:var(--font-mono), monospace;letter-spacing:.12em;color:var(--subtle);font-size:8px;position:absolute}.coord-a{top:24px;left:24px}.coord-b{top:24px;right:24px}.visual-caption{writing-mode:vertical-rl;bottom:24px;left:24px;transform:rotate(180deg)}@keyframes rotate{to{transform:rotate(360deg)}}.section{border-bottom:1px solid var(--line);padding-block:clamp(110px,12vw,180px)}.section-heading h2,.about-grid h2,.experience-intro h2,.contact-heading h2{letter-spacing:-.055em;margin:0;font-size:clamp(42px,5vw,74px);font-weight:520;line-height:1.05}.section-heading h2 span,.about-grid h2 span{color:var(--subtle)}.split-heading{grid-template-columns:25% 75%;align-items:start;display:grid}.value-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-top:90px;display:grid}.value-reveal:not(:last-child){border-right:1px solid var(--line)}.value-card{flex-direction:column;min-height:260px;padding:28px 30px;display:flex}.value-card>span{font-family:var(--font-mono), monospace;color:var(--blue);font-size:10px}.value-card h3{letter-spacing:-.025em;margin:auto 0 14px;font-size:20px;font-weight:550}.value-card p{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.projects-heading{justify-content:space-between;align-items:end;gap:70px;display:flex}.projects-heading .section-label{margin-bottom:30px}.projects-heading>p{width:330px;color:var(--muted);margin:0 0 8px}.projects-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1px;margin-top:90px;display:grid}.project-reveal:last-child:nth-child(odd){grid-column:1/-1}.project-reveal:last-child:nth-child(odd) .project-card-link{grid-template-columns:1fr 1fr;display:grid}.project-reveal:last-child:nth-child(odd) .project-visual{height:100%;min-height:410px}.project-card{background:var(--bg);height:100%}.project-card-link{height:100%;display:block}.project-card-content{min-height:380px;padding:30px 34px 36px;position:relative}.project-index{font-family:var(--font-mono), monospace;color:var(--subtle);font-size:9px;position:absolute;top:31px;right:34px}.project-card h3{letter-spacing:-.045em;max-width:530px;margin:25px 0 16px;font-size:clamp(28px,3vw,44px);font-weight:520;line-height:1.08}.project-card-content>p:not(.eyebrow){max-width:540px;min-height:50px;color:var(--muted);margin:0}.tag-list{flex-wrap:wrap;gap:6px;margin-top:28px;display:flex}.tag-list span{border:1px solid var(--line);font-family:var(--font-mono), monospace;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);padding:6px 9px;font-size:9px}.project-link-label{align-items:center;gap:10px;font-size:13px;display:inline-flex;position:absolute;bottom:34px;left:34px}.project-card-link:hover .project-link-label svg{transform:translate(2px,-2px)}.project-card-link:hover .mock-window{transform:translateY(-5px)}.project-visual{background-color:var(--surface-2);background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);background-size:35px 35px;height:410px;padding:56px 48px 0;overflow:hidden}.project-visual.is-large{height:min(710px,68vw);padding:75px 8% 0}.mock-window{border:1px solid var(--line-strong);background:var(--surface);height:100%;box-shadow:var(--shadow);transition:transform .4s cubic-bezier(.2,.8,.2,1);overflow:hidden}.mock-topbar{border-bottom:1px solid var(--line);align-items:center;gap:6px;height:34px;padding:0 12px;display:flex}.mock-topbar i{background:var(--line-strong);border-radius:50%;width:5px;height:5px}.mock-topbar span{font-family:var(--font-mono), monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--subtle);margin-left:auto;font-size:7px}.visual-audit{background-color:#0d2436}.visual-image{background-color:#273244}.visual-canvas{background-color:#191e26}.visual-report{background-color:#10243b}html[data-theme=light] .project-visual{filter:saturate(.9)}.audit-mock{grid-template-columns:54px 1fr 30%;height:calc(100% - 34px);display:grid}.audit-mock aside,.report-mock aside{border-right:1px solid var(--line);flex-direction:column;align-items:center;gap:18px;padding-top:14px;display:flex}.audit-mock aside b{background:var(--blue);color:#fff;place-items:center;width:25px;height:25px;font-size:8px;display:grid}.audit-mock aside i,.report-mock aside i{background:var(--line-strong);width:16px;height:2px}.audit-mock main{padding:28px;position:relative}.mock-label{font-family:var(--font-mono), monospace;text-transform:uppercase;color:var(--subtle);font-size:8px}.score-ring{background:conic-gradient(var(--blue) 0 82%, var(--surface-3) 82%);border-radius:50%;place-items:center;width:105px;height:105px;margin-top:27px;font-size:28px;display:grid;position:relative}.score-ring:after{content:"";background:var(--surface);border-radius:50%;position:absolute;inset:8px}.score-ring{isolation:isolate}.score-ring:after{z-index:-1}.score-ring small{color:var(--muted);font-size:8px}.audit-bars{gap:8px;display:grid;position:absolute;bottom:30px;left:28px;right:28px}.audit-bars i{background:linear-gradient(90deg,var(--blue) 0 76%,var(--surface-3) 76%);height:5px}.audit-bars i:nth-child(2){background:linear-gradient(90deg,var(--blue) 0 58%,var(--surface-3) 58%)}.audit-bars i:nth-child(3){background:linear-gradient(90deg,var(--blue) 0 91%,var(--surface-3) 91%)}.audit-panel{border-left:1px solid var(--line);padding:24px 18px}.audit-panel span{color:var(--muted);font-size:9px}.audit-panel b{margin:5px 0 25px;font-size:16px;display:block}.audit-panel i{background:var(--surface-2);height:38px;margin-bottom:7px;display:block}.image-mock{height:calc(100% - 34px);position:relative}.image-mock>aside{border-bottom:1px solid var(--line);align-items:center;gap:22px;height:28px;padding:0 14px;display:flex}.image-mock>aside span{font-family:var(--font-mono), monospace;color:var(--subtle);font-size:7px}.image-mock main{grid-template-columns:40% 1fr;gap:10px;padding:16px;display:grid}.source-frame{background:#d6dae0;height:190px;padding:20px}.source-frame i{clip-path:polygon(50% 0,100% 100%,0 100%);background:linear-gradient(135deg,#718096 50%,#1c5e9e 50%);height:100%;display:block}.generation-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.generation-grid i{background:linear-gradient(145deg,#1d4c6a,#79a4b8)}.generation-grid i:nth-child(2){background:linear-gradient(45deg,#21476e,#c8ff62)}.generation-grid i:nth-child(3){background:linear-gradient(135deg,#29384d,#146ef5)}.generation-grid i:nth-child(4){background:linear-gradient(35deg,#111827,#8396b0)}.prompt-line{border:1px solid var(--line);height:32px;font-family:var(--font-mono), monospace;color:var(--muted);align-items:center;gap:8px;padding:0 10px;font-size:7px;display:flex;position:absolute;bottom:16px;left:16px;right:16px}.prompt-line b{color:var(--blue)}.prompt-line i{background:var(--blue);width:45px;height:3px;margin-left:auto;animation:2s ease-in-out infinite loading}@keyframes loading{50%{opacity:.5;width:20px}}.canvas-mock{grid-template-columns:45px 1fr 27%;height:calc(100% - 34px);display:grid}.tool-rail{border-right:1px solid var(--line);flex-direction:column;align-items:center;gap:18px;padding-top:18px;display:flex}.tool-rail i{border:1px solid var(--line-strong);width:11px;height:11px}.canvas-mock main{background-image:radial-gradient(var(--line-strong) .7px,transparent .7px);background-size:12px 12px;place-items:center;padding:20px;display:grid}.canvas-sheet{color:#fff;background:#146ef5;width:158px;height:210px;padding:16px;position:relative}.canvas-sheet span{font-family:var(--font-mono), monospace;letter-spacing:.1em;font-size:6px}.canvas-sheet strong{letter-spacing:-.09em;font-size:31px;line-height:.78;position:absolute;bottom:16px;left:16px}.canvas-sheet i{border:1px solid #fff9;border-radius:50%;width:40px;height:40px;position:absolute;top:30px;right:14px}.canvas-mock>aside{border-left:1px solid var(--line);padding:20px 12px}.canvas-mock>aside span{color:var(--muted);font-size:9px}.canvas-mock>aside i{background:var(--surface-2);height:22px;margin-top:8px;display:block}.canvas-mock>aside b{background:var(--blue);color:#fff;text-align:center;width:100%;margin-top:22px;padding:7px;font-size:8px;font-weight:500;display:block}.report-mock{grid-template-columns:70px 1fr;height:calc(100% - 34px);display:grid}.report-mock aside b{writing-mode:vertical-rl;font-family:var(--font-mono), monospace;letter-spacing:.15em;font-size:7px;transform:rotate(180deg)}.report-mock main{padding:25px}.report-heading{justify-content:space-between;align-items:start;display:flex}.report-heading span{color:var(--muted);font-size:12px}.report-heading b{font-size:39px;font-weight:450}.report-chart{border-bottom:1px solid var(--line);align-items:end;gap:8px;height:120px;margin-top:22px;display:flex}.report-chart i{background:var(--blue-soft);border-top:2px solid var(--blue);flex:1;height:40%}.report-chart i:nth-child(2){height:62%}.report-chart i:nth-child(3){height:48%}.report-chart i:nth-child(4){height:82%}.report-chart i:nth-child(5){height:70%}.report-chart i:nth-child(6){height:92%}.report-cards{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px;display:grid}.report-cards i{background:var(--surface-2);height:45px}.process-section{background:var(--surface);overflow:hidden}.process-grid{grid-template-columns:repeat(4,1fr);margin-top:100px;display:grid}.process-step{min-height:320px;padding-right:26px}.process-step>span{font-family:var(--font-mono), monospace;color:var(--blue);font-size:10px}.process-line{align-items:center;height:56px;margin-top:30px;display:flex}.process-line:before{content:"";border:1px solid var(--blue);background:var(--surface);z-index:1;width:10px;height:10px}.process-line i{background:var(--line-strong);width:calc(100% + 26px);height:1px;display:block}.process-reveal:last-child .process-line i{background:linear-gradient(90deg,var(--line-strong),transparent)}.process-step h3{letter-spacing:-.03em;margin:26px 0 12px;font-size:21px;font-weight:550}.process-step p{color:var(--muted);max-width:240px;font-size:14px}.process-summary{border-top:1px solid var(--line);letter-spacing:-.04em;max-width:950px;color:var(--muted);margin:50px 0 0 25%;padding:45px 0 0;font-size:clamp(24px,3vw,40px);line-height:1.28}.about-grid{grid-template-columns:1fr 1fr;gap:8%;display:grid}.about-grid .section-label{margin-bottom:30px}.about-copy{padding-top:45px}.about-copy>p{letter-spacing:-.025em;color:var(--muted);margin:0;font-size:clamp(18px,2vw,25px);line-height:1.55}.profile-facts{flex-wrap:wrap;gap:7px;margin-top:40px;display:flex}.profile-facts span{border:1px solid var(--line);font-family:var(--font-mono), monospace;text-transform:uppercase;color:var(--muted);padding:8px 10px;font-size:9px}.skills-grid{border-top:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin-top:120px;display:grid}.skill-reveal:not(:last-child){border-right:1px solid var(--line)}.skill-group{min-height:270px;padding:28px 24px 10px 0}.skill-reveal:not(:first-child) .skill-group{padding-left:24px}.skill-group h3{margin:0 0 30px;font-size:15px;font-weight:550}.skill-group ul,.case-row ul{margin:0;padding:0;list-style:none}.skill-group li{border-bottom:1px solid var(--line);color:var(--muted);padding:9px 0;font-size:13px}.experience-intro{grid-template-columns:24% 1fr;align-items:start;gap:1%;display:grid}.experience-intro>p:last-child{max-width:580px;color:var(--muted);grid-column:2;margin:28px 0 0;font-size:18px}.experience-list{border-top:1px solid var(--line);margin-top:90px}.experience-item{border-bottom:1px solid var(--line);grid-template-columns:8% 42% 1fr;gap:3%;padding:34px 0;display:grid}.experience-item>span{font-family:var(--font-mono), monospace;color:var(--blue);font-size:9px}.experience-item h3{letter-spacing:-.03em;margin:0 0 9px;font-size:22px;font-weight:540}.experience-item p{max-width:530px;color:var(--muted);margin:0;font-size:14px}.experience-meta{justify-content:space-between;gap:20px;font-size:12px;display:flex}.experience-meta strong{font-weight:500}.experience-meta span{font-family:var(--font-mono), monospace;color:var(--subtle);font-size:9px}.education-strip{background:var(--line);border:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1px;margin-top:90px;display:grid}.education-strip>div{background:var(--surface);padding:28px}.education-strip span{font-family:var(--font-mono), monospace;text-transform:uppercase;letter-spacing:.1em;color:var(--blue);margin-bottom:22px;font-size:9px;display:block}.education-strip p{color:var(--muted);margin:8px 0;font-size:14px}.contact-section{background:var(--blue);color:#fff;padding-top:clamp(110px,12vw,180px)}.contact-section .section-label{color:#ffffffa6}.contact-heading{grid-template-columns:25% 1fr;display:grid}.contact-heading h2{font-size:clamp(55px,7.5vw,110px);line-height:.93}.contact-heading>p:last-child{color:#ffffffc2;grid-column:2;max-width:540px;margin:36px 0 0;font-size:18px}.contact-paths{border-top:1px solid #ffffff59;border-bottom:1px solid #ffffff59;grid-template-columns:1fr 1fr;margin:70px 0 0 25%;display:grid}.contact-paths article{min-height:230px;padding:28px 32px 30px 0}.contact-paths article+article{border-left:1px solid #ffffff59;padding-left:32px}.contact-paths span{font-family:var(--font-mono), monospace;text-transform:uppercase;letter-spacing:.1em;color:#ffffffa6;font-size:9px}.contact-paths h3{letter-spacing:-.035em;max-width:430px;margin:42px 0 12px;font-size:22px;font-weight:550;line-height:1.2}.contact-paths p{color:#ffffffb8;max-width:460px;margin:0;font-size:14px}.contact-form{margin:70px 0 120px 25%}.form-row{grid-template-columns:1fr 1fr;gap:30px;display:grid}.contact-form label{display:block}.contact-form label>span{font-family:var(--font-mono), monospace;text-transform:uppercase;letter-spacing:.1em;color:#ffffffa6;margin-bottom:8px;font-size:9px;display:block}.contact-form input,.contact-form textarea{color:#fff;resize:vertical;background:0 0;border:0;border-bottom:1px solid #fff6;border-radius:0;width:100%;padding:14px 0}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#ffffff8c}.contact-form>label{margin-top:30px}.contact-form input:focus,.contact-form textarea:focus{border-color:#fff;outline:none}.form-footer{justify-content:space-between;align-items:center;gap:30px;margin-top:28px;display:flex}.form-footer p{color:#ffffffa6;max-width:340px;margin:0;font-size:11px}.contact-form .button-primary{color:#0a0d12;background:#fff}.contact-form .button-primary:hover{color:#fff;background:#0a0d12}.form-error{color:#fff;border:1px solid #ffffff80;padding:10px 12px;font-size:12px}.honeypot{left:-9999px;position:absolute!important}.footer{border-top:1px solid #ffffff59;justify-content:space-between;align-items:center;min-height:120px;display:flex}.footer>a{letter-spacing:-.03em;align-items:center;gap:12px;font-size:20px;display:inline-flex}.footer>div{font-family:var(--font-mono), monospace;text-transform:uppercase;letter-spacing:.07em;color:#ffffffb3;gap:30px;font-size:9px;display:flex}.reveal{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.2,.8,.2,1);transform:translateY(24px)}.reveal.is-visible{opacity:1;transform:none}.value-reveal:nth-child(2),.process-reveal:nth-child(2),.skill-reveal:nth-child(2){transition-delay:80ms}.value-reveal:nth-child(3),.process-reveal:nth-child(3),.skill-reveal:nth-child(3){transition-delay:.16s}.value-reveal:nth-child(4),.process-reveal:nth-child(4),.skill-reveal:nth-child(4){transition-delay:.24s}.case-page{padding-top:76px}.case-hero{padding-top:52px}.back-link{font-family:var(--font-mono), monospace;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:10px;display:inline-block}.case-hero-grid{grid-template-columns:1fr auto;align-items:end;gap:50px;margin:70px 0 65px;display:grid}.case-hero h1{letter-spacing:-.07em;max-width:1000px;margin:22px 0 28px;font-size:clamp(55px,8vw,118px);font-weight:540;line-height:.94}.case-lead{max-width:700px;color:var(--muted);margin:0;font-size:20px}.case-index{font-family:var(--font-mono), monospace;color:var(--blue);font-size:64px;line-height:1}.case-index span{color:var(--subtle);font-size:14px}.case-body{padding-block:70px 130px}.case-row{border-bottom:1px solid var(--line);grid-template-columns:24% 1fr;padding:70px 0;display:grid}.case-row>div{max-width:850px}.case-row h2{letter-spacing:-.05em;margin:0 0 22px;font-size:clamp(31px,4vw,54px);font-weight:520;line-height:1.08}.case-row>div>p{color:var(--muted);font-size:20px;line-height:1.6}.case-columns{grid-template-columns:24% 1fr 1fr;gap:4%}.case-row li{border-bottom:1px solid var(--line);color:var(--muted);padding:12px 0}.case-row li:before{content:"↳";color:var(--blue);margin-right:10px}.case-flow{border-top:1px solid var(--line);counter-reset:none;margin:42px 0 0;padding:0;list-style:none}.case-flow li{grid-template-columns:64px 1fr;align-items:baseline;gap:20px;padding:20px 0;display:grid}.case-flow li:before{content:none}.case-flow li span{font-family:var(--font-mono), monospace;color:var(--blue);font-size:10px}.case-note{border-left:2px solid var(--blue);background:var(--blue-soft);margin-top:30px;padding:18px 20px;font-size:14px!important}.case-disclaimer{border-left:2px solid var(--blue);background:var(--blue-soft);color:var(--muted);margin:40px 0 0 24%;padding:20px;font-size:14px}.next-project{background:var(--blue);color:#fff}.next-project a{width:var(--shell);grid-template-columns:20% 1fr auto;align-items:center;gap:30px;min-height:280px;margin-inline:auto;display:grid}.next-project span{font-family:var(--font-mono), monospace;text-transform:uppercase;letter-spacing:.1em;color:#ffffffa6;font-size:10px}.next-project strong{letter-spacing:-.05em;max-width:800px;font-size:clamp(30px,4vw,58px);font-weight:520;line-height:1.05}.next-project svg{width:38px}.case-footer{min-height:100px;font-family:var(--font-mono), monospace;color:var(--muted);justify-content:space-between;align-items:center;font-size:10px;display:flex}.not-found{min-height:100svh;padding-top:180px}.not-found h1{letter-spacing:-.07em;font-size:clamp(55px,9vw,120px);line-height:1}@media (max-width:1100px){:root{--shell:min(100% - 48px, 1360px)}.hero{grid-template-columns:1fr}.hero-copy{border-right:0;border-bottom:1px solid var(--line);min-height:660px;padding-right:0}.hero-visual{min-height:560px}.skills-grid{grid-template-columns:1fr 1fr}.skill-reveal:nth-child(2){border-right:0}.skill-reveal:nth-child(-n+2){border-bottom:1px solid var(--line)}.process-grid{grid-template-columns:1fr 1fr;gap:40px 0}.process-step{min-height:250px}.project-visual{height:350px;padding:45px 32px 0}.project-card-content{min-height:410px}}@media (max-width:760px){:root{--shell:calc(100vw - 32px)}.site-header{height:68px}.wordmark-name{display:none}.menu-toggle{background:0 0;border:0;align-items:center;gap:10px;padding:8px 0;font-size:12px;display:inline-flex}.menu-icon{width:20px;height:12px;position:relative}.menu-icon i{background:currentColor;width:100%;height:1px;transition:transform .2s;position:absolute;left:0}.menu-icon i:last-child{bottom:0}.main-nav{background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:0;padding:30px 16px;display:none;position:fixed;inset:68px 0 auto}.main-nav.is-open{display:flex}.main-nav>a{border-bottom:1px solid var(--line);width:100%;padding:15px 0;font-size:16px}.theme-toggle{margin-top:20px}.hero{padding-top:68px}.hero-copy{min-height:620px;padding:65px 0 55px}.hero-eyebrow>span:last-child{display:none}.hero h1{margin-top:30px;font-size:clamp(45px,13vw,67px)}.hero-lead{width:100%;font-size:16px}.hero-actions{flex-direction:column;align-items:flex-start;gap:22px}.hero-visual{min-height:440px;margin-inline:-16px}.node{width:114px;height:74px;padding:11px}.node>strong{margin-top:12px;font-size:12px}.node-process{width:101px;height:101px;top:45%;left:37%}.node-input{top:31%;left:4%}.node-output{bottom:22%;right:3%}.process-rings{width:45px;height:45px}.process-rings i:nth-child(2){inset:8px}.process-rings i:nth-child(3){inset:17px}.flow-connector-one{width:calc(33% - 114px);height:calc(14% + 13.5px);top:calc(31% + 37px);left:calc(4% + 114px)}.flow-connector-two{width:calc(60% - 215px);height:calc(33% - 87.5px);top:calc(45% + 50.5px);left:calc(37% + 101px)}.hero-meta{white-space:nowrap;gap:12px;overflow:hidden}.section{padding-block:95px}.split-heading,.about-grid,.experience-intro,.contact-heading{grid-template-columns:1fr}.split-heading .section-label,.about-grid .section-label{margin-bottom:25px}.section-heading h2,.about-grid h2,.experience-intro h2{font-size:42px}.value-grid,.skills-grid{grid-template-columns:1fr;margin-top:60px}.value-reveal,.skill-reveal{border-bottom:1px solid var(--line);border-right:0!important}.value-card{min-height:210px;padding:24px 0}.projects-heading{flex-direction:column;align-items:flex-start;gap:25px}.projects-heading>p{width:100%}.projects-grid{grid-template-columns:1fr;margin-top:55px}.project-reveal:last-child:nth-child(odd){grid-column:auto}.project-reveal:last-child:nth-child(odd) .project-card-link{display:block}.project-reveal:last-child:nth-child(odd) .project-visual{height:295px;min-height:0}.project-visual{height:295px;padding:38px 20px 0}.project-card-content{min-height:390px;padding:26px 22px}.project-index{top:27px;right:22px}.project-card h3{font-size:34px}.project-link-label{bottom:27px;left:22px}.audit-mock{grid-template-columns:38px 1fr}.audit-panel{display:none}.image-mock main{grid-template-columns:1fr}.source-frame{display:none}.canvas-mock{grid-template-columns:35px 1fr}.canvas-mock>aside{display:none}.report-mock{grid-template-columns:45px 1fr}.process-grid{grid-template-columns:1fr;gap:0;margin-top:60px}.process-step{min-height:230px;padding:0}.process-line i{width:100%}.process-summary{margin-left:0;font-size:27px}.about-copy{padding-top:55px}.about-copy>p{font-size:18px}.skill-group,.skill-reveal:not(:first-child) .skill-group{min-height:auto;padding:25px 0}.experience-intro>p:last-child{grid-column:auto}.experience-item{grid-template-columns:10% 1fr;gap:18px}.experience-meta{grid-column:2;margin-top:7px}.education-strip{grid-template-columns:1fr}.contact-heading h2{margin-top:25px;font-size:52px}.contact-heading>p:last-child{grid-column:auto}.contact-paths{grid-template-columns:1fr;margin:55px 0 0}.contact-paths article{min-height:auto;padding:25px 0}.contact-paths article+article{border-top:1px solid #ffffff59;border-left:0;padding-left:0}.contact-paths h3{margin-top:28px}.contact-form{margin:60px 0 85px}.form-row{grid-template-columns:1fr}.form-footer{flex-direction:column;align-items:flex-start}.footer{flex-direction:column;align-items:flex-start;gap:30px;padding:30px 0}.footer>div{flex-direction:column;gap:8px}.case-page{padding-top:68px}.case-hero{padding-top:34px}.case-hero-grid{grid-template-columns:1fr;margin:50px 0 40px}.case-index{display:none}.case-hero h1{font-size:52px}.case-lead{font-size:17px}.project-visual.is-large{height:390px;margin-inline:-16px;padding:45px 20px 0}.case-body{padding-block:35px 85px}.case-row,.case-columns{grid-template-columns:1fr;gap:35px;padding:55px 0}.case-row>div>p{font-size:17px}.case-disclaimer{margin-left:0}.next-project a{grid-template-columns:1fr auto;min-height:240px}.next-project span{grid-column:1/-1;align-self:end}.next-project strong{align-self:start;font-size:34px}}@media (max-width:380px){.node{width:100px;height:70px}.node-process{width:90px;height:90px;left:36%}.node-input{left:3%}.node-output{right:2%}.flow-connector-one{width:calc(33% - 100px);height:calc(14% + 10px);top:calc(31% + 35px);left:calc(3% + 100px)}.flow-connector-two{width:calc(62% - 190px);height:calc(33% - 80px);top:calc(45% + 45px);left:calc(36% + 90px)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}
