
/* Contenedor principal */
.container-main {
    display: flex; /* Distribuye los hijos en línea horizontal */
    width: 100%; /* Ocupa todo el ancho de la página */
    height: calc(100vh - 80px); /* Ajusta la altura de la pantalla menos el header */
    gap: 10px; /* Espacio entre el login y el slider */
}

/* Login-wrap ocupa 1/4 (lado izquierdo) */
.login-wrap {
    flex: 1; /* 1/4 de ancho */
    /* background-color: #fff; */ /* Fondo blanco */
    border-radius: 10px; /* Bordes redondeados */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Sombra sutil */
    padding: 20px; /* Espaciado interno */
    display: flex; /* Mantén alineación dentro del login */
    align-items: center; /* Centra verticalmente */
    justify-content: center; /* Centra horizontalmente */
}

/* Slider ocupa 3/4 (lado derecho) */
.slider {
    flex: 3; /* 3/4 de ancho */
    /* #background-color: #f9f9f9; */ /* Fondo claro para visualizar el área */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Sombra sutil */
    border-radius: 10px; /* Bordes redondeados */
    overflow: hidden; /* Evita que elementos sobresalgan */
    display: flex; /* Permite alinear el contenido */
    align-items: center; /* Centra verticalmente */
    justify-content: center; /* Centra horizontalmente */
}

/* Responsividad para pantallas pequeñas */
@media (max-width: 768px) {
    .container-main {
        flex-direction: column; /* Cambia a diseño vertical */
        height: auto; /* Ajusta la altura al contenido */
    }

    .slider, .login-wrap {
        flex: none; /* Deja que ocupen el ancho completo */
        width: 100%; /* Cada sección ocupará todo el ancho */
    }
}


/* Estilo base */
header {
    background-color: #111;
    color: white;
    padding: 20px 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

header .logo img {
    max-height: 60px;
}

/*IMAGEN LATERAL*/

.imagen-zoom {
  height: 80px; /* Tamaño original de la imagen */
  animation: zoom 3s infinite; /* Efecto de zoom en loop */
}

@keyframes zoom {
  0% {
    transform: scale(1); /* Tamaño original */
  }
  50% {
    transform: scale(1.2); /* Tamaño ampliado */
  }
  100% {
    transform: scale(1); /* Tamaño original */
  }
}


.imagen-lateral {
    margin-left: 0px; /* Espacio entre el logo y la imagen */
    height: 80px; /* Alto de la imagen, igual que el logo */
    display: flex;
    align-items: center;
}

.imagen-lateral img {
    max-height: 100%; /* Alto máximo de la imagen */
    width: auto; /* Ancho automático */
}
.imagen-lateral img {
    transition: all 0.3s ease-in-out;
}

.imagen-lateral img:hover {
    transform: rotate(10deg);
}


/*               */


nav {
    background-color: #222;
    border-radius: 5px;
    padding: 8px 20px;
    display: flex;
    gap: 20px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

nav a {
    color: white;
    text-decoration: none;
    font-size: 16px;
    padding: 10px 20px;
    border-radius: 5px;
    transition: background-color 0.3s ease, transform 0.2s ease;
}

nav a:hover {
    background-color: #555;
    transform: scale(1.1);
}

nav a:active {
    background-color: #444;
}

nav a.primary {
    background-color: #007bff;
}

nav a.primary:hover {
    background-color: #0056b3;
}

nav a.secondary {
    background-color: #28a745;
}

nav a.secondary:hover {
    background-color: #218838;
}

nav a.tertiary {
    background-color: #ffc107;
}

nav a.tertiary:hover {
    background-color: #e0a800;
}
nav a.quaternary {
    background-color: #6f42c1; /* Púrpura */
}

nav a.quaternary:hover {
    background-color: #5a34a8; /* Púrpura más oscuro */
}

/* Contador de visitas debajo del nav en la parte superior izquierda */
.contador {
    background: linear-gradient(135deg, rgba(0, 123, 255, 0.8), rgba(0, 123, 255, 0.5));
    color: white;
    padding: 15px 30px;
    border-radius: 15px;
    font-size: 22px;
    font-weight: bold;
    text-align: center;
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.25);
    position: absolute;
    top: 180px;  /* Fija el contador justo debajo del nav */
    left: 20px;  /* Alineado a la izquierda */
    z-index: 1000;  /* Asegura que el contador esté encima de otros elementos */
    overflow: hidden;
    transform: scale(1);
    transition: all 0.4s ease;
    animation: pulse 3s infinite ease-in-out;
}

.contador::before {
    content: "";
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background-color: rgba(255, 255, 255, 0.1);
    transform: rotate(45deg);
    animation: moveDiagonal 2s linear infinite;
}

.contador:hover {
    background: linear-gradient(135deg, rgba(0, 123, 255, 1), rgba(0, 123, 255, 0.8));
    transform: scale(1.1);
    box-shadow: 0 12px 20px rgba(0, 0, 0, 0.4);
    animation: none; /* Desactivar animación al hacer hover */
}

.contador p {
    margin: 0;
    font-size: 24px;
    letter-spacing: 1px;
}

/* Animación para el contador (efecto de pulso) */
@keyframes pulse {
    0% {
        transform: scale(1);
        opacity: 0.9;
    }
    50% {
        transform: scale(1.05);
        opacity: 1;
    }
    100% {
        transform: scale(1);
        opacity: 0.9;
    }
}

/* Animación para el fondo del contador (diagonal desplazante) */
@keyframes moveDiagonal {
    0% {
        top: -50%;
        left: -50%;
    }
    50% {
        top: 100%;
        left: 100%;
    }
    100% {
        top: -50%;
        left: -50%;
    }
}


/* Responsividad */

/* Pantallas pequeñas (móviles) */
@media (max-width: 480px) {
    header {
        flex-direction: column;
        align-items: center;
        padding: 10px 20px;
    }

    header .logo {
        margin-bottom: 10px;
    }

    nav {
        flex-direction: column;
        align-items: stretch;
    }

    nav a {
        font-size: 14px;
        text-align: center;
        width: 100%;
        box-sizing: border-box;
    }
    /* Posicionamiento del contador en pantallas pequeñas debajo del nav */
    .contador {
        font-size: 18px;
        padding: 0.5px 80px;
        width: 90%;
        margin: 122px auto;  /* Centramos el contador */
        position: absolute;
        top: 50;
        left: 10;
        z-index: 1000; /* Mantener el contador sobre el contenido */
    }
}



        #splide {
            max-width: 900px; /* Ajusta el ancho máximo del carrusel */
            margin: 0 auto; /* Centra el carrusel en la página */
        }

        /* Controla el tamaño de las imágenes */
        .splide__slide img {
            width: 100%; /* Hace que la imagen se ajuste al contenedor */
            height: auto; /* Mantiene la proporción de la imagen */
            border-radius: 10px; /* Bordes redondeados opcionales */
        }


