/* ============================================
   17/02 MODIFICATIONS
   ============================================ */

@media (max-width: 767px) {
  #agWidgetH.inline {
    left: 15%;
    position: relative;
  }
}

strong {
	font-weight:bold !important;
}
@media (max-width: 767px) {
  /* Mobile Menu Background & Text */
  .mm_menus_ul {
    background-color: #531b0e;
  }
  .mm_menus_ul .mm_menus_li > a,
  .mm_menus_ul .mm_menus_li > a .mm_menu_content_title,
  .mm_menus_ul .mm_menus_li .arrow {
    color: #ffffff !important;
  }
  /* Close/Back bar */
  .mm_menus_ul .close_menu,
  .mm_menus_ul .close_menu .mm_menus_back,
  .mm_menus_ul .close_menu .mm_menus_back_icon {
    color: #ffffff !important;
    background-color: #531b0e;
  }
  /* Icon bars (hamburger) */
  .mm_menus_ul .close_menu .icon-bar {
    background-color: #ffffff;
  }
  /* + / - toggle icons */
  .mm_menus_ul .mm_menus_li .arrow {
    color: #ffffff !important;
  }
  /* Borders between items */
  .mm_menus_ul .mm_menus_li {
    border-color: rgba(255, 255, 255, 0.15);
  }
  /* Hover/active states for main items */
  .mm_menus_ul .mm_menus_li:hover > a,
  .mm_menus_ul .mm_menus_li.active > a {
    color: #ffffff !important;
  }
  /* ===== SUBMENU: white background, brown text ===== */
  .mm_menus_ul .mm_columns_ul {
    background-color: #ffffff;
  }
  .mm_menus_ul .mm_columns_ul .h4,
  .mm_menus_ul .mm_columns_ul .h4 a,
  .mm_menus_ul .mm_columns_ul .ets_mm_block_content a,
  .mm_menus_ul .mm_columns_ul .ets_mm_categories a,
  .mm_menus_ul .mm_columns_ul .ets_mm_categories li {
    color: #531b0e !important;
  }
  /* Subtle border between submenu items */
  .mm_menus_ul .mm_columns_ul .ets_mm_categories li {
    border-color: rgba(83, 27, 14, 0.1);
  }
  /* Submenu links hover */
  .mm_menus_ul .mm_columns_ul .ets_mm_categories a:hover,
  .mm_menus_ul .mm_columns_ul .h4 a:hover {
    color: #7a2c15 !important;
  }
  /* Arrow & back icon styles */
  .transition_floating .close_menu *,
  .transition_full .close_menu *,
  .ybc-menu-vertical-button .icon-bar {
    color: #fff !important;
  }
  .transition_floating .close_menu {
    background-color: #531b0e !important;
  }
  .mm_menus_back_icon {
    border-color: #fff !important;
  }
  .mm_menus_ul .arrow::before {
    border-top: 1px solid #fff !important;
  }
  .mm_menus_ul .arrow::after {
    border-left: 1px solid #fff !important;
  }
}

/* ============================================
   17/02 END MODIFICATIONS
   ============================================ */

/* ============================================
   11/02 MODIFICATIONS
   ============================================ */

.elementor-58170101 .elementor-element.elementor-element-c0c35f9 a.elementor-button:not(#e) {
    color: #ffffff;
    background-color: #000000 !important;
}

.elementor-cart__header {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 20px;
    border-bottom: 1px solid #eee;
    gap: 15px;
}

.elementor-cart__title {
    flex: 1;
    margin: 0 !important;
    display: inline-block !important;
}

.elementor-cart__close-button {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    flex-shrink: 0;
    cursor: pointer;
    font-size: 28px;
    line-height: 1;
    padding: 5px;
    width: auto !important;
    transition: color 0.2s ease;
}

.elementor-cart__close-button:hover {
    color: #63b232;
}


.elementor-button.elementor-button--view-cart.elementor-size-md {
	background-color: white !important;
}
/* Exclusions - Ne pas mettre en marron */
.elementor-element-b1814d8 .elementor-text-editor,
.elementor-element-b1814d8 .elementor-text-editor p,
.elementor-element-b1814d8 .elementor-heading-title,
.elementor-element-b1814d8 h1,
.elementor-element-b1814d8 h2,
.elementor-element-b1814d8 h3,
.elementor-element-b1814d8 h4,
.elementor-element-b1814d8 p,
.elementor-element-b1814d8 a,
.elementor-element-7367a19a .elementor-heading-title,
.elementor-element-7367a19a .elementor-heading-title a {
  color: #ffffff !important;
}
/* EXCEPTION : Garder les icônes sociales en noir */
.elementor-element-b1814d8 .elementor-social-icon {
  color: #000000 !important;
}
/* Garder les liens en blanc aussi */
.elementor-element-b1814d8 a {
  color: #ffffff !important;
}


