/* Only enhanced sliders are affected. Without JS the original blocks stay visible. */
.ndn-promo-slider--ready,
.ndn-promo-slider--ready > .e-con-inner {
    display: block !important;
    min-width: 0;
}
/* Elementor overlays are positioned above static children; keep slide and
   navigation hit targets in front of the decorative overlay. */
.ndn-promo-slider__track,
.ndn-promo-slider__controls {
    position: relative;
    z-index: 1;
}
.ndn-promo-slider__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 100%;
    grid-template-rows: 1fr;
    gap: 0;
    width: 100%;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}
.ndn-promo-slider__track::-webkit-scrollbar { display: none; }
.ndn-promo-slider__track > .ndn-promo-slider__slide {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-inline: 0 !important;
    scroll-snap-align: start;
    scroll-snap-stop: always;
}
.ndn-promo-slider__controls {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
    padding: 12px 16px;
    color: #111;
    background: transparent;
    font: 700 14px/1.2 azo-sans-web, Arial, sans-serif;
}
.ndn-promo-slider__dots { display: flex; gap: 2px; }
.ndn-promo-slider__controls button {
    display: inline-grid;
    place-items: center;
    min-width: 44px;
    min-height: 44px;
    padding: 8px;
    border: 1px solid #111;
    border-radius: 0;
    background: transparent;
    color: #111;
    box-shadow: none;
    cursor: pointer;
    font: inherit;
}
.ndn-promo-slider__controls button:hover { background: #e4e0d9; color: #111; }
.ndn-promo-slider__controls button:focus-visible,
.ndn-promo-slider__track:focus-visible { outline: 3px solid #c8102e; outline-offset: 3px; }
.ndn-promo-slider__dots button { border-color: transparent; }
.ndn-promo-slider__dots button::before {
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 1px solid currentColor;
}
.ndn-promo-slider__dots button[aria-current="true"]::before { background: #c8102e; border-color: #c8102e; }
.ndn-promo-slider__status { min-width: 3.5em; text-align: center; }
@media (prefers-reduced-motion: reduce) {
    .ndn-promo-slider__track { scroll-behavior: auto !important; }
}
