body a{color:#000; transition: all 300ms ease;}
body a:hover,
body a:focus{color:#c21617;}

header{
    z-index: 100;
    box-shadow: 0 1px 15px rgba(0,0,0,0.3);
    position: relative;
}

.navbar-default.header-k21{
    background-color: #000;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 40px;
    min-height: 100px;
    border-radius: 0;
}

.header-k21 .navbar-header::before,
.header-k21 .navbar-header::after,
.navbar-default.header-k21::before,
.navbar-default.header-k21::after{display: none;}

.header-k21 .logo-header{max-width: 290px;}

.header-k21 .navbar-header{
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.navbar-header .logos-marques{
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 32px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.logos-marques li a{transition: all 300ms ease; opacity: 0.6;}
.logos-marques li a:hover,
.logos-marques li a:focus{opacity: 1; outline: none;}

.header-phone{
    display:flex;
    align-items: center;
    position:relative;
    margin: 0 40px 0 50px;
    padding-top: 2px;
    font-size: 20px;
    color: #FFF;
    font-weight: 700;
}

.header-phone a{
    display: flex;
    color: #FFF;
    text-decoration: none;
}

.header-phone a:focus{outline: none;}

.header-phone svg{margin-right: 12px;}

.navbar-header .link-rs{display:flex; align-items: center; gap:18px;}

.navbar-header .link-rs a,
.navbar-header .link-rs .link-contact-header{
    display: flex;
    width: 40px;
    height: 40px;
    text-decoration: none;
    position: relative;
}

.navbar-header .link-rs .link-contact-header svg,
.navbar-header .link-rs a svg{fill:#FFF; transition: all 300ms ease;}
.navbar-header .link-rs .link-contact-header:hover svg,
.navbar-header .link-rs .link-contact-header:focus svg,
.navbar-header .link-rs a:hover svg,
.navbar-header .link-rs a:focus svg{fill:#c21617; outline: none; text-decoration: none;}

.navbar-header .link-rs .link-contact-header .link-contact-header__liste{
    display: flex;
    flex-direction: column;
    gap: 10px;
    background-color:#FFF;
    padding: 15px 20px;
    position: absolute;
    top: 50px;
    right: 0;
    width: 190px;
    opacity: 0;
    margin-bottom: 0;
    box-shadow: 0 2px 8px rgba(0,0,0,0.4);
    list-style: none;
    transition: all 300ms ease;
}

.navbar-header .link-rs .link-contact-header:hover .link-contact-header__liste{opacity: 1; top: 40px;}

.navbar-header .link-rs .link-contact-header .link-contact-header__liste li:first-child{border-bottom: 1px solid #DDD; padding-bottom: 10px;}

.navbar-header .link-rs .link-contact-header .link-contact-header__liste a{width: auto; height: auto; font-weight: 600;}

.navbar-default .navbar-collapse,
.navbar-default .navbar-form{background: #fff;}

.navbar-right{
    background-color: #000;
    -webkit-box-shadow: 0 5px 10px 0 rgba(0,0,0,0.2);
    box-shadow: 0 5px 10px 0 rgba(0,0,0,0.2);
}
.navbar-default .navbar-nav > li > a{color: #fff;}
.navbar-default .navbar-nav > li > a:focus,
.navbar-default .navbar-nav > li > a:hover{color: red;}

.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:focus,
.navbar-default .navbar-nav > .active > a:hover{
    color: red;
    background: black;
}

.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:focus,
.navbar-default .navbar-nav > .open > a:hover{
    color: red;
    background: black;
}
.navbar-nav > li > .dropdown-menu {
    margin-top: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    background: rgba(0,0,0,0.7);
    border-radius: 0;
}
.dropdown-menu > li > a{color: white;}

.dropdown-menu > li > a:hover{
    color: red;
    background: none;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {background: #fff;}
.navbar-default {
    background-color: white;
    border: none;
}

footer{position: relative; overflow: hidden;}

footer .pattern-footer{
    max-width: 90%;
    position: absolute;
    top: 50px;
    right: 20px;
    z-index: 1;
}

.main-footer{position: relative; z-index: 2;}
.main-footer .horaires__img{margin: 50px 0 0 60px; opacity: 0.4;}

.main-footer .container{width: 100%; max-width: 1100px; padding: 0 30px;}

.main-footer .container > .row{
    display: flex;
    justify-content: center;
    gap: 30px;
}

.main-footer .container > .row::before,
.main-footer .container > .row::after{display:none;}

.main-footer .col-sm-6 h3{font-size: 18px; font-weight:800; text-transform: uppercase;}

.main-footer .horaires h3{margin-bottom: 10px;}

.main-footer .adresse-footer{width: 50%; max-width: 360px;}
.main-footer .fb-page{width: 50%; max-width: 400px;}
.main-footer .adresse-footer > h3{color: #E21E1F; text-transform: uppercase; font-weight: 800; font-size: 20px;}

.main-footer .adresse-footer h4{font-size: 16px; font-weight: 700; margin-top: 30px;}

.main-footer .adresse-footer .liste-marques-footer{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    list-style: none;
    padding: 0;
}

.main-footer .horaires__detail{line-height: 24px;}

.main-footer .cta-contact-footer{
    transition: all 300ms ease;
    display: inline-block;
    font-weight: 700;
    font-size: 15px;
    text-decoration: underline;
}

.main-footer .cta-contact-footer:hover,
.main-footer .cta-contact-footer:focus{color:#c21617; text-decoration:none; outline:none;}

.main-footer .tel-footer{
    color: #FFF;
    font-weight: 700;
    font-size: 20px;
    display: flex;
    align-items: center;
    text-decoration: none;
}

.main-footer .liste-RS li a:focus,
.main-footer .tel-footer:focus{outline:none;}

.main-footer .tel-footer svg{margin-right: 12px;}

.main-footer .liste-RS{
    list-style: none;
    display: flex;
    margin: 0;
    padding: 0;
}

.main-footer .liste-RS li:first-child{margin-right: 16px;}

.main-footer .liste-RS li a svg{fill:#FFF; transition: all 300ms ease;}
.main-footer .liste-RS li a:hover svg{fill:#c21617;}

.mentions-footer{
    padding: 20px 30px 0;
    margin-top: 50px;
    position: relative;
    z-index: 2;
    text-align: center;
}

.mentions-footer__ecolo{font-size: 14px; color:rgba(255,255,255,0.5); margin-bottom: 20px;}

.mentions-footer .mentions-footer__liens span,
.mentions-footer .mentions-footer__liens a{color:#FFF; font-weight:600; transition: all 300ms ease;}
.mentions-footer .mentions-footer__liens a:hover{color: #FFF;}

.titre-presentation {
    padding: 15px;
    font-size: 25px;
    background: #f2f2f2;
    color: black;
    font-family: 'Play', sans-serif;
    text-align: center;
    font-weight: bold;
}
.titre-accueil{
    font-family: 'Montserrat', sans-serif;;
    font-size: 25px;
    color: #000;
    font-weight: bold;
    margin-top: 50px;
}
.sous-titre-accueil{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.sous-titre-accueil span{
    color: #17b1f9;
    font-family: 'Arial', sans-serif;
    font-size: 22px;
}

a.voir-tout-accueil{
    color: black;
    font-family: 'Montserrat', sans-serif;
    font-size: 15px;
}

a.voir-tout-accueil:hover{color: black;}


.container-magasini{
    background: black;
    padding: 25px;
    color: #fff;
    font-family: 'Play', sans-serif;
}
.nom-magasini {
    font-weight: bold;
    font-size: 23px;
    text-align: center;
    padding: 11px 7px 7px;
}
.slogan-magasini{
    text-align: center;
    font-size: 18px;
    margin-bottom: 10px;
}
.titre-horaires{
    color: red;
    font-size: 16px;
}
.tel-magasini a{
    color: #fff;
    font-size: 20px;
    margin: 12px 0;
    display: inline-block;
}
.tel-magasini a:hover{
    color: red;
    text-decoration: none;
}
.button-magasini a {
    color: white;
    background: red;
    display: block;
    text-align: center;
    margin-bottom: 10px;
    padding: 5px;
}
.rs-magasini {
    display: flex;
    justify-content: center;
}
.rs-magasini a {
    color: white;
    display: block;
    margin: 0 15px;
}
.rs-magasini a:hover {
    color: white;
    display: block;
    margin: 0 15px;
}
.button-magasini a:hover{
    text-decoration: none;
    opacity: 0.7;
}
.rs-magasini a i{font-size: 27px;}
.rs-magasini{
    margin-top: 5px;
    margin-bottom: 45px;
}
.rs-magasini a:hover{opacity: 0.7;}

.logos-footer {
    display: flex;
    background: white;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.logos-footer img{margin: 0 20px;}

.navbar-brand h1 {
    color: white;
    font-family: 'Montserrat';
    font-size: 24px;
}
.titre-univers{
    text-align: center;
    padding-top: 30px;
    padding-bottom: 30px;
    font-family: 'Montserrat', sans-serif;;
    font-size: 25px;
    color: #000;
    font-weight: bold;
}
.custom-container {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    justify-content: space-between;
}

.univers{
    display: flex;
    width: 148px;
    margin: 0 10px;
    box-shadow: 10px 10px 21px -9px rgba(0,0,0,0.69);
    -webkit-box-shadow: 10px 10px 21px -9px rgba(0,0,0,0.69);
    -moz-box-shadow: 10px 10px 21px -9px rgba(0,0,0,0.69);
    flex-wrap: wrap;
    flex-direction: column;
    align-content: center;
    align-items: center;
}
.container-flex{
    display: flex;
    padding-bottom:50px;
    justify-content: center;
}

.col-sm-6 i{margin-left: 10px;}

.CLBlockcontent-footer .CLPrix{
    color: #17b1f9;}
.titre-footer-noir{
    font-size: 17px;
    font-weight: bold;
}
.bi-telephone-fill{margin-right: 10px;}
.bi-envelope{margin-right: 10px;}
.lefty{text-align: left;}

.lefty span{font-size: 12px;}

footer a,
footer a:hover{color: #fff;}

.righty{
    font-size: 12px;
    text-align: right;
    color: #fff;
}
.horaire{text-align: right;}
.img-moto{width: 100%;}
.container-img-moto{height: 140px;}
.info-lien a{
    color: #000;
    display: inline-block;
    margin: 0 10px;
}
#IDVignettes a:hover .CLBlockcontent-header {
    background: #17b1f9;
}
.univers{
    transition: all .3s cubic-bezier(.25,.46,.45,.94);
}
.univers:hover{
    cursor: pointer;
    box-shadow: 2px 3px 5px 0px rgb(0 0 0);
    -webkit-box-shadow: 2px 3px 5px 0px rgb(0 0 0);
    -moz-box-shadow: 2px 3px 5px 0px rgb(0 0 0);
    transition: all .3s cubic-bezier(.25,.46,.45,.94);
}
.owl-carousel .owl-stage-outer {
    border-bottom: none;
}
.info-presentation .owl-carousel .owl-stage-outer {
    border-bottom: none;
    box-shadow: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
}
.voir-detail-occasion {
    left: 71px;
    top: 76px;
}

@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 40%, 0);
        transform: translate3d(0, 40%, 0);
    }

    100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 40%, 0);
        transform: translate3d(0, 40%, 0);
    }

    100% {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}
    
.owl-item.active .txt-slideshow{
  animation: fadeInUp;
  animation-duration: 1.5s;
}

.txt-slideshow {
    position: absolute;
    top: 0;
    right: 150px;
    bottom: 0;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: 33%;
    max-width: 500px;
    color: #fff;
    text-align: right;
}

.txt-slideshow .container-txt-slideshow{
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.txt-slideshow .btn:focus,
.txt-slideshow a:focus{outline:none;}

.txt-slideshow .titre{
    font-size: 50px;
    font-weight: 800;
    margin-left: -4px;
    text-shadow: 0 1px 2px #000;
}
.txt-slideshow .desc{
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 20px;
    text-shadow: 0 1px 2px #000;
}
.txt-slideshow .btn{
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 500;
    width: 150px;
}

.txt-slideshow .btn:hover{background-color:#000;}

.article-texte{padding: 15px 0;}
.logo-header{margin-top: 5px;}
.prix-barree{
    color: #333;
    text-align: right;
    display: block;
    text-decoration: line-through;
    margin-top: 2px;
}

.les-logos ul img{max-height: 70px;}

.btn-default{
    background-color: #c21617;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 0;
    color: #fff;
    text-transform: uppercase;
    border: none;
    font-size: 12px;
    padding: 0;
    min-width: 100px;
    min-height: 40px;
    transition: all 300ms ease;
}
.btn-default:hover{
    background-color: #c21617;
    color: #fff;
}
.btn-default:active,
.btn-default:active:hover,
.btn-default:focus{
    background-color: #c21617;
    color: #fff;
    -webkit-box-shadow: none;
    box-shadow: none;
    border: none;
    -webkit-transform: scale(.98);
    -ms-transform: scale(.98);
    transform: scale(.98);
}

.occasions-accueil{
    padding: 0 40px;
    margin: 0 auto;
    max-width: 1630px;
}

.occasions-accueil .carousel-inner .row{
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    margin: 0 -15px;
}

.occasions-accueil .carousel-inner .vignette-home{
    max-width: 280px;
    padding: 0 0 15px;
    margin: 6px 15px 000;
    border: 1px solid transparent;
    border-radius: 12px;
    transition: all 300ms ease;
}

.occasions-accueil .carousel-inner .vignette-home:hover{
    transform: translateY(-5px);
    border: 1px solid #dde2ed;
    background-color: #FFF;
}

.occasions-accueil .carousel-inner .vignette-home a:focus{outline:none;}

.occasions-accueil .carousel-indicators {
	top: auto;
    bottom: -70px;
}
.occasions-accueil .carousel-indicators li {
    background: #000;
    border-radius: 50%;
    width: 8px;
    height: 8px;
    margin: 0 3px;
}

.occasions-accueil .owl-carousel{position:relative; overflow: visible;}

.occasions-accueil .owl-carousel .owl-stage-outer{z-index:2;}

.occasions-accueil .owl-carousel .owl-nav{
    position: absolute;
    top: 20%;
    left: 0;
    z-index: 1;
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.occasions-accueil .owl-carousel .owl-nav .owl-prev{margin-left: -40px;}
.occasions-accueil .owl-carousel .owl-nav .owl-next{margin-right: -50px;}

.occasions-accueil .owl-carousel .owl-nav .owl-prev,
.occasions-accueil .owl-carousel .owl-nav .owl-next{
    font-size: 75px;
    display: flex;
    align-items: center;
    width: 30px;
    height: 46px;
    line-height: 26px;
    transition: all 300ms ease;
}

.occasions-accueil .owl-carousel .owl-nav .owl-prev:hover,
.occasions-accueil .owl-carousel .owl-nav .owl-next:hover{
    background-color: transparent;
    color: #c21617;
    box-shadow: none;
}

.occasions-accueil .owl-carousel .owl-nav .owl-prev span,
.occasions-accueil .owl-carousel .owl-nav .owl-next span{display:block; height: 46px;}

.occasions-accueil .owl-theme .owl-dots{margin-top: 30px;}
.occasions-accueil  .owl-theme .owl-dots .owl-dot span{
    background: #000;
    width: 12px;
    height: 12px;
    transition: all 300ms ease;
}

.occasions-accueil .owl-theme .owl-dots .owl-dot.active span,
.occasions-accueil .owl-theme .owl-dots .owl-dot:hover span{
    background: #c21617;
    box-shadow: none;
}

.img-occasion-accueil{position: relative; margin-bottom: 16px; border-radius: 10px; overflow: hidden;}

.owl-carousel .owl-item .img-occasion-accueil .permis-a2-liste{width: 50px;}

.label-occasion{
    padding-right: 1.5rem;
    padding-left: 8px;
    display: inline-block;
    vertical-align: middle;
    font-size: 12px;
    color: #434c56;
    text-align: center;
    font-weight: 700;
    text-transform: uppercase;
    min-height: 2em;
    line-height: 2;
    box-shadow: 0 1px 2px 0 rgba(46,56,67,.25);
    position: relative;
    background-color: #fff;
    border-radius: 15px;
    position: absolute;
    margin-top: 12px;
    margin-left: 12px;
}

.vignette-occasion-accueil,
.vignette-occasion-accueil a{position: relative;}

.vignette-occasion-accueil{display:block;}

.vignette-occasion-accueil:hover,
.vignette-occasion-accueil a:hover{text-decoration:none;}

.voir-detail-occasion{
    transition: all .3s;
    position: absolute;
    opacity: 0;
    z-index: 2;
    left: 50%;
    top: 87px;
    margin-left: -50px;
}
.vignette-occasion-accueil:hover .voir-detail-occasion{opacity: 1;}

.occasions-accueil .carousel-inner .vignette-occasion-accueil .detail-occasion-accueil .row{margin: 0;}

.titre-occasion-accueil{
    font-size: 15px;
    color: #000;
    font-weight: 800;
    margin: 0 0 15px;
    padding-bottom: 12px;
    border-bottom: 1px solid #dde2ed;
    text-align: center;
}

.titre-occasion-accueil span{
    display: block;
    margin-top: 2px;
    font-size: 18px;
    font-weight: 500;
    text-transform: uppercase;
}

.sous-titre-occasion-accueil{
    font-size: 14px;
    color: #434c56;
    font-weight: 700;
    margin: 0 0 10px;
}
.detail-occasion-accueil .annee{
    color: #434c56;
    font-size: 14px;
    line-height: 24px;
}
.detail-occasion-accueil .annee i{
    margin-right: 5px;
    position: relative;
    top: -1px;
    color: #000;
}
.prix-accueil{
    text-align: right;
    color: #c21617;
    font-size: 18px;
    font-weight: 700;
}
.detail-occasion-accueil {padding-top: 3px;}
.fa-blue{color: #5cb4e4;}
.fa-red{color: red;}
.fa-purple{color: purple;}
.fa-green{color: #0fb84f;}
.fa-yellow{color: #f0d707;}
.titre-map{
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    left: 0;
    background: rgba(0,0,0,.8);
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    padding: 2px 0;
}
.bloc-map{position: relative;}
.carousel-control path{
    transition: all .3s;
    fill: #fff;
}

.carousel-control:hover path{fill: #c21617;}
.occasions-accueil .carousel-control path{fill: #000;}
.occasions-accueil .carousel-control:hover path{fill: #c21617;}
.carousel-control{
    opacity: 1;
    top: 70px;
}
.carousel-control{width: 0;}
.carousel-control.left{left: -80px;}
.carousel-control.right {right: -60px;}

.occasions-accueil .carousel-indicators li{
    border: none;
    margin: 0;
    width: 11px;
    height: 11px;
}
.occasions-accueil .carousel-indicators .active{background: #c21617;}

.detail-occasion-accueil{height: 27px;}

@media all and (transform-3d), (-webkit-transform-3d) {
    .carousel-fade .carousel-inner > .item.next,
    .carousel-fade .carousel-inner > .item.active.right {
      opacity: 0;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner > .item.prev,
    .carousel-fade .carousel-inner > .item.active.left {
      opacity: 0;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner > .item.next.left,
    .carousel-fade .carousel-inner > .item.prev.right,
    .carousel-fade .carousel-inner > .item.active {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
}

.slider{position:relative; z-index: 3; border-bottom: 1px solid #000;}
.slider img{width: 100vw;}
.slider .owl-stage,
.slider .owl-stage .owl-item{max-height: 600px;}

.slider .owl-stage .owl-item .item{display: flex; align-items: center; max-height: 600px;}

.slider .owl-stage .owl-item a,
.slider .owl-stage .owl-item a:hover{text-decoration: none;}
.slider .owl-theme .owl-dots{
    position: absolute;
    z-index: 10;
    bottom: 14px;
    left: 50%;
    transform: translate(-50%, 0);
}

.slider .owl-theme .owl-dots .owl-dot span{
    width: 15px;
    height: 15px;
    box-shadow: none;
    background-color:#FFF;
    border-radius: 0;
    border: 1px solid #000;
    transition: all 300ms ease;
}
.slider .owl-theme .owl-dots .owl-dot.active span,
.slider .owl-theme .owl-dots .owl-dot:hover span,
.slider .owl-theme .owl-dots .owl-dot:focus span{background-color:#E21E1F;}

.liste-marques{
    background: url("../images/fond-marques.png") no-repeat center top;
    background-size: cover;
    position: relative;
    z-index: 2;
    padding: 60px 30px 90px;
}

.liste-marques::before{
    background: url("../images/forme1.png") no-repeat center top;
    position: absolute;
    bottom: 130px;
    right: 200px;
    z-index: 2;
    content: "";
    width: 53px;
    height: 77px;
}


.liste-marques::after{
    background: url("../images/triangle-noir.png") no-repeat center top;
    background-size: cover;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    content: "";
    width: 100%;
    height: 510px;
}

.titre-principal{
    margin: 0 auto 90px;
    font-size: 30px;
    line-height: 36px;
    font-weight: 800;
    position: relative;
    text-transform: uppercase;
    z-index: 3;
    text-align: center;
}

.liste-marques__items{
    background-size: cover;
    margin: 0 auto 50px;
    position: relative;
    z-index: 3;
    width: 100%;
    max-width: 1310px;
}

.liste-marques__items ul{
    display: flex;
    justify-content: space-between;
    gap: 15px;
    padding: 0;
    margin: 0 auto 64px;
    width: 100%;
    list-style: none;
}

.liste-marques__items .liste-marques__brand-container li{
    width: 100%;
    max-width: 280px;
    height: 368px;
    overflow: hidden;
    position: relative;
    transition: all 300ms ease;
}

.liste-marques__other-brands li:hover,
.liste-marques__items .liste-marques__brand-container li:hover{transform: translateY(-5px);}
.liste-marques__other-brands li:first-child:hover{transform: translateY(0);}

.liste-marques__brand-container li .liste-marques__cta-autres-liens{
    position: absolute;
    bottom: 50px;
    left: calc(50% - 71px);
    z-index: 3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    gap: 20px;
    opacity: 0;
    transition: all 300ms ease;
}

.liste-marques__brand-container li:hover .liste-marques__cta-autres-liens{opacity:1;}

.liste-marques__brand-container li .liste-marques__cta-autres-liens a{
    background-color: #FFF;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 34px;
    padding: 0 20px;
    color: #000;
    font-weight: 600;
    border-radius: 18px;
    text-decoration: none;
    transition: all 300ms ease;
}

.liste-marques__brand-container li .liste-marques__cta-autres-liens a:focus{outline:none;}
.liste-marques__brand-container li .liste-marques__cta-autres-liens a:hover{color: #FFF;}
.liste-marques__brand-container li.marque-cfmoto .liste-marques__cta-autres-liens a:hover{background-color: #0f9dae;}
.liste-marques__brand-container li.marque-kawasaki .liste-marques__cta-autres-liens a:hover{background-color: #69be28;}
.liste-marques__brand-container li.marque-ktm .liste-marques__cta-autres-liens a:hover{background-color: #ff6600;}
.liste-marques__brand-container li.marque-husqvarna .liste-marques__cta-autres-liens a:hover{background-color: #002550;}
.liste-marques__brand-container li.marque-gasgas .liste-marques__cta-autres-liens a:hover{background-color: #cb0d25;}

.liste-marques__brand-container li.marque-cfmoto .liste-marques__item__logo{
    width: 180px;
    background-color: #FFF;
    height: 80px;
    padding: 0 15px;
    display: flex;
    align-items: center;
    margin-left: -90px;
    left: 50%;
    box-shadow: 0 3px 6px rgba(0,0,0,0.2);
}

.liste-marques__brand-container li.marque-cfmoto .liste-marques__item__logo img{width:100%;}
.liste-marques__brand-container li.marque-cfmoto .liste-marques__cta-autres-liens a{width: 144px;}

.liste-marques__items .liste-marques__brand-container li .liste-marques__item__link{
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    height: 100%;
    position: relative;
}

.liste-marques__items .liste-marques__brand-container li .liste-marques__item__link:hover{outline:none;}

.liste-marques__items .liste-marques__item__logo{
    position: absolute;
    top: 0;
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 85px;
}

.liste-marques__items .liste-marques__item__img{position:relative; z-index:1;}

.liste-marques__items .liste-marques__other-brands{justify-content: center; flex-wrap: wrap; gap: 60px;}

.liste-marques__other-brands li{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 192px;
    height: 92px;
    background-color: #FFF;
    transition: all 300ms ease;
}

.liste-marques__other-brands li a{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}

.container-k21{background: #000 url(../images/forme2.png) no-repeat center bottom; background-size: 1600px; position: relative; z-index: 2;}

.container-k21 .bloc-presentation{padding: 20px 30px 120px; width:100%; max-width: 1024px; margin: 0 auto;}

.contenu-presentation{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
}

.contenu-presentation .img-presentation{position:relative; z-index: 1; width: 52%;}

.contenu-presentation .text-presentation{
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 25px;
    width: 40%;
    text-align: right;
    color: #FFF;
}

.contenu-presentation .text-presentation .presentation-titre{margin-bottom: 0; margin-top: -34px; font-size: 20px; font-weight: 700;}

.contenu-presentation .text-presentation .tel-contact{
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 24px;
    font-weight: 700;
    color: #FFF;
    margin-top: 10px;
}

.contenu-presentation .info-lien{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 26px;
    position:relative;
    z-index: 2;
    width: 52%;
    margin-top: -50px;
}

.contenu-presentation .info-lien a{margin: 0;}
.contenu-presentation .info-lien svg .fond-icon{fill:#FFF; transition: all 300ms ease;}
.contenu-presentation .info-lien svg .icon{fill:#000; transition: all 300ms ease;}

.contenu-presentation .info-lien a:hover svg .fond-icon{fill:#c21617;}
.contenu-presentation .info-lien a:hover svg .icon{fill:#FFF;}

.contenu-presentation .img-presentation .owl-carousel{z-index: 2; overflow:hidden;}

.contenu-presentation .img-presentation .owl-carousel .owl-item .item{
    -webkit-mask-image: url(../images/mask.png);
    mask-image: url(../images/mask.png);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat; 
}

.text-presentation .article-texte{font-size: 15px; text-align: right; font-weight: 300; padding: 8px 0 0; color:#FFF;}
.text-presentation .article-texte > p{margin-bottom: 0;}

.info-lien .adresse-k21{display: flex; align-items: center; justify-content: center; width: 50%;}

.info-lien .adresse-k21 span{padding-right: 10px; transition: padding 300ms ease;}
.info-lien .adresse-k21:hover span{padding-right: 15px;}
.info-lien .adresse-k21 a{transition: all 300ms ease; text-decoration: underline;}
.info-lien .adresse-k21 a:hover{color:#c21617;}

.info-lien .cta-contact{
    background-color: #c21617;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 160px;
    height: 40px;
    margin: 0;
    font-size: 15px;
    font-weight: 700;
    color: #FFF;
    transition: all 300ms ease;
}

.info-lien .cta-contact:hover{background-color:#000; text-decoration:none;}

.info-lien .tel-contact:focus,
.info-lien .cta-contact:focus{outline: none;}

.info-lien .tel-contact{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    font-size: 21px;
    font-weight: 700;
    color: #000;
    position: relative;
    padding-left: 50px;
}

.info-lien .tel-contact:hover{text-decoration: none;}

.info-lien .tel-contact::before{
    content: "";
    background-color: #000;
    width: 30px;
    height: 6px;
    position: absolute;
    top: 48%;
    left: 0;
}

.info-lien .tel-contact svg{margin-right: 10px;}

.contenu-vehicules.selection-offres{background-color:#F5F5F5; padding-bottom: 60px;}

.annonces-title{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    padding: 56px 30px 60px;
    max-width: 1580px;
    position: relative;
}

.annonces-title .titre-accueil{
    position: relative;
    z-index: 2;
    margin: 0;
    font-size: 30px;
    line-height: 32px;
    font-weight: 800;
    color: #000;
    text-transform: uppercase;
    font-family: inherit;
}

.annonces-title .cta-voir-tout-accueil{
    background-color: #000;
    display: flex;
    justify-content: center;
    align-items: center;
    width: auto;
    height: 40px;
    padding: 0 25px;
    color: #FFF;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    transition: all 300ms ease;
}

.annonces-title .cta-voir-tout-accueil:hover{background-color:#c21617; text-decoration:none;}
.annonces-title .cta-voir-tout-accueil:focus{outline:none;}
.annonces-title .cta-voir-tout-accueil:hover::after{border-color: transparent transparent transparent #c21617;}

.annonces-title .cta-voir-tout-accueil.annonces-title__vehicules-neufs{background-color:#c21617; cursor: pointer; gap: 10px; position: relative;}
.annonces-title .cta-voir-tout-accueil.annonces-title__vehicules-neufs:hover{background-color:#000;}
.annonces-title .cta-voir-tout-accueil.annonces-title__vehicules-neufs svg{fill:#FFF; transition: all 300ms ease;}
.annonces-title .cta-voir-tout-accueil.annonces-title__vehicules-neufs.show-all-brand svg{rotate: 180deg;}

.annonces-title__vehicules-neufs .annonces-title__vehicules-neufs-liste{
    background-color: #FFF;
    display: flex;
    flex-direction: column;
    gap: 12px;
    position: absolute;
    top: 35px;
    z-index: 2;
    height: 0;
    opacity: 0;
    scale: 1 0;
    margin: 0;
    padding: 14px 25px;
    text-align: left;
    border-radius: 0 0 5px 5px;
    box-shadow: 0 1px 8px rgba(0,0,0,0.15);
    list-style: none;
    transition: all 100ms ease;
}

.annonces-title__vehicules-neufs.show-all-brand .annonces-title__vehicules-neufs-liste{opacity: 1; height: auto;  scale: 1 100%;}

.annonces-title__vehicules-neufs-liste a{color:#000; text-decoration:none;}
.annonces-title__vehicules-neufs-liste a:hover{color:#c21617;}

.tooltip{opacity:1 !important;}
.tooltip > .tooltip-inner {background-color: #FFF; padding:10px; min-width:160px; font-size:13px; font-weight: 500; color:#000; text-align: left; font-size: 14px;}
.tooltip .tooltip-arrow {border-top: 5px solid #FFF !important;}

.info-lien__horaires-tooltip + .tooltip > .tooltip-inner{min-width:260px;}



/* --------------------------- */
/* ------ Media Queries ------ */
/* --------------------------- */


@media (max-width: 1400px){
    .navbar-default.header-k21{padding: 15px 30px;}
    .header-k21 .logo-header {max-width: 210px;}
    .header-phone{margin: 0 20px 0 15px; padding-left: 0; font-size: 18px;}
    .header-phone::before{display:none;}
}

@media (max-width: 1200px){
    .container{width: 1200px;}
    .navbar-header .link-rs{display:none;}
    .navbar-header .header-phone{margin: 0 0 0 15px;}
}

@media (max-width: 1180px){
    header .navbar-default.header-k21 {padding: 15px;}
    .navbar-default.header-k21,
    .header-k21 .navbar-header{flex-direction: column;}
    .header-k21 .navbar-header{margin-top: 20px;}
    .navbar-header .logos-marques{justify-content: center; flex-wrap: wrap; gap: 6px;}
    .navbar .navbar-header .header-phone{margin: 12px 0 2px 0;}
    header .header-k21 .logo-header {max-width: 250px;}
    .logos-marques li {margin: 10px;}
    .lefty,
    .righty{text-align: center;}
    .clip-path-title{padding: 50px 30px 0 40px;}
    .clip-path-title .sous-titre-principal{top: 16px;}
    .liste-marques__items .liste-marques__other-brands{gap: 20px;}
}

@media (max-width: 992px){
    .navbar-header{
        display: flex;
        justify-content: center;
    }
    
    .les-logos ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        padding-left: 0;
    }
    .custom-container {justify-content: center;}
    .container-flex{flex-wrap: wrap;}
    .univers{margin-bottom: 20px;}
    
    .slider .owl-stage{background-color: #000;}
    .txt-slideshow .titre{font-size: 28px; margin-top: 0;}
    .txt-slideshow .desc{
        font-size: 16px;
        line-height: 22px;
    }
    
    .titre-principal{margin: 0 auto 20px;}
    .les-btn-rs{margin-top: 40px;}
    .liste-marques__items ul{justify-content: center; flex-wrap: wrap;}
    .liste-marques .clip-path-title{
        display: flex;
        align-items: flex-end;
        justify-content: center;
        clip-path: none;
        padding: 60px 30px 24px 30px;
    }
    
    .info-lien .adresse-k21{width: 100%; text-align: center;}
    .liste-marques{padding: 60px 30px 10px;}
    .big-title .sous-titre-accueil,
    .info-lien .adresse-k21 svg,
    .info-lien .tel-contact::before,
    .clip-path-title .sous-titre-principal{display:none;}
    .contenu-presentation{flex-direction: column; align-items: center;}
    .contenu-presentation .img-presentation,
    .contenu-presentation .text-presentation{width: 100%; max-width: 600px; align-items: center;}
    .contenu-presentation .text-presentation{padding-left: 0; margin-top: 40px;}
    .contenu-presentation .info-lien{margin-top: 30px;}
    .text-presentation .article-texte{text-align: center;}
    .container-k21 .bloc-presentation{padding: 0 30px 60px;}
    .info-lien .cta-contact{margin: 20px 0;}
    .info-lien .tel-contact{padding-left: 0;}
    .info-lien .adresse-k21 span{
        padding-right: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .info-lien .adresse-k21:hover span {padding-right: 0;}
    .info-lien .adresse-k21a{margin: 0;}
    .annonces-title .big-title{padding: 0 40px;}
    .txt-slideshow .container-txt-slideshow{width: 100%; align-items: center; text-align: center;}
    .txt-slideshow .btn{font-size: 14px; height: 35px;}
    .txt-slideshow .desc{margin-bottom: 15px;}
    .slider .owl-stage .owl-item .item{height: 400px;}
    .slider .owl-stage .owl-item .item img{width: auto; height: 100%; object-fit: cover;}
}

@media (max-width: 860px){
    .main-footer .container > .row{flex-direction: column; align-items: center;}
    .main-footer .adresse-footer,
    .main-footer .fb-page{width:100%;}
    .main-footer .fb-page{max-width: 300px;}
    .annonces-title{flex-direction: column; align-items: center; gap: 20px;}
    .annonces-title .titre-accueil{order:1;}
    .annonces-title .cta-voir-tout-accueil.annonces-title__vehicules-neufs{order:2;}
    .annonces-title .cta-voir-tout-accueil{order:3;}
}

@media (max-width: 768px){
    .banner-home .img-banner-home {max-height: inherit;}
    .carousel-caption .titre{
        font-size: 22px;
        margin-top: 5px;
    }
    .carousel-caption .desc{
        font-size: 17px;
        line-height: 22px;
    }
    .carousel-caption .btn{
        font-size: 16px;
        margin-bottom: 20px;
    }
    .carousel-caption{
        background: #5a5a5a;
        padding: 0 20px;
        position: static;
        width: 100%;
    }
    .les-btn-rs{margin-top: 40px;}
    .main-footer{text-align: center;}
    .horaire{
        margin-top: 20px;
        text-align: center;
    }
    footer .adresse-footer{display: flex; flex-direction: column; align-items: center;}
    footer .horaires{margin-bottom: 50px;}
    .main-footer .liste-RS{margin: 12px 0 0;}
    .main-footer .cta-contact-footer{margin: 12px 0;}
    .main-footer .col-sm-4 h3{font-size: 20px;}
    .main-footer .col-sm-4.adresse-footer h3{font-size: 24px;}
    .annonces-title .big-title{height: 100px; justify-content: center; text-align: center;}
}

@media (max-width: 515px){
    .liste-marques .liste-marques__items ul li{min-width: 170px;}
    .clip-path-title .titre-principal,
    .annonces-title .titre-accueil{line-height: 35px; text-align: center;}
    .contenu-presentation .text-presentation .presentation-titre{margin-top: 0;}
    .liste-marques__items .liste-marques__other-brands{display:none;}
    .navbar-header .logos-marques li{margin: 6px;}
    .logos-marques li a{display: flex; max-width: 50px;}
    .logos-marques li:first-child a{max-width: 90px;}
    .logos-marques li a img{width: 100%;}
}

@media (max-width: 395px){
    body .liste-marques .liste-marques__items ul li{width: 100%; max-width: inherit; margin: 10px 0; min-height: 180px;}
}

