

@font-face {
    font-family: 'apercubold';
    src: url(../fonts/apercufonts/apercu_bold-webfont.woff2) format('woff2'), url(../fonts/apercufonts/apercu_bold-webfont.woff) format('woff');
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: 'aperculight';
    src: url(../fonts/apercufonts/apercu_light-webfont.woff2) format('woff2'), url(../fonts/apercufonts/apercu_light-webfont.woff) format('woff');
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: 'apercumedium';
    src: url(../fonts/apercufonts/apercu_medium-webfont.woff2) format('woff2'), url(../fonts/apercufonts/apercu_medium-webfont.woff) format('woff');
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: 'apercuregular';
    src: url(../fonts/apercufonts/apercu_regular-webfont.woff2) format('woff2'), url(../fonts/apercufonts/apercu_regular-webfont.woff) format('woff');
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: 'apercubold';
    src: url(../fonts/apercufonts/apercu_bold-webfont.woff2) format('woff2'), url(../fonts/apercufonts/apercu_bold-webfont.woff) format('woff');
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: 'aperculight';
    src: url(../fonts/apercufonts/apercu_light-webfont.woff2) format('woff2'), url(../fonts/apercufonts/apercu_light-webfont.woff) format('woff');
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: 'apercumedium';
    src: url(../fonts/apercufonts/apercu_medium-webfont.woff2) format('woff2'), url(../fonts/apercufonts/apercu_medium-webfont.woff) format('woff');
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: 'apercuregular';
    src: url(../fonts/apercufonts/apercu_regular-webfont.woff2) format('woff2'), url(../fonts/apercufonts/apercu_regular-webfont.woff) format('woff');
    font-weight: 400;
    font-style: normal
}

:root {
    --vert: #00a8a3;
    --black: #000;
    --light-color: #fff;
    --box-shadow: .5rem .5rem rgba(0, 0, 0, .1)
}

* {

    font-size: 15px;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    text-decoration: none;
    outline: none;
    border: none;
    transition: all .2s linear
}

body {
    font-family: 'apercubold' !important;
    background-color: #fff;
    margin: 0;
    padding: 0;
    overflow-x: hidden !important
}

section {
    padding: 4rem 0
}

.no-margin {
    margin: 0 !important
}

.bg-gray {
    background-color: #f5f5f5
}
.text-white {
    color: #fff !important;
}
@media only screen and (min-width: 992px) {
    .fade-carousel {
        position: relative;
        min-height: 50vh;
        z-index: 0
    }
}

@media only screen and (min-width: 992px) {
    .fade-carousel .carousel-inner .item {
        min-height: 50vh
    }
}

.fade-carousel .carousel-indicators > li {
    margin: 0 2px;
    background-color: transparent;
    border-color: #000
}

.fade-carousel .carousel-indicators > li.active {
    width: 10px;
    height: 10px;
    background-color: #000;
    border-color: #000
}

.hero {
    position: absolute;
    top: 40%;
    left: 50%;
    z-index: 3;
    color: #fff;
    text-align: left;
    text-shadow: 1px 1px 0 rgba(0, 0, 0, .75);
    -webkit-transform: translate3d(-50%, -50%, 0);
    -moz-transform: translate3d(-50%, -50%, 0);
    -ms-transform: translate3d(-50%, -50%, 0);
    -o-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0)
}

.hero h1 {
    font-size: 3em;
    color: #000;
    font-family: 'apercubold'
}

.hero h3 {
    font-size: 16px;
    color: #000;
    font-family: 'aperculight'
}

.fade-carousel .carousel-inner .item .hero {
    opacity: 0;
    -webkit-transition: 2s all ease-in-out .1s;
    -moz-transition: 2s all ease-in-out .1s;
    -ms-transition: 2s all ease-in-out .1s;
    -o-transition: 2s all ease-in-out .1s;
    transition: 2s all ease-in-out .1s
}

.fade-carousel .carousel-inner .item.active .hero {
    opacity: 1;
    -webkit-transition: 2s all ease-in-out .1s;
    -moz-transition: 2s all ease-in-out .1s;
    -ms-transition: 2s all ease-in-out .1s;
    -o-transition: 2s all ease-in-out .1s;
    transition: 2s all ease-in-out .1s
}

#banner-slider .owl-controls .owl-nav .owl-prev {
    left: 0
}

#banner-slider .owl-controls .owl-nav .owl-next {
    right: 0
}

