@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/fef07dbb0973bf53-s.12tyk43_3sh9u.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.0jzbimsg8vl84.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/53b9e256198e5412-s.0-wfv7uh4i7h9.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.0nx0ww8fni_q3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.09~u27dqhyhd6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5ce348bf30bf5439-s.0zgw-jeven.3w.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0wkzw~je483f-.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/6306c77e7c8268e4-s.0rhz0arwfsn~5.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(../media/7d817b4c03b0c5f1-s.0l76wvqk9d84w.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0k4k9394f2q-k.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.08e28id.o-okb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--paper:#f7f3eb;--ink:#121319;--muted:#696860;--line:#b8b3a9;--yellow:#e9b914;--violet:#7257b9;--display:"Arial Narrow", "Roboto Condensed", Impact, sans-serif;--mono:var(--font-geist-mono), "Courier New", monospace}*{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}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--violet);outline-offset:4px}img{max-width:100%;display:block}.skip-link{z-index:60;border:1px solid var(--ink);background:var(--paper);min-height:44px;font-family:var(--mono);align-items:center;padding:0 16px;font-size:.78rem;font-weight:700;transition:transform .16s ease-out;display:flex;position:fixed;top:10px;left:10px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.page-shell,.site-header{width:min(1480px,100% - 64px);margin-inline:auto}.site-header{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;min-height:84px;display:grid}.wordmark,.site-footer strong{font-family:var(--display);letter-spacing:.16em;text-transform:uppercase;font-size:1.28rem;font-weight:900;font-stretch:75%}.wordmark{align-items:center;min-height:44px;display:flex}.site-header nav{gap:clamp(20px,4vw,58px);display:flex}.site-header nav a{align-items:center;min-height:44px;display:flex}.site-header nav a,.locale-switch,.site-footer{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;font-size:.76rem;font-weight:700}.locale-switch{min-height:44px;color:inherit;cursor:pointer;background:0 0;border:0;justify-self:end;align-items:center;gap:7px;padding:12px 0;display:flex}.hero{grid-template-columns:minmax(320px,.78fr) minmax(470px,1.22fr);align-items:center;gap:clamp(44px,7vw,110px);min-height:690px;padding-block:clamp(62px,8vw,118px);display:grid}.hero>*{min-width:0}.hero h1,.section-title-row h2,.about h2,.contact h2{font-family:var(--display);letter-spacing:-.035em;text-wrap:balance;margin:0;font-weight:900;font-stretch:75%}.hero h1{max-width:620px;font-size:clamp(4.8rem,7vw,6rem);line-height:.9}.accent-rule{background:var(--yellow);width:70px;height:5px;margin-block:32px 22px}.role{font-family:var(--mono);margin:0;font-size:clamp(.8rem,1.2vw,1rem);font-weight:700}.hero-intro{max-width:510px;color:var(--muted);text-wrap:pretty;margin:22px 0 0;font-size:1.02rem;line-height:1.7}.hero-media{aspect-ratio:4/4.25;border:1px solid var(--ink);background:#9c5c32;border-radius:9px;margin:0;position:relative;overflow:hidden}.hero-media img{object-fit:cover;width:100%;height:100%}.hero-media figcaption{font-family:var(--mono);text-transform:uppercase;background:#f7f3ebf0;border:1px solid #1213194d;border-radius:5px;justify-content:space-between;gap:18px;padding:13px 15px;font-size:.7rem;display:flex;position:absolute;bottom:16px;left:16px;right:16px}.work-section,.comparison-preview,.about,.contact{padding-block:clamp(70px,8vw,120px)}.section-title-row{grid-template-columns:auto 1fr auto;align-items:end;gap:30px;margin-bottom:34px;display:grid}.section-title-row:after{content:"";background:var(--line);grid-column:2;height:1px;margin-bottom:10px}.section-title-row h2{font-size:clamp(2.7rem,4.8vw,5.7rem);line-height:.95}.section-title-row>span{color:var(--muted);font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;grid-column:3;font-size:.7rem}.work-grid{grid-template-columns:repeat(12,1fr);gap:16px;display:grid}.work-card{min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-column:span 4;padding:0}.work-card-4,.work-card-5{grid-column:span 6}.work-image-wrap{aspect-ratio:4/3.25;border:1px solid var(--ink);background:#ded9cf;border-radius:8px;display:block;overflow:hidden}.work-image-wrap img{object-fit:cover;width:100%;height:100%;transition:transform .24s ease-out}.work-card:nth-child(4) .work-image-wrap,.work-card:nth-child(5) .work-image-wrap{aspect-ratio:1.8}.work-card:hover .work-image-wrap img{transform:scale(1.018)}.work-meta{grid-template-columns:1fr auto;gap:5px 18px;padding:14px 2px 24px;display:grid}.work-meta span{color:var(--muted);font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;font-size:.75rem}.work-meta strong{grid-column:1;font-size:1.1rem}.swatches{grid-area:1/2/span 2;gap:4px;display:flex}.swatches i{border:1px solid #12131929;width:9px;height:38px}.comparison-intro{max-width:560px;color:var(--muted);margin:-12px 0 28px;line-height:1.65}.comparison-stage{aspect-ratio:1.75;border:1px solid var(--ink);background:#d7d3ca;border-radius:8px;position:relative;overflow:hidden}.comparison-stage>img,.comparison-overlay img{object-fit:cover;object-position:center 20%;width:100%;height:100%}.comparison-overlay{position:absolute;inset:0;overflow:hidden}.comparison-overlay img{max-width:none}.comparison-divider{background:var(--paper);width:2px;position:absolute;top:0;bottom:0;transform:translate(-1px);box-shadow:0 0 0 1px #1213198c}.comparison-divider:after{content:"↔";border:1px solid var(--ink);background:var(--paper);width:46px;height:46px;font-family:var(--mono);border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.comparison-label{border:1px solid var(--ink);background:var(--paper);font-family:var(--mono);text-transform:uppercase;padding:8px 10px;font-size:.7rem;position:absolute;top:14px}.comparison-label-left{left:14px}.comparison-label-right{right:14px}.comparison-control{font-family:var(--mono);text-transform:uppercase;grid-template-columns:auto 1fr;align-items:center;gap:24px;margin-top:18px;font-size:.72rem;font-weight:700;display:grid}.comparison-control input{width:100%;min-height:44px;accent-color:var(--ink);cursor:ew-resize}.comparison-control input:focus-visible{outline:3px solid var(--violet);outline-offset:3px}.comparison-fallback{grid-template-columns:1fr 1fr;gap:16px;margin-top:20px;display:grid}.comparison-fallback figure{margin:0}.comparison-fallback img{border:1px solid var(--ink);width:100%;height:auto}.comparison-fallback figcaption{font-family:var(--mono);text-transform:uppercase;margin-top:8px;font-size:.72rem}.dialog-backdrop{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#121319b8;place-items:center;padding:28px;display:grid;position:fixed;inset:0;overflow:auto}.project-dialog{border:1px solid var(--ink);background:var(--paper);border-radius:10px;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);width:min(1180px,100%);max-height:min(900px,100vh - 56px);display:grid;position:relative;overflow:auto;box-shadow:0 28px 90px #00000057}.dialog-close{z-index:2;border:1px solid var(--ink);background:var(--paper);width:46px;height:46px;color:var(--ink);cursor:pointer;border-radius:50%;font-size:1.8rem;line-height:1;position:absolute;top:14px;right:14px}.dialog-gallery{background:#18191e;gap:8px;padding:18px;display:grid}.dialog-gallery-2{grid-template-columns:1fr 1fr}.dialog-gallery img{object-fit:contain;background:#fff;width:100%;height:100%;max-height:760px}.dialog-copy{align-self:center;padding:clamp(36px,5vw,72px)}.dialog-category{font-family:var(--mono);letter-spacing:.07em;text-transform:uppercase;font-size:.7rem}.dialog-copy h2{font-family:var(--display);letter-spacing:-.035em;margin:16px 0 20px;font-size:clamp(3.1rem,5vw,6rem);line-height:.92}.dialog-summary{color:var(--muted);font-size:1rem;line-height:1.65}.dialog-detail{border-top:1px solid var(--line);margin-top:30px;padding-top:20px}.dialog-detail h3{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;margin:0 0 10px;font-size:.72rem}.dialog-detail p{margin:0;font-size:.88rem;line-height:1.6}.about{grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(44px,8vw,130px);display:grid}.about h2{max-width:650px;font-size:clamp(3.1rem,6vw,6rem);line-height:.92}.about p{max-width:640px;font-family:var(--mono);margin:0;font-size:.86rem;line-height:1.72}.portrait{object-fit:cover;object-position:center 28%;border:1px solid var(--ink);border-radius:8px;width:100%;max-height:720px}.contact{border:1px solid var(--line);justify-content:space-between;align-items:center;gap:32px;margin-bottom:44px;padding-inline:clamp(24px,4vw,60px);display:flex}.contact h2{border-top:5px solid var(--yellow);max-width:760px;padding-top:26px;font-size:clamp(3rem,5.6vw,6rem);line-height:.91}.contact-button{border:1px solid var(--ink);min-width:210px;font-family:var(--mono);background:0 0;justify-content:space-between;align-items:center;gap:30px;padding:20px 22px;transition:color .16s,background .16s;display:flex}.contact-button:hover{background:var(--ink);color:var(--paper)}.site-footer{border-top:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:28px;padding-block:24px 36px;display:grid}.site-footer a{align-items:center;min-height:44px;display:flex}@media (max-width:920px){.page-shell,.site-header{width:min(100% - 36px,780px)}.site-header{grid-template-columns:1fr auto}.locale-switch{grid-area:1/2}.site-header nav{border-top:1px solid var(--line);grid-area:2/1/auto/-1;gap:12px;display:flex}.site-header nav a{flex:1;justify-content:center}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding-top:24px}.hero h1{font-size:clamp(4.2rem,14vw,6rem)}.work-card,.work-card-4,.work-card-5{grid-column:span 6}.work-card:last-child{grid-column:1/-1}.about{grid-template-columns:1fr}.portrait{grid-row:1;max-height:600px}.contact{flex-direction:column;align-items:flex-start}.site-footer,.project-dialog{grid-template-columns:1fr}.dialog-gallery{max-height:56vh}}@media (max-width:620px){.page-shell,.site-header{width:min(100% - 24px,520px)}.site-header{min-height:70px}.wordmark{font-size:1rem}.hero{gap:42px;padding-block:58px 72px}.hero h1{font-size:clamp(3.5rem,20vw,4.8rem)}.hero-media{aspect-ratio:4/5.2}.hero-media figcaption{flex-direction:column;align-items:flex-start}.section-title-row{grid-template-columns:1fr;gap:14px}.section-title-row:after,.section-title-row>span{grid-column:1}.work-card,.work-card-4,.work-card-5,.work-card:last-child{grid-column:1/-1}.work-image-wrap,.work-card:nth-child(4) .work-image-wrap,.work-card:nth-child(5) .work-image-wrap{aspect-ratio:4/4.8}.comparison-stage{aspect-ratio:4/4.7}.comparison-control,.comparison-fallback{grid-template-columns:1fr}.dialog-backdrop{padding:10px}.project-dialog{max-height:calc(100vh - 20px)}.dialog-gallery-2{grid-template-columns:1fr 1fr}.dialog-copy{padding:34px 22px}.contact{width:calc(100% - 24px);padding-block:54px}.contact h2{font-size:clamp(3.2rem,15vw,5rem)}.contact-button{width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
