:root {
    --color-primary: #005c60;
    /* Verde petróleo oscuro */
    --color-accent: #f4e7e7;
    /* Beige rosado claro */
    --color-secondary: #1aa8aa;
    /* Turquesa claro vibrante */
    --color-dark: #000000;
    --color-light: #ffffff;
}

.bg-beige {
    background-color: #fff4e7 !important;
}

/**
* Hero
*/
#heroHome .container-slide {
    height: 100vh;
}

#heroHome .container-slide{
    position: relative;
    height: 100vh;
}

#heroHome #heroCarousel{
    position: relative;
    z-index: 1;
}

#heroHome .hero-container-title{
    position: relative;
    z-index: 2;
}

#heroHome .carousel,
#heroHome .carousel-inner,
#heroHome .carousel-item{
    height: 100%;
}

#heroHome .carousel-item{
    position: relative;
}


#heroHome .container-slide .image-bg {
    position: absolute;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

/*cambiar posicion del texto en la tercera diapositva del header*/
.sub-hero{
    bottom: 8.254rem !important;
}

#heroHome .container-slide .hero-container-title {
    /*height: 100%;*/
    height: 0%;
    bottom: 4%;
}

#heroHome .container-slide .hero-container-title .image-title {
    width: 40%;
}

#heroHome #heroCarousel img{
    filter: brightness(0.8);
}

/**
* About
**/
.container-about .image-eye {
    width: 20%;
    top: 38%;
    right: 1vw;
    z-index: -1;
}


/**
* Destinations
**/
.container-destinations .container .card,
.container-destinations .container .card img {
    border: none;
    border-radius: 0;
}

.container-destinations .container .card .card-img-overlay .title {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}

.full-card-title {
    position: relative;
    top: 30%;
    transform: translateY(-70%);
}

.container-destinations .container .card .card-img-overlay .brand-destination {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 2rem;
}

.container-destinations .container .card .card-img-overlay .card-content-botton {
    position: absolute;
    bottom: 1rem;
}

.container-destinations .container .container-cards-other-destinations .card {
    height: 100%;
}

/**
* Separator
*/
.container-separator .separator {
    position: relative;
    display: block;
    height: 2px;
}

/**
* Blog
**/
.blog .container-blog .card {
    height: 300px;
    border: none;
}

.blog .container-blog .card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgb(0, 0, 0, 0.38);
    z-index: 2;
}

