:root{--bg:#f2eee5;--ink:#241d1a;--muted:#6e625c;--line:#d9cfc0;--card:#fffdf8;--accent:#7a2632;--deep:#6f1f2b}
header{background:#f8f5ef}
.intro{background:#e5ddd0}
.intro-copy{padding-left:clamp(0px,3vw,42px)}
.intro h1{font-size:clamp(46px,6.4vw,94px);line-height:1.04;letter-spacing:-.04em}
.intro h1 em{display:inline-block;padding-top:.08em}
.stats{grid-template-columns:repeat(2,1fr);background:var(--deep);color:#fff8ef;border-bottom-color:var(--deep)}
.stats article{border-right-color:#ffffff42}
.stats span{color:#eadfd3}
.hero-photo{background:#f7f3eb;border-color:#d9cfc0;box-shadow:0 28px 65px #3c211a1c}
.hero-photo img{height:100%}
.catalog{background:#f7f3eb;padding-left:clamp(16px,2.5vw,36px);padding-right:clamp(16px,2.5vw,36px)}
.art{background:#fff}
.piece{border-color:#dfd6c9}
.mark{background:var(--deep)}
.dark{--bg:#181311;--ink:#f4ede4;--muted:#b9aaa0;--line:#4b3c37;--card:#261e1b;--accent:#d9a5a9;--deep:#8d3945}
.dark header{background:#181311}
.dark .intro{background:#2a211d}
.dark .catalog{background:#1d1714}
.dark .stats{background:#6f1f2b}
.dark .stats span{color:#eadfd3}
footer{display:flex;justify-content:center;gap:10px 24px;flex-wrap:wrap}
footer a{color:var(--accent);text-decoration:none}
footer a:hover{text-decoration:underline}
dialog{max-width:1180px;max-height:92vh;overflow:auto}
#detailBody{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr);align-items:stretch}
.detail-photo{position:sticky;top:0;z-index:0;align-self:start;height:92vh;overflow:hidden;background:#fff;padding:34px}
.detail-photo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.detail-content{position:relative;z-index:1;min-width:0;background:var(--card);color:var(--ink);padding:clamp(38px,5vw,68px)}
.dark .detail-content{background:#261e1b;color:#f4ede4}
@media(max-width:900px){.intro-copy{padding-left:0}.catalog{padding-left:0;padding-right:0}dialog{max-height:92vh}#detailBody{grid-template-columns:1fr}.detail-photo{position:relative;height:min(44vh,420px);padding:22px}.detail-content{padding:34px 26px}}
