        /* Estilo global - Dark Mode */
        body {
            margin: 0;
            font-family: Arial, sans-serif;
            /*background-color: #ffffff;
            color: #121212;*/
        }

        /* ini Contenedor de slider nuevo con video */
        .container {
            background-color: #F5F5F5;
            box-shadow: 0 4px 6px rgba(69, 6, 117, 0.7);
            max-width: 900px;
            margin-top: 5px;
            margin-bottom: 20px;
            padding: 1rem;
        }

        .slider-container {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 1rem;
        }

        .slider {
            flex: 2;
            position: relative;
            overflow: hidden;
            max-width: 100%;
            border: 2px solid;
            border-image: linear-gradient(to bottom, black, white) 1;
        }

        .slides {
            display: flex;
            transition: transform 0.5s ease-in-out;
        }

        .slides img, .slides video {
            width: 100%;
            height: auto;
        }

        .slider-controls {
            position: absolute;
            top: 50%;
            width: 100%;
            display: flex;
            justify-content: space-between;
            transform: translateY(-50%);
            
        }

        .slider-controls button {
            background: rgba(0, 0, 0, 0.5);
            border: none;
            color: white;
            padding: 0.5rem 1rem;
            cursor: pointer;
            font-size: 1.2rem;
            
        }

        .slider-info {
            flex: 1;
            text-align: center;
            color: #f47f23;
            font-size: 12px;
                        
        }

        .slider-info p {
            margin-bottom: 1rem;
        }

        .slider-info button {
            background-color: #450675;
            border: none;
            padding: 0.5rem 1rem;
            margin: 0.5rem auto; /* Centra los botones horizontalmente */
            color: white;
            border-radius: 5px;
            cursor: pointer;
            transition: background-color 0.3s;
            display: block; /* Apila los botones verticalmente */
            width: 50%; /* Establece el ancho en el 50% del contenedor */
            text-align: center; /* Centra el texto dentro del botón */
    }

    .slider-info button2 {
        background-color:#fcca64;
        border: none;
        padding: 0.5rem 1rem;
        margin: 0.5rem auto; /* Centra los botones horizontalmente */
        color:  #450675;
        border-radius: 5px;
        cursor: pointer;
        transition: background-color 0.3s;
        display: block; /* Apila los botones verticalmente */
        width: 50%; /* Establece el ancho en el 50% del contenedor */
        text-align: center; /* Centra el texto dentro del botón */
}

        
        .slider-info button:hover, 
        .slider-info button2:hover {
            background-color: #008b8b;
        }


        /* fin Contenedor de slider nuevo con video */


        /* Contenedor de las tarjetas */
        .container2 {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;

            gap: 20px;
            padding: 20px;
            max-width: 1200px;
            margin: 0 auto;
            transition: opacity 0.5s ease, visibility 0.5s ease;
            
        }

        .container2.visible {
            opacity: 1;
            visibility: visible;
        }

        /*tarjetas de aliados*/
        .card {
            background-color: #E0E0E0;
            background-size: cover; /* Ajustar proporcionalmente */
            background-position: center; /* Centrar la imagen */
            border-radius: 10px;
            width: 150px;
            aspect-ratio: 2 / 3; /* Proporción 2:3 */
            text-align: center;
            /*box-shadow: 0 4px 8px rgba(255, 255, 255, 0.2);*/
            box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4);
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            color: #fff;
            padding: 15px;
            overflow: hidden; /* Para evitar desbordamientos */
        }

        .card img.flag {
            width: 60px;
            height: auto;
            max-height: 30px;
            border-radius: 5px;
            margin-bottom: 10px;
            object-fit: contain;
        }

        .logo-rotating img {
            width: 100px;
            height: 40px;
            border-radius: 10px;
            object-fit: contain;
        }

        .card h3, .card p {
            margin: 5px 0;
        }

        .card .button-container {
            display: flex;
            justify-content: center;
            gap: 10px; /* Espacio entre botones */
            margin-top: 10px;
            background-color: rgba(30, 30, 30, 0.5); /* Negro con 50% de transparencia */
            padding: 10px 0; /* Ajusta el espacio vertical */
            border-radius: 10px; /* Redondeo de esquinas */
        }

        /* Responsive para tablets y móviles */
        @media (max-width: 768px) {
            .card {
                height: 300px; /* Ajusta la altura */
            }

            .button-container {
                flex-direction: column; /* Botones en columna */
                align-items: center;
                justify-content: flex-end; /* Ubica los botones abajo */
                padding: 15px;
                border-radius: 15px;
            }
        }

        /* Responsive para móviles pequeños */
        @media (max-width: 480px) {
            .card {
                height: 350px; /* Asegura más espacio para los botones */
            }

            .button-container {
                padding: 10px;
                border-radius: 20px;
            }
        }


        .btn-whatsapp, .btn-whatsapp2 {
            display: inline-block;
            padding: 8px 12px;
            border-radius: 5px;
            text-decoration: none;
            font-weight: bold;
            font-size: 10px;
            height: 20px; /* Ajuste para el alto deseado */
            line-height: 5px; /* Alinea el texto verticalmente dentro del botón */
            text-align: center; /* Centra el texto horizontalmente */
        }

        .btn-whatsapp {
            background-color: #25d366;
            color: #ffffff;
            transition: background-color 0.3s ease;
        }

        .btn-whatsapp:hover {
            background-color: #1ebe57;
        }

        .btn-whatsapp2 {
            background-color: #000080;
            color: #ffffff;
            transition: background-color 0.3s ease;
        }

        .btn-whatsapp2:hover {
            background-color: #828282;
        }

         /* Responsividad */
    @media (max-width: 768px) {
        .banner-container {
            min-height: 25vh; /* Reducir la altura mínima en pantallas pequeñas */
        }

        .container2 {
            margin-top: 10px; /* Reducir aún más el espacio entre el banner y las tarjetas */
        }
    }

    @media (max-width: 480px) {
        .banner-container {
            min-height: 20vh; /* Altura aún más compacta en móviles */
        }
    }


    .carousel-inner {
        position: relative;
        width: 100%;
        overflow: hidden;
    }
    
    .carousel-image {
        width: 100%; /* Ajusta el ancho de la imagen al 100% del contenedor */
        height: auto; /* Mantiene las proporciones de la imagen */
        display: block; /* Elimina espacios blancos alrededor de la imagen */
        object-fit: contain; /* Asegura que la imagen se ajuste sin recortes */
    }



    /*INI BLOQUE PARA TARJETAS CATEGORIAS*/