.blog .container-blog .card .card-img .img-blog {
    background-image: var(--bg-image);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.blog .container-blog .card .card-body {
    z-index: 2;
}

/**
* Reviews
*/
swiper-container {
    width: 100%;
    padding-top: 50px;
    padding-bottom: 50px;
}

swiper-slide {
    background-position: center;
    background-size: cover;
    width: 600px;
    height: 338px;
}

swiper-slide img {
    display: block;
    width: 100%;
}


swiper-slide:not(.swiper-slide-active) {
    transform: scale(0.2);
    opacity: 0.5;
}

/**
* Offers
*/
.container-offers .container .card {
    border: none;
    border-radius: 20px;
}

.container-offers .container .card .card-img-top {
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}

.container-offers .container .card .btn-outline-black {
    padding: 15px !important;
    transition: 0.5s all;
}

.container-offers .container .card .btn-outline-black:hover {
    background-color: var(--color-primary) !important;
    border: none !important;
}

.container-offers .container .card .btn-outline-black .arrow-icon .cls-1 {
    fill: none;
    stroke: black;
    stroke-miterlimit: 10;
    stroke-width: 2px;
    transition: stroke 0.2s ease;
}

.container-offers .container .card .btn-outline-black:hover .arrow-icon .cls-1 {
    stroke: white;
}

/**
* Móviles
*/
@media (max-width: 767px) {
    #heroHome .container-slide {
        position: relative;
        height: auto;
    }

    /*cambiar posicion del texto en la tercera diapositva del header*/
    #heroCarousel .carousel-caption.sub-hero{
        position: absolute !important;
        bottom: 18.254rem !important;
        left: 0% !important;
    }

    #heroHome .container-slide .hero-container-title {
        /*height: auto;*/
        /*padding-top: 350px;*/
        position: absolute !important;
        bottom: 0%;
        left: 0;
        width: 100%;
        z-index: 2;
    }

    #heroHome .container-slide .hero-container-title .image-title {
        width: 90%;
    }

    #heroHome .container-slide .hero-container-title form {
        background-color: transparent;
        padding: 0 1rem;
    }



    /**
    * About
    */
    .container-about .image-eye {
        top: -20px;
        left: -38px;
        width: 30%;
        z-index: 2;
    }

    /**
    * Meaningful
    */
    .container-meaningful .container .container-brand {
        min-height: 300px;
    }

    .container-meaningful .container .container-brand .image-brand {
        width: 78% !important;
    }

    .container-meaningful-advantages .container .container-advantages {
        border: none;
    }

    .container-meaningful-advantages .container .container-advantages .col-advantage:nth-child(1),
    .container-meaningful-advantages .container .container-advantages .col-advantage:nth-child(2),
    .container-meaningful-advantages .container .container-advantages .col-advantage:nth-child(3) {
        border-right: none;
        border-bottom: 1px solid var(--color-secondary);
    }

    /**
    * Destinations
    */
    .container-destinations .image-title {
        width: 90%;
    }

    .container-destinations .container #destination-carousel .card {
        height: auto;
    }

    .container-destinations .container .container-buttons {
        gap: 1rem;
        flex-wrap: wrap;
    }

    .container-destinations .container .container-buttons button {
        white-space: nowrap;
        width: 100%;
    }

    /**
    * Offers
    */
    .container-offers .container .image-title {
        width: 78% !important;
    }

    .container-offers .container .splide__arrow.splide__arrow--next,
    .container-offers .container .splide__arrow.splide__arrow--prev {
        display: none;
    }

    /**
    * Contact form
    */
    #section_contact_form .container-form-text {
        width: 100% !important;
    }
}

.ribbon-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    width: 180px;
    height: 180px;
}

.ribbon {
    font: bold 12px sans-serif;
    color: white;
    text-align: center;
    text-transform: uppercase;
    line-height: 20px;
    transform: rotate(-45deg);
    position: absolute;
    width: 250px;
    top: 40px;
    right: 0px;
    background: #00695c;
    padding: 5px 0;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3);
}

.text-90 {
    font-size: 90px !important;
    font-weight: 600 !important;
}




.mySwiperTravel swiper-slide {
    background-position: center;
    background-size: cover;
    width: 500px;
    height: 550px;
}

@media (max-width: 767px) {
    .mySwiperTravel swiper-slide {
        background-position: center;
        background-size: cover;
        width: 380px;
        height: 430px;
    }

    .ribbon-wrapper {
        position: absolute;
        top: 0;
        left: 0;
        overflow: hidden;
        width: 180px;
        height: 180px;
    }

    .ribbon {
        font: bold 12px sans-serif;
        color: white;
        text-align: center;
        text-transform: uppercase;
        line-height: 20px;
        transform: rotate(-45deg);
        position: absolute;
        width: 250px;
        top: 40px;
        left: -80px;
        background: #00695c;
        padding: 5px 0;
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3);
    }
}

.mySwiperTravel swiper-slide {
    filter: none !important;
}

.mySwiperTravel swiper-slide {
    opacity: 1 !important;
}

.mySwiper swiper-slide {
    filter: none !important;
}

.mySwiper swiper-slide {
    opacity: 1 !important;
}


swiper-container::part(button-prev),
swiper-container::part(button-next) {
    background: #ffffffd1 !important;
    color: #055a5f !important;
    padding: 8px !important;
    border-radius: 50px !important;
    height: 30px !important;
    width: 30px !important;
}


swiper-container::part(button-prev):hover,
swiper-container::part(button-next):hover {
    background-color: rgba(0, 0, 0, 0.7);
}