@media only screen and (min-width: 992px) {
    .fade-carousel .slides .slide-1, .fade-carousel .slides .slide-2, .fade-carousel .slides .slide-3 {
        min-height: 50vh;
        background-size: cover;
        background-position: center center;
        background-repeat: no-repeat
    }
}

@media only screen and (min-width: 992px) {
    .carousel-inner > .item > img, .carousel-inner > .item > a > img {
        min-height: 50vh;
        width: 100%
    }
}

.bg-blue-mazar {
    background-color: #000
}

@media screen and (min-width: 482px) {
    .p-20 {
        padding: 2rem
    }
}

@media screen and (max-width: 482px) {
    .p-20 {
        padding: 2rem 0
    }
}

.search-mazar {
    padding: 0 2rem
}

.input-icons img {
    position: absolute
}

.input-icons {
    width: 100%;
    margin-bottom: 10px
}

.icon {
    padding: 10px;
    width: 40px;
    right: 15px
}

.search-mazar .input-field {
    width: 100%;
    padding: 10px;
    text-align: center;
    height: 50px;
    border: 1px solid #fff;
    background-color: transparent;
    color: #fff;
    font-size: 16px
}

.search-mazar label {
    color: #fff;
    font-size: 15px;
    margin-bottom: 1rem
}

.btn.btn-search {
    border-radius: 50%;
    padding: 15px;
    background-color: transparent;
    border: 4px solid #00a8a3;
    color: #00a8a3;
    font-weight: 700
}

.search-mazar #daterange {
    visibility: hidden;
    position: absolute;
    left: 40px;
    right: 0;
    height: 0;
    width: 0
}

.search-mazar input::placeholder, .search-mazar input:focus::placeholder {
    color: #fff;
    text-align: left
}

.search-mazar .form-group {
    margin-bottom: 0
}

.search-mazar .desc {
    color: #fff
}

.search-mazar .date-value {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.search-mazar .date-value .day {
    color: #f5f5f5;
    font-weight: 700;
    font-family: 'apercubold';
    margin-right: 10px;
    font-size: 50px
}

.search-mazar .date-value .year, .search-mazar .date-value .month {
    display: block;
    line-height: 17px;
    color: #f5f5f5;
    font-family: 'apercuregular'
}

.search-mazar .fa-chevron-down {
    color: #00a8a3
}

.search-mazar .big {
    font-size: 50px;
    color: #f5f5f5;
    font-weight: 700;
    font-family: 'apercubold';
    margin-right: 10px
}

@media screen and (min-width: 992px) {
    .search-mazar .border-right {
        border-right: 1px solid #fff
    }
}

.position-search {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 2rem 0 0 0
}

@media screen and (max-width: 780px) {
    .search-mazar {
        padding: 2rem
    }

    .search-mazar .big {
        font-size: 30px
    }

    .search-mazar .date-value .day {
        font-size: 30px
    }

    .btn.btn-search {
        padding: 5px
    }

    .search-mazar .icon {
        width: 30px
    }

    .position-search {
        padding: .5rem 0 0 0
    }
}

.btn {
    padding: 0 20px;
    line-height: 32px;
    border: 2px solid transparent;
    position: relative;
    display: inline-block;

    -moz-transition: ease all 0.35s;
    -o-transition: ease all 0.35s;
    -webkit-transition: ease all 0.35s;
    transition: ease all 0.35s;
    border-radius: 0;
    font-size: 16px;
    font-weight: 500
}

.btn-list {
    background-color: #00a8a3;
    color: #fff;
    border: 1px solid #00a8a3
}

.btn-list:hover, .btn-list:focus {
    background-color: #fff;
    color: #00a8a3
}

.title-section {
    padding-bottom: 10px
}

.title-section .title {
    color: #000;
    font-family: 'apercubold';
    font-size: 32px
}

.title-section p {
    font-size: 13px;
    color: #565656;
    font-family: 'apercuregular';
    font-weight: 400;
}

.no-padding {
    padding: 0 !important
}

#hotels .card {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: none
}

#hotels a:hover{
    text-decoration: none;
}

#hotels .card-body {
    padding: .5rem 1rem;
    background-color: #fff;
    border-bottom: 2px solid #00a8a3
}

.overlay-circuits, #hotels .overlay-hotel {
    position: absolute;
    top: 15px;
    right: -.45px;
    bottom: 0;
    z-index: 2;
    padding: 8px 0 5px 5px
}