/* Contenedor principal para las tarjetas */
.cardscateg-grid {
   /* display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); /* Configura columnas adaptables 
    gap: 1.5rem; /* Espacio entre las tarjetas 
    justify-content: center; /* Centra las tarjetas horizontalmente 
    margin-left: 10rem; /* Agrega un margen  al lado izquierdo 
    */
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 20px;
        padding: 20px;
        max-width: 900px;
        margin: 0 auto;
        transition: opacity 0.5s ease, visibility 0.5s ease;
        background-color: #F5F5F5;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.7);
    
}


/* Contenedor para el efecto flip */
.cardcateg-container {
    perspective: 1000px; /* Perspectiva para el efecto 3D */
    width: 150px; /* Tamaño fijo de la tarjeta */
    aspect-ratio: 2 / 3; /* Mantiene la proporción 2:3 */
    margin: auto; /* Centra las tarjetas dentro del grid */
}

.cardcateg {
    background-size: cover; /* Ajustar imagen proporcionalmente */
    background-position: center; /* Centrar imagen */
    border-radius: 10px;
    width: 100%; /* Se adapta al contenedor */
    height: 100%; /* Se adapta al contenedor */
    text-align: center;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    overflow: hidden;

    /* Transición y rotación inicial */
    transition: transform 0.6s;
    transform-style: preserve-3d;
    position: relative; /* Necesario para posicionar lados frontal y posterior */
}

