/*
Theme Name: Brioche Gourmet
Theme URI: https://lafabrique.orange-business.com/
Template: neve
Author: La Fabrique
Author URI: https://lafabrique.orange-business.com/
Description: Neve is a next-generation, ultra-fast WordPress theme designed for top performance, SEO, and Core Web Vitals. Its lightweight codebase and small size ensure minimal overhead and lightning-fast load times. Fully compatible with the block editor, popular page builders (Elementor, Bricks, Oxygen etc), and WooCommerce, itâ€™s perfect for blogs, small businesses, agencies, portfolios, and online stores. With responsive design, multilingual translations, and easy customization options, Neve empowers you to create a future-proof, high-ranking online presence. Discover everything Neve has to offer and explore our powerful premium version at https://themeisle.com/themes/neve/.
Tags: blog,custom-logo,e-commerce,rtl-language-support,grid-layout,one-column,two-columns,custom-background,custom-colors,custom-header,custom-menu,featured-image-header,featured-images,flexible-header,full-width-template,sticky-post,theme-options,threaded-comments,translation-ready,accessibility-ready,wide-blocks,block-styles,footer-widgets,portfolio,left-sidebar,right-sidebar
Version: 1.1.0.1755693165
Updated: 2025-08-20 14:32:45

*/

main#content {
	position: relative;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {
    text-decoration: none;
    color: var(--nv-text-color);
}