#hotels .item-hotel {
    margin: 0 10px
}

#hotels .card-body p {
    margin: 0
}

#hotels .img-hotel:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    opacity: 1;
    background-image: linear-gradient(0deg, #000000ba 0%, rgba(0, 0, 0, 0) 55%);
    background: -moz-linear-gradient(bottom, rgba(0, 0, 0, .73) 0%, rgba(0, 0, 0, 0) 55%);
    background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, .73) 0%, rgba(0, 0, 0, 0) 55%);
    background: linear-gradient(to top, rgba(0, 0, 0, .73) 0%, rgba(0, 0, 0, 0) 55%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ba000000', endColorstr='#00000000', GradientType=0);
    z-index: 1
}

#hotels .img-hotel .image {
    height: 350px !important;
    object-fit: cover
}

.overlay-circuits p, #hotels .overlay-hotel p {
    color: #fff;
    margin-bottom: 2px
}

.overlay-circuits h2, #hotels .overlay-hotel h2 {
    color: #fff;
    font-weight: 700;
    font-family: 'apercubold';
    margin-bottom: 2px;
    margin-top: 2px;
    font-size: 28px
}

.overlay-circuits .prix, #hotels .prix {
    padding: 7px;
    background-color: #00a8a3
}

#hotels .card-title {
    margin: 5px 0;
    color: #666;
    font-weight: 300;
    font-family: 'apercuregular';
    font-size: 14px;
    font-weight: 300
}

#hotels .card-text {
    color: #000;
    font-weight: 300;
    font-family: 'apercubold'
}

#hotels .star-rating {
    color: #ffcb37;
    font-size: 13px;
    margin-right: 5px;
    margin-bottom: 10px
}

.font-30 {
    font-size: 30px !important;
    width: 80%
}

.font-20 {
    font-size: 16px !important
}

@media screen and (min-width: 992px) {
    .py-5 {
        padding: 4rem 0
    }

    .height-half {
        height: 200px
    }
}

.mb-4 {
    margin-bottom: 3rem !important
}

.pb-3 {
    margin: 2%
}

.mt-4 {
    margin-top: 3rem !important
}

#voyages .card .thumbnail {
    border: 0 none;
    padding: 0;
    margin: 0;
    position: relative;
    background: transparent
}

#voyages .card .thumbnail img {
    height: 430px !important;
    object-fit: cover
}

.circ-spec .card .thumbnail {
    border: 0 none;
    padding: 0;
    margin: 0;
    min-height: auto;
    position: relative;
    background: transparent
}

#voyages .card .thumbnail > img, .circ-spec .card .thumbnail > img {
    box-shadow: 0 25px 20px -21px rgba(0, 0, 0, .57)
}

#voyages .card .details, .circ-spec .card .details {
    /*background: -moz-linear-gradient(bottom, rgba(0, 0, 0, .73) 0%, rgba(0, 0, 0, 0) 55%);*/
    /*background: -webkit-linear-gradient(bottom, rgba(0, 0, 0, .73) 0%, rgba(0, 0, 0, 0) 55%);*/
    background: linear-gradient(0deg, rgba(0, 0, 0, 1) 35%, rgba(0, 0, 0, 0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ba000000', endColorstr='#00000000', GradientType=0);
    bottom: 0;
    display: block;
    padding: 20px;
    position: absolute;
    width: 100%;
    z-index: 1032
}

#voyages .card .thumbnail img, .circ-spec .card .thumbnail img {
    width: 100%
}

.thumbnail-circuit img {
    height: 230px;
    object-fit: cover
}

.circ-spec .details-title {
    color: #fff;
    font-family: 'apercuregular';
    margin-bottom: 2px;
    font-size: 20px;
    color: #fff;
    font-weight: 700
}

.circ-spec .details-hotel {
    color: #fff;
    font-family: 'apercuregular';
    font-size: 16px;
    color: #fff;
    font-weight: 300;
    margin-bottom: 5px
}

#voyages .star-rating, .circ-spec .star-rating {
    color: #00a8a3;
    margin-right: 5px
}

.item-voyage {
    margin: 0 10px
}

.title-section {
    padding-bottom: 10px
}

#voyages .titre-départ {
    color: #000;
    background-color: #fff;
    text-transform: capitalize;
    padding: 10px;
    font-family: 'apercubold'
}