/* Exclure l'icône du panier */
.elementor-cart__toggle .elementor-button.elementor-size-xl {
  background-color: transparent !important;
  border-color: transparent !important;
}

.elementor-cart__toggle .elementor-button.elementor-size-xl:hover {
  background-color: transparent !important;
  border-color: transparent !important;
}

/* Exclure l'icône du panier */
.elementor-cart__toggle .elementor-button.elementor-size-md {
  background-color: transparent !important;
  border-color: transparent !important;
}

.elementor-cart__toggle .elementor-button.elementor-size-md:hover {
  background-color: transparent !important;
  border-color: transparent !important;
}

/* Exclure le bouton S'abonner de la newsletter */
.ce-subscribe-form .elementor-button,
button[name="submitNewsletter"] {
  background-color: #ffffff !important;
  border-color: #000000 !important;
}

.ce-subscribe-form .elementor-button:hover,
button[name="submitNewsletter"]:hover {
  background-color: #63b232 !important;
  border-color: #000000 !important;
}







.elementor-toggle-title,
.elementor-tab-title,
.elementor-tab-content,
.elementor-tab-content p,
.elementor-tab-content strong {
  color: #531b0e !important;
}
/* Texte des éditeurs Elementor 
.elementor-text-editor,
.elementor-text-editor p {
  color: #531b0e !important;
}
*/
/* Titres H1 */
h1.elementor-heading-title {
  color: #531b0e !important;
}

/* Titres H2 */
h2.elementor-heading-title {
  color: #531b0e !important;
}

/* Titres H4 
h4.elementor-heading-title {
  color: #531b0e !important;
}
*/
.btn-primary.add-to-cart, 
.btn.btn-primary,
.elementor-button {
  background-color: #531b0e !important;
  border-color: #531b0e !important;
  transition: background-color 0.3s ease;
}

.btn-primary.add-to-cart:hover,  
.btn.btn-primary:hover,
.elementor-button:hover {
  background-color: #63b232 !important;
  border-color: #63b232 !important;
}



/* EXCEPTION : Garder le texte de la section newsletter en blanc */
.elementor-element-4b4d36e .elementor-text-editor,
.elementor-element-4b4d36e .elementor-text-editor p {
  color: #ffffff !important;
}

section#content.page-content ul.product-flags.js-product-flags {
  position: relative !important;
}
.elementor-button--checkout {
	background-color: #63b232 !important;
}
.elementor-cart__container .elementor-cart__main {
  height: fit-content !important;
}

.ce-scrollbar-y--auto {
  overflow: visible !important;
    overflow-y: visible !important;

}

.elementor-cart__container {
  overflow: scroll !important;
}

.cart-promo-timeline {
    height: 220px;
}



/* ============================================
   MOBILE CART SIDEBAR - FIXED POSITIONING FIX
   ============================================ */