/* Lado frontal */
.cardcateg-front {
    backface-visibility: hidden; /* Ocultar al girar */
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: 100%;
    height: 100%;
    padding: 10px 0; /* Ajusta el espacio vertical */
}

/* Lado posterior */
.cardcateg-back {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #333; /* Color del lado posterior */
    border-radius: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    backface-visibility: hidden; /* Ocultar al girar */
    transform: rotateY(180deg); /* Girar el lado posterior */
    color: #fff;
}

/*FIN BLOQUE PARA TARJETAS CATEGORIAS*/

/* Estilos base  para botones egc*/
.responsive-button {
    background-color: #450675;
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    font-size: 14px;
    cursor: pointer;
    width: auto; /* Permite que el ancho sea dinámico */
    max-width: 100%; /* Asegura que no exceda el contenedor */
    white-space: nowrap; /* Evita que el texto se divida en varias líneas */
    overflow: hidden; /* Evita desbordamientos visuales */
    text-overflow: ellipsis; /* Añade "..." si el texto es demasiado largo */
    box-sizing: border-box; /* Incluye padding y borde en el cálculo del ancho */
    text-align: center; /* Centra el texto */
    
}


/* Hover para interacción */
.responsive-button:hover {
    background-color: #5a088e;
    transform: scale(1.05);
}

/* Responsive para dispositivos pequeños */
@media (max-width: 768px) {
    .responsive-button {
        padding: 8px 15px;
        font-size: 14px;
    }
}

@media (max-width: 480px) {
    .responsive-button {
        padding: 5px 10px;
        font-size: 12px;
        white-space: normal; /* Permite que el texto se ajuste en varias líneas si es necesario */
    }
}

/* ini estilos para bloque de texto "Explora...." entre slides de videos  y categorias*/
.page-header {
    display: flex; /* Utiliza flexbox para centrar contenido */
    flex-direction: column; /* Alinea elementos verticalmente */
    align-items: center; /* Centra horizontalmente */
    justify-content: center; /* Centra verticalmente */
    text-align: center; /* Centra texto dentro del contenedor */
    padding: 10px; /* Agrega espacio alrededor del contenido */
    margin: 0 auto; /* Centra el contenedor en la página */
    max-width: 90%; /* Limita el ancho máximo para responsividad */
    background-color: #F5F5F5;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
  }
  
  .page-header h1 {
    font-size: 1.5rem; /* Ajusta el tamaño de fuente principal */
  }
  
  .page-header h1 small {
    font-size: 0.7rem; /* Ajusta el tamaño de fuente del texto secundario */
    display: block; /* Asegura que el texto secundario quede debajo */
  }

  .egc-subtitle {
    display: inline-block;
    font-size: 50%; /* Tamaño base relativo al padre */
    color: #f47f23; /* Color secundario */
    font-weight: 50;
    text-transform: none;
    letter-spacing: 0.5px;
    line-height: 0.7;
    margin-left: 0.5em;
    opacity: 0.9;
    transition: all 0.3s ease;
    /* Efectos adicionales */
    font-family: inherit; /* Mantiene la misma fuente que el contenedor padre */
}

.egc-subtitle:hover {
    opacity: 1;
    color: #450675;
    cursor: pointer;
    /*text-decoration: underline;*/
}

/* Modificadores opcionales */
.egc-subtitle--bold {
    font-weight: 400;
}

.egc-subtitle--uppercase {
    text-transform: uppercase;
}

.egc-subtitle--highlight {
    /*background-color: #fff3cd;*/
    padding: 0.2em 0.4em;
    border-radius: 3px;
    font-size: 14px;
}

