/* Hero photographs stay full-frame; only opacity changes between slides. */
.hero-slideshow {width:100%;min-width:0;}
.hero-slides {position:relative;aspect-ratio:3/2;overflow:hidden;border-radius:14px;background:#f5f4f6;touch-action:pan-y pinch-zoom;}
.hero-slide {position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .85s ease,visibility 0s .85s;}
.hero-slide.is-active {opacity:1;visibility:visible;z-index:1;transition:opacity .85s ease,visibility 0s;}
.technology-visual .hero-art .hero-slides img {display:block;width:100%;height:100%;max-height:none;object-fit:contain;border-radius:0;transform:none;transition:none;user-select:none;-webkit-user-select:none;pointer-events:none;}
.hero-slider-controls {display:flex;align-items:center;justify-content:center;gap:4px;height:44px;margin-top:8px;}
.hero-slider-controls[hidden] {display:none;}
.hero-slider-controls button {display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:0;border-radius:50%;background:transparent;color:#79767b;cursor:pointer;transition:background .2s,color .2s;touch-action:manipulation;}
.hero-slider-controls button:focus-visible {outline:2px solid var(--red);outline-offset:-3px;}
.hero-slider-controls button svg {width:18px;height:18px;}
.hero-slider-dots {display:flex;gap:0;}
.hero-slider-dot span {width:7px;height:7px;border-radius:10px;background:#d7c9c6;transition:width .3s ease,background .3s ease;}
.hero-slider-dot[aria-current=true] span {width:24px;background:var(--red);}
.hero-slider-controls .icon-play {display:none;}
.hero-slider-controls [data-paused=true] .icon-pause {display:none;}
.hero-slider-controls [data-paused=true] .icon-play {display:block;}
.hero-slider-status {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
@media(hover:hover){.hero-slider-controls button:hover{background:#a834340a;color:var(--red)}}
@media(prefers-reduced-motion:reduce){.hero-slide,.hero-slider-dot span,.hero-slider-controls button{transition:none}}

/* Six 44px tap targets fit the narrowest supported phone width. */
@media(max-width:360px){.hero-slider-controls{gap:0}}
