/* ==========================================================================
   La Beauté du Voile — Système de design "Féminin doux"
   Palette crème / sable / rosé poudré, typographie serif élégante.
   Tout est préfixé .lbdv- pour ne jamais entrer en conflit avec Flatsome.
   ========================================================================== */

:root{
  --lbdv-cream:      #FBF8F4;
  --lbdv-sand:       #F3ECE3;
  --lbdv-sand-deep:  #EADFD2;
  --lbdv-rose:       #EBD9D2;
  --lbdv-rose-deep:  #C9A398;
  --lbdv-ink:        #2E2724;
  --lbdv-ink-soft:   #554A43;
  --lbdv-muted:      #8A7C72;
  --lbdv-line:       #E5DACE;
  --lbdv-gold:       #A98A5C;
  --lbdv-white:      #FFFFFF;

  --lbdv-serif: "Cormorant Garamond", "Iowan Old Style", Georgia, "Times New Roman", serif;
  --lbdv-sans:  "Jost", "Futura", "Avenir Next", "Helvetica Neue", Arial, sans-serif;

  --lbdv-r-sm: 2px;
  --lbdv-r-md: 4px;
  --lbdv-r-pill: 999px;

  --lbdv-shadow: 0 1px 2px rgba(46,39,36,.04), 0 8px 24px rgba(46,39,36,.06);
  --lbdv-shadow-lg: 0 2px 4px rgba(46,39,36,.05), 0 20px 50px rgba(46,39,36,.10);

  --lbdv-max: 1240px;
  --lbdv-gutter: clamp(20px, 5vw, 56px);
}

/* --------------------------------------------------------------------------
   Base & primitives
   -------------------------------------------------------------------------- */

.lbdv-page{
  font-family: var(--lbdv-sans);
  color: var(--lbdv-ink);
  background: var(--lbdv-cream);
  -webkit-font-smoothing: antialiased;
  line-height: 1.65;
}
.lbdv-page *,
.lbdv-page *::before,
.lbdv-page *::after{ box-sizing: border-box; }

/* Sections pleine largeur même dans un conteneur étroit (Flatsome) */
.lbdv-bleed{
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.lbdv-wrap{
  max-width: var(--lbdv-max);
  margin-inline: auto;
  padding-inline: var(--lbdv-gutter);
}

.lbdv-section{ padding-block: clamp(56px, 8vw, 104px); }
.lbdv-section--tight{ padding-block: clamp(40px, 5vw, 64px); }
.lbdv-bg-cream{ background: var(--lbdv-cream); }
.lbdv-bg-sand{  background: var(--lbdv-sand); }
.lbdv-bg-rose{  background: var(--lbdv-rose); }
.lbdv-bg-white{ background: var(--lbdv-white); }

/* Titres */
.lbdv-page h1,.lbdv-page h2,.lbdv-page h3,.lbdv-page h4{
  font-family: var(--lbdv-serif);
  font-weight: 400;
  color: var(--lbdv-ink);
  letter-spacing: .004em;
  line-height: 1.12;
  margin: 0;
}
.lbdv-h1{ font-size: clamp(2.6rem, 6.5vw, 4.6rem); }
.lbdv-h2{ font-size: clamp(1.9rem, 4vw, 2.9rem); }
.lbdv-h3{ font-size: clamp(1.25rem, 2vw, 1.6rem); }

/* Sur-titre discret */
.lbdv-eyebrow{
  font-family: var(--lbdv-sans);
  font-size: .72rem;
  font-weight: 500;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--lbdv-gold);
  margin: 0 0 14px;
}

.lbdv-lead{
  font-size: clamp(1rem, 1.4vw, 1.1rem);
  color: var(--lbdv-ink-soft);
  max-width: 56ch;
  margin: 18px 0 0;
}
.lbdv-muted{ color: var(--lbdv-muted); }

/* En-tête de section centré */
.lbdv-shead{ text-align:center; max-width: 62ch; margin: 0 auto clamp(32px, 4vw, 56px); }
.lbdv-shead .lbdv-lead{ margin-inline: auto; }

/* Filet décoratif */
.lbdv-rule{
  width: 48px; height: 1px; background: var(--lbdv-rose-deep);
  margin: 20px auto 0; border: 0;
}

