@font-face{font-family:Uzhve Sans;src:url('assets/fonts/Roboto-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Uzhve Sans;src:url('assets/fonts/Roboto-Medium.ttf') format('truetype');font-style:normal;font-weight:500 700;font-display:swap}
@font-face{font-family:Uzhve Display;src:url('assets/fonts/RobotoCondensed-Semibold.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:JetBrains Mono;src:url('assets/fonts/JetBrainsMono-Medium.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}
:root{--paper:#fff;--ink:#202020;--muted:#696969;--line:#e0e0e0;--soft:#f5f5f5;--space:clamp(22px,4.5vw,72px);--sans:'Uzhve Sans',Arial,sans-serif;--display:'Uzhve Display',var(--sans);--mono:'JetBrains Mono',monospace;--ease:cubic-bezier(.16,1,.3,1);color-scheme:light}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:126px;scrollbar-color:#999 var(--soft)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased;caret-color:var(--ink)}
body.menu-open,body.lightbox-open{overflow:hidden}
::selection{background:#d9d9d9;color:#111}
a{color:inherit;text-decoration:none;text-underline-offset:5px;text-decoration-thickness:1px}
a:hover{text-decoration:underline}
button{font:inherit;color:inherit;border:0;padding:0;background:none;cursor:pointer}
button:disabled{color:var(--muted);cursor:not-allowed}
:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
img{display:block;max-width:100%;height:auto}
figure,h1,h2,h3,p,dl,dd{margin:0}
h1,h2,h3{font-weight:500;text-wrap:balance}
h1{font-family:var(--display);font-size:clamp(38px,4vw,60px);font-weight:600;line-height:1.04;letter-spacing:-.02em}
h2{font-size:30px;line-height:1.15;letter-spacing:-.015em}
h3{font-size:22px;line-height:1.22}
p+p{margin-top:18px}
.skip-link{position:fixed;top:-80px;left:var(--space);z-index:100;background:var(--paper);border:1px solid var(--ink);padding:12px 20px}
.skip-link:focus{top:10px}
.site-header{height:104px;position:fixed;inset:0 0 auto;z-index:40;display:flex;align-items:center;gap:32px;padding:0 var(--space);background:var(--paper);border-bottom:1px solid var(--line)}
.brand{width:44px;min-width:44px;height:82px;display:flex;align-items:center;justify-content:flex-start;margin-right:auto}
.brand img{width:24px;height:66px}
.desktop-nav{display:flex;gap:clamp(18px,2vw,32px);align-items:center;font-size:15px}
.desktop-nav a{padding:10px 0}
.menu-toggle{display:flex;align-items:center;gap:12px;min-height:44px;min-width:90px;font-size:15px;position:relative;z-index:45}
.hamburger{position:relative;width:25px;height:20px;display:block}
.hamburger i{position:absolute;left:0;top:9px;width:25px;height:2px;background:var(--ink);transition:transform .32s var(--ease),opacity .2s}
.hamburger i:nth-child(1){transform:translateY(-7px)}
.hamburger i:nth-child(3){transform:translateY(7px)}
[aria-expanded=true] .hamburger i:nth-child(1){transform:rotate(45deg)}
[aria-expanded=true] .hamburger i:nth-child(2){opacity:0}
[aria-expanded=true] .hamburger i:nth-child(3){transform:rotate(-45deg)}
.menu{position:fixed;inset:104px 0 0;z-index:35;background:var(--paper);padding:40px var(--space);visibility:hidden;opacity:0;overflow:auto;transition:opacity .25s var(--ease),visibility .25s}
.menu.is-open{visibility:visible;opacity:1}
.menu-links{max-width:900px;display:grid;grid-template-columns:1fr 1fr;gap:0 70px;margin:10px 0 40px}
.menu-links a{font-family:var(--display);font-size:clamp(28px,4vw,50px);line-height:1.3;padding:15px 0;border-bottom:1px solid var(--line)}
.menu-email{display:inline-block;padding:12px 0}
main{max-width:1600px;margin:0 auto;padding:0 var(--space)}
.hero{padding-top:153px}
.hero-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:48px}
.hero-heading p{font-size:16px;color:var(--muted);line-height:1.5;max-width:280px}
.hero-heading p span{display:block}
.featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:68px 32px;scroll-margin-top:126px}
.featured-project,.project-card{min-width:0;display:block}
.featured-project:hover,.project-card:hover{text-decoration:none}
.featured-image{height:clamp(300px,32vw,480px);display:flex;justify-content:center;align-items:center;background:var(--soft)}
.featured-image img{width:100%;height:100%;object-fit:contain}
.featured-pair{display:grid;grid-template-columns:483fr 460fr;gap:12px;background:none}
.featured-pair img{object-fit:contain}
.featured-caption,.card-caption{padding-top:19px}
.featured-caption h2{font-family:var(--display);font-weight:600;font-size:28px;line-height:1.15}
.featured-project:hover h2,.project-card:hover h3{text-decoration:underline;text-underline-offset:5px}
.featured-caption p{display:flex;justify-content:space-between;gap:20px;margin-top:9px;border-top:1px solid var(--line);padding-top:11px;font-family:var(--mono);font-size:12px;font-weight:500;text-transform:uppercase;color:var(--muted)}
.section{padding-top:96px;margin-top:36px;scroll-margin-top:106px}
.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;border-top:1px solid var(--ink);padding-top:25px;margin-bottom:42px}
.section-heading>a{font-family:var(--mono);font-size:12px;font-weight:500;text-transform:uppercase;text-decoration:underline;white-space:nowrap}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.project-image{height:310px;background:var(--soft);display:flex;align-items:center;justify-content:center}
.project-image img{width:100%;height:100%;object-fit:contain}
.card-caption h3{font-size:22px}
.card-caption span{display:block;margin-top:9px;font-family:var(--mono);font-size:12px;font-weight:500;text-transform:uppercase;color:var(--muted)}
.artwork-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px 32px}
.artwork-grid figure{min-width:0}
.artwork-image{display:flex;align-items:center;justify-content:center;width:100%;height:360px;background:var(--soft);cursor:zoom-in}
.artwork-image img{width:100%;height:100%;object-fit:contain}
.artwork-grid figcaption{padding-top:19px}
.artwork-grid h3{font-size:21px;margin-bottom:15px}
.work-record{border-top:1px solid var(--line)}
.work-record>div{border-bottom:1px solid var(--line);padding:10px 0;display:grid;grid-template-columns:90px 1fr;gap:12px;font-size:14px}
.work-record dt,.record-grid dt{font-family:var(--mono);font-size:12px;font-weight:500;text-transform:uppercase;color:var(--muted)}
.work-record dd{font-variant-numeric:tabular-nums}
.about-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.55fr);gap:clamp(40px,8vw,140px);align-items:start}
.about-copy{max-width:70ch;font-size:20px;line-height:1.55}
.about-copy p+p{margin-top:24px}
.about-image{max-width:360px;justify-self:end}
.about-image figcaption{font-family:var(--mono);font-size:12px;font-weight:500;color:var(--muted);margin-top:12px}
.text-section{display:grid;grid-template-columns:1fr 2fr;gap:60px;border-top:1px solid var(--line);padding-top:32px;margin-top:72px}
.text-section h2{font-size:26px}
.reading-copy{max-width:70ch;font-size:19px;line-height:1.65}
.reading-copy p+p{margin-top:22px}
.cv-layout{display:grid;grid-template-columns:1fr 2fr;gap:60px}
.cv-group+.cv-group{margin-top:52px}
.cv-group h3{font-size:21px;margin-bottom:24px}
.cv-row{display:grid;grid-template-columns:78px 1fr;gap:24px;padding:19px 0;border-top:1px solid var(--line);font-size:17px}
.cv-row dt{font-family:var(--mono);font-size:13px;font-weight:500;color:var(--muted);padding-top:3px;font-variant-numeric:tabular-nums}
.cv-row dd span{display:block;color:var(--muted);font-size:15px;margin-top:4px}
.cv-side{font-family:var(--mono);font-size:12px;font-weight:500;color:var(--muted);text-transform:uppercase}
.cv-side p{max-width:24ch}
.underlined{text-decoration:underline}
.publication-row{display:grid;grid-template-columns:1fr 2fr;gap:60px;border-bottom:1px solid var(--line);padding-bottom:26px}
.publication-date{font-family:var(--mono);font-size:13px;font-weight:500;color:var(--muted)}
.publication-row h3{font-size:24px;margin-bottom:10px}
.publication-row p{color:var(--muted);max-width:65ch}
.publication-row a{display:inline-flex;align-items:center;gap:9px;margin-top:18px;text-decoration:underline;font-size:15px}
.publication-group+.publication-group{margin-top:60px}
.publication-group-title{font-size:22px;margin:0 0 25px}
.publication-group .publication-row{padding-top:25px;padding-bottom:25px}
.publication-date span{display:block;margin-top:9px}
.publication-row h4{margin:0 0 10px;font-size:22px;line-height:1.3;font-weight:500;text-wrap:balance}
.publication-row a.publication-title{display:inline-block;margin:0;font:inherit;text-decoration:none;min-height:44px;padding:4px 0}
.publication-row a.publication-title:hover{text-decoration:underline}
.publication-title .link-icon{display:inline-block;vertical-align:baseline;margin-left:5px}
.link-icon{width:16px;height:16px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.5}
.contact-grid{display:grid;grid-template-columns:1fr 2fr;gap:60px}
.record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
.record-grid>div{padding:24px 0 26px;border-bottom:1px solid var(--line);min-width:0}
.record-grid dt{margin-bottom:14px}
.record-grid dd{font-size:18px;line-height:1.45;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.contact-grid .record-grid>div{padding-top:0;margin-bottom:26px}
.site-footer{max-width:1600px;display:flex;justify-content:space-between;gap:24px;margin:100px auto 0;padding:24px var(--space) 34px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;font-weight:500;color:var(--muted);text-transform:uppercase}
.project-main{padding-top:143px}
.back-link{font-size:14px;display:inline-flex;gap:9px;align-items:center}
.project-heading{display:grid;grid-template-columns:2fr 1fr;gap:60px;align-items:end;margin:39px 0}
.project-meta{font-family:var(--mono);font-size:12px;font-weight:500;text-transform:uppercase;color:var(--muted)}
.project-meta span{display:block;margin-top:4px}
.project-cover{background:var(--soft);padding:28px;display:flex;justify-content:center}
.project-cover img{width:auto;max-width:100%;max-height:680px;object-fit:contain}
.project-statement{display:grid;grid-template-columns:1fr 2fr;gap:60px;margin:64px 0 54px}
.project-statement h2{font-size:26px}
.project-text{font-size:19px;line-height:1.65;max-width:70ch}
.project-passport{margin:0 0 78px}
.project-passport>h2{font-size:26px;margin-bottom:20px}
.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 32px}
.project-gallery .full{grid-column:1/-1}
.gallery-button{width:100%;background:var(--soft);cursor:zoom-in;display:flex;align-items:center;justify-content:center;min-height:300px}
.gallery-button img{max-height:650px;width:auto;max-width:100%;object-fit:contain}
.project-gallery figcaption{font-size:14px;color:var(--muted);margin-top:14px;line-height:1.5;max-width:65ch}
.project-video{margin-bottom:70px}
.project-video h2{font-size:26px;margin-bottom:26px}
.project-video video{display:block;width:100%;height:auto;max-height:720px;background:var(--soft)}
.project-video p{font-size:14px;color:var(--muted);margin-top:14px}
.project-reading{display:flex;gap:20px;align-items:baseline;border-top:1px solid var(--line);padding-top:24px;margin:0 0 64px}
.project-reading p{color:var(--muted);font-size:15px}
.project-next{display:flex;justify-content:space-between;gap:24px;align-items:baseline;margin-top:84px;border-top:1px solid var(--ink);padding-top:25px}
.project-next span{font-family:var(--mono);font-size:12px;font-weight:500;color:var(--muted);text-transform:uppercase}
.project-next a{font-family:var(--display);font-size:36px;font-weight:600;line-height:1.15}
.not-found{padding:70px 0}
.not-found p{margin-top:24px}
.lightbox{border:0;background:var(--paper);color:var(--ink);padding:66px 32px 24px;max-width:calc(100vw - 40px);max-height:calc(100dvh - 40px);width:fit-content;overflow:auto}
.lightbox::backdrop{background:rgb(0 0 0 / .75)}
.lightbox img{max-height:calc(100dvh - 180px);max-width:calc(100vw - 104px);width:auto;margin:auto;object-fit:contain}
.lightbox-close{position:absolute;top:10px;right:20px;display:flex;align-items:center;gap:12px;min-height:44px;padding:0 8px;font-size:14px}
.close-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.lightbox-caption{margin:20px auto 0;max-width:70ch;font-size:14px;color:var(--muted)}
.site-footer a{font-size:11px}
@media(max-width:600px){.artwork-grid .work-record dt{font-size:11px}}
@media(min-width:1600px){.site-header{padding-left:max(var(--space),calc((100vw - 1456px)/2));padding-right:max(var(--space),calc((100vw - 1456px)/2))}}
@media(max-width:1100px){.site-header{gap:26px}.desktop-nav{gap:18px}.artwork-image{height:300px}.project-image{height:260px}.hero-heading{margin-bottom:36px}.cv-layout,.text-section,.project-statement,.publication-row,.contact-grid{grid-template-columns:1fr 2fr;gap:32px}}
@media(max-width:850px){.desktop-nav{display:none}.site-header{height:94px}.brand{height:82px}.menu{top:94px}.hero{padding-top:130px}.hero-heading{align-items:start;flex-direction:column;gap:15px;margin-bottom:34px}.hero-heading p span{display:inline}.hero-heading p span+span::before{content:' / '}.featured-grid{gap:50px 24px}.featured-image{height:310px}.featured-caption h2{font-size:26px}.featured-caption p{font-size:11px;gap:12px}.project-grid{gap:24px}.project-image{height:220px}.artwork-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 24px}.artwork-image{height:330px}.about-layout{gap:34px}.about-copy{font-size:18px}.section{padding-top:70px;margin-top:24px}.project-heading{gap:32px}.project-heading h1{font-size:44px}.project-main{padding-top:125px}.project-cover{padding:20px}.project-gallery{gap:40px 24px}}
@media(max-width:600px){html{scroll-padding-top:115px}.hero-heading p{font-size:14px}.featured-grid,.project-grid{grid-template-columns:1fr}.featured-image{height:auto;min-height:260px;max-height:none;padding:0}.featured-image img{height:auto;max-height:520px;width:auto;max-width:100%}.featured-pair{min-height:0}.featured-pair img{width:100%;max-height:none}.featured-caption h2{font-size:28px}.featured-caption p{font-size:12px}.section-heading{margin-bottom:30px;align-items:start}.section-heading h2{font-size:27px}.section-heading>a{padding-top:5px;font-size:11px}.project-image{height:330px}.artwork-grid{gap:38px 18px}.artwork-image{height:240px}.artwork-grid h3{font-size:18px}.work-record>div{grid-template-columns:1fr;gap:3px;font-size:13px}.work-record dt{font-size:10px}.about-layout,.text-section,.cv-layout,.publication-row,.contact-grid,.project-statement,.project-heading{grid-template-columns:1fr;gap:26px}.about-image{max-width:260px;justify-self:start;margin-top:12px}.about-copy{font-size:19px}.text-section{margin-top:52px;padding-top:28px}.reading-copy{font-size:18px}.cv-side p{max-width:none}.cv-row{grid-template-columns:55px 1fr;gap:16px;font-size:16px}.cv-row dd span{font-size:14px}.record-grid{gap:0 20px}.record-grid dd{font-size:16px}.record-grid dt{font-size:11px}.contact-grid .record-grid{grid-template-columns:1fr}.publication-row{gap:16px}.menu-links{grid-template-columns:1fr;gap:0;margin-top:0}.menu-links a{font-size:30px;padding:12px 0}.menu{padding-top:20px}.project-heading{margin:30px 0}.project-heading h1{font-size:40px}.project-cover{padding:12px}.project-cover img{max-height:560px}.project-statement{margin:42px 0 36px}.project-text{font-size:18px}.project-passport{margin-bottom:48px}.project-gallery{grid-template-columns:1fr;gap:36px}.gallery-button{min-height:200px}.gallery-button img{max-height:580px}.project-reading{flex-direction:column;gap:10px}.project-next{margin-top:56px;align-items:start;flex-direction:column;gap:14px}.project-next a{font-size:32px}.site-footer{margin-top:70px;flex-wrap:wrap;font-size:10px;padding-top:20px}.lightbox{padding:66px 16px 20px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.lightbox img{max-width:calc(100vw - 48px)}.lightbox-close{right:10px}.lightbox-caption{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Multipage archive: logo rail, document-flow navigation, native media proportions. */
:root{--rail:112px;--edge:40px;--content:1500px}
html{scroll-padding-top:28px;scroll-behavior:auto}
main,.site-header,.site-footer{width:calc(100% - var(--rail) - var(--edge));max-width:var(--content);margin-left:max(var(--rail),calc((100vw - var(--content))/2));margin-right:var(--edge);padding-left:0;padding-right:0}
.site-header{position:sticky;inset:auto;top:0;height:72px;background:none;border:0;justify-content:flex-end;padding:0;z-index:40;color:var(--ink);transition:transform .24s var(--ease),opacity .24s var(--ease)}
.site-header .desktop-nav,.site-header .menu-toggle{color:inherit}
.site-header .desktop-nav,.site-header .menu-label{text-shadow:none}
.site-header .nav-chevron,.site-header .hamburger{filter:none}
.site-header .hamburger i{background:currentColor}
.site-header.is-scrolling{transform:translateY(-100%);opacity:0;pointer-events:none}
.site-header:focus-within,.site-header:has(.nav-more[open]),body.menu-open .site-header{transform:none;opacity:1;pointer-events:auto}
.brand{position:fixed;top:26px;left:max(24px,calc((100vw - var(--content))/2 - 78px));height:44px;width:44px;z-index:45;margin:0;align-items:flex-start;transform:none}
.brand img{width:14px;height:38.5px;opacity:.5}
.desktop-nav{display:flex;font-size:15px;gap:32px}
.desktop-nav>a{min-height:44px;display:flex;align-items:center}
.menu-toggle{display:none}
.nav-more{position:relative}
.nav-more summary{display:flex;align-items:center;gap:13px;min-height:44px;cursor:pointer;list-style:none}
.nav-chevron{display:inline-block;width:8px;height:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s var(--ease);margin:0 4px}
.nav-more[open] .nav-chevron{transform:translateY(2px) rotate(225deg)}
summary::-webkit-details-marker{display:none}
.plus-icon{position:relative;width:18px;height:18px;display:inline-block;flex:none}
.plus-icon::before,.plus-icon::after{content:'';position:absolute;top:8px;left:1px;width:16px;height:1.5px;background:currentColor}
.plus-icon::after{transform:rotate(90deg);transition:transform .25s var(--ease)}
details[open]>summary .plus-icon::after{transform:rotate(0)}
.nav-more-links{position:absolute;top:48px;right:0;min-width:220px;display:grid;gap:0;padding:12px 20px;background:var(--paper);border:1px solid var(--line)}
.nav-more-links a{display:block;padding:10px 0;min-height:44px}
.hero{padding-top:24px}
.hero-heading{display:block;margin:0 0 30px}
.hero-heading p{font-size:17px;color:var(--ink);line-height:1.6;max-width:64ch;margin-top:18px}
.hero-heading h1{font-size:clamp(36px,3.4vw,52px)}
.archive-composition{display:grid;grid-template-columns:minmax(0,4fr) minmax(150px,1fr);gap:28px;align-items:start;scroll-margin-top:90px}
.archive-film{grid-column:1;min-width:0}
.archive-film video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:var(--paper)}
.archive-photo{grid-column:2;min-width:0;margin-top:0}
.archive-photo img{width:100%;height:auto}
.archive-photo p{font-size:12px;font-family:var(--mono);color:var(--muted);margin-top:12px}
.archive-caption{padding-top:22px;max-width:65ch}
.archive-caption h2{font-family:var(--display);font-size:32px;font-weight:600}
.project-label{font-family:var(--mono);font-size:12px;color:var(--muted);margin:10px 0 0}
.project-abstract{font-size:17px;line-height:1.55;color:var(--ink);max-width:60ch;margin-top:14px}
.project-open{display:inline-block;font-size:15px;min-height:44px;padding-top:13px}
.selected-projects{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:48px 32px;margin-top:56px;align-items:start}
.selected-project{min-width:0}
.selected-house{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:32px;align-items:start}
.selected-house .selected-caption{padding-top:0}
.selected-stairs{grid-column:span 6;margin-top:0}
.selected-second{grid-column:span 6;margin-top:0}
.project-media-link{display:block}
.project-media-link img{width:100%;height:auto}
.selected-caption{padding-top:20px}
.selected-caption h2{font-family:var(--display);font-size:28px;font-weight:600;line-height:1.15}
.section{margin-top:72px;padding-top:0;scroll-margin-top:90px}
.section-heading{padding-top:24px;margin-bottom:40px}
.other-project-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:start}
.other-apostle{grid-column:span 4}
.other-boundless{grid-column:span 5;margin-top:0}
.other-flame{grid-column:span 3;margin-top:0}
.archive-extra{font-size:15px;margin-top:30px}
.artwork-grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:56px 32px}
.work-item{grid-column:span var(--work-span,4)}
.artwork-image{height:auto;background:none;display:block;width:100%;min-height:0}
.artwork-image img{width:100%;height:auto;object-fit:contain}
.work-item:nth-child(n){padding-top:0}
.artwork-grid figcaption{padding-top:18px}
.artwork-grid h2,.artwork-grid h3{font-family:var(--sans);font-weight:500;font-size:22px;line-height:1.3;margin-bottom:10px;letter-spacing:normal}
.work-medium{font-size:14px;color:var(--muted);line-height:1.5;margin:0}
.work-medium+.work-medium{margin-top:6px}
.work-utility{display:flex;align-items:start;justify-content:space-between;flex-wrap:wrap;gap:4px 14px;margin-top:14px;border-top:1px solid var(--line);padding-top:10px;font-size:14px}
.work-utility time{font-family:var(--mono);font-size:12px;color:var(--muted);padding-top:10px}
.work-utility a{display:inline-flex;align-items:center;min-height:44px}
.page-heading{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding-top:35px;margin-bottom:45px}
.page-heading>a{font-size:14px}
.artist-intro{font-size:19px;margin-bottom:48px;max-width:60ch}
.artist-disclosure{border-top:1px solid var(--line);scroll-margin-top:30px}
.artist-disclosure:last-child{border-bottom:1px solid var(--line)}
.artist-disclosure>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:30px 0;cursor:pointer;min-height:90px}
.artist-disclosure>summary h2{font-size:30px}
.artist-disclosure>summary .plus-icon{width:26px;height:26px;margin-right:4px}
.artist-disclosure>summary .plus-icon::before,.artist-disclosure>summary .plus-icon::after{width:24px;top:12px}
.artist-disclosure>summary:hover h2{text-decoration:underline;text-underline-offset:6px}
.disclosure-content{padding:12px 0 64px}
.disclosure-content .text-section{margin-top:0;padding-top:0;border:0}
.disclosure-content .reading-copy{margin-left:auto;margin-right:auto}
.disclosure-content .reading-copy h3{font-size:22px;margin-top:36px;margin-bottom:18px}
.disclosure-content .cv-side{display:none}
.disclosure-content .cv-layout{display:block;max-width:900px;margin-left:auto}
.catalog-intro{font-size:17px;color:var(--muted);margin-bottom:60px;max-width:65ch}
.contact-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:100px;align-items:start}
.contact-details>div{margin-bottom:30px}
.contact-details dt{font-family:var(--mono);font-size:12px;color:var(--muted);margin-bottom:10px;text-transform:uppercase}
.contact-details dd{font-size:19px;overflow-wrap:anywhere}
.inquiry-section{max-width:650px;scroll-margin-top:30px}
.inquiry-section>h2{font-size:30px;margin-bottom:20px}
.inquiry-section>p{font-size:17px;max-width:65ch;margin-bottom:34px}
.form-field{margin-bottom:24px}
.form-field label,.inquiry-draft label{display:block;font-size:15px;margin-bottom:9px}
.form-field label span{color:var(--muted)}
input,textarea,select{font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--muted);border-radius:0;padding:12px;width:100%;min-height:48px;caret-color:var(--ink)}
textarea{resize:vertical}
.text-action{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 22px;border:1px solid var(--ink);font-size:15px;white-space:nowrap}
.text-action:hover{background:var(--ink);color:var(--paper);text-decoration:none}
.text-action:active{transform:translateY(1px)}
.form-note{font-size:14px;color:var(--muted);line-height:1.6;margin-top:18px;max-width:65ch}
.inquiry-draft{border-top:1px solid var(--ink);margin-top:40px;padding-top:30px}
.inquiry-draft[hidden]{display:none}
.inquiry-draft h3{margin-bottom:24px}
.draft-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:18px}
.draft-actions button{min-height:44px;font-size:15px}
.project-main{padding-top:28px}
.project-cover,.gallery-button{background:none;padding:0}
.project-cover{justify-content:flex-start}
.project-cover img{max-height:760px}
.project-gallery{align-items:start}
.gallery-series-item{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:60px;align-items:start;scroll-margin-top:90px}
.gallery-series-copy h2{font-size:26px;line-height:1.2;margin-bottom:18px}
.gallery-series-copy p{font-size:17px;line-height:1.6;margin-top:18px;max-width:70ch}
.gallery-series-copy .gallery-series-details{font-size:14px;line-height:1.6;color:var(--muted)}
.gallery-series-poem{white-space:pre-line}
.gallery-series-media{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px;align-items:start}
.gallery-series-solo{grid-template-columns:minmax(0,1fr)}
.gallery-series-media img{width:100%;height:auto;max-height:none}
@media(max-width:850px){.gallery-series-item{grid-template-columns:minmax(0,1fr);gap:26px}.gallery-series-copy{max-width:70ch}}
@media(max-width:600px){.gallery-series-media{grid-template-columns:minmax(0,1fr);gap:28px}.gallery-series-copy h2{font-size:24px}}
.project-gallery .gallery-button{min-height:0;justify-content:flex-start}
.project-video video{max-height:none;background:none}
.site-footer{margin-top:100px;padding-top:24px;flex-wrap:wrap;font-size:12px;text-transform:none}
.menu{display:none}
body.inquiry-open{overflow:hidden}
body.work-picker-open{overflow:hidden}
.work-choice{display:flex;align-items:center;gap:20px;width:100%;min-height:52px;padding:14px;border:1px solid var(--muted);text-align:left;font-size:17px}
.work-choice:hover{border-color:var(--ink);background:var(--soft)}
.work-choice img{width:84px;height:100px;object-fit:contain;flex:none}
.work-choice-copy{display:flex;flex-direction:column;align-items:start;gap:5px;min-width:0;overflow-wrap:anywhere}
.work-choice-year{color:var(--muted);font-size:14px}
.work-choice-copy .underlined{font-size:14px;margin-top:6px}
.work-choice-error{font-size:14px;margin-top:10px}
.work-picker{width:min(1000px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 48px);padding:0;border:0;background:var(--paper);color:var(--ink);overflow:auto}
.work-picker::backdrop{background:rgb(0 0 0 / .55)}
.work-picker-header{position:sticky;top:0;z-index:1;padding:20px 32px 16px;background:var(--paper);border-bottom:1px solid var(--line)}
.work-picker-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}
.work-picker-heading h2{font-size:28px}
.work-picker-header label{display:block;font-size:14px;margin-bottom:8px}
.work-picker-status{font-size:13px;color:var(--muted);margin-top:10px}
.work-picker-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 20px;padding:24px 32px 32px}
.work-picker-item{display:flex;flex-direction:column;text-align:left;min-width:0;gap:7px;padding:6px;outline-offset:2px}
.work-picker-item img{width:100%;height:170px;object-fit:contain;margin-bottom:5px}
.work-picker-name{font-size:16px;line-height:1.35;overflow-wrap:anywhere}
.work-picker-year{font-size:13px;color:var(--muted)}
.work-picker-item.is-selected{outline:1px solid var(--ink)}
.work-picker-item{cursor:pointer}
.work-picker-check{display:flex;align-items:flex-start;gap:9px}
.work-picker-check input{width:18px;height:18px;min-height:18px;padding:0;flex:none;margin:2px 0 0;accent-color:var(--ink);cursor:pointer}
.work-picker-item:focus-within{outline:2px solid var(--ink)}
.work-picker-footer{position:sticky;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:20px;background:var(--paper);border-top:1px solid var(--line);padding:16px 32px;z-index:1}
.work-picker-footer p{font-size:15px;font-variant-numeric:tabular-nums}
.work-choice.has-works{display:flex;flex-direction:column;align-items:stretch}
.work-choice-entry{display:flex;align-items:center;gap:20px}
.work-choice-action{font-size:14px;align-self:flex-start}
@media(max-width:767px){.work-picker-footer{padding:12px 16px;gap:12px}.work-picker-footer .text-action{min-height:44px}.work-choice-entry{gap:14px}}
.work-picker-item:hover .work-picker-name{text-decoration:underline;text-underline-offset:4px}
.work-picker-item:hover img{opacity:.86}
.work-picker-empty{padding:24px 32px 40px;font-size:17px}
@media(max-width:767px){.work-picker{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.work-picker-header{padding:12px 16px}.work-picker-heading{gap:10px;margin-bottom:14px}.work-picker-heading h2{font-size:24px}.work-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px;padding:20px 12px 24px}.work-picker-item img{height:150px}.work-picker-name{font-size:14px}.work-picker-empty{padding:24px 16px}.work-choice{gap:14px}.work-choice img{width:68px;height:86px}}
.inquiry-modal{border:0;background:var(--paper);color:var(--ink);padding:0;width:min(640px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 48px);overflow:auto}
.inquiry-modal::backdrop{background:rgb(0 0 0 / .55)}
.inquiry-modal-header{position:sticky;top:0;z-index:1;display:flex;justify-content:flex-end;background:var(--paper);padding:8px 24px}
.inquiry-close{display:flex;align-items:center;gap:12px;min-height:44px;font-size:14px;padding:0 8px}
.inquiry-modal-body{padding:12px 32px 32px}
.inquiry-modal .inquiry-section>p{margin-bottom:24px}
.inquiry-modal .form-field{margin-bottom:18px}
.inquiry-modal .inquiry-draft textarea{min-height:200px}
.inquiry-modal .draft-actions{gap:18px}
.artist-disclosure{scroll-margin-top:90px}
@media(min-width:768px) and (max-width:1100px){.archive-photo{grid-column:2}}
@media(max-width:767px){.hero-heading p{max-width:100%;font-size:17px}.selected-projects{margin-top:40px}.other-project-grid{margin-top:0}.section{margin-top:56px}.inquiry-modal{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.inquiry-modal-header{padding:6px 12px}.inquiry-modal-body{padding:8px 20px 24px}.inquiry-modal .inquiry-section>h2{font-size:26px}.inquiry-modal .inquiry-section>p{font-size:16px}.inquiry-modal .draft-actions{align-items:start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){.brand{transform:none!important}.site-header,.nav-chevron{transition:none}}
.lightbox-navigation{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:12px}
.lightbox-navigation[hidden]{display:none}
.lightbox-arrow{display:grid;place-items:center;width:48px;height:48px;flex:none}
.lightbox-arrow:hover{background:var(--soft)}
.lightbox-arrow img{width:24px;height:24px;margin:0}
.lightbox-count{font-family:var(--mono);font-size:12px;color:var(--muted);min-width:6ch;text-align:center}
.lightbox-media>img{touch-action:pan-y;max-height:calc(100dvh - 240px)}
.project-talk{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,5fr);gap:48px;align-items:start;scroll-margin-top:90px}
.project-talk h2{margin:0 0 18px!important}
.project-talk-copy{grid-column:2;grid-row:1}
.project-talk video{grid-column:1;grid-row:1;max-height:75dvh;width:auto;max-width:100%;object-fit:contain;object-position:left top}
.project-talk p{margin:0!important}
@media(min-width:1600px){.site-header{padding:0}}
@media(max-width:1100px){:root{--rail:88px;--edge:28px}.desktop-nav{gap:26px}.archive-composition{gap:22px}.archive-photo{grid-column:2}.selected-projects{gap:26px}.artwork-grid{gap:56px 28px}.other-project-grid{gap:28px}.contact-layout{gap:50px}.work-utility{display:block}.work-utility time{display:block;padding:0}.hero-heading{margin-bottom:30px}}
@media(max-width:767px){:root{--rail:60px;--edge:18px}.site-header{height:84px;justify-content:flex-end}.brand{left:16px;top:18px;height:55px;width:30px}.brand img{width:20px;height:55px}.desktop-nav{display:none}.menu-toggle{display:flex;min-width:80px;z-index:45}.menu{display:block;inset:0;padding:90px 24px 30px 60px;z-index:35}.menu-links{display:block;margin:0}.menu-links a{display:block;font-size:30px;padding:12px 0}.hero{padding-top:14px}.hero-heading{display:block;margin-bottom:28px}.hero-heading h1{font-size:38px;max-width:10ch}.hero-heading p{font-size:17px;margin-top:12px}.archive-composition{grid-template-columns:1fr;gap:40px}.archive-film,.archive-photo{grid-column:1;margin-top:0}.archive-photo{width:68%;margin-left:auto}.archive-caption h2{font-size:28px}.archive-caption{padding-top:18px}.project-abstract{font-size:17px;line-height:1.6}.archive-photo p{font-size:12px}.selected-projects,.other-project-grid{grid-template-columns:1fr;gap:40px;margin-top:40px}.selected-project,.selected-house,.selected-stairs,.selected-second,.other-apostle,.other-boundless,.other-flame{grid-column:1;margin-top:0}.selected-stairs{width:82%;margin-left:auto}.other-flame{width:82%;margin-left:auto}.selected-caption h2{font-size:28px}.section{margin-top:56px;padding-top:0}.section-heading{margin-bottom:34px}.section-heading h2{font-size:28px}.section-heading>a{font-size:12px}.artwork-grid{grid-template-columns:1fr;gap:50px}.work-item{grid-column:1}.work-item:nth-child(n){padding-top:0}.artwork-image{height:auto}.artwork-grid h3{font-size:22px}.work-medium{font-size:14px}.work-utility{display:flex;font-size:14px}.work-utility time{padding-top:10px}.page-heading{padding-top:16px;margin-bottom:34px;align-items:start;flex-direction:column;gap:16px}.page-heading h1{font-size:38px}.artist-intro{font-size:17px;margin-bottom:32px}.artist-disclosure>summary{padding:24px 0;min-height:80px}.artist-disclosure>summary h2{font-size:26px}.disclosure-content{padding:0 0 45px}.about-layout{grid-template-columns:1fr;gap:28px}.about-copy{font-size:18px}.about-image{max-width:100%;margin-top:0}.disclosure-content .reading-copy{font-size:18px;line-height:1.65}.publication-row{grid-template-columns:1fr;gap:12px}.publication-row h4{font-size:22px}.publication-group+.publication-group{margin-top:40px}.publication-row p{font-size:17px}.contact-layout{grid-template-columns:1fr;gap:46px}.contact-details dd{font-size:18px}.inquiry-section>h2{font-size:28px}.draft-actions{gap:15px}.site-footer{margin-top:70px;display:grid;gap:12px;padding-bottom:30px}.project-main{padding-top:14px}.project-heading{grid-template-columns:1fr;gap:22px;margin-top:28px}.project-cover{padding:0}.project-cover img{max-height:none;width:100%}.gallery-button{padding:0}.project-gallery{grid-template-columns:1fr}.project-gallery img{max-height:none}.project-meta{font-size:12px}}
@media(max-width:767px){.selected-house{display:block}.selected-house .selected-caption{padding-top:20px}.selected-stairs{width:100%;margin-left:0}.project-talk{display:block}.project-talk-copy{margin-bottom:20px}.project-talk h2{margin-bottom:20px!important}.project-talk p{margin-top:12px!important}.project-talk video{max-height:75dvh}}
@media(max-width:767px){.brand{width:44px;height:44px}.brand img{width:14px;height:38.5px}}

:root{--rail:40px;--edge:40px;--content:1500px;--feedback:160ms}
.site-header{justify-content:space-between;gap:24px}
.site-name{display:flex;align-items:center;min-height:44px;font-size:15px;white-space:nowrap;position:relative;z-index:45}
.footer-brand{display:flex;align-items:flex-start;justify-content:center;width:44px;min-height:72px;flex:none;color:var(--ink)}
.footer-brand img{width:24px;height:66px;opacity:1}
.site-footer{align-items:center}
.selected-projects{display:flex;flex-direction:column;gap:72px}
.selected-projects>.selected-project{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:32px;width:100%;margin:0;align-items:start}
.selected-projects .selected-caption{padding-top:0}
.project-photo-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.artwork-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:48px 28px}
.artwork-grid .work-item{grid-column:auto}
.artwork-grid h2,.artwork-grid h3{font-size:19px}
.work-utility{display:block;font-size:13px}
.work-utility time{padding-top:0;display:block}
.work-utility a{padding-top:4px}
.catalog-intro{margin-bottom:32px}
.work-filters{display:flex;align-items:flex-end;gap:24px;flex-wrap:wrap;padding:0 0 28px;margin-bottom:36px;border-bottom:1px solid var(--line)}
.filter-field{min-width:180px;flex:0 1 220px}
.filter-field label{display:block;font-family:var(--mono);font-size:12px;text-transform:uppercase;margin-bottom:8px;color:var(--muted)}
.filter-reset{min-height:48px;font-size:14px}
.filter-count{margin-left:auto;font-size:14px;color:var(--muted);min-height:48px;display:flex;align-items:center}
.filter-empty{padding:20px 0 60px;font-size:17px;max-width:60ch}
[hidden]{display:none!important}
select{appearance:none;padding-right:44px;background-image:url('assets/vendor/icons/caret-down.svg');background-repeat:no-repeat;background-position:right 16px center;background-size:16px}
.project-cover{display:block;width:100vw;max-width:none;position:relative;left:50%;margin-left:-50vw;min-height:0}
.project-cover img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.project-cover.cover-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.project-cover.cover-pair img{height:auto;width:100%}
.project-cover.cover-portrait{width:100%;left:auto;margin-left:0}
.project-cover.cover-portrait img{width:auto;max-width:100%;max-height:80dvh;margin:0 auto}
a,button,summary,input,select,textarea{transition:color var(--feedback),background-color var(--feedback),border-color var(--feedback),text-decoration-color var(--feedback),opacity var(--feedback)}
a{text-underline-offset:5px;text-decoration-thickness:1px}
@media(hover:hover){
 a:not(.text-action):hover{color:var(--muted);text-decoration:underline;text-decoration-thickness:1px}
 .project-media-link:hover,.archive-photo>a:first-child:hover{text-decoration:none}
 .project-media-link:hover img,.archive-photo>a:first-child:hover img,.artwork-image:hover img,.gallery-button:hover img{opacity:.86}
 .artwork-image:hover{background:none}
 .artist-disclosure>summary:hover{color:var(--muted)}
 .nav-more>summary:hover{text-decoration:underline;text-underline-offset:5px}
 .menu-toggle:hover,.lightbox-close:hover,.inquiry-close:hover,.lightbox-arrow:hover{background:var(--soft)}
 input:hover,select:hover,textarea:hover{border-color:var(--ink)}
}
.project-media-link img,.archive-photo img,.artwork-image img,.gallery-button img{transition:opacity var(--feedback)}
:is(a,button,summary):active{opacity:.7}
:is(a,button,summary,input,textarea,select):focus-visible{outline:2px solid var(--ink);outline-offset:4px}
button:disabled{opacity:.4;cursor:not-allowed}
@media(max-width:1100px){:root{--rail:28px;--edge:28px}.desktop-nav{gap:22px}.site-name{font-size:14px}.artwork-grid{gap:40px 24px}.selected-projects>.selected-project{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px}}
@media(max-width:900px){.artwork-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){:root{--rail:20px;--edge:20px}.site-header{height:72px;justify-content:space-between}.site-name{font-size:14px;max-width:70%;white-space:normal;line-height:1.3}.menu{padding-left:20px}.hero-heading h1{max-width:none}.selected-projects{gap:48px}.selected-projects>.selected-project{display:block}.selected-projects .selected-caption{padding-top:20px}.project-photo-pair{gap:12px}.selected-stairs{width:100%;margin-left:0}.artwork-grid{gap:36px 16px}.artwork-grid h2,.artwork-grid h3{font-size:17px}.work-medium{font-size:13px}.work-utility{display:block}.work-utility time{padding:0}.work-utility a{font-size:13px}.work-filters{gap:16px;margin-bottom:28px;padding-bottom:20px}.filter-field{min-width:0;flex:1 1 calc(50% - 8px)}.filter-reset{font-size:13px}.filter-count{font-size:13px}.site-footer{grid-template-columns:44px 1fr;gap:16px 20px}.footer-brand{grid-row:span 3}.project-cover.cover-pair{gap:12px}.project-cover.cover-portrait img{max-height:65dvh}.project-heading h1{font-size:38px}}
@media(max-width:359px){.artwork-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.hero-heading>.visually-hidden+p{margin-top:0}
.project-gallery.archive-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 16px}
.archive-card-grid .gallery-button img{width:100%;height:auto;max-height:none}
.archive-card-grid figcaption{font-size:12px;margin-top:10px}
@media(max-width:900px){.project-gallery.archive-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:359px){.project-gallery.archive-card-grid{grid-template-columns:minmax(0,1fr)}}
.archive-photo>a:not(.project-open){display:block;margin-bottom:24px}
.archive-photo>a:hover img{opacity:.86}
.project-carousel{min-width:0}
.carousel-frame{display:grid;aspect-ratio:4/3;overflow:hidden;align-items:stretch}
.carousel-frame.carousel-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.carousel-frame .project-media-link{display:block;min-height:0;min-width:0;height:100%}
.carousel-frame img{display:block;width:100%;height:100%;object-fit:contain;object-position:center top}
.carousel-tall .carousel-frame{aspect-ratio:3/2}
.carousel-controls{display:flex;align-items:center;gap:12px;padding-top:12px;color:var(--muted)}
.carousel-arrow{display:grid;place-items:center;min-width:40px;min-height:40px}
.carousel-arrow img{width:20px;height:20px}
.carousel-arrow:hover{background:var(--soft)}
.carousel-count{font-family:var(--mono);font-size:12px;min-width:44px;text-align:center;font-variant-numeric:tabular-nums}
.carousel-pause{font-size:13px;margin-left:auto;min-height:40px}
.project-video-portrait video{max-height:78dvh;width:auto;max-width:100%;margin-inline:auto}
.texts-preview-list,.texts-list{border-top:1px solid var(--line)}
.text-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(0,2fr);gap:60px;padding:28px 0;border-bottom:1px solid var(--line)}
.text-row h2,.text-row h3{font-family:var(--sans);font-size:26px;line-height:1.2;font-weight:500;letter-spacing:-.015em}
.text-row .text-excerpt{font-size:17px;line-height:1.6;max-width:65ch}
.text-row .text-type{color:var(--muted);font-size:13px;margin-top:10px}
.text-main{max-width:1400px}
.text-article{max-width:72ch;margin:48px auto 0}
.text-article h1{font-family:var(--display);font-size:clamp(38px,4vw,60px);font-weight:600;line-height:1.04;letter-spacing:-.02em;max-width:22ch;margin-bottom:24px;text-wrap:balance}
.text-article .text-deck{color:var(--muted);font-size:15px;margin-bottom:40px}
.text-body{font-size:19px;line-height:1.7}
.text-body p{margin-bottom:1.35em;white-space:pre-line}
.text-article-image{display:block;max-height:640px;width:100%;object-fit:contain;margin:40px 0}
.text-related{margin-top:48px;padding-top:24px;border-top:1px solid var(--line);font-size:16px}
@media(min-width:768px) and (max-width:1000px){.desktop-nav{gap:16px;font-size:14px}.desktop-nav>a,.nav-more>summary{font-size:14px}}
@media(max-width:767px){.carousel-frame.carousel-pair{gap:12px}.carousel-controls{padding-top:8px}.text-row{grid-template-columns:1fr;gap:16px;padding:24px 0}.text-row h2,.text-row h3{font-size:23px}.text-row .text-excerpt{font-size:16px}.text-article{margin-top:32px}.text-body{font-size:18px;line-height:1.65}.text-article .text-deck{margin-bottom:28px}}