/* Tamaños predefinidos */
.egc-subtitle.sm { font-size: 65%; }
.egc-subtitle.md { font-size: 80%; }
.egc-subtitle.lg { font-size: 95%; }
  
  @media (min-width: 768px) {
    .page-header h1 {
      font-size: 2.5rem; /* Tamaño más grande en pantallas más amplias */
    }
  
    .page-header h1 small {
      font-size: 1.2rem; /* Ajusta proporcionalmente */
    }
  }
/*fin   estilos para bloque de texto "Explora...." entre slides de videos  y categorias*/

/*Ini  estilos para bloque de banderas aliados y ventana emergente para  mostrar la tarjeta*/
.section-title {
    text-align: center;
    margin-top: 90px;
    font-size: 16px;
    font-weight: bold;
    color: #4A90E2;
}
.tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 5px;
    gap: 5px;
}
.tab {
    text-align: center;
    cursor: pointer;
    transition: transform 0.2s ease;
    flex: 1 1 calc(30% - 10px);
    max-width: 80px;
}
.tab img {
    width: 70%;
    height: auto;
    border-radius: 5px;
    background-color: #F5F5F5;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
}
.tab:hover {
    transform: scale(1.1);
}
.tab span {
    display: block;
    margin-top: 3px;
    font-size: 12px;
    color: #4A90E2;
}

/*ini nuevo egc*/
.section {
    height: auto; /* Ajusta la altura automáticamente según el contenido */
    padding: 5px 0; /* Reduce el espacio interno superior e inferior */
    margin: 5px 0; /* Reduce el margen exterior */
}

/*fin nuevo egc*/

    

