@font-face{font-family:DM Sans;src:url('/assets/fonts/dm-sans-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:DM Sans;src:url('/assets/fonts/dm-sans-500.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:DM Sans;src:url('/assets/fonts/dm-sans-600.ttf') format('truetype');font-weight:600;font-display:swap}
/* Editorial system: oversized grotesk, contrasting serif, carbon / paper / citron. */
:root{--paper:#eeeee7;--ink:#20211e;--muted:#595b53;--line:#bfc1b4;--accent:#d7f45b;--display:'DM Sans',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif;--mono:ui-monospace,SFMono-Regular,Consolas,monospace;--gutter:clamp(22px,4.5vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.5 var(--body);-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:var(--ink)}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #6d7300;outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}a{touch-action:manipulation}.shell{width:calc(100% - var(--gutter)*2);max-width:1600px;margin-inline:auto}.meta{font:400 11px/1.5 var(--mono);letter-spacing:.03em;text-transform:uppercase}.skip-link{position:fixed;left:20px;top:-100px;padding:12px 20px;z-index:100;background:var(--ink);color:var(--paper)}.skip-link:focus{top:12px}.site-header{position:sticky;top:0;z-index:20;background:var(--paper)}.masthead{height:76px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--ink);gap:20px}.masthead-name{font-size:17px;font-weight:600;letter-spacing:-.04em;display:flex;align-items:center;gap:36px}.masthead-name::before{content:'↗';display:grid;place-items:center;width:30px;height:30px;background:var(--ink);color:var(--accent);font-size:24px}.masthead-note{font:10px var(--mono);letter-spacing:0;text-transform:uppercase;font-weight:400}.primary-nav{display:flex;gap:32px;font-size:13px}.primary-nav a{display:flex;align-items:center;gap:8px;min-height:44px}.primary-nav a:hover{text-decoration:underline;text-underline-offset:6px}
/* Cover: one typographic gesture, with a deliberately offset portrait. */
.home-hero{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;padding-block:32px 64px}.hero-role{grid-column:1/9;display:flex;justify-content:space-between}.hero-role span{padding-right:24px}.hero-edition{grid-column:10/13;font-size:10px;color:var(--muted)}.home-hero h1{grid-column:1/9;grid-row:2/4;font-size:clamp(100px,16.7vw,265px);line-height:.77;letter-spacing:-.085em;font-weight:500;padding-top:22px;align-self:start;position:relative;z-index:1}.home-hero h1>span{display:block}.home-hero h1>span+span{font:normal 400 1.14em/.86 var(--display);letter-spacing:-.055em;margin-left:17%}.name-arrow{font:400 .55em var(--body);vertical-align:top;display:inline-block;margin-left:20px;margin-top:8px;color:var(--ink)}.hero-portrait{grid-column:10/13;grid-row:2;align-self:start;margin-top:25px;position:relative}.hero-portrait::before{content:'';position:absolute;width:100%;height:100%;background:var(--accent);transform:none;z-index:-1}.hero-portrait img{width:100%;height:clamp(210px,22vw,350px);object-fit:cover;object-position:58% 62%;filter:saturate(.75)}.hero-portrait figcaption{display:flex;justify-content:space-between;font-size:9px;padding-top:10px;background:var(--paper);gap:12px}.hero-intro{grid-column:9/13;grid-row:3;max-width:34ch;font-size:clamp(17px,1.55vw,23px);line-height:1.4;letter-spacing:-.03em;margin-top:12px}.work-jump{grid-column:1/8;grid-row:4;display:flex;align-items:center;gap:16px;font-size:12px;width:fit-content;margin-top:10px}.circle{display:inline-grid;place-items:center;width:44px;height:44px;flex:none;border:1px solid currentColor;border-radius:50%;transition:background .2s,transform .2s}.circle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}.work-jump .circle{background:var(--accent);border:0;font-size:24px;width:54px;height:54px}.work-jump:hover .circle{transform:translateY(4px)}
.work-heading{border-top:1px solid var(--ink);padding-block:24px 40px;display:flex;align-items:baseline;justify-content:space-between;gap:24px}.work-heading h2{font-size:clamp(25px,3vw,44px);letter-spacing:-.05em}.work-heading h2 .meta{vertical-align:super;font-size:10px;margin-left:10px;letter-spacing:0}.discipline-nav{display:flex;gap:24px;font-size:11px;flex-wrap:wrap}.discipline-nav a{padding-block:12px}.discipline-nav a:hover{text-decoration:underline;text-underline-offset:5px}.project-visual{display:block;overflow:hidden;background:#dedfd6}.project-visual img{width:100%;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.project-visual:hover>img{transform:scale(1.025)}
/* Lead project reads as a spread, not a card. */
.project-pocket{display:flex;flex-direction:column}.pocket-visual{padding:clamp(16px,3.5vw,58px);background:#282923}.pocket-visual img{aspect-ratio:1.6;object-fit:contain}.project-pocket .project-copy{display:grid;grid-template-columns:70px 1.25fr 1fr;column-gap:30px;padding-top:24px;align-items:start}.project-number{font:normal 48px/1 var(--display);grid-column:1;grid-row:1/4}.project-meta{font-size:10px;color:var(--muted)}.project-pocket .project-meta{grid-column:2;grid-row:1}.project-pocket .project-meta br{display:initial}.project-copy h3{font:400 clamp(40px,5.8vw,92px)/1 var(--body);letter-spacing:-.065em;margin:14px 0 22px}.project-pocket h3{grid-column:2;grid-row:2;font-size:clamp(36px,5vw,76px)}.project-description{font-size:16px;line-height:1.5;color:var(--muted);max-width:39ch}.project-pocket .project-description{grid-column:3;grid-row:1/3;margin-top:3px}.project-link{display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:12px;max-width:300px;margin-top:24px;min-height:44px}.project-link:hover .circle,.secondary-project .circle:hover{background:var(--accent);color:var(--ink);transform:none}.project-pocket .project-link{grid-column:3;grid-row:3;margin-top:0;width:100%;max-width:none}.live-link{display:block;width:fit-content;border-bottom:1px solid var(--line);padding-block:10px;font-size:12px}.live-link:hover{border-color:currentColor}.project-pocket .live-link{grid-column:2;grid-row:3;margin-top:0}.role-note{font:11px/1.5 var(--mono);color:var(--muted);margin-top:24px;max-width:32ch}
.project-comi{display:grid;grid-template-columns:5fr 7fr;gap:8%;align-items:center;padding-block:100px 90px}.project-comi h3{font:normal 400 clamp(90px,12vw,190px)/.9 var(--display);letter-spacing:-.055em;margin:22px 0 32px}.project-comi .project-description{font-size:clamp(18px,2vw,26px);line-height:1.35;letter-spacing:-.025em;max-width:27ch;color:var(--ink)}.comi-visual{display:flex;align-items:flex-start;justify-content:center;gap:24px;background:#dadfd3;padding:48px 40px 68px;position:relative}.comi-visual .comi-screen{width:calc(50% - 12px);max-width:235px;aspect-ratio:430/932;object-fit:contain;border-radius:12% / 5.5%;box-shadow:0 18px 32px #20211e17}.comi-visual .screen-connect{margin-top:65px}.comi-caption{position:absolute;bottom:22px;left:30px;font-size:10px}.comi-visual:hover .screen-home{transform:translateY(-6px)}.comi-visual:hover .screen-connect{transform:translateY(6px)}
/* A tonal break for the speculative project. */
.code-feature{background:var(--ink);color:var(--paper);padding-block:64px 72px}.code-layout{display:grid;grid-template-columns:4fr 7fr;gap:7%;align-items:center}.code-layout .meta{color:var(--accent)}.code-layout h2{font:400 clamp(64px,8.5vw,138px)/.82 var(--body);letter-spacing:-.075em;margin:34px 0}.code-layout h2 a{display:block}.code-layout .project-description{color:#d7d9cd;font-size:18px;max-width:27ch}.code-layout .role-note{color:#b6bbaa}.code-layout .live-link{color:var(--accent);margin-top:14px;border-color:#626653}.code-layout .project-link{max-width:100%}.code-feature a:focus-visible{outline-color:var(--accent)}.exe-visual{background:#10120e;border:1px solid #4d5144;padding:18px;position:relative}.exe-visual img{aspect-ratio:16/9;object-fit:contain}
.further-work{padding-block:80px 30px}.further-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px}.further-heading h2{font:normal 400 clamp(48px,6vw,92px)/1 var(--display);letter-spacing:-.045em}.further-heading .meta{max-width:24ch;text-align:right;color:var(--muted)}.secondary-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:70px 40px}.secondary-project{min-width:0}.project-spine{grid-column:1/8}.project-squad{grid-column:9/13;padding-top:100px}.project-hub{grid-column:1/6}.project-green{grid-column:7/13;padding-top:90px}.secondary-project .project-visual img{aspect-ratio:1.5;object-fit:contain}.project-squad .project-visual img{aspect-ratio:1.1}.project-hub .project-visual img{aspect-ratio:1.1}.project-green .project-visual img{aspect-ratio:1800/1013}.secondary-meta{margin-top:20px;font-size:10px;color:var(--muted)}.secondary-title{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-block:7px 10px;border-bottom:1px solid var(--line)}.secondary-title h3{font-size:clamp(27px,3vw,46px);letter-spacing:-.055em;line-height:1.1}.secondary-project>p,.ice-copy>p{font-size:14px;line-height:1.5;color:var(--muted);margin-top:15px;max-width:46ch}.project-ice{grid-column:1/-1;display:grid;grid-template-columns:7fr 4fr;gap:8%;align-items:center}.project-ice .project-visual img{aspect-ratio:1.75}.project-ice .secondary-title h3{font:normal 400 clamp(40px,4.5vw,70px)/1 var(--display)}
.practice{margin-top:70px;padding-block:44px 70px;border-top:1px solid var(--ink);display:grid;grid-template-columns:1fr 2fr;gap:7%}.practice-label h2{font-size:24px;letter-spacing:-.04em;margin-top:18px}.practice-statement{font:400 clamp(30px,3.6vw,54px)/1.15 var(--display);letter-spacing:-.02em;margin-bottom:30px;max-width:32ch}.practice-copy>p:not(.practice-statement){max-width:57ch;color:var(--muted);font-size:15px}.underlined-link{display:inline-block;font-size:12px;border-bottom:1px solid var(--ink);padding-block:12px;margin-top:16px}.underlined-link:hover{background:var(--accent)}.about{border-top:1px solid var(--line);padding-block:30px 80px}.about-main{display:grid;grid-template-columns:1fr 1fr;gap:8%;margin-top:32px}.about h2{font:400 clamp(35px,4.5vw,68px)/1.05 var(--body);letter-spacing:-.06em}.about-copy{max-width:51ch;color:var(--muted);font-size:15px}.about-copy p+p{margin-top:18px}.about-links{display:flex;gap:25px}
.contact{background:var(--accent);width:100%;max-width:none;padding:50px var(--gutter) 22px}.contact-top{display:flex;justify-content:space-between;gap:28px;align-items:end;padding-bottom:55px;max-width:1600px;margin:auto}.contact h2{font:400 clamp(54px,8vw,128px)/1 var(--body);letter-spacing:-.075em;margin-top:20px}.contact-email{display:flex;align-items:center;gap:20px;font-size:clamp(15px,1.5vw,23px);min-height:44px;overflow-wrap:anywhere}.contact-email>span:first-child{border-bottom:1px solid currentColor;padding-bottom:6px}.contact-email:hover .circle{background:var(--ink);color:var(--accent)}.contact-bottom{max-width:1600px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #788736;padding-top:20px}.contact-bottom>div{display:flex;gap:28px;align-items:center;font-size:12px}.contact-bottom .meta{font-size:10px}.back-top{display:grid;place-items:center;width:44px;height:44px;font-size:25px;border:1px solid currentColor;border-radius:50%}
@media(min-width:1750px){.home-hero h1{font-size:265px}}
@media(max-width:1100px){.masthead-note{display:none}.home-hero h1{font-size:17vw}.hero-portrait{grid-column:9/13}.hero-edition{grid-column:9/13}.hero-role{grid-column:1/8}.hero-intro{font-size:18px}.project-pocket .project-copy{grid-template-columns:45px 1.2fr 1fr;gap:16px}.project-pocket h3{font-size:4.8vw}.work-heading{display:block}.discipline-nav{margin-top:10px}.code-layout{gap:5%;grid-template-columns:4fr 6fr}.code-layout .project-description{font-size:16px}.comi-visual{padding-inline:28px;gap:18px}.secondary-grid{gap:50px 28px}.project-squad{grid-column:8/13}.contact-top{display:block}.contact-email{margin-top:30px;width:fit-content}}
@media(max-width:700px){:root{--gutter:22px}html{scroll-padding-top:76px}.masthead{height:66px}.masthead-name{font-size:14px;gap:10px}.masthead-name::before{width:22px;height:22px;font-size:19px}.primary-nav{gap:17px;font-size:11px}.primary-nav a:last-child span{display:none}.home-hero{grid-template-columns:repeat(6,minmax(0,1fr));gap:20px 16px;padding-block:25px 40px}.hero-role{grid-column:1/-1;font-size:9px}.hero-role span{padding:0}.hero-edition{display:none}.home-hero h1{grid-column:1/6;grid-row:2;font-size:28vw;line-height:.8;padding-top:10px}.home-hero h1>span+span{margin-left:14%;line-height:.9}.name-arrow{font-size:.45em;margin-left:10px;margin-top:10px}.hero-portrait{grid-column:5/7;grid-row:3/5;margin-top:10px}.hero-portrait img{height:180px;object-position:57% 65%}.hero-portrait figcaption{font-size:8px;display:block}.hero-portrait figcaption span+span{display:none}.hero-intro{grid-column:1/5;grid-row:3;font-size:17px;margin-top:10px;max-width:29ch;line-height:1.4;padding-right:8px}.work-jump{grid-column:1/5;grid-row:4;align-self:end;font-size:10px;gap:10px;margin-top:5px}.work-jump .circle{width:40px;height:40px;font-size:22px}.work-heading{padding-block:20px 25px}.work-heading h2{font-size:30px}.work-heading h2 .meta{font-size:9px;margin-left:7px}.discipline-nav{gap:18px;font-size:10px;margin-top:7px}.project-pocket .project-copy{grid-template-columns:32px 1fr;gap:0 14px;padding-top:22px}.project-number{font-size:30px;grid-column:1;grid-row:1/3}.project-pocket .project-meta{grid-column:2;grid-row:1;font-size:9px}.project-pocket h3{grid-column:2;grid-row:2;font-size:clamp(32px,7.7vw,50px);margin-block:12px 20px}.project-pocket .project-description{grid-column:2;grid-row:3;font-size:14px}.project-pocket .project-link{grid-column:2;grid-row:4;margin-top:16px}.project-pocket .live-link{grid-column:2;grid-row:5;margin-top:8px;font-size:11px}.pocket-visual{padding:14px}.project-comi{padding-block:55px;grid-template-columns:1fr;gap:28px}.project-comi h3{font-size:92px;margin:12px 0 20px}.project-comi .project-description{font-size:23px;max-width:29ch}.role-note{margin-top:18px}.project-comi .project-link{margin-top:15px}.comi-visual{padding:30px 30px 60px;gap:22px}.comi-visual .comi-screen{width:calc(50% - 11px)}.comi-visual .screen-connect{margin-top:42px}.comi-caption{font-size:9px;left:25px}.code-feature{padding-block:35px 40px}.code-layout{grid-template-columns:1fr;gap:30px}.code-layout h2{font-size:clamp(80px,19vw,130px);margin-block:25px}.code-layout h2 br{display:none}.code-layout h2 a{max-width:100%;overflow-wrap:break-word}.code-layout .project-description{font-size:17px;max-width:33ch}.exe-visual{padding:10px}.further-work{padding-top:45px}.further-heading{align-items:start;gap:18px;margin-bottom:30px}.further-heading h2{font-size:45px;max-width:6ch}.further-heading .meta{font-size:9px;max-width:20ch;margin-top:6px}.secondary-grid{grid-template-columns:1fr;gap:38px}.secondary-project,.project-squad,.project-green{grid-column:1;padding:0}.secondary-project .project-visual img{aspect-ratio:1.5;object-fit:contain}.secondary-meta{font-size:9px;margin-top:16px}.secondary-title h3{font-size:32px}.secondary-project>p,.ice-copy>p{font-size:14px;margin-top:12px}.project-ice{display:block}.project-ice .secondary-title h3{font-size:42px}.practice{margin-top:35px;padding-block:30px 44px;display:block}.practice-label h2{font-size:23px;margin-top:10px}.practice-copy{margin-top:25px}.practice-statement{font-size:34px;margin-bottom:23px}.practice-copy>p:not(.practice-statement){font-size:14px}.about{padding-block:25px 45px}.about-main{display:block;margin-top:20px}.about h2{font-size:42px}.about-copy{margin-top:28px;font-size:14px}.contact{padding-block:30px 20px}.contact-top{padding-bottom:35px}.contact h2{font-size:66px;margin-top:14px}.contact-email{gap:16px;font-size:15px;margin-top:25px;width:100%;justify-content:space-between}.contact-bottom{display:block}.contact-bottom>div{margin-top:18px;gap:20px;justify-content:space-between;font-size:11px}}
@media(max-width:370px){.masthead-name::before{display:none}.primary-nav{gap:13px}.hero-intro{font-size:15px}.hero-portrait img{height:172px}.work-jump{font-size:9px;gap:7px}.work-jump .circle{width:34px;height:34px}.discipline-nav{gap:14px}.code-layout h2{font-size:72px}.secondary-title h3{font-size:28px}.contact h2{font-size:56px}.contact-email{font-size:13px;gap:10px}.about h2{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
/* Spatial edition — architectural stage, layered project surfaces and archive. */
:root{--paper:#dedbd0;--ink:#25261f;--muted:#5b5d52;--line:#b9b8aa;--accent:#f56850;--gutter:clamp(24px,4.7vw,80px)}
body{background:#dedbd0}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #f56850;outline-offset:5px}.site-header{background:#1c1e18;color:#f1eee3;position:absolute;inset:0 0 auto;z-index:30}.masthead{border:0;height:88px;max-width:none}.masthead-name{font-weight:400;font-size:22px;gap:13px}.masthead-name::before{content:'Ø';background:none;color:inherit;font-size:30px}.masthead-note{display:none}.primary-nav{gap:42px;font-size:13px}.primary-nav a:last-child{border:1px solid #66695a;border-radius:50px;padding:0 18px}.site-header a:focus-visible{outline-color:#ff9a81}.scene{position:relative;isolation:isolate;display:grid;grid-template-columns:29% 71%;width:100%;max-width:none;margin:0;padding:138px 0 60px var(--gutter);min-height:790px;height:min(900px,100svh);background:#20221b url('/assets/scene/architectural-stage.png') center/cover no-repeat;color:#eeeade;gap:0;overflow:hidden}.scene-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#12150fc9 0%,#16191269 31%,transparent 70%),linear-gradient(0deg,#10140b77,transparent 25%)}.scene-orbit{position:absolute;width:400px;height:400px;right:9%;top:20px;border:1px solid #dedbca40;border-radius:50%;z-index:-1}.scene-orbit::after{content:'';width:32px;height:32px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fffef0,#9b9a87);position:absolute;right:40px;top:45px;box-shadow:8px 14px 20px #0004}.scene-intro{align-self:start;padding:42px 36px 0 0;position:relative;z-index:5}.scene .hero-role{display:block;font:10px/1.7 var(--mono);color:#fb9d88;letter-spacing:.02em}.scene h1{font:400 clamp(35px,4.15vw,66px)/1.02 var(--body);letter-spacing:-.055em;padding:0;margin:20px 0 0;grid-area:auto}.scene h1 em{font:normal 400 1.17em/.96 var(--display);letter-spacing:-.035em}.scene h1 .coral-dot{display:inline;color:var(--accent);font:12px var(--body);letter-spacing:0;margin-left:4px}.scene-deck{font-size:13px;line-height:1.5;color:#c0c3b4;max-width:28ch;margin-top:25px}.scene-index{display:flex;justify-content:space-between;align-items:center;max-width:205px;padding:15px 0;border-bottom:1px solid #dd6d52;font-size:13px;margin-top:45px}.scene-index span{font-size:21px}.scene-location{display:block;margin-top:44px;font-size:9px;color:#c0c3b4}.exhibition{position:relative;min-width:0;height:100%;perspective:1600px}.scene-disc{position:absolute;z-index:1;width:265px;height:265px;background:#ef654e;border-radius:50%;right:18%;top:-28px;box-shadow:inset -20px -20px 50px #9e352f20;pointer-events:none}.scene-disc::after{content:'';position:absolute;inset:-45px;border:1px solid #555d4b55;border-radius:50%}.exhibit{position:absolute;top:0;left:0;width:69%;height:calc(100% - 15px);max-height:690px;background:#e4e0d2;color:#1a2118;box-shadow:-20px 28px 65px #0005;overflow:hidden;transition:transform .65s cubic-bezier(.22,.7,.16,1),opacity .4s;transform-origin:right bottom;display:flex;flex-direction:column}.exhibit::after{content:'';position:absolute;inset:0;pointer-events:none;opacity:.18;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' opacity='.4' filter='url(%23n)' d='M0 0h200v200H0z'/%3E%3C/svg%3E")}.exhibit[data-position=active]{z-index:2;transform:translate(0,0);opacity:1}.exhibit[data-position=next]{z-index:4;transform:translate(84%,100px) scale(.85);height:calc(100% - 92px);transform-origin:left top}.exhibit[data-position=hidden]{z-index:0;transform:translate(110%,130px) scale(.7);opacity:0;visibility:hidden}.exhibit-heading{position:relative;z-index:5;padding:32px 34px 20px;flex:none}.exhibit-heading .meta{font-size:10px;color:#a44732}.exhibit-heading h2{font-size:clamp(28px,3.5vw,56px);letter-spacing:-.065em;line-height:1.05;margin:24px 0 12px}.exhibit-heading h2 a{display:flex;justify-content:space-between;gap:15px}.exhibit-heading h2 span{font-size:25px;align-self:center}.exhibit-heading>p:not(.meta){font-size:15px;line-height:1.4}.exhibit-category{display:block;margin-top:25px;color:#35392f!important;font-size:9px!important}.exhibit-art{display:flex;position:relative;align-items:center;justify-content:center;flex:1;min-height:0;padding:5px 30px 28px;perspective:900px}.exhibit-travel .exhibit-art{background:linear-gradient(150deg,transparent,#b1b09d);padding-right:0}.exhibit-travel .exhibit-art img{width:112%;max-width:none;transform:  translateX(12%);box-shadow:-17px 22px 30px #2b2f2745;border:7px solid #2d3028;object-fit:contain;transition:transform .5s}.exhibit-travel .exhibit-art:hover img{transform:  translateX(5%)}.exhibit-bottom{padding:16px 30px;border-top:1px solid #464c3330;font-size:9px;flex:none}.exhibit-community{background:#bfc6b3}.exhibit-community .exhibit-art{gap:18px;background:radial-gradient(ellipse at 50% 100%,#86927c66,transparent 65%);align-items:flex-start;padding-top:10px}.exhibit-community .exhibit-art img{width:36%;height:100%;object-fit:contain;max-height:320px;filter:drop-shadow(10px 20px 12px #25331a30);transform:none}.exhibit-community .exhibit-art img+img{transform: translateY(25px)}.exhibit-code{background:#252c28;color:#f1f1df}.exhibit-code .exhibit-category{color:#c5cdbb!important}.exhibit-code .exhibit-art{padding:0}.exhibit-code .exhibit-art img{height:100%;width:100%;object-fit:cover}.exhibit-code .exhibit-heading .meta{color:#f9977e}.exhibit-code .exhibit-bottom{border-color:#ffffff33}.exhibition-controls{position:absolute;bottom:-35px;right:var(--gutter);display:flex;align-items:center;gap:12px;z-index:8}.exhibition-controls button{border:0;width:48px;height:48px;border-radius:50%;background:#eeeade;color:#20241c;font-size:22px;transition:transform .2s}.exhibition-controls button:hover{transform:translateY(-3px)}.exhibition-controls .next-project{background:var(--accent)}.slide-status{color:#e7e6d7;font-size:10px;margin-right:15px;max-width:160px}.selected-work{padding-top:68px}.work-heading{border-top:0;border-bottom:1px solid #969b87;padding-bottom:24px;margin-bottom:45px}.work-heading h2{font:400 clamp(35px,4.5vw,66px)/1 var(--display);letter-spacing:-.035em}.project-pocket{position:relative;display:grid;grid-template-columns:1.55fr 1fr;align-items:center;gap:5%;padding-bottom:55px}.project-pocket .pocket-visual{background:#30392d;padding:36px 25px;box-shadow:15px 18px 0 #c2c3b2}.pocket-visual img{transform:none;box-shadow:0 15px 35px #0005}.project-pocket .project-copy{display:block;padding:0}.project-pocket .project-number{font:normal 60px var(--display);color:#8c4938;margin-bottom:15px}.project-pocket h3{font-size:clamp(34px,4.2vw,64px);margin:20px 0}.project-pocket .project-description{font-size:16px}.project-pocket .project-link{margin-top:22px}.project-pocket .live-link{margin-top:12px}.project-comi{padding:50px 0 80px;grid-template-columns:1fr 1.3fr;gap:10%}.project-comi h3{font-size:clamp(90px,11vw,170px)}.comi-visual{background:#c0c7b6;border-radius:50% 50% 0 0;padding-top:65px;box-shadow:18px 20px 0 #30392d}.comi-visual .screen-home{transform:none}.comi-visual .screen-connect{transform:none}.code-feature{position:relative;background:#171e19;padding:75px 0;isolation:isolate;overflow:hidden}.code-feature::before{content:'';position:absolute;width:400px;height:400px;border:1px solid #71877255;border-radius:50%;right:-80px;top:-100px;z-index:-1}.code-layout h2{font-family:var(--display);font-style:normal;font-size:clamp(85px,10vw,160px);letter-spacing:-.04em;line-height:.83}.code-layout .meta,.code-layout .live-link{color:#f89b83}.exe-visual{padding:0;border:0;box-shadow:18px 18px 0 #55645066;transform:none}.further-work{padding-block:65px}.further-heading h2{font-size:clamp(50px,6vw,90px)}.secondary-grid{display:block}.secondary-project,.project-ice{display:grid;grid-template-columns:90px minmax(180px,30%) 1fr 1fr;gap:0 35px;padding:30px 0;border-top:1px solid #a5aa98;align-items:center;position:relative}.secondary-project::before{content:'05';grid-column:1;grid-row:1/4;font:normal 48px var(--display);color:#747d68}.project-squad::before{content:'05'}.project-hub::before{content:'06'}.project-green::before{content:'07'}.project-ice::before{content:'08'}.secondary-project .project-visual{grid-column:2;grid-row:1/4;background:#c3c7b9}.secondary-project .project-visual img{aspect-ratio:1.6;object-fit:contain;max-height:230px}.secondary-meta{grid-column:3/5;grid-row:1;margin:0;align-self:end}.secondary-title{grid-column:3/5;grid-row:2;border:0;padding:10px 0}.secondary-title h3{font-size:clamp(28px,3vw,43px)}.secondary-project>p{grid-column:3/5;grid-row:3;margin:0;align-self:start;max-width:48ch}.project-ice .ice-copy{grid-column:3/5;grid-row:1/4}.project-ice .secondary-title h3{font:400 clamp(28px,3vw,43px) var(--body);letter-spacing:-.055em}.practice{margin-top:0;padding:55px 0 70px}.practice-statement{font-size:clamp(32px,4vw,58px)}.about{padding-bottom:65px}.about-portrait{float:right;width:130px;margin:0 0 20px 25px;transform:none}.about-portrait img{height:170px;object-fit:cover;object-position:60% 60%;box-shadow:8px 8px 0 #c0c5b4}.about-portrait figcaption{font-size:9px;margin-top:12px}.about-copy::after{content:'';display:table;clear:both}.contact{background:#20271d;color:#e6e5d9;position:relative;overflow:hidden}.contact::before{content:'';position:absolute;right:-45px;top:-100px;width:300px;height:300px;background:var(--accent);border-radius:50%;opacity:.12;pointer-events:none}.contact h2{font-family:var(--display);font-style:normal;letter-spacing:-.04em}.contact-email:hover .circle{background:var(--accent);color:#20271d}.contact-bottom{border-color:#626c55}.circle{border-color:#8c937f}.contact a:focus-visible{outline-color:#ff9a81}
@media(min-width:1700px){.scene h1{font-size:66px}}
@media(max-width:1100px){.scene{grid-template-columns:31% 69%;min-height:760px;height:850px;padding-top:125px}.scene-intro{padding-right:24px}.scene h1{font-size:4.6vw}.scene .hero-role{font-size:9px}.scene-disc{width:210px;height:210px;right:10%}.exhibit{width:78%}.exhibit[data-position=next]{transform:translate(76%,105px) scale(.8)}.exhibit-heading{padding:28px 25px 18px}.exhibit-heading h2{font-size:36px}.exhibit-art{padding-inline:20px}.scene-index{margin-top:35px}.project-pocket{grid-template-columns:1.3fr 1fr;gap:6%}.project-pocket .pocket-visual{padding:24px 15px}.project-pocket h3{font-size:37px}.secondary-project,.project-ice{grid-template-columns:50px 30% 1fr 1fr;gap:0 24px}.primary-nav{gap:25px}}
@media(max-width:700px){.masthead{height:76px}.masthead-name{font-size:18px;gap:6px}.masthead-name::before{display:block;width:20px;font-size:24px}.primary-nav{gap:15px;font-size:11px}.primary-nav a:last-child{padding:0;border:0}.scene{display:block;min-height:0;height:auto;padding:110px var(--gutter) 75px;background-position:40% center;overflow:hidden}.scene-intro{padding:0}.scene .hero-role{font-size:9px}.scene h1{font-size:clamp(43px,9vw,64px);margin-top:16px;max-width:8ch;line-height:.95}.scene h1 em{font-size:1.1em}.scene h1 br:nth-child(1){display:block}.scene-deck{position:absolute;left:59%;top:100px;width:41%;font-size:12px;max-width:19ch;margin:0}.scene-index{max-width:190px;margin-top:23px;padding-block:10px;font-size:12px}.scene-location{margin-top:20px;font-size:8px}.scene-orbit{width:280px;height:280px;right:-140px;top:130px}.exhibition{height:510px;margin-top:48px;margin-right:-24px}.exhibit{width:86%;height:440px}.exhibit-heading{padding:25px 24px 15px}.exhibit-heading h2{font-size:36px;margin:14px 0 10px}.exhibit-heading>p:not(.meta){font-size:13px}.exhibit-category{margin-top:14px}.exhibit[data-position=next]{transform:translate(92%,42px) scale(.88);height:420px}.exhibit-art{padding-bottom:18px}.exhibit-travel .exhibit-art img{width:115%;border-width:4px}.exhibit-bottom{padding:12px 22px;font-size:8px}.scene-disc{width:160px;height:160px;right:0;top:-25px}.exhibition-controls{bottom:0;right:24px}.exhibition-controls button{width:44px;height:44px}.slide-status{font-size:9px;max-width:150px}.exhibit-community .exhibit-art img{max-height:195px}.selected-work{padding-top:40px}.work-heading{margin-bottom:30px;padding-bottom:18px}.work-heading h2{font-size:38px}.project-pocket{display:flex;gap:28px;padding-bottom:30px}.project-pocket .pocket-visual{padding:20px 15px;box-shadow:8px 9px 0 #c2c3b2}.project-pocket .project-copy{display:block}.project-pocket .project-number{font-size:37px;float:left;margin-right:20px;margin-top:0}.project-pocket .project-meta{font-size:9px;padding-top:4px}.project-pocket h3{font-size:40px;clear:both;margin-top:25px}.project-pocket .project-description{font-size:15px}.project-pocket .project-link{margin-top:18px}.project-comi{padding-block:35px 50px;display:grid;grid-template-columns:1fr;gap:30px}.project-comi h3{font-size:98px}.comi-visual{padding-top:45px;box-shadow:9px 10px 0 #30392d}.code-feature{padding-block:45px}.code-layout h2{font-size:85px}.exe-visual{box-shadow:8px 9px 0 #55645066}.further-work{padding-block:45px}.further-heading h2{font-size:49px}.secondary-project,.project-ice{grid-template-columns:32px 1fr;gap:0 15px;padding-block:24px}.secondary-project::before{grid-column:1;grid-row:1;font-size:28px;align-self:start}.secondary-project .project-visual{grid-column:2;grid-row:1}.secondary-project .project-visual img{aspect-ratio:1.6}.secondary-meta{grid-column:2;grid-row:2;margin-top:18px;font-size:9px}.secondary-title{grid-column:2;grid-row:3;padding:10px 0}.secondary-title h3{font-size:30px}.secondary-project>p{grid-column:2;grid-row:4;font-size:13px}.project-ice .ice-copy{grid-column:2;grid-row:2/5}.project-ice .secondary-title h3{font-size:30px}.practice{padding-block:30px 45px}.practice-statement{font-size:34px}.about-portrait{width:105px;margin-left:16px}.about-portrait img{height:150px}.about h2{font-size:39px}.contact h2{font-size:74px}.contact{padding-top:35px}}
@media(max-width:370px){.primary-nav{gap:12px}.masthead-name{font-size:16px}.scene-deck{font-size:11px;left:62%;width:38%;top:105px}.scene h1{font-size:41px}.exhibit-heading h2{font-size:31px}.exhibit-heading{padding-inline:20px}.exhibition{height:485px}.exhibit{height:420px}.exhibit[data-position=next]{height:390px}.exhibition-controls{gap:8px}.slide-status{font-size:8px;margin-right:4px}.secondary-title h3,.project-ice .secondary-title h3{font-size:26px}.contact h2{font-size:63px}}
@media(prefers-reduced-motion:reduce){.exhibit,.exhibit-art img,.exhibition-controls button{transition:none!important}}
/* Keep the real interface within the exhibition surface at short heights. */
.exhibit-travel .exhibit-art img{max-height:100%;object-fit:contain}
/* Portrait-led cover: the designer stays present while projects change. */
.scene{grid-template-columns:28% 72%}.scene-intro{padding-top:48px}.scene h1{font-size:clamp(75px,8.1vw,125px);line-height:.82;letter-spacing:-.06em;margin-top:28px}.scene h1 em{font-size:1.22em;line-height:.95}.scene-deck{font-size:15px;max-width:29ch;margin-top:32px;line-height:1.5}.scene-index{margin-top:32px}.scene-about{display:block;font-size:12px;color:#d4d7c7;margin-top:19px;width:fit-content}.scene-about:hover{text-decoration:underline;text-underline-offset:5px}.scene-location{margin-top:35px}.scene-portrait{position:absolute;inset:0 auto 12px 0;width:60%;z-index:3;background:#d7d5c6;transform:none;box-shadow:18px 24px 55px #0005;display:flex;flex-direction:column}.portrait-window{position:relative;overflow:hidden;flex:1;min-height:0}.scene-portrait img{width:100%;height:100%;object-fit:cover;object-position:58% 73%;transform:scale(1.34);transform-origin:58% 76%;filter:saturate(.66)}.scene-portrait figcaption{padding:18px 24px;display:flex;justify-content:space-between;align-items:center;color:#30372b;gap:20px}.portrait-signature{font:normal 32px var(--display);letter-spacing:-.03em}.scene-portrait figcaption .meta{font-size:9px;text-align:right}.scene-disc{right:22%;top:-25px;width:230px;height:230px}.exhibit{left:63%;top:145px;width:38%;height:470px;max-height:calc(100% - 185px)}.exhibit[data-position=active]{z-index:4;transform:none}.exhibit[data-position=next]{z-index:2;transform:translate(25px,24px) ;height:470px;opacity:.65}.exhibit[data-position=hidden]{transform:translate(65px,50px);visibility:hidden}.exhibit-heading{padding:25px 24px 16px}.exhibit-heading h2{font-size:clamp(27px,2.4vw,38px);margin-top:18px}.exhibit-heading h2 span{font-size:18px}.exhibit-heading>p:not(.meta){font-size:13px}.exhibit-category{margin-top:20px}.exhibit-art{padding-inline:18px}.exhibit-travel .exhibit-art img{border-width:4px;transform:  translateX(7%)}.exhibit-community .exhibit-art{gap:12px;padding-bottom:25px}.exhibit-community .exhibit-art img{max-height:190px;width:39%}.exhibit-bottom{padding:14px 20px;font-size:8px}.exhibition-controls{right:30px;bottom:-28px}.exhibition-controls .slide-status{max-width:130px;font-size:9px}.exhibition-controls button{width:44px;height:44px}
@media(max-width:1100px) and (min-width:701px){.scene{grid-template-columns:27% 73%;height:820px}.scene h1{font-size:8.5vw}.scene-deck{font-size:13px}.scene-portrait{width:62%}.exhibit{left:64%;width:39%;top:175px;height:420px;max-height:none}.exhibit[data-position=next]{height:420px}.exhibit-heading{padding:20px 17px 12px}.exhibit-heading h2{font-size:27px}.exhibit-heading>p:not(.meta){font-size:12px}.exhibit-category{font-size:8px!important}.scene-portrait figcaption{padding:15px}.portrait-signature{font-size:27px}.scene-portrait figcaption .meta{font-size:8px}.exhibit-bottom{font-size:7px;padding-inline:15px}.exhibition-controls{right:20px;gap:8px}.exhibition-controls .slide-status{max-width:105px;font-size:8px}.scene-location{font-size:8px}}
@media(max-width:700px){.scene{display:block;padding-top:105px;padding-bottom:52px}.scene-intro{padding:0}.scene h1{font-size:80px;line-height:.85;max-width:none;margin-top:18px}.scene h1 br{display:none!important}.scene h1 em{font-size:1.1em;margin-left:8px}.scene-deck{position:static;width:auto;font-size:14px;max-width:34ch;margin-top:20px}.scene-index{margin-top:20px;max-width:205px}.scene-about{margin-top:14px;font-size:12px}.scene-location{margin-top:20px}.exhibition{height:835px;margin-top:40px;margin-right:0}.scene-portrait{inset:0 auto auto 2%;width:94%;height:460px;transform:none}.scene-portrait img{transform:scale(1.3);object-position:58% 73%}.scene-portrait figcaption{padding:15px 18px}.portrait-signature{font-size:30px}.scene-portrait figcaption .meta{font-size:8px}.scene-disc{width:165px;height:165px;right:-24px;top:-30px}.exhibit{left:12%;top:425px;width:88%;height:330px;max-height:none;box-shadow:0 20px 40px #0005}.exhibit[data-position=next]{height:330px;transform:translate(16px,16px) }.exhibit-heading{padding:20px 22px 10px}.exhibit-heading h2{font-size:31px;margin-top:10px;margin-bottom:8px}.exhibit-heading>p:not(.meta){font-size:12px}.exhibit-category{margin-top:10px;font-size:8px!important}.exhibit-art{min-height:90px;padding:0 20px 15px}.exhibit-travel .exhibit-art img{width:95%;transform: translateX(8%)}.exhibit-community .exhibit-art img{max-height:130px}.exhibit-community .exhibit-art{padding-top:0;gap:18px;align-items:center}.exhibit-community .exhibit-art img+img{transform: translateY(0)}.exhibit-bottom{padding:10px 20px;font-size:8px}.exhibition-controls{right:0;bottom:0}.exhibition-controls .slide-status{max-width:140px;font-size:9px}}
@media(max-width:370px){.scene h1{font-size:68px}.scene-deck{font-size:13px}.scene-portrait{height:410px}.scene-portrait figcaption{padding-inline:15px}.portrait-signature{font-size:27px}.exhibition{height:785px}.exhibit{top:375px}.exhibit-heading h2{font-size:29px}.exhibition-controls .slide-status{font-size:8px}}
@media(max-width:700px){.scene h1{font-size:clamp(54px,15vw,80px);white-space:nowrap}}
@media(max-width:700px){.exhibit{top:480px}.exhibition{height:890px}}
@media(max-width:370px){.exhibit{top:430px}.exhibition{height:840px}}

/* Upright, sans-serif refinement: no rotated surfaces or display italics. */
.home-page em{font-style:normal}
.scene h1 .surname{display:inline;font:inherit;letter-spacing:inherit}
.scene h1{font-size:clamp(72px,7.3vw,116px);line-height:.98}
.portrait-signature{font-family:var(--body);font-size:25px;letter-spacing:-.04em}
.project-comi{padding-top:10px}.project-comi h3{font-size:clamp(56px,7vw,100px);line-height:1.05}
.work-heading h2,.further-heading h2{font-family:var(--body);font-size:clamp(35px,4vw,58px);letter-spacing:-.05em}
.further-heading h2{max-width:none}.practice-statement{font-family:var(--body);font-size:clamp(28px,3vw,43px);line-height:1.25;letter-spacing:-.035em}
.code-layout h2{font-family:var(--body);font-size:clamp(64px,7.3vw,110px);line-height:.94;letter-spacing:-.055em}
.contact h2{font-family:var(--body);font-size:clamp(52px,7vw,104px);letter-spacing:-.06em}
.project-squad-feature{display:grid;grid-template-columns:1.55fr 1fr;gap:5%;align-items:center;padding:45px 0 75px}
.project-squad-feature h3{font-size:clamp(36px,4.1vw,62px);line-height:1.08;margin:20px 0}
.squad-visual{padding:30px;background:#bfc5b4;box-shadow:14px 16px 0 #a8af9e}.squad-visual img{width:100%;aspect-ratio:1.5;object-fit:contain}
.exhibit-squad{background:#ccd0c1}.exhibit-squad .exhibit-art{padding:0 18px 20px}.exhibit-squad .exhibit-art img{height:100%;width:100%;object-fit:contain}
.exhibit-travel .exhibit-art img,.exhibit-travel .exhibit-art:hover img{transform:none;width:100%;max-width:100%}
.exhibit-community .exhibit-art img,.exhibit-community .exhibit-art img+img{transform:none}
.exhibit-community .exhibit-art img+img{margin-top:12px}
@media(max-width:1100px) and (min-width:701px){.scene h1{font-size:7.5vw}.project-squad-feature h3{font-size:36px}}
@media(max-width:700px){.scene h1{font-size:clamp(42px,11vw,72px);white-space:nowrap}.scene h1 .surname{margin-left:8px}.project-comi h3{font-size:64px}.work-heading h2,.further-heading h2{font-size:36px}.practice-statement{font-size:29px}.code-layout h2{font-size:68px}.contact h2{font-size:56px}.project-squad-feature{display:flex;flex-direction:column;gap:28px;padding:25px 0 45px;align-items:stretch}.project-squad-feature h3{font-size:38px}.squad-visual{padding:18px;box-shadow:8px 9px 0 #a8af9e}.further-heading{align-items:center}.further-heading .meta{max-width:17ch}.exhibit-community .exhibit-art img+img{margin-top:0}}
