@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body{
    background-color: #FAF7F3 ;
     font-family: "Poppins", sans-serif;
}

 .whatsapp-float {
    position: fixed;
    bottom: 40px;
    right: 40px;
    z-index: 1000;
    text-decoration: none;
  }

  .whatsapp-icon {
    width: 70px;
    height: 70px;
    transition: transform 0.2s ease-in-out;
  }

  .whatsapp-icon:hover {
    transform: scale(1.5);
  }

.menu{
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
    
}

.logos{ 
    width: 10vw;
}

.menu-list{
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    list-style: none;  
}

.menu-list li{
    padding: 1rem;
    font-size: 1.2rem;
}

.menu-list li a{
    text-decoration: none;
    color: #A86523;
}
.menu-list li a:hover{
    color: black;
    
}
.banner img{
    width: 100%;
}
.banner-text{
    position: absolute;
    top: 50%;
    left: 30%;
    transform: translate(-50%, -50%);
    text-align: center;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: 3rem;
    font-weight: bold;
}
.banner-text h1{
    font-size: 3rem;
    font-weight: bold;
}
.banner-text p{
    font-size: 1.5rem;
    font-weight: bold;
}
.banner-text a{
    text-decoration: none;
    color: #A86523;
    font-size: 1.5rem;
    font-weight: bold;
    margin: 3px solir;
    padding: 5px 10px;
    border: 2px solid #A86523;
    border-radius: 5px;
}
.banner-text a:hover{
    background-color: #A86523;
    color: white;
}
.servicios{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: black;
    color: white;
    padding: 0 5rem 5rem 5rem;
}
.servicios h2{
    font-size: 3rem;
    font-weight: bold;
    margin: 3rem 0;

}

.cards{
    display: grid;
    grid-template-columns: repeat(3, 2fr);
    justify-content: center;
    align-items: center;
    gap: 15rem;
    margin-top: 5rem;
}
.cards2{
    display: grid;
    grid-template-columns: repeat(2, 2fr);
    justify-content: center;
    align-items: center;
    gap: 15rem;
    margin-top: 5rem;
    
}

.card {
  width: 250px;
  height: 300px;
  display: flex;
  flex-direction: column;
  text-align: center;
  transition: transform .3s ease, box-shadow .3s ease;
  border-radius: 30px;
  background: #e0e0e0;
  
  box-shadow: 5px 5px 10px #A86523,
             -5px -5px 10px #A86523;

}

.card:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow-hover);
}

.card img {
  width: 130px;
  height: 130px;
  object-fit: cover;
  border-radius: 50%;
  margin: 0 auto;
  margin-top: 20px;
  border: 2px solid #A86523;
}

 .card a {
      color: black;
      text-decoration: none;
      font-weight: bold;
      margin-top: 10px;
      
  }
    

   .service-section { max-width: 1300px; margin: 0 auto 4rem; display: flex; flex-direction: column; gap: 2.5rem; }

    .service-card {
      display: flex;
      align-items: center;
      gap: 2rem;
      background: white;
      border-radius: 1rem;
      box-shadow: 0 10px 15px rgba(0,0,0,0.08);
      overflow: hidden;
      transition: box-shadow .3s ease;
    }
    .service-card:hover { box-shadow: var(--shadow-hover); }

    .service-card:nth-child(even) { flex-direction: row-reverse; }

    .service-card img {
      width: 30vw;
      height: 100%;
      object-fit: cover;
    }

    .service-content { padding: 2rem; max-width: 600px; }
    .service-content h3 { font-size: 1.5rem; margin-bottom: 1rem; }
    .service-content p { font-size: 1rem; line-height: 1.6; }

    .service-section h2{
    font-size: 3rem;
    font-weight: bold;
    margin: 3rem 0;
    text-align: center;

}
/* nosotros */

.nosotros-section{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    color: black;
    padding: 0 20rem 15rem 20rem;
}
.nosotros-section h2{
    font-size: 3rem;
    font-weight: bold;
    margin: 3rem 0;
}
/* Estilos para la sección de contacto */

   .contact-section .container {
  display: flex;
  gap: 2rem;
  flex-wrap: wrap;
  margin: 5rem 2rem 5rem 2rem;
  
}

.info {
  flex: 1;
    min-width: 300px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.info h1 {
  font-size: 2.2rem;
  margin-bottom: 0.5rem;
  font-weight: 800;
}

.info h3 {
  font-size: 1rem;
  color: #666;
  font-weight: 600;
  margin-bottom: 1rem;
}

.info p {
  font-size: 0.95rem;
  color: black;
  margin-bottom: 1.5rem;
}

.card-contact {
  background-color: #FAF7F3;
  padding: 1rem;
  margin-bottom: 1rem;
  border-radius: 5px;
}

.card-contact h4 {
  margin-bottom: 0.3rem;
}

.card-contact.red {
  background-color: #A86523;
  color: white;
}

.card-contact.two-columns {
  display: flex;
  justify-content: space-between;
}

.form {
  flex: 1;
  min-width: 300px;
}

form {
  display: flex;
  flex-direction: column;
}

form label {
  font-size: 0.9rem;
  margin-bottom: 0.3rem;
  color: #555;
}

form input,
form textarea {
  margin-bottom: 1rem;
  padding: 0.6rem;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 1rem;
}

form textarea {
  height: 200px;
  background-color: #fafafa;
  resize: none;
}

form button {
  width: 100px;
  padding: 0.6rem;
  background-color: #a52b2b;
  color: white;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

@media (max-width: 480px) {
  .menu {
    flex-direction: column;
    align-items: center;
    gap: 1rem;
  }

  .logos {
    width: 60vw;
  }

  .menu-list {
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
  }

  .banner-text {
    position: static;
    transform: none;
    padding: 1rem;
    font-size: 1.2rem;
    text-align: center;
  }

  .banner-text h1 {
    font-size: 1.5rem;
  }

  .banner-text p {
    font-size: 1rem;
  }

  .banner-text a {
    font-size: 1rem;
    padding: 6px 10px;
  }

  .cards,
  .cards2 {
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-top: 2rem;
    justify-content: center;
  }

  .card {
    width: 100%;
    height: auto;
    padding: 1rem 0;
    margin: 0 auto;
  }

  .card img {
    width: 80px;
    height: 80px;
  }

  .servicios {
    padding: 0 1rem 3rem;
  }

  .servicios h2,
  .service-section h2,
  .nosotros-section h2 {
    font-size: 2rem;
    text-align: center;
  }

  .nosotros-section {
    padding: 1rem;
  }

  .service-card {
    flex-direction: column !important;
    text-align: center;
  }

  .service-card img {
    width: 100%;
    height: auto;
  }

  .service-content {
    padding: 1rem;
    max-width: 100%;
  }

  .contact-section .container {
    flex-direction: column;
    margin: 2rem 1rem;
  }

  .form {
    width: 100%;
  }

  .whatsapp-float {
    bottom: 20px;
    right: 20px;
  }

  .whatsapp-icon {
    width: 55px;
    height: 55px;
  }

  footer div {
    flex-direction: column !important;
    text-align: center;
    gap: 1.5rem;
  }

  footer h3,
  footer h4,
  footer p {
    text-align: center;
  }

  footer div[style*="display: flex"] {
    justify-content: center;
  }
}
