/*
Theme Name: Le Béal - Divi Child Theme
Description: Theme enfant de lebeal.org
Author: Goupil Agency
Author URI: https://www.lebeal.org
Template: Divi
Version: 1.1
*/

/* Ui */
#page-container {
  overflow: hidden;
}

/*Hero*/
.et_pb_module.et_pb_text.lb-hero-title {
  display: table;
}

.et_pb_module.et_pb_text.lb-hero-title h1 {
  margin:0;
}

.et_pb_module.et_pb_text.lb-hero-tagline {
  display: table;
}

.et_pb_section.lb-hero-section  {
  overflow: hidden;
}

.et_pb_section.lb-hero-section::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: inherit; /* Utilise l'image de fond de l'élément parent */
    background-size: cover;
    background-position: center;
    animation: enlargeBackground 25s infinite;
    z-index: 1; /* Place le pseudo-élément derrière le contenu de la section */
}

@keyframes enlargeBackground {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(1.1);
    }
}


/*Card*/
.lb-card::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.9) 100%);
    pointer-events: none;
}

/* Moodboard  */
.lb-moodboard-bg {
      overflow: hidden;
}

.lb-moodboard-bg::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: inherit; /* Utilise l'image de fond de l'élément parent */
    background-size: cover;
    background-position: center;
    animation: enlargeBackground 25s infinite;
    z-index: 1; /* Place le pseudo-élément derrière le contenu de la section */
}

@media only screen and (max-width: 980px) {
    .lb-moodboard .et_pb_column.et_pb_column_empty {
        display:block!important;
        min-height: 450px!important
    }
}


/* Balloon  */
.lb-ballon-link {
  color: #ad94c6;
  cursor: pointer;
}

/*Menu*/
.et_pb_menu .et_pb_menu__menu > nav > ul > li:not(.lb-menu-cta) > a {
    pointer-events: none;
}

html .et-menu li:not(.mega-menu) ul,
html #top-menu li:not(.mega-menu) ul {
  width: auto !important;
}

@media screen and (min-width: 1481px) {
    html #top-menu li li,
    html .et-menu li li {
        width: max-content;
        min-width: 100%;
    }

    html .et-menu li li.menu-item-has-children>a:first-child:after {
      right: 0px;
    }
}

/*Menu > CTA */
html ul li.menu-item.lb-menu-cta a,
html ul li.menu-item.lb-menu-cta.current-menu-item a{
  color: #FFFFFF !important;
  border-width: 1px !important;
  border-style: solid;
  border-color: #AD94C6;
  letter-spacing: 0px;
  font-size: 16px;
  background-color: #AD94C6;
  padding: 14px 19px;
  height: 47px;
  margin-top: -13px;
  border-radius: 40px;
  text-transform: uppercase;
}


html ul li.menu-item.lb-menu-cta a:hover,
html ul li.menu-item.lb-menu-cta.current-menu-item a:hover {
  border-color: #AD94C6;
  background-color: #FFFFFF !important;
  color: #AD94C6 !important;
}

html ul li.menu-item.lb-menu-cta.lb-menu-cta--alt a,
html ul li.menu-item.lb-menu-cta.lb-menu-cta--alt.current-menu-item a{
  border-color: #00939B;
  background-color: #00939B;
}

html ul li.menu-item.lb-menu-cta.lb-menu-cta--alt a:hover,
html ul li.menu-item.lb-menu-cta.lb-menu-cta--alt.current-menu-item a:hover {
  border-color: #00939B;
  color: #00939B !important;
}

html ul li.menu-item.lb-menu-cta.lb-menu-cta--altsec a,
html ul li.menu-item.lb-menu-cta.lb-menu-cta--altsec.current-menu-item a {
  border-color: #87cdb1;
  background-color: #87cdb1;
}

html ul li.menu-item.lb-menu-cta.lb-menu-cta--altsec a:hover,
html ul li.menu-item.lb-menu-cta.lb-menu-cta--altsec.current-menu-item a:hover {
  border-color: #87cdb1;
  color: #87cdb1 !important;
}


@media only screen and (max-width: 1481px) {
    html ul li.menu-item.lb-menu-cta a {
        max-width: 310px;
        text-align: center;
        margin: 12px auto 4px !important;
        height: auto !important;
    }
}

/* Menu > Mobile nav */

html .et_pb_menu .mobile_nav ul.et_mobile_menu  {
  min-width: calc(100vw);
  margin-left: 0;
  min-height: 100vh !important;
  padding-top: 0;
  margin-top: 18px;
  padding-top: 80px;
  background-color: #FFFFFF !important; 
}

html .et_mobile_menu .menu-item-has-children>a  {
  background-color: transparent !important; 
}  

.mobile_nav.opened .et_mobile_menu {
  display: flex !important;
  flex-flow: column;
  flex-wrap: wrap;
  align-items: center;
  align-content: flex-start;
}

html body.dipi-collapse-submenu-mobile .et-l--header .et_mobile_menu li.menu-item-has-children > a, 
html body.dipi-collapse-submenu-mobile #main-header .et_mobile_menu li.menu-item-has-children > a {
  font-weight: 700 !important;
}

.mobile_nav .et_mobile_menu li.menu-item {
  width: 100%;
  text-align: center;
}

.mobile_nav .et_mobile_menu li.menu-item a {
}

.mobile_nav .et_mobile_menu li.menu-item a:hover {
    background-color: inherit;
    opacity: 1;
}


/*Hero*/
.lebeal-banner-w img {
  height: 750px;
  width: 100% !important;
  object-fit: cover;
  object-position: top center;
}

/* Footer */
footer {
  overflow: hidden;  
}


/* Plugins */
/* Plugin Forminator */
html .et-db #et-boc .et_pb_module .forminator-ui.forminator-custom-form[data-design=flat] .forminator-label[for],
html .forminator-ui.forminator-custom-form[data-design=flat] .forminator-label[for],
html .forminator-ui.forminator-custom-form[data-design=flat] .forminator-label  {
    color: #00939b !important;
    text-transform: uppercase !important;
}

html .forminator-ui.forminator-custom-form[data-design=flat] h2.forminator-title {
  font-size: 20px !important;
  font-weight: 500;
}


html .forminator-ui.forminator-design--flat .forminator-button-submit,
html .forminator-ui.forminator-design--flat .forminator-button-submit {
  background-color: #AD94C6 !important;
  border:  1px solid #AD94C6 !important;
  padding-top: 15px!important;
  padding-right: 28px!important;
  padding-bottom: 15px!important;
  padding-left: 28px!important;
  border-radius: 40px !important;
  letter-spacing: 0.06em;
  font-size: 14px;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  background-color: #AD94C6;
}

html .forminator-ui.forminator-design--flat .forminator-button-submit:hover,
html .forminator-ui.forminator-design--flat .forminator-button-submit:hover {
  background-color: transparent !important;
  color: #AD94C6 !important;
  box-shadow:  none !important;
}