/* Phase 4: uploaded prototype exhibition index adapted to live PHP data. */
.ux-proto-ex-hero{padding:64px 0 34px}
.ux-proto-ex-hero h1{margin:0;font-family:var(--g-font-display);font-size:var(--g-fs-page-title);font-weight:600;letter-spacing:.01em;line-height:1.08}
.ux-proto-ex-hero .lede{max-width:650px;margin:22px 0 0;color:var(--g-text-soft);font-size:1.02rem;line-height:1.7}
.tab-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}
.tab-pill{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;border-radius:24px;font-size:.82rem;font-weight:600;letter-spacing:.02em;border:1px solid var(--g-line-strong);color:var(--g-text-soft);text-decoration:none;background:transparent}
.tab-pill:hover,.tab-pill:focus-visible,.tab-pill.active{background:var(--g-gold);border-color:var(--g-gold);color:#fff}
.ux-proto-ex-section{padding:0 0 72px}
.exhibit-feature{display:grid;grid-template-columns:1.3fr 1fr;background:var(--g-surface-soft);border:1px solid var(--g-line);border-radius:2px;overflow:hidden;margin-bottom:50px;color:inherit;text-decoration:none}
.exhibit-feature .ef-media{min-height:300px;background:#eee8dd;overflow:hidden}
.exhibit-feature .ef-media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .35s ease}
.exhibit-feature:hover .ef-media img,.exhibit-feature:focus-visible .ef-media img{transform:scale(1.018)}
.exhibit-feature .ef-copy{padding:44px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.exhibit-feature .eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--g-gold)}
.exhibit-feature h3{font-family:var(--g-font-display);font-size:1.9rem;margin:14px 0 18px;line-height:1.25}
.ef-meta{display:flex;flex-direction:column;gap:10px;font-size:.86rem;color:var(--g-text-soft);margin-bottom:18px}
.ef-meta div{display:flex;align-items:center;gap:10px}
.ef-meta svg{width:15px;height:15px;color:var(--g-gold);flex-shrink:0}
.exhibit-feature p.desc{color:var(--g-text-soft);font-size:.92rem;line-height:1.7;margin:0 0 22px}
.proto-section-head{display:flex;align-items:flex-end;justify-content:space-between;margin:0 0 34px;gap:24px;flex-wrap:wrap}
.proto-section-head h2{margin:0;font-size:1.35rem;letter-spacing:.06em;text-transform:uppercase;font-family:var(--g-font-sans);font-weight:600}
.exh-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}
.exh-card{display:block;border-radius:2px;overflow:hidden;color:inherit;text-decoration:none}
.exh-card .thumb{aspect-ratio:16/10;overflow:hidden;margin-bottom:16px;border-radius:2px;background:var(--g-surface-soft)}
.exh-card .thumb img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .3s ease}
.exh-card:hover .thumb img,.exh-card:focus-visible .thumb img{transform:scale(1.03)}
.exh-card h4{font-family:var(--g-font-display);font-size:1.05rem;margin:0 0 10px;line-height:1.35}
.exh-card .meta-line{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--g-muted);margin-bottom:5px;line-height:1.45}
.exh-card .meta-line svg{width:13px;height:13px;color:var(--g-gold);flex-shrink:0}
.exh-card .venue{font-size:.82rem;color:var(--g-muted);margin-top:6px}
.exh-card .summary{margin-top:10px;color:var(--g-text-soft);font-size:.84rem;line-height:1.55}
.exhibition-archive-block{margin-top:58px;padding-top:44px;border-top:1px solid var(--g-line)}

/* Exhibition detail keeps the existing relational viewing-room layout. */
.ux-ex-hero{padding:40px 0 50px;border-bottom:1px solid var(--g-line)}
.ux-ex-hero-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:54px;align-items:end}
.ux-ex-hero-copy h1{margin:12px 0 16px;font-family:var(--g-font-display);font-size:clamp(3.4rem,6vw,6.8rem);font-weight:400;line-height:.9;letter-spacing:-.055em}
.ux-ex-meta{display:flex;gap:9px 16px;flex-wrap:wrap;color:var(--g-muted);font-size:.8rem;line-height:1.5}
.ux-ex-hero-image{min-height:380px;max-height:640px;overflow:hidden;background:var(--g-surface-soft)}
.ux-ex-hero-image img{width:100%;height:100%;min-height:380px;max-height:640px;display:block;object-fit:cover}
.ux-ex-body{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:64px;padding:48px 0 68px}
.ux-ex-copy{font-size:1.02rem;line-height:1.82;color:var(--g-text-soft)}
.ux-ex-copy .ux-ex-lead{font-family:var(--g-font-display);font-size:1.3rem;line-height:1.6;color:var(--g-text)}
.ux-ex-rail{padding-left:28px;border-left:1px solid var(--g-line)}
.ux-ex-rail-block{margin-bottom:28px}.ux-ex-rail-block h2{margin:0 0 10px;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}.ux-ex-chips{display:flex;gap:7px;flex-wrap:wrap}
.ux-ex-artists .g-artist-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.ux-ex-artworks .g-artwork-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.ux-ex-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ux-ex-gallery figure{margin:0}.ux-ex-gallery img{width:100%;display:block}.ux-ex-gallery figcaption{margin-top:7px;color:var(--g-muted);font-size:.76rem}
.ux-ex-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ux-ex-link{display:grid;grid-template-columns:1fr auto;gap:16px;padding:15px;border:1px solid var(--g-line);background:var(--g-surface);color:inherit;text-decoration:none}.ux-ex-link strong{font-size:.85rem}.ux-ex-link small{color:var(--g-muted);font-size:.69rem;text-transform:uppercase;letter-spacing:.06em}.ux-ex-events .g-list-row{grid-template-columns:170px minmax(0,1fr) auto;min-height:auto;padding:18px 0}

