.hero-slide-layer{position:absolute;inset:0;z-index:0;background-size:cover;background-position:right center;background-repeat:no-repeat;opacity:0;transition:opacity 750ms ease;pointer-events:none}
.hero-slide-layer.is-visible{opacity:1}
.hero.hero--slider{isolation:isolate}
.hero--slider .scroll-cue{display:none}
.hero.hero--image.hero--slider::before{z-index:1;background-image:linear-gradient(180deg,rgba(9,28,48,.88),transparent 20%),var(--hero-overlay)}
html[data-theme="light"] .hero.hero--image.hero--slider::before{background-image:linear-gradient(180deg,rgba(247,251,254,.97),transparent 22%),var(--hero-overlay)}
.hero-slider-controls{position:absolute;inset:auto 0 14px;z-index:3;display:flex;justify-content:center;align-items:center;gap:12px;pointer-events:none}
.hero-slider-controls[hidden],.hero-slider-controls button[hidden]{display:none}
.hero-slider-controls button{pointer-events:auto;cursor:pointer;color:#e3f5ff;background:rgba(9,28,48,.65);border:1px solid rgba(255,255,255,.2);border-radius:50%;min-width:38px;min-height:38px;display:grid;place-items:center;font:inherit}
.hero-slider-controls button:focus-visible{outline:3px solid #1faef5;outline-offset:3px}
.hero-slider-dots{display:flex;gap:3px;align-items:center}
.hero-slider-controls .hero-slider-dot{width:32px;height:32px;min-width:32px;min-height:32px;background:none;border:0}
.hero-slider-dot::before{content:"";width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.45);box-shadow:0 0 0 1px rgba(9,28,48,.25)}
.hero-slider-dot[aria-current="true"]::before{background:#1faef5;box-shadow:0 0 0 3px rgba(31,174,245,.18)}
.hero-slider-controls .hero-slider-arrow{opacity:.45;transition:opacity .2s}
.hero:hover .hero-slider-arrow,.hero-slider-arrow:focus-visible{opacity:1}
html[data-theme="light"] .hero-slider-dot::before{background:rgba(9,28,48,.4)}
html[data-theme="light"] .hero-slider-dot[aria-current="true"]::before{background:#1faef5}
@media(max-width:767px){
 .hero--slider{touch-action:pan-y pinch-zoom}
 .hero-slide-layer{background-position:center 58%}
 .hero.hero--image.hero--slider::before,html[data-theme="light"] .hero.hero--image.hero--slider::before{display:none}
 .hero-slider-controls .hero-slider-arrow{display:none}
 /* The following section overlaps 24px: keep controls 24px above that edge. */
 .hero--slider .hero-copy{padding-bottom:64px}
 .hero-slider-controls{bottom:48px}
}
@media(prefers-reduced-motion:reduce){.hero-slide-layer,.hero-slider-controls .hero-slider-arrow{transition:none}}
