:root{--ink:#111923;--paper:#f7f5ee;--muted:#656963;--line:#d8d8d0;--gutter:clamp(24px,5.55vw,100px);--serif:Didot,'Bodoni MT','Times New Roman',serif;--sans:'Avenir Next',Avenir,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible{outline:2px solid currentColor;outline-offset:7px}.skip{position:fixed;top:-80px;left:20px;background:var(--paper);padding:12px;z-index:20}.skip:focus{top:12px}
.header{height:112px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:32px;position:absolute;top:0;left:0;width:100%;z-index:10;color:var(--paper)}.wordmark{font-size:15px;line-height:1.45;letter-spacing:3px}.header nav{display:flex;gap:38px;margin-left:auto;margin-right:64px}.header nav a{font-size:14px;letter-spacing:1px}.header nav a:hover{opacity:.65}.languages{display:flex;gap:10px;align-items:center;font-size:14px}.languages button{background:none;padding:8px 0;opacity:.5}.languages .active{opacity:1;border-bottom:1px solid currentColor}.languages span{opacity:.35}.menu-toggle{display:none}.mobile-nav[hidden]{display:none}
.hero{position:relative;min-height:760px;height:100svh;max-height:1120px;background:#111923;color:var(--paper);overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 44%}.hero-copy{position:absolute;left:var(--gutter);bottom:25%;z-index:1}.hero h1{font:400 clamp(70px,7.5vw,132px)/.97 var(--serif);letter-spacing:-.055em}.hero-copy p{margin-top:30px;font-size:clamp(18px,1.65vw,26px);letter-spacing:.06em}.hero-bottom{position:absolute;bottom:48px;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:center;font-size:13px;letter-spacing:2px}.hero-bottom a{border-bottom:1px solid #aaa;padding-bottom:7px;font-size:14px;letter-spacing:1px}
.section{padding:130px var(--gutter)}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:85px}.section-heading h2{font:400 clamp(40px,4vw,64px)/1.1 var(--serif);letter-spacing:-.035em}.section-heading>span{font-size:14px;letter-spacing:1px}.gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:32px;row-gap:130px}.artwork{display:block;width:100%;padding:0;background:transparent;text-align:left;align-self:start}.work-origin{grid-column:1/8}.work-happiness{grid-column:9/13;padding-top:150px}.image-space{overflow:hidden}.image-space img{width:100%;height:auto;transition:transform .8s ease}.artwork:hover .image-space img{transform:scale(1.018)}.work-label{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:22px}.work-label h3{font:400 38px/1.15 var(--serif);letter-spacing:-1px}.work-label>span{font-size:14px}.work-meta{display:flex;justify-content:space-between;gap:12px;margin-top:8px;color:var(--muted);font-size:14px}
.hero-image{object-position:center top}.work-love{grid-column:2/6}.work-architect{grid-column:8/13;padding-top:160px}.work-luminance{grid-column:2/8}.gallery-note{grid-column:9/13;align-self:center;font:400 clamp(30px,3vw,50px)/1.15 var(--serif);letter-spacing:-.025em}.works{padding-bottom:150px}.about{border-top:1px solid var(--line);display:grid;grid-template-columns:5fr 6fr;gap:clamp(50px,8vw,140px);align-items:start}.about-portrait{position:sticky;top:50px}.about-portrait img{width:100%;height:auto}.about-portrait>span{display:block;font-size:13px;margin-top:20px;color:var(--muted)}.eyebrow{font-size:13px;letter-spacing:1.5px;text-transform:uppercase}.about h2{font:400 clamp(39px,3.65vw,62px)/1.05 var(--serif);letter-spacing:-.035em;margin:28px 0 42px}.biography{max-width:600px;font-size:17px;line-height:1.8}.biography p+p{margin-top:24px}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:5px;font-size:15px;background:none}.portfolio-link{margin-top:40px}.contact-section{background:var(--ink);color:var(--paper);padding:110px var(--gutter) 70px}.contact-section .eyebrow{color:#b9c1ca}.contact-section h2{font:400 clamp(54px,7.4vw,114px)/1.08 var(--serif);letter-spacing:-.035em;margin:48px 0 80px}.contact-bottom{display:flex;align-items:end;justify-content:space-between;gap:32px}.contact-main{font-size:22px;border-bottom:1px solid #7e858d;padding-bottom:8px}.socials{display:flex;gap:30px;font-size:14px}.socials a:hover{opacity:.65}footer{background:var(--ink);color:#b9c1ca;border-top:1px solid #ffffff1a;padding:25px var(--gutter);display:flex;justify-content:space-between;gap:24px;font-size:12px}
.art-dialog{margin:0;border:0;padding:60px 70px;background:var(--ink);color:var(--paper);width:100vw;max-width:none;height:100dvh;max-height:none;overflow:auto}.art-dialog[open]{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:70px}.art-dialog::backdrop{background:#111923}.dialog-close{position:fixed;z-index:2;top:26px;right:30px;background:none;width:36px;height:36px;padding:0}.dialog-close span{display:block;position:absolute;top:17px;left:4px;width:28px;height:1px;background:var(--paper);transform:rotate(45deg)}.dialog-close span+span{transform:rotate(-45deg)}.dialog-canvas{height:calc(100dvh - 120px);overflow:auto;display:flex;align-items:center;justify-content:center;scrollbar-width:thin;scrollbar-color:#68717a transparent}.zoom-image{padding:0;background:none;width:100%;height:100%;display:flex;align-items:center;justify-content:center;cursor:zoom-in}.dialog-image{max-height:100%;max-width:100%;width:auto;height:auto;object-fit:contain}.dialog-canvas.zoomed{display:block}.zoomed .zoom-image{width:180%;height:auto;min-height:100%;cursor:zoom-out}.zoomed .dialog-image{width:100%;max-height:none}.dialog-info{align-self:center;padding:20px 0}.dialog-info h2{font:400 clamp(45px,5vw,72px)/1.05 var(--serif);letter-spacing:-2px;margin:24px 0 25px}.dialog-count{font-size:13px;letter-spacing:2px;color:#b9c1ca}.dialog-year{margin-bottom:38px}.dialog-medium,.dialog-size{font-size:16px}.dialog-status{font-size:15px;color:#b9c1ca;margin:45px 0 14px;max-width:260px}.zoom-toggle{display:block;margin-top:36px;color:#b9c1ca}.dialog-pagination{display:flex;justify-content:space-between;gap:20px;margin-top:60px;padding-top:24px;border-top:1px solid #ffffff26}.dialog-pagination button{background:none;padding:0;font-size:14px}.dialog-pagination button:hover{opacity:.6}body.dialog-open{overflow:hidden}.inquiry[hidden]{display:none}
@media(min-width:1800px){.section{max-width:1800px;margin:auto}}
@media(max-width:900px){.header nav{margin-right:12px;gap:24px}.hero{min-height:720px}.hero-copy{bottom:25%}.hero h1{font-size:80px}.section{padding-top:90px;padding-bottom:90px}.section-heading{margin-bottom:55px}.gallery{gap:70px 24px}.work-happiness{grid-column:9/13;padding-top:100px}.work-label h3{font-size:30px}.work-meta{flex-wrap:wrap;gap:0 12px}}
@media(max-width:620px){html{scroll-padding-top:24px}.header{height:95px;gap:20px}.wordmark{font-size:12px;letter-spacing:2px}.header nav{display:none}.languages{margin-left:auto;font-size:13px;gap:8px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:32px;height:40px;background:none;padding:0}.menu-toggle span{height:1px;width:25px;background:currentColor;transition:transform .25s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav{position:fixed;inset:0;z-index:9;background:var(--ink);color:var(--paper);display:flex;flex-direction:column;justify-content:center;padding:var(--gutter);gap:22px}.mobile-nav a{font:42px/1.2 var(--serif)}body.menu-open{overflow:hidden}body.menu-open .header{position:fixed}.hero{height:100svh;min-height:690px;max-height:950px}.hero-image{object-position:71% center;opacity:.85}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,17,25,.88),transparent 70%)}.hero-copy{bottom:21%;right:24px;z-index:2}.hero h1{font-size:clamp(44px,11.9vw,74px);line-height:1.06}.hero-copy p{font-size:16px;margin-top:22px;letter-spacing:.015em}.hero-bottom{z-index:2;bottom:30px;align-items:flex-end;gap:30px;font-size:11px;letter-spacing:1px}.hero-bottom a{font-size:13px;white-space:nowrap}.section{padding-top:68px;padding-bottom:68px}.section-heading{margin-bottom:42px;gap:20px}.section-heading h2{font-size:39px}.section-heading>span{font-size:12px;white-space:nowrap}.gallery{display:block}.artwork{margin-bottom:64px}.work-happiness{padding-top:0;width:85%;margin-left:auto}.work-label h3{font-size:33px}.work-meta{font-size:14px}.work-label{margin-top:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media(max-width:1000px){.art-dialog{padding:65px 30px 35px}.art-dialog[open]{gap:35px;grid-template-columns:minmax(0,1fr) 250px}.dialog-info h2{font-size:48px}.about{gap:50px}.biography{font-size:16px}.work-architect{padding-top:90px}}
@media(max-width:620px){.work-love{width:82%;margin-left:0}.work-architect{padding-top:0;width:90%;margin-left:auto}.work-luminance{width:90%;margin-left:0}.gallery-note{font-size:37px;padding:20px 0 0 15%;margin-bottom:0}.works{padding-bottom:75px}.about{display:block}.about-portrait{position:static;width:82%;margin-bottom:48px}.about-portrait>span{font-size:12px}.about h2{font-size:43px;margin:24px 0 30px}.biography{font-size:16px;line-height:1.8}.contact-section{padding:72px var(--gutter) 50px}.contact-section .eyebrow{font-size:11px;max-width:230px;line-height:1.7}.contact-section h2{font-size:clamp(39px,10.5vw,64px);margin:38px 0 50px}.contact-bottom{display:block}.contact-main{font-size:19px}.socials{margin-top:35px}.art-dialog[open]{display:block}.art-dialog{padding:64px 24px 30px}.dialog-close{top:14px;right:18px}.dialog-canvas{height:52svh;min-height:260px}.dialog-info{padding:28px 0 0}.dialog-info h2{font-size:48px;margin:13px 0}.dialog-year{margin-bottom:20px}.dialog-status{margin-top:25px}.zoom-toggle{margin-top:25px}.dialog-pagination{margin-top:35px}.dialog-count{font-size:12px}footer{font-size:10px}.work-meta{gap:2px 10px}}
