/* ================= VARIABLES ================= */

:root{
  --navy:#010D35;
  --blue:#0075FF;
  --orange:#FE951C;
  --soft-bg:#f1f5fb;
}

/* ================= GENERALES ================= */

body{
  font-family:'Segoe UI', sans-serif;
  background:#eef3f9;
  padding-top:90px;
}

.section-padding{
  padding:100px 0;
}

.bg-soft{
  background:var(--soft-bg);
}

/* ================= NAVBAR ================= */

.custom-navbar{
  background:white;
  padding:20px 0;
  box-shadow:0 5px 20px rgba(0,0,0,0.05);
}

.nav-link{
  font-weight:500;
  color:#1e1e1e !important;
  transition:0.3s ease;
}

.nav-link:hover{
  color:var(--blue) !important;
}

.active-link{
  color:var(--blue) !important;
  font-weight:600;
}

.nav-icon{
  font-size:20px;
  color:#1e1e1e;
  transition:0.3s ease;
}

.nav-icon:hover{
  color:var(--blue);
}

.mobile-page-title{
  font-weight:600;
  font-size:18px;
  letter-spacing:1px;
}

/* ================= HERO CONTACTO ================= */

.contact-hero{

height:60vh;

background:
linear-gradient(rgba(1,13,53,0.8), rgba(0,117,255,0.6)),
url("https://images.unsplash.com/photo-1558611848-73f7eb4001a1");

background-size:cover;
background-position:center;

}

/* ================= FORMULARIO ================= */

.contact-form{

background:white;
padding:40px;
border-radius:20px;

box-shadow:0 15px 40px rgba(0,0,0,0.08);

}

.contact-form .form-control{

padding:14px;
border-radius:10px;

}

/* ================= TARJETAS REDES ================= */

.social-card{

position:relative;

display:block;

height:260px;

border-radius:20px;

overflow:hidden;

text-decoration:none;

box-shadow:0 15px 40px rgba(0,0,0,0.08);

transition:0.4s;

}

.social-card img{

width:100%;
height:100%;
object-fit:cover;

transition:0.4s;

}

.social-content{

position:absolute;

bottom:0;
left:0;

width:100%;
height:100%;

background:linear-gradient(to top, rgba(1,13,53,0.9), rgba(1,13,53,0.2));

color:white;

display:flex;

flex-direction:column;

justify-content:flex-end;

padding:25px;

}

.social-content i{

font-size:30px;
margin-bottom:10px;

}

.social-content h5{
font-weight:700;
}

.social-content p{
font-size:14px;
}

/* ================= HOVER ================= */

.social-card:hover img{

transform:scale(1.1);

}

.social-card:hover{

transform:translateY(-8px);

box-shadow:0 25px 60px rgba(0,0,0,0.2);

}

/* ================= FOOTER ================= */

.footer-section{
  background:var(--navy);
  color:white;
  padding:70px 0;
}

.footer-section a{
  color:#ddd;
  text-decoration:none;
  transition:0.3s;
}

.footer-section a:hover{
  color:white;
}

/* ================= ANIMACIONES ================= */

.reveal{
  opacity:0;
  transform:translateY(40px);
  transition:opacity 0.8s ease, transform 0.8s ease;
}

.reveal.active{
  opacity:1;
  transform:translateY(0);
}

/* ================= RESPONSIVE ================= */

@media(max-width:768px){

.section-padding{
padding:70px 0;
}

.contact-hero{
height:45vh;
text-align:center;
}

.social-card{
height:220px;
}

}
.social-icon{
display:flex;
justify-content:center;
align-items:center;
height:120px;
}

.social-icon i{
font-size:60px;
color:white;
}