/* ----------------------------------------------------------------
	Custom CSS

-----------------------------------------------------------------*/
.dc-hero-bg {background-image: url('../images/aa_slider.webp')!important;}
.dc-ticket-cta-bg.solaire {background-image: url('../images/aa_solaire.webp')!important;opacity:0.8}
.dc-ticket-cta-bg.creation {background-image: url('../images/aa_creation.webp')!important;opacity:0.8}

#header-wrap #logo img {height: 150px;}

.uppercase{text-transform:uppercase}

.dnone{display:none;}
/* couleur et background */

.jaune{color:#ffed38!important}
.orange{color:#d8582d!important}
.rouge{color:#c52a52!important}
.violet{color:#5e277d!important}
.light{color:#F5F0E8!important}

.bg-jaune{background-color:#ffed38!important}
.bg-orange{background-color:#d8582d!important}
.bg-rouge{background-color:#c52a52!important}
.bg-violet{background-color:#5e277d!important}
.bg-noir{background-color:#08070c!important}

#header #header-wrap {background-color: #08070c !important;}
#gotoTop:hover {background-color: var(--dc-orange)!important;}

.h2-titre{
  font-family: 'Bebas Neue', sans-serif!important;
  font-size: clamp(5rem, 10vw, 5rem)!important;
  line-height: 0.92;
  margin-bottom: 1rem!important;
  padding-bottom: 1rem!important;
  cursor: default;
  display: block;
  -webkit-text-stroke: 0px transparent;
  transition: all 0.05s;
}

.h3-titre{color:#fff!important;font-size:1.3rem!important}

.ss-titre{
	font-size: 0.65rem;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 500;
  margin-bottom: 1rem;
  display: inline-block;
  align-items: center;
  gap: 0.75rem;
  padding-bottom: 3rem;
}

.fz-1rem{font-size:0.8rem;line-height: 2rem !important;}

.owl-carousel .owl-dots .owl-dot {background-color: rgba(197,42,82,0.5) !important;}

/* padding - margin */
.about-section{padding:6rem 3rem}
.py-6-3{padding:6rem 3rem!important}
.py-6-3-2-3{padding:6rem 3rem 2rem 3rem!important}
.py-6-3-0-3{padding:6rem 3rem 0rem 3rem!important}

/* Autres éléments */

.owl-carousel .owl-nav [class*="owl-"]:hover {
  background-color: #C52A52 !important;
}

.slider-element .violet.owl-carousel .owl-nav [class*="owl-"]:hover {
  background-color: #5e277d !important;
}

.dc-ticket-cta {
  position: relative;
  overflow: hidden;
 ;
  background: var(--dc-black);
}

.dc-ticket-cta-sub { max-width: 800px!important;line-height:2rem!important;font-size: 0.9rem!important;}
.violet.dc-hero-eyebrow::before {background: var(--dc-violet);}
.jaune.dc-hero-eyebrow::before {background: var(--dc-jaune);}


.dc-btn-secondary {
  background: var(--dc-orange);
  color: var(--dc-ivory);
  padding: 0.85rem 2rem;
  font-size: 0.7rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 600;
  text-decoration: none;
  display: inline-block;
  transition: background 0.25s, transform 0.2s, box-shadow 0.25s;
  cursor: pointer;
  border: none;
}

.dc-btn-secondary:hover {
  background: var(--dc-violet);
  color: var(--dc-ivory);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(var(--cnvs-themecolor-rgb), 0.4);
  color: var(--dc-ivory);
}

.heading-block::after {border-color: var(--dc-rouge) }

#map{
    width:100%;
    height:500px;
    position: relative;
    overflow:hidden;
	height: 100% !important;
}

@media (min-width: 767.99px) {

.dark #header-wrap:not(.not-dark) #logo .logo-dark.smartphone, .dark .header-row:not(.not-dark) #logo .logo-dark.smartphone {display: none;}

}

/* REPONSIVE */
@media (max-width: 767.98px) {
.h2-titre {font-size: clamp(2rem, 7vw, 6rem) !important;}
.py-6-3{padding:4rem 0rem!important}
.py-6-3-2-3{padding:4rem 1rem 0rem 1rem!important}
.py-6-3-0-3{padding:4rem 1rem 0rem 1rem!important}
#page-contact{text-align:center!important}
.iconlist > li i:first-child, .iconlist > li img:first-child {display: none}
.logo-dark .display{display:none!important}
.logo-dark .smartphone{display:flex!important}
.dark #header-wrap:not(.not-dark) #logo .logo-dark.smartphone, .dark .header-row:not(.not-dark) #logo .logo-dark.smartphone {display: flex;}
.dark #header-wrap:not(.not-dark) #logo .logo-dark.display, .dark .header-row:not(.not-dark) #logo .logo-dark.display {display: none;}
#header-wrap #logo img {height: 100px;}


}


/*==================================================
=            SECTION CONTACT / GOOGLE MAP          =
==================================================*/

#page-contact{
    position:relative;
}

/*--------------------------------------------------
  MAP
--------------------------------------------------*/

#map{

    position:relative;

    width:100%;

    height:620px;

    min-height:500px;

    overflow:hidden;

    background:#ececec;

}

/* voile gris léger */

#map::after{

    content:"";

    position:absolute;

    inset:0;

    background:#666;

    opacity:.08;

    pointer-events:none;

    z-index:2;

}

/* désaturation de la carte */

/* #map .gm-style{

    filter:

        grayscale(.45)

        saturate(.85)

        brightness(1.03)

        contrast(.95);

} */

/* suppression de quelques éléments Google */

.gm-style iframe + div{
    border:none !important;
}

/*==================================================
=            COLONNE CONTACT                       =
==================================================*/

.bg-contrast-100{

    background:#ffffff;

}

.col-padding{

    padding:70px 60px;

}

/*==================================================
=            LOGO                                 =
==================================================*/

.contact-logo{

    display:block;

    width:180px;

    max-width:100%;

    margin:0 auto 35px;

}

/*==================================================
=            TITRE                                =
==================================================*/

#page-contact h3{

    margin-bottom:12px;

    color:#fff;

}

/* petit trait orange */

.contact-separator{

    width:70px;

    height:3px;

    background:#d8582d;

    margin-bottom:40px;

}

/*==================================================
=            CONTENU                              =
==================================================*/

.contact-content{

    font-size:16px;

    line-height:1.9;

    color:#555;

}

.contact-content address{

    margin-bottom:0;

    line-height:1.9;

    font-style:normal;

}

.contact-content strong{

    display:block;

    margin-bottom:8px;

    color:#111;

    font-weight:600;

}

.contact-content p{

    margin-bottom:0;

}

.contact-content a{

    color:#444;

    text-decoration:none;

    transition:.25s;

}

.contact-content a:hover{

    color:#d8582d;

}

/*==================================================
=            BOUTON                               =
==================================================*/

.btn-itineraire{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    margin-top:35px;

    padding:15px 34px;

    background:#d8582d;

    color:#fff;

    border-radius:4px;

    text-transform:uppercase;

    letter-spacing:2px;

    font-size:13px;

    font-weight:600;

    transition:.3s;

    text-decoration:none;

    box-shadow:0 12px 30px rgba(216,88,45,.22);

}

.btn-itineraire:hover{

    background:#bf4720;

    color:#fff;

    transform:translateY(-2px);

    box-shadow:0 18px 35px rgba(216,88,45,.35);

}

/*==================================================
=            INFO WINDOW                          =
==================================================*/

.gm-style-iw{

    border-radius:12px !important;

}

.gm-style-iw-d{

    overflow:hidden !important;

}

.map-popup{

    width:260px;

    padding:10px;

    font-family:inherit;

}

.map-popup img{

    display:block;

    width:150px;

    margin:5px auto 20px;

}

.map-popup h4{

    margin:0 0 12px;

    font-size:18px;

    color:#222;

}

.map-popup p{

    margin-bottom:12px;

    color:#666;

    line-height:1.6;

}

.map-popup .popup-btn{

    display:block;

    text-align:center;

    margin-top:20px;

    padding:12px;

    background:#d8582d;

    color:white;

    text-decoration:none;

    border-radius:4px;

    transition:.25s;

}

.map-popup .popup-btn:hover{

    background:#bf4720;

}

/*==================================================
=            RESPONSIVE                           =
==================================================*/

@media (max-width:991px){

    #map{

        height:450px;

    }

    .col-padding{

        padding:50px 35px;

    }

}

@media (max-width:767px){

    #map{

        height:380px;

        min-height:380px;

    }

    .contact-logo{

        width:150px;

    }

    .contact-separator{

        margin-bottom:25px;

    }

    .btn-itineraire{

        width:100%;

    }

}

/*==================================================
  Marqueur personnalisé
==================================================*/

.custom-marker{

    position:relative;

    width:60px;

    height:74px;

    cursor:pointer;

    transition:.25s;

}

.custom-marker:hover{

    transform:translateY(-4px);

}

/*==================================================
  Animation
==================================================*/

.gm-style .gm-style-iw{

    animation:fadeIn .25s ease;

}

@keyframes fadeIn{

    from{

        opacity:0;
        transform:translateY(10px);

    }

    to{

        opacity:1;
        transform:none;

    }

}

.header-wrap-clone {display: none!important;}
.py-20{padding-bottom:20px}