/* =======================================================
   ESTILOS GENERALES
======================================================= */

html{
    scroll-behavior:smooth;
}

body{

    font-family:Arial, Helvetica, sans-serif;
    overflow-x:hidden;
    background:#ffffff;

}

section{

    padding:70px 0;

}

img{

    max-width:100%;
    height:auto;

}

/* =======================================================
   TOP BAR
======================================================= */

.top-bar{

    font-size:14px;

}

.top-bar a{

    color:#fff;
    text-decoration:none;
    transition:.3s;

}

.top-bar a:hover{

    opacity:.8;

}

.social-icons i{

    font-size:18px;

}

/* =======================================================
   NAVBAR
======================================================= */

.navbar{

    transition:.4s;

}

.navbar-brand img{

    transition:.3s;

}

.nav-link{

    font-weight:600;
    margin-left:15px;
    transition:.3s;

}

.nav-link:hover{

    color:#dc3545 !important;

}

.nav-link.active{

    color:#dc3545 !important;

}

.navbar-scroll {
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.12);
}

.navbar-scroll .navbar-brand img {
    height: 48px !important;
}

/* =======================================================
   HERO
======================================================= */

#hero{

    margin:0;
    padding:0;

}

#heroCarousel img{

    width:100%;
    height:750px;
    object-fit:cover;

}

.carousel-caption{

    bottom:18%;

}

.carousel-caption h1{

    font-size:55px;
    font-weight:700;

    text-shadow:0 3px 10px rgba(0,0,0,.6);

}

.carousel-caption p{

    font-size:22px;

    text-shadow:0 2px 8px rgba(0,0,0,.5);

}

.carousel-caption .btn{

    padding:12px 35px;

}

/* Oscurece ligeramente la imagen */

.carousel-item::before{

    content:"";

    position:absolute;

    inset:0;

    background:rgba(0,0,0,.35);

}

.carousel-caption{

    z-index:5;

}

/* =======================================================
   DESTINOS
======================================================= */

#destinos img{

    border-radius:15px;

    transition:.4s;

    box-shadow:0 8px 20px rgba(0,0,0,.15);

}

#destinos img:hover{

    transform:scale(1.04);

}

#carouselDestinos .carousel-control-prev-icon,
#carouselDestinos .carousel-control-next-icon{

    background-color:#dc3545;

    border-radius:50%;

    padding:18px;

}

/* =======================================================
   BOTONES
======================================================= */

.btn-danger{

    transition:.3s;

}

.btn-danger:hover{

    transform:translateY(-3px);

}

.btn-success{

    transition:.3s;

}

.btn-success:hover{

    transform:translateY(-3px);

}

/* =======================================================
   WHATSAPP FLOTANTE
======================================================= */

.whatsapp-float{

    position:fixed;

    right:25px;

    bottom:25px;

    width:60px;

    height:60px;

    border-radius:50%;

    background:#25D366;

    color:#fff;

    display:flex;

    justify-content:center;

    align-items:center;

    font-size:32px;

    text-decoration:none;

    z-index:9999;

    box-shadow:0 8px 18px rgba(0,0,0,.25);

    transition:.3s;

}

.whatsapp-float:hover{

    transform:scale(1.1);

    color:#fff;

}

/* =======================================================
   TITULOS
======================================================= */

h2{

    font-weight:700;

}

/* =======================================================
   RESPONSIVE
======================================================= */

@media(max-width:991px){

    #heroCarousel img{

        height:500px;

    }

    .carousel-caption{

        bottom:12%;

    }

    .carousel-caption h1{

        font-size:38px;

    }

    .carousel-caption p{

        font-size:18px;

    }

}

@media(max-width:768px){

    section{

        padding:50px 0;

    }

    #heroCarousel img{

        height:350px;

    }

    .carousel-caption{

        bottom:8%;

    }

    .carousel-caption h1{

        font-size:28px;

    }

    .carousel-caption p{

        display:none;

    }

    .carousel-caption .btn{

        padding:10px 25px;

        font-size:15px;

    }

    .navbar-brand img{

        height:45px !important;

    }

    .top-bar{

        text-align:center;

    }

}

@media(max-width:576px){

    #heroCarousel img{

        height:280px;

    }

    .carousel-caption h1{

        font-size:22px;

    }

}

.video-luma {
    width: 100%;
    max-width: 360px;
    height: auto;
    max-height: 640px;
    object-fit: contain;
    border-radius: 15px;
    display: block;
}