/* Forcer l'affichage du footer du thème */
#colophon,
footer.site-footer {
    display: block !important;
    visibility: visible !important;
}

/* Cacher uniquement la ligne de crédits Blossom */
.site-info {
    display: none !important;
}

.page .page-header,
.page .entry-header {
    display: none !important;
}

/* Masquer complètement le footer du thème Blossom Chic */
.site-info,
footer.site-footer {
    display: none !important;
}
html, body {
  overflow-x: hidden !important;
  max-width: 100%;
}

.main-navigation ul.menu {
    display: flex;
    align-items: center;
    width: 100%;
}

.main-navigation {
    width: 100%;
}

.main-navigation .menu {
    display: flex !important;
    align-items: center;
    width: 100%;
}

.main-navigation .menu > li.lang-item {
    margin-left: 25px !important;
}

.main-navigation .menu > li.lang-item:first-of-type {
    margin-left: auto !important;
}

#primary-menu {
    display: flex !important;
    width: 100%;
}

#primary-menu > li:nth-last-child(2) {
    margin-left: auto !important;
}

#primary-menu {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    position: relative;
}

/* Drapeaux à droite */
#primary-menu > li.lang-item {
    position: absolute;
    right: 0;
}

#primary-menu > li.lang-item:last-child {
    right: 35px;
}

/* Espacement menu */
#primary-menu > li {
    position: relative;
    padding: 0 18px;
}



/* Pas de point après les langues */
#primary-menu > li.lang-item::after {
    display: none;
}

.header-search,
.search-toggle,
.header-search-wrap {
    display: none !important;
}

.owl-dot.active span,
.slick-dots li.slick-active button:before,
.swiper-pagination-bullet-active {
    background: #C4A461 !important;
}

@media (max-width: 768px) {

    #primary-menu {
        display: flex !important;
        flex-direction: column !important;
        align-items: center;
        width: 100%;
    }

    #primary-menu li {
        display: block;
        width: 100%;
        text-align: center;
        padding: 12px 0;
    }

}
@media (max-width: 768px) {

    #primary-menu > li.lang-item {
        position: static !important;
    }

}
@media (max-width: 1024px) {

    /* Menu mobile centré */
    #primary-menu {
        display: flex !important;
        flex-direction: column !important;
        align-items: center;
        width: 100%;
    }

    /* Éléments du menu */
    #primary-menu li {
        width: 100%;
        text-align: center;
        padding: 10px 0;
    }

    /* Les drapeaux sur une ligne séparée */
    #primary-menu li.lang-item {
        display: inline-block !important;
        width: auto !important;
        padding: 15px 8px 0 8px;
    }

    /* Conteneur des langues */
    #primary-menu li.lang-item:first-of-type {
        margin-top: 10px;
    }

    /* Burger centré */
    .menu-toggle,
    .mobile-menu-toggle {
        display: flex !important;
        justify-content: center;
        margin: 0 auto;
    }
}
@media (max-width: 1024px) {

    /* Burger menu centré */
    .menu-toggle,
    .mobile-menu-toggle,
    button.menu-toggle {
        display: block !important;
        margin: 0 auto !important;
        text-align: center !important;
        float: none !important;
    }

    /* Menu ouvert en colonne, compact */
    #primary-menu {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        padding: 8px 0 !important;
        margin: 0 !important;
        gap: 0 !important;
    }

    /* Chaque page sur une ligne, plus serrée */
    #primary-menu > li {
        width: 100% !important;
        text-align: center !important;
        padding: 4px 0 !important;
        margin: 0 !important;
        line-height: 1.2 !important;
        position: static !important;
    }

    #primary-menu > li > a {
        display: block !important;
        padding: 5px 0 !important;
        line-height: 1.2 !important;
        font-size: 13px !important;
    }

    /* Drapeaux tout en bas */
    #primary-menu > li.lang-item {
        width: auto !important;
        display: inline-block !important;
        padding: 8px 5px 0 5px !important;
        margin: 0 !important;
        position: static !important;
    }

    /* Mettre les deux drapeaux côte à côte */
    #primary-menu > li.lang-item:first-of-type {
        margin-top: 8px !important;
    }

    #primary-menu > li.lang-item,
    #primary-menu > li.lang-item + li.lang-item {
        display: inline-block !important;
    }

    /* Crée une ligne séparée pour les drapeaux */
    #primary-menu > li.lang-item:first-of-type {
        display: inline-block !important;
    }

    #primary-menu > li.lang-item a {
        display: inline-block !important;
        padding: 0 4px !important;
    }

    /* Supprime les séparateurs éventuels */
    #primary-menu > li::after {
        display: none !important;
    }
}
@media (max-width: 1024px) {

    /* Permet de voir tout le menu si l’écran est petit */
    .main-navigation,
    #site-navigation {
        max-height: 85vh !important;
        overflow-y: auto !important;
    }

    /* Drapeaux plus visibles et bien espacés */
    #primary-menu > li.lang-item {
        display: inline-block !important;
        width: auto !important;
        margin: 8px 6px 0 6px !important;
        padding-bottom: 12px !important;
    }

    #primary-menu > li.lang-item img {
        width: 22px !important;
        height: auto !important;
    }
}
@media (max-width: 1024px) {

    .mobile-menu-open,
    .main-navigation,
    #site-navigation {
        position: relative !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    body.menu-open {
        overflow: auto !important;
    }

}
@media (max-width: 1024px) {

    .sticky-header,
    .site-header,
    .header-main,
    .mobile-header,
    .main-header,
    #masthead {
        position: static !important;
        top: auto !important;
    }

    .main-navigation,
    #site-navigation,
    .nav-menu {
        position: static !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    body {
        overflow-y: auto !important;
    }
}

