:root{
  --paper:#f7f6f2; --ink:#181818; --muted:#77736c; --line:#d9d6cf;
  --max:1600px; --pad:5vw;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-gutter:stable}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
img{max-width:100%;display:block}
a{color:inherit}
.site-header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad);border-bottom:1px solid rgba(0,0,0,.08);background:rgba(247,246,242,.97);position:relative;z-index:10}
.brand{font-size:14px;text-transform:uppercase;letter-spacing:.13em;text-decoration:none;white-space:nowrap}
.nav{display:flex;gap:28px;align-items:center;font-size:12px;text-transform:uppercase;letter-spacing:.12em}
.nav a{text-decoration:none}
.nav a.active{border-bottom:1px solid var(--ink);padding-bottom:5px}
.page{max-width:var(--max);margin:auto;padding:72px var(--pad) 110px}
.page-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;align-items:end;margin-bottom:84px}
.display{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(56px,8vw,118px);line-height:.88;letter-spacing:-.045em}
.intro-copy{border-top:1px solid var(--line);padding-top:18px;color:var(--muted);font-size:12px;line-height:1.7}
.eyebrow{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.16em}
.rule{border-top:1px solid var(--line)}
.footer{max-width:var(--max);margin:0 auto;padding:22px var(--pad) 45px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.14em}

