/* ====
   NAVBAR
==== */

.navbar{
    box-shadow:0 2px 10px rgb(158, 157, 157);
    height:80px;
    overflow:visible;
    padding: 10px 0;
}

.navbar-custom{
    background:rgb(0,48,130);
    transition:0.4s;
}

.navbar-scrolled{
    background:#111;
    box-shadow:0 4px 10px rgba(0,48,130,0.3);
}

/* Logo */

.navbar-brand{
    display:flex;
    align-items:center;
    margin-right:auto;
    padding:0;
}

.logo{
    height:120px;
    width:auto;
    position:relative;
}

/* Links */

.nav-link{
    color:white !important;
    font-weight:500;
}

.nav-link.active{
    color:#f4b400 !important;
}

/* ====
   MENÚ MÓVIL
==== */

@media (max-width:991px){

    .navbar-collapse{
        background:rgba(102,99,102);
        padding:15px;
        margin-top:10px;
        border-radius:10px;
    }

    .navbar-collapse .nav-link{
        padding:10px 0;
    }

    .logo{
        height:120px;
    }

}

/* ====
   TELÉFONOS
==== */

@media (max-width:768px){

    .logo{
        height:80px;
    }

}






/* Idiomas Seleccionador */

.lang-selector { position: relative; display: inline-block; }

.lang-btn {
  display: flex; align-items: center; gap: 8px;
  padding: 8px 12px; cursor: pointer;
  background: transparent;
  border: 1px solid rgba(255,255,255,0.3);
  border-radius: 8px; font-size: 14px; color: white;
}

.lang-btn:hover { background: rgba(255,255,255,0.1); }

.lang-dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  background: white;
  border: 1px solid #ddd;
  border-radius: 8px;
  min-width: 150px;
  box-shadow: 0 4px 16px rgba(0,0,0,0.15);
  z-index: 9999;
  overflow: hidden;
}

.lang-dropdown.open { display: block; }

.lang-option {
  display: flex; align-items: center; gap: 10px;
  padding: 10px 14px; cursor: pointer;
  font-size: 14px; color: #333;
}

.lang-option:hover { background: #f5f5f5; }


section{
    scroll-margin-top:120px;
}






.hero-servicios{
background:url('../img/Mantenimiento/Mantenimiento3.png') center/cover;
color:white;
padding:100px 0;
position:relative;
}

.hero-servicios::before{
content:"";
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
background:rgba(0,0,0,0.6);
}

.hero-servicios .container{
position:relative;
z-index:2;
}





/* CARRUSEL */
.carousel-item img{
height:300px;
object-fit:cover;
}

.img-limpieza {
    width: 100%;
    height: 400px;
    object-fit: contain;
    background: #f4f1e8;
}





/* CARDS */

.info-card{
background:rgb(239, 236, 239);
border-radius:12px;
box-shadow:0 5px 15px rgba(0,0,0,0.1);
transition:0.3s;
height:100%;
}

.info-card:hover{
transform:translateY(-8px);
box-shadow:0 15px 30px rgba(0,0,0,0.2);
}





/* SCROLL ANIMATION */


.reveal{
opacity:0;
transform:translateY(50px);
transition:all 0.6s ease;
}


.reveal.active{
opacity:1;
transform:translateY(0);
}

.reveal-left {
  opacity: 0;
  transform: translateX(-80px);
  transition: all 0.8s ease;
}

.reveal-right {
  opacity: 0;
  transform: translateX(80px);
  transition: all 0.8s ease;
}

.reveal-up {
  opacity: 0;
  transform: translateY(80px);
  transition: all 0.8s ease;
}

/* Estado visible */
.reveal-left.active,
.reveal-right.active,
.reveal-up.active {
  opacity: 1;
  transform: translate(0);
}



/* TITLE CARDS */

.py-5 h3{
 color:rgba(0,48,130);
}

.py-5 h3:hover{
 color:#f1d68c;
}








/* FOOTER */

.footer{
background:#111;
color:white;
padding:50px 0;
}

.footer-logo{
height:80px;
width:80px;
max-width:100%;
}

.footer .col-md-4:first-child{
display:flex;
flex-direction:column;
justify-content:center;
}

@media (max-width:768px){
.footer-logo{
height:60px;
}
}

.footer h5{
margin-bottom:15px;
font-weight:600;
}


.footer p{
color:#bbb;
font-size:14px;
}

.footer-links{
list-style:none;
padding:0;
}

.footer-links li{
margin-bottom:8px;
}

.footer-links a{
color:#bbb;
text-decoration:none;
transition:0.3s;
}

.footer-links a:hover{
color:#f4b400;
}


.footer-logo{
    width:160px;
    height:auto;
    margin-top:10px;
    margin-left:100px;
}


.telefono{
color:#bbb;
text-decoration:none;
transition:0.3s;
}

.telefono:hover{
color:#f4b400;
}

.contacto p{
transition: 0.3s;
}

.contacto p:hover{
color:#f4b400;
}


.social-icons a{
color:white;
margin-right:10px;
font-size:18px;
transition:0.3s;
}

.social-icons a:hover{
color:#f4b400;
}

