@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-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:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-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:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_246ccd{font-family:Geist,Geist Fallback;font-style:normal}.__variable_246ccd{--font-geist-sans:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e038a29029a234f2-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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-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:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-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:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_c29908{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_c29908{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}

/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.resize{resize:both}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}}:root{--paper:#f3f2ed;--ink:#11110f;--muted:#74736d;--line:#11110f29;--accent:#2458ff;--scroll-progress:0%;--pad:clamp(1.25rem,4vw,4.75rem);--ease:cubic-bezier(.2,.75,.25,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-geist-sans),Arial,sans-serif;margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}a,button{-webkit-tap-highlight-color:transparent}::selection{background:var(--accent);color:#fff}.mono{font-family:var(--font-geist-mono),monospace}.site-header{z-index:50;height:72px;padding:0 var(--pad);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);animation:header-enter .42s var(--ease) both;background:#f3f2eddb;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:fixed;inset:0 0 auto}.site-header:after{content:"";width:var(--scroll-progress);background:var(--accent);height:1px;transition:width 80ms linear;position:absolute;bottom:-1px;left:0}.wordmark{align-items:center;width:max-content;display:inline-flex}.brand-copy{transition:transform .24s var(--ease);flex-direction:column;gap:.14rem;display:flex}.brand-copy strong{letter-spacing:.12em;font-size:.67rem;font-weight:640;line-height:1}.brand-copy small{color:var(--muted);font:.43rem/1 var(--font-geist-mono),monospace;letter-spacing:.1em;transition:color .18s}.wordmark:hover .brand-copy{transform:translate(2px)}.wordmark:hover .brand-copy small{color:var(--accent)}.site-header nav{align-items:center;gap:clamp(1.2rem,3vw,2.8rem);display:flex}.availability,.site-header nav a{letter-spacing:.01em;font-size:.74rem;transition:color .18s}.site-header nav a{padding:.5rem 0;position:relative}.site-header nav a:after{content:"";transform-origin:100%;height:1px;transition:transform .24s var(--ease);background:currentColor;position:absolute;bottom:.22rem;left:0;right:0;transform:scaleX(0)}.site-header nav a:hover:after{transform-origin:0;transform:scaleX(1)}.site-header nav a:hover{color:var(--accent)}.availability{justify-self:end;align-items:center;gap:.6rem;display:flex}.availability i{background:var(--accent);border-radius:50%;width:7px;height:7px}.hero{min-height:100svh;padding:72px var(--pad) 2rem;border-bottom:1px solid var(--line);position:relative;overflow:hidden}.hero-grid{inset:72px var(--pad) 0;background:linear-gradient(to right,transparent calc(25% - 1px),var(--line) 25%,transparent calc(25% + 1px),transparent calc(50% - 1px),var(--line) 50%,transparent calc(50% + 1px),transparent calc(75% - 1px),var(--line) 75%,transparent calc(75% + 1px));opacity:.52;pointer-events:none;position:absolute}.hero-index{top:96px;left:var(--pad);letter-spacing:.08em;color:var(--muted);font-size:.62rem;position:absolute}.hero-content{z-index:2;flex-direction:column;justify-content:center;min-height:calc(100svh - 104px);padding-top:clamp(4rem,11vh,8rem);display:flex;position:relative}.eyebrow{font-family:var(--font-geist-mono),monospace;letter-spacing:.11em;margin:0;font-size:.68rem;line-height:1.4}.hero .eyebrow{margin-bottom:1.8rem;margin-left:25%}.hero h1{letter-spacing:-.078em;max-width:12ch;margin:0;font-size:clamp(3.4rem,8.65vw,9.3rem);font-weight:570;line-height:.88}.hero h1 span{color:var(--muted);font-weight:400}.hero-bottom{grid-template-columns:1fr 1fr;align-items:end;gap:2rem;margin-top:clamp(3rem,7vh,5.5rem);margin-left:50%;display:grid}.hero-bottom>p{letter-spacing:-.025em;max-width:31rem;margin:0;font-size:clamp(1rem,1.45vw,1.32rem);line-height:1.45}.hero-actions{justify-content:flex-end;align-items:center;gap:1.5rem;display:flex}.primary-link,.text-link{white-space:nowrap;align-items:center;gap:1rem;font-size:.79rem;display:inline-flex}.primary-link span,.text-link span{transition:transform .22s var(--ease);display:inline-block}.primary-link{background:var(--ink);color:var(--paper);padding:1rem 1.15rem;transition:background .18s,transform .18s}.primary-link:hover{background:var(--accent);transform:translateY(-2px)}.primary-link:hover span{transform:translate(3px)}.text-link{border-bottom:1px solid var(--ink);padding-bottom:.35rem;transition:color .18s,border-color .18s}.text-link:hover{color:var(--accent);border-color:var(--accent)}.text-link:hover span{transform:translate(2px,-2px)}.hero-coordinate{right:var(--pad);color:var(--muted);letter-spacing:.06em;font-size:.58rem;position:absolute;bottom:1.25rem}.hero-index{animation:hero-enter .36s 90ms var(--ease) both}.hero .eyebrow{animation:hero-enter .42s .14s var(--ease) both}.hero h1{animation:hero-title-enter .52s .18s var(--ease) both}.hero-bottom{animation:hero-enter .44s .29s var(--ease) both}.hero-coordinate{animation:hero-enter .36s .36s var(--ease) both}@keyframes header-enter{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:none}}@keyframes hero-enter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes hero-title-enter{0%{opacity:0;letter-spacing:-.095em;transform:translateY(28px)}to{opacity:1;letter-spacing:-.078em;transform:none}}.about-section,.contact-section,.work-section{padding:clamp(5.5rem,12vw,11rem) var(--pad)}.section-heading{grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:clamp(4rem,8vw,8rem);display:grid;position:relative}.section-heading:after{content:"";background:var(--line);transform-origin:0;height:1px;transition:transform .48s .12s var(--ease);position:absolute;bottom:-1.5rem;left:0;right:0;transform:scaleX(0)}.section-heading.is-visible:after{transform:scaleX(1)}.section-heading>div{grid-template-columns:25% 1fr;display:grid}.section-number{color:var(--muted);font-size:.66rem}.section-intro{letter-spacing:-.035em;max-width:28rem;margin:0;font-size:clamp(1.2rem,1.8vw,1.7rem);line-height:1.25}.projects-list{flex-direction:column;gap:clamp(6rem,12vw,12rem);display:flex}.project{grid-template-columns:minmax(0,8fr) minmax(280px,4fr);align-items:start;gap:clamp(1.5rem,4vw,4.75rem);display:grid}.project:nth-child(2n){grid-template-columns:minmax(280px,4fr) minmax(0,8fr)}.project:nth-child(2n) .project-preview{order:2}.project-preview{--shift-x:0px;--shift-y:0px;cursor:pointer;display:block;overflow:hidden}.project-preview-static{cursor:default}.project-visual{aspect-ratio:1.44;transform:translate3d(var(--shift-x),var(--shift-y),0) scale(1.001);transition:transform .32s var(--ease);will-change:transform;padding:clamp(1rem,2.2vw,2rem);position:relative;overflow:hidden}.project-preview:hover .project-visual{transform:translate3d(var(--shift-x),var(--shift-y),0) scale(1.018)}.visual-topline{letter-spacing:.1em;z-index:3;justify-content:space-between;font-size:clamp(.47rem,.6vw,.62rem);display:flex;position:relative}.preview-hint,.visual-topline{font-family:var(--font-geist-mono),monospace}.preview-hint{background:var(--ink);color:#fff;letter-spacing:.08em;opacity:0;transition:opacity .22s ease,transform .22s var(--ease);padding:.7rem .8rem;font-size:.58rem;position:absolute;bottom:1.25rem;right:1.25rem;transform:translateY(8px)}.project-preview:hover .preview-hint{opacity:1;transform:none}.preview-hint span{transition:transform .22s var(--ease);display:inline-block}.project-preview:hover .preview-hint span{transform:translate(2px,-2px)}.project.is-visible .visual-topline{animation:detail-enter .42s .16s var(--ease) backwards}.visual-xiru{color:#f5efe2;background:#070909}.xiru-interface{transition:opacity .42s 80ms var(--ease),transform .48s 80ms var(--ease);background:#0b0d0e;border:1px solid #d4af5d38;grid-template-columns:11% 1fr;display:grid;position:absolute;inset:15% 7% 8%;box-shadow:0 28px 65px #0000006b}.project:not(.is-visible) .xiru-interface{opacity:0;transform:translateY(14px)scale(.985)}.project.is-visible .xiru-interface{opacity:1;transform:none}.project-preview:hover .xiru-interface{transform:translateY(-4px)}.xiru-sidebar{color:#fff4df;background:#080a0b;border-right:1px solid #d4af5d29;flex-direction:column;align-items:center;gap:13%;padding:15% 0;display:flex}.xiru-sidebar b{letter-spacing:-.06em;font-size:clamp(.55rem,1vw,.85rem)}.xiru-sidebar span{aspect-ratio:1;border:1px solid #857f75;border-radius:50%;width:24%}.xiru-sidebar span:first-of-type{background:#d6ad58;border-color:#d6ad58;box-shadow:0 0 0 3px #d6ad581f}.xiru-dashboard{padding:6% 7%;position:relative}.xiru-heading small,.xiru-list small,.xiru-metrics span{font:.47rem var(--font-geist-mono);letter-spacing:.08em;color:#857f75}.xiru-heading strong{letter-spacing:-.045em;margin-top:1.5%;font-size:clamp(.9rem,2vw,1.8rem);display:block}.xiru-metrics{grid-template-columns:repeat(3,1fr);gap:3%;margin-top:5%;display:grid}.xiru-metrics div{transition:transform .26s var(--ease),border-color .22s ease;border-top:1px solid #d4af5d38;padding-top:6%}.project-preview:hover .xiru-metrics div:first-child{border-color:#f0c86aa6;transform:translateY(-3px)}.project-preview:hover .xiru-metrics div:nth-child(2){border-color:#f0c86aa6;transition-delay:35ms;transform:translateY(-3px)}.project-preview:hover .xiru-metrics div:nth-child(3){border-color:#f0c86aa6;transition-delay:70ms;transform:translateY(-3px)}.project.is-visible .xiru-metrics div:first-child{animation:detail-enter .38s .19s var(--ease) backwards}.project.is-visible .xiru-metrics div:nth-child(2){animation:detail-enter .38s .24s var(--ease) backwards}.project.is-visible .xiru-metrics div:nth-child(3){animation:detail-enter .38s .29s var(--ease) backwards}.xiru-metrics b{margin-top:6%;font-size:clamp(.7rem,1.5vw,1.25rem);font-weight:560;display:block}.xiru-progress{border-bottom:1px solid #d4af5d38;align-items:flex-end;gap:4%;height:27%;margin-top:5%;display:flex}.xiru-progress span{transition:height .36s var(--ease),background .22s ease;background:#d6ad58;flex:1}.xiru-progress span:first-child{height:38%}.xiru-progress span:nth-child(2){height:66%}.xiru-progress span:nth-child(3){height:49%}.xiru-progress span:nth-child(4){height:82%}.xiru-progress span:nth-child(5){height:61%}.xiru-progress span:nth-child(2),.xiru-progress span:nth-child(5){background:#8b713d}.project-preview:hover .xiru-progress span:first-child{height:48%}.project-preview:hover .xiru-progress span:nth-child(2){height:78%;transition-delay:30ms}.project-preview:hover .xiru-progress span:nth-child(3){height:61%;transition-delay:60ms}.project-preview:hover .xiru-progress span:nth-child(4){background:#f0c86a;height:94%;transition-delay:90ms}.project-preview:hover .xiru-progress span:nth-child(5){height:73%;transition-delay:.12s}.project.is-visible .xiru-progress span{animation:bar-rise .52s .26s var(--ease) backwards;transform-origin:bottom}.project.is-visible .xiru-progress span:nth-child(2){animation-delay:.3s}.project.is-visible .xiru-progress span:nth-child(3){animation-delay:.34s}.project.is-visible .xiru-progress span:nth-child(4){animation-delay:.38s}.project.is-visible .xiru-progress span:nth-child(5){animation-delay:.42s}.xiru-list{grid-template-columns:auto 1fr auto;align-items:center;gap:3%;margin-top:4%;display:grid}.xiru-list i{aspect-ratio:1;background:#d6ad582e;border:1px solid #d4af5d7a;border-radius:50%;width:clamp(10px,2vw,24px)}.xiru-list p{flex-direction:column;gap:2px;margin:0;font-size:clamp(.45rem,.75vw,.7rem);display:flex}.xiru-list strong{font-size:clamp(.5rem,.8vw,.72rem)}.xiru-status{font:.48rem var(--font-geist-mono);letter-spacing:.08em;color:#c1b8a9;align-items:center;gap:.4rem;display:flex;position:absolute;top:20%;right:9%}.xiru-status i{background:#75c26b;border-radius:50%;width:5px;height:5px}.visual-know{color:#f0f4f2;background:#0a0f0d}.know-interface{transition:opacity .42s 80ms var(--ease),transform .48s 80ms var(--ease);background:#111a16;border:1px solid #55cb962e;padding:5% 6%;position:absolute;inset:17% 7% 8%;box-shadow:0 24px 55px #0000006b}.project:not(.is-visible) .know-interface{opacity:0;transform:translateY(14px)scale(.985)}.project.is-visible .know-interface{opacity:1;transform:none}.project-preview:hover .know-interface{transform:translateY(-4px)}.know-header{border-bottom:1px solid #55cb9629;justify-content:space-between;align-items:center;padding-bottom:3%;display:flex}.know-header b{letter-spacing:-.05em;color:#55cb96;transition:letter-spacing .28s var(--ease),color .22s ease;font-family:Georgia,serif;font-size:clamp(.8rem,1.8vw,1.5rem)}.project-preview:hover .know-header b{letter-spacing:.04em;color:#6ae0ab}.know-funnel small,.know-header span,.know-summary small,.know-summary>span{font:.47rem var(--font-geist-mono);letter-spacing:.08em}.know-summary{margin-top:5%}.know-header span,.know-summary>span{color:#7c9993}.know-summary strong{letter-spacing:-.045em;transition:transform .3s var(--ease);margin-top:2%;font-family:Georgia,serif;font-size:clamp(1.2rem,3.4vw,3.2rem);font-weight:400;display:block}.project-preview:hover .know-summary strong{transform:translate(4px)}.know-summary small{color:#55cb96}.know-funnel{align-items:flex-end;gap:2%;height:37%;margin-top:5%;display:flex}.know-funnel div{color:#f0f4f2;transition:height .36s var(--ease),background .22s ease;background:#16241e;border:1px solid #55cb9621;flex-direction:column;flex:1;justify-content:space-between;padding:4%;display:flex}.know-funnel div:first-child{background:#146e51;height:100%}.know-funnel div:nth-child(2){background:#1b825f;height:82%}.know-funnel div:nth-child(3){background:#38a879;height:64%}.know-funnel div:nth-child(4){color:#0a0f0d;background:#55cb96;height:48%}.project-preview:hover .know-funnel div:first-child{height:92%}.project-preview:hover .know-funnel div:nth-child(2){height:88%;transition-delay:35ms}.project-preview:hover .know-funnel div:nth-child(3){height:72%;transition-delay:70ms}.project-preview:hover .know-funnel div:nth-child(4){height:60%;transition-delay:.105s}.project.is-visible .know-funnel div{animation:bar-rise .52s .25s var(--ease) backwards;transform-origin:bottom}.project.is-visible .know-funnel div:nth-child(2){animation-delay:.31s}.project.is-visible .know-funnel div:nth-child(3){animation-delay:.37s}.project.is-visible .know-funnel div:nth-child(4){animation-delay:.43s}.know-funnel span{font-size:clamp(.6rem,1.2vw,1rem)}.know-funnel small{opacity:.6}.visual-playground{color:#d8e0ff;background:#05030e}.playground-interface{transition:opacity .42s 80ms var(--ease),transform .48s 80ms var(--ease);grid-template-columns:.72fr 1.28fr;align-items:center;gap:7%;display:grid;position:absolute;inset:17% 7% 8%}.project:not(.is-visible) .playground-interface{opacity:0;transform:translateY(14px)scale(.985)}.project.is-visible .playground-interface{opacity:1;transform:none}.playground-connection,.playground-title small,.playground-title span{font:.48rem var(--font-geist-mono);letter-spacing:.09em;color:#48507a}.playground-title small{color:#9d5cff}.playground-title strong{letter-spacing:-.08em;color:#f9e84d;transition:letter-spacing .3s var(--ease),transform .3s var(--ease);margin:8% 0 5%;font-size:clamp(1.7rem,4.7vw,4.8rem);line-height:.82;display:block}.project-preview:hover .playground-title strong{letter-spacing:-.035em;transform:translate(3px)}.playground-title span{color:#00f5c4}.playground-arena{height:84%;transition:background-position .48s var(--ease),border-color .22s ease;background-color:#0c0820;background-image:linear-gradient(#9d5cff14 1px,#0000 0),linear-gradient(90deg,#9d5cff14 1px,#0000 0);background-position:0 0;background-size:13% 13%;border:1px solid #241a52;position:relative;overflow:hidden}.project-preview:hover .playground-arena{background-position:13% 13%;border-color:#4a3a9c}.playground-arena span{transition:background .22s ease,transform .32s var(--ease);background:#4a3a9c;position:absolute}.playground-arena span:first-of-type{width:25%;height:3%;bottom:12%;left:9%}.playground-arena span:nth-of-type(2){width:19%;height:3%;bottom:27%;left:36%}.playground-arena span:nth-of-type(3){width:27%;height:3%;bottom:44%;right:8%}.playground-arena span:nth-of-type(4){width:3%;height:18%;top:26%;left:15%}.playground-arena span:nth-of-type(5){width:3%;height:17%;top:14%;left:51%}.playground-arena span:nth-of-type(6){width:3%;height:17%;bottom:13%;right:17%}.playground-arena i{z-index:2;aspect-ratio:1;width:clamp(7px,1.2vw,13px);transition:left .38s var(--ease),bottom .38s var(--ease);position:absolute;transform:rotate(45deg)}.player-one{background:#00f5c4;bottom:18%;left:22%}.player-two{background:#ff2d78;bottom:51%;left:69%}.project-preview:hover .player-one{bottom:34%;left:39%;transform:rotate(135deg)}.project-preview:hover .player-two{bottom:58%;left:62%;transform:rotate(-45deg)}.project-preview:hover .playground-arena span:nth-of-type(2),.project-preview:hover .playground-arena span:nth-of-type(5){background:#9d5cff;transform:translateY(-2px)}.project.is-visible .playground-arena span{animation:obstacle-enter .36s .26s var(--ease) backwards}.project.is-visible .playground-arena span:nth-of-type(2),.project.is-visible .playground-arena span:nth-of-type(5){animation-delay:.33s}.project.is-visible .playground-arena span:nth-of-type(3),.project.is-visible .playground-arena span:nth-of-type(6){animation-delay:.4s}.project.is-visible .player-one{animation:player-one-enter .56s .33s var(--ease) backwards}.project.is-visible .player-two{animation:player-two-enter .56s .41s var(--ease) backwards}.playground-connection{color:#00f5c4;align-items:center;gap:.45rem;display:flex;position:absolute;bottom:0;right:0}.playground-connection i{background:#00f5c4;border-radius:50%;width:5px;height:5px}@keyframes detail-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes bar-rise{0%{opacity:.35;transform:scaleY(.12)}to{opacity:1;transform:scaleY(1)}}@keyframes obstacle-enter{0%{opacity:0;scale:.35 1}to{opacity:1;scale:1}}@keyframes player-one-enter{0%{opacity:0;bottom:8%;left:8%;transform:rotate(-45deg)scale(.65)}to{opacity:1;bottom:18%;left:22%;transform:rotate(45deg)scale(1)}}@keyframes player-two-enter{0%{opacity:0;bottom:66%;left:82%;transform:rotate(135deg)scale(.65)}to{opacity:1;bottom:51%;left:69%;transform:rotate(45deg)scale(1)}}.project[data-reveal]{opacity:1;transition:none;transform:none}.project[data-reveal] .project-preview{opacity:0;transition:opacity .46s var(--ease),transform .56s var(--ease);transform:translateY(30px)scale(.985)}.project[data-reveal] .project-meta{opacity:0;transition:opacity .42s .15s var(--ease),transform .42s .15s var(--ease);transform:translateY(18px)}.project[data-reveal].is-visible .project-meta,.project[data-reveal].is-visible .project-preview{opacity:1;transform:none}.project-meta{padding-top:.2rem}.project.is-visible .project-title-row{animation:detail-enter .42s .22s var(--ease) backwards}.project.is-visible .project-meta>p{animation:detail-enter .42s .28s var(--ease) backwards}.project.is-visible .project-details{animation:detail-enter .42s .34s var(--ease) backwards}.project-title-row{border-top:1px solid var(--line);grid-template-columns:1fr 3fr;align-items:baseline;padding-top:1rem;display:grid}.project-title-row span{color:var(--muted);font-size:.59rem}.project-title-row h2{letter-spacing:-.07em;transition:transform .26s var(--ease),letter-spacing .26s var(--ease);margin:0;font-size:clamp(2.7rem,5.2vw,5.8rem);font-weight:520;line-height:.9}.project:hover .project-title-row h2{letter-spacing:-.055em;transform:translate(4px)}.project-meta>p{max-width:22rem;margin:2rem 0 clamp(3rem,7vw,7rem) 25%;font-size:1rem;line-height:1.45}.project-details{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:1rem;padding-top:1rem;display:grid}.project-details ul{color:var(--muted);margin:0;padding:0;font-size:.68rem;line-height:1.75;list-style:none}.project-links{flex-direction:column;align-items:flex-start;gap:.7rem;font-size:.7rem;display:flex}.project-links .mono{color:var(--muted);margin-bottom:.5rem}.project-links a{border-bottom:1px solid var(--line);transition:color .18s ease,transform .22s var(--ease);padding-bottom:.2rem}.project-links a:hover{color:var(--accent);transform:translate(3px)}.about-section{border-top:1px solid var(--line)}.about-grid{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.about-lead{letter-spacing:-.065em;max-width:13ch;margin:0;font-size:clamp(2.4rem,5.1vw,5.9rem);line-height:.98}.about-copy{max-width:36rem;padding-left:25%;font-size:1rem;line-height:1.65}.about-copy p{margin:0 0 1.5rem}.stack-row{border-top:1px solid var(--line);grid-template-columns:1fr 3fr;margin-top:clamp(5rem,11vw,10rem);padding-top:1rem;display:grid}.stack-row>span{color:var(--muted);font-size:.58rem}.stack-row ul{flex-wrap:wrap;gap:.85rem 2.2rem;margin:0;padding:0;list-style:none;display:flex}.stack-row li{transition:color .18s ease,transform .18s var(--ease);font-size:.78rem}.stack-row li:hover{color:var(--accent);transform:translateY(-2px)}.contact-section{background:var(--ink);color:var(--paper)}.contact-top{grid-template-columns:25% 1fr;display:grid}.contact-top .section-number{color:#85847e}.contact-main{padding:clamp(5rem,10vw,9rem) 0}.contact-main h2{letter-spacing:-.075em;margin:0;font-size:clamp(3.3rem,8.5vw,9.5rem);font-weight:500;line-height:.88}.contact-main em{color:#8c8b84;font-style:normal}.contact-cta{width:50%;transition:color .2s ease,padding .26s var(--ease);border-top:1px solid #f3f2ed40;border-bottom:1px solid #f3f2ed40;justify-content:space-between;margin:clamp(3rem,6vw,5rem) 0 0 50%;padding:1.2rem 0;display:flex}.contact-cta>span:last-child{transition:transform .22s var(--ease);display:inline-block}.contact-cta:hover{color:#7694ff;padding-left:1rem;padding-right:1rem}.contact-cta:hover>span:last-child{transform:translate(3px,-3px)}.contact-links{background:#f3f2ed33;border:1px solid #f3f2ed33;grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.contact-links a{background:var(--ink);transition:background .22s ease,padding .24s var(--ease);grid-template-columns:1fr auto;gap:.65rem;padding:1.2rem;display:grid}.contact-links a:hover{background:#191918}.contact-links a>span:last-child{transition:transform .22s var(--ease),color .18s ease;display:inline-block}.contact-links a:hover>span:last-child{color:#7694ff;transform:translate(2px,-2px)}.contact-links a small{color:#8c8b84;grid-row:2}.contact-links a>span:first-child{font-size:.8rem}footer{min-height:86px;padding:0 var(--pad);font:.58rem var(--font-geist-mono);letter-spacing:.06em;grid-template-columns:1fr auto 1fr;align-items:center;display:grid}footer a{justify-self:center}footer span:last-child{justify-self:end}[data-reveal]{opacity:0;transition:opacity .46s var(--ease),transform .46s var(--ease);transform:translateY(22px)}[data-reveal].is-visible{opacity:1;transform:none}@media (hover:none){.project-preview:hover .project-visual,.project-visual{transform:none}.project-preview:active .project-visual{transform:scale(.988)}.preview-hint{display:none}}@media (max-width:900px){.site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.hero-grid{background:linear-gradient(to right,transparent calc(50% - 1px),var(--line) 50%,transparent calc(50% + 1px))}.hero .eyebrow,.hero-bottom{margin-left:0}.hero-bottom{grid-template-columns:1fr}.hero-actions{justify-content:flex-start}.project,.project:nth-child(2n),.section-heading{grid-template-columns:1fr}.project:nth-child(2n) .project-preview{order:0}.project-meta>p{margin-bottom:3rem}.about-grid{grid-template-columns:1fr;gap:3rem}.about-copy{max-width:32rem;padding-left:0}.contact-cta{width:100%;margin-left:0}}@media (max-width:620px){.site-header{height:62px}.availability{font-size:.63rem}.hero{padding-top:62px}.hero-grid{inset:62px var(--pad) 0}.hero-index{top:82px}.hero-content{justify-content:flex-end;min-height:calc(100svh - 86px);padding-bottom:8rem}.hero h1{font-size:clamp(3.25rem,15vw,5.7rem)}.hero-bottom{margin-top:2.5rem}.hero-actions{flex-wrap:wrap}.hero-coordinate{left:var(--pad);right:auto}.section-heading>div{grid-template-columns:22% 1fr}.section-intro{max-width:22rem}.about-section,.contact-section,.work-section{padding-top:5.5rem;padding-bottom:5.5rem}.projects-list{gap:6.5rem}.project-visual{aspect-ratio:1}.know-interface,.playground-interface,.xiru-interface{inset:19% 6% 9%}.project-title-row{grid-template-columns:22% 1fr}.project-meta>p{margin-left:22%}.project-details{grid-template-columns:1fr 1.4fr}.stack-row{gap:2rem}.contact-links,.stack-row{grid-template-columns:1fr}footer{grid-template-columns:1fr 1fr}footer a{justify-self:end}footer span:last-child{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;transform:none}.project[data-reveal] .project-preview{clip-path:none;opacity:1;transform:none}.project:not(.is-visible) .know-interface,.project:not(.is-visible) .playground-interface,.project:not(.is-visible) .xiru-interface,.project[data-reveal] .project-meta{opacity:1;transform:none}.project-visual{will-change:auto;transform:none}}