/* ------ FONT ------- */
@font-face {
    font-family: 'coconpro';
    src: url('./fonts/coconpro/CoconPro-Light.eot');
    src: url('./fonts/coconpro/CoconPro-Light.eot?#iefix') format('embedded-opentype'),
        url('./fonts/coconpro/CoconPro-Light.woff2') format('woff2'),
        url('./fonts/coconpro/CoconPro-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'coconpro';
    src: url('./fonts/coconpro/CoconPro-Regular.eot');
    src: url('./fonts/coconpro/CoconPro-Regular.eot?#iefix') format('embedded-opentype'),
        url('./fonts/coconpro/CoconPro-Regular.woff2') format('woff2'),
        url('./fonts/coconpro/CoconPro-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'dm sans';
    src: url('./fonts/dmsans/DMSans-Regular.eot');
    src: url('./fonts/dmsans/DMSans-Regular.eot?#iefix') format('embedded-opentype'),
        url('./fonts/dmsans/DMSans-Regular.woff2') format('woff2'),
        url('./fonts/dmsans/DMSans-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'dm sans';
    src: url('./fonts/dmsans/DMSans-Medium.eot');
    src: url('./fonts/dmsans/DMSans-Medium.eot?#iefix') format('embedded-opentype'),
        url('./fonts/dmsans/DMSans-Medium.woff2') format('woff2'),
        url('./fonts/dmsans/DMSans-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'dm sans';
    src: url('./fonts/dmsans/DMSans-Bold.eot');
    src: url('./fonts/dmsans/DMSans-Bold.eot?#iefix') format('embedded-opentype'),
        url('./fonts/dmsans/DMSans-Bold.woff2') format('woff2'),
        url('./fonts/dmsans/DMSans-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}


/* ------ HEADER ------ */
.header-main {
	height: 100px !important;
}
.sticky-header-placeholder {
	height: 100px !important;
}
#header-grid a.button-primary {
	background-color: #FAEFC3;
	color: #162E4D;
	font-family: Cocoon;
	font-weight: 500;
	border-radius: 50px;
	padding: 5px 15px;
	word-break: keep-all;
}
p:has(#btn-contact) {
	margin: 0;
}
.hfg-slot.left {
	position: relative;
	bottom: -35px;
}
.header-main-inner {
	height: 100px;
}
.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle::after {
	border: none;
}
.builder-item--primary-menu_3 ul.sub-menu {
	padding: 5px;
	background-color: #fff;
	border-radius: 17px;
	-webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.36); 
	box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.36);
	width: 200px;
}
.wpml-ls-legacy-dropdown .wpml-ls-sub-menu .wpml-ls-item {
	margin-bottom: 8px;
}
.wpml-ls-legacy-dropdown a {
	border: none;
}
.wpml-ls-legacy-dropdown .wpml-ls-current-language:hover > a {
	background-color: #ffffff;
}
.nv--lang-switcher li:not(:first-child) {
	margin-left: 0;
}
.nv--lang-switcher li {
	padding: 5px;
}
.wpml-ls-legacy-dropdown .wpml-ls-sub-menu {
	border: none;
}
.builder-item--primary-menu_3 .nav-ul li .caret img {
	width: 17px;
	height: 10px;
	max-width: 17px;
	margin-right: 10px;
}

.hfg_header.site-header {
  box-shadow: 0 -1px 8px rgba(0, 0, 0, 0.5);
}

.btn-header {
  display: inline-block;
  padding: 8px 16px;
  border-radius: 99px;
  background: var(--nv-c-2);
  color: var(--nv-text-color) !important;
  font-weight: 400;
  text-decoration: none;
  text-transform: uppercase;
  font-family: 'Cocoon';
  font-size: 16px;
}

/* Vert header & Footer sur les élément Vegan */
body.is-vegan .header .nav-ul li a {
  color: var(--custom-1); 
}

body.is-vegan .footer-main {
  --bgcolor: var(--custom-1); 
}

body.is-vegan .btn-header {
  background: var(--custom-2); 
  color: var(--custom-1); 
}

/*-----MENU MOBILE-----*/
.header-menu-sidebar .nav-ul li:not([class*="block"]):not(.menu-item-has-children) > .wrap > a {
  padding-right: 0 !important;
}

/* === Lang switcher centré dans le menu mobile === */
@media (max-width: 992px) {

  /* Conteneur de l'item WPML (ligne du pays courant) */
  #nv-primary-navigation-sidebar.menu-mobile 
  .wpml-ls-menu-item > .wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: .5rem;      /* espace caret ? libellé */
    width: 100%;
    text-align: center;
  }

  /* Supprime les décalages par défaut */
  #nv-primary-navigation-sidebar.menu-mobile 
  .wpml-ls-menu-item { padding-left: 0; }

  #nv-primary-navigation-sidebar.menu-mobile 
  .wpml-ls-menu-item > .wrap > a,
  /* Neutralise les styles du thème qui la collent à gauche */
  #nv-primary-navigation-sidebar.menu-mobile 
  .wpml-ls-menu-item > .wrap > .navbar-toggle {
    position: static !important;  /* au lieu de absolute */
    float: none !important;
    margin: 0 !important;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    width: auto; height: auto;
  }

  /* Drapeau + libellé bien alignés */
  #nv-primary-navigation-sidebar.menu-mobile 
  .wpml-ls-menu-item .menu-item-title-wrap {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
  }

  /* Sous-menu (liste des langues) centré aussi */
  #nv-primary-navigation-sidebar.menu-mobile 
  .wpml-ls-menu-item > .sub-menu {
    text-align: center;
  }
  #nv-primary-navigation-sidebar.menu-mobile 
  .wpml-ls-menu-item > .sub-menu .wrap a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
  }
  
  #nv-primary-navigation-sidebar.menu-mobile 
.wpml-ls-menu-item { padding-left: 0 !important; }

	.builder-item--primary-menu_3 ul.sub-menu {
	width: 100%;}
  

}



/* ===== Logo shrink on scroll – desktop only ===== */
@media (min-width: 992px) {
  /* Conteneur header (Neve) */
  .hfg_header {
    transition: padding 200ms ease, background-color 200ms ease, box-shadow 200ms ease;
  }
  
  .hfg_header .hfg-slot.left {
    transition: bottom 220ms ease;
  }

  /* Taille "grande" au repos */
  .hfg_header .site-logo img {
    height: auto !important;
    width: auto;
    max-height: 120px;
    transition: max-height 220ms ease, transform 220ms ease, opacity 220ms ease;
    transform-origin: left center;
  }

  /* Inline SVG (logo vegan) – taille au repos */
  .site-logo .svg-inline svg {
    width: var(--maxwidth);
    height: auto;
    display: block;
    max-height: 120px; /* aligne avec le logo image */
    transition: max-height 220ms ease, transform 220ms ease, opacity 220ms ease;
    transform-origin: left center;
  }
  
  /* Si un second composant logo sticky remplaçait l'image, forcer la même source */
  .site-logo img.neve-site-logo[data-variant="logo"],
  .site-logo img.neve-site-logo[data-variant="logo_sticky"] {
    content: normal;
  }

  /* Optionnel : un peu plus d’air vertical quand le logo est grand */
  .hfg_header .header-main-inner {
    transition: padding 200ms ease;
    padding-top: 14px;
    padding-bottom: 14px;
  }
  
  /* état "normal" */
  .hfg_header:not(.is-stuck) .hfg-slot.left:not(.shrink-reset) {
    bottom: -35px;
    position: relative;
  }

  /* État "réduit" (scroll ou sticky) */
  body.header--shrink .hfg_header .site-logo img,
  .hfg_header.is-stuck .site-logo img,
  body.header--shrink .hfg_header .site-logo .svg-inline svg,
  .hfg_header.is-stuck .site-logo .svg-inline svg {
    max-height: 74px; /* taille réduite */
  }
  
  body.header--shrink .hfg_header .hfg-slot.left,
  .hfg_header.is-stuck .hfg-slot.left {
    bottom: 0 !important;
    position: relative;
  }

  body.header--shrink .hfg_header .header-main-inner,
  .hfg_header.is-stuck .header-main-inner {
    padding-top: 6px;
    padding-bottom: 6px;
  }

  /* Option : petit fond + ombre quand sticky */
  body.header--shrink .hfg_header,
  .hfg_header.is-stuck {
    background-color: rgba(255,255,255,0.98);
    box-shadow: 0 4px 14px rgba(0,0,0,0.06);
  }
}

/* Respecte la préférence utilisateur de réduction d’animations */
@media (prefers-reduced-motion: reduce) {
  .hfg_header,
  .hfg_header .site-logo img,
  .hfg_header .site-logo .svg-inline svg,
  .hfg_header .header-main-inner {
    transition: none !important;
  }
}

/* ===== Mobile: cap du logo à 120px ===== */
@media (max-width: 991.98px) {
  /* On réduit la variable utilisée par le logo (img + svg inline) */
  .hfg_header { --maxwidth: 120px; }

  /* Ceinture et bretelles au cas où un style externe force la taille */
  .hfg_header .site-logo img,
  .hfg_header .site-logo .svg-inline,
  .hfg_header .site-logo .svg-inline svg {
    max-width: 120px;
    width: 120px;      /* tu peux mettre juste max-width si tu préfères */
    height: auto;
  }
}

/*-------BUTTON------*/
.wp-block-button__link {
  font-family: 'Cocoon';
}


/* ------ FOOTER ------ */
.wp-block-button {
    font-family: 'Cocoon', sans-serif;
}
.picto-title h2::after {
    content: '';
    width: 60px;
    height: 4px;
    background-color: var(--nv-secondary-accent);
    display: block;
    margin: 11px auto 0;
}
.site-footer .builder-item {
    padding: 0;
}
#cb-row--footer-desktop-top {
	position: absolute;
	top: -174px;
}
.topFooter {
    display: flex;
    align-items: flex-end;
    position: relative;
    z-index: 1;
    pointer-events: none;
    bottom: 22px;
}
.topFooter__bg-1 {
    flex: 1;
    height: 174px;
	width: 45vw;
}
.topFooter__bg-2 {
    flex: 1;
    height: 174px;
	width: 45vw;
}
@media (min-width: 768px) {
	.topFooter {
		bottom: 22px;
	}
}
@media (min-width: 992px) {
	.topFooter {
		bottom: 22px;
	}
	.topFooter__bg-2 {
		flex: 0 0 calc((100% - 960px + 25%)/2);
	}
}
@media (min-width: 1200px) {
	.topFooter {
		bottom: 22px;
	}
	.topFooter__bg-2 {
		flex: 0 0 calc((100% - 1052px + 25%)/2);
	}
}
@media (min-width: 1367px) {
	.topFooter {
		bottom: 22px;
	}
}
@media (max-width: 768px) {
	ul#footer-menu {
		height: 150px;
		flex-direction: column;
		margin-left: 20px;
	}
}


