/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/
/*----------------------------------------GENERAL STYLES AND CLASSES----------------------------------------*/
html,
body {
    overflow-x: hidden !important;
}

.elementor-widget-image:not(.logo) a img[src$=".svg"] {
    width: inherit !important;
}
strong{
    font-weight: 700;
}
/*DISABLE OUTLINE*/
*:focus-visible {
    outline: none !important;
}
a:hover{
	cursor:pointer;
    color: inherit;
}
a{
    color: inherit;
}
.overflow-hidden,
.overflow-hidden .elementor-widget-container {
    overflow: hidden !important;
}

.height100,
.height100 .elementor-widget-container,
.height100 .elementor-custom-embed  {
    height: 100% !important;
}

.width100,
.width100 .elementor-widget-container {
    width: 100% !important;
}

.cta a::before {
    /*THIS EXTENDS THE LINK TO THE ENTIRE WIDGET BLOCK*/
    content: "";
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}

.pointer:hover {
    cursor: pointer;
}

.pointer-none {
    pointer-events: none;
}

/* TEXT IN FRONT OF STROKE */
* {
    paint-order: stroke;
}

/*SEPARATOR*/
.vertical-separator {
    display: flex;
    height: 100%;
    width: 1px;
    background-color: #fff;
}

@media (max-width: 767px) {
    .sm-overflow-x-scroll {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        flex-wrap: nowrap;

        >.e-con.e-flex {
            --flex-shrink: 0;
        }
    }
	.nobr br{
        display: none !important;
    }
}

@media (max-width: 1024px) {
    .md-overflow-x-scroll {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        flex-wrap: nowrap;

        >.e-con.e-flex {
            --flex-shrink: 0;
        }
    }
}

/*CARROUSELS*/
.opacity-carrousel {
    position: relative;
    -webkit-mask-image: linear-gradient(to right, transparent, black 20%, black 80%, transparent);
    mask-image: linear-gradient(to right, transparent, black 20%, black 80%, transparent);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}
.smooth-carrousel .swiper-wrapper{
  -webkit-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
}

/*----------------------------------------TEXT UTILITY CLASSES----------------------------------------*/
.text-primary {
    color: var(--e-global-color-primary);
}

.text-secondary {
    color: var(--e-global-color-secondary);
}

.text-accent {
    color: var(--e-global-color-accent);
}

/*FIX DEFAULT LINK ELEMENTOR*/
.inherit a {
    color: inherit !important;
}
.elementor-kit-5 a{
	font-weight: inherit;
}
.underline a {
    text-decoration: underline !important;
}
.bigger-b b, .bigger-b strong{
    font-weight: 700 !important;
    font-size: calc(100%*1.33) !important;
}
/* Fix Safari faux-gras sur li strong/b */
/* Ciblage précis du widget text-editor */
.elementor-widget-text-editor li strong,
.elementor-widget-text-editor li b {
  font-family: 'Outfit', sans-serif;
  font-weight: 700;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
}
b, strong {
    font-weight: 700;
}
/*----------------------------------------UTILITY CLASSES----------------------------------------*/
.backdrop-blur-1 {
    backdrop-filter: blur(1px);
}
.backdrop-blur-5 {
    backdrop-filter: blur(5px);
}

.backdrop-blur-10 {
    backdrop-filter: blur(10px);
}

.backdrop-blur-15 {
    backdrop-filter: blur(15px);
}

.backdrop-blur-20 {
    backdrop-filter: blur(20px);
}
.backdrop-blur-25 {
    backdrop-filter: blur(25px);
}
.none-mobile{
	@media (max-width: 767px) {
		display: none !important;
	}
}
.none-desktop{
	@media (min-width: 768px) {
		display: none !important;
	}
}
.flex-center{
	display: flex !important;
	justify-content: center;
	align-items: center;
}
.semibold b, .semibold strong{
	font-weight:600 !important;
}
/*----------------------------------------TEXTE EN GRAS SI ACTIF SUR LES ACCORDEONS----------------------------------------*/
.faq summary[aria-expanded=true] .e-n-accordion-item-title-text{
	font-weight: 700 !important;
}
/*----------------------------------------RECAPTCHA----------------------------------------*/
.grecaptcha-badge,
.grecaptcha-badge * {
    display: none !important;
}
.elementor-alert-info{
	display: none !important;
}

/*----------------------------------------HEADER----------------------------------------*/
.bg-header {
    transition: background 0.3s ease;
}