@media (max-width: 1024px) {

    /* Centre toute la zone du menu */
    .main-navigation,
    #site-navigation {
        width: 100% !important;
        text-align: center !important;
        float: none !important;
    }

    /* Centre le burger */
    .main-navigation button,
    #site-navigation button,
    .main-navigation .toggle-button,
    #site-navigation .toggle-button {
        display: inline-block !important;
        float: none !important;
        margin: 0 auto !important;
        text-align: center !important;
    }

    /* Menu compact ouvert */
    #primary-menu {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        justify-content: center !important;
        width: 100% !important;
        padding: 8px 0 25px 0 !important;
        max-height: 80vh !important;
        overflow-y: auto !important;
    }

    #primary-menu > li:not(.lang-item) {
        width: 100% !important;
        text-align: center !important;
        padding: 2px 0 !important;
    }

    #primary-menu > li:not(.lang-item) > a {
        padding: 5px 0 !important;
        font-size: 13px !important;
        line-height: 1.15 !important;
    }

    /* Drapeaux côte à côte en bas */
    #primary-menu > li.lang-item {
        width: auto !important;
        display: inline-flex !important;
        margin: 12px 6px !important;
        padding: 0 !important;
        position: static !important;
    }

    #primary-menu > li.lang-item img {
        width: 22px !important;
        height: auto !important;
    }
}

@media (max-width: 1024px) {

    #site-navigation {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    #site-navigation > button,
    #site-navigation .menu-toggle {
        align-self: center !important;
        float: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}
body:not(.home) .site-header + .page-header,
body:not(.home) .site-header + .banner,
body:not(.home) .page-title,
body:not(.home) .entry-title {
  display: none !important;
}

