/*! Flickity v2.3.0
https://flickity.metafizzy.co
---------------------------------------------- */
/*! Flickity v2.3.0 - Estilos reorganizados y refinados */

/* ==============================
   CONTENEDOR PRINCIPAL
============================== */
.flickity-enabled {
    position: relative !important;
}
.flickity-enabled:focus {
    outline: 0 !important;
}

/* ==============================
   VISTA Y SLIDER
============================== */
.flickity-viewport {
    overflow: hidden !important;
    position: relative !important;
    /* ⚠️ Evitar height:100% para que Flickity calcule correctamente */
}
.flickity-slider {
    width: 100% !important;
    /* ⚠️ NO height ni position absolute */
    transition: transform 0.7s cubic-bezier(.16,.84,.44,1) !important;
}

/* ==============================
   DRAGGING
============================== */
.flickity-enabled.is-draggable {
    -webkit-tap-highlight-color: transparent !important;
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
}
.flickity-enabled.is-draggable .flickity-viewport {
    cursor: move !important;
    cursor: -webkit-grab !important;
    cursor: grab !important;
}
.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
    cursor: -webkit-grabbing !important;
    cursor: grabbing !important;
}

/* ==============================
   BOTONES DE NAVEGACIÓN
============================== */
.flickity-button {
    position: absolute !important;
    background: rgba(255,255,255,0.85) !important;
    border: none !important;
    color: #333 !important;
    width: 50px !important;
    height: 50px !important;
    border-radius: 50% !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important;
    transition: all 0.3s ease !important;
}

.flickity-button:hover {
    background: #fff !important;
    transform: scale(1.08) !important; /* efecto sutil */
    cursor: pointer !important;
}

.flickity-button:focus { outline: 0 !important; }
.flickity-button:active { opacity: 0.6 !important; }
.flickity-button:disabled { opacity: 0.3 !important; cursor: auto !important; pointer-events: none !important; }

.flickity-button-icon {
    fill: currentColor !important;
}

.flickity-prev-next-button {
    top: 50% !important;
    transform: translateY(-50%) !important;
}

.flickity-prev-next-button.previous { left: 12px !important; }
.flickity-prev-next-button.next { right: 12px !important; }

.flickity-prev-next-button .flickity-button-icon {
    position: absolute !important;
    left: 25% !important;
    top: 25% !important;
    width: 50% !important;
    height: 50% !important;
}

/* ==============================
   PÁGINA DE PUNTOS (DOTS)
============================== */
.flickity-page-dots {
    position: absolute !important;
    width: 100% !important;
    bottom: -25px !important;
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    text-align: center !important;
    line-height: 1 !important;
}
.flickity-rtl .flickity-page-dots {
    direction: rtl !important;
}
.flickity-page-dots .dot {
    display: inline-block !important;
    width: 10px !important;
    height: 10px !important;
    margin: 0 8px !important;
    background: #333 !important;
    border-radius: 50% !important;
    opacity: 0.25 !important;
    cursor: pointer !important;
}
.flickity-page-dots .dot.is-selected {
    opacity: 1 !important;
}