/* Full-bleed homepage exhibition. Template editor remains independent. */
.catalog-view{max-width:none;padding:0}.template-section,.workflow-note,.catalog-footer{max-width:1600px;margin-left:auto;margin-right:auto;padding-left:4vw;padding-right:4vw}
.hero.hero-exhibition{display:block;padding:0;margin:0;isolation:isolate;overflow:hidden;width:100%;height:min(860px,calc(100svh - 80px));min-height:610px;background:#070b11;border:0;color:#f6f1e9;--hero-ink:#f6f1e9;--hero-muted:#c1c1bf;--hero-accent:#f3be92}
.hero-stage,.hero-reading-shade{position:absolute;inset:0}.hero-stage{outline-offset:-4px!important;touch-action:pan-y}.hero-stage img,.hero-stage canvas{display:block;width:100%;height:100%;object-fit:cover;object-position:65% 50%}.hero-stage img{position:absolute;inset:0}.hero-stage canvas{position:absolute;inset:0;opacity:0;transition:opacity .45s}.hero-ready .hero-stage canvas{opacity:1}.hero-reading-shade{background:linear-gradient(90deg,#05090f83 0%,#05090f22 38%,transparent 62%),linear-gradient(0deg,#05090fd9,transparent 25%);pointer-events:none;z-index:1}
.hero-exhibition .hero-copy{position:absolute;left:6.2%;top:25%;z-index:2;pointer-events:none;max-width:42%;color:var(--hero-ink)}.hero-exhibition .hero-copy .eyebrow{font-size:10px;letter-spacing:.18em;color:var(--hero-muted);margin:0 0 28px}.hero-exhibition h1{font-weight:500;font-size:clamp(44px,4.6vw,80px);line-height:1.19;letter-spacing:-.055em;color:inherit;margin:0 0 26px;max-width:650px;text-wrap:balance}.hero-exhibition .hero-description{font-size:13px;line-height:2;color:var(--hero-muted);margin:0 0 28px}.hero-exhibition .hero-actions{pointer-events:auto}.hero-exhibition .hero-actions .primary-button{min-width:204px;background:#f2eee5;color:#182023;border-radius:99px;font-size:12px;min-height:46px;padding:13px 22px}.hero-exhibition .hero-actions .primary-button:hover{background:#fff}.hero-exhibition .hero-copy.changing{animation:hero-copy-arrive .7s both}@keyframes hero-copy-arrive{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.hero-load-state{position:absolute;right:6.2%;top:28px;font-size:10px;z-index:3;color:var(--hero-muted)}.hero-controls{position:absolute;left:6.2%;right:6.2%;bottom:30px;display:flex;justify-content:flex-end;align-items:center;gap:0;z-index:3;color:var(--hero-ink)}.hero-navigation{display:flex;align-items:center;gap:12px}.hero-navigation>button{background:transparent;color:var(--hero-ink);width:36px;height:36px;border-radius:50%;padding:0;font-size:14px;display:grid;place-items:center;border:1px solid transparent}.hero-navigation>button{border-color:#ffffff28}.hero-navigation>button:hover{background:#ffffff14}.hero-exhibition[data-theme=light]{--hero-ink:#172b2c;--hero-muted:#384647;--hero-accent:#8d5d3a;background:#e7d7b8}.hero-exhibition[data-theme=light] .hero-reading-shade{background:linear-gradient(90deg,#fff9e869,transparent 57%),linear-gradient(0deg,#fff6dfc9,transparent 28%)}.hero-exhibition[data-theme=light] .hero-actions .primary-button{background:#1d3436;color:#f5f0e7}.hero-exhibition[data-theme=light] .hero-navigation>button{border-color:#172b2c35}.hero-exhibition[data-theme=light] .hero-navigation>button:hover{background:#172b2c14}
.export-status-panel#export-progress{position:fixed;z-index:70;left:24px;bottom:24px;width:min(410px,calc(100vw - 48px));margin:0;padding:19px 20px 16px;border:1px solid #66706966;border-radius:12px;background:#182124f5;box-shadow:0 14px 65px #0008;backdrop-filter:blur(18px);color:#e9e7de}.export-status-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}#export-label{font-size:13px!important;color:#eeeae0!important}#export-percent{font-size:12px;color:#ecaf80;font-variant-numeric:tabular-nums}.export-status-panel progress{display:block;width:100%;height:6px;appearance:none;border:0;border-radius:9px;overflow:hidden;background:#ffffff12;accent-color:#e9ad7a}.export-status-panel progress::-webkit-progress-bar{background:#ffffff12;border-radius:9px}.export-status-panel progress::-webkit-progress-value{background:#e9ad7a;border-radius:9px;transition:width .14s linear}.export-status-panel progress:not([value]){background:linear-gradient(90deg,#ffffff10 20%,#e9ad7ab3 45%,#ffffff10 70%);background-size:220% 100%;animation:export-working 1.4s linear infinite}.export-status-panel progress:not([value])::-webkit-progress-bar{background:transparent}.export-status-panel .label-row{margin-top:13px!important;display:flex;gap:14px;align-items:center}.export-status-panel #export-detail{font-size:10px;line-height:1.8;color:#a8b8b8;flex:1;min-width:0}.export-status-panel .text-button{font-size:11px;flex-shrink:0;min-height:28px}.export-status-panel[data-phase=ready]{border-color:#8eb29275}.export-status-panel[data-phase=ready] progress::-webkit-progress-value{background:#a2c39e}.export-status-panel[data-phase=error]{border-color:#cd846f90}.export-status-panel[data-phase=error] #export-label{color:#efc5b7!important}@keyframes export-working{to{background-position:-220% 0}}
@media(min-width:1800px){.hero-exhibition .hero-copy{left:max(6.2%,calc((100% - 1450px)/2))}.hero-controls{left:max(6.2%,calc((100% - 1450px)/2));right:max(6.2%,calc((100% - 1450px)/2))}}
@media(max-width:1000px){.hero.hero-exhibition{height:720px;min-height:620px}.hero-exhibition .hero-copy{top:25%;max-width:48%}.hero-exhibition h1{font-size:54px}.hero-navigation{gap:8px}}
@media(max-width:700px){.catalog-view{padding:0}.template-section,.workflow-note,.catalog-footer{padding-left:5vw;padding-right:5vw}.hero.hero-exhibition{height:calc(100svh - 63px);min-height:680px;max-height:850px}.hero-stage img{object-position:68% 50%}.hero-exhibition .hero-reading-shade{background:linear-gradient(0deg,#040810f2,transparent 68%),linear-gradient(90deg,#04081028,transparent 70%)}.hero-exhibition[data-theme=light] .hero-reading-shade{background:linear-gradient(0deg,#fff7e4f7,#fff7e45e 35%,transparent 65%)}.hero-exhibition .hero-copy{left:6%;top:auto;bottom:165px;max-width:88%;width:88%}.hero-exhibition .hero-copy .eyebrow{font-size:8px;margin-bottom:17px}.hero-exhibition h1{font-size:clamp(34px,9.5vw,50px);line-height:1.19;margin-bottom:16px;max-width:390px}.hero-exhibition .hero-description{font-size:10px;line-height:1.9;margin-bottom:19px}.hero-exhibition .hero-actions .primary-button{min-width:185px;font-size:11px;min-height:42px;padding:10px 18px}.hero-controls{left:6%;right:6%;bottom:24px;gap:0;align-items:center}.hero-navigation{width:auto;justify-content:flex-end;gap:0}.hero-navigation>button{width:30px;height:30px;font-size:12px}.hero-load-state{right:6%;top:18px}.export-status-panel#export-progress{left:14px;bottom:14px;width:calc(100vw - 28px);padding:17px 17px 14px}}
@media(prefers-reduced-motion:reduce){.hero-exhibition .hero-copy.changing{animation:none}.hero-stage canvas{transition:none}.export-status-panel progress::-webkit-progress-value{transition:none}.export-status-panel progress:not([value]){animation:none}}
body:has(#export-progress:not([hidden])) #toast{bottom:174px;z-index:71;max-width:calc(100vw - 32px)}

.hero-exhibition:not(.hero-art-loaded) .hero-copy{visibility:hidden}

/* No broken-image icon or alt text before the selected random artwork arrives. */
.hero-stage #hero-poster{opacity:0}.hero-art-loaded .hero-stage #hero-poster{opacity:1}