/* --------------------------------------------------------------------------
   Boutons
   -------------------------------------------------------------------------- */

.lbdv-btn{
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  font-family: var(--lbdv-sans);
  font-size: .82rem; font-weight: 500;
  letter-spacing: .14em; text-transform: uppercase;
  padding: 16px 34px;
  border-radius: var(--lbdv-r-sm);
  border: 1px solid transparent;
  cursor: pointer;
  text-decoration: none !important;
  transition: background .25s ease, color .25s ease, border-color .25s ease, transform .25s ease;
}
.lbdv-btn:hover{ transform: translateY(-1px); }
.lbdv-btn:focus-visible{ outline: 2px solid var(--lbdv-gold); outline-offset: 3px; }

.lbdv-btn--primary{ background: var(--lbdv-ink); color: var(--lbdv-cream) !important; }
.lbdv-btn--primary:hover{ background: #453b35; color: #fff !important; }

.lbdv-btn--ghost{ background: transparent; color: var(--lbdv-ink) !important; border-color: var(--lbdv-ink); }
.lbdv-btn--ghost:hover{ background: var(--lbdv-ink); color: var(--lbdv-cream) !important; }

.lbdv-btn--light{ background: var(--lbdv-white); color: var(--lbdv-ink) !important; border-color: var(--lbdv-white); }
.lbdv-btn--light:hover{ background: transparent; color: var(--lbdv-white) !important; border-color: var(--lbdv-white); }

.lbdv-btn--block{ width: 100%; }

/* Lien souligné animé */
.lbdv-link{
  font-size: .78rem; letter-spacing: .16em; text-transform: uppercase;
  color: var(--lbdv-ink) !important; text-decoration: none !important;
  border-bottom: 1px solid var(--lbdv-rose-deep);
  padding-bottom: 3px;
  transition: border-color .25s ease, color .25s ease;
}
.lbdv-link:hover{ border-color: var(--lbdv-ink); }

.lbdv-cta-row{ display:flex; flex-wrap:wrap; gap: 14px; margin-top: 34px; }

/* --------------------------------------------------------------------------
   1. Hero
   -------------------------------------------------------------------------- */

.lbdv-hero{
  position: relative;
  min-height: min(86vh, 780px);
  display: grid;
  align-items: center;
  background: var(--lbdv-sand);
  overflow: hidden;
}
.lbdv-hero__media{
  position: absolute; inset: 0;
  background-size: cover; background-position: center 28%;
  background-repeat: no-repeat;
}
.lbdv-hero__media::after{
  content:""; position:absolute; inset:0;
  background: linear-gradient(100deg, rgba(46,39,36,.62) 0%, rgba(46,39,36,.34) 46%, rgba(46,39,36,.06) 100%);
}
.lbdv-hero__inner{ position: relative; z-index: 2; padding-block: clamp(72px, 10vw, 120px); }
.lbdv-hero__box{ max-width: 620px; color: var(--lbdv-white); }
.lbdv-hero__box .lbdv-h1{ color: var(--lbdv-white); }
.lbdv-hero__box .lbdv-eyebrow{ color: var(--lbdv-rose); }
.lbdv-hero__box .lbdv-lead{ color: rgba(255,255,255,.88); font-size: 1.08rem; }

/* Variante claire si pas d'image de fond */
.lbdv-hero--plain{ background: linear-gradient(135deg, var(--lbdv-sand) 0%, var(--lbdv-rose) 100%); }
.lbdv-hero--plain .lbdv-hero__box,
.lbdv-hero--plain .lbdv-hero__box .lbdv-h1{ color: var(--lbdv-ink); }
.lbdv-hero--plain .lbdv-hero__box .lbdv-lead{ color: var(--lbdv-ink-soft); }
.lbdv-hero--plain .lbdv-hero__box .lbdv-eyebrow{ color: var(--lbdv-gold); }

/* --------------------------------------------------------------------------
   2. Bandeau arguments (USP)
   -------------------------------------------------------------------------- */

.lbdv-usp{ background: var(--lbdv-ink); color: var(--lbdv-cream); }
.lbdv-usp__grid{
  display: grid; grid-template-columns: repeat(4, 1fr);
  gap: 1px; background: rgba(255,255,255,.12);
}
.lbdv-usp__item{
  background: var(--lbdv-ink);
  display: flex; align-items: center; gap: 14px;
  padding: 26px clamp(16px, 2.4vw, 30px);
}
.lbdv-usp__ico{ flex: 0 0 auto; width: 26px; height: 26px; color: var(--lbdv-rose); }
.lbdv-usp__ico svg{ width:100%; height:100%; display:block; }
.lbdv-usp__t{ font-size: .84rem; font-weight: 500; letter-spacing: .04em; margin: 0; }
.lbdv-usp__s{ font-size: .76rem; color: rgba(251,248,244,.62); margin: 2px 0 0; line-height:1.45; }

/* --------------------------------------------------------------------------
   3. Catégories
   -------------------------------------------------------------------------- */

.lbdv-cats{ display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(12px, 1.6vw, 22px); }
.lbdv-cat{
  position: relative; display: block; overflow: hidden;
  aspect-ratio: 3 / 4; background: var(--lbdv-sand-deep);
  border-radius: var(--lbdv-r-md);
  text-decoration: none !important;
}
.lbdv-cat__img{
  position:absolute; inset:0; width:100%; height:100%;
  object-fit: cover; transition: transform .8s cubic-bezier(.2,.7,.3,1);
}
.lbdv-cat:hover .lbdv-cat__img{ transform: scale(1.05); }
.lbdv-cat::after{
  content:""; position:absolute; inset:0;
  background: linear-gradient(to top, rgba(46,39,36,.68) 0%, rgba(46,39,36,.12) 52%, transparent 78%);
}
.lbdv-cat__body{ position:absolute; z-index:2; left:0; right:0; bottom:0; padding: clamp(20px,2.4vw,30px); }
.lbdv-cat__name{
  font-family: var(--lbdv-serif); font-size: clamp(1.5rem, 2.4vw, 2rem);
  color: var(--lbdv-white); margin: 0 0 8px; line-height:1.1;
}
.lbdv-cat__count{
  font-size: .7rem; letter-spacing: .18em; text-transform: uppercase;
  color: rgba(255,255,255,.82);
  border-bottom: 1px solid rgba(255,255,255,.45); padding-bottom: 3px;
}

/* --------------------------------------------------------------------------
   4. Grille produits
   -------------------------------------------------------------------------- */

.lbdv-grid{ display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(16px, 2vw, 30px); }
.lbdv-grid--3{ grid-template-columns: repeat(3, 1fr); }

.lbdv-card{ display:flex; flex-direction:column; }
.lbdv-card__media{
  position: relative; display:block; overflow:hidden;
  aspect-ratio: 3 / 4; background: var(--lbdv-sand);
  border-radius: var(--lbdv-r-md); margin-bottom: 16px;
}
.lbdv-card__img{
  position:absolute; inset:0; width:100%; height:100%; object-fit: cover;
  transition: opacity .5s ease, transform .8s cubic-bezier(.2,.7,.3,1);
}
.lbdv-card__img--alt{ opacity: 0; }
.lbdv-card:hover .lbdv-card__img--alt{ opacity: 1; }
.lbdv-card:hover .lbdv-card__img{ transform: scale(1.03); }

.lbdv-badge{
  position:absolute; z-index:3; top:12px; left:12px;
  font-size: .62rem; font-weight:500; letter-spacing:.16em; text-transform:uppercase;
  padding: 6px 12px; border-radius: var(--lbdv-r-pill);
  background: var(--lbdv-white); color: var(--lbdv-ink);
  box-shadow: var(--lbdv-shadow);
}
.lbdv-badge--soon{ background: var(--lbdv-ink); color: var(--lbdv-cream); }
.lbdv-badge--new{ background: var(--lbdv-rose); color: var(--lbdv-ink); }

.lbdv-card__name{
  font-family: var(--lbdv-serif); font-size: 1.24rem; line-height:1.25; margin:0 0 6px;
}
.lbdv-card__name a{ color: var(--lbdv-ink) !important; text-decoration: none !important; }
.lbdv-card__name a:hover{ color: var(--lbdv-rose-deep) !important; }
.lbdv-card__meta{ font-size:.76rem; color: var(--lbdv-muted); letter-spacing:.06em; margin:0 0 8px; }
.lbdv-card__price{ font-size:.95rem; color: var(--lbdv-ink-soft); letter-spacing:.03em; }
.lbdv-card__price del{ color: var(--lbdv-muted); margin-right:8px; }

/* Pastilles de couleur */
.lbdv-swatches{ display:flex; gap:6px; margin-top:10px; }
.lbdv-swatch{
  width:14px; height:14px; border-radius:50%;
  border:1px solid rgba(46,39,36,.18); display:inline-block;
}

/* --------------------------------------------------------------------------
   5. Bloc éditorial (histoire / engagement)
   -------------------------------------------------------------------------- */

.lbdv-split{ display:grid; grid-template-columns: 1fr 1fr; align-items:center; gap: clamp(28px, 5vw, 76px); }
.lbdv-split--rev .lbdv-split__media{ order: 2; }
.lbdv-split__media{
  aspect-ratio: 4 / 5; overflow:hidden; border-radius: var(--lbdv-r-md);
  background: var(--lbdv-sand-deep);
}
.lbdv-split__media img{ width:100%; height:100%; object-fit:cover; display:block; }
.lbdv-split__body{ max-width: 52ch; }

/* Liste d'engagements */
.lbdv-checks{ list-style:none; padding:0; margin: 26px 0 0; display:grid; gap:14px; }
.lbdv-checks li{ position:relative; padding-left: 30px; color: var(--lbdv-ink-soft); font-size:.95rem; }
.lbdv-checks li::before{
  content:""; position:absolute; left:0; top:.52em;
  width: 16px; height: 8px; border-left:1.5px solid var(--lbdv-rose-deep);
  border-bottom:1.5px solid var(--lbdv-rose-deep); transform: rotate(-45deg);
}

/* --------------------------------------------------------------------------
   6. Avis clients
   -------------------------------------------------------------------------- */

.lbdv-reviews{ display:grid; grid-template-columns: repeat(3, 1fr); gap: clamp(16px, 2vw, 28px); }
.lbdv-review{
  background: var(--lbdv-white); border: 1px solid var(--lbdv-line);
  border-radius: var(--lbdv-r-md); padding: clamp(24px, 2.6vw, 34px);
  display:flex; flex-direction:column;
}
.lbdv-stars{ color: var(--lbdv-gold); font-size: .9rem; letter-spacing: .16em; margin-bottom: 14px; }
.lbdv-review__text{
  font-family: var(--lbdv-serif); font-size: 1.18rem; line-height:1.55;
  color: var(--lbdv-ink); margin: 0 0 20px; flex: 1 1 auto;
}
.lbdv-review__who{ font-size:.78rem; letter-spacing:.1em; color: var(--lbdv-muted); margin:0; }
.lbdv-review__verif{
  display:inline-flex; align-items:center; gap:6px; margin-top:8px;
  font-size:.68rem; letter-spacing:.1em; text-transform:uppercase; color: var(--lbdv-gold);
}

/* Note globale */
.lbdv-rating{ display:flex; align-items:center; justify-content:center; gap:14px; margin-top: 34px; }
.lbdv-rating__score{ font-family: var(--lbdv-serif); font-size: 2.4rem; line-height:1; }
.lbdv-rating__meta{ font-size:.8rem; color: var(--lbdv-muted); text-align:left; }

/* --------------------------------------------------------------------------
   7. Newsletter
   -------------------------------------------------------------------------- */

.lbdv-news{ text-align:center; }
.lbdv-news__form{
  display:flex; gap:10px; max-width: 520px; margin: 30px auto 14px; flex-wrap:wrap;
}
.lbdv-news__input{
  flex: 1 1 240px; min-width:0;
  font-family: var(--lbdv-sans); font-size:.92rem;
  padding: 15px 18px; border:1px solid var(--lbdv-ink); border-radius: var(--lbdv-r-sm);
  background: transparent; color: var(--lbdv-ink);
}
.lbdv-news__input::placeholder{ color: var(--lbdv-muted); }
.lbdv-news__input:focus{ outline:2px solid var(--lbdv-gold); outline-offset:1px; }
.lbdv-news__legal{ font-size:.72rem; color: var(--lbdv-muted); margin:0; }

/* --------------------------------------------------------------------------
   8. FAQ (accordéon)
   -------------------------------------------------------------------------- */

.lbdv-faq{ max-width: 800px; margin-inline:auto; }
.lbdv-faq details{
  border-bottom: 1px solid var(--lbdv-line); padding: 6px 0;
}
.lbdv-faq summary{
  list-style:none; cursor:pointer; padding: 20px 40px 20px 0; position:relative;
  font-family: var(--lbdv-serif); font-size: 1.22rem; color: var(--lbdv-ink);
}
.lbdv-faq summary::-webkit-details-marker{ display:none; }
.lbdv-faq summary::after{
  content:"+"; position:absolute; right:6px; top:50%; transform: translateY(-50%);
  font-family: var(--lbdv-sans); font-size:1.3rem; color: var(--lbdv-rose-deep);
  transition: transform .25s ease;
}
.lbdv-faq details[open] summary::after{ content:"–"; }
.lbdv-faq__a{ padding: 0 40px 22px 0; color: var(--lbdv-ink-soft); font-size:.95rem; margin:0; }

/* --------------------------------------------------------------------------
   9. Guide des tailles
   -------------------------------------------------------------------------- */

.lbdv-sizes{ overflow-x:auto; -webkit-overflow-scrolling: touch; }
.lbdv-sizes table{
  width:100%; min-width: 520px; border-collapse: collapse;
  font-size:.9rem; background: var(--lbdv-white);
}
.lbdv-sizes th, .lbdv-sizes td{
  padding: 14px 16px; text-align:left; border-bottom:1px solid var(--lbdv-line);
}
.lbdv-sizes thead th{
  background: var(--lbdv-sand); font-weight:500;
  font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color: var(--lbdv-ink-soft);
}
.lbdv-sizes tbody tr:last-child td{ border-bottom:0; }

/* --------------------------------------------------------------------------
   10. Blocs réassurance fiche produit (injectés par le plugin)
   -------------------------------------------------------------------------- */

.lbdv-pdp-trust{
  display:grid; grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px; margin: 24px 0;
  font-family: var(--lbdv-sans);
}
.lbdv-pdp-trust__i{
  display:flex; align-items:flex-start; gap:10px;
  background: var(--lbdv-cream); border:1px solid var(--lbdv-line);
  border-radius: var(--lbdv-r-md); padding: 13px 15px;
}
.lbdv-pdp-trust__i svg{ flex:0 0 auto; width:18px; height:18px; color: var(--lbdv-rose-deep); margin-top:2px; }
.lbdv-pdp-trust__t{ font-size:.82rem; font-weight:500; color: var(--lbdv-ink); display:block; line-height:1.35; }
.lbdv-pdp-trust__s{ font-size:.74rem; color: var(--lbdv-muted); display:block; line-height:1.4; }

.lbdv-pdp-size{
  margin: 18px 0; padding: 16px 18px;
  background: var(--lbdv-sand); border-radius: var(--lbdv-r-md);
  font-family: var(--lbdv-sans); font-size:.86rem; color: var(--lbdv-ink-soft);
}
.lbdv-pdp-size strong{ color: var(--lbdv-ink); font-weight:500; }
.lbdv-pdp-size a{ color: var(--lbdv-ink) !important; text-decoration: underline; text-underline-offset:3px; }

.lbdv-pay{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:16px; }
.lbdv-pay__label{ font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color: var(--lbdv-muted); }
.lbdv-pay__chip{
  font-size:.7rem; letter-spacing:.06em; padding:5px 11px;
  border:1px solid var(--lbdv-line); border-radius: var(--lbdv-r-sm);
  background: var(--lbdv-white); color: var(--lbdv-ink-soft);
}

/* --------------------------------------------------------------------------
   11. Bandeau annonce (top bar)
   -------------------------------------------------------------------------- */

.lbdv-announce{
  background: var(--lbdv-rose); color: var(--lbdv-ink);
  text-align:center; padding: 11px 16px;
  font-family: var(--lbdv-sans); font-size:.78rem; letter-spacing:.1em;
}
.lbdv-announce a{ color: var(--lbdv-ink) !important; text-decoration: underline; text-underline-offset:3px; }

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */

@media (max-width: 1024px){
  .lbdv-grid{ grid-template-columns: repeat(3, 1fr); }
  .lbdv-usp__grid{ grid-template-columns: repeat(2, 1fr); }
  .lbdv-reviews{ grid-template-columns: 1fr; max-width: 640px; margin-inline:auto; }
}

@media (max-width: 820px){
  .lbdv-split{ grid-template-columns: 1fr; }
  .lbdv-split--rev .lbdv-split__media{ order: 0; }
  .lbdv-split__media{ aspect-ratio: 4 / 3; }
  .lbdv-cats{ grid-template-columns: 1fr; }
  .lbdv-cat{ aspect-ratio: 16 / 10; }
  .lbdv-hero{ min-height: auto; }
  .lbdv-hero__media::after{
    background: linear-gradient(to top, rgba(46,39,36,.72) 10%, rgba(46,39,36,.34) 100%);
  }
}

@media (max-width: 560px){
  .lbdv-grid, .lbdv-grid--3{ grid-template-columns: repeat(2, 1fr); }
  .lbdv-usp__grid{ grid-template-columns: 1fr; }
  .lbdv-pdp-trust{ grid-template-columns: 1fr; }
  .lbdv-card__name{ font-size: 1.05rem; }
  .lbdv-cta-row .lbdv-btn{ width: 100%; }
}

@media (prefers-reduced-motion: reduce){
  .lbdv-page *{ transition: none !important; animation: none !important; }
}

/* --------------------------------------------------------------------------
   12. En-tête du site (thème Flatsome)
   Fond crème, filet fin, menu en petites capitales espacées.
   Désactivable depuis les réglages si besoin.
   -------------------------------------------------------------------------- */

/* Masque la barre grise du thème, qui fait doublon avec le bandeau rosé */
body.lbdv-no-topbar #top-bar,
body.lbdv-no-topbar .header-top,
body.lbdv-no-topbar .woocommerce-store-notice{
  display: none !important;
}

body.lbdv-header #header,
body.lbdv-header .header-wrapper,
body.lbdv-header .header-main,
body.lbdv-header .header-bottom,
body.lbdv-header #masthead{
  background-color: var(--lbdv-cream) !important;
  background-image: none !important;
  box-shadow: none !important;
}

