/* Vxd Home Slider – styles are scoped so the original Vxd Slider is unaffected. */
.vxd-home-slider,
.vxd-home-slider * { box-sizing: border-box; }
.vxd-home-slider {
    isolation: isolate;
    position: relative;
    width: 100%;
    max-width: none !important;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background: #1c2227;
    color: #fff;
    font-family: 'Open Sans', Arial, Helvetica, sans-serif;
    touch-action: pan-y;
}
.vxd-home-slider--fullscreen { height: 100vh; height: 100svh; min-height: 400px; }
.vxd-home-slider--custom { height: var(--vxd-home-desktop-height,720px); }
.vxd-home-slider__slides,
.vxd-home-slider__slide,
.vxd-home-slider__image,
.vxd-home-slider__shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.vxd-home-slider__slides { overflow: hidden; }
.vxd-home-slider__slide {
    visibility: hidden;
    opacity: 0;
    transition: opacity var(--vxd-home-duration, 300ms) ease-in-out, visibility 0s linear var(--vxd-home-duration, 300ms);
    pointer-events: none;
}
.vxd-home-slider__slide.is-active {
    visibility: visible;
    opacity: 1;
    transition: opacity var(--vxd-home-duration, 300ms) ease-in-out, visibility 0s;
    pointer-events: auto;
    z-index: 1;
}
.vxd-home-slider__image {
    display: block;
    object-fit: cover;
    object-position: 50% 50%;
    max-width: none !important;
    user-select: none;
    -webkit-user-drag: none;
}
.vxd-home-slider__shade {
    background: rgba(0,0,0,var(--vxd-home-overlay,.15));
    pointer-events: none;
}
.vxd-home-slider__caption {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    width: min(94%, 1550px);
    padding: 0 24px;
    transform: translate(-50%, -50%);
    text-align: center;
    color: #fff;
    text-shadow: 0 2px 10px rgba(0,0,0,.25);
}
.vxd-home-slider__title {
    color: #fff !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: clamp(30px, 3.125vw, 60px) !important;
    font-weight: 900 !important;
    line-height: 1.24 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
    overflow-wrap: break-word;
}
.vxd-home-slider__title--hero { font-size: clamp(30px, 3.9vw, 75px) !important; }
.vxd-home-slider__subtitle {
    color: #fff !important;
    font-size: clamp(19px, 2.35vw, 45px) !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    margin: 16px 0 0 !important;
    padding: 0 !important;
    text-transform: uppercase !important;
}
.vxd-home-slider__arrow {
    position: absolute; z-index: 5; top: 50%;
    display: inline-flex; align-items: center; justify-content: center;
    width: 40px; height: 40px; padding: 0; border: 0; border-radius: 50%;
    transform: translateY(-50%);
    color: #fff; background: rgba(0,0,0,.5);
    font: normal 30px/1 Arial,sans-serif; cursor: pointer;
}
.vxd-home-slider__arrow:hover { background: #000; }
.vxd-home-slider__arrow--prev { left: 30px; }
.vxd-home-slider__arrow--next { right: 30px; }
.vxd-home-slider__dots {
    position: absolute; z-index: 5; bottom: 20px; left: 50%; transform: translateX(-50%);
    display: flex; gap: 10px;
}
.vxd-home-slider__dot { display: block; padding: 0; width: 10px; height: 10px; border: 0; border-radius: 50%; background: rgba(255,255,255,.5); cursor: pointer; }
.vxd-home-slider__dot.is-active { background: #fff; }
.vxd-home-slider button:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
@media (max-width: 1023px) {
    .vxd-home-slider__caption { width: min(96%, 900px); padding: 0 18px; }
    .vxd-home-slider__title { font-size: clamp(24px, 3.1vw, 32px) !important; line-height: 1.3 !important; }
    .vxd-home-slider__title--hero { font-size: clamp(28px, 4vw, 40px) !important; }
    .vxd-home-slider__subtitle { font-size: clamp(17px, 2.6vw, 26px) !important; margin-top: 10px !important; }
}
@media (max-width: 767px) {
    .vxd-home-slider--fullscreen { min-height: 360px; }
    .vxd-home-slider--custom { height: var(--vxd-home-mobile-height, 520px); }
    .vxd-home-slider__caption { width: 100%; padding: 0 22px; }
    .vxd-home-slider__title { font-size: clamp(18px, 4.8vw, 28px) !important; line-height: 1.35 !important; }
    .vxd-home-slider__title--hero { font-size: clamp(20px, 5vw, 30px) !important; }
    .vxd-home-slider__subtitle { font-size: clamp(15px, 3.7vw, 21px) !important; line-height: 1.4 !important; }
    .vxd-home-slider__arrow { width: 34px; height: 34px; font-size: 26px; }
    .vxd-home-slider__arrow--prev { left: 12px; }
    .vxd-home-slider__arrow--next { right: 12px; }
}
@media (max-width: 480px) {
    .vxd-home-slider__title { font-size: 14px !important; line-height: 1.6 !important; }
    .vxd-home-slider__title--hero { font-size: 18px !important; }
    .vxd-home-slider__subtitle { font-size: 11px !important; line-height: 1.55 !important; }
}
@media (prefers-reduced-motion: reduce) {
    .vxd-home-slider__slide { transition-duration: 0.01ms !important; }
}
