/* Exhibition-only controls. Source colors/layout remain isolated from the home page. */
html { scroll-behavior:smooth; scroll-padding-top:72px; }
body { margin:0; }
.exhibition-header { position:sticky;top:0;z-index:1000;min-height:60px;background:#1c1c1c;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 4%;gap:24px;font-family:'Noto Sans TC',sans-serif;box-sizing:border-box; }
.exhibition-header a {color:#fff;text-decoration:none;}
.exhibition-header .legacy-logo {flex-shrink:0;line-height:0;}
.exhibition-header .legacy-logo img {width:58px;height:58px;object-fit:contain;}
.exhibition-nav {display:flex;align-items:center;gap:22px;font-size:14px;}
.exhibition-nav .nav-group {position:relative;}
.exhibition-header button {font:inherit;color:inherit;cursor:pointer;}
.exhibition-nav .nav-group-label {border:0;background:transparent;padding:20px 0;}
.exhibition-nav .nav-dropdown {display:none;position:absolute;top:100%;right:0;background:#1c1c1c;min-width:300px;max-width:80vw;box-shadow:0 8px 20px #0004;padding:12px;}
.exhibition-nav .nav-dropdown a {display:block;padding:10px;}
.exhibition-nav .nav-group:hover .nav-dropdown,.exhibition-nav .nav-group:focus-within .nav-dropdown,.exhibition-nav .nav-group.open .nav-dropdown {display:block;}
.exhibition-nav a:hover {color:#ffa64d;}
.exhibition-nav>a[href$="/jpgogo"] {background:#36386a;padding:12px 18px;border-radius:3px;font-weight:700;}
.exhibition-social {display:flex;gap:8px;font-size:11px;}
.exhibition-menu-toggle {display:none;border:1px solid #aaa;background:none;padding:8px;}
.exhibition-hero {position:relative;background:#1c1c1c;}
.exhibition-slides {position:relative;aspect-ratio:7/3;overflow:hidden;}
.exhibition-slides img {position:absolute;width:100%;height:100%;object-fit:cover;inset:0;display:none;}
.exhibition-slides img.active {display:block;}
.exhibition-hero button {cursor:pointer;border:0;}
.exhibition-prev,.exhibition-next {position:absolute;top:40%;background:transparent;color:white;text-shadow:0 2px 4px #333;font-size:56px;line-height:1;padding:8px 20px;}
.exhibition-prev {left:1%;}.exhibition-next {right:1%;}
.exhibition-dots {position:absolute;bottom:8%;left:15%;right:15%;display:flex;justify-content:center;gap:8px;}
.exhibition-dots button {width:14px;height:14px;border-radius:50%;background:#ddd;box-shadow:0 0 2px #333;padding:0;}
.exhibition-dots button[aria-current=true] {background:#333;}
.exhibition-pause {position:absolute;bottom:5%;right:3%;background:#1c1c1c99;color:white;padding:4px 8px;}
.exhibition-anchor {display:block;position:relative;scroll-margin-top:72px;}
#s-content .blurred-layer {display:none;}
#s-content .s-image img {height:auto;}
#s-content .s-gallery img {width:100%;height:auto;}
.exhibition-footer {background:#1c1c1c;color:#fff;text-align:center;padding:48px 20px;font:14px/1.8 'Noto Sans TC',sans-serif;}
.exhibition-footer a {color:inherit;}
.exhibition-lightbox {padding:48px;border:0;background:#161616;color:#fff;max-width:90vw;max-height:90vh;box-sizing:border-box;}
.exhibition-lightbox::backdrop {background:#000d;}
.exhibition-lightbox img {display:block;max-width:75vw;max-height:75vh;object-fit:contain;}
.exhibition-lightbox button {position:absolute;background:#1119;color:#fff;border:0;font-size:32px;cursor:pointer;padding:6px 12px;}
.gallery-close {top:0;right:0;}.gallery-prev {left:0;top:45%;}.gallery-next {right:0;top:45%;}
button:focus-visible,a:focus-visible {outline:3px solid #ff9e4b;outline-offset:3px;}
@media(max-width:1100px) {
 .exhibition-menu-toggle {display:block;}
 .exhibition-nav {display:none;position:absolute;top:60px;left:0;right:0;background:#1c1c1c;max-height:calc(100dvh - 60px);overflow:auto;padding:20px;align-items:stretch;}
 .exhibition-nav.open {display:flex;flex-direction:column;gap:8px;}
 .exhibition-nav .nav-dropdown {position:static;min-width:0;max-width:none;box-shadow:none;padding-left:16px;}
 .exhibition-nav .nav-group-label {padding:12px 0;}
 .exhibition-nav>a {padding:10px 0;}
}
@media(max-width:600px) {
 .exhibition-prev,.exhibition-next {font-size:32px;padding:4px;}
 .exhibition-dots {gap:5px;bottom:5%;}.exhibition-dots button {width:10px;height:10px;}
 .exhibition-lightbox {padding:40px 28px;}.exhibition-lightbox img {max-width:75vw;}
}
@media(prefers-reduced-motion:reduce) {html {scroll-behavior:auto;}}