#voyages .prix-départ {
    background-color: #00a8a3;
    color: #fff;
    padding: 10px;
    font-family: 'apercubold'
}

#voyages .card p {
    margin-bottom: 2px
}

#voyages sup {
    font-size: 50%
}

#voyages h2 {
    margin-top: 2px
}

.card-overlay-voyage {
    position: absolute;
    top: 15px;
    right: -.45px;
    bottom: 0;
    z-index: 2;
    padding: 8px 0 5px 5px
}

#voyages .details-title {
    color: #fff;
    font-family: 'apercubold';
    font-size: 17px
}

#voyages .details-description, #voyages .details-hotel {
    color: #fff
}

#voyages .owl-theme .owl-dots .owl-dot.active span, #voyages .owl-theme .owl-dots .owl-dot:hover span {
    background-color: #00a8a3;
    border: 1px solid transparent
}

#voyages .owl-theme .owl-dots .owl-dot span {
    background-color: transparent;
    border: 1px solid #00a8a3
}

#choisir .card-title {
    color: #666;
    /*width: 70%;*/
    margin: 5px auto;
    font-weight: 600;
    font-size: 16px
}

#choisir .icon-service {
    width: 80px;
    padding: 5px
}

#choisir .icon-partenaire {
    width: 120px;
    border: 1px solid #f5f5f5;
    padding: 5px
}

#choisir .widget {
    padding: 1rem;
    text-align: center
}

@media screen and (min-width: 550px) {
    #choisir .align-content {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        gap: 1.5rem
    }
}

.card:hover > .back-face {
    transform: rotateY(0deg)
}

.scrolltop-btn {
    position: fixed;
    right: 30px;
    bottom: 30px;
    width: 40px;
    height: 40px;
    text-align: center;
    font-size: 24px;
    background-color: #00a8a3;
    color: #fff;
    padding: 0;
    z-index: 999
}

.scrolltop-btn:hover {
    opacity: .8
}

.btn.scrolltop-btn {
    display: none;
    padding-top: 0;
    padding-bottom: 0
}

.owl-controls .owl-nav .owl-prev:hover, .owl-controls .owl-nav .owl-prev:focus, .owl-controls .owl-nav .owl-next:hover, .owl-controls .owl-nav .owl-next:focus, .owl-controls .owl-nav .owl-next:active, .owl-controls .owl-nav .owl-next:active {
    color: #fff;
    outline: none;
    background: rgba(0, 174, 239, .75);
    border-color: rgba(0, 174, 239, .75)
}

.owl-prev .fa, .owl-next .fa {
    display: block;
    line-height: 21px;
    font-size: 20px
}

.owl-controls .owl-nav .owl-prev {
    left: -5%;
    top: 50%;
    -moz-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%)
}

.owl-controls .owl-nav .owl-next {
    right: -5%;
    top: 50%;
    -moz-transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%)
}

.owl-carousel .item-wrap {
    margin-bottom: 0
}

.owl-theme .owl-controls .owl-nav [class*="owl-"] {
    align-items: center;
    display: flex;
    justify-content: center;
    color: #fff;
    font-size: 52px;
    border-radius: 30px;
    background-color: #00a8a3;
    height: 50px;
    width: 50px
}

.owl-theme .owl-controls .owl-nav [class*="owl-"]:hover {
    background-color: #fff;
    border: 1px solid #00a8a3;
    color: #00a8a3
}

.video-testimonial-block {
    position: relative;
    width: auto;
    height: 470px;
    overflow: hidden
}

.video-testimonial-block img {
    height: 470px;
    object-fit: cover;
    width: 100%
}

.video-testimonial-block .video-thumbnail {
    height: 100%;
    width: 100%;
    position: absolute;
    z-index: 1;
    background-size: cover;
    top: 0;
    left: 0
}

.video-testimonial-block .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0
}

.video-testimonial-block .video-play {
    position: absolute;
    z-index: 2;
    top: 40%;
    left: 45%;
    margin-left: -40px;
    margin-top: -18px;
    text-decoration: none
}

.video-testimonial-block .video-play::before {
    content: url(../images/icons/video.svg)
}

.video-testimonial-block .video-play:hover::before {
    color: #172651
}

.thumbnail-circuit:hover .overlay {
    opacity: 1;
    transform: scale(1)
}

