body { 
    font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
    background-color: rgb(220, 228, 224);
    text-align: center;
}

.contenedor {
    display: flex;
    justify-content: center;
    gap: 50px;
    margin-top: 20px;
    flex-wrap: wrap;
}
.tarjeta {
    background-color: rgba(47, 68, 70);
    width: 150px;
    padding: 50px;
    border-radius: 70px;
    box-shadow: 0 0 20px rgba(rgb(226, 218, 218), green, blue, alpha);
} 
.tarjeta img {
    width: 100px;
    height: 150px;
    object-fit: contain;
    border-radius: 10px;
}
.tarjeta a {
    display: inline-block;
    margin-top: 15px;
    background-color: rgba(18, 80, 93);
    color: white;
    padding: 10px 20px;
    border-radius: 10px;
    text-decoration: none;
}
.tarjeta h2 {
    color: beige;

}  

.hero {
    width: 90%;
    max-width: 1000px;
    margin: 40px auto;
    padding: 35PX;
    background: rgba (255,255,0.55);
    border-radius: 30px;
    box-shadow: 0 15px 35px rgba ( 0,0,0,0.15);
    
    display:flex ;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
}
.hero-texto { 
    text-align: center;
}
.hero-texto h1 { 
    font-size: 45px;
    margin: 0;
    color: #172b3a;
}
.hero p { 
    font-size: 100px;
    color: #4f5f66;
    max-width: 1000px;
}
.hero img { 
    width: 200px;
    border-radius: 25px;
    box-shadow: 0 15px 30px rgba(0,0,0,0.20);
}

.principal {
    width: 90%;
    max-width: 1200px;
    margin: auto;
    padding: 20px;

}
/* Encabezado */ 
.hero {
   width: 100%;
   margin: 30px auto;
   text-align: center;
   background: transparent;
   box-shadow: none;

}
.hero h1 { 
    font-size: 40px;
    margin-bottom: 10px;
    color: rgb(30,40,50);
} 
.hero p { 
    width: 85%;
    margin: 0 auto;
    font-size: 22px;
    line-height: 1.4;
    color: rgb(70,70,70);
}
.imagen-principal { 
    width: 100%;
    max-width: 370px;
    height: auto;
    border-radius: 25px;
} 
.caja-imagen-principal {
    width: 90%;
    max-width: 600px;
    height: 330px;
    margin: 30px auto 20px auto;

    display: flex;
    justify-content: center;
    align-items: center;
}
 
/* contenedor de tarjetas */ 
.contenedor {
    width: 90%;
  max-width: 950px;
  margin: 40px auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
  justify-items: center;
    
}
/*Tarjetas*/ 
.tarjeta { 
    background: rgba(255, 255, 255, 0.9);
  width: 200px;
  min-height: 280px;
  padding: 22px 15px;
  border-radius: 25px;
  box-shadow: 0 14px 28px rgba(0,0,0,0.18);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
} 
.tarjeta:hover{ 
    transform: translateY(-8px);
    box-shadow: 0 18px 30px rgba (0,0,0.22);
} 
.tarjeta h2 {
    margin: 0 0 15px 0;
    font-size: 20px;
    color: black

}
.tarjeta img { 
    width: 100px;
    height: 100px;
    object-fit: contain;
    margin-bottom: 15px;
}
.tarjeta p {
    font-size: 13px;
    color: rbg(90,90,90);
    margin: 12px 0 0 0;
    
}
.tarjeta a { 
    display: inline-block;
    margin-top: auto;
    text-decoration: none;
    background-color: rgb(68,133,179);
    color: white;
    padding: 10px 18px;
    border-radius: 10px;
    font-size: 13px;

}
.tarjeta a:hover { 
    background-color: rgb(40,100,145);
}
.buscador { 
    width: 90%;
    max-width: 500px;
    margin: 20px auto 30px;
    display: flex;
    gap: 10px;
    justify-content: center;
}
.buscador input {
    width: 100%;
    padding: 12px 15px;
    border-radius: 12px;
    border: none;
    outline: none;
    font-size: 15px;
    box-shadow: 0 8px 18px rgba (0,0,0,0,12);
}
.buscador button {
    padding: 12px 18px;
    border: none;
    border-radius: 12px;
    background-color: #97afbb;
    color: white;
    font-weight: bold;
    cursor: pointer;
    box-shadow: 0 8px 18px rgba (0,136,204,0.25);
}
.buscador button {
    background-color: #006fa8;
}


