/* Reset y fuente */
* { 
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Poppins', sans-serif;
}

/*Inhabilita las demas redes */
.no-disponible, .no-disponiblee {
    position: relative;
    opacity: 0.6;
    pointer-events: none;
}
.no-disponible::before, .no-disponiblee::before {
    content: "Proximamente";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: bold;
    border-radius: 8px;
    z-index: 10;
    text-align: center;
    box-shadow: 0 2px 10px rgba(0,0,0,0.4);
}
.no-disponible::before {
    content: "Lista de espera abierta";
}
.no-disponiblee::before {
    font-size: 18px;
}

/* Sección uno: Hero */
.uno {
  padding: 160px 40px 100px 40px;
  background: linear-gradient(to right, #cfe8fc, #e6e1ec, #ffd6cb);
  display: flex;
  justify-content: center;
  gap: 50px;
}
.info1 {
  width: 55%;
  max-width: 500px;
}
.p1 { /* En el HTML, asegúrate que esta clase esté en una etiqueta H1 */
  font-weight: bold;
  font-size: 40px;
  line-height: 1.3;
  margin-bottom: 15px;
}
.p1 span {
  color: #fc3c34;
}
.p2 {
  color: #6b7280;
  font-size: 18px;
  margin-bottom: 30px;
}
.crecimiento {
  background-color: rgba(255, 130, 125, 0.2);
  border: 1px solid rgba(252, 60, 52, 0.4);
  border-radius: 20px;
  padding: 2px 8px;
  font-size: 14px;
  display: inline-block;
  margin-bottom: 15px;
}
.crecimiento:hover {
  background-color: #f97571;
  color: white;
  transform: translateY(-2px);
}
.ahora {
  display: inline-flex;
  align-items: center;
  gap: 15px;
  background-color: #fc3c34;
  color: white;
  font-size: 16px;
  cursor: pointer;
  border: none;
  padding: 12px 24px;
  border-radius: 10px;
  transition: all 0.3s;
  margin-right: 15px;
}
.ahora:hover {
  background-color: #ff4842;
  transform: translateY(-2px);
}
.info2 {
  width: 45%;
  max-width: 500px;
  background: white;
  border-radius: 20px;
  padding: 30px;
  align-self: center;
  box-shadow: 0 20px 30px rgba(0, 0, 0, 0.1);
}
.card-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.card {
  background: #f5f7fa;
  padding: 20px;
  border-radius: 15px;
  text-align: center;
  transition: transform 0.3s ease;
}
.card:hover {
  transform: translateY(-5px);
}
.icon {
  width: 50px;
  height: 50px;
  margin: 0 auto 10px;
  border-radius: 50%;
  color: white;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}
.icon.instagram { background: #e1306c; }
.icon.facebook  { background: #1877f2; }
.icon.youtube   { background: #ff0000; }
.icon.tiktok    { background: #000; }
.icon.apple    { background: #ff7a18; }
.icon.spotify    { background: #1DB954; }
.name {
  font-weight: bold;
  margin: 5px 0;
}
.price {
  color: gray;
  font-size: 14px;
}
.personalizados {
  text-align: center;
  margin-top: 25px;
  color: #6b7280;
  font-size: 14px;
}
.personalizados a {
  color: inherit;
  text-decoration: none;
  transition: color 0.3s ease;
}
.personalizados a:hover {
  color: #ff4136;
  text-decoration: underline;
  cursor: pointer;
}

/* Sección dos: Características y Beneficios */
.dos {
  padding: 100px 40px;
  background-color: white;
}
.dos .info3 {
  display: flex;
  justify-content: center;
  gap: 50px;
  flex-wrap: wrap;
  margin-top: 40px;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.tarjeta {
  width: 250px;
  border-radius: 12px;
  padding: 20px;
  background-color: white;
  text-align: left;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.tarjeta:hover {
  box-shadow: 0 12px 20px rgba(0, 0, 0, 0.1);
}
.tarjeta i {
  font-size: 20px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
}
.tarjeta .titulo {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 5px;
}
.tarjeta .desc {
  font-size: 14px;
  color: #6b7280;
}
.tarjeta.azul i      { background-color: #0d6efd; color: white; }
.tarjeta.amarillo i { background-color: #ffc107; color: white; }
.tarjeta.verde i    { background-color: #28a745; color: white; }
.tarjeta.rojo i     { background-color: #dc3545; color: white; }
.tarjeta.roja i       { background-color: #ff6b6b; color: white; }
.tarjeta.morada i     { background-color: #9b51e0; color: white; }
.tarjeta.esmeralda i { background-color: #27ae60; color: white; }
.tarjeta.celeste i   { background-color: #2d9cdb; color: white; }



/* === SECCIÓN TRES REFACTORIZADA (MANTIENE DISEÑO ORIGINAL) === */
.tres {
  padding: 70px 40px 100px 40px;
  background-color: white;
  text-align: center;
}
.info4 {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-top: 40px;
  flex-wrap: wrap; 
}
/* 1. Estilos base para TODAS las tarjetas */
.tarjeta_insta, .tarjeta_face, .tarjeta_yt, .tarjeta_tiktok, .tarjeta_apple, .tarjeta_spotify {
  height: 300px;
  width: 250px;
  border-radius: 12px;
  padding: 24px;
  background-color: white;
  transition: all 0.4s ease;
  position: relative;
}
.tarjeta_insta:hover,
.tarjeta_face:hover,
.tarjeta_yt:hover,
.tarjeta_tiktok:hover,
.tarjeta_apple:hover,
.tarjeta_spotify:hover {
  transform: translate(10px, -10px);
  box-shadow: 0 12px 20px rgba(0, 0, 0, 0.1);
}
/* 2. Estilos base para los elementos INTERNOS agrupados */
.tarjeta_insta .titulo, .tarjeta_face .titulo, .tarjeta_yt .titulo, .tarjeta_tiktok .titulo, .tarjeta_apple .titulo, .tarjeta_spotify .titulo {
  text-align: left;
}
.tarjeta_insta .desc, .tarjeta_face .desc, .tarjeta_yt .desc, .tarjeta_tiktok .desc, .tarjeta_apple .desc, .tarjeta_spotify .desc {
  margin: 10px 0 18px 0;
  min-height: 40px;
  text-align: left;
}
.tarjeta_insta i, .tarjeta_face i, .tarjeta_yt i, .tarjeta_tiktok i, .tarjeta_apple i, .tarjeta_spotify i {
  font-size: 20px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
}
.info4 button {
  gap: 15px;
  color: white;
  cursor: pointer;
  border: none;
  padding: 8px 36px;
  border-radius: 10px;
}
.insta, .face, .yt, .tik, .apple, .spotify {
  position: absolute;
  font-size: 10px;
  top: 24px;
  right: 24px;
  border-radius: 20px;
  padding: 2px 8px;
}
hr {
  opacity: 0.2;
}
/* 3. Modificadores de color y borde (únicos para cada tarjeta) */
.tarjeta_insta { border: 1px solid #E1306C; }
.tarjeta_insta i, .tarjeta_insta .insta, .tarjeta_insta .i {
  background-color: #E1306C;
  color: white;
}
.tarjeta_face { border: 1px solid #1877F2; }
.tarjeta_face i, .tarjeta_face .face, .tarjeta_face .f {
  background-color: #1877F2;
  color: white;
}
.tarjeta_yt { border: 1px solid #FF0000; }
.tarjeta_yt i, .tarjeta_yt .yt, .tarjeta_yt .y {
  background-color: #FF0000;
  color: white;
}
.tarjeta_tiktok { border: 1px solid #000000; }
.tarjeta_tiktok i, .tarjeta_tiktok .tik, .tarjeta_tiktok .t {
  background-color: #000000;
  color: white;
}

/* === INICIO: NUEVOS ESTILOS AÑADIDOS === */
.tarjeta_apple { border: 1px solid #ff7a18; }
.tarjeta_apple i, .tarjeta_apple .apple, .tarjeta_apple .t {
  background-color: #ff7a18;
  color: white;
}

.tarjeta_spotify { border: 1px solid #1DB954; }
.tarjeta_spotify i, .tarjeta_spotify .spotify, .tarjeta_spotify .t {
  background-color: #1DB954;
  color: white;
}
/* === FIN: NUEVOS ESTILOS AÑADIDOS === */


/* Sección Cuatro: Cómo funciona */
.cuatro {
  padding: 100px 40px;
  background: linear-gradient(to right, #f4faff, #f7f3fa, #fff5f0);
  text-align: center;
}
.cuatro h2 span {
  color: #fc3c34;
}
.cuatro .subtitulo {
  margin-bottom: 40px;
  color: #6b7280;
}
.pasos-contenedor {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
}
.cuadro1, .cuadro2, .cuadro3 {
  width: 250px;
  height: 200px;
  border-radius: 12px;
  background-color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.cuadro1 p:first-child,
.cuadro2 p:first-child,
.cuadro3 p:first-child {
  background-color: #fc3c34;
  color: white;
  font-weight: bold;
  font-size: 18px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 10px auto;
}


/* Diseño de Toast */
.toast-container {
  position: fixed;
  top: 90px;
  right: 30px;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.toast {
  background: linear-gradient(to right, #E1306C, #C13584, #F77737);
  color: white;
  padding: 12px 16px;
  border-radius: 8px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
  font-size: 13px;
  animation: fadeInOut 4s ease forwards;
  max-width: 300px;
  word-break: break-word;
}
@keyframes fadeInOut {
  0% { opacity: 0; transform: translateY(-10px); }
  10%, 90% { opacity: 1; transform: translateY(0); }
  100% { opacity: 0; transform: translateY(-10px); }
}


/*CSS para notificacion de compra index*/
        .notification-enter {
            transform: translateY(1rem);
            opacity: 0;
        }
        .notification-visible {
            transform: translateY(0);
            opacity: 1;
        }
        .notification-exit {
            transform: translateY(1rem);
            opacity: 0;
            pointer-events: none;
        }
        .notification {
            transition: all 0.5s ease;
        }
        /* El fondo gris y la altura mínima de pantalla ya no son necesarios aquí */