.swal2-timer-progress-bar{
    //width: 100%;
    height: 0.8em !important;
    background: white !important;
}

#resplandorverde{   
      -moz-box-shadow: 0px 0px 30px #A3FF0F; 
      -webkit-box-shadow: 0px 0px 30px #A3FF0F; 
      box-shadow: 0px 0px 30px #A3FF0F;
      
      padding: 10px;
      width: 160px;
      margin: 40px;
   }
.text {
  font-size:28px;
  font-family:helvetica;
  font-weight:bold;
  color:#71d90b;
  text-transform:uppercase;
}
.parpadea {
  
  animation-name: parpadeo;
  animation-duration: 1s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;

  -webkit-animation-name:parpadeo;
  -webkit-animation-duration: 2s;
  -webkit-animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
}

@-moz-keyframes parpadeo{  
  0% { opacity: 1.0; }
  50% { opacity: 0.0; }
  100% { opacity: 1.0; }
}

@-webkit-keyframes parpadeo {  
  0% { opacity: 1.0; }
  50% { opacity: 0.0; }
   100% { opacity: 1.0; }
}

@keyframes parpadeo {  
  0% { opacity: 1.0; }
   50% { opacity: 0.0; }
  100% { opacity: 1.0; }
}


        /* ANUNCIOS */




.anuncios-content {
  animation: slide 20s linear infinite; /* Ajusta la duración de la animación según la longitud del texto */
}

@keyframes slide {
  0% {
    transform: translateX(100%);
  }
  100% {
    transform: translateX(-100%);
  }
}
           
.anuncios {
    background: linear-gradient(90deg, #ff9a9e, #fad0c4);
    padding: 10px 0;
    overflow: hidden;
    position: relative;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.anuncios-content {
    display: flex;
    align-items: center;
    white-space: nowrap; /* Asegura que todo se mantenga en una sola línea */
    animation: slide 15s linear infinite; /* Desplazamiento normal */
}

.anuncios-content i {
    color: #ff4757;
    font-size: 20px;
}

.anuncios-content p {
    display: inline;
    margin: 0 20px;
    font-size: 16px;
    font-weight: 700; /* Mayor grosor */
    color: #333;
    font-family: 'Poppins', sans-serif; /* Fuente más moderna */
    letter-spacing: 1px; /* Espaciado de letras */
    text-transform: uppercase; /* Texto en mayúsculas */
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2); /* Sombra suave */
    transition: all 0.3s ease; /* Efecto de transición */
}

.anuncios-content p:hover {
    color: #ff4757; /* Cambio de color al pasar el ratón */
    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); /* Aumento de la sombra al hacer hover */
}

.moto-icon {
    margin-right: 10px;
    font-size: 22px;
    color: #333;
}

@keyframes slide {
    0% {
        transform: translateX(100%);
    }
    100% {
        transform: translateX(-100%);
    }
}

/* Consultas de medios para dispositivos móviles */
@media (max-width: 768px) {
    .anuncios-content {
        gap: 10px;
        animation: slide 10 linear infinite; /* Más lento en dispositivos pequeños */
    }
    .anuncios-content i {
        font-size: 18px;
    }
    .anuncios-content p {
        font-size: 14px;
        margin: 0 10px; /* Reducir márgenes en pantallas pequeñas */
    }
    .moto-icon {
        font-size: 20px;
    }
}

@media (max-width: 480px) {
    .anuncios {
        padding: 8px 0;
    }
    .anuncios-content p {
        font-size: 12px;
        margin: 0 8px; /* Ajustar márgenes aún más en pantallas muy pequeñas */
        animation: slide 40 linear infinite; /* Más lento en dispositivos pequeños */
    }
    .anuncios-content i {
        font-size: 16px;
    }
    .moto-icon {
        font-size: 18px;
    }
}