body[data-page="home"] .hero-visual.hero-gallery{overflow:hidden}
.hero-gallery .hero-image-clip{isolation:isolate}
.hero-gallery .gallery-slide{position:absolute;inset:0;width:100%;height:100%;opacity:0;transition:opacity 500ms ease;z-index:1}
.hero-gallery .gallery-slide.is-active{opacity:1;z-index:2}
.hero-gallery.has-gallery-image .hero-image{visibility:hidden}
.hero-gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap;padding:0 10px 6px}
.hero-gallery-controls[hidden]{display:none}
.hero-gallery-navigation{display:flex;align-items:center;gap:8px}
.hero-gallery-controls button{min-width:44px;min-height:44px;padding:8px 12px;border:1px solid var(--border-control);border-radius:9px;background:var(--surface);color:var(--primary);font-size:14px}
.hero-gallery-navigation button{font-size:20px}
.hero-gallery-count{font-size:14px;color:var(--text-secondary);font-variant-numeric:tabular-nums}
.hero-gallery-announcement{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(prefers-reduced-motion:reduce){.hero-gallery .gallery-slide{transition:none}}

.hero-gallery .hero-image-clip{touch-action:pan-y}
.hero-gallery .hero-image-clip:focus-visible{outline:3px solid var(--primary);outline-offset:-5px}
.hero-gallery .hero-image-caption>span,.hero-gallery .hero-image-caption small{min-width:0;overflow-wrap:anywhere}