body:not(.home) .site-content,
body:not(.home) #content,
body:not(.home) .content-area,
body:not(.home) .site-main {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

.home .site-header {
background: transparent !important;
position: absolute;
width: 100%;
z-index: 999;
}



.home .site-header {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 9999 !important;
  padding-top: 15px !important;
  padding-bottom: 10px !important;
  background: transparent !important;
}

.home .site-header .container {
  background: transparent !important;
}
.home .main-navigation {
  position: absolute !important;
  top: 15px !important;
  right: 30px !important;
  z-index: 99999 !important;
  margin: 0 !important;
}
.home .main-navigation {
  border: none !important;
  box-shadow: none !important;
}

.home .site-header {
  border: none !important;
  box-shadow: none !important;
}
.home .navigation-wrapper,
.home .header-layout-1,
.home .header-main {
  border: none !important;
  box-shadow: none !important;
}
.home .main-navigation,
.home .main-navigation *,
.home .main-navigation ul,
.home .main-navigation li,
.home .main-navigation div,
.home .header-t,
.home .header-b,
.home .site-header,
.home .site-header *::before,
.home .site-header *::after {
  border: 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
  background-image: none !important;
}
.home .site-header,
.home .site-header .wrapper,
.home .site-header .container,
.home .header-main,
.home .header-t,
.home .header-b {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}
.home .site-header::before,
.home .site-header::after {
    display: none !important;
}
.home .site-header {
    overflow: hidden !important;
}
.home .main-navigation:before,
.home .main-navigation:after,
.home .main-navigation ul:before,
.home .main-navigation ul:after,
.home .menu:before,
.home .menu:after,
.home .primary-menu:before,
.home .primary-menu:after {
  display: none !important;
  content: none !important;
  border: 0 !important;
  background: transparent !important;
}
.home .main-navigation {
  background: transparent !important;
  outline: none !important;
}
body.home {
    overflow-x: hidden;
}
.home .site {
    overflow: hidden;
}
html, body {
    overflow-x: hidden;
}
.home .elementor-swiper-button,
.home .swiper-button-next,
.home .swiper-button-prev,
.home .slick-arrow,
.home .owl-nav,
.home .owl-prev,
.home .owl-next {
  display: none !important;
}
.home .elementor-widget-video::after,
.home .elementor-background-video-container::after,
.home .elementor-section::after {
  display: none !important;
  content: none !important;
}
.home .swiper-scrollbar,
.home .swiper-pagination,
.home .slick-dots,
.home .slick-list,
.home .owl-dots,
.home .owl-carousel .owl-stage-outer {
  border: none !important;
  box-shadow: none !important;
}

.home .swiper-scrollbar,
.home .swiper-pagination,
.home .slick-dots,
.home .owl-dots {
  display: none !important;
}
.home * {
  outline: none !important;
}
.home .back-to-top,
.home #back-to-top,
.home .scroll-to-top,
.home .go-to-top,
.home .to_top,
.home .totop,
.home .page-up,
.home .top-link {
  display: none !important;
}
.home a[href="#page"],
.home a[href="#top"],
.home a[href="#masthead"] {
  display: none !important;
}
.home .elementor-element {
  border-right: none !important;
}

.home .elementor-section,
.home .elementor-container,
.home .elementor-column,
.home .elementor-widget-wrap,
.home .elementor-background-video-container {
  border: none !important;
  box-shadow: none !important;
}
.home .elementor-widget-divider,
.home .elementor-divider,
.home .elementor-divider-separator {
  display: none !important;
}

.home .elementor-background-video-container {
    width: calc(100% + 2px) !important;
    margin-right: -2px !important;
}

.home .elementor-section {
    height: 100vh !important;
    overflow: hidden !important;
}
@media (max-width: 768px) {

  .home .site-header {
    position: relative !important;
    background: transparent !important;
    z-index: 9999 !important;
  }

  .home .main-navigation {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    margin: 0 !important;
  }

  .home .elementor-section {
    min-height: 100vh !important;
    overflow: hidden !important;
  }

  .home .elementor-background-video-container video {
    object-fit: cover !important;
  }

}
@media (max-width: 768px) {
  .home .site-header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 99999 !important;
    background: transparent !important;
  }

  .home .site-branding,
  .home .site-logo,
  .home .custom-logo-link {
    position: relative !important;
    z-index: 100000 !important;
  }

  .home .main-navigation {
    z-index: 100000 !important;
  }

  .home .elementor-background-video-container {
    z-index: 1 !important;
  }
}
@media (max-width: 768px) {

  /* Réduit le logo */
  .home .custom-logo {
    max-width: 140px !important;
    height: auto !important;
  }

  /* Supprime les sous-titres */
  .home .site-description,
  .home .site-title {
    display: none !important;
  }

}
max-width: 100px;

@media (max-width: 768px) {

  .home .site-header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 999999 !important;
    background: transparent !important;
  }

  .home .main-navigation {
    position: relative !important;
    z-index: 1000000 !important;
  }

  .home .main-navigation button,
  .home .menu-toggle {
    position: relative !important;
    z-index: 1000001 !important;
    display: block !important;
    pointer-events: auto !important;
  }

  .home .elementor-section,
  .home .elementor-background-video-container,
  .home .elementor-background-video-container video {
    z-index: 1 !important;
    pointer-events: none !important;
  }
}
.elementor-nav-menu a:focus,
.elementor-nav-menu a:active {
    outline: none !important;
    background: transparent !important;
    box-shadow: none !important;
}

.elementor-nav-menu a:hover {
    color: #C4A461 !important;
}