* { 
    box-sizing: border-box;

}
body { 
    margin: 10px;
    padding: 10px;
    overflow-x: hidden;
}
h1 {
    text-align: center;
    font-size: 40px;
}
/* contenedor normal */
.contenedor {
    display: flex;
    justify-content: center;
    gap: 30px;
    flex-wrap: wrap;
    padding: 20px;
}
/* Tarjetas */
.tarjeta { 
    width: 220px;
    text-align: center;
}
/* Imagenes */ 
.tarjeta img { 
    width: 120px;
    height: auto;
}
/* Para celular */ 
@media (max_width: 600px) {
    h1 { 
        font-size: 34px;
        margin-top: 40px;
        padding: 0 10px;
    }

.contenedor { flex-direction: column;
align-items: center;
gap: 25px;
padding: 10px;
margin-top: 20px;
}
.tarjeta { 
    width: 85%;
    max-width: 300px;

}
.tarjeta img { 
    width: 140px;
    height: auto;
    }
} 
/* Botones flotantes lado izquierdo */
.botones-flotantes {
  position: fixed;
  left: 25px;
  bottom: 25px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  z-index: 999;
}

/* Estilo general de los botones */
.btn-flotante {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  border: none;
  text-decoration: none;
  font-size: 25px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.25);
  transition: 0.2s;
}

/* Efecto al tocar o pasar el mouse */
.btn-flotante:hover {
  transform: scale(1.08);
}

/* Botón inicio */
.btn-inicio {
  background: white;
  color: #0077b6;
}

/* Botón lupa */
.btn-lupa {
  background: #0077b6;
  color: white;
}

/* Botón WhatsApp */
.btn-whatsapp {
  background: #25D366;
  color: white;
}


/* Logo flotante lado derecho */
.logo-flotante {
  position: fixed;
  right: 25px;
  bottom: 25px;
  width: 75px;
  height: 75px;
  border-radius: 50%;
  background: white;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.25);
  z-index: 999;
  transition: 0.2s;
  text-decoration: none;
}

/* Imagen dentro del círculo */
.logo-flotante img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Efecto del logo */
.logo-flotante:hover {
  transform: scale(1.08);
}


/* Fondo oscuro del buscador */
.buscador-modal {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 1000;
  justify-content: center;
  align-items: flex-start;
  padding-top: 80px;
} 
.btn-tiktok img {
  width: 30px;
  height: 30px;
  object-fit: contain;
}

/* Caja blanca del buscador */
.buscador-contenido {
  background: white;
  width: 90%;
  max-width: 520px;
  border-radius: 22px;
  padding: 25px;
  position: relative;
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.25);
  animation: bajarBuscador 0.3s ease;
}