.bg-header:has(.e-n-menu-content.e-active) {
    background: rgba(5, 7, 38, 0.80) !important;
}
.ia-button{
    box-shadow: -8px 8px 30px 0 rgba(0, 16, 209, 0.30) inset, 8px -8px 30px 0 rgba(255, 118, 118, 0.30) inset !important;
}
.ia-button a::before{/*THIS EXTENDS THE LINK TO THE ENTIRE WIDGET BLOCK*/
    content:"";
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}
.ia-button:hover{
    cursor: pointer;
}
/*----------------------------------------REALISATIONS---------------------------------------*/
.overlay-realisation{
    width: 100%;
    height: 100%;
    background: rgba(5, 7, 38, 0.40);
    backdrop-filter: blur(10px);
}
.realisation *{
    transition: all 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}
.hover-realisation{
    transition: all 0.4s cubic-bezier(0.33, 1, 0.68, 1);
    opacity: 0;
    transform: scale(0.82);
}
.overlay-realisation{
    transition: all 0.4s cubic-bezier(0.33, 1, 0.68, 1);
    opacity: 0;
}
.realisation:hover .hover-realisation{
    transition: all 0.4s cubic-bezier(0.33, 1, 0.68, 1);
    opacity: 1;
    transform: scale(1.0);
}
.realisation:hover .overlay-realisation{
    transition: all 0.4s cubic-bezier(0.33, 1, 0.68, 1);
    opacity: 1;
}
.carrousel-realisations .jet-listing .slick-slide img, .carrousel-realisations .jet-listing-dynamic-field__content .slick-slide img {
    display: inline-block;
}
/*----------------------------------------SLIDER & TABS METIER---------------------------------------*/
.tabs-metier .ue-item{
    backdrop-filter: blur(25px);
}
.tabs-metier{
    @media (max-width: 767px){
        -webkit-mask-image: linear-gradient(to right, black, black 20%, black 80%, transparent);
        mask-image: linear-gradient(to right, black, black 20%, black 80%, transparent);
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
    }
}
.slider-metiers .ue-content-holder > div{
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
}
/*----------------------------------------SLIDER PAGES METIERS CHANGER COULEURS ACTIVE---------------------------------------*/
.color-active .uc-active-item .to-pink{
    transition: background-color 0.5s ease;
    background-color: var(--e-global-color-accent) !important;
}
.color-active .uc-active-item .to-pink rect{
    fill: #FCF7F0 !important;
}
.color-active .uc-active-item .to-pink path{
    fill: var(--e-global-color-accent) !important;
}
.color-active .uc-active-item .to-blue{
    transition: background-color 0.5s ease;
    background-color: var(--e-global-color-secondary) !important;
}
.color-active .uc-active-item .to-blue rect{
    fill: #FCF7F0 !important;
}
.color-active .uc-active-item .to-blue path{
    fill: var(--e-global-color-secondary) !important;
}
.color-active li{
    padding-bottom: 5px;
}
/* .to-pink h3, .to-blue h3{
    text-transform: capitalize !important;
} */
@media (max-width: 1600px){
  .to-pink .elementor-widget-text-editor, .to-blue .elementor-widget-text-editor{
        font-size:16px !important;
    }  
}

/*----------------------------------------SLIDER TEMOIGNAGES---------------------------------------*/
.slider-temoignages .owl-carousel .owl-item img {
    display: inherit !important;
    width: inherit !important;
}
.slider-temoignages .owl-item:not(.active){
    opacity: 0.3 !important;
    transition: opacity 1s ease;
}
.slider-temoignages .owl-item.active{
    opacity: 1 !important;
    transition: opacity 1s ease;
}
/*----------------------------------------PAGE IA---------------------------------------*/
.ia-subtitle{
    background: linear-gradient(60deg, rgba(255, 118, 118, 0.30) 0.28%, rgba(255, 118, 118, 0.06) 55.2%), linear-gradient(225deg, rgba(62, 0, 255, 0.30) -0.22%, rgba(62, 0, 255, 0.06) 62.57%);
}
/*----------------------------------------SLIDER EVENEMENTS---------------------------------------*/

/* Le slider devient un conteneur flex : slides sur 1 ligne, nav sur la ligne suivante */
.slider-events .jet-listing-grid__items.slick-slider {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  row-gap: 40px;
  column-gap: 0px;
}

/* Les slides forcent le retour à la ligne : elles occupent toute la largeur */
.slider-events .slick-list {
  order: 1;
  flex: 1 1 100%;
  width: 100%;
}

/* On sort flèches et puces de l'absolute pour rejoindre le flux flex */
.slider-events .prev-arrow,
.slider-events .next-arrow,
.slider-events .jet-slick-dots {
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
}

