:root{font-family:Arial,Helvetica,sans-serif;font-size:13px;color:#111;background:white;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a,button{color:inherit;text-decoration:none}button{font:inherit;border:0;background:none;padding:0;cursor:pointer}a:hover,button:hover{color:#888}a:focus-visible,button:focus-visible{outline:1px solid;outline-offset:5px}header{position:fixed;top:0;left:0;right:0;z-index:20;background:#fff;padding:12px 12px 18px}.ruler{height:16px;background:repeating-linear-gradient(90deg,#111 0,#111 1px,transparent 1px,transparent 11px)}nav{display:flex;justify-content:space-between;align-items:center;margin-top:7px;gap:20px}nav .brand{font-weight:600}nav a[aria-current=page]:not(.brand){text-decoration:underline;text-underline-offset:4px}#menuToggle{display:none}main{min-height:calc(100svh - 60px);padding-top:88px}figure{margin:0}.feed{max-width:1600px;margin:auto}.work{margin:0 auto 100px;width:80%}.work.portrait{width:45%}.work button.media{display:block;width:100%;text-align:center}.work img{display:block;width:100%;max-height:82svh;object-fit:contain}.work video{display:block;width:100%;max-height:82svh;background:transparent}figcaption{text-align:center;padding-top:30px;line-height:1.35}figcaption .view{display:block;color:#888}figcaption .view:hover{color:#111}.index{display:grid;grid-template-columns:repeat(4,1fr);gap:65px 24px;padding:30px 24px 100px}.index .work{width:100%;margin:0}.index .media{height:290px;display:flex!important;align-items:center;justify-content:center}.index img,.index video{max-width:100%;max-height:100%;height:100%;object-fit:contain}.index figcaption{padding-top:18px}.section-label{padding:16px 24px 40px;font-weight:400;font-size:13px}.information{padding:90px 12px 130px;display:grid;grid-template-columns:1fr 2fr;gap:30px;min-height:75svh}.information h1{font-size:13px;font-weight:400;margin:0}.information .statement{font-size:clamp(30px,4.8vw,72px);font-weight:400;line-height:1.07;letter-spacing:-.045em;margin:0;max-width:950px}.information .details{margin-top:80px;line-height:1.6;font-size:13px;letter-spacing:0}.empty{min-height:75svh;padding:12px;display:flex;align-items:center;justify-content:center;position:relative}.empty .outline{width:min(80vw,1050px);height:61svh;background:#f7f7f5;display:flex;align-items:center;justify-content:center}.empty h1{font-size:clamp(45px,10vw,140px);font-weight:400;letter-spacing:-.075em;margin:0}.empty p{text-align:center;color:#888;line-height:1.7}.empty .note{position:absolute;bottom:20px;font-size:12px}footer{display:flex;justify-content:space-between;gap:20px;padding:20px 12px 14px}footer span{color:#888}dialog{border:0;margin:0;max-width:none;max-height:none;width:100%;height:100svh;padding:16px 20px;background:#fff}dialog::backdrop{background:white}.viewer-top,.viewer-bottom{display:flex;justify-content:space-between;align-items:center;height:30px}#viewerMedia{height:calc(100svh - 100px);display:flex;align-items:center;justify-content:center;padding:18px}#viewerMedia img,#viewerMedia video{max-height:100%;max-width:100%;object-fit:contain}.viewer-bottom{height:38px}#mobileMenu[hidden]{display:none}.contact{margin-top:30px}html{scroll-behavior:smooth}@media(min-width:1600px){.index .media{height:380px}}@media(max-width:800px){.index{grid-template-columns:repeat(2,1fr);gap:44px 14px;padding:18px 12px 70px}.index .media{height:250px}.work{width:94%;margin-bottom:65px}.work.portrait{width:75%}.information{padding-top:55px;grid-template-columns:1fr;gap:45px}.information .details{margin-top:50px}nav{gap:12px;font-size:12px}}@media(max-width:767px){header{padding:10px 10px 16px}nav a:not(.brand){display:none}#menuToggle{display:block}#mobileMenu{position:fixed;inset:65px 0 0;background:#fff;z-index:19;padding:35px 12px;display:flex;flex-direction:column;gap:18px;font-size:32px;letter-spacing:-.04em}main{padding-top:78px}.index .media{height:200px}.work.portrait{width:88%}figcaption{padding-top:16px}footer{font-size:11px}footer span{max-width:120px}.empty .outline{width:94vw;height:60svh}.information .statement{font-size:41px}#viewerMedia{padding:15px 0}.viewer-bottom{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.work img{height:auto}.index img{height:100%;width:100%;object-fit:contain}.work .media video{width:100%}#viewerMedia img{width:auto;height:auto}button[hidden]{display:none!important}
figcaption .view{margin-inline:auto}

.information .bio{max-width:580px;margin:40px 0 0;font-size:18px;line-height:1.5;letter-spacing:-.01em}.information .bio+.details{margin-top:35px}.information .details:empty{display:none}@media(max-width:767px){.information .bio{font-size:16px;margin-top:32px}}

/* One consistent frame for the portfolio previews. */
.feed .work,.feed .work.portrait{width:80%}
.feed .work .media{display:block;aspect-ratio:16/9;width:100%;overflow:hidden}
.feed .work .media img,.feed .work .media video{width:100%;height:100%;max-height:none;object-fit:cover}
.index .media{height:auto!important;aspect-ratio:16/9;overflow:hidden}
.index .media img{width:100%;height:100%;max-height:none;object-fit:cover}
@media(max-width:800px){.feed .work,.feed .work.portrait{width:94%}}
/* Film controls stay quiet until the viewer interacts. */
.film-player{position:relative;width:100%;height:100%;background:transparent;overflow:hidden;isolation:isolate}
.film-player video{display:block;width:100%;height:100%;object-fit:cover}
.film-player .film-poster{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover;opacity:1;transition:opacity .6s ease;pointer-events:none}
.film-player.is-ready .film-poster{opacity:0}
.film-controls{position:absolute;right:14px;bottom:14px;display:flex;gap:3px;align-items:center;padding:3px;border:1px solid #ffffff1f;background:#15151550;backdrop-filter:blur(12px);border-radius:2px;opacity:0;transition:opacity .25s ease;z-index:2}
.film-controls button{width:38px;height:38px;display:grid;place-items:center;color:#fff;opacity:.85}
.film-controls button:hover{opacity:1;color:#fff;background:#ffffff12}
.film-controls button:focus-visible{outline:1px solid #fff;outline-offset:-3px}
.film-player:hover .film-controls,.film-player:focus-within .film-controls,.film-player.is-paused .film-controls{opacity:1}
.film-player.is-buffering:not(.is-ready)::after{content:'';position:absolute;left:50%;top:50%;width:16px;height:16px;margin:-8px;border:1px solid #ffffff40;border-top-color:#fff;border-radius:50%;animation:film-wait 1.2s linear infinite}
@keyframes film-wait{to{transform:rotate(360deg)}}
#viewerMedia .film-player{width:100%;height:100%;background:transparent}
#viewerMedia .film-player video,#viewerMedia .film-player .film-poster{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}
.film-player:fullscreen{background:#000;width:100vw;height:100vh}
.film-player:fullscreen video{object-fit:contain}
@media(hover:none){.film-controls{opacity:.85;right:10px;bottom:10px}.film-controls button{width:36px;height:36px}}
@media(prefers-reduced-motion:reduce){.film-poster,.film-controls{transition:none}.film-player.is-buffering::after{animation:none}}

.client-directory{min-height:calc(100svh - 150px);padding:48px 24px 80px;display:flex;flex-direction:column}
.directory-heading{text-align:center}.directory-heading h1{font-size:13px;font-weight:400;margin:0}.directory-heading p{color:#888;margin:8px 0 0}
.client-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,720px);gap:60px 120px;margin:auto;padding:60px 0}
.client-link{display:grid;place-items:center;min-height:128px;transition:opacity .2s ease}.client-link:hover{opacity:.55;color:inherit}
.client-link img{display:block;width:128px;height:56px;object-fit:contain;filter:brightness(0)}
.project-navigation{padding:12px 12px 28px}.project-navigation a{color:#888}.project-navigation a:hover{color:#111}
.project-credit{font:inherit;line-height:1.35}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:767px){.client-directory{padding:42px 20px 65px}.client-list{gap:24px}.project-navigation{padding:8px 12px 24px}}
@media(prefers-reduced-motion:reduce){.client-link{transition:none}}

.client-list .client-link:last-child:nth-child(odd){grid-column:1 / -1}

.art-details{width:80%;max-width:1280px;margin:0 auto 110px;display:grid;grid-template-columns:1.3fr 1fr;gap:80px}
.art-details h1{font-size:13px;font-weight:400;margin:0 0 12px}.art-date{color:#888;line-height:1.6;margin:0 0 30px}.art-description{font-size:18px;line-height:1.6;margin:0;max-width:580px}
.art-specifications{display:grid;grid-template-columns:1fr 1fr;gap:30px 28px;margin:0;align-content:start}.art-specifications dt{color:#888;margin-bottom:8px}.art-specifications dd{margin:0;line-height:1.6}
@media(max-width:800px){.art-details{width:94%;grid-template-columns:1fr;gap:45px;margin-bottom:75px}.art-description{font-size:16px}}

@media(min-width:801px){.client-directory{padding-bottom:60px}.client-list{grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,900px);gap:42px 80px;padding:42px 0}.client-link{min-height:96px}}

/* Small-screen refinements; desktop presentation stays unchanged. */
@media(max-width:767px){
 .information .external-indicator{display:none}
 .information .details a{display:inline-flex;align-items:center;min-height:44px;color:#111;-webkit-text-fill-color:#111}
 nav .brand,#menuToggle{position:relative}
 nav .brand::after,#menuToggle::after{content:'';position:absolute;inset:-15px -10px}
 #mobileMenu{overflow-y:auto;overscroll-behavior:contain;padding-bottom:max(35px,env(safe-area-inset-bottom))}
 #mobileMenu a{min-height:44px;display:flex;align-items:center;flex-shrink:0}
 #mobileMenu a[aria-current=page]{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
 body.menu-open{overflow:hidden}
 .viewer-top,.viewer-bottom{height:44px;flex-shrink:0}
 .viewer-top button,.viewer-bottom button{min-height:44px;min-width:44px}
 dialog{padding:12px max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));height:100dvh}
 #viewerMedia{height:calc(100dvh - 112px)}
 .film-controls button{width:44px;height:44px}
}