@media (max-width: 767px) {
    /* Container - Full screen overlay */
    .elementor-cart__container {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        height: 100% !important;
        background-color: rgba(0, 0, 0, 0.5) !important;
        z-index: 99999 !important;
        display: none !important;
        overflow: hidden !important;
    }
    
    /* Show when active */
    .elementor-cart__container.elementor-cart--shown,
    .elementor-cart__container.elementor-lightbox--active {
        display: flex !important;
        align-items: stretch !important;
        justify-content: flex-end !important;
    }
    
    /* Sidebar panel - Always fixed on right */
    .elementor-cart__container .elementor-cart__main {
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        max-width: 400px !important;
        height: 100vh !important;
        height: 100dvh !important; /* Dynamic viewport height for mobile */
        padding: 0 20px !important;
        background-color: #fff !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important; /* Smooth scrolling on iOS */
        transform: translateX(100%) !important;
        transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
        z-index: 100000 !important;
        box-shadow: -5px 0 25px rgba(0, 0, 0, 0.3) !important;
    }
    
    /* Slide in animation */
    .elementor-cart--shown .elementor-cart__main,
    .elementor-lightbox--active .elementor-cart__main {
        transform: translateX(0) !important;
    }
    
    /* Prevent body scroll when cart is open - CRITICAL */
    body.elementor-lightbox-prevent-close {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        overflow: hidden !important;
        width: 100% !important;
        height: 100vh !important;
        touch-action: none !important;
        -webkit-overflow-scrolling: auto !important;
    }
    
    /* Ensure scrollable area inside cart */
    .elementor-cart__main > * {
        flex-shrink: 0;
    }
    
    .elementor-cart__products {
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        flex-grow: 1 !important;
        max-height: 50vh !important;
    }
    
    /* Close button - Always visible */
    .elementor-cart__close-button {
        position: sticky !important;
        top: 20px !important;
        z-index: 10 !important;
        font-size: 28px !important;
        cursor: pointer !important;
        color: #333 !important;
        align-self: flex-end !important;
    }
    
    /* Title */
    .elementor-cart__title {
        position: sticky !important;
        top: 0 !important;
        background: #fff !important;
        z-index: 9 !important;
        padding: 20px 0 10px !important;
    }
    
    /* Summary section - Sticky at bottom */
    .elementor-cart__summary,
    .elementor-cart__footer-buttons {
        position: sticky !important;
        bottom: 0 !important;
        background: #fff !important;
        z-index: 8 !important;
        margin: 0 -20px !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
        box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1) !important;
    }
    
    /* Promo cards section */
    .elementor-promo-messages {
        margin: 0 -20px !important;
        padding: 15px 20px !important;
    }
    
    /* Recently viewed slider */
    .elementor-recently-viewed {
        margin: 0 -20px !important;
        padding: 20px !important;
    }
}

/* Small mobile devices */
@media (max-width: 375px) {
    .elementor-cart__container .elementor-cart__main {
        max-width: 100% !important;
        width: 100% !important;
    }
}

/* Landscape mode on mobile */
@media (max-height: 500px) and (orientation: landscape) {
    .elementor-cart__products {
        max-height: 30vh !important;
    }
    
    .elementor-cart__main {
        padding: 0 15px !important;
    }
}

/* iOS specific fixes */
@supports (-webkit-touch-callout: none) {
    .elementor-cart__container .elementor-cart__main {
        /* iOS Safari viewport height fix */
        height: -webkit-fill-available !important;
    }
    
    body.elementor-lightbox-prevent-close {
        /* Prevent iOS bounce scroll */
        position: fixed !important;
        overflow: hidden !important;
    }
}


/* ============================================
   END 11/02
   ============================================ */


li.mm_menus_li > a:nth-child(1) > span:nth-child(1) {
	font-weight: 600 !important;
}

.product-miniature .product-title a {
	color:black !important;
}

/* === Import des polices Google Fonts === */
@import url('https://fonts.googleapis.com/css2?family=Big+Shoulders+Display:wght@300;400;500;700&family=Poppins:wght@300&display=swap');

/* === Typographie personnalisée === */

/* H1 -> Big Shoulders 700 */
h1, 
.h1, 
h1.elementor-heading-title,
.elementor-heading-title.ce-display-large,
.elementor-heading-title.ce-display-medium,
.elementor-heading-title.ce-display-small,
.page-heading,
.product-title h1 {
    font-family: 'Big Shoulders Display', sans-serif !important;
    font-weight: 700 !important;
}

/* H2 -> Big Shoulders 500 */
h2, 
.h2,
h2.elementor-heading-title,
.elementor-widget-heading h2 {
    font-family: 'Big Shoulders Display', sans-serif !important;
    font-weight: 500 !important;
}

/* H3 -> Big Shoulders 400 */
h3, 
.h3,
h3.elementor-heading-title,
.elementor-widget-heading h3,
.block-category-links-title,
.products-section-title,
.h6.facet-title {
    font-family: 'Big Shoulders Display', sans-serif !important;
    font-weight: 400 !important;
}

/* H4, H5, H6 -> Big Shoulders 300 */
h4, 
.h4, 
h5, 
.h5, 
h6, 
.h6,
h4.elementor-heading-title,
h5.elementor-heading-title,
h6.elementor-heading-title,
.elementor-widget-heading h4,
.elementor-widget-heading h5,
.elementor-widget-heading h6 {
    font-family: 'Big Shoulders Display', sans-serif !important;
    font-weight: 300 !important;
}

/* Texte et liens -> Poppins Extra Light 300 */
body,
p, 
a, 
span, 
li, 
div:not(.elementor-heading-title),
.elementor-text-editor,
.elementor-text-editor p,
.product-description,
.product-description p,
.category-description,
.category-description p,
.block-category-inner p,
.btn,
button,
input,
textarea,
select,
label,
.product-price,
.product-title,
.facet-label,
.custom-checkbox,
.magnitude {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 300 !important;
}

