.hos24-slider { --hos24-control-bg: rgba(15, 23, 42, .62); --hos24-accent: #fff; position: relative; width: 100%; max-width: 100%; overflow: hidden; color: var(--hos24-accent); line-height: 0; }
.hos24-slider__viewport { overflow: hidden; }
.hos24-slider__track { display: flex; width: 100%; will-change: transform; transition: transform .55s ease-in-out; }
.hos24-slider__slide { flex: 0 0 100%; min-width: 0; }
.hos24-slider__image { display: block; width: 100%; height: auto; max-height: 720px; object-fit: cover; }
.hos24-slider__link { display: block; line-height: 0; }
.hos24-slider__control { position: absolute; z-index: 2; top: 50%; display: grid; width: 42px; height: 42px; padding: 0; border: 0; border-radius: 50%; background: var(--hos24-control-bg); color: var(--hos24-accent); cursor: pointer; font-size: 32px; line-height: 38px; place-items: center; transform: translateY(-50%); transition: background-color .2s ease, transform .2s ease; }
.hos24-slider__control:hover, .hos24-slider__control:focus-visible { background: rgba(15, 23, 42, .88); outline: 2px solid #fff; outline-offset: 2px; }
.hos24-slider__control--prev { left: 16px; }
.hos24-slider__control--next { right: 16px; }
.hos24-slider__control span { margin-top: -4px; }
.hos24-slider__dots { position: absolute; z-index: 2; right: 16px; bottom: 16px; left: 16px; display: flex; justify-content: center; gap: 8px; line-height: 1; }
.hos24-slider__dot { width: 10px; height: 10px; padding: 0; border: 1px solid rgba(255, 255, 255, .9); border-radius: 50%; background: rgba(0, 0, 0, .38); cursor: pointer; transition: transform .2s ease, background-color .2s ease; }
.hos24-slider__dot.is-active { background: #fff; transform: scale(1.18); }
.hos24-slider__dot:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
@media (max-width: 600px) { .hos24-slider__control { width: 36px; height: 36px; font-size: 28px; } .hos24-slider__control--prev { left: 10px; } .hos24-slider__control--next { right: 10px; } .hos24-slider__dots { right: 10px; bottom: 10px; left: 10px; } }
@media (prefers-reduced-motion: reduce) { .hos24-slider__track { transition: none; } }
