/* One fixed photographic frame; only the wet-glass reveal edge travels. */
.hero-visual .hero-slideshow{position:absolute;inset:0;overflow:hidden;isolation:isolate;--hero-wipe-progress:0;--hero-wipe-edge:calc(-4% + var(--hero-wipe-progress)*108%)}
.hero-visual .hero-slide{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:var(--slide-position,50% 55%);opacity:0;visibility:hidden;pointer-events:none}
.hero-visual .hero-slide.is-current{opacity:1;visibility:visible;z-index:0}
.hero-visual .hero-slide.is-incoming{opacity:1;visibility:visible;z-index:1;clip-path:polygon(0 0,calc(var(--hero-wipe-edge) + .8%) 0,calc(var(--hero-wipe-edge) - .4%) 20%,calc(var(--hero-wipe-edge) + 1%) 42%,calc(var(--hero-wipe-edge) - .6%) 66%,calc(var(--hero-wipe-edge) + .3%) 86%,var(--hero-wipe-edge) 100%,0 100%);will-change:clip-path}
.hero-visual .hero-wipe-sheen{position:absolute;z-index:2;top:-2%;bottom:-2%;left:var(--hero-wipe-edge);width:clamp(28px,3.2vw,48px);transform:translateX(-55%);background:linear-gradient(90deg,transparent 3%,#e8f8ff23 35%,#ffffff4d 58%,#ffffff1a 77%,transparent 100%);backdrop-filter:blur(1.5px);clip-path:polygon(20% 0,77% 0,52% 20%,95% 42%,37% 66%,72% 86%,60% 100%,3% 100%,20% 86%,0 66%,38% 42%,1% 20%);opacity:0;pointer-events:none}
.hero-visual.is-hero-wiping .hero-wipe-sheen{opacity:1}
.hero-visual .hero-carousel-controls{position:absolute;z-index:5;right:35px;top:54px;display:flex;align-items:center;gap:12px;color:#fff}
.hero-visual .hero-slide-progress{display:flex;align-items:center;gap:5px;padding:8px 0}
.hero-visual .hero-slide-progress [data-progress]{display:block;position:relative;width:22px;height:2px;overflow:hidden;border-radius:2px;background:#ffffff59}
.hero-visual .hero-slide-progress [data-progress]:after{content:'';position:absolute;inset:0;background:#fff;transform:scaleX(0);transform-origin:left}
.hero-visual.has-hero-slideshow .hero-slide-progress .is-active:after{animation:var(--hero-progress-animation,hero-image-hold-a) var(--hero-hold-duration,3000ms) linear both}
.hero-visual.is-hero-paused .hero-slide-progress .is-active:after,.hero-visual.is-hero-wiping .hero-slide-progress .is-active:after{animation-play-state:paused}





@keyframes hero-image-hold-a{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes hero-image-hold-b{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:900px){.hero-visual .hero-carousel-controls{right:30px;top:48px}}
@media(max-width:700px){.hero-visual .hero-slide{object-position:var(--slide-mobile-position,50% 50%)}.hero-visual .hero-carousel-controls{right:20px;top:44px;gap:9px}.hero-visual .hero-slide-progress [data-progress]{width:17px}.hero-visual .hero-wipe-sheen{width:27px}}
@media(prefers-reduced-motion:reduce){.hero-visual .hero-wipe-sheen{display:none}.hero-visual .hero-slide-progress .is-active:after{animation:none!important;transform:scaleX(1)}}
@media print{.hero-visual .hero-carousel-controls,.hero-visual .hero-wipe-sheen{display:none}}