body.lbdv-header .header-wrapper{
  border-bottom: 1px solid var(--lbdv-line) !important;
}

/* En-tête collant : légère transparence pour laisser deviner la page */
body.lbdv-header .stuck .header-main,
body.lbdv-header .header-wrapper.stuck{
  background-color: rgba(251, 248, 244, .96) !important;
  backdrop-filter: saturate(1.1) blur(8px);
  -webkit-backdrop-filter: saturate(1.1) blur(8px);
}

/* Liens du menu principal */
body.lbdv-header #header .header-nav > li > a,
body.lbdv-header #header .nav > li > a,
body.lbdv-header #header .header-nav > li > a > span,
body.lbdv-header #header .nav > li > a > span{
  font-family: var(--lbdv-sans) !important;
  font-size: .78rem !important;
  font-weight: 400 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  color: var(--lbdv-ink-soft) !important;
}

body.lbdv-header #header .header-nav > li > a{
  padding-block: 6px !important;
  padding-inline: 11px !important;
  border-bottom: 1px solid transparent !important;
  transition: color .25s ease, border-color .25s ease;
}

/* Le menu tient sur une seule ligne : pas de retour à la ligne sur
   « Contact », et on resserre progressivement quand la place manque. */
body.lbdv-header #header .header-nav,
body.lbdv-header #header ul.nav{
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
}
/* Alignement : sans ça, les entrées qui portent une flèche de sous-menu
   (Femme, Enfant) se calent sur une autre ligne de base que les autres. */
