:root{--bg:#f6f5f0;--text:#0e0e0e;--muted:#77746f;--line:rgba(14,14,14,.16);--blue:#1745ff;--pad:clamp(20px,4vw,64px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}::selection{background:var(--blue);color:#fff}
.header{position:relative;z-index:20;display:flex;justify-content:space-between;align-items:center;padding:24px var(--pad);font-size:11px;letter-spacing:.08em}.brand{font-weight:700;letter-spacing:.12em}.brand span{color:var(--blue)}nav{display:flex;gap:28px}.menuBtn{display:none;border:0;background:none;font:inherit}.back{font-size:11px}
.intro{min-height:72vh;display:flex;flex-direction:column;justify-content:center;padding:8vh var(--pad) 10vh}.kicker{font-size:10px;letter-spacing:.18em;color:var(--blue);text-transform:uppercase}.intro h1,.commissionFlow h1{font-size:clamp(4rem,10vw,10rem);line-height:.86;letter-spacing:-.07em;font-weight:500;margin:18px 0 30px}.lead{color:var(--muted);font-size:clamp(1rem,1.4vw,1.2rem)}
.works{padding:0 var(--pad)}.work{min-height:100vh;padding:8vh 0 12vh;display:flex;flex-direction:column;justify-content:center}.workImage{display:block;overflow:hidden;background:#efeee9}.workImage img{width:100%;max-height:78vh;object-fit:contain;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}.workImage:hover img{transform:scale(1.012)}.workMeta{display:grid;grid-template-columns:1fr 1fr auto;gap:20px;margin-top:18px;border-top:1px solid var(--line);padding-top:14px;font-size:11px}.workMeta h2{margin:0 0 5px;font-size:13px}.workMeta p{margin:2px 0;color:var(--muted)}.placeholder{height:72vh;display:grid;place-items:center;border:1px solid var(--line);color:var(--muted);font-size:10px;letter-spacing:.2em;background:#f1f0ec}
.statement,.commission,.split,.archive,.info{border-top:1px solid var(--line);padding:clamp(90px,12vw,180px) var(--pad)}.bigStatement{font-size:clamp(2.2rem,5vw,5.6rem);line-height:1.04;letter-spacing:-.05em;max-width:1200px}.commission{display:grid;grid-template-columns:1fr 1fr;gap:70px}.commission h2,.archive h2{font-size:clamp(3rem,7vw,7rem);margin:10px 0;letter-spacing:-.06em;font-weight:500}.commission h2 em,.commissionFlow h1 em{color:var(--blue);font-style:normal}.commission>div:last-child{align-self:end;max-width:520px;color:var(--muted)}.underline{display:inline-block;margin-top:28px;border-bottom:1px solid;padding-bottom:5px;color:var(--text);font-size:11px;letter-spacing:.08em}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px}.split>div+div{border-left:1px solid var(--line);padding-left:80px}.split h2{font-size:clamp(2rem,4vw,4rem);font-weight:500;letter-spacing:-.04em;margin:15px 0}.archive p,.info p{max-width:720px}.bio{font-size:clamp(1.7rem,3.5vw,3.7rem);line-height:1.15;letter-spacing:-.035em}.links{display:flex;gap:30px;margin-top:50px;font-size:11px}.progress{position:fixed;left:0;bottom:0;height:2px;width:100%;z-index:99}.progress span{display:block;height:100%;background:var(--blue);width:0}.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.8,.2,1)}.reveal.in{opacity:1;transform:none}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;padding:28px var(--pad);font-size:10px;color:var(--muted)}
.detailHero{min-height:92vh;padding:6vh var(--pad) 10vh;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.55fr);gap:clamp(40px,7vw,120px);align-items:center}.detailArt{display:flex;justify-content:center}.detailArt img{max-height:82vh;object-fit:contain}.detailInfo{position:sticky;top:40px}.detailInfo h1{font-size:clamp(3rem,6vw,6rem);font-weight:500;letter-spacing:-.06em;margin:20px 0 5px}.year{color:var(--muted)}dl{margin:55px 0 0}dl div{display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding:14px 0;font-size:12px}dl div:last-child{border-bottom:1px solid var(--line)}dt{color:var(--muted)}dd{margin:0;text-align:right}.workText{padding:clamp(100px,14vw,220px) var(--pad);border-top:1px solid var(--line)}.bodyText{max-width:640px;margin-top:50px;color:var(--muted);line-height:1.8}.process{padding:0 var(--pad) 15vh;display:grid;grid-template-columns:1fr 1fr;gap:8vw 4vw}.processTitle{grid-column:1/-1;padding:10vh 0 3vh}.processTitle h2{font-size:clamp(4rem,8vw,8rem);font-weight:500;letter-spacing:-.065em;line-height:.9;margin:20px 0}.processItem{margin:0}.processItem img{width:100%;aspect-ratio:4/5;object-fit:cover}.processItem.wide{grid-column:1/-1}.processItem.wide img{aspect-ratio:16/9;object-fit:cover}.processItem figcaption{font-size:10px;color:var(--muted);margin-top:10px}.processItem:nth-of-type(3){margin-top:16vh}.nextWork{border-top:1px solid var(--line);padding:12vh var(--pad)}.nextWork a{display:flex;justify-content:space-between;font-size:clamp(3rem,7vw,7rem);letter-spacing:-.06em}.commissionFlow{max-width:1100px;margin:auto;padding:12vh var(--pad)}.flowCard{margin-top:80px;border-top:1px solid var(--line);padding-top:30px}.flowCard>span{font-size:10px;color:var(--muted)}.flowCard h2{font-size:clamp(2rem,4vw,4rem);font-weight:500;letter-spacing:-.04em}.choices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:40px}.choices button{padding:20px;text-align:left;background:transparent;border:1px solid var(--line);font:inherit;cursor:pointer}.choices button:hover{border-color:var(--blue);color:var(--blue)}.note{margin-top:30px;color:var(--muted);font-size:11px}
@media(max-width:850px){nav{display:none}.menuBtn{display:block}.intro{min-height:62vh}.work{min-height:auto;padding:7vh 0 10vh}.workImage img{max-height:none;width:100%}.workMeta{grid-template-columns:1fr auto}.workMeta>div:nth-child(2){grid-column:1/-1}.commission,.split,.detailHero,.process{grid-template-columns:1fr}.split>div+div{border-left:0;border-top:1px solid var(--line);padding:40px 0 0}.detailHero{padding-top:3vh}.detailInfo{position:static}.processItem:nth-of-type(3){margin-top:0}.processItem.wide{grid-column:auto}.processItem.wide img{aspect-ratio:4/5}.choices{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.workImage img{transition:none}}

/* Mobile navigation and accessible focus. */
a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:6px}
.menuBtn{cursor:pointer;min-height:44px}
@media(max-width:850px){nav.is-open{display:flex;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;padding:16px var(--pad);background:var(--bg);border-bottom:1px solid var(--line)}nav.is-open a{padding:14px 0;font-size:14px}}

