*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Arial, Helvetica, sans-serif;
  color:#fff;

  /* Fondo azul más dinámico con degradado suave y capa decorativa fija */
  background:
    linear-gradient(180deg,#0b1220 0%, #0e1a33 50%, #08101a 100%);
  background-attachment: fixed;
}
body::before{
  content:"";
  position:fixed; inset:0; pointer-events:none; z-index:-1;
  background:
    radial-gradient(1000px 400px at 20% 10%, rgba(59,130,246,.06), transparent 60%),
    radial-gradient(800px 300px at 80% 20%, rgba(59,130,246,.05), transparent 60%),
    radial-gradient(900px 500px at 50% 90%, rgba(59,130,246,.04), transparent 65%);
}

/* ===== TICKER ===== */
.ticker{
  width:100%;
  overflow:hidden;
  background:#000;
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.ticker-track{
  display:inline-block;
  white-space:nowrap;
  padding:8px 0;
  animation:ticker-move 28s linear infinite;
}
.ticker .item{
  display:inline-block;
  margin-right:48px;
  font-weight:700;
}
@keyframes ticker-move{
  0%{transform:translateX(0)}
  100%{transform:translateX(-50%)}
}

/* Contenedor */
.wrap{max-width:1000px;margin:0 auto;padding:24px}

/* NAV (logo un poco más grande y header más compacto sin cambiar tipografías) */
.nav{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;              /* antes 14px */
  border-bottom:1px solid rgba(255,255,255,.1);
  padding:8px 0 6px;     /* antes padding-bottom:12px */
}
.logo{height:120px;width:auto;display:block} /* antes 100px */
.nav-links{display:flex;gap:22px;flex-wrap:wrap;justify-content:center}
.nav a{color:#cbd5e1;text-decoration:none;font-weight:600}
.nav a:hover{color:#fff}

/* REGALO (centrado en el mismo bloque) */
.gift{text-align:center;margin-top:40px}
.gift-container{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  flex-wrap:wrap;
}
.gift-text{
  flex:1;min-width:260px;
  text-align:center;      /* centramos solo el contenido, mantiene su columna */
}
.gift-text h2{color:#fff;margin-bottom:12px;text-align:center}
.gift-text p{color:#cbd5e1;margin-bottom:16px;line-height:1.4;text-align:center}
#newsletter-form{ text-align:center; } /* botón centrado */
.gift input{
  padding:12px;width:280px;max-width:90%;
  margin:10px auto;border-radius:10px;border:1px solid #1e293b;
  background:#0b1220;color:#e2e8f0;text-align:center;
}
.gift-image img{max-width:300px;border-radius:12px;}

/* Secciones */
#productos h2,#faq h2,#contacto h2{
  text-align:center;font-style:italic;color:#fff;margin-top:8px;
}

/* GRID productos */
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
@media (min-width:900px){.grid{grid-template-columns:repeat(3,1fr)}}

/* Card producto */
.card{
  background:#0f172a;border:1px solid #1e293b;border-radius:18px;padding:16px;
}
.card h3{color:#fff;margin:8px 0 6px;text-align:center;font-style:italic}
.bullets{margin:8px 0 12px;padding-left:18px;color:#fff}

/* Video pequeño */
.product-video{
  display:block;width:100%;max-width:320px;aspect-ratio:16/9;height:auto;
  margin:8px auto 12px;border-radius:12px;border:1px solid #1e293b;background:#000;object-fit:cover;
}

/* Precios */
.price{text-align:center;font-size:18px;margin-top:4px;color:#fff}
.old-price{text-decoration:line-through;color:#fff;margin-right:8px}
.new-price{color:#fff;font-weight:700}

/* Botones */
.btn{
  display:inline-block;
  padding:12px 18px;
  border-radius:12px;
  background:#3b82f6;
  color:#fff;
  text-decoration:none;
  font-weight:600;
  border:none;
  cursor:pointer;
}
.btn:hover{filter:brightness(1.05)}

.bizum-btn{background:#3b82f6}
.bizum-btn:hover{filter:brightness(1.08)}
.btn-center{text-align:center;margin-top:10px}

/* FAQ */
#faq details{
  background:#0f172a;border:1px solid #1e293b;border-radius:12px;padding:12px;margin:8px 0;text-align:center;
}
#faq summary{cursor:pointer;color:#fff;font-weight:600}
#faq p{color:#fff;margin:8px 0 0;text-align:center}

/* Contacto + Footer */
.meta{color:#94a3b8;font-size:12px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
input,textarea{
  width:100%;padding:12px;border-radius:10px;border:1px solid #1e293b;background:#0b1220;color:#e2e8f0;
}
textarea{min-height:120px;resize:vertical}
.footer{color:#94a3b8;text-align:center;padding-top:20px;border-top:1px solid #1e293b}

/* Contenido legal */
.legal{max-width:900px;margin:0 auto}
.legal h1{margin-top:0}
.legal p, .legal li{color:#cbd5e1;line-height:1.6}
.legal ul{padding-left:18px}

/* Modal Bizum */
.modal.hidden{display:none}
.modal{position:fixed;inset:0;z-index:50}
.modal-overlay{position:absolute;inset:0;background:rgba(0,0,0,.55)}
.modal-card{
  position:relative;max-width:520px;margin:10vh auto;background:#0f172a;border:1px solid #1e293b;
  border-radius:16px;padding:20px;box-shadow:0 10px 30px rgba(0,0,0,.4);color:#fff;
}
.modal-close{
  position:absolute;right:10px;top:8px;background:transparent;border:none;color:#fff;
  font-size:22px;cursor:pointer;line-height:1;
}
.modal-line{margin:8px 0}
.micro-btn{
  margin-left:8px;padding:4px 8px;border-radius:8px;border:1px solid #1e293b;background:#0b1220;color:#fff;cursor:pointer;
}
.micro-btn:hover{filter:brightness(1.1)}
.modal-help{color:#cbd5e1;margin-top:10px;font-size:14px}

/* Responsive */
@media (max-width:640px){
  .form-row{grid-template-columns:1fr}
  .logo{height:100px} /* reduce un poco en móviles para no ocupar demasiado */
  .product-video{max-width:100%}
  .gift-container{flex-direction:column}
  .gift-text{text-align:center}
}
