/* A quieter exhibition layout: work first, concise labels, consistent frames. */
.site-header{height:76px}
.brand{gap:12px}
.brand-symbol{display:block;width:46px;height:46px;flex:none;overflow:visible}
.brand-ink{stroke:#24231f}
.brand-flourish{stroke:#a13d2b}
.brand-symbol path.brand-flourish{fill:none}
.brand-symbol circle.brand-flourish{fill:#a13d2b}
.brand-name{font-family:'Instrument Serif',Georgia,serif;font-size:27px;line-height:1;white-space:nowrap;letter-spacing:-.015em}
.brand-name em{font-weight:400;color:#a13d2b}
html[data-theme="dark"] .brand-ink{stroke:#f2f0eb}
html[data-theme="dark"] .brand-flourish{stroke:#e18a75}
html[data-theme="dark"] .brand-symbol circle.brand-flourish{fill:#e18a75}
html[data-theme="dark"] .brand-name em{color:#e18a75}
.intro{padding:42px clamp(24px,5vw,88px) 0}
.section-head{border-top:0;padding:0 0 28px;align-items:end}
.section-head h1{font-family:'Instrument Serif',Georgia,serif;font-size:clamp(42px,4.4vw,72px);font-weight:400;line-height:1;letter-spacing:-.04em;margin:0}
.section-head span{padding-bottom:5px}
.gallery-controls{display:flex;align-items:center;gap:24px;padding:0 clamp(24px,5vw,88px) 27px}
.tag-filters{display:flex;align-items:center;flex:1;min-width:0;flex-wrap:wrap;gap:8px;padding:0}
.filter-divider{height:22px;width:1px;margin:0 3px;background:#bcb8ae;flex:none}
.sort-control{display:flex;align-items:center;gap:11px;white-space:nowrap;font-size:13px;font-weight:600;color:#68645b}
.sort-control select{min-height:38px;border:1px solid #bcb8ae;border-radius:4px;background:transparent;color:#24231f;font:500 14px 'DM Sans',Arial,sans-serif;padding:7px 29px 7px 10px;cursor:pointer}
.sort-control select:focus-visible{outline:2px solid #a13d2b;outline-offset:3px}
.tag-filter{border:1px solid #bcb8ae;border-radius:100px;background:transparent;color:#555149;padding:8px 15px;min-height:38px;font-size:14px;line-height:1.2;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.tag-filter:hover{border-color:#5f5b53}
.tag-filter[aria-pressed="true"]{background:#24231f;border-color:#24231f;color:#f4f2ed}
.tag-filter:focus-visible{outline:2px solid #a13d2b;outline-offset:3px}
html[data-theme="dark"] .tag-filter{border-color:#626262;color:#d0cdc6}
html[data-theme="dark"] .filter-divider{background:#626262}
html[data-theme="dark"] .sort-control{color:#bbb8b1}
html[data-theme="dark"] .sort-control select{border-color:#626262;color:#f2f0eb}
html[data-theme="dark"] .sort-control select:focus-visible{outline-color:#e18a75}
html[data-theme="dark"] .tag-filter:hover{border-color:#c1bdb5}
html[data-theme="dark"] .tag-filter[aria-pressed="true"]{background:#f2f0eb;border-color:#f2f0eb;color:#191919}
html[data-theme="dark"] .tag-filter:focus-visible{outline-color:#e18a75}
.gallery{gap:40px 18px;padding-bottom:100px}
.art-card[hidden]{display:none}
.art-image{aspect-ratio:1/1;background:#626262}
.art-card:hover img,.art-card:focus-visible img{transform:scale(1.025);filter:none}
.art-meta{padding-top:12px}
.art-title{font-family:'DM Sans',Arial,sans-serif;font-size:14px;line-height:1.4;font-weight:500;letter-spacing:0;text-transform:none}
.footer{padding-top:30px;padding-bottom:30px}
.viewer-bottom{height:100px;align-items:center}
.viewer-stage{height:calc(100% - 175px)}
.viewer-caption{display:flex;flex-direction:column;gap:7px;min-width:0}
.viewer-bottom #viewer-title{font-family:'Instrument Serif',Georgia,serif;font-size:27px;line-height:1.1;letter-spacing:0;text-transform:none;color:#f4f2ed}
.viewer-bottom #viewer-details{font-family:'DM Sans',Arial,sans-serif;font-size:13px;font-weight:500;letter-spacing:.03em;line-height:1.4;text-transform:none;color:#bbb8b1}
.viewer-bottom #viewer-details:empty{display:none}
@media(max-width:1000px){.gallery{gap:32px 12px}}
@media(max-width:900px){.gallery-controls{align-items:stretch;flex-direction:column;gap:15px}.sort-control{align-self:flex-end}}
@media(max-width:700px){.tag-filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.tag-filter{flex:none}}
@media(max-width:600px){.brand{gap:8px}.brand-symbol{width:38px;height:38px}.brand-name{font-size:21px}.intro{padding-top:35px}.section-head{padding-bottom:22px}.section-head h1{font-size:clamp(38px,9vw,52px)}.section-head span{font-size:11px}.gallery{gap:30px 12px;padding-bottom:70px}.art-title{font-size:14px}.viewer-bottom{height:88px}.viewer-stage{height:calc(100% - 152px)}.viewer-bottom #viewer-details{display:block}.viewer-bottom #viewer-details:empty{display:none}.viewer-hint{display:none}}
