.hero-stage{position:relative;isolation:isolate;aspect-ratio:5/4;overflow:hidden;background:var(--tile2,#27282c);touch-action:pan-y}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .65s ease;pointer-events:none;overflow:hidden}
.hero-slide.is-active{opacity:1;z-index:1}
.hero-visual .hero-slide img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;border-radius:0;object-fit:cover}
.hero-visual .hero-slide.is-portrait img:not(.hero-backdrop){object-fit:contain}
.hero-visual .hero-slide img.hero-backdrop{inset:-8%;width:116%;height:116%;object-fit:cover;filter:blur(24px) brightness(.8);opacity:.72}
.hero-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;min-height:40px}
.hero-toolbar[hidden]{display:none!important}
.hero-slide-label{display:flex;flex-wrap:wrap;align-items:center;gap:5px 12px;font-size:12px;line-height:1.4;color:var(--ink)}
.hero-count{font-size:10px;font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}
.hero-controls{display:flex;gap:5px;flex-shrink:0}
.hero-controls button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--line2);border-radius:50%;color:var(--ink);background:var(--tile);font:600 17px/1 var(--f-body);cursor:pointer;transition:background-color .18s,border-color .18s}
.hero-controls button:hover{background:var(--tile2);border-color:var(--ink)}
.hero-controls button:focus-visible{outline:2px solid var(--pop);outline-offset:3px}
@media(max-width:760px){.hero-stage{aspect-ratio:16/10;border-radius:16px}.hero-controls button{width:44px;height:44px}.hero-slide-label{font-size:11px}.hero-toolbar{gap:8px}}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}
