/*!
Theme Name: Duallis
Template: Divi
Description: Un theme créé par Bleuebuzz
Version: 1.1
Author: Bleuebuzz
Author URI: https://www.bleuebuzz.fr
*/

body{overflow-x: hidden;}

/* Header
========================================== */
.et_builder_inner_content .et_pb_row_0_tb_header {background: rgba(255, 255, 255, 0) !important; transition: color 0.5s ease;}
.site-logo {width: 220px; height: auto; color: rgb(0,0,0); transition: color 0.3s ease;}
.icon-mon-compte,
.icon-panier {height: 25px; width: auto; color: rgb(0,0,0); transition: color 0.3s ease;}
.icon-mon-compte:hover,
.icon-panier:hover {opacity:0.4;}
ul#menu-menu-principal {list-style-type:none; padding: 0;display:flex;flex-direction: row;justify-content: center;gap: 30px;}
ul#menu-menu-principal li a {font-size: 1.1em;line-height: normal;font-weight: 500;color: rgb(0,0,0);}
ul#menu-menu-principal li a:hover {opacity:0.4;}

/* Sticky */
.et_builder_inner_content.has_et_pb_sticky .et_pb_row_0_tb_header {background: rgba(255, 255, 255, 0.2) !important; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px);}
.has_et_pb_sticky .site-logo {width: 160px;}

@media screen and (max-device-width: 820px) {
    .site-logo {width: 150px;}
    .has_et_pb_sticky .site-logo {width: 130px;}
}

