/* =========================================
   1. ESTRUCTURA BASE (IGUAL AL INDEX)
   ========================================= */
.banner-slider {
    position: relative;
    width: 100%;
    height: 300px; /* Altura inicial */
    overflow: hidden;
    background: transparent !important; /* Para ver tu fondo del HTML */
}

@media screen and (min-width: 1024px) { 
    .banner-slider { height: 700px; } 
}

/* =========================================
   2. CONFIGURACIÓN SWIPER
   ========================================= */
.mySwiper {
    width: 100%;
    height: 100%;
    z-index: 1;
}

.slide-main-content, .slide-main-content picture {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.slide-main-content img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    animation: bounceFloat 6s ease-in-out infinite;
}

@keyframes bounceFloat {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.015); } 
}

/* =========================================
   3. CONTROLES (OCULTOS POR AHORA)
   ========================================= */
.swiper-button-next, 
.swiper-button-prev, 
.swiper-pagination {
    display: none !important; /* Cambiar a flex cuando haya +1 slide */
}

/* Estilo para cuando los actives */
.swiper-button-next, .swiper-button-prev { color: #be1421 !important; }
.swiper-pagination-bullet-active { background: #be1421 !important; }

/* =========================================
   4. AJUSTE MÓVIL (340PX)
   ========================================= */
@media (max-width: 767px) {
    .banner-slider { 
        height: 340px !important; 
    }
    .slide-main-content img {
        object-fit: contain !important; /* Para no cortar el diseño móvil */
    }
}

/* =========================================
   5. GALERÍA DE CLIENTES (TU GRILLA DE ABAJO)
   ========================================= */
.clientes-galeria {
    padding: 50px 0;
    background: #f9f9f9;
}

.clientes-galeria .main__title {
    text-align: center;
    margin-bottom: 50px;
    color: #be1421;
    font-size: 2em;
    text-transform: none;
}

.galeria-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    padding: 0 20px;
}

.cliente-card {
    position: relative;
    height: 300px;
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

.cliente-card__img {
    width: 100%; height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.cliente-card__overlay {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(190, 20, 33, 0.9);
    display: flex; align-items: center; justify-content: center;
    text-align: center; padding: 25px;
    opacity: 0; transition: opacity 0.4s ease;
}

.cliente-card:hover .cliente-card__overlay { opacity: 1; }
.cliente-card:hover .cliente-card__img { transform: scale(1.1); }

.cliente-card__info { color: white; }
.cliente-card__name { font-size: 1.3em; margin-bottom: 10px; font-weight: bold; }

@media screen and (max-width: 768px) { 
    .galeria-grid { grid-template-columns: 1fr; gap: 20px; } 
}