@font-face{font-family:Studio;src:url('/assets/studio.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--paper:#f5f5f2;--ink:#202220;--muted:#666b66;--line:#d9dcd5;--accent:#4263a0;--surface:#e9ece5;--header:rgba(245,245,242,.94)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Studio,'Helvetica Neue',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:6px}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}::selection{background:#ccd6ea}.site-header{height:100px;position:absolute;z-index:30;inset:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;gap:24px}.wordmark{font-size:24px;font-weight:550;letter-spacing:-1px}.main-nav{display:flex;align-items:center;gap:32px;font-size:14px}.main-nav a{position:relative;padding:10px 0}.main-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:3px;height:1px;background:var(--ink);transition:right .25s}.main-nav a:hover:after{right:0}.header-end{display:flex;gap:22px;align-items:center;font-size:14px}.theme-toggle,.menu-toggle{border:0;background:none;padding:8px;display:flex;align-items:center;justify-content:center}.menu-toggle{display:none}.eyebrow{font-size:12px;letter-spacing:.035em;color:var(--muted);margin-bottom:25px}.hero{min-height:860px;height:100dvh;max-height:1100px;position:relative;display:grid;grid-template-columns:47% 53%;align-items:center;padding:90px 4.5% 80px;overflow:hidden}.hero-copy{z-index:2;padding-bottom:24px}.hero h1{font-size:clamp(55px,6.3vw,96px);font-weight:420;letter-spacing:-.067em;line-height:1.04}.hero h1 em{font-style:normal;color:var(--accent)}.intro{max-width:350px;font-size:16px;line-height:1.7;color:var(--muted);margin:28px 0 26px}.text-link{font-size:14px;display:inline-flex;align-items:center;gap:18px;padding:8px 0}.link-line{height:1px;width:32px;background:currentColor;transition:width .3s}.text-link:hover .link-line{width:54px}.hero-gallery{position:relative;height:650px;margin-left:-24px;min-width:0}.static-gallery{height:100%;position:relative;perspective:1000px}.gallery-image{position:absolute;object-fit:cover;box-shadow:0 22px 45px -25px #25302155}.g1{width:44%;height:220px;left:8%;top:11%;transform:rotate(-7deg) rotateY(8deg)}.g2{width:27%;height:190px;right:2%;top:4%;transform:rotate(8deg) rotateY(-12deg)}.g3{width:45%;height:190px;right:0;top:46%;transform:rotate(5deg) rotateY(-6deg)}.g4{width:36%;height:155px;left:0;top:61%;transform:rotate(-8deg) rotateY(10deg)}.g5{width:24%;height:190px;left:44%;top:71%;transform:rotate(5deg) rotateY(-8deg)}.gallery-caption{position:absolute;bottom:-12px;right:10%;font-size:12px;color:var(--muted)}.hero-bottom{position:absolute;bottom:32px;left:4.5%;right:4.5%;display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.hero-bottom a{border-bottom:1px solid var(--line);padding-bottom:5px}.section-wrap{padding:100px 7% 110px}.selected{background:var(--surface)}.section-heading{max-width:600px;margin-bottom:60px}.section-heading h2{font-size:clamp(36px,4vw,58px);font-weight:420;letter-spacing:-.045em;line-height:1.1;margin-bottom:20px}.section-heading>p:last-child{color:var(--muted);line-height:1.7;font-size:16px;max-width:420px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px 55px}.work-card{display:block;min-width:0}.work-card.offset{padding-top:140px}.work-image{overflow:hidden;aspect-ratio:1.3;background:#daded4}.work-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.65,.3,1)}.work-card:hover .work-image img{transform:scale(1.035)}.work-meta{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-top:24px}.work-meta h3{font-size:23px;font-weight:450;letter-spacing:-.04em}.work-meta span{font-size:12px;color:var(--muted)}.work-card>p{margin-top:9px;color:var(--muted);font-size:14px;line-height:1.7}.site-footer{padding:70px 4.5% 28px;background:var(--paper)}.footer-top{display:flex;justify-content:space-between;align-items:flex-end;padding-bottom:55px}.footer-top h2{font-size:clamp(40px,5vw,76px);line-height:1.05;letter-spacing:-.06em;font-weight:420}.footer-top>a{font-size:18px;border-bottom:1px solid var(--ink);padding-bottom:8px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:25px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.footer-social{display:flex;gap:24px}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;padding:15px;background:var(--paper)}.skip-link:focus{top:15px}.mobile-nav{position:absolute;top:80px;left:0;right:0;padding:25px 6% 35px;display:flex;flex-direction:column;gap:22px;background:var(--paper);border-bottom:1px solid var(--line);font-size:24px}
[data-theme=dark]{--paper:#202320;--ink:#ecede7;--muted:#b5bcb2;--line:#454b43;--accent:#9eb5dd;--surface:#282e28;--header:rgba(32,35,32,.94)}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#202320;--ink:#ecede7;--muted:#b5bcb2;--line:#454b43;--accent:#9eb5dd;--surface:#282e28;--header:rgba(32,35,32,.94)}}
@media(min-width:1600px){.hero{padding-left:max(4.5%,calc((100vw - 1440px)/2));padding-right:max(4.5%,calc((100vw - 1440px)/2))}.section-wrap{padding-left:max(7%,calc((100vw - 1320px)/2));padding-right:max(7%,calc((100vw - 1320px)/2))}}
@media(max-width:900px){.site-header{height:80px;padding:0 6%}.main-nav{gap:18px}.header-resume{display:none}.hero{grid-template-columns:1fr;min-height:1050px;height:auto;padding:140px 6% 95px;gap:0;max-height:none}.hero h1{font-size:clamp(56px,8.5vw,86px)}.hero-gallery{height:480px;margin-left:0;margin-top:15px}.hero-copy{padding:0}.intro{max-width:430px}.gallery-caption{bottom:0}.static-gallery{max-width:600px;margin:auto}.g1{height:180px}.g2{height:160px}.g3{height:145px}.g4{height:130px;top:62%}.g5{height:140px;top:66%}.work-grid{gap:55px 28px}.work-meta{display:block}.work-meta span{display:block;margin-top:8px}.section-wrap{padding:75px 6%}.work-card.offset{padding-top:100px}.hero-bottom{left:6%;right:6%}}
@media(max-width:600px){.wordmark{font-size:22px}.main-nav{display:none}.menu-toggle{display:flex}.site-header{gap:15px}.header-end{gap:8px}.hero{padding-top:126px;min-height:1020px}.hero h1{font-size:clamp(49px,12vw,69px)}.hero .eyebrow{font-size:12px;margin-bottom:22px}.intro{font-size:16px;margin-top:25px;max-width:315px}.hero-gallery{height:415px;margin-top:22px}.g1{width:48%;height:154px;left:3%;top:9%}.g2{width:32%;height:134px;right:2%;top:3%}.g3{width:46%;height:130px;top:45%}.g4{width:41%;height:111px;top:56%}.g5{height:125px;top:67%;left:40%}.gallery-caption{bottom:-5px;font-size:11px}.hero-bottom{bottom:26px;gap:24px;font-size:11px}.work-grid{grid-template-columns:1fr;gap:48px}.work-card.offset{padding-top:0}.section-heading{margin-bottom:38px}.section-heading h2{font-size:39px}.work-image{aspect-ratio:1.2}.footer-top{display:block;padding-bottom:40px}.footer-top>a{display:inline-block;margin-top:35px;font-size:17px}.footer-bottom{gap:20px;align-items:flex-start;line-height:1.7}.footer-social{flex-wrap:wrap;gap:12px 20px}.site-footer{padding:60px 6% 28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.gallery-link{position:absolute;display:block;box-shadow:0 22px 45px -25px #25302155;transition:transform .75s cubic-bezier(.2,.65,.3,1)}.gallery-link img{width:100%;height:100%;object-fit:cover}.webgl-gallery{position:absolute;inset:0;z-index:2;opacity:0;transition:opacity .8s}.scene-ready .webgl-gallery{opacity:1}.scene-ready .static-gallery{opacity:0}.scene-ready .static-gallery:focus-within{opacity:1;z-index:3}.scene-ready:has(.static-gallery:focus-within) .webgl-gallery{opacity:0;pointer-events:none}.gallery-toolbar{position:absolute;bottom:-18px;left:3%;right:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:16px}.gallery-label{font-size:12px;color:var(--muted)}.view-toggle{display:flex;gap:4px;padding:3px;background:var(--surface);border-radius:5px}.view-toggle button{font-size:12px;border:0;border-radius:3px;background:transparent;padding:6px 10px;color:var(--muted)}.view-toggle button[aria-pressed=true]{color:var(--ink);background:var(--paper)}.index-mode:not(.scene-ready) .gallery-link{transform:rotate(0);width:43%;height:26%;left:3%;top:4%}.index-mode:not(.scene-ready) .g2{left:52%}.index-mode:not(.scene-ready) .g3{top:36%}.index-mode:not(.scene-ready) .g4{left:52%;top:36%}.index-mode:not(.scene-ready) .g5{top:68%}.work-grid>.offset{padding-top:140px}.work-image{position:relative}.project-open{position:absolute;bottom:20px;right:20px;padding:11px 18px;background:var(--paper);color:var(--ink);font-size:12px;border-radius:3px;opacity:0;transform:translateY(8px);transition:opacity .25s,transform .25s}.work-card:hover .project-open,.work-card:focus-visible .project-open{opacity:1;transform:none}.research-note{align-self:center;padding:10px 12%}.research-note h3{font-size:clamp(27px,3vw,43px);font-weight:420;line-height:1.2;letter-spacing:-.045em}.research-note>p:not(.eyebrow){margin:25px 0;color:var(--muted);line-height:1.7;max-width:320px}.section-end{margin-top:55px}.practice-strip{display:grid;grid-template-columns:1.1fr .8fr 1fr;gap:6%;align-items:start}.practice-piece img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.practice-piece a:hover img{transform:scale(1.035)}.practice-piece a>div{overflow:hidden;aspect-ratio:.83;background:var(--surface)}.practice-piece span{display:block;margin-top:17px;font-size:14px}.piece-1{padding-top:100px}.piece-2{padding-top:35px}.about-preview{background:var(--surface);display:grid;grid-template-columns:1.15fr 1fr;gap:12%;align-items:center}.about-preview h2{font-size:clamp(30px,3.5vw,48px);line-height:1.25;font-weight:420;letter-spacing:-.045em}.about-preview-copy p{font-size:16px;line-height:1.9;color:var(--muted);margin-bottom:18px}.inner-page{padding-top:100px}.page-intro{padding-top:80px;padding-bottom:65px}.page-intro h1,.about-heading h1,.contact-page h1{font-size:clamp(48px,6.5vw,92px);line-height:1.06;letter-spacing:-.065em;font-weight:420}.page-intro>p:last-child{font-size:18px;line-height:1.75;max-width:500px;margin-top:30px;color:var(--muted)}.work-index{padding-top:20px;background:var(--paper)}.research-cover{background:#dce3e0;color:#294034;padding:8%;display:flex;align-items:center}.research-cover>div{display:flex;flex-direction:column;gap:40px}.research-cover span,.research-cover small{font-size:12px}.research-cover strong{font-size:clamp(26px,3vw,48px);line-height:1.2;font-weight:400;letter-spacing:-.04em}.more-work{margin-top:110px}.more-work h2{font-size:24px;font-weight:420;margin-bottom:35px}.more-work>a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 0;border-bottom:1px solid var(--line)}.more-work>a>span:first-child{font-size:23px;letter-spacing:-.03em}.more-work>a>span:last-child{font-size:12px;color:var(--muted)}.back-link{font-size:13px;color:var(--muted);display:inline-block;margin-bottom:55px;border-bottom:1px solid var(--line);padding-bottom:5px}.case-intro{padding-top:50px;padding-bottom:0}.case-heading{display:grid;grid-template-columns:1.25fr 1fr;gap:10%;align-items:end}.case-heading h1{font-size:clamp(48px,6.5vw,92px);line-height:1.08;letter-spacing:-.06em;font-weight:420}.case-heading>p{font-size:clamp(22px,2.5vw,34px);line-height:1.35;letter-spacing:-.035em;max-width:380px;padding-bottom:4px}.case-summary{font-size:18px;color:var(--muted);line-height:1.8;max-width:730px;margin-top:40px}.case-facts{display:grid;grid-template-columns:1fr 1fr 1fr;gap:45px;margin:50px 0 60px;padding-top:25px;border-top:1px solid var(--line)}.case-facts dt{font-size:12px;color:var(--muted);margin-bottom:12px}.case-facts dd{margin:0;font-size:14px;line-height:1.7}.case-hero-image{overflow:hidden;background:var(--surface);aspect-ratio:1.65}.case-hero-image img{width:100%;height:100%;object-fit:cover}.case-body{max-width:1200px;margin:0 auto;padding:0 7% 100px}.case-section{margin-top:100px}.case-text{display:grid;grid-template-columns:.9fr 1fr;gap:11%;align-items:start}.case-text h2{font-size:clamp(28px,3vw,39px);font-weight:420;line-height:1.2;letter-spacing:-.04em}.case-text p{font-size:17px;color:var(--muted);line-height:1.9}.case-section figure{margin:50px 0 0}.case-section figure img{width:100%;height:auto}.case-section figcaption{font-size:12px;color:var(--muted);margin-top:15px;line-height:1.5}.case-actions{display:flex;gap:30px;align-items:center;margin-top:80px;flex-wrap:wrap}.solid-button{display:inline-block;background:var(--ink);color:var(--paper);padding:16px 22px;border-radius:3px;font-size:14px;transition:opacity .25s}.solid-button:hover{opacity:.8}.next-project{background:var(--surface);display:flex;flex-direction:column;gap:8px}.next-project>span:nth-child(2){font-size:clamp(40px,6vw,75px);letter-spacing:-.06em;line-height:1.2}.next-description{color:var(--muted);margin-top:15px;line-height:1.7}.nda-banner{padding:25px;background:var(--surface);line-height:1.7;font-size:14px}.about-page{display:grid;grid-template-columns:1.25fr .8fr;gap:10%;align-items:start;padding-top:80px}.about-lede{font-size:22px;line-height:1.6;max-width:540px;margin:38px 0 25px;letter-spacing:-.025em}.about-text p{font-size:16px;color:var(--muted);line-height:1.85;margin-bottom:20px}.portrait{padding-top:50px}.portrait img{width:100%;aspect-ratio:.76;object-fit:cover}.portrait span{display:block;margin-top:18px;font-size:12px;color:var(--muted);line-height:1.6}.experience{background:var(--surface)}.experience h2{font-size:clamp(32px,4vw,54px);font-weight:420;letter-spacing:-.04em;margin-bottom:60px}.experience-row{display:grid;grid-template-columns:.6fr 1fr 1fr;gap:35px;padding:30px 0;border-top:1px solid var(--line)}.experience-row>span{font-size:13px;color:var(--muted);padding-top:5px}.experience-row h3{font-size:20px;font-weight:450;line-height:1.5;letter-spacing:-.02em}.experience-row p{font-size:14px;line-height:1.8;color:var(--muted)}.experience-row>div p{margin-top:7px}.education-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:50px}.education-grid span{font-size:13px;color:var(--muted)}.education-grid h3{font-size:23px;line-height:1.4;font-weight:450;letter-spacing:-.025em;margin:20px 0 12px}.education-grid p{font-size:15px;line-height:1.7;color:var(--muted)}.art-grid{padding-top:15px;display:grid;grid-template-columns:1fr 1fr;gap:90px 10%;align-items:start}.art-item:nth-child(even){padding-top:110px}.art-item img{width:100%;max-height:650px;object-fit:cover;transition:transform .6s}.art-item a>div{overflow:hidden}.art-item a:hover img{transform:scale(1.025)}.art-item h2{font-size:20px;font-weight:450;line-height:1.5;letter-spacing:-.025em;margin-top:20px}.practice-note{background:var(--surface)}.practice-note>p{max-width:850px;font-size:clamp(24px,3.5vw,43px);line-height:1.4;letter-spacing:-.035em}.practice-note .text-link{margin-top:30px}.contact-page{padding-top:90px;padding-bottom:120px;min-height:80dvh}.contact-content{margin:45px 0 0 45%;max-width:550px}.contact-content>p{font-size:18px;color:var(--muted);line-height:1.8}.contact-actions{margin-top:35px;display:flex;align-items:center;flex-wrap:wrap;gap:20px}.contact-actions>a{font-size:clamp(24px,3vw,40px);letter-spacing:-.04em;border-bottom:1px solid var(--ink);padding-bottom:5px}.contact-actions button{background:none;border:1px solid var(--line);border-radius:3px;padding:10px 14px;font-size:12px}.contact-links{display:flex;gap:25px;font-size:14px;margin-top:35px;color:var(--muted)}
@media(max-width:900px){.work-grid>.offset{padding-top:100px}.research-note{padding:10px 4%}.about-preview{gap:7%}.case-heading{gap:5%}.case-heading>p{font-size:24px}.about-page{gap:7%}.experience-row{grid-template-columns:.55fr 1fr}.experience-row>p{grid-column:2}.contact-content{margin-left:25%}.education-grid{gap:25px}.hero-gallery{max-width:650px;width:100%;justify-self:center}}
@media(max-width:600px){.webgl-gallery{display:none}.work-grid>.offset{padding-top:0}.gallery-toolbar{bottom:-10px;left:0}.gallery-label{font-size:11px;max-width:160px}.gallery-link{box-shadow:0 15px 30px -20px #25302155}.view-toggle button{min-height:36px;padding:7px 9px}.research-note{padding:20px 0 0}.research-note h3{font-size:34px}.practice-strip{grid-template-columns:1fr 1fr;gap:25px}.piece-1{padding-top:75px}.piece-2{display:none}.about-preview{grid-template-columns:1fr;gap:35px}.about-preview h2{font-size:33px}.page-intro{padding-top:50px;padding-bottom:50px}.page-intro h1,.about-heading h1,.contact-page h1{font-size:49px}.page-intro>p:last-child{font-size:16px}.inner-page{padding-top:80px}.case-intro{padding-top:35px}.back-link{margin-bottom:35px}.case-heading{grid-template-columns:1fr;gap:24px}.case-heading h1{font-size:49px}.case-heading>p{font-size:24px;max-width:300px}.case-summary{font-size:16px;margin-top:25px}.case-facts{grid-template-columns:1fr;gap:22px;margin:30px 0}.case-facts>div{display:grid;grid-template-columns:1fr 2fr;gap:20px}.case-facts dt{margin:0}.case-hero-image{aspect-ratio:1.2}.case-section{margin-top:60px}.case-text{grid-template-columns:1fr;gap:22px}.case-text h2{font-size:30px}.case-text p{font-size:16px}.case-section figure{margin-top:30px}.case-body{padding:0 6% 65px}.case-actions{margin-top:50px}.about-page{grid-template-columns:1fr;padding-top:45px;gap:30px}.about-lede{font-size:21px;margin-top:25px}.portrait{padding-top:0;max-width:330px}.portrait img{aspect-ratio:.9}.experience-row{grid-template-columns:1fr;gap:12px}.experience-row>p{grid-column:1}.education-grid{grid-template-columns:1fr;gap:40px}.art-grid{gap:40px;grid-template-columns:1fr}.art-item:nth-child(even){padding-top:0}.art-item img{max-height:none}.art-item h2{font-size:19px}.contact-page{padding-top:55px;padding-bottom:75px}.contact-content{margin:35px 0 0}.contact-content>p{font-size:16px}.contact-actions>a{font-size:30px}.more-work{margin-top:65px}.more-work>a>span:first-child{font-size:20px}.more-work>a>span:last-child{max-width:110px;line-height:1.6}.footer-bottom>a{display:none}.header-end button{min-width:44px;min-height:44px}}
@media(min-width:901px){.hero{min-height:720px}.hero h1{font-size:clamp(55px,5.5vw,88px)}.hero-gallery{height:calc(100dvh - 180px);min-height:490px;max-height:650px}.hero .eyebrow{font-size:13px}}
@keyframes page-enter{from{opacity:.6;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){.inner-page{animation:page-enter .6s cubic-bezier(.2,.65,.3,1)}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
[hidden]{display:none!important}.creative-home{--paper:#fff;--ink:#171717;--muted:#777;--line:#eaeaea;background:#fff;color:#171717;overflow:hidden;height:100dvh}.creative-home #main-content{height:100%}.studio-header{position:absolute;top:15px;left:0;right:0;z-index:3000;height:30px;pointer-events:none}.studio-header .wordmark{position:absolute;left:calc(50% - 125px);font-size:14px;letter-spacing:-.5px;line-height:27px;pointer-events:auto}.studio-menu{position:absolute;right:23px;top:0;width:30px;height:30px;font-size:22px;line-height:25px;border:0;background:transparent;padding:0;pointer-events:auto;color:inherit}.site-header .studio-menu{position:static;font-size:26px}.studio-menu-panel{position:absolute;right:24px;top:58px;width:265px;padding:27px;background:var(--paper);border:1px solid var(--line);z-index:4000;box-shadow:0 12px 40px #00000008;display:flex;flex-direction:column;gap:23px;font-size:16px}.studio-menu-panel .theme-toggle{justify-content:flex-start;padding:10px 0 0;font-size:13px;color:var(--muted)}.creative-home .theme-toggle{display:none}.space-controls{position:absolute;left:50%;top:15px;transform:translateX(-56%);height:30px;display:flex;align-items:center;gap:4px;z-index:3000;font-size:14px;margin-left:38px}.space-controls>span{margin-right:5px;white-space:nowrap}.space-controls button{height:28px;min-width:25px;background:#fafafa;border:0;padding:2px 7px;color:#555;font-size:12px}.space-controls button[aria-pressed=true]{background:#efefef;color:#111}.space-controls button:hover{background:#e9e9e9}.creative-space{position:relative;width:100%;height:100dvh;overflow:hidden;touch-action:none;outline-offset:-8px;cursor:grab;user-select:none;-webkit-user-select:none}.creative-space.is-dragging,.creative-space.is-dragging a{cursor:grabbing}.space-cards{position:absolute;inset:0}.space-card{position:absolute;left:50%;top:51%;display:block;opacity:0;transform:translate(-50%,-50%) scale(0);will-change:transform;backface-visibility:hidden;cursor:pointer;background:#f6f6f6;outline-offset:5px}.space-card img{width:100%;height:100%;object-fit:cover;pointer-events:none}.space-card-caption{display:none}.space-card:focus-visible{outline:2px solid #345bb4}.creative-space[data-mode=index] .space-card-caption{display:block;position:absolute;top:calc(100% + 7px);left:-18px;right:-18px;text-align:center;font-size:10px;line-height:1.25;color:#333}.space-intro{position:absolute;left:9%;right:9%;top:50%;display:flex;align-items:center;justify-content:space-between;font-size:12px;opacity:0;pointer-events:none}.space-intro>span:nth-child(2){position:absolute;left:50%;transform:translateX(-50%)}.space-footer{position:absolute;left:26px;right:26px;bottom:19px;display:flex;align-items:center;justify-content:space-between;z-index:3000;pointer-events:none;font-size:11px;color:#747474}.space-footer>a{pointer-events:auto}.space-footer>a:hover{color:#171717}.space-status{position:absolute;left:50%;transform:translateX(-50%);max-width:65%;text-align:center;font-size:12px;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reveal-ready{opacity:0;transform:translateY(22px);transition:opacity .8s,transform .8s cubic-bezier(.2,.65,.3,1)}.revealed{opacity:1;transform:none}.art-item>p{font-size:13px;color:var(--muted);margin-top:7px}.work-grid>.work-card:nth-child(even){margin-top:110px}
@media(max-width:600px){.studio-header{top:16px}.studio-header .wordmark{left:22px;line-height:30px;font-size:15px}.studio-menu{right:16px}.space-controls{top:17px;left:50%;transform:translateX(-50%);margin-left:0;font-size:13px;gap:2px}.space-controls button{min-width:28px;height:30px}.space-controls>span{margin-right:4px}.space-intro{left:24px;right:24px;font-size:10px}.space-intro>span:last-child{max-width:100px;text-align:right;line-height:1.4}.space-footer{left:22px;right:22px;font-size:11px;bottom:23px}.space-status{bottom:32px;max-width:95%;width:95%;font-size:11px}.creative-space[data-mode=index] .space-card-caption{font-size:10px;left:-12px;right:-12px}.work-grid>.work-card:nth-child(even){margin-top:0}.studio-menu-panel{right:16px}.site-header .main-nav{display:none}}
@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none}.space-card{will-change:auto}}

.creative-space[data-mode=index] .space-card-caption{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:12px;line-height:1.25}
/* Responsive portrait keeps the supplied photograph's composition intact. */
.portrait{padding-top:20px}.portrait img{aspect-ratio:3/2;height:auto;object-fit:contain;width:100%}.about-page{grid-template-columns:1.05fr 1fr;gap:7%}.art-exhibition{max-width:440px;font-size:15px!important;line-height:1.7;color:var(--muted)}.case-heading h1,.work-meta h3{overflow-wrap:anywhere}.live-project{margin-top:70px;padding:30px;background:var(--surface)}.live-project h2{font-size:28px;font-weight:450;letter-spacing:-.03em;margin-bottom:15px}.live-project p{font-size:16px;line-height:1.7;color:var(--muted);margin-bottom:22px}.live-project button{border:0;min-height:44px}.live-project iframe{display:block;width:100%;height:650px;border:1px solid var(--line);margin-top:25px;background:#fff}.creative-space{touch-action:pinch-zoom}.creative-space[data-mode=index]{overflow-y:auto;touch-action:pan-y pinch-zoom;cursor:auto;overscroll-behavior-y:contain}.creative-space[data-mode=index] .space-cards{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:36px 30px;width:min(1000px,86%);margin:0 auto;padding:100px 0 90px;min-height:100%;align-content:center;align-items:start}.creative-space[data-mode=index] .space-card{position:relative;left:auto;top:auto;transform:none!important;opacity:1!important;width:100%!important;height:auto!important;aspect-ratio:auto;background:none;will-change:auto;text-align:center;padding:6px;min-height:44px}.creative-space[data-mode=index] .space-card img{width:100%;height:110px;object-fit:contain}.creative-space[data-mode=index] .space-card-caption{position:static;margin-top:10px;display:block;overflow:visible;line-height:1.45;font-size:13px;-webkit-line-clamp:unset}.space-footer{bottom:max(19px,env(safe-area-inset-bottom))}.studio-menu-panel{max-height:calc(100dvh - 90px);overflow-y:auto;overscroll-behavior:contain}.space-controls button,.studio-menu{touch-action:manipulation}.creative-home:has(.studio-menu[aria-expanded=true]) .creative-space{pointer-events:none}
@media(max-width:900px){.about-page{grid-template-columns:1fr;gap:30px}.portrait{max-width:660px;padding-top:0}.creative-space[data-mode=index] .space-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}}
@media(max-width:600px){.studio-header{top:max(12px,env(safe-area-inset-top))}.studio-header .wordmark{left:16px;line-height:44px}.studio-menu{width:44px;height:44px;right:7px}.space-controls{top:max(12px,env(safe-area-inset-top));height:44px;font-size:12px;gap:0}.space-controls button{min-width:40px;height:44px;padding:0}.space-controls>span{margin-right:5px}.space-footer{left:16px;right:16px}.space-footer>a{min-height:44px;display:flex;align-items:center}.space-status{bottom:43px}.studio-menu-panel{top:68px;right:14px;max-width:calc(100vw - 28px)}.studio-menu-panel>a{min-height:44px;display:flex;align-items:center}.studio-menu-panel{gap:10px}.creative-space[data-mode=index] .space-cards{width:90%;gap:24px 12px;padding:85px 0 110px}.creative-space[data-mode=index] .space-card img{height:85px}.creative-space[data-mode=index] .space-card-caption{font-size:12px}.live-project{padding:22px 16px}.live-project iframe{height:560px}.live-project h2{font-size:24px}.contact-actions button{min-height:44px}.portrait{width:100%;max-width:none}.case-heading h1{font-size:clamp(34px,10vw,49px)}.main-nav{display:none}}
@media(max-width:360px){.space-controls>span{font-size:11px}.space-controls button{min-width:36px}.studio-header .wordmark{left:12px}.space-controls{margin-left:3px}.studio-menu{right:2px}.creative-space[data-mode=index] .space-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}
@media(prefers-reduced-motion:reduce){.creative-space{cursor:auto}}
@media(max-width:600px){.about-page{display:flex;flex-direction:column;gap:25px}.about-heading{display:contents}.about-heading>.eyebrow{order:0;margin:0;align-self:flex-start}.about-heading>h1{order:1;align-self:flex-start}.about-heading>.about-lede{order:2;margin:0}.about-page>.portrait{order:3}.about-heading>.about-text{order:4}.about-heading>.text-link{order:5;align-self:flex-start}.about-page .portrait img{aspect-ratio:3/2}}
.creative-home:has(.creative-space[data-mode=index]) .studio-header:before{content:'';position:fixed;inset:0 0 auto;height:76px;background:#fff;z-index:-1}.creative-home:has(.creative-space[data-mode=index]) .space-footer{background:#fff;padding-top:8px}

/* Mobile intro labels sit outside the animated image ring. Desktop stays unchanged. */
@media(max-width:600px){
 .space-intro{inset:0;display:block;font-size:12px;text-align:center}
 .space-intro>span:first-child{position:absolute;top:88px;left:16px;right:16px}
 .space-intro>span:nth-child(2){display:none}
 .space-intro>span:last-child{position:absolute;bottom:88px;left:24px;right:24px;max-width:none;text-align:center;line-height:1.5}
}

.case-hero-image.project-image-natural{aspect-ratio:auto}.case-hero-image.project-image-natural img{height:auto;object-fit:contain}

.project-resources{display:flex;flex-wrap:wrap;gap:18px 30px;padding:35px 0;border-top:1px solid var(--line);margin-top:65px}.project-resources a{min-height:44px;display:inline-flex;align-items:center;font-size:15px;line-height:1.6}
.project-gallery{margin-top:65px}.project-gallery h2,.work-practice-heading h2{font-size:clamp(30px,4vw,48px);font-weight:450;letter-spacing:-.04em;line-height:1.2;margin-bottom:35px}.project-gallery-grid{display:grid;grid-template-columns:1fr;gap:28px}.project-gallery-grid figure{margin:0}.project-gallery-grid img{display:block;width:100%;height:auto;background:var(--surface)}.project-gallery-grid a{display:block;outline-offset:5px}.artwork-gallery{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.artwork-heading{grid-template-columns:1fr}.artwork-heading h1{max-width:1050px}.artwork-hero img{max-height:850px}.artwork-exhibition{font-size:17px;line-height:1.7;padding:24px 0;border-top:1px solid var(--line);margin-bottom:30px}.work-practice-heading{padding-bottom:0}.work-practice-heading h2{max-width:700px}
@media(max-width:600px){.artwork-gallery{grid-template-columns:1fr}.project-gallery{margin-top:45px}.project-resources{gap:10px 25px;margin-top:45px}.project-resources a{font-size:14px}.artwork-exhibition{font-size:16px}.project-gallery-grid{gap:20px}}
/* Intrinsic dimensions reserve image space before lazy loading. */
img{height:auto}

/* Work follows the reference's edge-to-edge, three-column project index. */
body:has(.work-collection){background:#fff;color:#171717}
.work-collection-intro{height:198px;display:flex;align-items:center;justify-content:center;padding:30px 20px 15px;text-align:center}
.work-collection-intro h1{font-size:16px;font-weight:450;line-height:1.5;letter-spacing:-.035em}
.work-collection-intro em{font-family:Georgia,'Times New Roman',serif;font-style:normal;letter-spacing:-.025em}
.work-collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:46px 8px;padding:0 8px 100px}
.work-tile{min-width:0;display:block;outline-offset:3px}
.work-tile-image{position:relative;overflow:hidden;aspect-ratio:3/4;background:#f3f3f3}
.work-tile-image img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.65,.3,1)}
.work-tile-caption{padding:11px 1px 0}
.work-tile-caption h2{font-size:13px;line-height:1.4;font-weight:500;letter-spacing:-.025em;overflow-wrap:anywhere}
.work-tile-caption p{font-family:Georgia,'Times New Roman',serif;font-size:14px;line-height:1.4;margin-top:2px}
.work-tile-view{position:absolute;bottom:18px;right:18px;padding:8px 12px;background:#fff;color:#171717;font-size:12px;opacity:0;transform:translateY(5px);transition:opacity .25s,transform .25s}
.work-tile:focus-visible .work-tile-view{opacity:1;transform:none}
@media(hover:hover) and (pointer:fine){.work-tile:hover img{transform:scale(1.035)}.work-tile:hover .work-tile-view{opacity:1;transform:none}}
@media(min-width:601px) and (max-width:900px){.work-collection{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.work-collection-intro{height:165px;padding:22px 35px}.work-collection-intro h1{max-width:300px;font-size:16px}.work-collection-intro em{display:block}.work-collection{grid-template-columns:1fr;gap:34px;padding:0 10px 65px}.work-tile-image{aspect-ratio:4/5}.work-tile-caption h2{font-size:15px}.work-tile-caption p{font-size:15px}}
[data-theme=dark] body:has(.work-collection){background:var(--paper);color:var(--ink)}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) body:has(.work-collection){background:var(--paper);color:var(--ink)}}
@media(prefers-reduced-motion:reduce){.work-tile-image img,.work-tile-view{transition:none}}

/* Direct desktop home navigation; compact menu remains on touch-sized layouts. */
.studio-header .main-nav{display:none}
.space-controls{margin-left:0;transform:translateX(-50%)}
@media(min-width:601px){.studio-header .wordmark{left:26px}}
@media(min-width:901px){
 .studio-header{height:44px}
 .studio-header .wordmark{line-height:44px}
 .studio-header .main-nav{position:absolute;right:26px;top:0;height:44px;display:flex;gap:26px;pointer-events:auto;font-size:13px}
 .studio-header .main-nav a{display:flex;align-items:center;min-height:44px;padding:0}
 .studio-header .studio-menu,.creative-home #site-menu{display:none!important}
 .space-controls{left:85px;transform:none;height:44px;margin-left:0}
 .space-controls button{height:32px;min-width:30px}
}

/* Curved glass: each edge bends an 8vh band, with spectral dispersion. */
.viewport-glass{position:fixed;inset:0;z-index:2500;pointer-events:none}
.viewport-glass::before,.viewport-glass::after{content:'';position:absolute;left:0;right:0;height:9.6vh;background:transparent;pointer-events:none;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);-webkit-mask-image:linear-gradient(to bottom,#000,transparent);mask-image:linear-gradient(to bottom,#000,transparent)}
.viewport-glass::before{top:0}
.viewport-glass::after{bottom:0;transform:rotate(180deg)}
.glass-refraction-ready .viewport-glass::before,.glass-refraction-ready .viewport-glass::after{-webkit-mask-image:none;mask-image:none;transform:none}
.glass-refraction-ready .viewport-glass::before{-webkit-backdrop-filter:url(#edge-lens-top);backdrop-filter:url(#edge-lens-top)}
.glass-refraction-ready .viewport-glass::after{-webkit-backdrop-filter:url(#edge-lens-bottom);backdrop-filter:url(#edge-lens-bottom)}
.site-header{z-index:3000}
.space-footer{z-index:3000}
.work-tile-image img,.art-item a img{transition:transform .65s cubic-bezier(.2,.65,.3,1),filter .35s ease}
.space-card img{transition:filter .3s ease}
@media(hover:hover) and (pointer:fine){
 .work-tile:hover .work-tile-image img,.art-item a:hover img{filter:brightness(.82) blur(2px)}
 .space-card:hover img{filter:brightness(.82) blur(.85px)}
}
.work-tile:focus-visible .work-tile-image img,.art-item a:focus-visible img{filter:brightness(.82) blur(2px)}
.space-card:focus-visible img{filter:brightness(.82) blur(.85px)}

@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.viewport-glass::before,.viewport-glass::after{background:var(--paper);opacity:.22}}
@media(prefers-reduced-motion:reduce){.work-tile-image img,.art-item a img,.space-card img{transition:none}}
