/**
 * OM Hero Slider — estilos
 *
 * Migrado desde snippet #78 "OM - Hero Slider Custom" (2026-05-18)
 * Plugin: om-header
 */

/* === Slider base === */
.om-hero-slider {
    position: relative;
    width: 100%;
    aspect-ratio: 1920 / 574;
    overflow: hidden;
    background: linear-gradient(135deg, #29108F 0%, #5C1F9E 50%, #C33FBC 100%);
    line-height: 0;
    margin-bottom: -1px;
    display: block;
    font-size: 0;
}

.om-hero-slider * {
    line-height: 0;
}

.om-hero-slider img {
    display: block;
    vertical-align: bottom;
}

.om-hero-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 1.2s ease-in-out;
    pointer-events: none;
}

.om-hero-slide.is-active {
    opacity: 1;
    pointer-events: auto;
}

.om-hero-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}

/* === Dots de navegación === */
.om-hero-dots {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 10px;
    z-index: 10;
}

.om-hero-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.7);
    background: transparent;
    padding: 0;
    cursor: pointer;
    transition: all 0.3s ease;
}

.om-hero-dot.is-active {
    background: #fff;
    border-color: #fff;
    width: 28px;
    border-radius: 5px;
}

.om-hero-dot:hover {
    border-color: #fff;
}

/* === Mobile === */
@media (max-width: 768px) {
    .om-hero-dots {
        bottom: 12px;
        gap: 7px;
    }
    .om-hero-dot {
        width: 8px;
        height: 8px;
    }
    .om-hero-dot.is-active {
        width: 22px;
    }
}

/* === Overrides Elementor para que el slider llene su contenedor === */
.elementor-element[data-id="77ecd120"] .elementor-background-slideshow,
.elementor-element[data-id="77ecd120"] .elementor-background-slideshow__slide {
    display: none !important;
}

.elementor-element[data-id="77ecd120"] {
    min-height: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
}

.elementor-element[data-id="77ecd120"] > .e-con-inner {
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
}

.elementor-element[data-id="5a1d9666"] {
    padding: 0 !important;
    min-height: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
}

.elementor-element[data-id="5a1d9666"] > .e-con-inner {
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
}

.elementor-element-omhero1262 {
    width: 100% !important;
    max-width: 100% !important;
}

.elementor-element-omhero1262 > .elementor-widget-container,
.elementor-element-omhero1262 .elementor-shortcode {
    width: 100% !important;
    height: auto !important;
    line-height: 0 !important;
}