body.lbdv-header #header .header-nav > li,
body.lbdv-header #header ul.nav > li{
  display: flex !important;
  align-items: center !important;
  vertical-align: middle !important;
  white-space: nowrap !important;
  float: none;
}
body.lbdv-header #header .header-nav > li > a,
body.lbdv-header #header ul.nav > li > a{
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px;
  line-height: 1.25 !important;
}
body.lbdv-header #header .header-nav > li > a > i,
body.lbdv-header #header ul.nav > li > a > i{
  position: static !important;
  margin: 0 !important;
  font-size: .8em;
  opacity: .6;
}
body.lbdv-header #header .nav-dropdown li{ white-space: normal !important; }

@media (max-width: 1300px){
  body.lbdv-header #header .header-nav > li > a,
  body.lbdv-header #header .nav > li > a,
  body.lbdv-header #header .header-nav > li > a > span,
  body.lbdv-header #header .nav > li > a > span{
    font-size: .73rem !important;
    letter-spacing: .09em !important;
  }
  body.lbdv-header #header .header-nav > li > a{ padding-inline: 8px !important; }
  body.lbdv-header #logo img{ max-height: 52px; }
}

@media (max-width: 1100px){
  body.lbdv-header #header .header-nav > li > a,
  body.lbdv-header #header .nav > li > a,
  body.lbdv-header #header .header-nav > li > a > span,
  body.lbdv-header #header .nav > li > a > span{
    font-size: .69rem !important;
    letter-spacing: .05em !important;
  }
  body.lbdv-header #header .header-nav > li > a{ padding-inline: 6px !important; }
  body.lbdv-header #logo img{ max-height: 46px; }
}