/* ------ RECIPE ------ */
@media (max-width:768px){
	article.recipe .wp-block-group__inner-container>.wp-block-themeisle-blocks-advanced-columns {
		margin-left: calc(50% - 50vw + 20px);
	  margin-right: calc(50% - 50vw + 20px);
	}
}
h1.title-recipe {
	font-size: 40px;
	font-weight: 400;
	padding-left: 75px !important;
}

h1.title-recipe.vegan::before {
    background-image: url("/wp-content/themes/brioche-gourmet/icons/vegan.svg");
	mask-image: none;
	background-color: transparent;
	background-size: 100%;
	background-repeat: no-repeat;
	width: 70px;
	height: 70px;
	top: -10px;
}

.recipe-info p{ 	font-family: Cocoon; }

@media (max-width:768px){
	h1.title-recipe::before {
		top: 10px !important;
	}
	article.recipe .wp-block-group__inner-container>.wp-block-themeisle-blocks-advanced-columns .innerblocks-wrap>.wp-block-themeisle-blocks-advanced-column .wp-block-themeisle-blocks-advanced-columns:nth-child(2)>.innerblocks-wrap {
		flex-direction: column-reverse;
	}
	article.recipe .wp-block-group__inner-container>.wp-block-themeisle-blocks-advanced-columns {
		background-image: none;
	}
	.wp-block-themeisle-blocks-advanced-column:has(>.cook-indications) {
		align-self: start !important;
	}
	.card-picture {
		margin-right: 58px;
		margin-bottom: 60px; 
	}
	.top-recipe {
		background: url(http://preprod.briochegourmet.com/wp-content/uploads/sites/3/2025/08/illustration-paris-4cf8a5.svg) no-repeat scroll 100% 100%/ 400px !important;
	}
}

.cook-indications {
	width: fit-content;
	gap: 15px !important;
}
.cook-indications .wp-block-column {
	flex-basis: content !important;
}
.cook-indications .servings,.cook-indications .cook-time, .cook-indications .prep-time {
	font-family: "Cocoon";
	padding-left: 30px !important;
	white-space: nowrap;
	margin-bottom: 0 !important;
}
.cook-indications .servings::before {
	position: absolute;
	content: "";
	background-color: var(--nv-secondary-accent);
    mask-image: url("/wp-content/themes/brioche-gourmet/icons/people.svg");
	mask-repeat: no-repeat;
	width: 30px;
	height: 24px;
	left: 0;
	top: 5px; 
}
.cook-indications .cook-time::before {
	position: absolute;
	content: "";
	background-color: var(--nv-secondary-accent);
    mask-image: url("/wp-content/themes/brioche-gourmet/icons/time2.svg");
	mask-repeat: no-repeat;
	width: 30px;
	height: 24px;
	left: 4px;
	top: 5px; 
}
.cook-indications .prep-time::before {
	position: absolute;
	content: "";
	background-color: var(--nv-secondary-accent);
    mask-image: url("/wp-content/themes/brioche-gourmet/icons/chef.svg");
	mask-repeat: no-repeat;	
	width: 30px;
	height: 24px;
	left: 5px;
	top: 5px; 
}
.card-picture {
	box-shadow: 12px 32px 40px rgba(0, 0, 0, .22);
}
.card-picture h3 {
	padding-top: 30px;
	align-self: center; !important;
	text-align: center !important;
}
.card-picture figure {
	margin-bottom: 0 !important;
}
.card-picture p {
	font-family: "Cocoon";
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	word-break: break-word;
}
.button-print-recipe {
	margin: 16px 0 42px 0;
}
.button-print-recipe a.wp-block-button__link {
	padding: 7px 10px 7px 23px;
	font-size: 14px;
}
.button-print-recipe a.wp-block-button__link::after {
	position: relative;
	display: inline-block;
	content: "";
	background-color: #ffffff;
    mask-image: url("/wp-content/themes/brioche-gourmet/icons/print.svg");
	mask-repeat: no-repeat;	
	width: 30px;
	height: 20px;
	transform: translate(10px, 7px);
}
/*.ingredient-list {
	background-color: #ffffff;
	padding: 23px 25px 28px 25px;
	box-shadow: 4px 4px 12px rgba(0, 0, 0, .27);
	border-radius: 6px;
}*/
.ingredient-list ul li {
	list-style: none;
	padding: 0 0 0 16px;
	position: relative;
	color: #061742;
	font-size: 16px;
	font-family: "Cocoon";
	font-weight:300;
	margin-bottom: 5px;
	line-height: 120%;
}
.ingredient-list ul li::before {
	content: '';
	width: 8px;
	height: 8px;
	background-color: #0b1742;
	border-radius: 50%;
	position: absolute;
	top: 7px;
	left: -1px;
}
/*.preparation {
	padding: 74px 90px 84px 90px !important;
	margin-top: 42px;
	background-color: rgba(196, 158, 54, 0.6) !important;
	padding: 70px 35px 35px 35px;
	box-shadow: 4px 4px 12px rgba(0, 0, 0, .27);
}*/
@media (max-width:768px){
	.preparation {
		padding: 34px 40px 44px 40px !important;
	}
}
h2.preparation-title::after {
	content: '';
	width: 60px;
	height: 3px;
	background: #fff;
	display: block;
	margin: 15px auto 0 auto;
}
.separator-recipe {
	border: none;
	margin: 22px auto 30px auto;
	width: 16px;
	height: 4px;
	background-color: #fff;
}
h2.try-recipe-title {
	font-weight: 300;
}
h2.try-recipe-title::after {
  content: '';
  width: 60px;
  height: 4px;
  background-color: #C39D35;
  display: block;
  margin: 11px auto 0 auto;
}

/* ------ OUR STORY ------ */
.our-story-list p {
	line-height: 1.1;
	font-family: "Cocoon";
}

.our-story-ble {
	--background: url(/wp-content/uploads/sites/3/2025/08/illustation-ble.png) no-repeat scroll 110% 0%/auto;
}

/*
@media (max-width: 690px) {
	.our-story-ble {
		top: -700px;
		--background: url(/wp-content/uploads/sites/3/2025/08/illustation-ble.png) no-repeat scroll -50% 60%/ 500px auto;
	}
}

@media (min-width: 691px) and (max-width: 1024px) {
	.our-story-ble {
		top: -500px;
		--background: url(/wp-content/uploads/sites/3/2025/08/illustation-ble.png) no-repeat scroll 1500% 60%/ 800px auto;
	}
}*/

/* ------ SIMPLE PRODUCT ------ */
.product-description {
	font-family: "Cocoon";
}

.product-img-2 {
	transform: translateX(-50%);
}

.heart-frise {
	margin-bottom: 0 !important;
}

.product-type-original,
[class^="product-type-original-"],
[class*=" product-type-original-"],
.product-type-plant-based,
[class^="product-type-plant-based-"],
[class*="product-type-plant-based-"] {
	margin-bottom: 0 !important;
}

.product-type-original > div:first-child,
[class^="product-type-original-"] > div:first-child,
[class*="product-type-original-"] > div:first-child,
.product-type-plant-based > div:first-child,
[class^="product-type-plant-based-"] > div:first-child,
[class*="product-type-plant-based-"] > div:first-child  {
  padding-bottom: 0;
}

/* ------ RELATED PRODUCT ------ */
		
/* Wrapper */
.bg-rel-simple{margin:2rem 0; /* tu peux régler le ratio ici : */ --bg-rel-aspect: 3/4;}
.bg-rel-title{margin:0 0 1rem 0;font-size:clamp(1.1rem,2vw,1.5rem)}
.bg-rel-grid{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center}
.bg-rel-card{width:min(250px,100%);text-align:center}
.bg-rel-link{display:flex;flex-direction:column;gap:.5rem;text-decoration:none;color:inherit}

/* Figure : même hauteur pour toutes les cartes + centrage parfait */
.bg-rel-figure{
  position:relative;
  display:grid;               /* superpose les 2 images */
  place-items:center;         /* centre parfaitement */
  aspect-ratio: 1/1;
  overflow:hidden;
  margin-bottom: 30px;
}

/* Les deux couches image occupent exactement la même zone */
.bg-rel-img{grid-area:1/1;display:flex;align-items:center;justify-content:center}

/* Les <img> s’adaptent sans déformer */
.bg-rel-img img{
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
  transform-origin:50% 50%;
}

/* Etat par défaut (avec hover image dispo) */
.bg-rel-main{opacity:1;transform:scale(1);transition:transform .35s ease, opacity .35s ease}
.bg-rel-hover{opacity:0;transform:scale(1.05);transition:transform .35s ease, opacity .35s ease}

/* Comportement quand il y a une image de hover */
.bg-rel-card.has-hover .bg-rel-link:hover .bg-rel-main{opacity:0;transform:scale(.96)}
.bg-rel-card.has-hover .bg-rel-link:hover .bg-rel-hover{opacity:1;transform:scale(1)}

/* Exception : quand il N'Y A PAS d'image 2, on ne fait pas disparaître l'image principale */
.bg-rel-card.no-hover .bg-rel-hover{display:none}
.bg-rel-card.no-hover .bg-rel-link:hover .bg-rel-main{
  opacity:1;          
  transform:scale(1);  
}

.bg-rel-name{font-size:18px;line-height:1.3;font-weight:400;color: var(--nv-secondary-accent);font-family:'cocoon';}

@media (min-width:768px){ .bg-rel-card{width:min(30%, 350px)} }

/* Accessibilité : moins d’animations si l’utilisateur le demande */
@media (prefers-reduced-motion: reduce){
  .bg-rel-main, .bg-rel-hover{transition:none}
}


/* ------ PRODUCTS LIST ------ */
.bg-products-list .search-filter-base #search-filter-input-checkbox-0 {
	display: flex;
	gap: 25px;
	padding: 10px 0 14px 0;
}
.bg-products-list .search-filter-base .search-filter-input-checkbox svg#sf-svg-checkbox {
	fill: #ffffff;
}