/* Home */
.home-page{max-width:var(--max);margin:auto;padding:58px var(--pad) 48px}
.home-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:5vw;align-items:stretch;min-height:calc(100vh - 198px)}
.home-image{overflow:hidden;background:#e7e4de}
.home-image img{width:100%;height:100%;object-fit:cover}
.home-image--interior{align-self:start;background:transparent}
.home-image--interior img{height:auto;object-fit:contain}
.home-copy{display:flex;flex-direction:column;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px}
.home-top,.home-bottom{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.16em}
.home-bottom{border-top:1px solid var(--line);padding-top:18px;align-items:flex-end}
.home-quote{font-family:Georgia,"Times New Roman",serif;font-size:clamp(30px,3.2vw,54px);line-height:1.2;letter-spacing:-.03em;margin:50px 0}
.home-quote small{display:block;margin-top:28px;font-family:Arial,Helvetica,sans-serif;font-size:10px;line-height:1.6;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
.circle-link{width:58px;height:58px;border:1px solid var(--ink);border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:18px}

/* Artwork */
.gallery-hint{margin-bottom:34px;display:flex;justify-content:space-between;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.15em}
.art-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:66px 28px;align-items:start}
.art-card:nth-child(7n+1){grid-column:1/span 7}
.art-card:nth-child(7n+2){grid-column:9/span 4;margin-top:110px}
.art-card:nth-child(7n+3){grid-column:1/span 4}
.art-card:nth-child(7n+4){grid-column:5/span 4;margin-top:110px}
.art-card:nth-child(7n+5){grid-column:9/span 4}
.art-card:nth-child(7n+6){grid-column:1/span 5}
.art-card:nth-child(7n+7){grid-column:7/span 6;margin-top:115px}
.art-card{margin:0}
.art-card a{text-decoration:none}
.art-image{position:relative;overflow:hidden;background:#ebe8e1}
.art-image .clean{width:100%;position:relative;z-index:1;transition:opacity .45s ease,transform .55s ease}
.art-image .room{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;z-index:2;transition:opacity .45s ease,transform .55s ease}
.art-card.has-room .art-image:hover .clean{opacity:0}
.art-card.has-room .art-image:hover .room{opacity:1;transform:scale(1.01)}
.insitu{position:absolute;right:10px;bottom:10px;z-index:3;padding:7px 9px;background:rgba(247,246,242,.93);font-size:8px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}
.art-meta{display:flex;justify-content:space-between;gap:20px;margin-top:12px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.art-title{font-family:Georgia,"Times New Roman",serif;color:var(--ink);font-size:17px;text-transform:none;letter-spacing:0}
.work-page{display:grid;grid-template-columns:1.35fr .65fr;gap:6vw;align-items:start}
.work-main img{width:100%}
.work-info{position:sticky;top:35px}
.work-info h1{font:400 clamp(38px,5vw,70px)/.98 Georgia,"Times New Roman",serif;letter-spacing:-.035em;margin:0 0 30px}
.detail-row{border-top:1px solid var(--line);padding:13px 0;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.work-room{margin-top:80px}
.work-room h2{font:400 46px/1 Georgia,"Times New Roman",serif;margin:0 0 25px;letter-spacing:-.03em}

/* About */
.about-hero{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:start;padding-bottom:90px;border-bottom:1px solid var(--line)}
.portrait img{width:100%;max-width:420px;border-radius:50%}
.bio h2{font:400 clamp(34px,4vw,58px)/1.03 Georgia,"Times New Roman",serif;letter-spacing:-.035em;margin:0 0 28px}
.bio p,.statement p{font:400 20px/1.62 Georgia,"Times New Roman",serif;margin:0 0 22px}
.statement{display:grid;grid-template-columns:1fr 1.45fr;gap:7vw;padding:90px 0;border-bottom:1px solid var(--line)}
.about-feature{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;padding:34px 0;border-bottom:1px solid var(--line)}
.about-feature-name{font:700 clamp(13px,1.05vw,17px)/1.1 Georgia,"Times New Roman",serif;letter-spacing:-.01em;text-transform:uppercase;white-space:nowrap}
.about-feature-name a{display:inline;color:inherit;text-decoration:none}
.about-feature-mark{display:inline-block;width:20px;height:23px;object-fit:contain;vertical-align:middle;margin:0 -1px 0 2px;transform:translateY(-2px)}
.about-feature p{font:400 clamp(12px,.95vw,15px)/1.4 Georgia,"Times New Roman",serif;margin:0;white-space:nowrap}
.about-documents{display:flex;justify-content:space-between;align-items:baseline;gap:30px;margin-top:32px}
.about-documents a{font-size:10px;text-transform:uppercase;letter-spacing:.14em;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:6px}
@media(max-width:650px){.about-feature{display:block}.about-feature-name{white-space:normal}.about-feature p{margin-top:22px;white-space:normal}.about-documents{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-top:28px}.about-documents a{display:inline-block}}
.statement p{font-size:28px;line-height:1.45}
.exhibitions{padding-top:90px}
.exhibitions h2{font:400 66px/1 Georgia,"Times New Roman",serif;letter-spacing:-.04em;margin:0 0 50px}
.ex-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw}
.ex-grid h3{font-weight:400}
.ex-row{display:grid;grid-template-columns:70px 1fr;gap:18px;padding:15px 0;border-top:1px solid var(--line);font-size:13px;line-height:1.45}
.ex-year{color:var(--muted)}

/* Blog */
.feature-post{display:grid;grid-template-columns:1.45fr .9fr;gap:46px;align-items:start;padding-bottom:78px;border-bottom:1px solid var(--line)}
.feature-post img{width:100%;aspect-ratio:1.42/1;object-fit:cover}
.feature-post h2{font:400 clamp(38px,4.8vw,68px)/.98 Georgia,"Times New Roman",serif;letter-spacing:-.035em;margin:0 0 24px}
.meta{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin:12px 0 24px}
.excerpt{font:400 18px/1.55 Georgia,"Times New Roman",serif;color:#37342f}
.read-link{display:inline-block;margin-top:26px;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:5px;font-size:10px;text-transform:uppercase;letter-spacing:.14em}
.post-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:64px 28px;align-items:start;margin-top:70px}
.post-card{margin:0}
.post-card:nth-child(5n+1){grid-column:1/span 5}
.post-card:nth-child(5n+2){grid-column:7/span 3;margin-top:110px}
.post-card:nth-child(5n+3){grid-column:10/span 3}
.post-card:nth-child(5n+4){grid-column:1/span 4;margin-top:45px}
.post-card:nth-child(5n+5){grid-column:6/span 7;margin-top:100px}
.post-card a{text-decoration:none}
.post-card img{width:100%;aspect-ratio:1.35/1;object-fit:cover}
.post-card h3{font:400 29px/1.03 Georgia,"Times New Roman",serif;letter-spacing:-.025em;margin:16px 0 10px}
.post-card p{color:var(--muted);font-size:13px;line-height:1.55;margin:0}
.article-head{display:grid;grid-template-columns:1.4fr .6fr;gap:7vw;align-items:end;margin-bottom:70px}
.article-head h1{margin:0;font:400 clamp(56px,7.2vw,108px)/.9 Georgia,"Times New Roman",serif;letter-spacing:-.045em}
.article-lead{width:100%;max-height:720px;object-fit:cover;margin-bottom:70px}
.article-grid{display:grid;grid-template-columns:1fr minmax(0,720px) 1fr;gap:0 4vw}
.article-body{grid-column:2}
.article-body p{font:400 21px/1.72 Georgia,"Times New Roman",serif;margin:0 0 30px;color:#2a2926}
.article-note{grid-column:2;color:var(--muted);font-size:11px;line-height:1.6;border-top:1px solid var(--line);padding-top:15px;margin-top:20px}
.article-gallery{grid-column:1/4;display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:65px 0}
.article-gallery img{width:100%;height:100%;object-fit:cover}
.article-gallery img:nth-child(3n+1){grid-column:1/3}

/* Contact */
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:8vw;padding-bottom:100px;border-bottom:1px solid var(--line)}
.contact-info h2{font:400 42px/1.08 Georgia,"Times New Roman",serif;letter-spacing:-.03em;margin:0 0 30px}
.contact-info p{font:400 20px/1.6 Georgia,"Times New Roman",serif}
.contact-block{border-top:1px solid var(--line);padding:17px 0}
.contact-value{font:400 20px Georgia,"Times New Roman",serif}
.contact-value a{text-decoration:none}
form{display:grid;gap:26px}
.field{border-top:1px solid var(--line);padding-top:12px}
.field label{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin-bottom:10px}
input,textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px 0 14px;font:18px Georgia,"Times New Roman",serif;color:var(--ink);outline:none}
textarea{min-height:150px;resize:vertical}
[data-contact-form] input,[data-contact-form] textarea{background:#eae7e0;padding:12px 14px 14px}
[data-contact-form] input:focus,[data-contact-form] textarea:focus{background:#e3dfd6;border-bottom-color:var(--muted)}
button,.button-link{background:transparent;border:0;border-bottom:1px solid var(--ink);padding:0 0 6px;font-size:10px;text-transform:uppercase;letter-spacing:.15em;cursor:pointer;color:var(--ink);text-decoration:none}
.form-note{font-size:11px;line-height:1.6;color:var(--muted)}
.form-status{font-size:12px}
.form-trap{position:absolute;left:-9999px;opacity:0;pointer-events:none}

/* Digital */
.digital-intro{display:grid;grid-template-columns:1.25fr .75fr;gap:8vw;align-items:end;margin-bottom:90px}
.digital-grid{display:grid;grid-template-columns:1fr 1fr;gap:78px 4.8vw;align-items:start}
.digital-card:nth-child(4n+2),.digital-card:nth-child(4n+3){margin-top:95px}
.digital-card:first-child{grid-column:1/-1;margin:0 9vw 40px}
.digital-card img{width:100%}
.digital-meta{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:13px;margin-top:14px}
.digital-meta h2{margin:0;font:400 20px/1.2 Georgia,"Times New Roman",serif}
.modal{position:fixed;inset:0;background:rgba(22,22,22,.42);z-index:50;display:none;align-items:center;justify-content:center;padding:3vw}
.modal.open{display:flex}
.dialog{width:min(1100px,95vw);max-height:92vh;overflow:auto;background:var(--paper);display:grid;grid-template-columns:1.25fr .75fr;position:relative}
.preview{background:#efede7;padding:36px;display:flex;align-items:center}
.preview img{width:100%}
.order{padding:48px 44px;display:flex;flex-direction:column;justify-content:space-between}
.order h3{font:400 42px/1.05 Georgia,"Times New Roman",serif;letter-spacing:-.03em;margin:0 0 28px}
.close{position:absolute;right:18px;top:14px;border:0;background:none;font-size:24px;padding:0}

@media(max-width:850px){
  .site-header{height:auto;padding:22px var(--pad);align-items:flex-start;gap:24px}
  .nav{gap:14px;flex-wrap:wrap;justify-content:flex-end}
  .page{padding-top:52px}
  .page-intro,.home-hero,.about-hero,.statement,.ex-grid,.feature-post,.contact-grid,.digital-intro,.work-page{grid-template-columns:1fr}
  .home-hero{min-height:auto}.home-image{aspect-ratio:1.1/1}.home-copy{min-height:430px}
  .art-grid,.post-grid,.digital-grid{grid-template-columns:1fr;gap:48px}
  .art-card,.art-card:nth-child(n),.post-card,.post-card:nth-child(n),.digital-card,.digital-card:nth-child(n),.digital-card:first-child{grid-column:1;margin:0}
  .art-card.has-room .art-image:hover .clean{opacity:1}.art-card.has-room .art-image:hover .room{opacity:0}
  .work-info{position:static}.statement{gap:35px}.exhibitions h2{font-size:48px}
  .article-head{grid-template-columns:1fr;gap:42px}.article-grid{grid-template-columns:1fr}.article-body,.article-note,.article-gallery{grid-column:1}.article-gallery{grid-template-columns:1fr}.article-gallery img:nth-child(n){grid-column:1}
  .dialog{grid-template-columns:1fr}.preview{padding:18px}.order{padding:34px 26px}
}
.lang-switch{display:flex;align-items:center;gap:7px;margin-left:10px;color:var(--muted);font-size:10px;letter-spacing:.14em}
.lang-switch a{text-decoration:none;color:var(--muted)}
.lang-switch a.current{color:var(--ink)}
.lang-switch .sep{opacity:.45}
@media(max-width:850px){.lang-switch{margin-left:0}}

/* v3 */
.intro-copy,.home-copy{border-top:0}.article-head .intro-copy{border-top:1px solid var(--line)}
.article-body img{height:auto;max-width:100%}.article-body figure{margin:24px 0}.article-body iframe,.article-body video{max-width:100%}.article-body{overflow-wrap:anywhere}.article-body .wp-block-gallery{display:flex;flex-wrap:wrap;gap:16px}.article-body .wp-block-gallery figure{flex:1 1 240px}.home-top{line-height:1.7}button:disabled{opacity:.5;cursor:default}

/* Gallery v3.1: a uniform square viewport, preserving artwork proportions. */
.selected-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 28px}
.selected-card a{text-decoration:none}.uniform-field{width:100%;aspect-ratio:1;background:#fcfbf8;display:flex;align-items:center;justify-content:center;padding:7%;overflow:hidden}
.original-window{position:relative;overflow:hidden;flex:none}.original-window img{position:absolute;max-width:none;object-fit:fill;display:block}
.selected-caption{display:flex;justify-content:space-between;margin-top:16px;font:14px/1.5 Georgia,serif;color:var(--muted)}
.selected-detail{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(220px,.6fr);gap:6vw;align-items:start}.selected-detail h1{font:400 clamp(38px,5vw,64px)/1.1 Georgia,serif;margin:0 0 30px}.subtle-sharp{filter:url(#gentle-sharp)}
@media(max-width:1000px){.selected-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.selected-grid{grid-template-columns:1fr;gap:36px}.selected-detail{grid-template-columns:1fr}.page-intro{margin-bottom:48px}}

/* Artist statement */
.artist-statement .statement-heading h2{font:400 clamp(30px,3.5vw,48px)/1.12 Georgia,"Times New Roman",serif;letter-spacing:-.025em;margin:20px 0 0}
.artist-statement .statement-copy p{font-size:20px;line-height:1.65;margin-bottom:24px}
.artist-statement .statement-copy p:first-child{font-size:25px;line-height:1.45}
.statement-download{display:inline-block;margin-top:8px;font:10px/1.6 Arial,Helvetica,sans-serif;text-transform:uppercase;letter-spacing:.12em;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:6px}