body.lbdv-header #header .header-nav > li > a:hover,
body.lbdv-header #header .nav > li > a:hover,
body.lbdv-header #header .header-nav > li.active > a,
body.lbdv-header #header .header-nav > li.current-menu-item > a{
  color: var(--lbdv-ink) !important;
  border-bottom-color: var(--lbdv-rose-deep) !important;
}

/* Icônes (recherche, compte, panier, menu burger) */
body.lbdv-header #header .icon-menu,
body.lbdv-header #header .header-button a,
body.lbdv-header #header .nav > li > a > i,
body.lbdv-header #header .cart-icon strong{
  color: var(--lbdv-ink) !important;
}
body.lbdv-header #header .cart-icon strong{
  border-color: var(--lbdv-ink) !important;
}

/* Sous-menus déroulants */
body.lbdv-header #header .nav-dropdown{
  background-color: var(--lbdv-white) !important;
  border: 1px solid var(--lbdv-line) !important;
  box-shadow: var(--lbdv-shadow) !important;
  border-radius: var(--lbdv-r-md);
}
body.lbdv-header #header .nav-dropdown > li > a{
  font-family: var(--lbdv-sans) !important;
  font-size: .78rem !important;
  letter-spacing: .09em !important;
  color: var(--lbdv-ink-soft) !important;
  border-bottom-color: var(--lbdv-line) !important;
}
body.lbdv-header #header .nav-dropdown > li > a:hover{
  color: var(--lbdv-ink) !important;
  background-color: var(--lbdv-cream) !important;
}