.lfd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(346px,1fr));gap:24px}
.lfd-card{
	overflow:hidden;
	display:flex;
	flex-direction:column;
}
.lfd-card__image{display:block;}
.lfd-card__image {
  display: block;
  aspect-ratio: 4 / 3;      /* adapte si besoin */
  overflow: hidden;
}

    .lfd-card__body{padding:14px 16px 16px;display:grid;gap:8px}
    .lfd-card__title{font-size:1.3rem;line-height:1.25;margin:0;text-align: center;padding-top: 1rem;}
	.lfd-card__title a{color:var(--nv-secondary-accent)}
	.lfd-card__title a, .lfd-card__title a:hover{color:var(--nv-secondary-accent)}
    .lfd-card__meta{color:#666;font-size:.9rem}
    .lfd-pagination{margin-top:24px;text-align:center;display:flex;gap:8px;justify-content:center;align-items:center}
    .lfd-pagination a,.lfd-pagination span{padding:8px 12px;border:1px solid #ddd;border-radius:8px;text-decoration:none}
    .lfd-pagination .is-current{background:#111;color:#fff;border-color:#111}
/* Le wrapper prend 100% de la hauteur du lien */
.lfd-card__imgwrap {
  position: relative;
  width: 100%;
  height: 100%;
}
/* Les deux images se superposent, centrées */
.lfd-card__imgwrap img {
  position: absolute;
  inset: 0;                 /* top/right/bottom/left: 0 */
  width: 100%;
  height: 100%;
  object-fit: contain;      /* centre verticalement + horizontalement */
  transition: opacity .3s ease, transform .3s ease;
}
/* Par défaut l'hover est cachée */
.lfd-card__imgwrap .img-hover { opacity: 0; }

/* Effet au survol */
.lfd-card__imgwrap:hover .img-default { opacity: 0; transform: scale(1.05); }
.lfd-card__imgwrap:hover .img-hover   { opacity: 1; transform: scale(1); }


/*--- PAGE OUR DELICIOUS RECIPES ---*/
.our-delicious-recipes-header {
	background-image: url("/wp-content/themes/brioche-gourmet/img/briochegourmet_picto-bleu-1.jpg");
	background-repeat: repeat;
}
.our-delicious-recipes-header::after {
	position: absolute;
	content: "";
	background-image: url("/wp-content/themes/brioche-gourmet/img/bg-illustration-paris-blue.png");
	background-size: 100%;
	background-repeat: no-repeat;
	top: 0;
	right: 0;
	height: 600px;	
	width: 250px;
}
@media (max-width: 768px) {
	.our-delicious-recipes-header::after {
		display: none;
	}
}
.our-delicious-recipes-header h1 {
	font-size: 50px;
	font-weight: 400;
	padding-left: 90px !important;
	margin: 30px 0 80px;
}
.our-delicious-recipes-header h1::before {
	position: absolute;
	content: "";
	background-color: #0b1742;
    mask-image: url("/wp-content/themes/brioche-gourmet/icons/BGlogo.svg");
	mask-repeat: no-repeat;
	width: 100px;
	height: 100px;
	left: 0;
	top: 0;
}
.search-filter-input-group .search-filter-input-checkbox label .search-filter-input-checkbox__label {
	position: relative;
	top: 2px;
	font-family: "Cocoon";
	font-size: 15px;
	text-transform: uppercase;
	color: #ffffff !important;
}
.search-filter-input-group .search-filter-input-checkbox label.search-filter-input-checkbox__container span.search-filter-input-checkbox__control {
	top: 2px;
	left: 4px;
}
.search-filter-input-group .search-filter-input-checkbox[data-option-value|="non-vegan"]::before,
.search-filter-input-group .search-filter-input-checkbox[data-option-value|="vegan"]::before,
.search-filter-input-group .search-filter-input-checkbox[data-option-value|="plant-based"]::before,
.search-filter-input-group .search-filter-input-checkbox[data-option-value|="original"]::before {
	position: absolute;
	content: "";
	background-color: #0b1742;
	mask-repeat: no-repeat;
	left: 0;
}
.search-filter-input-group .search-filter-input-checkbox[data-option-value|="non-vegan"],
.search-filter-input-group .search-filter-input-checkbox[data-option-value|="vegan"],
.search-filter-input-group .search-filter-input-checkbox[data-option-value|="plant-based"],
.search-filter-input-group .search-filter-input-checkbox[data-option-value|="original"] {
	padding-left: 20px !important;
}

.search-filter-input-group .search-filter-input-checkbox[data-option-value|="non-vegan"]::before,
.search-filter-input-group .search-filter-input-checkbox[data-option-value|="original"]::before {
    mask-image: url("/wp-content/themes/brioche-gourmet/icons/ear.svg");
	width: 40px;
	height: 40px;
	top: 6px;
}
.search-filter-input-group .search-filter-input-checkbox[data-option-value|="vegan"]::before,
.search-filter-input-group .search-filter-input-checkbox[data-option-value|="plant-based"]::before {
    mask-image: url("/wp-content/themes/brioche-gourmet/icons/veggie.svg");
	width: 34px;
	height: 34px;
	top: 8px;
	left: 5px;
}
.wp-block-search-filter-choice {
	display: flex;
	flex-direction: row;
}
.wp-block-search-filter-choice .search-filter-description {
	position: relative;
	flex: fit-content;
	font-family: "Cocoon";
	font-size: 15px;
	text-wrap: nowrap;
	padding: 15px 10px 19px 30px;
	top: 4px;
}
.wp-block-search-filter-choice .search-filter-description::before {
	position: absolute;
	content: "";
	background-color: #0b1742;
	mask-repeat: no-repeat;
	left: 0;
    mask-image: url("/wp-content/themes/brioche-gourmet/icons/sort.svg");
	width: 34px;
	height: 34px;
	top: 15px;
}

.lfd-filters-bar { background:#b8912b; padding:10px 18px; display:flex; gap:22px; align-items:center; }
.lfd-filters-bar .sf-field-wrap { position:relative; }
.lfd-filters-bar .sf-field-label { display:flex; gap:8px; padding:10px 12px; color:#fff; font-weight:700; text-transform:uppercase; cursor:pointer; }
.lfd-filters-bar .sf-field-label::after { content:"?"; opacity:.9; }
.lfd-filters-bar .sf-input, .lfd-filters-bar .sf-input-checkbox {
  position:absolute; top:100%; left:0; min-width:240px; background:#0e1b37; color:#fff;
  padding:14px 18px; border-radius:6px; box-shadow:0 10px 24px rgba(0,0,0,.25);
  transform:translateY(6px); opacity:0; pointer-events:none; transition:opacity .2s, transform .2s;
}
.lfd-filters-bar .sf-field-wrap:hover .sf-input,
.lfd-filters-bar .sf-field-wrap:focus-within .sf-input,
.lfd-filters-bar .sf-field-wrap:hover .sf-input-checkbox,
.lfd-filters-bar .sf-field-wrap:focus-within .sf-input-checkbox { opacity:1; pointer-events:auto; transform:translateY(0); }
.lfd-filters-bar .sf-input-checkbox li { display:flex; gap:10px; padding:8px 0; }



/** BANDEROLE **/
.headerPage-product-flag {
  display: flex;
  align-items: flex-end;
  pointer-events: none;
  border: 0;
  position: absolute;
  z-index: 99;
  left: 0;
  width: 100%;
  bottom: -30px;
}
.headerPage-product-flag-1, .headerPage-product-flag-2 {
  flex: 1;
  height: 174px;
}

/** ARTICLE **/
.nv-single-post-wrap > div:first-child { 
	margin-top: 0;
}
.otter-popup__modal_body figure {
	margin-bottom: 0 !important;
}


/** WHAT'S NEW*/
/* Barre : tout sur une seule ligne (avec wrap sur mobile) */
.filter-topics .search-filter-description{
  margin: auto;
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}

.filter-topics .search-filter-input-group{
  display: flex;
  align-items: center;
  column-gap: 24px;   /* espace entre options */
  row-gap: 8px;
  flex-wrap: wrap;    /* passe à wrap sur petits écrans */
  margin: auto;
}

/* Un item (checkbox + label) */
.filter-topics .search-filter-input-checkbox{
  display: inline-flex;
}

/* Le label qui contient la case + le texte */
.filter-topics .search-filter-input-checkbox__container{
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  width: auto;              /* évite le 100% qui envoie la case à droite */
  padding: 0;
}

/* Met la case AVANT le texte (ordre visuel) */
.filter-topics .search-filter-input-checkbox__control{ order: -1; }
.filter-topics .search-filter-input-checkbox__label{  order:  0;  }


/* Desktop : forcer sur une ligne si tu veux absolument éviter le wrap */
@media (min-width: 992px){
  .filter-topics .search-filter-input-group{ flex-wrap: nowrap; }
}


/* === Mobile menu : fond bleu + 4 bandes sous le logo === */
@media (max-width: 991.98px) {
  /* Bloc qui contient le logo (ta capture/HTML) */
  .item--inner.builder-item--logo_2 {
    --thickness: 6px;    /* épaisseur des bandes */
    --radius: 0;         /* arrondi éventuel */

    position: relative;
    padding: 9px 0;     /* espace autour du logo */
    background: var(--nv-dark-bg);
    border-radius: var(--nv-primary-accent);
    overflow: hidden;
    isolation: isolate;  /* évite les conflits de z-index */
  }

  /* Les 4 bandes en arrière-plan */
  .item--inner.builder-item--logo_2::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;          /* sous le logo */
    pointer-events: none;
    background:
      /* 4 lignes horizontales, ajuste les positions (%) si besoin */
      linear-gradient(var(--nv-primary-accent), var(--nv-primary-accent)) 0 30% / 100% var(--thickness) no-repeat,
      linear-gradient(var(--nv-primary-accent), var(--nv-primary-accent)) 0 40% / 100% var(--thickness) no-repeat,
      linear-gradient(var(--nv-primary-accent), var(--nv-primary-accent)) 0 50% / 100% var(--thickness) no-repeat,
      linear-gradient(var(--nv-primary-accent), var(--nv-primary-accent)) 0 60% / 100% var(--thickness) no-repeat,
	  linear-gradient(var(--nv-primary-accent), var(--nv-primary-accent)) 0 70% / 100% var(--thickness) no-repeat;
  }

  /* On remet le logo au-dessus du décor */
  .item--inner.builder-item--logo_2 .site-logo {
    position: relative;
    z-index: 2;
  }
  
  .header-menu-sidebar-bg .close-sidebar-panel, .header-menu-sidebar-bg .header-menu-sidebar-inner .builder-item.mobile-center  {
	background-color: var(--nv-dark-bg);
  }
  .header-menu-sidebar-bg .header-menu-sidebar-inner {padding: 0;}
  .header-menu-sidebar-bg .header-menu-sidebar-inner .builder-item.mobile-center  {margin: 0; padding: 0 0 20px 0;}
}