/* Framed collection — entry gallery. */
.brandLogo{width:64.000px;height:64.000px;object-fit:contain;mix-blend-mode:normal}
.header{padding-top:8px;padding-bottom:8px;min-height:104px;font-size:12px}
.galleryHome .header{border-bottom:1px solid var(--line)}
.gallery{padding:24px 0 26px;overflow:hidden}
.galleryHeading{display:flex;align-items:baseline;justify-content:space-between;padding:0 var(--pad);gap:20px}
.galleryHeading h1{font-size:clamp(24px,3vw,44px);font-weight:400;letter-spacing:-.045em;margin:0}
.galleryHeading p{font-size:12px;letter-spacing:.12em;color:var(--muted)}
.galleryTrack{display:flex;gap:clamp(40px,7vw,110px);overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;scroll-padding-left:var(--pad);padding:42px var(--pad) 32px;align-items:center;cursor:grab;overscroll-behavior-x:contain;touch-action:pan-x pan-y}
.galleryTrack::-webkit-scrollbar{display:none}
.galleryTrack.dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto}
.galleryItem{flex:0 0 auto;width:clamp(230px,26vw,390px);margin:0;scroll-snap-align:start}
.artFrame{display:block;width:100%;padding:clamp(15px,2vw,28px);border:8px solid #262524;background:#fff;box-shadow:inset 0 0 0 1px #ddd,3px 5px 7px #0002,10px 16px 24px #0001;cursor:zoom-in;transition:transform .35s,box-shadow .35s}
.artFrame:hover{transform:translateY(-5px);box-shadow:inset 0 0 0 1px #ddd,4px 8px 10px #0002,12px 22px 30px #0002}
.artFrame img{width:100%;height:auto;aspect-ratio:1414/2000;object-fit:contain;pointer-events:none;background:#fff}
.galleryItem figcaption{display:flex;gap:16px;align-items:center;margin-top:24px;font-size:12px;letter-spacing:.04em}
.galleryItem figcaption span:first-child{color:var(--muted)}
.galleryItem figcaption span:last-child{margin-left:auto;color:var(--blue);font-size:12px}
.galleryBar{margin:4px var(--pad) 0;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:14px}
.galleryHint{color:var(--muted);margin:0}
.galleryControls{display:flex;gap:18px;align-items:center}
.galleryControls button,.artViewer button{font:inherit;font-size:14px;padding:10px 0;border:0;border-bottom:1px solid var(--line);background:none;color:inherit;cursor:pointer;min-height:44px}
.galleryControls button:disabled{opacity:.3;cursor:default}
#gallery-count{font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap}
.artViewer{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:24px var(--pad);border:0;background:#f6f5f0;color:var(--text);overflow:auto}
.artViewer[open]{display:flex;flex-direction:column;gap:20px}
.artViewer::backdrop{background:#f6f5f0}
.viewerTop,.viewerBottom{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-shrink:0}
.viewerTop{font-size:12px}
#viewer-image{height:calc(100dvh - 210px);width:100%;min-height:150px;object-fit:contain}
.viewerBottom{text-align:center;font-size:14px}
#viewer-title{margin:0 0 8px}
#viewer-detail{font-size:12px;text-decoration:underline;text-underline-offset:4px}
body.viewer-open{overflow:hidden}
@media(min-width:1100px) and (min-height:700px){.gallery{min-height:calc(100svh - 113px);display:flex;flex-direction:column;justify-content:space-between}.galleryItem{width:min(28vw,calc((100svh - 310px)*.707))}}
@media(max-width:850px){.header{min-height:82px}.brandLogo{width:48.000px;height:48.000px}.galleryHeading{align-items:flex-start;flex-direction:column;gap:8px}.galleryHeading p{margin:0;font-size:10px}.galleryTrack{padding-top:30px;gap:32px}.galleryItem{width:min(72vw,340px)}.artFrame{border-width:6px;padding:18px}.galleryBar{flex-wrap:wrap;gap:16px}.galleryHint{font-size:12px;flex-basis:100%}.galleryBar>a{font-size:12px}.galleryControls{gap:14px}.galleryControls button{font-size:12px}.galleryItem figcaption{font-size:12px}.galleryItem figcaption span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.artFrame{transition:none}.artFrame:hover{transform:none}}

/* A shared image height preserves each work's original proportions. */
.gallery{--art-height:clamp(220px,42svh,440px);--mat:clamp(15px,2vw,28px);--frame:8px}
.gallery .galleryItem{width:calc(var(--art-height)*.707 + var(--mat)*2 + var(--frame)*2)}
.gallery .galleryItem.landscape{width:calc(var(--art-height)*1.414427157 + var(--mat)*2 + var(--frame)*2)}
.gallery .artFrame{padding:var(--mat);border-width:var(--frame)}
.gallery .artFrame img{height:var(--art-height);width:100%;aspect-ratio:auto;object-fit:contain}
@media(max-width:850px){.gallery{--mat:16px;--frame:6px;--art-height:min(45svh,calc((100vw - 84px)/1.414427157))}.galleryItem.landscape figcaption{gap:10px}}

/* Two independent exhibition rows. */
.gallery.twoRows{--art-height:clamp(160px,calc((100svh - 470px)/2),280px);--mat:12px;--frame:5px;display:block;min-height:0;padding:18px 0 22px}
.twoRows .galleryHeading{margin-bottom:8px}
.twoRows .galleryHeading h1{font-size:clamp(24px,2.6vw,36px)}
.twoRows .galleryRow{min-width:0}
.twoRows .galleryTrack{position:relative;gap:clamp(36px,5vw,80px);padding:16px var(--pad) 10px;align-items:start}
.twoRows .galleryItem{width:calc(var(--art-height)*var(--ratio,.707) + var(--mat)*2 + var(--frame)*2)}
.twoRows .galleryItem.landscape{--ratio:1.414427157}
.twoRows .galleryItem figcaption{gap:10px;margin-top:12px;line-height:1.35;min-height:32px;align-items:start}
.twoRows .galleryItem figcaption span:nth-child(2){overflow-wrap:anywhere}
.twoRows .galleryItem figcaption span:last-child{display:none}
.rowBar{display:flex;justify-content:space-between;align-items:center;margin:0 var(--pad);border-bottom:1px solid var(--line);min-height:44px;gap:20px}
.rowLabel,.rowCount{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.rowBar .galleryControls{gap:20px}
.rowBar button{border-bottom:0;font-size:12px;padding:8px 0;min-height:44px}
.twoRows .galleryBar{border-top:0;padding-top:18px;margin-top:0;font-size:12px}
.mobileHint{display:none}
@media(max-width:850px){.gallery.twoRows{--art-height:clamp(150px,23svh,210px);--mat:10px;--frame:5px;padding-top:14px}.twoRows .galleryHeading{gap:5px}.twoRows .galleryHeading p{font-size:11px}.twoRows .galleryTrack{gap:28px;padding-top:14px;padding-bottom:4px}.twoRows .galleryItem figcaption{font-size:12px;min-height:32px;margin-top:10px}.rowBar .galleryControls{gap:16px}.twoRows .galleryBar{gap:10px}.mobileHint{display:inline}.desktopHint{display:none}.twoRows .galleryHint{line-height:1.6}.twoRows .galleryItem.landscape{width:calc(var(--art-height)*var(--ratio) + var(--mat)*2 + var(--frame)*2)}}
/* Minimal gallery and shared overlay navigation. */
.visuallyHidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.header.minimalHeader{height:80px;min-height:80px;padding:4px var(--pad);border:0}
.minimalHeader .brandLogo{width:46.667px;height:46.667px}
.hamburger{width:48px;height:48px;display:flex;flex-direction:column;justify-content:center;gap:7px;border:0;background:none;cursor:pointer;padding:10px}
.hamburger span{height:1px;width:28px;background:var(--text);display:block}
.siteMenu{margin:0 0 0 auto;width:min(600px,100%);max-width:100%;height:100dvh;max-height:none;border:0;padding:24px clamp(24px,5vw,64px);background:var(--bg);color:var(--text)}
.siteMenu::backdrop{background:#1118;backdrop-filter:blur(6px)}
.menuTop{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;letter-spacing:.06em}
.menuClose{border:0;border-bottom:1px solid;background:none;font:inherit;min-height:44px;cursor:pointer}
.siteMenu nav{position:static;display:flex;flex-direction:column;gap:20px;margin:60px 0 50px;padding:0;background:none;border:0}
.siteMenu nav a{font-size:clamp(26px,4vw,42px);letter-spacing:-.04em;width:fit-content}
.siteMenu nav a:hover{color:var(--blue)}.menuContact{font-size:14px;overflow-wrap:anywhere}.menu-open{overflow:hidden}
.minimalHome .gallery.twoRows{--art-height:clamp(170px,calc((100svh - 220px)/2),390px);--mat:14px;--frame:5px;padding:0;min-height:calc(100svh - 80px)}
.minimalHome .galleryTrack{scroll-snap-type:none;scroll-behavior:auto;overflow-anchor:none;padding:18px var(--pad);gap:clamp(45px,6vw,100px);align-items:center}
.minimalHome .galleryItem figcaption{display:none}
.minimalHome .galleryItem{margin:0}
.minimalHome .artFrame{box-shadow:3px 5px 8px #0002,8px 12px 20px #0001}
.minimalHome .artFrame:hover{transform:none}
.minimalBar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:6px var(--pad) 14px;color:var(--muted);font-size:12px}
#motion-toggle{font:inherit;color:var(--text);background:none;border:0;border-bottom:1px solid;min-height:40px;cursor:pointer;padding:8px 0}
#motion-toggle:disabled{cursor:default;color:var(--muted);border:0}
.reducedMotion .loopClone{display:none}
@media(max-width:850px){.minimalHome .gallery.twoRows{--art-height:clamp(150px,calc((100svh - 250px)/2),300px);--mat:10px;--frame:4px}.minimalHome .galleryTrack{gap:32px;padding-top:20px;padding-bottom:20px}.minimalBar{font-size:12px}.siteMenu nav{margin:40px 0;gap:20px}.header.minimalHeader{height:74px;min-height:74px}.minimalHeader .brandLogo{width:42.667px;height:42.667px}}
@media(max-height:600px){.siteMenu nav{margin:20px 0;gap:12px}.siteMenu nav a{font-size:24px}}
.viewerContent{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:clamp(30px,5vw,80px);align-items:center;flex:1;min-height:0}
.viewerVisual{min-width:0}
.viewerContent #viewer-image{height:calc(100dvh - 260px);min-height:180px}
.viewerInfo{align-self:center;text-align:left}.viewerInfo h2{font-size:clamp(28px,4vw,48px);font-weight:400;letter-spacing:-.04em;margin:15px 0 25px}.viewerInfo>p:not(.kicker){font-size:16px;line-height:1.6;color:var(--muted)}.viewerInfo dl{margin:30px 0 0}.viewerInfo .underline{display:table;font-size:12px;margin-top:25px}.viewerInfo [hidden]{display:none!important}
#viewer-thumbnails{display:flex;gap:10px;justify-content:center;margin-top:18px;flex-wrap:wrap}#viewer-thumbnails[hidden]{display:none}#viewer-thumbnails button{width:58px;height:64px;padding:4px;border:1px solid var(--line)}#viewer-thumbnails button[aria-pressed=true]{border-color:var(--blue)}#viewer-thumbnails img{width:100%;height:100%;object-fit:cover}
@media(max-width:750px){.viewerContent{grid-template-columns:1fr;gap:25px;flex:none}.viewerContent #viewer-image{height:48dvh;min-height:200px}.viewerInfo h2{font-size:32px}.viewerInfo dl{margin-top:20px}.artViewer[open]{overflow-y:auto}.viewerBottom button{font-size:12px}}
/* Collection pages share the gallery's typography and quiet surfaces. */
.sectionPage main{min-height:calc(100svh - 175px)}
.sectionHero{padding:70px var(--pad) 80px;border-bottom:1px solid var(--line)}
.sectionHero h1{font-size:clamp(64px,10vw,150px);line-height:.92;letter-spacing:-.065em;font-weight:400;margin:24px 0 32px}
.sectionHero h1 em{color:var(--blue);font-style:normal}
.sectionLead{font-size:clamp(18px,2vw,26px);line-height:1.5;color:var(--muted);max-width:700px;margin:0}
.commissionHero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6vw}
.commissionHero h1{font-size:clamp(64px,8vw,120px)}
.commissionHero figure{margin:0}.commissionHero img{width:100%;height:auto}
.commissionHero figcaption{font-size:12px;color:var(--muted);margin-top:15px}
.sectionAction{display:inline-block;border-bottom:1px solid;padding:10px 0;margin-top:26px;font-size:14px;line-height:1.5}
.processSection,.sectionInvite{padding:80px var(--pad)}
.processSection h2,.sectionInvite h2,.pageNote h2{font-size:clamp(32px,4vw,58px);letter-spacing:-.045em;line-height:1.1;font-weight:400;margin:18px 0 35px}
.commissionSteps{list-style:none;padding:0;margin:45px 0 0;max-width:1000px}
.commissionSteps li{display:grid;grid-template-columns:90px 1fr;gap:25px;padding:30px 0;border-top:1px solid var(--line)}
.commissionSteps li>span{color:var(--blue);font-size:14px;padding-top:7px}
.commissionSteps h3{font-size:24px;font-weight:400;margin:0 0 12px;letter-spacing:-.025em}
.commissionSteps p,.sectionInvite>p:not(.kicker),.pageNote p{font-size:16px;line-height:1.8;color:var(--muted);max-width:650px;margin:0}
.sectionInvite{border-top:1px solid var(--line)}
.pageNote{display:grid;grid-template-columns:1fr 2fr;gap:50px;padding:70px var(--pad) 100px}
.smallStatus{font-size:12px;letter-spacing:.1em;color:var(--blue);padding-top:8px}
.pageNote h2{font-size:clamp(28px,3vw,42px);margin-top:0;margin-bottom:22px}
.sectionFooter{padding:26px var(--pad);font-size:12px;gap:20px;flex-wrap:wrap}
@media(max-width:850px){.sectionHero{padding-top:45px;padding-bottom:55px}.commissionHero{grid-template-columns:1fr;gap:45px}.sectionHero h1{font-size:clamp(60px,15vw,100px)}.pageNote{grid-template-columns:1fr;gap:24px;padding-top:45px;padding-bottom:70px}.processSection,.sectionInvite{padding-top:55px;padding-bottom:55px}.commissionSteps li{grid-template-columns:35px 1fr;gap:20px}.commissionSteps h3{font-size:22px}}

.artistStory p+p{margin-top:22px}.artistStory strong{font-weight:600;color:var(--text)}

.footerContact{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 14px;min-width:0}.footerContact>span{text-decoration:none}.footerContact>a{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}