/* Animación al abrir */
@keyframes bajarBuscador {
  from {
    opacity: 0;
    transform: translateY(-25px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Título del buscador */
.buscador-contenido h2 {
  text-align: center;
  margin-bottom: 18px;
  color: #222;
  font-size: 24px;
}

/* Input del buscador */
.buscador-contenido input {
  width: 100%;
  padding: 15px;
  border-radius: 14px;
  border: 1px solid #ddd;
  outline: none;
  font-size: 16px;
  box-sizing: border-box;
}

.buscador-contenido input:focus {
  border-color: #0077b6;
}

/* Botón cerrar */
.cerrar-buscador {
  position: absolute;
  top: 12px;
  right: 16px;
  border: none;
  background: none;
  font-size: 32px;
  cursor: pointer;
  color: #555;
}

/* Resultados */
#resultadosBusqueda {
  margin-top: 18px;
}

/* Cada resultado */
.resultado-item {
  display: block;
  background: #f2f8fb;
  padding: 14px;
  border-radius: 14px;
  margin-bottom: 10px;
  color: #222;
  text-decoration: none;
  font-weight: 600;
  transition: 0.2s;
}

.resultado-item:hover {
  background: #dff1f8;
  transform: scale(1.01);
}

.resultado-item small {
  color: #555;
  font-weight: normal;
}

/* Mensaje sin resultados */
.sin-resultados {
  text-align: center;
  color: #555;
  margin-top: 15px;
}


/* Adaptado a celular */
@media (max-width: 600px) {
  .botones-flotantes {
    left: 18px;
    bottom: 18px;
    gap: 10px;
  }

  .btn-flotante {
    width: 52px;
    height: 52px;
    font-size: 22px;
  }

  .logo-flotante {
    right: 18px;
    bottom: 18px;
    width: 62px;
    height: 62px;
  }

  .buscador-modal {
    padding-top: 60px;
  }

  .buscador-contenido {
    width: 88%;
    padding: 22px;
  }

  .buscador-contenido h2 {
    font-size: 21px;
  }

  .buscador-contenido input {
    font-size: 15px;
    padding: 14px;
  }  /* Botón TikTok */

} 
/* RESETEO GENERAL */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background-color: #dfe9e3;
  font-family: Arial, sans-serif;
  overflow-x: hidden;
}

/* BARRA SUPERIOR */
.barra-superior {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 25px;
}

/* ICONOS IZQUIERDA */
.iconos-izquierda {
  display: flex;
  gap: 10px;
  align-items: center;
}

.iconos-izquierda a {
  text-decoration: none;
  font-size: 22px;
}

/* LOGO DERECHA */
.logo-derecha img {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  object-fit: cover;
}

/* TEXTO CENTRO */
.titulo-centro {
  text-align: center;
  flex: 1;
}

.titulo-centro h1 {
  font-size: 28px;
  color: #12345c;
}

/* IMAGEN PRINCIPAL */
.imagen-principal {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 20px;
}

.imagen-principal img {
  width: 90%;
  max-width: 900px;
  height: auto;
  border-radius: 10px;
  display: block;
}

/* BUSCADOR */
.buscador {
  text-align: center;
  margin: 30px 0;
}

.buscador h2 {
  font-size: 24px;
  margin-bottom: 15px;
}

.buscador input {
  width: 280px;
  max-width: 90%;
  padding: 10px;
  border-radius: 20px;
  border: 1px solid #ccc;
}

/* TARJETAS */
.contenedor-tarjetas {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 25px;
  width: 90%;
  margin: auto;
}

.tarjeta {
  background: white;
  border-radius: 18px;
  padding: 20px;
  text-align: center;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.tarjeta img {
  width: 120px;
  max-width: 100%;
  border-radius: 10px;
}

.tarjeta button {
  margin-top: 15px;
  padding: 10px 18px;
  border: none;
  border-radius: 20px;
  background-color: #3b8ec2;
  color: white;
  cursor: pointer;
}

/* ------------------------- */
/* DISEÑO PARA CELULAR */
/* ------------------------- */

@media (max-width: 768px) {

  .barra-superior {
    padding: 10px;
    align-items: center;
  }

  .iconos-izquierda {
    gap: 6px;
  }

  .iconos-izquierda a {
    font-size: 18px;
  }

  .logo-derecha img {
    width: 65px;
    height: 65px;
  }

  .titulo-centro h1 {
    font-size: 22px;
  }

  .imagen-principal {
    margin-top: 10px;
  }

  .imagen-principal img {
    width: 95%;
    max-width: 100%;
    height: auto;
  }

  .buscador {
    margin: 25px 10px;
  }

  .buscador h2 {
    font-size: 20px;
  }

  .buscador input {
    width: 90%;
    font-size: 14px;
  }

  .contenedor-tarjetas {
    grid-template-columns: 1fr;
    width: 90%;
    gap: 20px;
  }

  .tarjeta {
    width: 100%;
    padding: 18px;
  }

  .tarjeta img {
    width: 100px;
  }
}


