/* ===== SERVICIOS ===== */

.servicios{
    padding:100px 20px;
    background:#f8fafc;
}

.servicios-container{
    width:90%;
    max-width:1200px;
    margin:auto;
}

.servicios-title{
    text-align:center;
    margin-bottom:60px;
}

.servicios-title h2{
    font-size:2.8rem;
    color:#111827;
    margin-bottom:20px;
}

.servicios-title p{
    max-width:800px;
    margin:auto;
    color:#555;
    line-height:1.8;
    font-size:1.05rem;
}

/* GRID */

.servicios-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:30px;
}

/* CARD */

.servicio-card{
    background:#fff;
    padding:40px 30px;
    border-radius:25px;
    text-align:center;
    box-shadow:0 10px 25px rgba(0,0,0,0.08);
    transition:0.4s;
}

.servicio-card:hover{
    transform:translateY(-10px);
}

.icono{
    font-size:3rem;
    margin-bottom:20px;
}

.servicio-card h3{
    font-size:1.5rem;
    color:#111827;
    margin-bottom:15px;
}

.servicio-card p{
    color:#666;
    line-height:1.8;
}

/* RESPONSIVE */

@media(max-width:768px){

    .servicios{
        padding:80px 15px;
    }

    .servicios-title h2{
        font-size:2rem;
    }

    .servicio-card{
        padding:30px 20px;
    }

}


.contacto-correos{
    display:flex;
    gap:20px;
    flex-wrap:wrap;
    justify-content:center;
    margin-top:30px;
}

.correo-btn{
    padding:15px 28px;
    background:#2563eb;
    color:#fff;
    text-decoration:none;
    border-radius:14px;
    font-weight:600;
    transition:0.3s ease;
    box-shadow:0 8px 20px rgba(37,99,235,0.2);
}

.correo-btn:hover{
    background:#1d4ed8;
    transform:translateY(-3px);
    color: rgb(0, 0, 0);
}

/* Responsive */
@media(max-width:768px){

    .contacto-correos{
        flex-direction:column;
        align-items:center;
    }

    .correo-btn{
        width:100%;
        max-width:320px;
        text-align:center;
    }

}


   *{
      margin:0;
      padding:0;
      box-sizing:border-box;
      font-family: Arial, Helvetica, sans-serif;
    }

    body{
      background:#f5f7fa;
      color:#222;
      overflow-x:hidden;
    }

    header{
      width:100%;
      position:fixed;
      top:0;
      left:0;
      z-index:1000;
      background:rgba(0,0,0,0.75);
      backdrop-filter:blur(8px);
    }

    .navbar{
      max-width:1200px;
      margin:auto;
      display:flex;
      justify-content:space-between;
      align-items:center;
      padding:18px 20px;
    }

    .logo{
      color:#fff;
      font-size:1.5rem;
      font-weight:bold;
      letter-spacing:1px;
    }

    .menu{
      display:flex;
      gap:20px;
    }

    .menu a{
      color:#fff;
      text-decoration:none;
      transition:0.3s;
      font-size:0.95rem;
    }

    .menu a:hover{
      color:#00bfff;
    }

    /* SLIDER */

    .slider{
      width:100%;
      height:100vh;
      position:relative;
      overflow:hidden;
    }

    .slide{
      position:absolute;
      width:100%;
      height:100%;
      opacity:0;
      transition:opacity 1.5s ease-in-out, transform 1.5s ease;
      transform:scale(1.1);
    }

    .slide.active{
      opacity:1;
      transform:scale(1);
    }

    .slide img{
      width:100%;
      height:100%;
      object-fit:cover;
    }

    .overlay{
      position:absolute;
      top:0;
      left:0;
      width:100%;
      height:100%;
      background:rgba(0,0,0,0.45);
      display:flex;
      justify-content:center;
      align-items:center;
      text-align:center;
      padding:20px;
    }

    .overlay-content{
      color:white;
      animation:fadeUp 1.2s ease;
    }

    .overlay-content h1{
      font-size:3.2rem;
      margin-bottom:15px;
    }

    .overlay-content p{
      font-size:1.2rem;
      margin-bottom:25px;
    }

    .btn{
      display:inline-block;
      padding:14px 30px;
      background:#00bfff;
      color:#fff;
      text-decoration:none;
      border-radius:40px;
      transition:0.3s;
      font-weight:bold;
    }

    .btn:hover{
      background:#0099cc;
      transform:translateY(-3px);
    }

    section{
      padding:90px 20px;
    }

    .container{
      max-width:1200px;
      margin:auto;
    }

    .about{
      display:grid;
      grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
      gap:40px;
      align-items:center;
    }

    .about-text h2{
      font-size:2.5rem;
      margin-bottom:20px;
      color:#111;
    }

    .about-text p{
      line-height:1.8;
      color:#555;
      margin-bottom:15px;
    }

    .info-box{
      background:white;
      padding:30px;
      border-radius:20px;
      box-shadow:0 5px 20px rgba(0,0,0,0.08);
    }

    .info-box h3{
      margin-bottom:20px;
      color:#00bfff;
    }

    .info-item{
      margin-bottom:15px;
      font-size:1rem;
      color:#444;
      ;
    }

    footer{
      background:#111;
      color:white;
      text-align:center;
      padding:30px 20px;
    }

    footer p{
      margin:8px 0;
      color:#ccc;
    }

    @keyframes fadeUp{
      from{
        opacity:0;
        transform:translateY(40px);
      }
      to{
        opacity:1;
        transform:translateY(0);
      }
    }

    /* RESPONSIVE */

    @media(max-width:768px){

      .navbar{
        flex-direction:column;
        gap:15px;
      }

      .overlay-content h1{
        font-size:2rem;
      }

      .overlay-content p{
        font-size:1rem;
      }

      .menu{
        flex-wrap:wrap;
        justify-content:center;
      }

      .slider{
        height:85vh;
      }
    }

/* CONTACT SECTION */

.contact-section{
  padding:100px 20px;
  background:white;
}

.contact-container{
  max-width:700px;
  margin:auto;
  background:#fff;
  padding:40px;
  border-radius:25px;
  box-shadow:0 10px 30px rgba(0,0,0,0.08);
}

.contact-title{
  text-align:center;
  margin-bottom:30px;
}

.contact-title h2{
  font-size:2.5rem;
  margin-bottom:10px;
  color:#111;
}

.contact-title p{
  color:#666;
}

.input-box{
  margin-bottom:20px;
}

.input-box input,
.input-box textarea{
  width:100%;
  padding:16px;
  border:none;
  background:#f1f3f6;
  border-radius:15px;
  font-size:1rem;
  outline:none;
  transition:0.3s;
}

.input-box input:focus,
.input-box textarea:focus{
  background:#e8f7ff;
  border:1px solid #00bfff;
}

.contact-btn{
  width:100%;
  padding:16px;
  border:none;
  border-radius:50px;
  background:#00bfff;
  color:white;
  font-size:1rem;
  font-weight:bold;
  cursor:pointer;
  transition:0.3s;
}

.contact-btn:hover{
  background:#0099cc;
  transform:translateY(-2px);
}

@media(max-width:768px){

  .contact-container{
    padding:25px;
  }

  .contact-title h2{
    font-size:2rem;
  }

}