/* Navigation et menus */
.menu a,
.top-menu a,
.main-menu a,
#_desktop_top_menu a,
#_mobile_top_menu a,
.category a,
.subcategory a {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 300 !important;
}

/* Liens spécifiques */
a.category-custom-link,
.category-links-list a,
.product-title a,
.all-product-link,
.product-miniature a,
.search-link {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 300 !important;
}

/* Boutons et éléments interactifs */
.btn,
.btn-primary,
.btn-secondary,
.add-to-cart,
button[type="submit"],
input[type="submit"] {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 300 !important;
}

/* Filtres et facettes */
.facet-label a,
.faceted-search,
#search_filters a,
#search_filters label {
    font-family: 'Poppins', sans-serif !important;
    font-weight: 300 !important;
}



@media (min-width: 768px) {
  /* Default menu item color */
  #header .layout_layout4:not(.ybc_vertical_menu) .mm_menus_li > a,
  .layout_layout4 .ybc-menu-vertical-button,
  .layout_layout4 .mm_extra_item * {
    color: #531b0e !important;
  }

  /* Hover/active background */
  .layout_layout4:not(.ybc_vertical_menu):not(.click_open_submenu) .mm_menus_li:hover > a,
  .layout_layout4:not(.ybc_vertical_menu).click_open_submenu .mm_menus_li.open_li > a,
  .layout_layout4:not(.ybc_vertical_menu) .mm_menus_li.active > a,
  .layout_layout4:not(.ybc_vertical_menu) .mm_menus_li:hover > span,
  .layout_layout4:not(.ybc_vertical_menu) .mm_menus_li.active > span,
  #header .layout_layout4:not(.ybc_vertical_menu):not(.click_open_submenu) .mm_menus_li:hover > a,
  #header .layout_layout4:not(.ybc_vertical_menu).click_open_submenu .mm_menus_li.open_li > a,
  #header .layout_layout4:not(.ybc_vertical_menu) .mm_menus_li.active > a,
  .ets_mm_megamenu.layout_layout4.ybc_vertical_menu:hover,
  #header .layout_layout4 .mm_menus_li:hover > span,
  #header .layout_layout4 .mm_menus_li.active > span {
    background-color: #531b0e !important;
  }

  /* Hover/active text color */
  .layout_layout4:not(.click_open_submenu) .mm_menus_li:hover > a,
  .layout_layout4.click_open_submenu .mm_menus_li.open_li > a,
  .layout_layout4 .mm_menus_li.active > a,
  #header .layout_layout4:not(.click_open_submenu) .mm_menus_li:hover > a,
  #header .layout_layout4.click_open_submenu .mm_menus_li.open_li > a,
  .layout_layout4:hover .ybc-menu-vertical-button,
  #header .layout_layout4 .mm_menus_li.active > a {
    color: #fff !important;
  }

  .layout_layout4 .ets_mm_megamenu_content {
    border-bottom-color: #531b0e !important;
  }

  .layout_layout4 .mm_columns_ul .h1,
  .layout_layout4 .mm_columns_ul .h2,
  .layout_layout4 .mm_columns_ul .h3,
  .layout_layout4 .mm_columns_ul .h4,
  .layout_layout4 .mm_columns_ul .h5,
  .layout_layout4 .mm_columns_ul .h6,
  .layout_layout4 .mm_columns_ul .ets_mm_block > .h1 a,
  .layout_layout4 .mm_columns_ul .ets_mm_block > .h2 a,
  .layout_layout4 .mm_columns_ul .ets_mm_block > .h3 a,
  .layout_layout4 .mm_columns_ul .ets_mm_block > .h4 a,
  .layout_layout4 .mm_columns_ul .ets_mm_block > .h5 a,
  .layout_layout4 .mm_columns_ul .ets_mm_block > .h6 a,
  #header .layout_layout4 .mm_columns_ul .ets_mm_block > .h1 a,
  #header .layout_layout4 .mm_columns_ul .ets_mm_block > .h2 a,
  #header .layout_layout4 .mm_columns_ul .ets_mm_block > .h3 a,
  #header .layout_layout4 .mm_columns_ul .ets_mm_block > .h4 a,
  #header .layout_layout4 .mm_columns_ul .ets_mm_block > .h5 a,
  #header .layout_layout4 .mm_columns_ul .ets_mm_block > .h6 a {
    color: #531b0e !important;
  }
}

.mm_menu_content_title {
  font-family: 'Big Shoulders Display',sans-serif !important;
  font-weight: 700 !important;
}