.slider-events .prev-arrow { order: 2; }
.slider-events .jet-slick-dots {
  order: 3;
  display: flex;
  align-items: center;
  margin: 0;
  width: auto !important;
}
.slider-events .next-arrow { order: 4; }

/* Style des flèches */
.slider-events .jet-listing-grid__slider-icon {
  width: 20px !important;
  height: 20px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  margin-top: 0px !important;
}
.slider-events .jet-listing-grid__slider-icon svg {
  width: 20px !important;
  height: 20px !important;
}
.slider-events .jet-listing-grid__slider-icon svg path {
  fill: #ffffff;
}
/*----------------------------------------TOGGLE EVENEMENTS---------------------------------------*/
#all, #dejeuners-cta, #webinars-cta, #salons-cta {
  cursor: pointer;
  transition: background-color 0.2s ease;
}

#all.is-active,
#dejeuners-cta.is-active,
#webinars-cta.is-active,
#salons-cta.is-active {
  background-color: #FCF7F0 !important;
}

#all.is-active .elementor-heading-title,
#dejeuners-cta.is-active .elementor-heading-title,
#webinars-cta.is-active .elementor-heading-title,
#salons-cta.is-active .elementor-heading-title {
  font-weight: 700;
  color: var(--e-global-color-text) !important;
}
.programme h3{
    font-size: 36px !important;
    font-weight: 300 !important;
}
/*----------------------------------------PAGE BLOG ARTICLE SEUL---------------------------------------*/
.table-matiere .elementor-toc__header{
    display: none !important;
}
.table-matiere .elementor-toc__list-wrapper li{
    margin-bottom: 20px !important;
}
.table-matiere .elementor-toc__list-wrapper li:last-child{
    margin-bottom: 0px !important;
}
.table-matiere .elementor-toc__body .elementor-toc__list-item-text.elementor-item-active{
    font-weight: 700 !important;
}
.article-blog{
    display: flex;
    flex-direction: column;
    gap: 0px;
}
.article-blog p{
    line-height: 166.667% !important;
}
.article-blog p, .article-blog hr, .article-blog blockquote, .article-blog img, .article-blog table {
    margin-top: 5px;
    margin-bottom: 15px;
}
.article-blog ul, .article-blog ol{
    margin-bottom: 15px;
}
.article-blog h2, .article-blog h3{
    margin-top: 15px;
    margin-bottom: 25px;
}
.article-blog figure img, .article-blog video{
    margin-top: 20px;
    border-radius: 20px;
    width: 100%;
}
.article-blog h2, .article-blog h3, .article-blog h4, .article-blog h5{
    font-family: inherit;
    font-weight: 700;
}
.article-blog h3{
    font-size: 1.5rem;
}
.article-blog blockquote{
   	color: var(--e-global-color-primary);
    font-family: inherit;
    font-size: 23px;
    font-style: italic;
    font-weight: 400;
    line-height: normal; 
    border-radius: 20px;
    background:  var(--e-global-color-accent);
    padding: 15px;
    width: 100%;
    margin-inline-start: 0px;
}
.article-blog tr:first-child td{
    background: #F7F7F7;
}
.article-blog table{
    background: #fff;
    border-radius: 20px;
    overflow: hidden;
}
.article-blog table tr td{
    border: none;
    padding: 15px;
    border-right: 1px solid rgba(00, 00, 00, 0.20);
}
.article-blog table tr td:last-child{
    border: none;
    padding: 15px;
    border-right: none !important;
}
.article-blog .wp-block-separator {
    border: none;
    border-top: 1px solid rgba(00, 00, 00, 0.20);
}
.article-blog .wp-element-button, .article-blog .wp-block-button__link{
    background-color: #0010D1;
    font-family: 'Outfit';
    border-radius: 10px;
    margin: auto;
}
/*----------------------------------------RECAPTCHA----------------------------------------*/
.grecaptcha-badge, .grecaptcha-badge *, .elementor-field-type-recaptcha_v3 {
    display: none !important;
}
/*----------------------------------------SCROLLBAR CUSTOM----------------------------------------*/
::-webkit-scrollbar {
    width: 8px;
}
.md-overflow-x-scroll::-webkit-scrollbar {
    height: 4px;
}
::-webkit-scrollbar-track {
    background: #F5F5F533;
}

::-webkit-scrollbar-thumb {
    background-color: #3E00FF;
    border-radius: 20px;
    border: 3px solid #3E00FF;
}