/* Scotch */
.et_pb_wc_cart_totals_0.et_pb_wc_cart_totals.woocommerce-cart.et_pb_module {margin-bottom:20px;}
/* Remplace l'emoji 🔍 par la loupe native Divi */
.woocommerce-product-gallery__trigger span {display: none !important;}
.woocommerce a.button:not(.alt):not(.checkout):not(.add_to_cart_button), .woocommerce .coupon .button {background-color:#000000!important;}

.woocommerce-product-gallery__trigger::before {
	content: "\55";                     /* loupe ETmodules (Divi) */
	font-family: "ETmodules" !important;
	font-size: 22px;                    /* ajuste la taille ici */
	line-height: 1;
	color: #000;                        /* couleur de l'icône */
	display: block;
	font-weight: 400;
	font-style: normal;
	font-variant: normal;
	text-transform: none;
	speak: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	transition: color .2s ease;
}

.woocommerce-product-gallery__trigger:hover::before {color: #666;}

/* Homepage */
.theme-clair .site-logo {color: rgb(255,255,255);}
.theme-clair ul#menu-menu-principal li a {color: rgb(255,255,255);}
.theme-clair .icon-mon-compte,
.theme-clair .icon-panier {color: rgb(255,255,255);}

.theme-clair .et_builder_inner_content.has_et_pb_sticky .site-logo {color: rgb(0,0,0);}
.theme-clair .et_builder_inner_content.has_et_pb_sticky ul#menu-menu-principal li a {color: rgb(0,0,0);}
.theme-clair .et_builder_inner_content.has_et_pb_sticky .icon-mon-compte,
.theme-clair .et_builder_inner_content.has_et_pb_sticky .icon-panier {color: rgb(0,0,0);}

/* Affiner et styliser la barre de défilement pour les navigateurs basés sur Webkit (Chrome, Safari, Edge) */
.rounded-modal::-webkit-scrollbar {width: 8px; }
.rounded-modal::-webkit-scrollbar-track {background: transparent; margin-top: 35px;margin-bottom: 35px; }
.rounded-modal::-webkit-scrollbar-thumb {background-color: rgba(0, 0, 0, 0.3); border-radius: 10px;}
.rounded-modal {scrollbar-width: thin;scrollbar-color: rgba(0, 0, 0, 0.3) transparent;}

/*animation homepage*/
.canvas-section {height: 300vh; position: relative;}
.canvas-sticky-wrapper {position: sticky;top: 0;height: 100vh;display: flex;align-items: center;justify-content: center;overflow: hidden;}
#open-sequencer {max-width: 100vw;max-height: 100vh;}

/* Bandeau promotionnel */
.bandeau-promo { width: 100%; min-height: 45px; background-color: #000000; color: #ffffff; text-align: center; padding: 10px 20px; font-size: 0.875rem; letter-spacing: 0.03em; position: relative; z-index: 9999; box-sizing: border-box;}

/* footer */
ul#menu-menu-mentions {list-style-type: none; padding: 0;display:flex; flex-direction: row;gap: 20px;}
ul#menu-menu-mentions li a {font-size: 12px; color: #ffffff!important; transition: all 0.5s ease;}
ul#menu-menu-mentions li a:hover {opacity:0.4;text-decoration: underline;}
ul#menu-menu-f-aide, ul#menu-menu-f-business, ul#menu-menu-f-propos {list-style-type: none; padding: 0;display:flex; flex-direction: column;gap: 15px;}
ul#menu-menu-f-aide li a, ul#menu-menu-f-business li a, ul#menu-menu-f-propos li a   {color: #ffffff!important; transition: all 0.5s ease;}
ul#menu-menu-f-aide li a:hover, ul#menu-menu-f-business li a:hover, ul#menu-menu-f-propos li a:hover  {opacity:0.4;text-decoration: underline;}

ul#menu-menu-f-aide-en, ul#menu-menu-f-business-en, ul#menu-menu-f-propos-en {list-style-type: none; padding: 0;display:flex; flex-direction: column;gap: 15px;}
ul#menu-menu-f-aide-en li a, ul#menu-menu-f-business-en li a, ul#menu-menu-f-propos-en li a   {color: #ffffff!important; transition: all 0.5s ease;}
ul#menu-menu-f-aide-en li a:hover, ul#menu-menu-f-business-en li a:hover, ul#menu-menu-f-propos-en li a:hover  {opacity:0.4;text-decoration: underline;}

@media screen and (max-device-width: 820px) {
    ul#menu-menu-mentions {justify-content: center;}
}

@media screen and (max-device-width: 640px) {
    ul#menu-menu-f-aide, ul#menu-menu-f-business, ul#menu-menu-f-propos {gap: 5px;}
    ul#menu-menu-f-aide-en, ul#menu-menu-f-business-en, ul#menu-menu-f-propos-en {gap: 5px;}
    ul#menu-menu-mentions {flex-direction: column;justify-content: center; align-items: center; gap: 10px;}
}


/* ICONE PLUS */
.icon-plus {width: 48px; height: 48px;transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);display: block;}
.icon-plus-circle {fill: #fff;transition: fill 0.3s ease;}
.icon-plus-cross { stroke: #000; transition: stroke 0.3s ease;}
/* Hover sur la carte parente */
.duallis-swiper-slide:hover .icon-plus { transform: rotate(90deg);}
.duallis-swiper-slide:hover .icon-plus-circle { fill: #000;}
.duallis-swiper-slide:hover .icon-plus-cross {stroke: #fff;}



/* ===== CORRECTIFS SWIPER SUR STRUCTURE DIVI ===== */

/* Le wrapper doit être horizontal, pas vertical */
.duallis-swiper-wrapper {flex-direction: row !important;align-items: stretch !important;flex-wrap: nowrap !important;width: 100% !important;margin: 0 !important;padding: 0 !important;transform: translate3d(0, 0, 0);}
/* Les slides ne doivent pas prendre toute la largeur */
.duallis-swiper-slide {flex-shrink: 0 !important;width: calc((100% - 3 * 24px) / 3.5) !important;max-width: none !important;min-width: 0 !important;height: 65vh !important;padding: 0 !important;margin: 0 !important;box-sizing: border-box !important;}
/* Le conteneur doit cacher le débordement */
.duallis-swiper {overflow: hidden !important;}

@media (max-width: 1024px) {
    .duallis-swiper-slide {width: calc((100% - 2 * 24px) / 2.5) !important;height: 55vh !important;}
}

@media (max-width: 768px) {
    .duallis-swiper-slide {width: calc((100% - 24px) / 1.2) !important;height: 50vh !important;}
}

/* Product */
.quantity {margin-top:40px;}
.et_pb_wc_add_to_cart .quantity input.qty {border:1px solid #707070!important; border-radius: 8px;background-color: #fff;color: #000;}


/* Page QSN */
.mixed-font span{font-style: italic;font-weight: 300;}

/* Page FAQ */
.menu-faq-tab:hover,
.menu-faq-tab.active{border-bottom:solid 1px #000;transition:all .3s;}
.et_pb_toggle_open .et_pb_toggle_title:before{display:none !important;}

/* pages mentions */
.important {background: #fff7e6;border-left: 4px solid #f0a500; padding: .8rem 1rem; margin: 1.5rem 0;font-weight: 600;}
.form-block {background: #f6f7f9;border: 1px solid #e2e2e2; border-radius: 6px;padding: 1.25rem 1.5rem;margin: 1.25rem 0;}
.identity { background: #ffff; border: 1px solid #e2e2e2; border-radius: 6px; padding: 1rem 1.5rem; margin: 1.25rem 0;}
.identity p { margin: .25rem 0; }
.updated { color: #666; margin-top: 0; margin-bottom: 1.5rem; }


/* FORMULAIRE
========================================== */
.form-contact{display:flex;justify-content: space-between;flex-wrap: wrap;width:100%;max-width: 550px;}
.form-contact .row-50{width:48%;margin-bottom:20px;}
.form-contact .row-100{width:100%;margin-bottom:20px;}
.form-contact select,
.form-contact textarea,
.form-contact input[type="email"],
.form-contact input[type="tel"],
.form-contact input[type="text"]{border-radius:25px;width:100%;border:solid 1px #1D3C4E;box-sizing: border-box;padding: 10px 20px;font-size: 16px;font-weight: 300;color:#000;}
.form-contact select option{font-weight: 300;color:#000;}
.form-contact select option:first-child{color:#4e4e4e;}
.form-contact .row-select{position: relative;overflow: hidden:}
.form-contact .row-select:before{position:absolute;right:1px;top:1px;height:41px;content:"";background:url(/wp-content/themes/accesud/assets/form-dropdwon.svg) center no-repeat, #fff;width:50px;z-index:50;pointer-events: none;border-radius:25px;}
.form-contact .wpcf7-not-valid-tip{font-size:12px;font-weight: 500;}
.form-contact .field-pj{width: 100%;border: solid 1px #1D3C4E;border-radius: 25px;padding: 10px 20px;font-size: 16px;cursor:pointer;margin-bottom:30px;display:none;}
.form-contact .field-pj.visible{display:flex;}
.form-contact .row-entreprise{display:none;}
.form-contact .row-entreprise.visible{display:block;}
.form-contact .field-pj:before{content:"";display:block;height:25px;width:25px;background:url(/wp-content/themes/accesud/assets/icon-attachment.svg) center no-repeat;background-size: contain;margin-right:10px;}
.form-contact .row-hidden{overflow: hidden;width: 0;height: 0;margin: 0;padding: 0;opacity: 0;}
.form-contact .row-send{display: flex;justify-content: center;width:100%;}
.form-contact .row-send p{width:157px;}
.form-contact .row-send input{border-radius: 30px;font-size: 16px;color:#fff;background:#000;border:none;padding:15px 40px;transition:all .3s;}
.form-contact .row-send input:disabled{opacity:.1;transition:all .3s;}
.form-contact .row-acceptance{margin-bottom: 50px;}
.form-contact .row-acceptance span{margin: 0;}
.form-contact .row-acceptance label{display: flex;align-items: flex-start;}
.form-contact .row-acceptance label input{border-radius: 0;height: 19px;width: 30px;border: solid 1px red;}
.form-contact .row-acceptance label span{font-size: 12px;line-height: 1.4em;padding-left: 5px;}

@media screen and (max-width:980px){  
  .form-contact{margin:0 auto;}
}
@media screen and (max-width:768px){
  .form-contact .row-50{width:100%}
}

/* WPML */
/* Pilule sur la langue courante, quelle que soit la langue */
#menu-menu-principal > li.wpml-ls-menu-item {
  border: 1px solid rgba(255, 255, 255, .3);
  border-radius: 20px;
  padding: 0 8px;
  display: flex;
}

/* Sécurité : jamais de pilule sur les items du sous-menu */
#menu-menu-principal .sub-menu li.wpml-ls-menu-item {
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  display: block !important;
}
span.wpml-ls-native {font-size: 11px;font-weight: 300;text-transform: uppercase;}
.wpml-ls-menu-item .wpml-ls-flag {border-radius: 4px;}

/* Brevo */
.sib-form {padding: 0!important;}
#sib-container {padding: 0!important;}
.sib-form-block {padding: 0 0!important;}
.sib-form .entry__field {border-radius: 30px!important;border: 1px solid #ffffff!important;background: #000!important;color: #fff!important;padding: 0 10px!important;}
.sib-form .entry__field input[type=text] {color: #fff!important;}
.sib-form .entry__field input[type=text]:focus {color: #fff!important;}
.sib-form .entry__field input::placeholder {color: #4e4e4e!important;}
#success-message {border-radius: 40px!important;}


/* --- 1. Laisser le sous-menu déborder du header Divi --- */
.et-l--header .et_pb_row,
.et-l--header .et_pb_column,
.et-l--header .et_pb_code_inner {
  overflow: visible !important;
}

/* --- 2. Item parent (langue courante) --- */
#menu-menu-principal > li.wpml-ls-menu-item {
  position: relative;
}

#menu-menu-principal > li.wpml-ls-menu-item > a {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

/* Chevron */
#menu-menu-principal > li.wpml-ls-menu-item > a::after {
  content: "";
  flex: 0 0 auto;
  width: 6px;
  height: 6px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transition: transform .25s ease;
}

#menu-menu-principal > li.wpml-ls-menu-item:hover > a::after,
#menu-menu-principal > li.wpml-ls-menu-item.is-open > a::after {
  transform: translateY(1px) rotate(-135deg);
}

/* --- 3. Le sous-menu --- */
#menu-menu-principal > li.wpml-ls-menu-item > .sub-menu {
  position: absolute;
  top: 100%;
  right: 0;              /* aligné à droite : c'est le dernier item */
  margin: 10px 0 0;
  padding: 8px 0;
  width: max-content;
  min-width: 100%;
  list-style: none;
  background: #1c1c1c;
  border-radius: 10px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .25);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity .22s ease, transform .22s ease, visibility .22s;
  z-index: 9999;
}

/* Pont invisible : évite la fermeture quand la souris traverse le vide */
#menu-menu-principal > li.wpml-ls-menu-item > .sub-menu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -14px;
  height: 14px;
}

/* États ouverts : survol, clavier, clic (mobile) */
#menu-menu-principal > li.wpml-ls-menu-item:hover > .sub-menu,
#menu-menu-principal > li.wpml-ls-menu-item:focus-within > .sub-menu,
#menu-menu-principal > li.wpml-ls-menu-item.is-open > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

#menu-menu-principal > li.wpml-ls-menu-item > .sub-menu li { margin: 0; }

#menu-menu-principal > li.wpml-ls-menu-item > .sub-menu a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  white-space: nowrap;
  color: #fff;
}

#menu-menu-principal > li.wpml-ls-menu-item > .sub-menu a:hover {
  background: rgba(255, 255, 255, .1);
}

/* --- 4. Mobile : accordéon, pas de survol --- */
@media (max-width: 980px) {
  #menu-menu-principal > li.wpml-ls-menu-item > .sub-menu {
    position: static;
    width: auto;
    margin: 6px 0 0;
    box-shadow: none;
    background: rgba(255, 255, 255, .06);
    transform: none;
    display: none;
  }
  #menu-menu-principal > li.wpml-ls-menu-item:hover > .sub-menu { display: none; }
  #menu-menu-principal > li.wpml-ls-menu-item.is-open > .sub-menu {
    display: block;
    opacity: 1;
    visibility: visible;
  }
}

/* Page Cookies */
article#post-1027 {
    padding: 160px 0 150px;
    display: flex;
    flex-direction: column;
    align-items: center;}