@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6ced06489fd81a3f-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:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/aa5f74293546f6d0-s.p.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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/62c97acc3aa63787-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:Anton Fallback;src:local("Arial");ascent-override:129.70%;descent-override:36.29%;line-gap-override:0.00%;size-adjust:90.69%}.__className_623666{font-family:Anton,Anton Fallback;font-weight:400;font-style:normal}.__variable_623666{--font-anton:"Anton","Anton Fallback"}@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-20c4,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_8eaea4{font-family:Geist,Geist Fallback;font-style:normal}.__variable_8eaea4{--font-geist:"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-20c4,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_8c25df{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_8c25df{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}@font-face{font-family:Caveat Brush;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/90d7a00850263e9e-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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Caveat Brush;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/cac1f6d77a893260-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:Caveat Brush Fallback;src:local("Arial");ascent-override:120.90%;descent-override:37.78%;line-gap-override:0.00%;size-adjust:79.41%}.__className_cd2df7{font-family:Caveat Brush,Caveat Brush Fallback;font-weight:400;font-style:normal}.__variable_cd2df7{--font-caveat-brush:"Caveat Brush","Caveat Brush Fallback"}

/*! tailwindcss v4.3.5 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@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-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--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{.invisible{visibility:hidden}.visible{visibility:visible}.fixed{position:fixed}.block{display:block}.contents{display:contents}.hidden{display:none}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.resize{resize:both}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--background:#09090b;--surface:#0e0e10;--surface-raised:#131315;--line:#27272a;--line-soft:#1d1d20;--text:#f4f4f5;--muted:#a1a1aa;--dim:#71717a;--accent:#ff3b2f;--selection:#62a9ff;--page-gutter:clamp(20px,5.2vw,80px)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--background);scroll-padding-top:40px}html.tour-active{scroll-behavior:auto!important}body{color:var(--text);background:var(--background);font-family:var(--font-geist),sans-serif;-webkit-font-smoothing:antialiased;margin:0;overflow-x:clip}::selection{color:var(--background);background:var(--accent)}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.page-width{width:min(100% - var(--page-gutter) * 2,1280px);margin-inline:auto}.hero-section{isolation:isolate;border-bottom:1px solid var(--line-soft);flex-direction:column;justify-content:flex-end;min-height:max(750px,100svh);display:flex;position:relative;overflow:clip}.site-nav{z-index:8;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;height:82px;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.wordmark{font-family:var(--font-anton),sans-serif;letter-spacing:-.07em;font-size:23px}.contact-card h2 span,.hero-name span,.section-title span,.wordmark span{color:var(--accent)}.nav-links{color:#b4b4ba;font-family:var(--font-geist-mono),monospace;letter-spacing:.11em;text-transform:uppercase;gap:clamp(18px,2.7vw,42px);font-size:10px;display:flex}.back-to-top,.more-work a,.nav-availability,.nav-links a,.project-links a,.social-links a{transition:color .18s,opacity .18s}.back-to-top:hover,.more-work a:hover,.nav-availability:hover,.nav-links a:hover,.project-links a:hover,.social-links a:hover{color:var(--accent)}.nav-availability{align-items:center;gap:9px;font-size:12px;display:inline-flex}.availability-dot,.location-mark{background:var(--accent);border-radius:50%;width:7px;height:7px;box-shadow:0 0 12px #ff3b2f85}.hero-word-wrap{z-index:1;text-align:center;pointer-events:none;position:absolute;top:14.5%;left:50%;transform:translate(-50%)}.portfolio-word{width:max-content;max-width:100%;font-family:var(--font-anton),Impact,sans-serif;letter-spacing:-.055em;white-space:nowrap;color:#0000;background-image:linear-gradient(#ff3b2f,#bd2826 30%,#451416 66%,#09090b),linear-gradient(105deg,#0000 38%,#fff2f085 48%,#0000 57%);background-position:0 0,-150% 0;background-repeat:no-repeat;background-size:100% 100%,220% 100%;-webkit-background-clip:text;background-clip:text;margin:0 auto;font-size:clamp(74px,19.1vw,272px);font-weight:400;line-height:.84;animation:title-sheen 8s ease-in-out 1.2s infinite;overflow:hidden}@keyframes title-sheen{0%,22%{background-position:0 0,-150% 0}58%,to{background-position:0 0,150% 0}}.hero-glow{z-index:1;filter:blur(35px);background:radial-gradient(#ff3b2f2e 0,#82191814 40%,#0000 72%);border-radius:50%;width:min(76vw,920px);height:min(62vw,720px);bottom:-8%}.hero-glow,.hero-portrait{pointer-events:none;position:absolute;left:50%;transform:translate(-50%)}.hero-portrait{z-index:2;width:min(47vw,610px);height:80%;bottom:-2px}.hero-portrait img{object-fit:contain;object-position:center bottom;filter:grayscale()contrast(1.13)brightness(.83);width:100%;height:100%}.hero-portrait:after{content:"";background:linear-gradient(180deg,transparent 22%,var(--background) 100%);position:absolute;inset:45% 0 0}.hero-content{z-index:4;grid-template-columns:minmax(0,1fr) minmax(190px,.42fr);align-items:end;gap:40px;padding-bottom:clamp(72px,10.4vh,118px);display:grid;position:relative}.hero-intro{max-width:470px}.contact-handwritten,.handwritten{color:#e4e4e7;font-family:var(--font-caveat-brush),cursive;transform-origin:0;margin:0 0 12px;font-size:clamp(23px,2.5vw,32px);line-height:1;transform:rotate(-3deg)}.hero-name{font-family:var(--font-anton),Impact,sans-serif;letter-spacing:-.035em;text-shadow:0 2px 24px #09090ba6;margin:0;font-size:clamp(60px,7.4vw,104px);font-weight:400;line-height:.85}.hero-name,.hero-role{text-transform:uppercase}.hero-role{color:var(--accent);font-family:var(--font-geist-mono),monospace;letter-spacing:.08em;align-items:center;gap:9px;margin:21px 0 13px;font-size:12px;display:flex}.hero-role i{color:#ff3b2f8c;font-style:normal}.hero-bio{color:#c4c4cb;text-shadow:0 2px 14px #09090b;max-width:370px;margin:0;font-size:14px;line-height:1.75}.hero-actions{align-items:center;gap:22px;margin-top:24px;display:flex}.button{border:1px solid #0000;border-radius:3px;justify-content:center;align-items:center;gap:12px;min-height:46px;padding:0 17px;font-size:12px;font-weight:600;transition:color .18s,background .18s,border-color .18s,transform .18s,opacity .18s;display:inline-flex}.button-primary{color:#fff;background:var(--accent)}.button-primary:hover{background:#e93027;transform:translateY(-2px)}.button-primary:active{transform:translateY(0)scale(.98)}.button:disabled,.button[aria-disabled=true]{cursor:not-allowed;opacity:.45;transform:none}.location-line{color:#b4b4ba;font-family:var(--font-geist-mono),monospace;letter-spacing:.04em;align-items:center;gap:9px;margin:0;font-size:10px;display:flex}.location-mark{width:5px;height:5px}.hero-stats{justify-self:end;gap:17px;width:215px;padding-bottom:3px;display:grid}.hero-stat{border-bottom:1px solid #ffffff26;justify-content:space-between;align-items:baseline;gap:15px;padding-bottom:11px;display:flex}.hero-stat strong{font-family:var(--font-anton),sans-serif;font-size:31px;font-weight:400;line-height:1}.hero-stat span{color:#b4b4ba;text-align:right;max-width:123px;font-size:11px}.scroll-cue{z-index:5;right:var(--page-gutter);color:var(--dim);font-family:var(--font-geist-mono),monospace;letter-spacing:.12em;align-items:center;gap:11px;font-size:9px;transition:color .18s;display:flex;position:absolute;bottom:24px}.scroll-cue:hover{color:var(--accent)}.section-shell{padding-block:clamp(90px,12vw,166px);position:relative}.contact-kicker>span,.email-detail>span,.principles-heading,.project-kind,.project-number,.section-label,.site-footer>span,.skills-heading,.timeline-kicker{color:var(--accent);font-family:var(--font-geist-mono),monospace;letter-spacing:.13em;font-size:10px}.section-label{margin:0 0 21px}.section-title{font-family:var(--font-anton),Impact,sans-serif;letter-spacing:-.035em;text-transform:uppercase;margin:0;font-size:clamp(54px,7.1vw,96px);font-weight:400;line-height:.92}.section-intro{max-width:410px;color:var(--muted);margin:20px 0 0;font-size:14px;line-height:1.7}.work-heading{justify-content:space-between;align-items:end;gap:40px;margin-bottom:70px;display:flex}.work-counts{gap:clamp(18px,3.4vw,48px);padding-bottom:4px;display:flex}.work-counts>div{gap:7px;min-width:98px;display:grid}.work-counts strong{font-family:var(--font-anton),sans-serif;font-size:28px;font-weight:400}.work-counts span{color:var(--dim);font-size:10px}.project-list{gap:14px;display:grid}.project-card{border:1px solid var(--line);background:linear-gradient(118deg,#ffffff06,transparent 58%),var(--surface);border-radius:4px;padding:clamp(22px,3vw,38px);transition:border-color .22s,background .22s}.project-card:hover{background-color:var(--surface-raised);border-color:#49494d}.project-topline{border-bottom:1px solid var(--line-soft);align-items:center;gap:17px;padding-bottom:19px;display:flex}.project-number{color:var(--dim)}.project-kind{color:#92929a;font-size:9px}.project-main{grid-template-columns:minmax(180px,.75fr) minmax(280px,1fr);gap:40px;padding-block:26px 28px;display:grid}.project-title-block h3{font-family:var(--font-anton),sans-serif;margin:0 0 9px;font-size:clamp(28px,3.4vw,42px);font-weight:400;line-height:1.05}.project-title-block p{max-width:340px;color:var(--muted);margin:0;font-size:12px;line-height:1.7}.project-main ul{align-content:start;gap:12px;margin:0;padding:0;list-style:none;display:grid}.project-main li{color:#c4c4cb;padding-left:17px;font-size:12px;line-height:1.65;position:relative}.project-main li:before{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;top:.58em;left:0}.project-bottom{border-top:1px solid var(--line-soft);justify-content:space-between;align-items:end;gap:24px;padding-top:19px;display:flex}.chip-row{flex-wrap:wrap;gap:7px;display:flex}.chip{color:#a9a9b0;font-family:var(--font-geist-mono),monospace;border:1px solid #303034;border-radius:2px;padding:6px 9px;font-size:9px}.project-links{flex-wrap:wrap;flex:none;gap:19px;display:flex}.more-work a,.project-links a{color:#eeeef0;align-items:center;gap:7px;font-size:11px;display:inline-flex}.more-work{border-bottom:1px solid var(--line);grid-template-columns:220px 1fr auto;align-items:center;gap:24px;padding-block:26px;display:grid}.more-work>span{color:var(--accent);font-family:var(--font-geist-mono),monospace;letter-spacing:.12em;font-size:9px}.more-work p{color:var(--muted);margin:0;font-size:12px;line-height:1.65}.stack-section{border-block:1px solid var(--line-soft);padding-block:clamp(80px,10vw,132px) 54px;overflow:hidden}.stack-heading{justify-content:space-between;align-items:end;gap:28px;margin-bottom:54px;display:flex}.stack-heading>p{max-width:300px;color:var(--muted);margin:0 0 4px;font-size:12px;line-height:1.7}.marquee-wrap{padding-block:25px;position:relative;overflow:hidden}.marquee-wrap:after,.marquee-wrap:before{z-index:2;content:"";pointer-events:none;width:clamp(30px,8vw,120px);position:absolute;top:0;bottom:0}.marquee-wrap:before{background:linear-gradient(90deg,var(--background),transparent);left:0}.marquee-wrap:after{background:linear-gradient(270deg,var(--background),transparent);right:0}.marquee-track{width:max-content;animation:marquee-right 75s linear infinite;display:flex}.marquee-wrap:hover .marquee-track{animation-play-state:paused}.marquee-group{flex:none;align-items:center;gap:12px;padding-right:12px;display:flex}.marquee-item{color:#c4c4cb;min-height:48px;font-family:var(--font-geist-mono),monospace;white-space:nowrap;border:1px solid #29292d;border-radius:3px;align-items:center;gap:11px;padding:0 15px;font-size:11px;display:inline-flex}.marquee-dot{color:var(--accent);display:inline-flex}@keyframes marquee-right{0%{transform:translate(-50%)}to{transform:translate(0)}}.stack-footnote{color:var(--dim);margin-top:28px;font-size:11px}.record-section{border-bottom:1px solid var(--line-soft)}.record-layout{grid-template-columns:minmax(230px,.75fr) minmax(0,1fr);gap:clamp(55px,11vw,170px);display:grid}.record-heading{align-self:start}.record-heading .section-title{font-size:clamp(58px,7vw,88px)}.record-heading>p{max-width:245px;color:var(--muted);margin:22px 0 0;font-size:13px;line-height:1.7}.timeline{gap:0;padding-left:29px;display:grid;position:relative}.timeline:before{content:"";background:linear-gradient(var(--accent),#38383c 70%,transparent);width:1px;position:absolute;top:5px;bottom:38px;left:4px}.timeline-item{border-bottom:1px solid var(--line-soft);margin-bottom:30px;padding:0 0 32px;position:relative}.timeline-pin{border:2px solid var(--accent);background:var(--background);border-radius:50%;width:10px;height:10px;position:absolute;top:3px;left:-30px;box-shadow:0 0 14px #ff3b2f5c}.timeline-kicker{font-size:9px}.timeline-item h3{letter-spacing:-.035em;max-width:520px;margin:13px 0 9px;font-size:clamp(17px,2.2vw,23px);font-weight:500}.record-note,.timeline-item p{max-width:540px;color:var(--muted);margin:0;font-size:12px;line-height:1.75}.record-note{color:var(--dim)}.about-section{border-bottom:1px solid var(--line-soft)}.about-heading{grid-template-columns:minmax(250px,.8fr) minmax(320px,.9fr);align-items:end;gap:clamp(40px,10vw,160px);margin-bottom:112px;display:grid}.about-copy{gap:18px;display:grid}.about-copy p{color:#c4c4cb;margin:0;font-size:14px;line-height:1.85}.principles-area,.skills-area{margin-top:64px}.principles-heading,.skills-heading{border-bottom:1px solid var(--line);color:#98989f;justify-content:space-between;padding-bottom:14px;font-size:9px;display:flex}.principles-heading span:first-child,.skills-heading span:first-child{color:var(--accent)}.skills-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-top:14px;display:grid}.skill-group{border:1px solid var(--line);background:var(--surface);border-radius:3px;min-height:220px;padding:22px}.skill-index{color:var(--accent);font-family:var(--font-geist-mono),monospace;font-size:9px}.skill-group h3{margin:22px 0 15px;font-size:14px;font-weight:500}.skill-group ul{gap:9px;margin:0;padding:0;list-style:none;display:grid}.skill-group li{color:var(--muted);font-size:11px;line-height:1.5}.principles-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:10px;display:grid}.principle{border-right:1px solid var(--line);align-content:space-between;gap:31px;min-height:116px;padding:17px 20px 20px 0;display:grid}.principle+.principle{padding-left:20px}.principle:last-child{border-right:0}.principle>span{color:var(--dim);font-family:var(--font-geist-mono),monospace;font-size:9px}.principle strong{font-family:var(--font-anton),sans-serif;text-transform:uppercase;font-size:clamp(23px,3vw,34px);font-weight:400}.contact-section{padding-bottom:30px}.contact-kicker{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.contact-kicker .section-label{margin:0}.contact-kicker>span{color:var(--dim);font-size:9px}.contact-card{background:radial-gradient(at 86% 60%,#ff3b2f1f,#0000 47%),linear-gradient(120deg,#111113,#0d0d0f 70%);border:1px solid #3a2728;border-radius:4px;justify-content:space-between;align-items:center;min-height:390px;padding:clamp(28px,6vw,75px);display:flex;position:relative;overflow:hidden}.contact-card-copy{z-index:1;position:relative}.contact-handwritten{color:#c9c9ce;margin-bottom:19px}.contact-card h2{font-family:var(--font-anton),Impact,sans-serif;letter-spacing:-.03em;text-transform:uppercase;margin:0 0 28px;font-size:clamp(49px,8vw,94px);font-weight:400;line-height:.9}.contact-button{min-height:48px}.contact-card-mark{color:#ff3b2f4d;border:1px solid #ff3b2f3d;border-radius:50%;place-items:center;width:min(35vw,390px);height:min(35vw,390px);display:grid;position:absolute;bottom:-18%;right:7%;transform:rotate(-25deg)}.contact-card-mark:after,.contact-card-mark:before{content:"";border:1px solid #ff3b2f2e;border-radius:50%;position:absolute;inset:12%}.contact-card-mark:after{inset:25%}.contact-card-mark span{font-family:var(--font-anton),sans-serif;letter-spacing:-.1em;font-size:clamp(80px,15vw,180px)}.contact-card-mark svg{width:35px;height:35px;position:absolute;bottom:21%;right:16%}.contact-details{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding-block:28px;display:flex}.email-detail{gap:9px;display:grid}.email-detail>span{color:var(--dim);font-size:8px}.email-detail a{font-size:13px;transition:color .18s}.email-detail a:hover{color:var(--accent)}.social-links{flex-wrap:wrap;gap:19px;display:flex}.social-links a{color:#c4c4cb;align-items:center;gap:7px;font-size:10px;display:inline-flex}.site-footer{justify-content:space-between;align-items:center;padding-top:23px;display:flex}.site-footer>span{color:var(--dim);font-size:8px}.back-to-top{color:var(--muted);align-items:center;gap:7px;font-size:10px;display:inline-flex}.back-to-top svg{transform:rotate(180deg)}.control-dock{z-index:30;right:50%;bottom:max(15px,env(safe-area-inset-bottom));background:#101012;border:1px solid #333337;border-radius:5px;align-items:center;gap:4px;padding:5px;display:flex;position:fixed;transform:translate(50%);box-shadow:0 8px 34px #0000006b}.dock-button{color:#c8c8cf;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:3px;align-items:center;gap:7px;min-height:34px;padding:0 9px;font-size:10px;transition:color .16s,background .16s,border-color .16s,transform .16s,opacity .16s;display:inline-flex}.dock-button:hover:not(:disabled){color:#fff;background:#1a1a1d;border-color:#343438}.dock-button:active:not(:disabled){transform:scale(.96)}.dock-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dock-button:disabled{cursor:not-allowed;opacity:.48}.dock-button[aria-pressed=true]{color:var(--accent)}.dock-button kbd{color:#85858d;font-family:var(--font-geist-mono),monospace;border:1px solid #38383c;border-radius:2px;padding:2px 4px;font-size:8px}.agent-layer{z-index:25;overflow:hidden}.robot-cursor{opacity:0;will-change:transform;align-items:flex-start;transition:opacity .12s;display:flex;position:fixed;top:0;left:0}.robot-cursor.is-active{opacity:1}.cursor-arrow{filter:drop-shadow(0 2px 3px #000000b3);width:19px;height:25px;overflow:visible}.cursor-arrow path{fill:#f4f4f5;stroke:#09090b;stroke-width:1.6px;stroke-linejoin:round}.robot-tag{color:#fff;font-family:var(--font-geist-mono),monospace;white-space:nowrap;background:#ff3b2fe0;border:1px solid #ffffff26;border-radius:2px;align-items:center;gap:5px;margin:18px 0 0 -2px;padding:4px 7px 4px 5px;font-size:9px;display:inline-flex;box-shadow:0 3px 14px #0006}.agent-1 .robot-tag,.agent-10 .robot-tag,.agent-4 .robot-tag,.agent-7 .robot-tag{background:#c62b26f0}.agent-11 .robot-tag,.agent-2 .robot-tag,.agent-5 .robot-tag,.agent-8 .robot-tag{background:#eb362cf0}.robot-head{background:#251010;border:1px solid #ffffffbf;border-radius:3px;justify-content:center;align-items:center;width:14px;height:11px;display:inline-flex;position:relative}.robot-antenna{background:#fff;width:1px;height:4px;position:absolute;top:-4px;left:6px}.robot-antenna:before{content:"";width:3px;height:3px;box-shadow:0 0 5px var(--accent);background:#fff;border-radius:50%;animation:antenna-pulse 1.2s ease-in-out infinite;position:absolute;top:-2px;left:-1px}.robot-eyes{gap:3px;display:flex}.robot-eyes i{background:#f4f4f5;border-radius:1px;width:2px;height:3px;animation:robot-blink 3.4s infinite}.robot-eyes i+i{animation-delay:80ms}@keyframes robot-blink{0%,45%,49%,to{transform:scaleY(1)}47%{transform:scaleY(.12)}}@keyframes antenna-pulse{0%,to{opacity:.55;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.selection-frame{opacity:0;transform-origin:0 0;will-change:transform;border:1px solid #62a9ffd1;transition:opacity .1s;position:fixed;top:0;left:0}.selection-frame.is-active{opacity:1;box-shadow:0 0 14px #62a9ff1a}.frame-corner{background:#09090b;border:1px solid #8bc2ff;width:7px;height:7px;position:absolute}.corner-tl{top:-4px;left:-4px}.corner-tr{top:-4px;right:-4px}.corner-bl{bottom:-4px;left:-4px}.corner-br{bottom:-4px;right:-4px}.frame-label{color:#d7eaff;font-family:var(--font-geist-mono),monospace;background:#24598d;padding:3px 6px;font-size:8px;line-height:1;position:absolute;top:-20px;left:-1px}.boot-overlay{z-index:60;color:#d4d4d8;background:var(--background);flex-direction:column;justify-content:center;align-items:center;gap:17px;animation:boot-exit .24s .38s forwards;display:flex;position:fixed;inset:0}.boot-overlay>span{font-family:var(--font-geist-mono),monospace;letter-spacing:.2em;font-size:9px}.boot-mark{width:47px;height:47px;color:var(--accent);border:1px solid #43201f;border-radius:50%;place-items:center;animation:boot-pulse 1.1s ease-in-out infinite;display:grid}.boot-line{background:#252528;width:130px;height:1px;overflow:hidden}.boot-line i{background:var(--accent);width:35%;height:100%;animation:boot-progress .62s forwards;display:block}@keyframes boot-progress{to{width:100%}}@keyframes boot-pulse{50%{transform:scale(1.04);box-shadow:0 0 25px #ff3b2f38}}@keyframes boot-exit{to{visibility:hidden;opacity:0}}html.build-mode [data-build]:not([data-built=true]),html.build-mode main>section{visibility:hidden}html.build-mode [data-build][data-building=true],html.build-mode [data-build][data-built=true]{visibility:visible}@media (max-width:900px){.hero-content{grid-template-columns:minmax(0,1fr) 175px;gap:22px}.hero-stats{width:175px}.hero-portrait{width:min(57vw,560px)}.project-main{grid-template-columns:minmax(160px,.7fr) minmax(260px,1fr);gap:25px}.skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-group{min-height:190px}}@media (max-width:700px){:root{--page-gutter:22px}.hero-section{min-height:max(760px,100svh)}.site-nav{height:68px}.nav-links{display:none}.nav-availability{font-size:11px}.hero-word-wrap{width:100%;top:17%}.portfolio-word{font-size:clamp(63px,16.9vw,112px)}.hero-portrait{width:min(78vw,440px);height:68%;bottom:0}.hero-glow{width:100vw;height:75vw;bottom:0}.hero-content{flex-direction:column;align-items:stretch;gap:22px;padding-bottom:83px;display:flex}.hero-intro{max-width:380px}.handwritten{margin-bottom:10px;font-size:24px}.hero-name{font-size:clamp(54px,15vw,76px)}.hero-role{margin-top:15px;font-size:10px}.hero-bio{max-width:320px;font-size:12px;line-height:1.65}.hero-actions{gap:15px;margin-top:17px}.button{min-height:42px}.hero-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:100%;display:grid}.hero-stat{place-content:start;gap:5px;padding-bottom:7px;display:grid}.hero-stat strong{font-size:23px}.hero-stat span{text-align:left;max-width:100%;font-size:9px}.scroll-cue{right:var(--page-gutter);bottom:23px}.section-shell{padding-block:82px}.section-title{font-size:clamp(51px,14vw,76px)}.work-heading{margin-bottom:37px;display:block}.work-counts{justify-content:space-between;gap:10px;margin-top:31px}.work-counts>div{min-width:0}.work-counts strong{font-size:24px}.work-counts span{max-width:92px;line-height:1.45}.section-intro{font-size:12px}.project-card{padding:20px}.project-main{grid-template-columns:1fr;gap:21px;padding-block:22px}.project-main ul{gap:10px}.project-main li{font-size:11px}.project-bottom{flex-direction:column;align-items:flex-start;gap:17px}.more-work{grid-template-columns:1fr;gap:12px}.more-work a{justify-self:start}.stack-heading{margin-bottom:30px;display:block}.stack-heading>p{margin-top:15px}.marquee-track{animation-duration:55s}.record-layout{grid-template-columns:1fr;gap:48px}.record-heading .section-title{font-size:clamp(55px,15vw,76px)}.record-heading>p{margin-top:17px}.about-heading{grid-template-columns:1fr;gap:35px;margin-bottom:65px}.about-copy p{font-size:13px}.principles-area,.skills-area{margin-top:47px}.skills-grid{grid-template-columns:1fr 1fr;gap:8px}.skill-group{min-height:195px;padding:16px}.skill-group h3{margin-top:18px}.skill-group li{font-size:10px}.principles-heading,.skills-heading{font-size:8px}.principles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.principle{border-bottom:1px solid var(--line);gap:22px;min-height:92px;padding-block:14px}.principle+.principle{padding-left:14px}.principle:nth-child(2){border-right:0}.principle:nth-child(3),.principle:nth-child(4){border-bottom:0}.principle strong{font-size:25px}.contact-kicker{flex-direction:column;align-items:flex-start;gap:9px}.contact-card{min-height:350px;padding:27px 22px}.contact-card h2{font-size:clamp(47px,13vw,68px)}.contact-card-mark{opacity:.65;width:250px;height:250px;bottom:-10%;right:-19%}.contact-card-mark span{font-size:110px}.contact-details{flex-direction:column;align-items:flex-start;gap:21px}.social-links{gap:15px}.site-footer{padding-bottom:55px}.control-dock{bottom:max(10px,env(safe-area-inset-bottom));gap:2px;width:max-content;max-width:calc(100vw - 18px);padding:4px}.dock-button{gap:5px;min-height:32px;padding-inline:7px;font-size:9px}.dock-button kbd{display:none}}@media (max-width:380px){:root{--page-gutter:17px}.hero-name{font-size:52px}.hero-stats{gap:7px}.hero-stat span{font-size:8px}.skills-grid{grid-template-columns:1fr}.skill-group{min-height:0}.dock-button{padding-inline:6px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.agent-0,.robot-cursor,.selection-frame{--c:#3b82f6}.agent-1{--c:#a855f7}.agent-2{--c:#10b981}.agent-3{--c:#f59e0b}.agent-4{--c:#ec4899}.agent-5{--c:#06b6d4}.agent-6{--c:#84cc16}.agent-7{--c:#f43f5e}.agent-8{--c:#8b5cf6}.agent-9{--c:#14b8a6}.agent-10{--c:#eab308}.agent-11{--c:#6366f1}.robot-cursor .cursor-arrow{width:18px;height:20px}.robot-cursor .cursor-arrow path{fill:var(--c)!important;stroke:#fff!important;stroke-width:1.4px!important}.robot-cursor .robot-tag,.robot-cursor[class*=agent-] .robot-tag{color:#fff;font-weight:600;box-shadow:0 3px 10px #00000073;background:var(--c)!important;border:0!important;border-radius:999px!important;margin:16px 0 0 -3px!important;padding:3px 9px 3px 4px!important;font-size:11px!important}.robot-cursor .robot-head{background:#fff!important;border-radius:5px!important;width:16px!important;height:14px!important}.robot-cursor .robot-eyes i,.robot-cursor .robot-head i{background:#09090b!important}.selection-frame{border:1px dashed var(--c)!important;background:var(--c)!important}@supports (color:color-mix(in lab,red,red)){.selection-frame{background:color-mix(in srgb,var(--c) 10%,transparent)!important}}.selection-frame,.selection-frame.is-active{box-shadow:none!important}.frame-corner{border:1px solid var(--c)!important;background:#fff!important;width:7px!important;height:7px!important}.frame-label{font-weight:600;background:var(--c)!important;color:#fff!important;padding:2px 6px!important;font-size:10px!important;top:-19px!important}.hero-word-wrap{width:100%;top:7%!important}.portfolio-word{letter-spacing:.01em!important;background-image:linear-gradient(105deg,#0000 40%,#ffffff57 50%,#0000 60%),linear-gradient(#ff3b2f,#c4180e 40%,#3a0a07 75%,#09090b)!important;background-position:150% 0,0 0!important;background-size:250% 100%,100% 100%!important;font-size:min(25vw,52vh)!important;line-height:1!important;overflow:visible!important}@media (max-width:760px){.hero-word-wrap{top:9%!important}.portfolio-word{font-size:25vw!important}}.robot-cursor{z-index:70;transition:opacity .3s!important}.robot-cursor,.selection-frame{backface-visibility:hidden}.agent-layer{z-index:70;pointer-events:none;position:fixed;inset:0}.robot-cursor.is-orbiting .robot-tag{border:0;width:0;overflow:hidden;transform:scale(.6);opacity:0!important;margin:0!important;padding:0!important}.robot-cursor .robot-tag{transition:opacity .25s,transform .25s}.robot-cursor.is-orbiting .cursor-arrow{width:17px;height:19px}.dotted-h{position:relative;color:#0000!important;-webkit-text-fill-color:transparent!important;text-shadow:none!important}.dotted-h *{color:#0000!important;-webkit-text-fill-color:transparent!important}.dotted-h .dot-canvas{pointer-events:none;display:block;position:absolute;top:0;left:0}.portfolio-word.dotted-h{background:0 0!important;-webkit-background-clip:border-box!important;background-clip:border-box!important;animation:none!important}.dotted-h.contact-handwritten{display:inline-block}.dot-canvas,.dotted-h,.dotted-h *{-webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important}.dotted-h::selection{color:#0000!important;background:0 0!important}.dotted-h ::selection{color:#0000!important;background:0 0!important}.dotted-h{cursor:default}.dot-marquee-wrap{border-block:1px solid #1d1d21;padding-block:18px}.dot-marquee{-webkit-user-select:none;user-select:none;width:100%}.dot-marquee canvas{display:block}.slides-track{scroll-snap-type:x mandatory;cursor:grab;scrollbar-width:thin;scrollbar-color:#3a3a40 transparent;gap:18px;padding:14px 4px 22px;display:flex;overflow-x:auto}.slides-track.is-dragging{cursor:grabbing;scroll-snap-type:none}.slide{scroll-snap-align:start;animation:slide-wave 5.5s ease-in-out infinite;animation-delay:calc(var(--i)*-1.1s);background:#0d0d10;border:1px solid #2c2c31;border-radius:10px;flex:0 0 min(78%,560px);margin:0;transition:border-color .25s;overflow:hidden;box-shadow:0 18px 40px -22px #000}.slide:hover{border-color:var(--accent,#ff3b2f);animation-play-state:paused}.slide-bar{background:#141418;border-bottom:1px solid #26262b;align-items:center;gap:6px;height:28px;padding:0 12px;display:flex}.slide-bar i{background:#34343a;border-radius:50%;width:8px;height:8px;display:block}.slide-bar i:first-child{background:#ff5f56}.slide-bar i:nth-child(2){background:#ffbd2e}.slide-bar i:nth-child(3){background:#27c93f}.slide-bar span{color:#8b8b94;font:10px var(--font-geist-mono),monospace;letter-spacing:.06em;text-transform:uppercase;margin-left:10px}.slide img{aspect-ratio:16/10;object-fit:cover;object-position:top;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;display:block}@keyframes slide-wave{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-7px)rotate(-.35deg)}}@media (max-width:700px){.slide{flex-basis:84%}}@media (prefers-reduced-motion:reduce){.slide{animation:none}}.project-card,.project-main,.project-title-block,.slides{min-width:0;max-width:100%}.project-main>*{min-width:0}.slide-bar i{display:none!important}.slide-bar{height:34px;padding:0 16px}.slide{border-radius:6px;flex:0 0 min(92%,980px)!important}.slide img{aspect-ratio:16/9.5}.slides-track{gap:24px;padding:18px 4px 28px}.slides{margin:34px 0 14px}@media (max-width:700px){.slide{flex-basis:94%!important}}.proj-list{gap:clamp(70px,11vw,150px);margin-top:48px;display:grid}.proj-scene{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:clamp(24px,4vw,64px);min-height:min(86vh,760px);display:grid}.proj-scene:nth-child(2n){grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.proj-scene:nth-child(2n) .proj-copy{order:2}.proj-copy{justify-items:start;gap:18px;min-width:0;display:grid}.proj-kicker{font:11px var(--font-geist-mono),monospace;letter-spacing:.1em;color:#a0a0a8;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:12px;margin:0;display:flex}.proj-kicker b{background:var(--accent,#ff3b2f);color:#09090b;letter-spacing:.04em;border-radius:99px;padding:5px 12px;font-weight:600}.proj-logo{border-radius:14px;width:56px;height:56px;box-shadow:0 0 0 1px #2b2b31}.proj-title{font-family:var(--font-anton),sans-serif;text-transform:uppercase;letter-spacing:-.02em;color:#f4f4f5;overflow-wrap:anywhere;max-width:100%;margin:0;font-size:clamp(46px,7.4vw,104px);font-weight:400;line-height:.95}.proj-desc{color:#c6c6cd;max-width:56ch;margin:0;font-size:clamp(14px,1.2vw,17px);line-height:1.7}.proj-extra{color:#e8e8ec;font:12px var(--font-geist-mono),monospace;margin:0}.proj-tags{flex-wrap:wrap;gap:8px;display:flex}.proj-tags span{font:12px var(--font-geist-mono),monospace;color:#f4f4f5;border:1.5px solid #f4f4f5;border-radius:99px;padding:6px 14px}.proj-cta{background:var(--accent,#ff3b2f);color:#09090b;border-radius:99px;align-items:center;padding:12px 22px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .2s;display:inline-flex}.proj-cta:hover{transform:translateY(-2px)scale(1.02)}.proj-shot{perspective:1200px;justify-self:stretch;margin:0;position:relative}.proj-shot img{object-position:top;-webkit-user-select:none;user-select:none;border:1px solid #2c2c31;border-radius:10px;width:100%;height:auto;transition:transform .6s cubic-bezier(.2,.8,.2,1);display:block;transform:rotateY(-9deg)rotateX(2deg);box-shadow:0 40px 80px -30px #000}.proj-shot:hover img{transform:none!important}.proj-cap{font-family:var(--font-anton),sans-serif;color:#f4f4f5;text-transform:uppercase;letter-spacing:.01em;margin-top:14px;font-size:clamp(20px,2vw,28px);display:block}.proj-slides{grid-column:1/-1;min-width:0}@media (max-width:860px){.proj-scene,.proj-scene:nth-child(2n){grid-template-columns:minmax(0,1fr);gap:26px;min-height:0}.proj-scene:nth-child(2n) .proj-copy{order:0}.proj-title{font-size:clamp(40px,13vw,72px)}.proj-scene:nth-child(2n) .proj-shot img,.proj-shot img{transform:none}}.all-title{font-family:var(--font-anton),sans-serif;text-transform:uppercase;color:#f4f4f5;margin:0 0 28px;font-size:clamp(54px,9vw,128px);font-weight:400;line-height:1}.all-title sup{font:12px var(--font-geist-mono),monospace;color:var(--accent,#ff3b2f);vertical-align:top;letter-spacing:.06em;margin-left:8px}.all-list{border-top:1px solid #d8d8dc;margin:0;padding:0;list-style:none}.all-list li{border-bottom:1px solid #d8d8dc}.all-list a{color:#f4f4f5;grid-template-columns:56px 1fr auto;align-items:center;gap:16px;padding:clamp(18px,2.4vw,30px) 8px;text-decoration:none;transition:background .25s,padding-left .25s;display:grid}.all-list a:hover{background:#ffffff12;padding-left:22px}.all-n{font:12px var(--font-geist-mono),monospace;color:#8a8a92}.all-t{font-family:var(--font-anton),sans-serif;text-transform:uppercase;letter-spacing:-.005em;overflow-wrap:anywhere;font-size:clamp(26px,4.4vw,56px)}.all-k{font:12px var(--font-geist-mono),monospace;color:#b8b8c0;text-align:right}.touch-box{place-items:center;min-height:clamp(300px,42vw,420px);padding:clamp(40px,6vw,80px) clamp(20px,4vw,60px);display:grid;position:relative}.touch-box canvas{pointer-events:none;inset:0}.touch-copy{z-index:1;text-align:center;justify-items:center;gap:14px;max-width:100%;display:grid;position:relative}.touch-kicker{font:11px var(--font-geist-mono),monospace;letter-spacing:.2em;color:#9a9aa2;margin:0}.touch-email{all:unset;cursor:pointer;font-family:var(--font-geist),system-ui,sans-serif;color:#f4f4f5;letter-spacing:-.02em;overflow-wrap:anywhere;text-align:center;max-width:100%;font-size:clamp(26px,6.4vw,92px);font-weight:300;line-height:1.05;transition:color .25s}.touch-email:hover{color:#ffd166}.touch-hint{font:10px var(--font-geist-mono),monospace;letter-spacing:.16em;color:#8a8a92;margin:0}.touch-more{color:#b8b8c0;margin:6px 0 0;font-size:clamp(14px,1.6vw,20px)}.touch-more a{color:#f4f4f5;border-bottom:1px solid #ffffff40;text-decoration:none}.touch-more a:hover{color:#ffd166}@media (max-width:700px){.all-list a{grid-template-columns:34px 1fr}.all-k{text-align:left;grid-column:2}}.proj-shot{border-radius:10px;overflow:hidden}.proj-shot img{aspect-ratio:16/10;object-fit:cover;transform-origin:50% 0;transform:none!important}.proj-scene:nth-child(2n) .proj-shot img{animation-delay:-5s}.proj-shot:hover img{animation-play-state:paused}@keyframes shot-pan{0%{object-position:50% 0}to{object-position:50% 100%}}.all-list li{visibility:visible}@media (prefers-reduced-motion:reduce){.proj-shot img{animation:none}}.proj-shot{--bend:0;--par:0px;--tx:0;--ty:0;will-change:transform;transform:translate3d(0,var(--par),0);overflow:visible}.proj-shot img{border-radius:9px;transition:border-radius .5s;animation:shot-pan 14s ease-in-out infinite alternate;box-shadow:0 0 0 1px #ffffff17,0 22px 50px #00000073;transform:perspective(900px) rotateX(calc(var(--bend) * 7deg + var(--ty) * -4deg)) rotateY(calc(var(--tx) * 5deg)) skewY(calc(var(--bend) * -1.5deg)) scaleY(calc(1 - (var(--bend) * var(--bend)) * .04))!important}.proj-shot:hover img{border-radius:12px;animation-play-state:running}.proj-scene:nth-child(2n) .proj-shot img,.proj-shot:hover img{transform:perspective(900px) rotateX(calc(var(--bend) * 7deg + var(--ty) * -4deg)) rotateY(calc(var(--tx) * 5deg)) skewY(calc(var(--bend) * -1.5deg)) scaleY(calc(1 - (var(--bend) * var(--bend)) * .04))!important}@media (max-width:860px){.proj-scene:nth-child(2n) .proj-shot img,.proj-shot img{transform:perspective(900px) rotateX(calc(var(--bend) * 7deg)) skewY(calc(var(--bend) * -1.5deg))!important}}.dotted-h,.hero-name.dotted-h{contain:none;background:0 0;overflow:visible}.hero-name{letter-spacing:.012em!important;line-height:.92!important}@media (min-width:861px){.hero-name.name-b{text-align:right;right:0;top:var(--nb-top,40%);margin:0;position:absolute}.hero-content{position:relative}}.hero-name.name-a,.hero-name.name-b{display:block}.site-nav{box-shadow:none!important;border-bottom:0!important}@media (min-width:861px){.hero-name.name-b{bottom:calc(clamp(72px,10.4vh,118px) + 205px);top:auto!important}}.portfolio-word{color:#0000!important;-webkit-text-fill-color:transparent!important;background-image:linear-gradient(#ff3b2f,#c4180e 40%,#3a0a07 75%,#09090b)!important;background-position:0 0!important;background-size:100% 100%!important;-webkit-background-clip:text!important;background-clip:text!important;animation:none!important;-webkit-mask-image:none!important;mask-image:none!important}.proj-shot{gap:0;display:grid}.proj-shot img{scale:1!important}.proj-cap{z-index:2;background:0 0;padding-top:6px;line-height:1.1;position:relative;margin-top:34px!important}.dotted-h .dot-canvas{background:0 0;overflow:visible}html{overflow-x:clip}.proj-cap{letter-spacing:.02em;font-size:clamp(38px,5.2vw,72px)!important;line-height:1!important}.touch-box canvas{max-width:none;position:absolute;inset:auto!important}.touch-box{overflow:visible;min-height:clamp(240px,32vw,340px)!important}.principles-area{margin-top:48px}.contact-section{padding-top:clamp(20px,3vw,40px)!important;padding-bottom:10px!important}.work-section{padding-bottom:clamp(30px,4vw,50px)!important}.all-projects{margin-top:clamp(30px,4vw,60px)!important}.touch{margin-top:clamp(50px,6vw,90px)!important}.about-section{border-bottom:0!important;padding-bottom:clamp(36px,5vw,64px)!important}.contact-section{padding-top:0!important}@media (min-width:861px){.hero-name.name-b{bottom:auto!important}}.section-label{z-index:3;display:block;position:relative;margin-bottom:34px!important}.section-title{margin-top:0}.record-section.section-shell{padding-bottom:clamp(40px,5vw,70px)!important}.about-section.section-shell{padding-top:clamp(20px,3vw,40px)!important}.boot-overlay{display:none!important}.selection-frame.is-selected{background:var(--c)!important}@supports (color:color-mix(in lab,red,red)){.selection-frame.is-selected{background:color-mix(in srgb,var(--c) 22%,transparent)!important}}.selection-frame.is-selected{transition:background .12s;border-style:solid!important}.proj-impact{color:#d4d4d8;background:#ff3b2f12;border-left:3px solid #ff3b2f;max-width:60ch;margin:12px 0 0;padding:10px 14px;font-size:clamp(13px,1.05vw,15px);line-height:1.55}.proj-shot img,.slide img{aspect-ratio:auto;height:auto}.proj-deep{cursor:pointer;font:inherit;background:0 0;border:1px solid;margin-left:10px}.cs-backdrop{z-index:400;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#050507c7;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.cs-modal{color:#e4e4e7;background:#101013;border:1px solid #2a2a30;border-radius:16px;width:min(760px,100%);max-height:88vh;padding:28px clamp(18px,4vw,36px);font-size:clamp(14px,1.1vw,16px);line-height:1.6;position:relative;overflow:auto}.cs-modal h2{color:#fff;margin:6px 0 12px;font-size:clamp(22px,3vw,30px);line-height:1.15}.cs-modal h3{color:#ff3b2f;letter-spacing:.08em;text-transform:uppercase;margin:22px 0 6px;font-size:15px}.cs-modal ul{margin:6px 0;padding-left:20px}.cs-modal li{margin:6px 0}.cs-kicker{color:#a1a1aa;letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:12px}.cs-close{float:right;color:#fff;cursor:pointer;background:#18181b;border:1px solid #3f3f46;border-radius:50%;width:36px;height:36px;font-size:22px;line-height:1;position:sticky;top:0}.cs-foot{margin-top:22px}.cs-foot a{color:#ff6a5c}html.agents-idle .robot-cursor,html.agents-idle .selection-frame{opacity:0!important;pointer-events:none!important;transition:opacity .5s!important}.button-resume{color:inherit;background:0 0;border:1px solid;margin-left:10px}.hero-actions,.proj-metrics{flex-wrap:wrap;gap:10px}.proj-metrics{margin:14px 0 0;padding:0;list-style:none;display:flex}.proj-metrics li{background:#101013;border:1px solid #2a2a30;border-radius:10px;flex-direction:column;min-width:92px;padding:8px 12px;display:flex}.proj-metrics b{color:#ff3b2f;font-size:clamp(18px,1.8vw,24px);line-height:1.1}.proj-metrics span{color:#a1a1aa;font-size:12px;line-height:1.3}.timeline-item a{color:#ff6a5c}.cs-video{background:#000;border-radius:10px;width:100%;margin:10px 0 4px}.cs-note{color:#a1a1aa;margin:0 0 14px;font-size:12px}.learn-box{background:#101013;border:1px solid #2a2a30;border-radius:14px;margin:clamp(20px,4vw,48px) 0;overflow:hidden}.learn-box summary{cursor:pointer;color:#fff;flex-wrap:wrap;align-items:baseline;gap:6px 14px;padding:18px 22px;font-size:clamp(18px,2vw,24px);font-weight:700;list-style:none;display:flex}.learn-box summary::-webkit-details-marker{display:none}.learn-box summary:after{content:"+";color:#ff3b2f;margin-left:auto;font-size:26px;line-height:1}.learn-box[open] summary:after{content:"−"}.learn-box summary em{color:#a1a1aa;font-size:13px;font-style:normal;font-weight:400}.learn-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin:0;padding:0 14px 14px;list-style:none;display:grid}.learn-list a{color:#d4d4d8;border:1px solid #2a2a30;border-radius:10px;flex-direction:column;gap:6px;height:100%;padding:14px;font-size:13px;line-height:1.5;text-decoration:none;display:flex}.learn-list a:hover{border-color:#ff3b2f}.learn-list b{color:#fff;font-size:15px}.learn-list small{color:#ff6a5c;margin-top:auto}.skill-proof{margin-top:clamp(24px,4vw,48px)}.skill-proof h3{margin:0 0 12px}.skill-proof ul{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.skill-proof li{background:#101013;border:1px solid #2a2a30;border-radius:10px;flex-direction:column;gap:4px;padding:14px;display:flex}.skill-proof b{color:#ff3b2f}.skill-proof span{color:#d4d4d8;font-size:13px;line-height:1.5}.demo-block{max-width:980px;margin:clamp(20px,4vw,48px) auto}.demo-kicker{color:#ff3b2f;letter-spacing:.16em;margin:0 0 6px;font-size:12px}.demo-title{margin:0 0 14px;font-size:clamp(28px,4vw,46px)}.demo-video{aspect-ratio:16/9;background:#000;border:1px solid #2a2a30;border-radius:14px;width:100%;box-shadow:0 30px 80px #00000080}.demo-note{color:#a1a1aa;margin:8px 0 0;font-size:12px}.case-page{color:#d4d4d8;max-width:860px;margin:0 auto;padding:clamp(28px,6vw,72px) 20px 96px;font-size:clamp(15px,1.2vw,17px);line-height:1.7}.case-page h1{color:#fff;margin:6px 0 14px;font-size:clamp(30px,5vw,54px);line-height:1.08}.case-page h2{color:#ff3b2f;letter-spacing:.14em;text-transform:uppercase;margin:36px 0 8px;font-size:14px}.case-page ul{padding-left:20px}.case-page li{margin:6px 0}.case-page .proj-metrics{padding-left:0}.case-lead{color:#e4e4e7;font-size:1.15em}.case-back{color:#ff6a5c;font-size:14px;text-decoration:none}.case-shots{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;display:grid}.case-shots img{aspect-ratio:16/9;object-fit:cover;border:1px solid #2a2a30;border-radius:10px;width:100%;height:auto;display:block}.case-shots figcaption{color:#a1a1aa;margin-top:6px;font-size:12px}.case-note{color:#a1a1aa;font-size:13px}.case-page a{color:#ff6a5c}.hero-bio-sub{color:#a1a1aa;letter-spacing:.02em;margin-top:8px;font-size:.78em;display:block}.filter-bar{flex-wrap:wrap;gap:8px;margin:18px 0 6px;display:flex}.filter-bar button{cursor:pointer;font:inherit;color:#d4d4d8;background:#101013;border:1px solid #2a2a30;border-radius:999px;padding:8px 16px;font-size:14px}.filter-bar button:hover{border-color:#ff3b2f}.filter-bar button.is-on{color:#fff;background:#ff3b2f;border-color:#ff3b2f}.now-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);align-items:stretch;gap:clamp(16px,3vw,32px);padding-top:clamp(24px,5vw,64px);display:grid}@media (max-width:820px){.now-grid{grid-template-columns:minmax(0,1fr)}}.now-card{background:#101013;border:1px solid #2a2a30;border-radius:16px;padding:24px}.now-kicker{color:#ff3b2f;letter-spacing:.16em;margin:0 0 6px;font-size:12px}.now-card h3{margin:0 0 10px;font-size:clamp(22px,2.4vw,30px)}.now-card ul{color:#d4d4d8;margin:0;padding-left:18px;line-height:1.7}.now-date{color:#71717a;margin:14px 0 0;font-size:12px}.term{background:#0b0b0e;border:1px solid #2a2a30;border-radius:16px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:13.5px;overflow:hidden}.term-bar{color:#a1a1aa;background:#18181b;align-items:center;gap:7px;padding:10px 14px;font-size:12px;display:flex}.term-bar i{background:#3f3f46;border-radius:50%;width:10px;height:10px;display:block}.term-bar span{margin-left:8px}.term-body{color:#d4d4d8;height:190px;padding:12px 16px;line-height:1.55;overflow:auto}.term-body div{white-space:pre-wrap}.term-form{border-top:1px solid #1f1f24;gap:8px;padding:10px 16px;display:flex}.term-form label{color:#ff3b2f}.term-form input{color:#fff;font:inherit;background:0 0;border:0;outline:0;flex:1}.term-form input:focus-visible{outline:1px solid #ff3b2f}.term-alt{color:#71717a;margin:0;padding:0 16px 10px;font-family:inherit;font-size:11px}.ask-wrap{z-index:300;position:fixed;bottom:78px;right:16px}.ask-fab{cursor:pointer;font:inherit;color:#fff;background:#ff3b2f;border:0;border-radius:999px;padding:12px 18px;font-weight:700;box-shadow:0 10px 30px #ff3b2f59}.ask-panel{color:#e4e4e7;background:#101013;border:1px solid #2a2a30;border-radius:16px;flex-direction:column;width:min(360px,100vw - 32px);height:min(480px,70vh);font-size:14px;display:flex;overflow:hidden;box-shadow:0 30px 80px #0009}.ask-head{background:#18181b;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.ask-head button{color:#fff;cursor:pointer;background:0 0;border:0;font-size:22px}.ask-body{flex-direction:column;flex:1;gap:8px;padding:12px;display:flex;overflow:auto}.ask-hint{color:#a1a1aa;margin:0 0 8px;font-size:12px}.ask-chip{cursor:pointer;font:inherit;color:#d4d4d8;text-align:left;background:#0b0b0e;border:1px solid #2a2a30;border-radius:10px;margin:6px 0;padding:8px 12px;font-size:13px;display:block}.ask-chip:hover{border-color:#ff3b2f}.ask-msg{border-radius:12px;max-width:88%;padding:9px 12px;line-height:1.5}.ask-msg.user{color:#fff;background:#ff3b2f;align-self:flex-end}.ask-msg.model{background:#1c1c21;align-self:flex-start}.ask-form{border-top:1px solid #1f1f24;gap:8px;padding:10px;display:flex}.ask-form input{color:#fff;font:inherit;background:#0b0b0e;border:1px solid #2a2a30;border-radius:10px;flex:1;padding:9px 12px}.ask-form button{cursor:pointer;color:#fff;font:inherit;background:#ff3b2f;border:0;border-radius:10px;padding:0 14px}@media (max-width:700px){.ask-wrap{bottom:96px}}.dv-wrap{width:100%;position:relative}.dv-wrap video{width:100%;display:block}.dv-play{cursor:pointer;color:#fff;border-radius:inherit;background:#0505072e;border:0;flex-direction:column;gap:10px;position:absolute;inset:0}.dv-circle,.dv-play{justify-content:center;align-items:center;display:flex}.dv-circle{background:#ff3b2feb;border-radius:50%;width:88px;height:88px;padding-left:5px;transition:transform .2s;box-shadow:0 10px 40px #ff3b2f73}.dv-play:hover .dv-circle{transform:scale(1.08)}.dv-label{letter-spacing:.04em;text-shadow:0 2px 10px #000;font-size:18px;font-weight:700}@media (max-width:600px){.dv-circle{width:68px;height:68px}.dv-circle svg{width:30px;height:30px}.dv-label{font-size:15px}}.ask-wrap.ask-off{opacity:0;pointer-events:none}.proj-scene,.proj-scene:nth-child(2n){align-items:start;min-height:0!important}.proj-list{row-gap:0}.proj-slides .slides{margin-top:18px}.work-section.section-shell{padding-top:72px!important}.stack-section.section-shell{padding-top:64px!important}.record-section.section-shell{padding-top:56px!important}@media (max-width:860px){.proj-scene{padding-block:20px}.now-section.section-shell,.stack-section.section-shell,.work-section.section-shell{padding-top:48px!important}.now-section.section-shell{padding-bottom:48px!important}}.proj-scene{row-gap:0!important;padding-block:clamp(10px,2vw,22px)!important}.proj-slides .slides{margin-top:0!important;margin-bottom:0!important}.proj-slides .slides-track{padding-top:6px!important;padding-bottom:10px!important}.proj-cta:last-child{margin-bottom:0}.work-section.section-shell{padding-top:48px!important;padding-bottom:24px!important}.stack-section.section-shell{padding-top:36px!important;padding-bottom:24px!important}.now-section.section-shell{padding-top:24px!important;padding-bottom:24px!important}.record-section.section-shell{padding-top:32px!important;padding-bottom:24px!important}.about-section.section-shell{padding-top:24px!important;padding-bottom:36px!important}.learn-box{margin-block:16px!important}.demo-block{margin-block:0!important}@media (max-width:860px){.now-section.section-shell,.record-section.section-shell,.stack-section.section-shell,.work-section.section-shell{padding-top:28px!important;padding-bottom:20px!important}}.proj-scene{padding-block:clamp(28px,4.5vw,56px)!important}.proj-scene+.proj-scene{border-top:1px solid #ffffff0f}@media (max-width:860px){.proj-scene{padding-block:30px!important}}.proj-demo{grid-column:1/-1;width:min(100%,860px);margin:0 auto}.proj-demo video{aspect-ratio:16/10;object-fit:cover;background:#0b0b0e;border:1px solid #2c2c31;border-radius:12px;width:100%;display:block;box-shadow:0 22px 50px #00000073}.proj-demo figcaption{color:#8e8e96;text-align:center;margin-top:8px;font-size:12px}.live-stats{color:#d4d4d8;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0;font-size:13px;display:flex}.live-stats span{background:#101013;border:1px solid #2c2c31;border-radius:99px;padding:5px 12px}.live-stats em{color:#8e8e96;font-size:11px;font-style:normal}.rbar{z-index:260;opacity:0;pointer-events:none;gap:8px;transition:opacity .25s,transform .25s;display:flex;position:fixed;top:14px;right:14px;transform:translateY(-12px)}.rbar-on{opacity:1;pointer-events:auto;transform:none}.rbar a{-webkit-backdrop-filter:blur(10px);border-radius:99px;padding:9px 16px;font-size:13px;font-weight:700;text-decoration:none}.rbar-resume{color:#fff;background:#ff3b2f}.rbar-mail{color:#fff;background:#101013d9;border:1px solid #3a3a41}@media (max-width:600px){.rbar{top:10px;right:10px}.rbar a{padding:8px 13px;font-size:12px}}@media (max-width:760px){.hero-section{min-height:auto!important;padding-top:88px!important;padding-bottom:28px!important}.hero-word-wrap{width:100%!important;margin:0 0 6px!important;position:relative!important;top:auto!important}.portfolio-word{white-space:nowrap;overflow:visible;font-size:clamp(44px,15.5vw,84px)!important;line-height:.9!important}.hero-name{font-size:clamp(44px,13vw,70px)!important;line-height:.95!important}.hero-portrait{width:min(78vw,300px)!important;margin:10px auto 0!important;position:relative!important;bottom:auto!important}.control-dock{bottom:max(10px,env(safe-area-inset-bottom));scrollbar-width:none;max-width:calc(100vw - 20px);overflow-x:auto;transform:translate(50%)}.control-dock::-webkit-scrollbar{display:none}.dock-button{min-height:40px;padding:0 10px;font-size:11px}body{padding-bottom:70px}}@media (max-width:380px){.portfolio-word{font-size:clamp(38px,14.5vw,60px)!important}.hero-name{font-size:44px!important}}@media (max-width:760px){.hero-portrait{width:min(92vw,430px)!important;height:auto!important;margin:14px auto 0!important;position:relative!important;bottom:auto!important;left:auto!important;transform:none!important}.hero-portrait img{aspect-ratio:1288/1600;object-fit:cover!important;object-position:center 20%!important;width:100%!important;height:auto!important}.hero-portrait:after{inset:55% 0 0!important}.control-dock{display:none!important}.hero-portrait{margin:12px auto 0!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}