/* Logo : un peu d'air autour */
body.lbdv-header #logo{ padding-block: 4px; }
body.lbdv-header #logo img{ max-height: 62px; width: auto; }

/* Menu mobile latéral */
body.lbdv-header .mfp-content .mobile-sidebar,
body.lbdv-header .off-canvas-left .mfp-content{
  background-color: var(--lbdv-cream) !important;
}
body.lbdv-header .mobile-sidebar li > a{
  font-family: var(--lbdv-sans) !important;
  font-size: .82rem !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: var(--lbdv-ink) !important;
}

/* --------------------------------------------------------------------------
   Corrections d'intégration Flatsome
   -------------------------------------------------------------------------- */

/* Masque le titre de page + la barre de fil d'Ariane sur la nouvelle accueil */
/* Les sections pleine largeur utilisent 100vw : on neutralise le
   débordement horizontal que provoque la barre de défilement. */
body.lbdv-home{ overflow-x: hidden; }

body.lbdv-home .page-title,
body.lbdv-home .entry-header,
body.lbdv-home .page-title-inner{ display: none !important; }
body.lbdv-home .page-wrapper{ padding-top: 0 !important; padding-bottom: 0 !important; }
body.lbdv-home #content > .row,
body.lbdv-home .entry-content > .row{ max-width: none; padding: 0; }
