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

html{
  scroll-behavior:smooth;
}

body{
  font-family: Arial, Helvetica, sans-serif;
  color:var(--text);
  line-height:1.7;

/* Mantenemos tu color de texto y fondo base por si la imagen tarda en cargar */
  background-color: #ffffff; 
  color: #4b4a4a;

/* Aquí agregamos el nuevo fondo */
  background-image: url('img/patron.png'); /* Asegúrate de que la ruta sea correcta */
  background-repeat: repeat; /* Esto crea el efecto mosaico/patrón */
  background-size: 500px; /* Tamaño del dibujo. Puedes subirlo a 300px o bajarlo a 150px según qué tan grandes quieras los atrapasueños */
  background-attachment: fixed; /* El toque mágico: el fondo no se mueve al hacer scroll */
  background-position: center;

  }

img{
  max-width:100%;
  display:block;
}

a{
  text-decoration:none;
  color:inherit;
}

.container{
  width:min(92%, var(--container));
  margin:auto;
}

.section{
  padding:90px 0;
}

.section-title{
  text-align:center;
  margin-bottom:46px;
}

.section-title .line{
  width:48px;
  height:4px;
  margin:0 auto 18px;
  background:var(--primary);
  border-radius:999px;
}

.section-title h2{
  font-family: Georgia, "Times New Roman", serif;
  color:#1e1e1e;
  font-size: clamp(2rem, 4vw, 3rem);
  margin-bottom:10px;
  line-height:1.1;
}

.section-title p{
  max-width:740px;
  margin:auto;
  color:#71808f;
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 28px;
  border-radius:999px;
  font-weight:700;
  border:none;
  cursor:pointer;
  transition:.25s ease;
}

.btn-primary{
  color:#fff;
  background:linear-gradient(135deg, #ff5ba9, var(--primary));
  box-shadow:0 12px 25px rgba(255,45,122,.25);
}

.btn-primary:hover{
  transform:translateY(-2px);
}

.btn-outline{
  background:#fff;
  color:var(--primary);
  border:1.5px solid var(--primary);
}

.btn-outline:hover{
  background:var(--primary);
  color:#fff;
}

.btn-whatsapp{
  background:#29cc5f;
  color:#fff;
}

.badge-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  padding:9px 18px;
  font-size:.92rem;
  font-weight:700;
}

.badge-primary{
  background:#d21d67;
  color:#fff;
}

.badge-soft{
  background:#ff8db8;
  color:#fff;
}