.modal {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    padding: 20px;
    max-width: 1200px;
    margin: 0 auto;
    transition: opacity 0.5s ease, visibility 0.5s ease;

    display: none;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    justify-content: center;
    align-items: center;
    padding-top: 50px;
}
.modal-content {
    background-color: #1e1e1e;
    color: #fff;
    padding: 20px;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.close {
    color: #306eff;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    align-self: flex-end;
}
/* Estilos cuando se pasa el mouse */
.close:hover {
    color: #fff;
}


@media (max-width: 1024px) {
.tabs {
    flex-wrap: wrap;
}
.tab {
    flex: 1 1 calc(50% - 10px); /* 2 columnas en tablets */
}
}

/*Aplica para moviles*/
@media (max-width: 768px) {
    .modal {
        height: auto; /* Ajusta la altura según el contenido */
        max-height: 90vh; /* Limita la altura máxima */
        overflow-y: auto; /* Permite desplazamiento si es necesario */
        padding-top: 20px; /* Reduce el espacio superior */
    }

    .modal-content {
        width: 90%; /* Ajuste para móviles */
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .card {
        width: 90%; /* Ajusta para que entren dos tarjetas por fila */
        min-height: 150px; /* Asegura que las tarjetas tengan suficiente espacio */
    }
}

/*Fin  estilos para bloque de banderas aliados y ventana emergente para  mostrar la tarjeta*/


/*ini estilos para area de busqueda dentro de  productos */
:root {
    --search-bg-color: #f5f5f5; /* Fondo del área de búsqueda */
    --search-input-width: 100%; /* Ancho del input */
    --search-input-font-size: 16px; /* Tamaño de fuente del input */
    --button-padding: 10px 16px; /* Espaciado de los botones */
    --border-radius: 8px; /* Bordes redondeados */
}

/* Contenedor del área de búsqueda */
.search-container {
    background-color: var(--search-bg-color);
    padding: 15px;
    border-radius: var(--border-radius);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 600px;
    margin: 20px auto;
}

/* Formulario de búsqueda */
.search-form {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    width: 100%;
    justify-content: center;
}

/* Input de búsqueda */
.search-input {
    flex: 1;
    min-width: 200px;
    padding: 10px;
    font-size: var(--search-input-font-size);
    border: 1px solid #ccc;
    border-radius: var(--border-radius);
    outline: none;
    transition: all 0.3s ease-in-out;
}

.search-input:focus {
    border-color: #f47f23;
    box-shadow: 0 0 5px rgba(244, 127, 35, 0.5);
}

/* Botones */
.search-button,
.reset-button {
    padding-top: 5px;  /* Ajusta la altura del botón */
    padding-bottom: 5px; /* Ajusta la altura del botón */
    padding-left: 16px; /* Mantiene el padding lateral */
    padding-right: 16px; /* Mantiene el padding lateral */
    font-size: 14px;
    font-weight: bold;
    border: none;
    border-radius: var(--border-radius);
    cursor: pointer;
    transition: all 0.3s ease-in-out;
}

/* Botón de Buscar */
.search-button {
    background-color: #f47f23;
    color: white;
}

.search-button:hover {
    background-color: #d66b1e;
    box-shadow: 0 0 8px rgba(244, 127, 35, 0.5);
}

/* Botón de Restablecer */
.reset-button {
    background-color: #450675;
    color: white;
    text-decoration: none;
    display: inline-block;
    text-align: center;
    padding: var(--button-padding);
}

.reset-button:hover {
    background-color: #37055c;
    box-shadow: 0 0 8px rgba(69, 6, 117, 0.5);
}

/* Diseño responsive */
@media (max-width: 480px) {
    .search-form {
        flex-direction: column;
    }

    .search-input {
        width: 100%;
    }

    .search-button,
    .reset-button {
        width: 100%;
        text-align: center;
    }
}
/*fin estilos para area de busqueda dentro de productos*/

/* ini bloque estilos para modal de opciones de num whatsapp del lado derecho del slider*/

/* Estilo para el fondo oscuro del modal */
.modal2 {
    display: none; 
    position: fixed; 
    z-index: 1; 
    left: 0;
    top: 0;
    width: 100%; 
    height: 100%; 
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.7); 
}

.modal2-content {
    background-color: #333;
    color: white;
    margin: 15% auto;
    padding: 20px;
    border: 1px solid #888;
    width: 80%;
    max-width: 500px;
    border-radius: 10px;
}

/* Estilo del botón cerrar */
.close {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

.close:hover,
.close:focus {
    color: white;
    text-decoration: none;
    cursor: pointer;
}

/* Estilo del formulario */
form2 {
    display: flex;
    flex-direction: column;
    gap: 10px;
}



label {
    font-size: 1.1rem;
    margin-bottom: 5px;
}

select, buttonslider {
    padding: 10px;
    background-color: #444;
    border: 1px solid #555;
    color: white;
    border-radius: 5px;
    font-size: 1rem;
    box-sizing: border-box; /* Asegura que el padding no cause desbordamiento */
    width: 100%; /* Hace que el select ocupe todo el ancho disponible */
}

select {
    font-size: 1rem;
    padding: 12px; /* Para que sea más cómodo en pantallas pequeñas */
    width: 100%; /* Asegura que se ajuste correctamente */
    max-width: 100%; /* Asegura que no se desborde */
    box-sizing: border-box; /* Para no exceder el contenedor */
}

select option {
    width: 100%; /* Asegura que las opciones dentro del select no se desborden */
}

buttonslider:hover {
    background-color: #555;
}

/* Responsividad */
@media (max-width: 768px) {
    .modal2-content {
        width: 90%;
    }

    select, buttonslider {
        font-size: 1rem;
        padding: 12px;
    }

    label {
        font-size: 1rem;
    }
}

/* Para dispositivos más pequeños */
@media (max-width: 480px) {
    .modal2-content {
        width: 95%;
        padding: 15px;
    }

    select, buttonslider {
        padding: 14px;
        font-size: 1.1rem;
    }

    h2 {
        font-size: 1.3rem;
    }
}
/* fin bloque estilos para modal de opciones de num whatsapp del lado derecho del slider*/