.pgs-show { width:100%; max-width:1200px; margin:clamp(20px,4vw,40px) auto; border:1px solid #deddd6; border-radius:12px; overflow:hidden; background:#f7f5f0; }
.pgs-stage { position:relative; width:100%; aspect-ratio:16 / 9; overflow:hidden; touch-action:pan-y; }
.pgs-slide { position:absolute; inset:0; opacity:0; visibility:hidden; transition:opacity .6s ease,visibility .6s; }
.pgs-slide.is-active { opacity:1; visibility:visible; z-index:1; }
.pgs-show .pgs-photo { display:block; width:100%; height:100%; max-width:100%; max-height:100%; object-fit:contain; margin:0; border:0; border-radius:0; }
.pgs-show .pgs-video { display:block; width:100%; height:100%; max-width:100%; max-height:100%; object-fit:contain; margin:0; border:0; border-radius:0; background:#111; }
.pgs-show .pgs-overlay-arrow { position:absolute; top:50%; transform:translateY(-50%); z-index:3; display:grid; place-items:center; width:44px; min-width:44px; height:52px; min-height:44px; margin:0; padding:0; border:1px solid #ffffff55; border-radius:8px; background:rgba(20,36,31,.55); color:#fff; box-shadow:0 2px 8px #0002; font-family:system-ui,sans-serif; font-size:36px; line-height:1; cursor:pointer; opacity:0; pointer-events:none; transition:opacity .2s ease,background .2s ease; }
.pgs-show .pgs-overlay-arrow[hidden] { display:none; }
.pgs-show .pgs-overlay-arrow.pgs-prev { left:12px; }
.pgs-show .pgs-overlay-arrow.pgs-next { right:12px; }
.pgs-stage:hover .pgs-overlay-arrow,.pgs-stage:focus-within .pgs-overlay-arrow { opacity:1; pointer-events:auto; }
.pgs-show .pgs-overlay-arrow:hover { background:rgba(20,36,31,.85); }
.pgs-show .pgs-overlay-arrow:focus-visible { outline:3px solid #fff; outline-offset:2px; opacity:1; pointer-events:auto; }
@media(hover:none),(pointer:coarse) { .pgs-show .pgs-overlay-arrow { opacity:1; pointer-events:auto; } }
.pgs-show .pgs-controls { display:none !important; }
.pgs-show .pgs-dots { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:0; padding:2px 12px; }
.pgs-show .pgs-dots[hidden] { display:none; }
.pgs-show .pgs-dot { display:grid; place-items:center; width:32px; min-width:32px; height:40px; min-height:40px; padding:0; margin:0; border:0; border-radius:0; box-shadow:none; background:transparent; cursor:pointer; }
.pgs-show .pgs-dot span { display:block; width:9px; height:9px; box-sizing:border-box; border:1px solid #254a40; background:transparent; transition:background .2s; }
.pgs-show .pgs-dot[aria-current="true"] span { background:#254a40; }
.pgs-show .pgs-dot:hover span { border-color:#9b783b; background:#b18a49; }
.pgs-show .pgs-dot:focus-visible { outline:2px solid #9b783b; outline-offset:-4px; }
.pgs-show .pgs-controls[hidden] { display:none; }
.pgs-show .pgs-controls button { border:1px solid #254a40; border-radius:6px; background:#fff; color:#20352f; padding:8px 14px; font:inherit; font-size:14px; cursor:pointer; min-height:44px; }
.pgs-show .pgs-controls button:hover { background:#e7eee9; }
.pgs-show .pgs-controls button:focus-visible { outline:3px solid #b18a49; outline-offset:2px; }
.pgs-counter { color:#20352f; font-size:14px; min-width:45px; text-align:center; }
.pgs-announcement { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media(prefers-reduced-motion:reduce) { .pgs-slide,.pgs-show .pgs-overlay-arrow { transition:none; } }
