/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.4.1760514569
Updated: 2025-10-15 09:49:29

*/
/* ====== PAGE ACCUEIL ====== */
.home-nav-product .elementor-widget-n-tabs .e-n-tab-title {
    position: relative;   
    transition: .4s;
}
.home-nav-product .elementor-widget-n-tabs .e-n-tab-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0px; /* distance sous le texte */
    width: 0%;
    height: 2px;
    background: red;
    transition: width 0.35s cubic-bezier(.25,.46,.45,.94);
}
.home-nav-product .elementor-widget-n-tabs .e-n-tab-title[aria-selected="false"]:hover{
    font-weight: bold!important;
}
.home-nav-product .elementor-widget-n-tabs .e-n-tab-title[aria-selected="true"]{
    font-weight: bold!important;
}
.home-nav-product .elementor-widget-n-tabs .e-n-tab-title[aria-selected="false"]:hover::after {
    width: 100%;
}
/* Soulignement fixe pour l'onglet actif */
.home-nav-product .elementor-widget-n-tabs .e-n-tab-title[aria-selected="true"]::after {
    width: 100%;
}
#first-nav-product{
    color:red!important;
}
/* ====== MEGA MENU - Positionnement et comportement ====== */

/* Conteneur du mega menu - position absolue par rapport au header */
.nav-fromages {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 999999;
    background: #fff;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
    max-height: 80vh;
    overflow-y: auto;
    opacity: 1;
    visibility: visible;
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
    transform: translateY(0);
}

/* Mega menu fermé via JS */
.nav-fromages.mega-menu-closed {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-10px);
}

/* S'assurer que le parent (item de menu) est en position relative */
.elementor-location-header .elementor-nav-menu > li {
    position: relative;
}

/* Quand le header est sticky, le mega menu reste attaché */
.elementor-sticky--active .nav-fromages {
    position: fixed;
    top: auto;
}

/* Conteneur principal pour nav-fromages uniquement */
.nav-fromages .e-n-tabs.e-activated {
    display: flex;
    flex-direction: row; /* onglets à gauche, contenu à droite */
}

/* Onglets (liste verticale) */
.nav-fromages .e-n-tabs-heading {
    display: flex;
    flex-direction: column;
    width: 200px; /* ajustable selon ton design */
    border-right: 1px solid #ddd;
    margin: 0;
    padding: 0;
}

/* Boutons des onglets */
.nav-fromages .e-n-tab-title {
    display: block;
    text-align: left;
    margin-bottom: 5px;
    padding: 10px;
    cursor: pointer;
    border: none;
    background: none;
}

/* Onglet actif */
.nav-fromages .e-n-tab-title[aria-selected="true"] {
    background-color: #f0f0f0;
    font-weight: bold;
}
.nav-fromages .e-n-tab-title{
    padding-top:5px!important;
    padding: 0!important;
}
/* Contenu des onglets */
.nav-fromages .e-n-tabs-content {
    flex: 1;
    padding: 20px;
    min-width: 0; /* important pour éviter le dépassement */
}
.nav-fromages .image-nav-product{
    width: 40%!important;
}
.nav-fromages .price,
.nav-fromages .add_to_cart_button{
    display: none!important;
}
/* Optionnel : responsive */
@media (max-width: 768px) {
    .nav-fromages .e-n-tabs.e-activated {
        flex-direction: column; /* rebasculer en horizontal sur mobile */
    }

    .nav-fromages .e-n-tabs-heading {
        flex-direction: row;
        width: 100%;
        border-right: none;
        border-bottom: 1px solid #ddd;
    }

    .nav-fromages .e-n-tab-title {
        flex: 1;
        text-align: center;
    }
    /* Barre supérieure simulée compatible iPhone */
.header-safe-area {
    background: #142451;
    padding-top: env(safe-area-inset-top);
    height: calc(60px + env(safe-area-inset-top)); /* Ajuste 60px selon la hauteur souhaitée */
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: space-between; /* si tu as logo + bouton */
    color: #fff; /* texte en blanc */
}

/* Pour éviter que ton contenu ne passe dessous */
body {
    margin: 0;
    padding-top: calc(60px + env(safe-area-inset-top));
}
}

html, body {
  overflow-x: hidden; /* empêche tout défilement horizontal */
}
/* Fixer le z-index du sous-menu Vente groupée */
.elementor-element-e7e4a40 .elementor-nav-menu--dropdown {
    z-index: 999999 !important;
}

/* OU plus généralement pour tous les sous-menus Elementor du header */
.elementor-location-header .elementor-nav-menu--dropdown {
    z-index: 999999 !important;
}

/* S'assurer que le conteneur parent a aussi un z-index élevé */
.elementor-element-28f1bb7 {
    z-index: 100000 !important;
    position: relative;
}
.entry-title{
    display: none!important;
}
.fil-ariane {
    font-family: 'hoss-sharp';
    font-size: 16px;
    color: #142451;
    margin-bottom: 20px;
}
.accueil{
    text-decoration: underline;
}
.fil-ariane a {
    color: #142451;
    text-decoration: none;
}
.fil-ariane a:hover {
    text-decoration: none;
}
.fil-ariane .separateur {
    margin: 0 8px;
    color: #142451;
}
.fil-ariane .actuel {
    color: #142451;
}
.recette-template-default a{
    color:#142451!important;
}
a.elementor-sub-item.elementor-item-active {
    background-color: #E5D4C2!important;
}
@keyframes bounce-loop {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-15px);
    }
}

.bounce-icon .elementor-icon:hover {
    animation: bounce-loop 1.5s ease-in-out infinite;
}
footer .elementor-nav-menu .elementor-item:hover{
    font-weight:600!important;
    transition:0s!important;
}
h1.product_title {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    font-size: 32px !important;
}
.elementor-nav-menu--dropdown,
.sub-menu {
    z-index: 99999 !important;
    position: absolute !important;
}

nav.elementor-nav-menu--main {
    z-index: 99999 !important;
    position: relative !important;
}
.elementor-element-2547c3f svg path{
    fill:white!important
}

/* ====== PAGE 404 ====== */
body.error404 .fdlm-mega-menu {
    display: none !important;
}
/* ====== A PROPOS ====== */
.hover-contact .name-hover,
.hover-contact .text-hover,
.hover-contact .bulle,
.hover-contact .bulle2,
.hover-contact .bulle3,
.hover-contact .bulle4{
    display:none;
}
.hover-contact:hover .name-hover,
.hover-contact:hover .text-hover,
.hover-contact:hover .bulle,
.hover-contact:hover .bulle2,
.hover-contact:hover .bulle3,
.hover-contact:hover .bulle4{
    display:block;
}

.woocommerce-ordering{
    display:none!important;
}
.fdlm-bestsellers-slider .yith-wcwl-add-to-wishlist-button.yith-wcwl-add-to-wishlist-button--single.yith-wcwl-add-to-wishlist-button--anchor{
    padding-left:8px!important;
}
.form-home .elementor-form-fields-wrapper {
    display: flex;
    flex-wrap: wrap;
}

.form-home .elementor-field-group-email {
    flex: 1;
}
.form-home .e-form__buttons {
    flex: 0 0 auto;
    width: auto !important;
}

.form-home .elementor-field-group-field_b308332 {
    flex-basis: 100%;
    order: 3;
}
.form-home .elementor-field-subgroup label{
    color:#F2E2D0!important;
    font-size:15px;
}