.elementor-nav-menu--dropdown a,
.elementor-nav-menu--dropdown a:focus,
.elementor-nav-menu--dropdown a:active,
.elementor-nav-menu--dropdown .elementor-item:focus,
.elementor-nav-menu--dropdown .elementor-item:active {
    outline: 0 !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

.elementor-nav-menu--dropdown .elementor-item:hover,
.elementor-nav-menu--dropdown .elementor-item:focus,
.elementor-nav-menu--dropdown .elementor-item:active {
    color: #C8A96B !important;
    background: transparent !important;
}
.elementor-item-active,
.elementor-item.elementor-item-active {
    background-color: transparent !important;
    color: #C8A96B !important;
}
/* Supprime les couleurs/cadres du menu mobile */
.elementor-location-header a,
.elementor-location-header a:hover,
.elementor-location-header a:focus,
.elementor-location-header a:active,
.elementor-location-header .current-menu-item > a,
.elementor-location-header .current_page_item > a,
.elementor-location-header .elementor-item-active {
  background: transparent !important;
  outline: none !important;
  border: none !important;
  box-shadow: none !important;
}

.elementor-location-header a:hover,
.elementor-location-header .current-menu-item > a,
.elementor-location-header .current_page_item > a,
.elementor-location-header .elementor-item-active {
  color: #C8A96B !important;
}
.elementor-nav-menu--dropdown a,
.elementor-nav-menu--dropdown .elementor-item,
.elementor-nav-menu--dropdown .current-menu-item a,
.elementor-nav-menu--dropdown .current_page_item a,
.elementor-nav-menu--dropdown .elementor-item-active {
    background-color: transparent !important;
    background: transparent !important;
    color: #C8A96B !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    -webkit-tap-highlight-color: transparent !important;
}

.elementor-nav-menu--dropdown a:focus,
.elementor-nav-menu--dropdown a:active,
.elementor-nav-menu--dropdown .elementor-item:focus,
.elementor-nav-menu--dropdown .elementor-item:active {
    background: transparent !important;
    outline: none !important;
    box-shadow: none !important;
}
selector video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.elementor-background-video-container {
    height: 100vh !important;
}

.elementor-background-video-container video {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  overscroll-behavior-x: none;
  position: relative;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

img,
video,
iframe {
  max-width: 100%;
}
@media (max-width: 767px) {
  .desktop-only {
    display: none !important;
  }
}
@media (min-width: 768px) {
    .mobile-only {
        display: none !important;
    }
}
/* TABLETTE UNIQUEMENT */
@media (min-width: 768px) and (max-width: 1024px) {

  /* Décale le burger plus à gauche */
  .elementor-menu-toggle {
    position: relative;
    left: -55px;
  }

  /* Empêche le logo + titre de défiler avec le menu */
  .elementor-nav-menu--dropdown {
    position: absolute !important;
    top: 70px !important;
    left: 0 !important;
    right: auto !important;
    width: 100% !important;
    z-index: 9999;
  }

  /* Garde le logo au-dessus/à part */
  header .elementor-widget-theme-site-logo,
  header .elementor-widget-image,
  header .elementor-widget-heading {
    z-index: 10000;
  }
}
/* TABLETTE UNIQUEMENT */
@media (min-width:768px) and (max-width:1024px){

    /* Bouton burger */
    .elementor-menu-toggle{
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
    }

    /* Icône burger et croix de fermeture */
    .elementor-menu-toggle i,
    .elementor-menu-toggle svg{
        color: #C4A461 !important;
        fill: #C4A461 !important;
    }

    /* Supprime le fond gris au survol */
    .elementor-menu-toggle:hover,
    .elementor-menu-toggle:focus,
    .elementor-menu-toggle:active{
        background: transparent !important;
    }

}
/* CORRECTION SCROLL TABLETTE — sans agrandir les espaces */
@media (min-width: 768px) and (max-width: 1024px) {

  html,
  body {
    height: auto !important;
    min-height: 100% !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    position: relative !important;
  }

  .site,
  #page,
  #content,
  .site-content,
  .content-area,
  .site-main,
  .elementor {
    height: auto !important;
    overflow-y: visible !important;
    overflow-x: hidden !important;
  }

  .home .site {
    overflow-y: visible !important;
    overflow-x: hidden !important;
  }

}

/* DESKTOP - supprimer la barre de scroll en trop du body */
@media (min-width:1025px){

  html{
    overflow-y:auto !important;
    overflow-x:hidden !important;
  }

  body{
    overflow-y:visible !important;
    overflow-x:hidden !important;
    scrollbar-width:none !important;
    -ms-overflow-style:none !important;
  }

  body::-webkit-scrollbar{
    display:none !important;
    width:0 !important;
  }

}
/* Masquer le footer global Elementor sur les pages anglaises */
html[lang^="en"] .elementor-location-footer,
html[lang^="en"] footer {
    display: none !important;
}