@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/barlow-condensed-700.3787a5a41917.woff2') format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url('assets/fonts/barlow-condensed-800.2515494e8cc2.woff2') format('woff2')}
@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:900;font-display:swap;src:url('assets/fonts/barlow-condensed-900.aa01966de3f6.woff2') format('woff2')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('assets/fonts/dm-sans-variable.9fea608a947e.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/ibm-plex-mono-400.08949f728dc5.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/ibm-plex-mono-500.01d285447409.woff2') format('woff2')}
@font-face{font-family:'Barlow Fallback';src:local('Arial'),local('Liberation Sans'),local('Nimbus Sans');size-adjust:72.169%;ascent-override:138.564%;descent-override:27.713%;line-gap-override:0.000%}
@font-face{font-family:'DM Fallback';src:local('Arial'),local('Liberation Sans'),local('Nimbus Sans');size-adjust:104.301%;ascent-override:95.109%;descent-override:29.722%;line-gap-override:0.000%}
@font-face{font-family:'Plex Fallback';src:local('Courier New'),local('Liberation Mono'),local('Nimbus Mono PS');size-adjust:100.000%;ascent-override:102.500%;descent-override:27.500%;line-gap-override:0.000%}
:root{--paper:#e8dcc4;--ink:#262520;--red:#bd432d;--blue:#356a73;--olive:#74734c;--line:#26252042;--mono:'IBM Plex Mono','Plex Fallback',monospace;--display:'Barlow Condensed','Barlow Fallback','Arial Narrow',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans','DM Fallback',Arial,sans-serif}body:before{content:'';position:fixed;inset:0;background:radial-gradient(ellipse at 70% 10%,#fff5df99,transparent 65%),linear-gradient(100deg,#9d7b2310,transparent 35%,#fff3);pointer-events:none;z-index:-1}.paper-grain{position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.12;background-image:url('assets/paper-grain.ead347fbf353.webp');background-repeat:repeat;background-size:128px 128px;mix-blend-mode:multiply}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--red);outline-offset:6px}.skip{position:fixed;top:-100px;background:var(--ink);color:var(--paper);padding:15px;z-index:99}.skip:focus{top:10px}.site-header{margin:0 5%;padding:29px 0 23px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--ink)}.wordmark{font-weight:700;font-size:28px;letter-spacing:-1.8px;display:flex;align-items:center;gap:10px}.mark{color:var(--red);font-size:32px}.site-header nav{display:flex;align-items:center;gap:32px;font-size:13px}.site-header nav a:hover,.text-link:hover{color:var(--red)}.contact-link{border-bottom:1px solid;padding:8px 0}.contact-link span{margin-left:20px}.menu{display:none;background:none;border:0}.hero{padding:45px 5% 0;position:relative;overflow:hidden}.hero-copy{width:50%;position:relative;z-index:2;padding-bottom:48px}.eyebrow{font:10px var(--mono);letter-spacing:1.2px;line-height:1.7}.red-dot{display:inline-block;background:var(--red);width:7px;height:7px;border-radius:50%;margin-right:7px}h1{font:900 clamp(90px,10.7vw,170px)/.84 var(--display);text-transform:uppercase;letter-spacing:-2px;margin:34px 0 30px}.digital{position:relative}.digital svg{position:absolute;left:0;bottom:-15px;width:100%;height:30px;fill:none;stroke:var(--red);stroke-width:5;stroke-linecap:round}.period{color:var(--red)}.intro{font-size:clamp(22px,2.4vw,34px);line-height:1.15;letter-spacing:-1px;margin:36px 0 17px}.hero-description{font-size:14px;line-height:1.7;max-width:340px}.button{display:inline-flex;align-items:center;gap:43px;background:var(--ink);color:var(--paper);padding:17px 23px;font-size:13px;border:1px solid var(--ink);transition:background .2s,transform .2s}.button:hover{background:var(--red);border-color:var(--red);transform:translateY(-2px)}.button span{font-size:21px}.hero .button{margin-top:19px}.small-note{position:absolute;left:275px;bottom:54px;font:15px/1.2 cursive;transform:rotate(-8deg)}.small-note svg{width:66px;height:43px;display:block;stroke:var(--ink);fill:none;stroke-width:1.5}.hero-art{position:absolute;left:48%;top:43px;width:53%;height:570px;transform:rotate(2deg)}.hero-art img{width:100%;height:100%;object-fit:cover;object-position:62% center;clip-path:polygon(1% 1%,98% 0,100% 28%,99% 69%,100% 98%,73% 99%,29% 98%,0 100%,1% 61%,0 22%);mix-blend-mode:multiply}.tape{position:absolute;background:#c5ac704f;width:130px;height:32px;z-index:3;transform:rotate(-15deg);top:-6px;left:21%;box-shadow:0 1px 2px #0001}.art-caption{position:absolute;bottom:4px;left:22px;font:8px var(--mono);letter-spacing:1px;background:var(--paper);padding:6px}.vertical-note{position:absolute;right:38px;top:105px;writing-mode:vertical-rl;font:8px var(--mono);letter-spacing:1.5px}.stamp{position:absolute;bottom:30px;right:13%;width:120px;height:120px;background:var(--red);color:var(--paper);border-radius:50%;transform:rotate(-15deg);display:flex;align-items:center;justify-content:center;flex-direction:column;font:11px var(--mono);box-shadow:0 0 0 3px var(--paper),0 0 0 4px var(--red)}.stamp strong{font-size:15px}.stamp span{font-size:35px;line-height:1.2}.hero-foot{padding:18px 0 23px;border-top:1px solid var(--line);position:relative;display:flex;justify-content:space-between;font:9px var(--mono);letter-spacing:1px}.discipline-strip{background:var(--red);color:var(--paper);display:flex;gap:28px;align-items:center;justify-content:space-evenly;padding:18px 2%;font:700 23px var(--display);letter-spacing:1px;transform:none;margin:8px 0 0;clip-path:polygon(0 3%,100% 0,100% 97%,0 100%)}.discipline-strip i{font:normal 30px Arial}.section{padding:90px 5%}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px}h2{font:800 clamp(38px,4.4vw,66px)/1.03 var(--display);letter-spacing:-.5px;margin:15px 0}h2 em{font-family:Georgia,serif;font-weight:400;font-size:.9em}p{line-height:1.6}.section-heading>p{font-size:13px;max-width:320px;margin-bottom:15px}.filters{display:flex;flex-wrap:wrap;gap:24px;margin:30px 0 27px;border-top:1px solid var(--line);padding-top:19px}.filters button{border:0;border-bottom:1px solid transparent;background:none;padding:0 0 7px;font-size:12px}.filters button.active{color:var(--red);border-color:var(--red)}sup{font:8px var(--mono);margin-left:4px}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:43px 30px}.project[hidden]{display:none}.project-visual{height:320px;position:relative;padding:19px;overflow:hidden;transition:transform .25s;isolation:isolate}.project-visual:after{content:'';position:absolute;inset:0;opacity:.23;background-image:url('assets/paper-grain.ead347fbf353.webp');background-repeat:repeat;background-size:128px 128px;mix-blend-mode:multiply;pointer-events:none}.project:hover .project-visual{transform:rotate(-.6deg)}.project-index,.visual-foot{font:9px var(--mono);letter-spacing:1px;position:absolute;z-index:2}.project-index{top:19px}.visual-foot{bottom:19px}.visit{position:absolute;bottom:12px;right:18px;font-size:29px;z-index:2}.va{background:#bb452e;color:#f1e5cf}.network-art{position:absolute;inset:50px 40px;display:flex;align-items:center}.network-art>span{font:800 83px/.78 var(--display);letter-spacing:-3px;position:relative;z-index:1}.small-star{font:60px Arial;position:absolute;right:-72px;top:18px}.network-lines{position:absolute;width:280px;height:280px;border:1px solid #f1e5cf66;border-radius:50%;right:-80px;top:-20px;box-shadow:0 0 0 24px #f1e5cf11,0 0 0 50px #f1e5cf11,0 0 0 76px #f1e5cf11}.po{background:#bfc2a3;color:#263a31}.eye-art{position:absolute;inset:55px 60px}.eye-art svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:5;transform:rotate(-7deg)}.eye-art svg circle{fill:currentColor;stroke:none}.eye-art svg circle+circle{fill:#bfc2a3}.cost{background:#356a73;color:#e9dfcb}.cost-art{display:flex;align-items:center;justify-content:center;height:100%;position:relative}.cost-art>span{font:800 66px/.9 var(--display);z-index:1;position:relative;letter-spacing:-1px}.cross{position:absolute;font:100px var(--display);right:-85px;top:0}.orb{border:1px solid #e9dfcb7a;border-radius:50%;width:225px;height:225px;position:absolute;left:1%;transform:rotate(30deg);background:repeating-linear-gradient(0deg,transparent 0 18px,#e9dfcb44 19px 20px)}.com{background:#d0b991}.com-art{display:flex;align-items:center;justify-content:center;gap:20px;height:100%;transform:rotate(-4deg)}.com-art>span{font:800 58px/.9 var(--display)}.com-art .bracket{font:140px Georgia;color:var(--red)}.project-caption{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;margin-top:15px;gap:10px}.project-caption h3{font-size:22px;font-weight:600;letter-spacing:-.7px;margin:0}.project-caption span{font:9px var(--mono);text-align:right}.project>p{font-size:12px;margin:7px 0 0;color:#5a554c}.project-note{font:9px/1.6 var(--mono);color:#665f54;margin-top:26px}.about{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10%;background:#d9ccb3;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.about-art{display:flex;flex-direction:column;align-items:center;justify-content:center}.sketch-paper{background:#eee4cf;padding:28px;width:85%;box-shadow:2px 6px 15px #44321d26;transform:rotate(-5deg);position:relative}.sketch-paper:before{content:'';position:absolute;top:-12px;left:38%;width:90px;height:30px;background:#af986e70;transform:rotate(7deg)}.sketch-paper>span{font:9px var(--mono)}.sketch-paper p{font:22px/1.2 Georgia}.swatches{display:flex;margin-top:30px}.swatches i{width:45px;height:35px;background:var(--ink);margin-right:7px}.swatches i:nth-child(2){background:var(--blue)}.swatches i:nth-child(3){background:var(--olive)}.swatches i:nth-child(4){background:var(--red)}.hand-note{font:16px/1.3 cursive;transform:rotate(-5deg);margin-top:30px}.about-copy h2{margin:20px 0 25px}.about-copy>p:not(.eyebrow){font-size:14px}.about-copy .lead{font-size:20px!important;line-height:1.4;letter-spacing:-.5px}.text-link{display:inline-block;margin-top:14px;border-bottom:1px solid;padding-bottom:7px;font-size:12px}.text-link span{margin-left:25px}.ai-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8%;background:var(--ink);color:var(--paper)}.ai-intro{position:relative}.ai-intro h2{font-size:clamp(40px,4vw,60px)}.ai-star{display:inline-block;font:55px Arial;color:#c8563c;margin-left:12px}.ai-intro>p:last-child{font-size:14px;max-width:430px;color:#c5bca9}.process-list{padding-top:20px}.process-list article{padding:26px 0;display:flex;gap:22px;border-bottom:1px solid #e8dcc43c}.process-list article>span{font:10px var(--mono);color:#c68670;padding-top:5px}.process-list h3{font-size:18px;font-weight:500;margin:0 0 9px}.process-list p{font-size:12px;color:#bfb6a2;margin:0;max-width:320px}.process-list b{margin-left:auto;font-size:24px;font-weight:400}.contact{padding-top:80px;padding-bottom:65px}.contact h2{font-size:clamp(60px,8.8vw,130px);margin:27px 0 35px;position:relative}.contact h2>span{font-family:Arial,sans-serif;font-size:170px;color:var(--red);position:absolute;right:30px;top:0}.contact-bottom{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:center}.contact-bottom p{font-size:14px}footer{margin:0 5%;padding:25px 0 30px;border-top:1px solid;display:flex;justify-content:space-between;align-items:center;gap:20px}footer>span,footer>a:not(.wordmark){font:9px var(--mono)}footer .wordmark{font-size:24px}@media(min-width:1500px){.hero-art{height:650px}.hero-copy{padding-bottom:70px}}@media(max-width:1050px){.site-header nav{gap:20px}.hero-art{height:550px;width:55%;left:48%}.small-note{display:none}.project-caption{display:block}.project-caption span{display:block;text-align:left;margin-top:6px}.project-visual{height:285px}.network-art>span{font-size:70px}.contact h2>span{font-size:130px}.section{padding-top:70px;padding-bottom:70px}.about{gap:7%}}@media(max-width:700px){.site-header{padding:17px 0}.wordmark{font-size:24px}.menu{display:block;font-size:12px}.site-header nav{display:none}.site-header nav.open{display:flex;position:absolute;left:0;right:0;top:72px;background:var(--paper);z-index:30;padding:26px 6%;flex-direction:column;align-items:start;border-bottom:1px solid}.hero{padding-top:27px}.hero-copy{width:100%;padding-bottom:20px}.eyebrow{font-size:8px}h1{font-size:clamp(48px,17vw,115px);margin:28px 0}.intro{font-size:25px;margin-top:28px}.hero-description{font-size:13px}.hero-art{position:relative;left:0;top:0;width:100%;height:clamp(260px,85vw,380px);margin:23px 0 20px;transform:none}.hero-art img{object-position:center}.stamp{width:95px;height:95px;right:7%;bottom:27px;font-size:9px}.stamp strong{font-size:12px}.stamp span{font-size:27px}.hero-foot{font-size:7px;gap:15px}.hero-foot a{display:none}.discipline-strip{padding:14px 10px;gap:clamp(8px,2.5vw,13px);white-space:normal;justify-content:center;font-size:clamp(14px,4vw,18px)}.discipline-strip span:last-of-type,.discipline-strip i:last-child{display:none}.discipline-strip i{font-size:22px}.section{padding:54px 6%}.section-heading{display:block}.section-heading>p{font-size:12px;margin-top:17px}.section-heading h2{font-size:43px}.filters{gap:20px}.filters button{font-size:10px}.project-grid{grid-template-columns:1fr;gap:32px}.project-visual{height:280px}.project-caption h3{font-size:21px}.project-caption{display:flex}.project-caption span{text-align:right;max-width:160px;font-size:8px}.project>p{font-size:11px}.about{display:flex;flex-direction:column;gap:45px}.about-art{order:2;margin:0 13px}.sketch-paper{max-width:340px}.about-copy h2{font-size:48px}.about-copy>p:not(.eyebrow){font-size:13px}.ai-section{display:block}.ai-intro h2{font-size:43px}.ai-intro>p:last-child{font-size:13px}.process-list h3{font-size:16px}.process-list p{font-size:11px}.process-list article{gap:16px}.contact h2{font-size:clamp(44px,13vw,65px);line-height:.98}.contact h2>span{font-size:72px;right:0;top:-6px}.contact-bottom{align-items:start;flex-direction:column;gap:10px}.contact-bottom p{font-size:12px}footer{flex-wrap:wrap;padding:24px 0;gap:18px}footer .wordmark{width:55%}footer>span{width:35%;text-align:right;font-size:7px}footer>a:not(.wordmark){font-size:9px}.vertical-note{right:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.work-context{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:35px;border-top:1px solid var(--line);padding:25px 0 6px}.work-context>.eyebrow{color:var(--red);margin:4px 0}.work-context h3{font-size:23px;letter-spacing:-.6px;font-weight:500;margin:0 0 9px}.work-context h3 a{border-bottom:1px solid var(--red)}.work-context h3 a:hover,.inline-link:hover{color:var(--red)}.work-context h3 span{font-size:18px;color:var(--red)}.work-context div>p{font-size:13px;max-width:630px;margin:0}.inline-link{text-decoration:underline;text-underline-offset:3px}@media(max-width:700px){.work-context{grid-template-columns:1fr;gap:13px;padding-top:20px}.work-context h3{font-size:22px}.work-context div>p{font-size:12px}}

/* Keep the editorial composition inside a bounded, shrinkable layout. */
html,body{width:100%;min-width:0}
main{width:100%;max-width:1440px;margin-inline:auto}
.site-header,footer{width:90%;max-width:1296px;margin-inline:auto}
main>section,.discipline-strip{max-width:100%;min-width:0}
img,svg{max-width:100%}
.project-grid>*,.about>*,.ai-section>*,.work-context>*,.section-heading>*,.process-list article>div{min-width:0}
h1,h2,h3,p,.eyebrow{overflow-wrap:anywhere}
.hero-copy{container-type:inline-size}
.hero h1{font-size:clamp(40px,18cqw,152px)}
.discipline-strip{flex-wrap:wrap;row-gap:10px}
.discipline-strip>span{min-width:0;text-align:center}
.button{max-width:100%;gap:clamp(16px,3vw,43px)}
.button span{flex-shrink:0}
.art-caption{max-width:calc(100% - 44px);overflow-wrap:anywhere}
.section-heading{gap:24px}
.contact h2{padding-right:100px}
.contact h2>span{right:0;font-size:clamp(60px,11vw,150px)}
@media(max-width:900px) and (min-width:701px){
.site-header nav{gap:15px;font-size:11px}
.wordmark{font-size:25px}
.contact-link span{margin-left:8px}
.section-heading{align-items:start;flex-direction:column;gap:0}
}
@media(max-width:700px){
.hero h1{font-size:clamp(40px,18cqw,115px)}
.hero-copy{width:100%}
.hero-foot{flex-wrap:wrap}
.contact h2{padding-right:50px}
.contact h2>span{font-size:clamp(44px,12vw,72px)}
.project-caption span{overflow-wrap:anywhere}
}
@media(max-width:380px){
.filters{column-gap:14px;row-gap:10px}
.project-caption{align-items:start;flex-direction:column;gap:0}
.project-caption span{text-align:left;max-width:100%}
.sketch-paper{width:100%;padding:22px}


.com-art{gap:8px}
.com-art>span{font-size:46px}
.com-art .bracket{font-size:95px}
.visual-foot{max-width:calc(100% - 65px);line-height:1.5}
}

/* A handmade AI character joins the closing invitation. */
.contact-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(20px,4vw,60px);align-items:center}
.contact-layout>*{min-width:0}
.contact-copy h2{font-size:clamp(48px,6.4vw,92px);padding-right:0;line-height:1.02}
.contact-copy .contact-bottom{flex-direction:column;align-items:flex-start;gap:14px}
.contact-illustration{margin:0;width:100%;max-width:100%;align-self:end}
.contact-illustration img{display:block;width:100%;height:auto;max-height:540px;object-fit:contain;object-position:center bottom}
@media(max-width:700px){
.contact-layout{grid-template-columns:minmax(0,1fr);gap:30px}
.contact-copy h2{font-size:clamp(44px,12vw,65px)}
.contact-illustration{width:min(100%,380px);justify-self:center}
.contact-illustration img{max-height:380px}
}

@media(max-width:700px){.discipline-strip .desktop-separator{display:none}}

/* Original portrait used consistently with the personal wordmark. */
.wordmark{gap:12px;min-width:0}
.brand-avatar{display:block;width:42px;height:42px;flex:0 0 42px;border-radius:50%;object-fit:cover;border:1px solid var(--line)}
.wordmark>span{white-space:nowrap}
footer .brand-avatar{width:36px;height:36px;flex-basis:36px}
@media(max-width:700px){
.wordmark{gap:10px}
.brand-avatar{width:36px;height:36px;flex-basis:36px}
footer .wordmark{width:auto;max-width:100%;flex:0 1 auto}
}

.studio-portrait{display:block;width:160px;max-width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:50%;margin:25px 0;border:2px solid #d2c3a4;box-shadow:0 0 0 5px #eee4cf}

/* Keep the hero crisp: no rotated resampling, blend wash or overlaid grain. */
.hero-art{transform:none}.hero-art img{mix-blend-mode:normal}
.paper-grain{z-index:0}.site-header{position:relative;z-index:30}main,footer{position:relative;z-index:1}