.overlay {
    position: absolute;
    background-color: #fff;
    width: 100%;
    height: 101%;
    top: 0;
    transform: scale(1);
    opacity: 0;
    transition: transform .4s ease 0s;
    z-index: 1034;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 10px solid #00a8a3
}

h5.details-overlay {
    font-size: 20px;
    color: gray;
    font-family: "apercumedium"
}

p.details-overlay {
    font-size: 16px;
    color: #999
}

.prix-overlay-circuits {
    color: #00a8a3;
    font-weight: 300
}

.prix-overlay-circuits h2 {
    color: #00a8a3;
    font-weight: 600;
    margin: 0
}

#search .bg-white {
    background-color: #fff
}

@media only screen and (min-width: 1200px) {
    #search .container {
        width: 85%;
        margin: auto
    }

    #search .form {
        position: absolute;
        margin-top: -120px;
        z-index: 3;
        width: 85%
    }
}

@media only screen and (min-width: 992px) {
    #search .container {
        width: 85%;
        margin: auto
    }

    #search .form {
        position: absolute;
        margin-top: -120px;
        z-index: 3;
        width: 85%
    }
}

#search .form-group {
    margin-bottom: 0;
    padding: 20px 0
}

#search label {
    font-size: 15px;
    color: #221f1f;
    font-weight: 500;
    padding-left: 10px
}

@media (max-width: 992px) {
    #search {
        padding: 20px 0
    }

    #search .btn-list {
        height: 50px !important;
        line-height: 50px !important;
        font-size: 16px;
        margin-top: 20px
    }

    .mb-sm-3 {
        margin-bottom: 15px
    }

    .mb-tp-3 {
        margin-top: 20px
    }
}

#search .social-icon-svg {
    height: 25px
}

#search .form-control, #search .read-only {
    border: 1px solid #939292;
    color: #939292;
    box-shadow: none;
    background-color: transparent;
    border-radius: 6px;
    height: 50px
}

#search .btn-list {
    color: #fff;
    font-weight: 400;
    background-color: #00a8a3;
    border: 1px solid #00a8a3;
    width: 100%;
    height: 104px;
    line-height: 93px;
    text-align: center;
    font-size: 16px
}

#search .btn-list:hover {
    color: #00a8a3;
    background-color: #fff;
    border: 1px solid #00a8a3
}

#search .no-padding {
    padding: 0 !important
}

#search .img-filtre {
    margin-right: 5px;
    height: 25px !important
}

#search .form-control::placeholder {
    color: #939292
}

.input-right {
    padding-bottom: 1em
}

.input-right {
    position: relative
}

.input-right input {
    padding-right: 35px !important
}

.input-right img {
    position: absolute;
    right: 0;
    padding: 12px 12px;
    pointer-events: none
}

.input-group {
    display: inherit
}

#preloader {
    /*position: fixed;*/
    /*inset: 0;*/
    /*z-index: 9999;*/
    /*overflow: hidden;*/
    /*background: #fff;*/
    /*transition: all 0.6s ease-out;*/
    /*width: 100%;*/
    /*height: 100vh;*/
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 99999999999;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;

}

/*#preloader ul {*/
/*    position: absolute;*/
/*    margin: auto;*/
/*    top: 0;*/
/*    left: 0;*/
/*    bottom: 0;*/
/*    right: 0;*/
/*    width: 150px;*/
/*    height: 150px;*/
/*    padding: 30px;*/
/*    border-radius: 200px;*/
/*    list-style: none;*/
/*    overflow: hidden*/
/*}*/

/*#preloader li:nth-child(1) {*/
/*    display: flex;*/
/*    align-items: center;*/
/*    justify-content: center*/
/*}*/

/*#preloader li {*/
/*    position: absolute;*/
/*    margin: auto;*/
/*    top: 0;*/
/*    left: 0;*/
/*    bottom: 0;*/
/*    right: 0;*/
/*    height: 0;*/
/*    border-radius: 100px*/
/*}*/

#preloader .logo-loader {

    background-position: center;
    background-repeat: no-repeat;
}

@media(max-width: 991px){
    #preloader .logo-loader {
        width: 90%;
    }
}
section#choisir.nos-partenaires {
    padding-bottom: 0;
}
#choisir .card-title .card-text {
    font-size: 14px !important
}


.circ-spec p.font-20{
    text-align: justify;
}

.card.bloc.mb-4 img {
    height: 270px;
    object-fit: cover;
}