@media(max-width:1100px){.exh-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ux-ex-artists .g-artist-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ux-ex-artworks .g-artwork-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ux-ex-hero-grid{gap:36px}.ux-ex-body{gap:42px}}
@media(max-width:900px){.exhibit-feature{grid-template-columns:1fr}.exhibit-feature .ef-media{min-height:340px}}
@media(max-width:820px){.ux-ex-hero-grid{grid-template-columns:1fr}.ux-ex-hero-image{order:-1;min-height:320px}.ux-ex-body{grid-template-columns:1fr}.ux-ex-rail{padding:28px 0 0;border-left:0;border-top:1px solid var(--g-line)}.ux-ex-artists .g-artist-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ux-ex-artworks .g-artwork-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ux-proto-ex-hero{padding:44px 0 28px}.ux-proto-ex-hero h1{font-size:var(--g-fs-page-title)}.tab-pill{padding:10px 18px}.exhibit-feature .ef-media{min-height:260px}.exhibit-feature .ef-copy{padding:28px 24px}.exh-grid{grid-template-columns:1fr}.ux-ex-hero{padding-top:28px}.ux-ex-hero-image,.ux-ex-hero-image img{min-height:260px}.ux-ex-body{padding-top:36px}.ux-ex-artists .g-artist-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.ux-ex-artworks .g-artwork-grid{gap:20px 12px}.ux-ex-gallery,.ux-ex-links{grid-template-columns:1fr}.ux-ex-events .g-list-row{grid-template-columns:1fr;gap:5px}}


/* Archive discovery + filters */
.ex-archive-filter-shell{padding:0 0 38px;border-bottom:1px solid var(--g-line);margin-bottom:44px}
.ex-archive-filters{display:grid;grid-template-columns:minmax(220px,1.35fr) repeat(3,minmax(145px,.72fr)) auto auto;gap:12px;align-items:end}
.ex-archive-filters label{display:grid;gap:7px;font-size:.67rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--g-muted)}
.ex-archive-filters input,.ex-archive-filters select{width:100%;height:44px;border:1px solid var(--g-line-strong);background:var(--g-surface);color:var(--g-text);padding:0 13px;font:inherit;font-size:.82rem;letter-spacing:0;text-transform:none;outline:none}
.ex-archive-filters input:focus,.ex-archive-filters select:focus{border-color:var(--g-gold);box-shadow:0 0 0 1px var(--g-gold)}
.ex-filter-submit,.ex-filter-clear{height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;border:1px solid var(--g-gold);font-size:.73rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;white-space:nowrap}
.ex-filter-submit{background:var(--g-gold);color:#fff;cursor:pointer}.ex-filter-clear{color:var(--g-gold);background:transparent}
.ex-filter-results{margin-top:14px;color:var(--g-muted);font-size:.8rem}.ex-filter-results strong{color:var(--g-text)}
.ex-discovery-block{margin-top:64px;padding-top:46px;border-top:1px solid var(--g-line)}
.ex-artist-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
.ex-artist-card{min-width:0}.ex-artist-card .thumb{aspect-ratio:1/1.06;overflow:hidden;background:var(--g-surface-soft)}.ex-artist-card .thumb img{width:100%;height:100%;display:block;object-fit:cover}.ex-artist-card .name{margin-top:10px;font-size:.78rem;line-height:1.3}.ex-artist-card .yr{margin-top:4px;font-size:.72rem;color:var(--g-muted)}
.ex-artwork-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.ex-discovery-work{color:inherit;text-decoration:none;min-width:0}.ex-discovery-work .thumb{aspect-ratio:4/5;background:var(--g-surface-soft);display:flex;align-items:center;justify-content:center;padding:12px;overflow:hidden}.ex-discovery-work .thumb img{width:100%;height:100%;display:block;object-fit:contain}.ex-work-copy{display:grid;gap:3px;margin-top:10px}.ex-work-copy strong{font-size:.8rem}.ex-work-copy span{font-family:var(--g-font-display);font-size:.92rem}.ex-work-copy small{font-size:.72rem;color:var(--g-muted)}
@media(max-width:1100px){.ex-archive-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.ex-filter-submit,.ex-filter-clear{width:100%}.ex-artist-strip{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.ex-archive-filters{grid-template-columns:1fr}.ex-artwork-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.ex-discovery-block{margin-top:48px;padding-top:36px}}
@media(max-width:520px){.ex-artist-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.ex-artwork-strip{grid-template-columns:1fr 1fr}}
