* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:'Nunito', sans-serif; background:#f9f9f9; }

/* HEADER */
header { background:#fff; padding:25px; text-align:center; }
.logo {
  width:260px;
  height:120px;
  margin:auto;
  background:url(imag/WhatsApp_Image_2025-05-06_at_11.52.47_AM-removebg-preview.png)
  no-repeat center/contain;
}

/* HERO */
.servicios-hero {
  position:relative;
  background:url(imag/portg.jpg) center/cover;
  padding:90px 20px;
}
.servicios-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(255,255,255,.75);
}
.hero-text, .servicios-contenido {
  position:relative;
  z-index:2;
  text-align:center;
}
.hero-text h1 { font-size:42px; }
.hero-text p { font-size:18px; margin-bottom:50px; }

/* SERVICIOS */
.servicios-contenido {
  display:flex;
  justify-content:center;
  gap:40px;
  flex-wrap:wrap;
}
.servicio {
  background:#fff;
  width:320px;
  padding:25px;
  border-radius:14px;
  box-shadow:0 10px 25px rgba(0,0,0,.15);
}
.servicio img { width:100%; border-radius:10px; }
.servicio h2 { margin:15px 0 10px; }
.ver-mas {
  background:#ee1010;
  color:#fff;
  border:none;
  padding:10px 22px;
  border-radius:8px;
  cursor:pointer;
  margin-top:15px;
}

/* MODAL */
.modal {
  display:none;
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.6);
  justify-content:center;
  align-items:center;
  z-index:1000;
}
.modal-contenido {
  background:#fff;
  padding:25px;
  border-radius:14px;
  width:90%;
  max-width:500px;
  position:relative;
}
.cerrar {
  position:absolute;
  top:10px;
  right:15px;
  font-size:28px;
  cursor:pointer;
}
.carrusel { position:relative; }
.carrusel img { display:none; width:100%; border-radius:10px; }
.carrusel img.activa { display:block; }
.carrusel button {
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  background:rgba(0,0,0,.6);
  color:#fff;
  border:none;
  padding:10px;
  cursor:pointer;
}
.prev{left:10px;}
.next{right:10px;}

/* CTA */
.cta {
  background:#fff;
  padding:80px 20px;
  text-align:center;
}
.boton-cta {
  background:#ee1010;
  color:#fff;
  padding:14px 34px;
  border-radius:10px;
  text-decoration:none;
}

/* FOOTER */
footer {
  background:#111;
  color:#fff;
  padding:20px;
  text-align:center;
}
@media (max-width: 768px) {

  /* HERO */
  .servicios-hero {
    padding: 60px 15px;
  }

  .servicios-hero .hero-text h1 {
    font-size: 32px;
  }

  .servicios-hero .hero-text p {
    font-size: 16px;
  }

  /* TARJETAS DE SERVICIO */
  .servicios-contenido {
    flex-direction: column;
    align-items: center;
    gap: 25px;
  }

  .servicio {
    width: 100%;
    max-width: 360px;
  }

  /* VOLVER */
.volver-inicio {
  text-align: center;
  margin-bottom: 60px;
}

.boton-volver {
  color: #fff;
  text-decoration: none;
  border: 1px solid #555;
  padding: 12px 30px;
  border-radius: 30px;
  transition: background 0.3s;
}

  /* CTA */
  .cta {
    padding: 60px 20px;
  }

  .cta h2 {
    font-size: 26px;
  }

  .cta p {
    font-size: 15px;
  }

  .boton-cta {
    padding: 14px 28px;
    font-size: 15px;
  }

  /* MODAL */
  .modal-contenido {
    width: 95%;
    padding: 20px;
  }

  .carrusel button {
    padding: 8px;
    font-size: 18px;
  }
}
.cta h2 {
  margin-bottom: 15px;
}

.cta p {
  margin-bottom: 25px;
}