:root {
  --primary: #0097a8;
  --secondary: #f9ab00;
  --whatsapp: #25D366;
  --background: rgba(255, 255, 255, 0.9);
}

/* ========== RESET GENERAL ========== */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
body {
  font-family: Arial, sans-serif;
  background: url('../img/fondo.webp') no-repeat center center fixed;
  background-size: cover;
  color: #00c853;
  line-height: 1.6;
}

/* ========== IDENTIFICAR DISPOSITIVOS ========= */
.location img {
  width: 100%;
  height: auto;
  max-width: 100%;
}

/* ========== BOTONES ========= */
.button {
  background-color: #04AA6D;
  border: none;
  border-radius: 20px;
  color: white;
  padding: 15px;
  text-align: center;
  text-decoration: none;
  display: block;
  font-size: 16px;
  height: auto;
  width: 100%;
  max-width: 600px;
  margin: 10px auto;
  box-sizing: border-box;
  transition: background-color 0.3s ease;
}
.button:hover {
  background-color: #039b63;
}

/* ========== HEADER(NO FIJO) ========= */
.header {
  background: var(--background);
  padding: 15px;
  text-align: center;
  width: 100%;
  position: static;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1);
}

/* ========== HERO ========= */
.hero {
  text-align: center;
  padding: 100px 20px;
  background: rgba(0, 0, 0, 0.6);
  color: white;
}
.hero h1, .hero p {
  animation: fadeIn 1.2s ease-in-out;
}
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

/* ========== LOGO ========= */
#imglogo {
  clip-path: circle(50%);
  display: block;
  margin: 0 auto 20px;
  width: 300px;
  height: auto;
}

/* ========== SERVICIOS ========= */
.services {
  padding: 60px 20px;
  text-align: center;
}
.service-grid {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
}
.service-card {
  background: var(--background);
  padding: 20px;
  border-radius: 10px;
  width: 280px;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2);
  text-align: center;
  transition: transform 0.3s ease;
}
.service-card:hover {
  transform: scale(1.05);
}
.service-card img {
  max-width: 100%;
  height: auto;
  border-radius: 10px;
}

/* ========== SERVICIOS EXTENDIDOS ========= */
.servicio {
  padding: 60px 20px;
  background: rgba(0, 0, 0, 0.6);
  color: white;
}
.servicio ul {
  list-style: disc inside;
  margin-top: 20px;
}

/* ========== UBICACIÓN ========= */
.map-container {
  padding: 40px 20px;
}
.map-container iframe,
.map-container img {
  width: 100%;
  height: 300px;
  border: none;
}

.location {
  padding: 40px 20px;
  text-align: center;
}

.location picture,
.location img {
  width: 100%;
  max-width: 100%;
  height: auto;
  border: none;
  display: block;
  margin: 0 auto;
}

/* ========== BOTÓN WHATSAPP FLOTANTE ========= */
.whatsapp-btn {
  position: fixed;
  bottom: 15px;
  right: 15px;
  width: 60px;
  height: 60px;
  background: var(--whatsapp) url('https://www.loshermanosplomeros.com/img/whatsapp.webp') no-repeat center center;
  background-size: 50%;
  border-radius: 50%;
  box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.3);
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
}
.whatsapp-btn:hover {
  width: auto;
  padding: 0 20px;
  border-radius: 50px;
}
.whatsapp-btn:hover::after {
  content: ' Enviar WhatsApp';
  color: white;
  font-size: 14px;
  margin-left: 10px;
  white-space: nowrap;
}

/* ========== FOOTER ========= */
.footer {
  background: rgba(0, 0, 0, 0.6);
  color: #04aac1;
  text-align: center;
  padding: 20px 10px;
  font-size: 0.9rem;
}
.footer a {
  color: #ffffff;
  text-decoration: underline;
}

/* ========== RESPONSIVE ========= */
@media (max-width: 768px) {
  .hero {
    padding: 60px 15px;
  }
  .service-grid {
    flex-direction: column;
    align-items: center;
  }
}