@font-face{font-family:"Bodoni Moda";src:url('/assets/fonts/bodoni-moda.woff2') format('woff2');font-style:normal;font-weight:400 500;font-display:swap}
@font-face{font-family:Manrope;src:url('/assets/fonts/manrope.woff2') format('woff2');font-style:normal;font-weight:400 600;font-display:swap}
:root{
  --stone:#EAE6DD;--ink:#243D32;--white:#FFFFFF;--sand:#B9A993;--warm-white:#F3F0E9;--muted:#586257;--border:#C6C8BC;--dark-stone:#D8D4C9;
  --shadow:rgba(36,61,50,.16);--soft-shadow:rgba(36,61,50,.08);--light:rgba(255,255,255,.52);
  --display:"Bodoni Moda",Georgia,serif;--body:Manrope,Arial,sans-serif;
  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;
  --gutter:clamp(24px,4.6vw,80px);--max-width:1440px;--ease:cubic-bezier(.2,.65,.25,1);
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--s6)}body{margin:0;background:var(--stone);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{max-width:100%;display:block}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.3}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}::selection{background:var(--ink);color:var(--stone)}a:focus-visible,button:focus-visible{outline:2px solid var(--ink);outline-offset:6px}.skip-link{position:fixed;left:var(--s5);top:var(--s5);transform:translateY(-180%);z-index:10;background:var(--ink);color:var(--white);padding:var(--s3) var(--s5)}.skip-link:focus{transform:none}
.site-header{height:96px;padding:var(--s5) var(--gutter);display:flex;align-items:center;justify-content:space-between;position:relative;z-index:3;max-width:1720px;margin:auto}.wordmark{font-size:24px;letter-spacing:-1.5px;font-weight:600;line-height:1}.wordmark span{font-weight:400}.site-header nav{display:flex;align-items:center;gap:var(--s7);font-size:13px}.site-header nav>a{min-height:44px;display:flex;align-items:center;gap:var(--s4)}.site-header nav>a:hover{text-decoration:underline;text-underline-offset:5px}.nav-contact{margin-left:var(--s6)}.nav-contact svg{width:18px;height:18px}
.exhibition{position:relative;overflow:hidden}.hero-intro{position:relative;z-index:2;padding:var(--s7) var(--gutter) 0;display:flex;justify-content:space-between;gap:var(--s7);max-width:1720px;margin:auto}.hero-intro h1{font-family:var(--display);font-size:clamp(52px,5.6vw,88px);line-height:1.05;letter-spacing:-3px;font-optical-sizing:auto}.hero-note{max-width:230px;padding-top:var(--s5);font-family:var(--display);font-size:21px;line-height:1.4}.hero-note .text-link{margin-top:var(--s6);white-space:nowrap}.text-link{font-family:var(--body);font-size:13px;display:inline-flex;align-items:center;gap:var(--s4);min-height:44px}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.line-icon{display:inline-block;width:32px;height:1px;background:currentColor}
.gallery{height:clamp(420px,54vh,620px);max-width:1720px;margin:var(--s4) auto 0;position:relative;isolation:isolate}.gallery-canvas{position:absolute;inset:0;pointer-events:none}.gallery-canvas canvas{display:block;width:100%;height:100%}.exhibits{position:absolute;inset:0;perspective:1400px}.exhibit{position:absolute;width:23%;height:80%;top:4%;display:block;background:var(--warm-white);box-shadow:14px 8px 0 var(--dark-stone),35px 34px 30px var(--shadow);transform-style:preserve-3d;transition:transform 350ms var(--ease);border:1px solid var(--light)}.exhibit-one{left:10%;transform:rotateY(16deg) translateY(24px)}.exhibit-two{left:39%;transform:rotateY(-10deg);height:87%}.exhibit-three{left:69%;transform:rotateY(-20deg) translateY(32px)}.exhibit:hover{transform:rotateY(0) translateY(-4px)}.exhibit-content{height:100%;padding:var(--s5);display:flex;flex-direction:column;gap:var(--s2);overflow:hidden}.exhibit-title{font-family:var(--display);font-size:clamp(26px,2.5vw,42px);line-height:1.07;letter-spacing:-1px}.exhibit-category{font-size:11px;margin-bottom:var(--s4);color:var(--muted)}.exhibit img{width:100%;object-fit:cover;object-position:top;aspect-ratio:1.1;margin-top:auto;box-shadow:0 4px 16px var(--soft-shadow)}.exhibit-bottom{display:flex;justify-content:space-between;align-items:center;font-size:11px;padding-top:var(--s3)}.gallery-live .exhibits{perspective:none}.gallery-live .exhibit{top:0;left:0;transform:none;background:none;box-shadow:none;border:none;transition:none}.gallery-live .exhibit-content{opacity:0}.gallery-live .exhibit:focus-visible{outline:2px solid var(--ink);background:var(--soft-shadow)}.gallery-caption{position:absolute;bottom:var(--s4);left:var(--gutter);font-family:var(--display);font-size:15px;font-style:italic;pointer-events:none}.motion-toggle{position:absolute;right:var(--gutter);bottom:var(--s2);border:0;background:transparent;text-decoration:underline;text-underline-offset:4px;font-size:11px;min-height:44px;cursor:pointer}.exhibition-bottom{margin:0 var(--gutter);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;padding:var(--s4) 0 var(--s5);font-size:11px}.exhibition-bottom>a{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
.section-shell{padding:var(--s9) var(--gutter);max-width:1720px;margin:auto}.section-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--s9);align-items:end;margin-bottom:var(--s8)}.section-intro h2,.about-section h2{font-family:var(--display);font-size:clamp(38px,4.2vw,64px);line-height:1.12;letter-spacing:-1.5px}.section-intro p{font-size:15px;max-width:360px;margin-left:auto;color:var(--muted)}.work-list{border-top:1px solid var(--border)}.work-row{display:grid;grid-template-columns:1.1fr 1.2fr .65fr 24px;gap:var(--s5);align-items:center;padding:var(--s6) 0;border-bottom:1px solid var(--border);min-height:105px;transition:color 150ms var(--ease)}.work-row:hover .work-name{transform:translateX(8px)}.work-name{font-family:var(--display);font-size:32px;line-height:1.1;transition:transform 250ms var(--ease)}.work-description,.work-type{font-size:12px;color:var(--muted)}.work-type{justify-self:end}.open-icon{font-size:24px;line-height:1}.about-section{border-top:1px solid var(--border);display:grid;grid-template-columns:1fr 1.65fr;gap:var(--s8)}.section-label{font-size:13px}.about-section h2{margin-bottom:var(--s7)}.about-section div>p{max-width:540px;font-size:16px;margin-bottom:var(--s5);color:var(--muted)}.about-section .text-link{margin-top:var(--s4)}
.contact-section{background:var(--ink);color:var(--stone);max-width:none;padding-top:var(--s8);padding-bottom:var(--s8)}.contact-section>p{font-size:13px;margin-bottom:var(--s5)}.contact-headline{display:flex;justify-content:space-between;align-items:center;gap:var(--s6);max-width:var(--max-width);min-height:44px}.contact-headline h2{font-family:var(--display);font-size:clamp(56px,8vw,120px);line-height:1.05;letter-spacing:-3px}.contact-headline svg{width:clamp(48px,9vw,140px);height:clamp(48px,9vw,140px);stroke-width:.65;transition:transform 250ms var(--ease)}.contact-headline:hover svg{transform:translate(8px,-8px)}.contact-email{display:inline-flex;align-items:center;min-height:44px;font-size:15px;margin-top:var(--s7);text-decoration:underline;text-underline-offset:6px}.contact-section a:focus-visible{outline-color:var(--stone)}.site-footer{padding:var(--s7) var(--gutter);display:flex;gap:var(--s5);align-items:center;justify-content:space-between;font-size:11px}.site-footer .wordmark{font-size:20px}
.case-header{padding:var(--s7) var(--gutter) var(--s8);max-width:1720px;margin:auto}.back-link{font-size:12px;display:inline-flex;align-items:center;gap:var(--s4);min-height:44px;margin-bottom:var(--s7)}.case-kicker{font-size:13px;color:var(--muted);margin-bottom:var(--s4)}.case-header h1{font-family:var(--display);font-size:clamp(52px,7vw,108px);line-height:1.1;letter-spacing:-3px;max-width:1000px}.case-lead{font-size:18px;max-width:620px;margin-top:var(--s6)}.case-cover{margin:0 var(--gutter);padding:var(--s7);background:var(--dark-stone)}.case-cover img{width:100%;height:auto;box-shadow:0 12px 48px var(--shadow);view-transition-name:project-image}.case-story{display:grid;grid-template-columns:1fr 1.5fr;gap:var(--s8)}.case-story h2{font-family:var(--display);font-size:40px;line-height:1.15}.case-story p{max-width:650px;margin-bottom:var(--s5)}.case-meta{display:grid;grid-template-columns:1fr 1fr;gap:var(--s5);margin:0 0 var(--s8)}.case-meta dt{font-size:12px;color:var(--muted)}.case-meta dd{margin:var(--s2) 0 0;font-size:15px}.case-details{display:grid;grid-template-columns:1.7fr .65fr;gap:var(--s8);align-items:start;padding-top:0}.case-desktop img{width:100%;height:auto}.case-mobile{padding:var(--s6);background:var(--dark-stone);border-radius:28px}.case-mobile img{width:100%;border-radius:12px}.case-details figcaption{margin-top:var(--s4);font-size:12px;color:var(--muted)}.case-details figure{margin:0}.next-project{display:flex;align-items:center;justify-content:space-between;gap:var(--s5);border-top:1px solid var(--border)}.next-project h2{font-family:var(--display);font-size:clamp(38px,4vw,64px)}.next-project p{font-size:12px;margin-bottom:var(--s3)}.not-found{padding:var(--s9) var(--gutter)}.not-found h1{font-family:var(--display);font-size:64px;margin:var(--s6) 0}.not-found p{margin-bottom:var(--s5)}
.exhibit picture{display:flex;align-items:center;width:100%;margin-top:auto;flex:1;min-height:0}.exhibit picture img{margin-top:0;width:100%;height:100%;object-fit:contain;aspect-ratio:auto}.exhibit-title,.exhibit-category,.exhibit-bottom{flex-shrink:0}
@media(min-width:1720px){.section-shell{padding-left:80px;padding-right:80px}.contact-section{padding-left:max(80px,calc((100vw - 1560px)/2));padding-right:max(80px,calc((100vw - 1560px)/2))}}
@media(max-width:1024px){.site-header nav{gap:var(--s5)}.nav-contact{margin-left:0}.hero-intro h1{font-size:58px;letter-spacing:-2px}.hero-note{font-size:18px;max-width:190px}.gallery{height:460px}.exhibit-content{padding:var(--s4)}.exhibit-category{font-size:10px}.section-intro{gap:var(--s7)}.work-row{grid-template-columns:1.1fr 1fr 24px}.work-type{display:none}.about-section{grid-template-columns:.65fr 1.5fr}.case-details{gap:var(--s7)}.section-shell{padding-top:var(--s8);padding-bottom:var(--s8)}}
@media(max-width:700px){.site-header{height:80px}.wordmark{font-size:22px}.site-header nav{gap:var(--s5)}.site-header nav>a:not(.nav-contact){display:none}.nav-contact{font-size:11px;gap:var(--s2)}.hero-intro{display:block;padding-top:var(--s6)}.hero-intro h1{font-size:clamp(43px,8.2vw,58px);letter-spacing:-1.6px;line-height:1.12}.hero-note{display:flex;align-items:center;justify-content:space-between;max-width:none;gap:var(--s5);padding-top:var(--s5);font-family:var(--body);font-size:12px}.hero-note .text-link{margin:0;font-size:11px;gap:var(--s2)}.hero-note .line-icon{width:20px}.gallery{height:auto;min-height:330px;margin-top:var(--s6);padding:var(--s4) var(--gutter) var(--s7)}.exhibits{position:relative;display:flex;gap:var(--s4);perspective:900px;align-items:flex-end}.exhibit{position:relative;left:auto;top:auto;width:calc((100% - 32px)/3);height:260px;box-shadow:5px 2px 0 var(--dark-stone),10px 12px 18px var(--shadow);flex-shrink:0}.exhibit-one{transform:rotateY(10deg) translateY(12px)}.exhibit-two{height:286px;transform:rotateY(-8deg)}.exhibit-three{transform:rotateY(-14deg) translateY(16px)}.exhibit-content{padding:var(--s3) var(--s2);gap:var(--s2)}.exhibit-title{font-size:clamp(17px,4.5vw,25px);letter-spacing:-.5px}.exhibit-category{font-size:9px;line-height:1.25;margin-bottom:var(--s2);overflow-wrap:anywhere}.exhibit img{aspect-ratio:.62;object-fit:cover;object-position:left top}.exhibit-bottom{font-size:9px;line-height:1.2;gap:var(--s1);padding-top:var(--s2)}.gallery-caption{font-size:12px;bottom:0}.exhibition-bottom{padding-top:var(--s3);padding-bottom:var(--s3);font-size:10px}.exhibition-bottom>span:last-child{max-width:95px;text-align:right}.section-intro{display:block;margin-bottom:var(--s7)}.section-intro h2,.about-section h2{font-size:40px;letter-spacing:-1px}.section-intro p{margin:var(--s5) 0 0;max-width:350px;font-size:14px}.work-row{grid-template-columns:1fr 24px;gap:var(--s3);padding:var(--s5) 0}.work-name{font-size:29px}.work-description{grid-column:1;grid-row:2;font-size:11px}.work-row .open-icon{grid-column:2;grid-row:1 / 3}.about-section{display:block}.section-label{margin-bottom:var(--s6)}.about-section h2{margin-bottom:var(--s6)}.about-section div>p{font-size:14px}.contact-headline h2{font-size:60px;letter-spacing:-2px}.contact-headline svg{width:56px;height:56px}.site-footer{flex-wrap:wrap;padding-top:var(--s6);padding-bottom:var(--s6)}.site-footer>span:nth-child(2){order:3;width:100%;font-size:10px}.case-header{padding-top:var(--s6);padding-bottom:var(--s7)}.case-header h1{font-size:52px;letter-spacing:-2px}.case-lead{font-size:16px}.case-cover{margin:0;padding:var(--s5)}.case-story{display:block}.case-story h2{margin-bottom:var(--s6)}.case-story p{font-size:14px}.case-details{display:block}.case-mobile{max-width:260px;margin:var(--s7) auto 0!important;padding:var(--s4)}.case-meta{margin-bottom:var(--s7)}.next-project h2{font-size:36px}.not-found h1{font-size:46px}}
@media(max-width:360px){:root{--gutter:20px}.hero-intro h1{font-size:39px}.hero-note{gap:var(--s3)}.exhibits{gap:var(--s3)}.exhibit{width:calc((100% - 24px)/3)}.exhibit-title{font-size:16px}.contact-headline h2{font-size:50px}.site-header nav{gap:var(--s3)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.exhibit:hover{transform:inherit}.work-row:hover .work-name,.contact-headline:hover svg{transform:none}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
