/* DressYourBody – Zoli Child (dyb-zoli-child) — custom.css
   Purpose: small, safe overrides (spacing, typography, layout polish).
   Rule: CSS-only. Do not change WooCommerce logic or JS behavior here.
*/

/* =========================================================
   GLOBAL TOKENS + BASE POLISH (safe)
   ========================================================= */

:root{
  --dyb-radius: 14px;
  --dyb-radius-sm: 10px;
  --dyb-shadow: 0 10px 30px rgba(0,0,0,.06);
  --dyb-shadow-hover: 0 14px 40px rgba(0,0,0,.10);
  --dyb-border: 1px solid rgba(0,0,0,.08);
  --dyb-container: 1320px;
  --dyb-gutter: 24px;
}

html{ -webkit-text-size-adjust: 100%; }
body{
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* prevent accidental horizontal scroll without hiding real layout issues too aggressively */
  overflow-x: clip;
}

/* Consistent readable width for main containers */
.container,
.site-content > .container,
#content > .container{
  max-width: var(--dyb-container);
  width: 100%;
}

/* Global rhythm */
main, .site-main{ line-height: 1.6; }
main h1, main h2, main h3{ letter-spacing: -0.01em; }
main h1{ line-height: 1.1; }
main p{ margin: 0 0 1em; }

/* Links */
a{ text-decoration-thickness: .08em; text-underline-offset: .18em; }
a:hover{ text-decoration-thickness: .12em; }

/* Buttons (Woo + theme) */
button,
input[type="submit"],
.button,
.btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{
  border-radius: var(--dyb-radius-sm);
  padding: 12px 18px;
  font-weight: 600;
  letter-spacing: .01em;
}

/* Form fields */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="search"],
textarea,
select{
  border-radius: var(--dyb-radius-sm);
  border: 1px solid rgba(0,0,0,.12);
  padding: 12px 14px;
}
input:focus, textarea:focus, select:focus{
  outline: none;
  box-shadow: 0 0 0 3px rgba(0,0,0,.08);
}

/* Card-like blocks (safe) */
.widget,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error{
  border-radius: var(--dyb-radius);
}

/* Header (non-functional) */
.site-header,
header.site-header{
  border-bottom: 1px solid rgba(0,0,0,.06);
}

/* Dropdown menus (visual) */
.site-header .sub-menu,
.site-header .dropdown-menu{
  border-radius: var(--dyb-radius);
  overflow: hidden;
  box-shadow: var(--dyb-shadow);
}
.site-header .sub-menu a,
.site-header .dropdown-menu a{
  padding-top: 10px;
  padding-bottom: 10px;
}

/* Footer spacing (visual) */
.site-footer,
footer.site-footer,
footer{
  margin-top: 40px;
}

/* Responsive container tuning */
@media (max-width: 1024px){
  :root{ --dyb-container: 980px; --dyb-gutter: 20px; }
}
@media (max-width: 640px){
  :root{ --dyb-container: 100%; --dyb-gutter: 16px; }
  .container,
  .site-content > .container,
  #content > .container{ padding-left: 16px; padding-right: 16px; }
}

/* Admin bar: prevent overlap with fixed headers */
body.admin-bar .site-header,
body.admin-bar header{
  top: var(--wp-admin--admin-bar--height, 32px);
}

/* =========================================================
   DYB Product Slider (Swiper + Woo/Zoli product card)
   ========================================================= */

.dyb-products-slider,
.dyb-products-slider.swiper-container{
  width: 100%;
  max-width: 100%;
}
.dyb-products-slider .swiper-wrapper,
.dyb-products-slider .swiper-slide{
  max-width: 100%;
}
.dyb-products-slider ul.products{
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
}
.dyb-products-slider ul.products li.product{
  margin: 0 !important;
  width: 100% !important;
}
.dyb-products-slider img{
  max-width: 100%;
  height: auto;
  display: block;
}
.dyb-products-slider .swiper-button-prev,
.dyb-products-slider .swiper-button-next{
  color: #000;
  pointer-events: auto;
  z-index: 5;
}
.dyb-products-slider .swiper-pagination{ bottom: 10px; }

/* =========================================================
   DYB Home 3 Cards — responsive normalization
   Goal:
   - desktop = 3 cols
   - tablet = 2 cols
   - mobile = 1 col
   - keep safe gutters on small screens
   ========================================================= */

.dyb-home-cards{
  width: 100%;
  padding: 40px 0;
}

.dyb-home-cards__grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  padding: 0;
  max-width: 1600px;
  margin: 0 auto;
}

.dyb-home-cards__card{
  position: relative;
  display: block;
  min-height: 420px;
  overflow: hidden;
  border-radius: 0;
  background-size: cover;
  background-position: center;
  text-decoration: none;
}

.dyb-home-cards__overlay{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.30);
  transition: background .18s ease;
}

.dyb-home-cards__title{
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  color: #fff;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-size: 24px;
  line-height: 1.1;
  text-shadow: 0 10px 30px rgba(0,0,0,.45);
}

.dyb-home-cards__card:hover .dyb-home-cards__overlay{
  background: rgba(0,0,0,.40);
}

.dyb-home-cards__card:hover{
  filter: saturate(1.03);
}

@media (max-width: 1024px){
  .dyb-home-cards{
    padding: 28px 0;
  }

  .dyb-home-cards__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    max-width: none;
  }

  .dyb-home-cards__card{
    min-height: 320px;
  }

  .dyb-home-cards__title{
    font-size: 22px;
    left: 18px;
    right: 18px;
    bottom: 18px;
  }
}

@media (max-width: 640px){
  .dyb-home-cards__grid{
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .dyb-home-cards__card{
    min-height: 280px;
  }

  .dyb-home-cards__title{
    font-size: 20px;
    left: 16px;
    right: 16px;
    bottom: 16px;
  }
}
/* =========================================================
   DYB Instagram Preview — responsive normalization
   Goal:
   - desktop stays 3 cols
   - tablet becomes 2 cols
   - mobile becomes 1 col
   - heading/button stack cleanly on small screens
   ========================================================= */

.dyb-insta{
  padding: 40px 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.dyb-insta__grid{ order: 1; }
.dyb-insta__head{ order: 2; }

.dyb-insta__grid,
.dyb-insta__head{
  max-width: 980px;
  margin: 0 auto;
  padding: 0 24px;
}

.dyb-insta__grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.dyb-insta__item{
  display: block;
  border-radius: 12px;
  overflow: hidden;
  background: #f2f2f2;
  position: relative;
}

.dyb-insta__item img{
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display: block;
  transform: scale(1);
  transition: transform .25s ease;
}

.dyb-insta__item:hover img{
  transform: scale(1.04);
}

.dyb-insta__item::after{
  content:"";
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0);
  transition: background .25s ease;
}

.dyb-insta__item:hover::after{
  background: rgba(0,0,0,.10);
}

.dyb-insta__head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.dyb-insta__title{
  font-weight: 700;
  font-size: 16px;
  letter-spacing: .01em;
}

.dyb-insta__btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 14px;
  border-radius: 999px;
  background: #2c2c2c;
  color: #fff;
  text-decoration: none;
  font-size: 13px;
  line-height: 1;
  white-space: nowrap;
}

.dyb-insta__btn:hover{
  opacity: .92;
}

@media (max-width: 1024px){
  .dyb-insta__grid,
  .dyb-insta__head{
    max-width: 760px;
    padding: 0 18px;
  }

  .dyb-insta__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px){
  .dyb-insta__grid,
  .dyb-insta__head{
    padding: 0 16px;
  }

  .dyb-insta__grid{
    grid-template-columns: 1fr;
  }

  .dyb-insta__head{
    flex-direction: column;
    align-items: stretch;
    text-align: center;
  }

  .dyb-insta__btn{
    width: 100%;
  }
}
/* =========================================================
   FOOTER (DYB) — production-like multi-column footer
   ========================================================= */

.dyb-footer{ padding-top: 0; }

.dyb-footer .site-footer{
  border-top: 1px solid rgba(0,0,0,.08);
}

.dyb-footer-top{ padding: 28px 0 18px; }

/* Reassurance row (trust signals) */
.dyb-footer-reassurance{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  padding: 18px 0;
  border-bottom: 1px solid rgba(0,0,0,.06);
}

.dyb-reassurance-item{
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.65);
}

.dyb-reassurance-ico{ display: inline-flex; opacity: .85; }
.dyb-reassurance-txt{ font-size: 13px; font-weight: 600; opacity: .88; }

.dyb-footer-grid{
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr 1fr 0.9fr;
  gap: 16px;
  align-items: start;
}

.dyb-footer-title{
  font-size: 14px;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-weight: 700;
  margin: 0 0 14px;
}

.dyb-footer-title.dyb-footer-brand{
  letter-spacing: .02em;
  text-transform: none;
  font-size: 15px;
}

.dyb-footer-text{
  font-size: 14px;
  line-height: 1.55;
  opacity: .85;
  margin: 0 0 14px;
  max-width: 34ch;
}

.dyb-footer-contact a{ text-decoration: none; border-bottom: 1px solid rgba(0,0,0,.22); }
.dyb-footer-contact a:hover{ border-bottom-color: rgba(0,0,0,.45); }

.dyb-footer-social-note{
  margin: 12px 0 0;
  font-size: 12px;
  line-height: 1.45;
  opacity: .75;
  max-width: 26ch;
}

.dyb-footer-menu,
.dyb-footer-social-menu{
  list-style: none;
  margin: 0;
  padding: 0;
}

.dyb-footer-menu li,
.dyb-footer-social-menu li{ margin: 0 0 10px; }

.dyb-footer-menu a,
.dyb-footer-social-menu a{
  text-decoration: none;
  font-size: 14px;
  opacity: .88;
  border-bottom: 1px solid transparent;
  padding-bottom: 2px;
}
.dyb-footer-menu a:hover,
.dyb-footer-social-menu a:hover{
  opacity: 1;
  border-bottom-color: rgba(0,0,0,.28);
}

.dyb-footer-utility{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid rgba(0,0,0,.08);
}

.dyb-footer-utility-single{ display:flex; justify-content:center; width:100%; }

.dyb-chip{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 14px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.10);
  background: rgba(255,255,255,.70);
  font-size: 12px;
  font-weight: 600;
  opacity: .92;
  white-space: nowrap;
}

.dyb-chip.dyb-chip-muted{ opacity: .75; font-weight: 600; }

.dyb-footer-bottom{
  padding: 10px 0 16px;
  border-top: 1px solid rgba(0,0,0,.08);
  font-size: 13px;
  opacity: .85;
}

.dyb-footer-bottom-inner{
  display: flex;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}

.dyb-footer-copyright-inline{
  display: block;
  margin-top: 6px;
  opacity: .75;
  font-size: 13px;
}

.dyb-footer-bottom-message{ justify-content: center; }

.dyb-footer-note{
  margin: 0;
  max-width: 980px;
  text-align: center;
  line-height: 1.6;
  opacity: 1;
  font-size: 14px;
  color: rgba(0,0,0,.75);
}

@media (max-width: 1024px){
  .dyb-footer-top{
    padding: 24px 0 16px;
  }

  .dyb-footer-reassurance{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .dyb-footer-grid{
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 22px 18px;
  }

  .dyb-footer-text,
  .dyb-footer-social-note{
    max-width: none;
  }
}

@media (max-width: 640px){
  .dyb-footer-top{
    padding: 20px 0 14px;
  }

  .dyb-footer-reassurance{
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 12px 0;
  }

  .dyb-reassurance-item{
    padding: 12px;
  }

  .dyb-footer-grid{
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .dyb-footer-title{
    margin-bottom: 10px;
  }

  .dyb-footer-text,
  .dyb-footer-social-note{
    max-width: none;
  }

  .dyb-footer-utility{
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }

  .dyb-footer-utility-left,
  .dyb-footer-utility-right,
  .dyb-footer-utility-single{
    width: 100%;
  }

  .dyb-footer-bottom{
    padding: 12px 0 16px;
  }

  .dyb-footer-bottom-inner{
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
}

/* Social icons (icon-only, accessible) */
.dyb-footer-social-menu a{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.12);
  opacity: 1;
  overflow: hidden;
  position: relative;
  text-indent: -9999px;
  white-space: nowrap;
}
.dyb-footer-social-menu a:hover{ border-color: rgba(0,0,0,.28); }

.dyb-footer-social-menu li.dyb-social a::before{
  content:"";
  width: 16px;
  height: 16px;
  display: block;
  background-color: rgba(0,0,0,.7);
  -webkit-mask: var(--dyb-icon) no-repeat center / contain;
  mask: var(--dyb-icon) no-repeat center / contain;
}

/* SVG masks (data-URI) */
.dyb-footer-social-menu li.dyb-social-ig { --dyb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2h10a5 5 0 0 1 5 5v10a5 5 0 0 1-5 5H7a5 5 0 0 1-5-5V7a5 5 0 0 1 5-5Zm10 2H7a3 3 0 0 0-3 3v10a3 3 0 0 0 3 3h10a3 3 0 0 0 3-3V7a3 3 0 0 0-3-3Zm-5 4.5A5.5 5.5 0 1 1 6.5 14 5.5 5.5 0 0 1 12 8.5Zm0 2A3.5 3.5 0 1 0 15.5 14 3.5 3.5 0 0 0 12 10.5ZM18 6.8a1.2 1.2 0 1 1-1.2 1.2A1.2 1.2 0 0 1 18 6.8Z'/%3E%3C/svg%3E"); }
.dyb-footer-social-menu li.dyb-social-fb { --dyb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M13 22v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3V2h-3a5 5 0 0 0-5 5v3H7v4h3v8h3Z'/%3E%3C/svg%3E"); }
.dyb-footer-social-menu li.dyb-social-yt { --dyb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.6 7.2a3 3 0 0 0-2.1-2.1C17.7 4.6 12 4.6 12 4.6s-5.7 0-7.5.5A3 3 0 0 0 2.4 7.2 31.6 31.6 0 0 0 2 12a31.6 31.6 0 0 0 .4 4.8 3 3 0 0 0 2.1 2.1c1.8.5 7.5.5 7.5.5s5.7 0 7.5-.5a3 3 0 0 0 2.1-2.1A31.6 31.6 0 0 0 22 12a31.6 31.6 0 0 0-.4-4.8ZM10 15.5v-7l6 3.5-6 3.5Z'/%3E%3C/svg%3E"); }
.dyb-footer-social-menu li.dyb-social-pin { --dyb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a8 8 0 0 0-2.9 15.5c-.1-.6-.2-1.6 0-2.3l1.2-5.1s-.3-.6-.3-1.5c0-1.4.8-2.4 1.8-2.4.9 0 1.3.7 1.3 1.5 0 .9-.6 2.3-.9 3.6-.2 1.1.6 2 1.7 2 2 0 3.5-2.1 3.5-5.1 0-2.7-1.9-4.6-4.7-4.6A4.9 4.9 0 0 0 7.7 7c0 1 .4 2 .9 2.6a.4.4 0 0 1 .1.4l-.3 1.2c-.1.4-.3.5-.6.3-1.1-.5-1.8-2.1-1.8-3.4 0-2.8 2-5.4 5.9-5.4 3.1 0 5.5 2.2 5.5 5.1 0 3.1-2 5.6-4.7 5.6-1 0-1.9-.5-2.2-1.1l-.6 2.2c-.2.8-.7 1.7-1.1 2.3A8 8 0 1 0 12 2Z'/%3E%3C/svg%3E"); }
.dyb-footer-social-menu li.dyb-social-in { --dyb-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.5 6.5A2 2 0 1 1 6.5 2.5a2 2 0 0 1 0 4ZM4 22V8h5v14H4Zm7 0V8h5v2c.7-1.2 2.2-2.2 4.2-2.2 3 0 4.8 2 4.8 6V22h-5v-7c0-1.8-.6-3-2.2-3-1.2 0-1.8.8-2.1 1.6-.1.3-.1.8-.1 1.2V22h-5Z'/%3E%3C/svg%3E"); }

/* =========================================================
   BLOG — Premium grid (Blog index + Category blogcouture)
   ========================================================= */

body.blog .breadcrumbs{
  background: none !important;
  padding: 0 !important;
  margin: 0 0 24px !important;
  box-shadow: none !important;
}
body.blog .breadcrumbs > .container > *:not(.breadcrumbs_title){ display: none !important; }
body.blog .breadcrumbs_title{ padding: 0 !important; margin: 0 !important; }
body.blog .breadcrumbs_title h1{ margin: 0 !important; }

body.category-blogcouture .breadcrumbs{
  background: none !important;
  padding: 0 !important;
  margin: 0 0 24px !important;
  box-shadow: none !important;
  text-align: center;
}
body.category-blogcouture .breadcrumbs > .container{
  display: block !important;
  text-align: center !important;
}
body.category-blogcouture .breadcrumbs_title{
  padding: 0 !important;
  margin: 0 0 8px !important;
  text-align: center !important;
}
body.category-blogcouture .breadcrumbs_title h1{
  margin: 0 !important;
  text-align: center !important;
}
body.category-blogcouture .breadcrumb,
body.category-blogcouture .breadcrumbs ul,
body.category-blogcouture .breadcrumbs .breadcrumb,
body.category-blogcouture .woocommerce-breadcrumb{
  display: inline-block !important;
  text-align: center !important;
  margin: 0 auto !important;
  padding: 0 !important;
}
body.category-blogcouture .breadcrumbs ul li,
body.category-blogcouture .breadcrumb li{ display: inline !important; }
body.category-blogcouture .breadcrumbs ul li:before,
body.category-blogcouture .breadcrumb li:before{ display: inline !important; }

body.blog #index-wrapper > .container,
body.blog .site-content > .container,
body.blog .site-content .container,
body.category-blogcouture #index-wrapper > .container,
body.category-blogcouture .site-content > .container,
body.category-blogcouture .site-content .container{
  max-width: 1320px !important;
  width: 100%;
}

body.blog .wpopal-blog .row,
body.blog #index-wrapper .row,
body.blog .site-main .row,
body.category-blogcouture .wpopal-blog .row,
body.category-blogcouture #index-wrapper .row,
body.category-blogcouture .site-main .row{
  --dyb-gutter: 28px;
  margin-left: calc(var(--dyb-gutter) * -0.5);
  margin-right: calc(var(--dyb-gutter) * -0.5);
}

body.blog .wpopal-blog .row > [class*="wp-col-"],
body.blog #index-wrapper .row > [class*="wp-col-"],
body.blog .site-main .row > [class*="wp-col-"],
body.category-blogcouture .wpopal-blog .row > [class*="wp-col-"],
body.category-blogcouture #index-wrapper .row > [class*="wp-col-"],
body.category-blogcouture .site-main .row > [class*="wp-col-"]{
  padding-left: calc(var(--dyb-gutter) * 0.5);
  padding-right: calc(var(--dyb-gutter) * 0.5);
  margin-bottom: 34px;
}

body.blog article.blog-grid-item,
body.category-blogcouture article.blog-grid-item{
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0,0,0,.06);
  display: flex;
  flex-direction: column;
  min-height: 100%;
  transition: box-shadow .18s ease, transform .18s ease;
}

body.blog .site-main article,
body.category-blogcouture .site-main article{ margin: 0 !important; }

body.blog article.blog-grid-item .post-thumbnail,
body.category-blogcouture article.blog-grid-item .post-thumbnail{
  margin: 0 !important;
  padding: 0 !important;
}
body.blog article.blog-grid-item .post-thumbnail a,
body.category-blogcouture article.blog-grid-item .post-thumbnail a{ display: block; }

body.blog article.blog-grid-item .post-thumbnail img,
body.blog article.blog-grid-item img.wp-post-image,
body.category-blogcouture article.blog-grid-item .post-thumbnail img,
body.category-blogcouture article.blog-grid-item img.wp-post-image{
  width: 100% !important;
  height: auto !important;
  display: block;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  max-height: none !important;
}

body.blog article.blog-grid-item .entry-header,
body.blog article.blog-grid-item .entry-content,
body.category-blogcouture article.blog-grid-item .entry-header,
body.category-blogcouture article.blog-grid-item .entry-content{
  padding: 16px 18px 18px;
}

body.blog article.blog-grid-item .meta-post-categories,
body.category-blogcouture article.blog-grid-item .meta-post-categories{
  margin: 0 0 10px;
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: .75;
}

body.blog article.blog-grid-item .entry-title,
body.category-blogcouture article.blog-grid-item .entry-title{
  margin: 0 0 10px;
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: -0.01em;
}

body.blog article.blog-grid-item .entry-meta,
body.category-blogcouture article.blog-grid-item .entry-meta{
  margin: 0 0 10px;
  font-size: 12px;
  opacity: .7;
}

body.blog article.blog-grid-item .entry-excerpt,
body.blog article.blog-grid-item .entry-summary,
body.blog article.blog-grid-item .entry-summary p,
body.category-blogcouture article.blog-grid-item .entry-excerpt,
body.category-blogcouture article.blog-grid-item .entry-summary,
body.category-blogcouture article.blog-grid-item .entry-summary p{
  margin: 0 0 14px;
  font-size: 14px;
  line-height: 1.55;
  opacity: .88;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

body.blog article.blog-grid-item .entry-footer,
body.category-blogcouture article.blog-grid-item .entry-footer{
  margin-top: auto;
  padding: 0 18px 18px;
}
body.blog article.blog-grid-item .entry-footer a,
body.blog article.blog-grid-item a.zoli-read-more-link,
body.category-blogcouture article.blog-grid-item .entry-footer a,
body.category-blogcouture article.blog-grid-item a.zoli-read-more-link{
  font-size: 13px;
  text-decoration: none;
  border-bottom: 1px solid rgba(0,0,0,.25);
  padding-bottom: 2px;
}

body.blog article.blog-grid-item:hover,
body.category-blogcouture article.blog-grid-item:hover{
  box-shadow: 0 14px 40px rgba(0,0,0,.10);
  transform: translateY(-1px);
}

@media (max-width: 1024px){
  body.blog #index-wrapper > .container,
  body.blog .site-content .container,
  body.category-blogcouture #index-wrapper > .container,
  body.category-blogcouture .site-content .container{
    max-width: 980px !important;
  }
  body.blog .wpopal-blog .row,
  body.blog #index-wrapper .row,
  body.blog .site-main .row,
  body.category-blogcouture .wpopal-blog .row,
  body.category-blogcouture #index-wrapper .row,
  body.category-blogcouture .site-main .row{
    --dyb-gutter: 22px;
  }
}

@media (max-width: 640px){
  body.blog .wpopal-blog .row,
  body.blog #index-wrapper .row,
  body.blog .site-main .row,
  body.category-blogcouture .wpopal-blog .row,
  body.category-blogcouture #index-wrapper .row,
  body.category-blogcouture .site-main .row{
    --dyb-gutter: 16px;
  }

  body.blog article.blog-grid-item .entry-header,
  body.blog article.blog-grid-item .entry-content,
  body.category-blogcouture article.blog-grid-item .entry-header,
  body.category-blogcouture article.blog-grid-item .entry-content{
    padding: 14px 14px 16px;
  }
}

/* =========================================================
   HEADER (Zoli) — desktop alignment + actions + dropdown panels
   ========================================================= */

/* Header row alignment (desktop/tablet) */
#wrapper-navbar .navbar .row.ml-0.mr-0{
  align-items: center;
  flex-wrap: nowrap;
}

/* Brand block (logo + text) */
#wrapper-navbar .navbar-brand.site-branding.ac-site-branding{
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  margin: 0;
  max-width: 440px;
}

/* Menu center + actions right (DESKTOP ONLY) */
@media (min-width: 992px){
  #wrapper-navbar .d-none.d-lg-block.navbar-collapse{
    display: flex !important;
    flex: 1 1 auto;
    justify-content: center;
  }

  #wrapper-navbar .d-none.d-lg-flex{
    display: flex !important;
    flex: 0 0 auto;
    margin-left: auto;
  }
}

/* =========================================================
   HEADER MOBILE / TABLET NORMALIZATION
   Scope: normal/Zoli header only
   Keeps desktop untouched and fixes tablet/mobile collapse
   ========================================================= */

@media (max-width: 991.98px){
  /* Never show desktop-only header pieces on tablet/mobile */
  #wrapper-navbar .d-none.d-lg-block.navbar-collapse,
  #wrapper-navbar .d-none.d-lg-flex{
    display: none !important;
  }

  /* Header row must stay stable */
  #wrapper-navbar .navbar .row.ml-0.mr-0{
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    flex-wrap: nowrap !important;
  }

  /* Branding block must shrink safely */
  #wrapper-navbar .navbar-brand.site-branding.ac-site-branding{
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: calc(100% - 64px) !important;
    margin: 0 !important;
  }

  #wrapper-navbar .ac-site-branding .ac-brand-link{
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-width: 0 !important;
    white-space: normal !important;
  }

  #wrapper-navbar .ac-site-branding .custom-logo{
    width: 56px !important;
    height: 56px !important;
    flex: 0 0 auto !important;
  }

  #wrapper-navbar .ac-site-branding .ac-brand-text{
    min-width: 0 !important;
  }

  #wrapper-navbar .ac-site-branding .ac-brand-title{
    font-size: 20px !important;
    line-height: 1.08 !important;
    color: #111 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  #wrapper-navbar .ac-site-branding .ac-brand-tagline{
    font-size: 12px !important;
    line-height: 1.10 !important;
    letter-spacing: 0.08em !important;
    color: #111 !important;
    opacity: .85;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  /* Toggler stays on the right */
  #wrapper-navbar .navbar-toggler{
    flex: 0 0 auto !important;
    margin-left: auto !important;
  }

  /* Mobile menu container */
  #wrapper-navbar .navbar-collapse,
  #wrapper-navbar .navbar-collapse.collapse,
  #wrapper-navbar .navbar-collapse.show{
    width: 100% !important;
    max-width: 100% !important;
    flex-basis: 100% !important;
    margin-top: 10px !important;
  }

  #wrapper-navbar #main-navigation.navbar-nav{
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 8px 0 0 !important;
    white-space: normal !important;
  }

  #wrapper-navbar #main-navigation.navbar-nav > li{
    width: 100% !important;
    margin: 0 !important;
  }

  #wrapper-navbar #main-navigation.navbar-nav > li > a{
    display: block !important;
    padding: 12px 0 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
  }

  /* Submenus should not float off-screen on mobile */
  #wrapper-navbar .dropdown-menu,
  #wrapper-navbar .sub-menu{
    position: static !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }

  /* Kill vertical/per-letter wrapping in header/nav */
  #wrapper-navbar a,
  #wrapper-navbar .navbar-nav a,
  #wrapper-navbar .dropdown-menu a,
  #wrapper-navbar .sub-menu a{
    writing-mode: horizontal-tb !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
  }

  #wrapper-navbar *,
  #wrapper-navbar *::before,
  #wrapper-navbar *::after{
    word-break: normal !important;
    overflow-wrap: normal !important;
  }
}

@media (max-width: 640px){
  #wrapper-navbar,
  #wrapper-navbar .navbar{
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  #wrapper-navbar .navbar-brand.site-branding.ac-site-branding{
    max-width: calc(100% - 56px) !important;
  }

  #wrapper-navbar .ac-site-branding .custom-logo{
    width: 44px !important;
    height: 44px !important;
  }

  #wrapper-navbar .ac-site-branding .ac-brand-title{
    font-size: 16px !important;
    line-height: 1.05 !important;
  }

  #wrapper-navbar .ac-site-branding .ac-brand-tagline{
    font-size: 11px !important;
    line-height: 1.05 !important;
    letter-spacing: 0.08em !important;
  }

  #wrapper-navbar #main-navigation.navbar-nav > li > a{
    padding: 12px 0 !important;
  }

  /* Keep TranslatePress switcher above the header/menu */
  #trp-floater-ls{
    z-index: 999999 !important;
  }
}

@media (max-width: 420px){
  #wrapper-navbar .ac-site-branding .ac-brand-link{
    gap: 10px !important;
  }

  #wrapper-navbar .navbar-brand.site-branding.ac-site-branding{
    max-width: calc(100% - 52px) !important;
  }

  #wrapper-navbar .ac-site-branding .custom-logo{
    width: 40px !important;
    height: 40px !important;
  }

  #wrapper-navbar .ac-site-branding .ac-brand-title{
    font-size: 15px !important;
  }

  #wrapper-navbar .ac-site-branding .ac-brand-tagline{
    font-size: 10px !important;
    letter-spacing: 0.06em !important;
  }
}

/* =========================================================
   MOBILE HERO / TITLE NORMALIZATION
   Scope:
   - generic hero headings
   - homepage Elementor hero heading
   Goal:
   - clean wrapping
   - no awkward line breaks
   - centered breathing room on small screens
   - desktop untouched
   ========================================================= */

@media (max-width: 767.98px){

  /* Generic hero titles */
  .hero h1,
  .hero-title,
  .banner h1,
  .slider-content h1{
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    font-size: clamp(28px, 8vw, 40px) !important;
    line-height: 1.06 !important;
    letter-spacing: -0.02em !important;
    text-align: center !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
  }

  /* Homepage Elementor hero container */
  body.home .elementor-widget-heading .elementor-widget-container{
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  /* Homepage heading wrapper */
  body.home h4.elementor-heading-title.elementor-size-xxl{
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  /* Homepage clickable hero title */
  body.home h4.elementor-heading-title.elementor-size-xxl a{
    display: inline-block !important;
    max-width: 17ch !important;
    margin: 0 auto !important;
    padding: 8px 10px !important;
    font-size: clamp(28px, 8vw, 40px) !important;
    line-height: 1.06 !important;
    letter-spacing: -0.02em !important;
    text-transform: uppercase !important;
    text-align: center !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
  }

  /* Keep only one controlled break */
  body.home h4.elementor-heading-title.elementor-size-xxl br{
    display: block !important;
    margin: 8px 0 !important;
    content: "" !important;
  }

  body.home h4.elementor-heading-title.elementor-size-xxl br + br{
    display: none !important;
  }
}

@media (max-width: 479.98px){

  .hero h1,
  .hero-title,
  .banner h1,
  .slider-content h1{
    font-size: clamp(24px, 8.2vw, 32px) !important;
    line-height: 1.04 !important;
  }

  body.home .elementor-widget-heading .elementor-widget-container{
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  body.home h4.elementor-heading-title.elementor-size-xxl a{
    max-width: 15ch !important;
    padding: 6px 8px !important;
    font-size: clamp(24px, 8.2vw, 32px) !important;
    line-height: 1.04 !important;
  }

  body.home h4.elementor-heading-title.elementor-size-xxl br{
    margin: 6px 0 !important;
  }
}
/* DYB Footer utility mobile / social safety */
@media (max-width: 1024px){
  .dyb-footer-col-social .dyb-footer-social{
    flex-wrap: wrap;
    gap: 8px;
  }
}

@media (max-width: 640px){
  .dyb-footer-utility{
    padding: 10px 0;
  }

  .dyb-footer-utility .dyb-chip{
    width: 100%;
    justify-content: center;
    text-align: center;
  }

  .dyb-footer-col-social .dyb-social{
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
  }

  .dyb-footer-col-social .dyb-social svg{
    width: 15px;
    height: 15px;
  }
}








/* Footer social icons — inline SVG */
.dyb-footer-social{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  margin-top: 8px;
}

.dyb-footer-social .dyb-social{
  width: 34px;
  height: 34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.12);
  color: rgba(0,0,0,.75);
  text-decoration:none;
  transition: transform .15s ease, background .15s ease, color .15s ease, border-color .15s ease;
}

.dyb-footer-social .dyb-social svg{
  width: 16px;
  height: 16px;
  display:block;
}

.dyb-footer-social .dyb-social:hover{
  background: rgba(0,0,0,.06);
  border-color: rgba(0,0,0,.22);
  color: rgba(0,0,0,.90);
  transform: translateY(-1px);
}
/* Footer social icons — stable desktop, safe wrap on smaller widths */
.dyb-footer-col-social .dyb-footer-social{
  display: flex;
  align-items: center;
  gap: 8px;
}

.dyb-footer-col-social .dyb-social{
  flex: 0 0 34px;
}

/* Let icons wrap before they overflow */
@media (max-width: 1100px){
  .dyb-footer-col-social .dyb-footer-social{
    flex-wrap: wrap;
  }

  .dyb-footer-col-social .dyb-social{
    flex-basis: 32px;
    width: 32px;
    height: 32px;
  }

  .dyb-footer-col-social .dyb-social svg{
    width: 15px;
    height: 15px;
  }
}

/* =========================================================
   WOO ARCHIVE (Shop / Categories) — premium + clean (preprod)
   Pages: /shop/, /product-category/*, /product-tag/*
   Goal: match production rhythm without changing Woo logic.
   ========================================================= */

/* Header area: centered stack, controlled width, less empty space */
body.post-type-archive-product .woocommerce-products-header,
body.tax-product_cat .woocommerce-products-header,
body.tax-product_tag .woocommerce-products-header{
  max-width: 980px;
  margin: 0 auto;
  padding: 28px 18px 10px;
  text-align: center;
}

/* Title (if present) */
body.post-type-archive-product .woocommerce-products-header__title,
body.tax-product_cat .woocommerce-products-header__title,
body.tax-product_tag .woocommerce-products-header__title{
  display: block !important;
  font-size: clamp(30px, 3vw, 44px);
  letter-spacing: .06em;
  text-transform: uppercase;
  margin: 0 0 10px;
  line-height: 1.1;
}

/* Breadcrumbs under title */
body.post-type-archive-product .breadcrumbs,
body.tax-product_cat .breadcrumbs,
body.tax-product_tag .breadcrumbs{
  margin: 0 auto 16px !important;
  padding: 0 !important;
  background: none !important;
  box-shadow: none !important;
  opacity: .72;
}

/* Description text: readable line length */
body.post-type-archive-product .woocommerce-products-header .page-description,
body.tax-product_cat .woocommerce-products-header .page-description,
body.tax-product_tag .woocommerce-products-header .page-description{
  max-width: 760px;
  margin: 0 auto 14px;
  font-size: 15px;
  line-height: 1.7;
  opacity: .92;
}

/* Prevent overlap if any negative margins exist in content */
body.post-type-archive-product .woocommerce-products-header .page-description h1,
body.post-type-archive-product .woocommerce-products-header .page-description h2,
body.post-type-archive-product .woocommerce-products-header .page-description h3,
body.tax-product_cat .woocommerce-products-header .page-description h1,
body.tax-product_cat .woocommerce-products-header .page-description h2,
body.tax-product_cat .woocommerce-products-header .page-description h3,
body.tax-product_tag .woocommerce-products-header .page-description h1,
body.tax-product_tag .woocommerce-products-header .page-description h2,
body.tax-product_tag .woocommerce-products-header .page-description h3{
  margin-top: 0 !important;
}

/* Sorting row: clean alignment */
body.post-type-archive-product .wpopal-sorting,
body.tax-product_cat .wpopal-sorting,
body.tax-product_tag .wpopal-sorting{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 10px 0 18px;
  padding-top: 6px;
}

/* Order-by dropdown */
body.post-type-archive-product form.woocommerce-ordering,
body.tax-product_cat form.woocommerce-ordering,
body.tax-product_tag form.woocommerce-ordering{
  margin: 0 !important;
}

body.post-type-archive-product form.woocommerce-ordering select,
body.tax-product_cat form.woocommerce-ordering select,
body.tax-product_tag form.woocommerce-ordering select{
  min-width: 230px;
  border-radius: 10px;
  border: 1px solid rgba(0,0,0,.10);
  padding: 10px 12px;
  background: #fff;
}

/* Right controls (view + per-page) */
body .woo-display-mode,
body .woo-show-perpage{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  opacity: .85;
  white-space: nowrap;
}

/* =========================================================
   View mode icons (list / 2 / 3 / 4) — lightweight like production
   Assumes links have .view-cols-1..4 and .active
   ========================================================= */

body .woo-display-mode a{
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 22px;
  padding: 0 !important;
  border-radius: 6px;
  border: 1px solid rgba(0,0,0,.10);
  background: #fff;
  color: transparent; /* hide any text */
  text-decoration: none;
  overflow: hidden;
}

body .woo-display-mode a:hover{
  border-color: rgba(0,0,0,.22);
}

body .woo-display-mode a.active{
  border-color: rgba(0,0,0,.22);
  background: rgba(0,0,0,.03);
}

/* icon drawing base */
body .woo-display-mode a::before{
  content:"";
  width: 16px;
  height: 16px;
  display: block;
  border-radius: 0;
  background: rgba(0,0,0,.55);
}

/* list icon */
body .woo-display-mode a.view-cols-1::before{
  width: 16px;
  height: 12px;
  background:
    linear-gradient(#777,#777) 0 0/16px 2px no-repeat,
    linear-gradient(#777,#777) 0 5px/16px 2px no-repeat,
    linear-gradient(#777,#777) 0 10px/16px 2px no-repeat;
}

/* 2 grid */
body .woo-display-mode a.view-cols-2::before{
  background:
    linear-gradient(#777,#777) 0 0/6px 6px no-repeat,
    linear-gradient(#777,#777) 10px 0/6px 6px no-repeat,
    linear-gradient(#777,#777) 0 10px/6px 6px no-repeat,
    linear-gradient(#777,#777) 10px 10px/6px 6px no-repeat;
}

/* 3 grid */
body .woo-display-mode a.view-cols-3::before{
  background:
    linear-gradient(#777,#777) 0 0/5px 5px no-repeat,
    linear-gradient(#777,#777) 5.5px 0/5px 5px no-repeat,
    linear-gradient(#777,#777) 11px 0/5px 5px no-repeat,
    linear-gradient(#777,#777) 0 5.5px/5px 5px no-repeat,
    linear-gradient(#777,#777) 5.5px 5.5px/5px 5px no-repeat,
    linear-gradient(#777,#777) 11px 5.5px/5px 5px no-repeat,
    linear-gradient(#777,#777) 0 11px/5px 5px no-repeat,
    linear-gradient(#777,#777) 5.5px 11px/5px 5px no-repeat,
    linear-gradient(#777,#777) 11px 11px/5px 5px no-repeat;
}

/* 4 grid */
body .woo-display-mode a.view-cols-4::before{
  background:
    linear-gradient(#777,#777) 0 0/4px 4px no-repeat,
    linear-gradient(#777,#777) 4.2px 0/4px 4px no-repeat,
    linear-gradient(#777,#777) 8.4px 0/4px 4px no-repeat,
    linear-gradient(#777,#777) 12.6px 0/4px 4px no-repeat,

    linear-gradient(#777,#777) 0 4.2px/4px 4px no-repeat,
    linear-gradient(#777,#777) 4.2px 4.2px/4px 4px no-repeat,
    linear-gradient(#777,#777) 8.4px 4.2px/4px 4px no-repeat,
    linear-gradient(#777,#777) 12.6px 4.2px/4px 4px no-repeat,

    linear-gradient(#777,#777) 0 8.4px/4px 4px no-repeat,
    linear-gradient(#777,#777) 4.2px 8.4px/4px 4px no-repeat,
    linear-gradient(#777,#777) 8.4px 8.4px/4px 4px no-repeat,
    linear-gradient(#777,#777) 12.6px 8.4px/4px 4px no-repeat,

    linear-gradient(#777,#777) 0 12.6px/4px 4px no-repeat,
    linear-gradient(#777,#777) 4.2px 12.6px/4px 4px no-repeat,
    linear-gradient(#777,#777) 8.4px 12.6px/4px 4px no-repeat,
    linear-gradient(#777,#777) 12.6px 12.6px/4px 4px no-repeat;
}

/* =========================================================
   Per-page "Show 9 / 12 / 18 / 24" — lighter, less “pill”
   ========================================================= */

body .woo-show-perpage{
  gap: 8px;
}

body .woo-show-perpage a{
  min-width: 0;
  height: auto;
  padding: 0 2px !important;
  border: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  opacity: .85;
  text-decoration: none;
}

body .woo-show-perpage a:hover{
  opacity: 1;
  text-decoration: underline;
  text-underline-offset: 4px;
}

body .woo-show-perpage a.active{
  opacity: 1;
  text-decoration: underline;
  text-underline-offset: 4px;
  font-weight: 700;
}

/* Product grid spacing (subtle) */
body.post-type-archive-product ul.products li.product,
body.tax-product_cat ul.products li.product,
body.tax-product_tag ul.products li.product{
  margin-bottom: 26px !important;
}

/* Mobile: stack toolbar neatly */
@media (max-width: 820px){
  body.post-type-archive-product .wpopal-sorting,
  body.tax-product_cat .wpopal-sorting,
  body.tax-product_tag .wpopal-sorting{
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}









/* (REMOVED duplicate HEADER branding fix block — keep single source of truth in HEADER (Zoli) section) */



.dyb-products-slider{
  position: relative;
  overflow: hidden;
}

.dyb-products-slider .swiper-wrapper{ align-items: stretch; }
.dyb-products-slider .swiper-slide{ height: auto; }

/* Navigation must be above images but NOT block card actions */
.dyb-products-slider .swiper-button-prev,
.dyb-products-slider .swiper-button-next{
  z-index: 30;
}

/* Clean Swiper arrows (remove ugly white flash/boxes) */
.dyb-products-slider .swiper-button-prev,
.dyb-products-slider .swiper-button-next{
  /* kill browser default button skin */
  appearance: none;
  -webkit-appearance: none;
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none;

  /* usable hit area */
  width: 44px;
  height: 44px;
  border-radius: 999px;
  display: grid;
  place-items: center;
}

/* arrow glyph */
.dyb-products-slider .swiper-button-prev::after,
.dyb-products-slider .swiper-button-next::after{
  font-size: 18px;
  font-weight: 700;
  color: #111;
}

/* subtle hover only (no constant white bars) */
@media (hover:hover){
  .dyb-products-slider .swiper-button-prev:hover,
  .dyb-products-slider .swiper-button-next:hover{
    background: rgba(17,17,17,0.06) !important;
  }
}

/* accessible focus (clean) */
.dyb-products-slider .swiper-button-prev:focus-visible,
.dyb-products-slider .swiper-button-next:focus-visible{
  outline: 2px solid rgba(17,17,17,0.9);
  outline-offset: 3px;
}


/* Ensure product action overlays remain clickable */
.dyb-products-slider .product-wrap,
.dyb-products-slider .product-content,
.dyb-products-slider .product-image,
.dyb-products-slider .wpopal-button-actions,
.dyb-products-slider .wpopal-button-actions a,
.dyb-products-slider .wpopal-button-actions button{
  pointer-events: auto;
}

/* Prevent pseudo overlays from blocking clicks */
.dyb-products-slider .product-image:before,
.dyb-products-slider .product-image:after,
.dyb-products-slider .product-wrap:before,
.dyb-products-slider .product-wrap:after{
  pointer-events: none;
}

/* Make pagination easier to click (also reduces WAVE small text risk) */
.dyb-products-slider .swiper-pagination-bullet{
  width: 12px;
  height: 12px;
}











/* =========================================================
   YITH WISHLIST — FIX “extra tiny heart” without breaking toolbar icons
   Symptom: small stray heart appears outside product card on some products.
   Cause: YITH default output is rendered twice: (1) inside the theme action toolbar,
          (2) as a default YITH block in the loop. The default one leaks a small SVG/icon.
   Fix: hide the default loop output, keep ONLY the toolbar version.
   ========================================================= */

/* Hide YITH default wishlist output inside product loops */
.woocommerce ul.products li.product .yith-wcwl-add-to-wishlist{
  display: none !important;
}

/* Re-enable wishlist inside the theme action toolbar (the “original” icon button you want) */
.woocommerce ul.products li.product .wpopal-button-actions .yith-wcwl-add-to-wishlist,
.woocommerce ul.products li.product .wpopal-button-actions .yith-wcwl-add-to-wishlist *{
  display: initial !important;
}

/* Ensure the toolbar wishlist button remains clickable and centered */
.woocommerce ul.products li.product .wpopal-button-actions .yith-wcwl-add-to-wishlist a{
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}


/* =========================================================
   GIFT CARD PRODUCT PAGE (WooCommerce Gift Cards)
   Target: /produit/carte-cadeau/ (postid-40490)
   Goal: premium, clean, simple, responsive
   ========================================================= */

body.single-product.postid-40490 .wt_gc_gift_card_product_page_wrapper{
  max-width: 1200px;
  margin: 0 auto;
  padding: 32px 16px 56px;
}

body.single-product.postid-40490 .wt_gc_gift_card_product_page_title{
  max-width: 980px;
  margin: 0 auto 22px;
}

body.single-product.postid-40490 .wt_gc_gift_card_product_page_title h1{
  font-size: 32px;
  line-height: 1.15;
  letter-spacing: -0.02em;
  margin: 0;
}

/* Main 2-column layout */
body.single-product.postid-40490 .wt_gc_gift_card_product_page_bottom{
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 32px;
  align-items: start;
  margin-top: 18px;
}

@media (max-width: 980px){
  body.single-product.postid-40490 .wt_gc_gift_card_product_page_bottom{
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

/* Left: card preview container */
body.single-product.postid-40490 .wt_gc_gift_card_product_page_preview_wrapper{
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  padding: 18px;
  box-shadow: 0 8px 24px rgba(0,0,0,.06);
}

body.single-product.postid-40490 .wt_gc_gift_card_product_page_preview_wrapper img,
body.single-product.postid-40490 .wt_gc_gift_card_product_page_preview_wrapper svg{
  max-width: 100%;
  height: auto;
  display: block;
  border-radius: 12px;
}

/* Right: form block */
body.single-product.postid-40490 form.wt_gc_gift_card_form{
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  padding: 22px;
  box-shadow: 0 8px 24px rgba(0,0,0,.06);
}

/* Amount buttons (make them look like premium segmented controls) */
body.single-product.postid-40490 .wt_gc_amount{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 8px 0 18px;
}

/* Buttons/labels (plugin can output either) */
body.single-product.postid-40490 .wt_gc_amount .wt_gc_amount_button,
body.single-product.postid-40490 .wt_gc_amount input[type="radio"] + label{
  border: 1px solid rgba(0,0,0,.15);
  border-radius: 999px;
  padding: 9px 12px;
  background: #fff;
  cursor: pointer;
  font-weight: 600;
  font-size: 14px;
  line-height: 1;
}

body.single-product.postid-40490 .wt_gc_amount input[type="radio"]:checked + label{
  border-color: rgba(0,0,0,.65);
}

/* Inputs */
body.single-product.postid-40490 form.wt_gc_gift_card_form input[type="text"],
body.single-product.postid-40490 form.wt_gc_gift_card_form input[type="email"],
body.single-product.postid-40490 form.wt_gc_gift_card_form textarea{
  width: 100%;
  border: 1px solid rgba(0,0,0,.18);
  border-radius: 10px;
  padding: 12px 12px;
  outline: none;
  background: #fff;
}

body.single-product.postid-40490 form.wt_gc_gift_card_form input[type="text"]:focus,
body.single-product.postid-40490 form.wt_gc_gift_card_form input[type="email"]:focus,
body.single-product.postid-40490 form.wt_gc_gift_card_form textarea:focus{
  border-color: rgba(0,0,0,.55);
  box-shadow: 0 0 0 3px rgba(0,0,0,.08);
}

/* Button */
body.single-product.postid-40490 form.wt_gc_gift_card_form button.single_add_to_cart_button,
body.single-product.postid-40490 form.wt_gc_gift_card_form .single_add_to_cart_button{
  width: 100%;
  border-radius: 12px;
  padding: 14px 16px;
  font-weight: 700;
  letter-spacing: .01em;
}

/* =========================================================
   WISHLIST (YITH) — GIFT CARD SINGLE (postid-40490)
   Clean rewrite:
   - remove old grid/width logic
   - place wishlist on the SAME LINE as add-to-cart on desktop
   - keep mobile stacked/full width
   ========================================================= */

/* Reserve space for the wishlist button on desktop */
@media (min-width: 981px){
  body.single-product.postid-40490 form.wt_gc_gift_card_form button.single_add_to_cart_button,
  body.single-product.postid-40490 form.wt_gc_gift_card_form .single_add_to_cart_button{
    width: calc(100% - 96px) !important;
    margin-right: 96px !important;
  }

  /* Pull the YITH block onto the same line as the add-to-cart button */
  body.single-product.postid-40490 .summary .yith-wcwl-add-to-wishlist,
  body.single-product.postid-40490 .summary .yith-wcwl-add-button,
  body.single-product.postid-40490 .summary .yith-wcwl-wishlistaddedbrowse,
  body.single-product.postid-40490 .summary .yith-wcwl-wishlistexistsbrowse,
  body.single-product.postid-40490 .wt_gc_gift_card_product_page_bottom .yith-wcwl-add-to-wishlist,
  body.single-product.postid-40490 .wt_gc_gift_card_product_page_bottom .yith-wcwl-add-button,
  body.single-product.postid-40490 .wt_gc_gift_card_product_page_bottom .yith-wcwl-wishlistaddedbrowse,
  body.single-product.postid-40490 .wt_gc_gift_card_product_page_bottom .yith-wcwl-wishlistexistsbrowse{
    width: 80px !important;
    max-width: 80px !important;
    min-width: 80px !important;
    float: right !important;
    clear: none !important;
    margin: -58px 0 0 0 !important;
    padding: 0 !important;
    display: block !important;
    position: relative;
    z-index: 3;
  }
}

/* Neutralize leftovers from previous wishlist experiments */
body.single-product.postid-40490 .yith-wcwl-add-to-wishlist,
body.single-product.postid-40490 .yith-wcwl-add-button,
body.single-product.postid-40490 .yith-wcwl-wishlistaddedbrowse,
body.single-product.postid-40490 .yith-wcwl-wishlistexistsbrowse{
  grid-column: auto !important;
  justify-self: auto !important;
  margin-left: 0 !important;
  background: transparent !important;
}

body.single-product.postid-40490 .yith-wcwl-add-to-wishlist *::before,
body.single-product.postid-40490 .yith-wcwl-add-to-wishlist *::after{
  content: none !important;
  background: none !important;
}

/* Compact square wishlist button */
body.single-product.postid-40490 .yith-wcwl-add-to-wishlist .yith-wcwl-add-button,
body.single-product.postid-40490 .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistaddedbrowse,
body.single-product.postid-40490 .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistexistsbrowse{
  display: block !important;
  width: 80px !important;
}

body.single-product.postid-40490 .yith-wcwl-add-to-wishlist a.add_to_wishlist,
body.single-product.postid-40490 .yith-wcwl-add-to-wishlist a.remove_from_wishlist{
  width: 80px !important;
  height: 56px !important;
  min-height: 56px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(0,0,0,.15);
  border-radius: 12px;
  background: #ffffff !important;
  color: #2c2824 !important;
  text-decoration: none !important;
  box-shadow: 0 4px 14px rgba(0,0,0,.05);
}

body.single-product.postid-40490 .yith-wcwl-add-to-wishlist a.add_to_wishlist:hover,
body.single-product.postid-40490 .yith-wcwl-add-to-wishlist a.add_to_wishlist:focus-visible,
body.single-product.postid-40490 .yith-wcwl-add-to-wishlist a.remove_from_wishlist:hover,
body.single-product.postid-40490 .yith-wcwl-add-to-wishlist a.remove_from_wishlist:focus-visible{
  background: #2c2824 !important;
  color: #ffffff !important;
  border-color: #2c2824 !important;
  outline: none;
}

body.single-product.postid-40490 .yith-wcwl-add-to-wishlist svg,
body.single-product.postid-40490 .yith-wcwl-add-to-wishlist svg *{
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  color: currentColor;
}

/* Hide text on desktop so alignment stays clean */
@media (min-width: 981px){
  body.single-product.postid-40490 .yith-wcwl-add-to-wishlist a span{
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0,0,0,0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }
}

/* Mobile: normal stacked layout under the button */
@media (max-width: 980px){
  body.single-product.postid-40490 form.wt_gc_gift_card_form button.single_add_to_cart_button,
  body.single-product.postid-40490 form.wt_gc_gift_card_form .single_add_to_cart_button{
    width: 100% !important;
    margin-right: 0 !important;
  }

  body.single-product.postid-40490 .summary .yith-wcwl-add-to-wishlist,
  body.single-product.postid-40490 .summary .yith-wcwl-add-button,
  body.single-product.postid-40490 .summary .yith-wcwl-wishlistaddedbrowse,
  body.single-product.postid-40490 .summary .yith-wcwl-wishlistexistsbrowse,
  body.single-product.postid-40490 .wt_gc_gift_card_product_page_bottom .yith-wcwl-add-to-wishlist,
  body.single-product.postid-40490 .wt_gc_gift_card_product_page_bottom .yith-wcwl-add-button,
  body.single-product.postid-40490 .wt_gc_gift_card_product_page_bottom .yith-wcwl-wishlistaddedbrowse,
  body.single-product.postid-40490 .wt_gc_gift_card_product_page_bottom .yith-wcwl-wishlistexistsbrowse{
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    float: none !important;
    clear: both !important;
    margin: 12px 0 0 0 !important;
    display: block !important;
  }

  body.single-product.postid-40490 .yith-wcwl-add-to-wishlist .yith-wcwl-add-button,
  body.single-product.postid-40490 .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistaddedbrowse,
  body.single-product.postid-40490 .yith-wcwl-add-to-wishlist .yith-wcwl-wishlistexistsbrowse,
  body.single-product.postid-40490 .yith-wcwl-add-to-wishlist a.add_to_wishlist,
  body.single-product.postid-40490 .yith-wcwl-add-to-wishlist a.remove_from_wishlist{
    width: 100% !important;
  }

  body.single-product.postid-40490 .yith-wcwl-add-to-wishlist a span{
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    white-space: nowrap !important;
    border: 0 !important;
  }
}





/* =========================================================
   ABOUT PAGE — Premium typography & layout
   Target: /fr/a-propos/
   ========================================================= */

body.page-id-41457 .site-main,
body.page-id-41457 #main{
  padding-top: 28px;
  padding-bottom: 56px;
}

/* constrain content width + center */
body.page-id-41457 .entry-content{
  max-width: 920px;
  margin: 0 auto;
  padding: 0 16px;
}

/* H1 */
body.page-id-41457 .entry-content > h1{
  font-size: 44px;
  line-height: 1.1;
  letter-spacing: -0.02em;
  margin: 0 0 14px;
}

/* Intro paragraph (first paragraph after H1) */
body.page-id-41457 .entry-content > h1 + p{
  font-size: 18px;
  line-height: 1.65;
  color: rgba(0,0,0,.78);
  margin: 0 0 28px;
}

/* Section headings */
body.page-id-41457 .entry-content h2{
  font-size: 28px;
  line-height: 1.2;
  margin: 34px 0 12px;
  letter-spacing: -0.01em;
}

body.page-id-41457 .entry-content h3{
  font-size: 20px;
  line-height: 1.3;
  margin: 22px 0 8px;
}

/* Body text */
body.page-id-41457 .entry-content p,
body.page-id-41457 .entry-content li{
  font-size: 16px;
  line-height: 1.75;
}

/* Lists: cleaner spacing */
body.page-id-41457 .entry-content ul,
body.page-id-41457 .entry-content ol{
  margin: 10px 0 22px 20px;
}

body.page-id-41457 .entry-content li{
  margin: 6px 0;
}

/* Soft section separators (subtle, premium) */
body.page-id-41457 .entry-content h2{
  position: relative;
  padding-top: 18px;
}

body.page-id-41457 .entry-content h2::before{
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 72px;
  height: 2px;
  background: rgba(0,0,0,.08);
}

/* Mobile */
@media (max-width: 640px){
  body.page-id-41457 .entry-content > h1{
    font-size: 34px;
  }
  body.page-id-41457 .entry-content > h1 + p{
    font-size: 16px;
  }
  body.page-id-41457 .entry-content h2{
    font-size: 24px;
  }
}







/* A11Y: visually hidden utility */
.a11y-sr-only,
.sr-only{
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}







/* =========================================================
   GIFT CARD — WAVE contrast fix (text + placeholder)
   Target: /produit/carte-cadeau/ (postid-40490)
   Cause: plugin inline style sets color: rgb(153,153,153)
   ========================================================= */

body.single-product.postid-40490 input.wt_gc_gift_card_field,
body.single-product.postid-40490 textarea.wt_gc_gift_card_field{
  color: #1a1a1a !important; /* overrides rgb(153,153,153) */
}

/* Placeholders are often too light */
body.single-product.postid-40490 input.wt_gc_gift_card_field::placeholder,
body.single-product.postid-40490 textarea.wt_gc_gift_card_field::placeholder{
  color: #5a5a5a !important;
  opacity: 1 !important;
}

/* In case the plugin sets opacity inline */
body.single-product.postid-40490 input.wt_gc_gift_card_field[style*="opacity"],
body.single-product.postid-40490 textarea.wt_gc_gift_card_field[style*="opacity"]{
  opacity: 1 !important;
}









/* =========================================================
   DISABLED (moved to woocommerce-premium.css)
   Reason: avoid conflicts/duplicates that break /panier/ and /commande/
   If you need to edit cart/checkout layout, do it ONLY in woocommerce-premium.css
   ========================================================= */

/*
   LEGACY CART / CHECKOUT OVERRIDES — DISABLED ON PURPOSE
   Source of truth for /panier/ and /commande/: assets/css/woocommerce-premium.css
   Reason: this older custom.css block was still active and was overriding checkout
   spacing/layout (especially #order_review) with stronger selectors.
*/







/* =========================================================
   FIX: Remove the 4th “stray” wishlist heart under the 3 toolbar icons
   Keep ONLY the wishlist inside the toolbar (.wpopal-button-actions)
   Scope: DYB slider only (safe)
   ========================================================= */

/* Hide ALL wishlist blocks inside the slider card */
.dyb-products-slider .yith-wcwl-add-to-wishlist{
  display: none !important;
}

/* Re-enable wishlist ONLY inside the toolbar (the correct round button) */
.dyb-products-slider .wpopal-button-actions .yith-wcwl-add-to-wishlist{
  display: block !important;
}

/* Ensure the toolbar wishlist is properly centered/clickable */
.dyb-products-slider .wpopal-button-actions .yith-wcwl-add-to-wishlist a{
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}



/* =========================================================
   YITH Wishlist — keep only ONE heart icon inside the toolbar button
   (fix “two hearts inside the bubble”)
   ========================================================= */

/* 1) Kill any extra icon injected by pseudo-elements */
.dyb-products-slider .wpopal-button-actions .yith-wcwl-add-to-wishlist a.add_to_wishlist::before,
.dyb-products-slider .wpopal-button-actions .yith-wcwl-add-to-wishlist a.add_to_wishlist::after{
  content: none !important;
  display: none !important;
}

/* 2) Hide legacy font-icon wrapper if present (often the second heart) */
.dyb-products-slider .wpopal-button-actions .yith-wcwl-add-to-wishlist .yith-wcwl-icon{
  display: none !important;
}

/* 3) Keep the SVG icon visible (the one you actually want) */
.dyb-products-slider .wpopal-button-actions .yith-wcwl-add-to-wishlist svg.yith-wcwl-icon-svg{
  display: inline-block !important;
}




/* Make wishlist icon match other toolbar icons (white) */
.dyb-products-slider .wpopal-button-actions .yith-wcwl-add-to-wishlist a{
  color: #fff !important;
}

.dyb-products-slider .wpopal-button-actions .yith-wcwl-add-to-wishlist svg.yith-wcwl-icon-svg{
  stroke: currentColor !important;
  fill: none !important; /* outline heart like the others */
}

/* Wishlist icon color — force same as other toolbar icons */
.dyb-products-slider .wpopal-button-actions .yith-wcwl-add-to-wishlist svg,
.dyb-products-slider .wpopal-button-actions .yith-wcwl-add-to-wishlist svg *{
  stroke: #fff !important;
  fill: none !important;
}




/* =========================================================
   WOO ARCHIVE — Fix action icons alignment (Quick view + Cart)
   Cause: global button padding/line-height leaks into Zoli icon buttons (:before)
   ========================================================= */

body.post-type-archive-product ul.products li.product .wpopal-button-actions,
body.tax-product_cat ul.products li.product .wpopal-button-actions,
body.tax-product_tag ul.products li.product .wpopal-button-actions{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px;
}

/* Remove tooltip wrapper offsets that can shift blocks */
body.post-type-archive-product ul.products li.product .wpopal-button-actions .hint--top,
body.tax-product_cat ul.products li.product .wpopal-button-actions .hint--top,
body.tax-product_tag ul.products li.product .wpopal-button-actions .hint--top{
  margin: 0 !important;
}

/* Make each action a perfect square and center contents */
body.post-type-archive-product ul.products li.product .wpopal-button-actions .button-cart-action,
body.post-type-archive-product ul.products li.product .wpopal-button-actions .button-quickview-action,
body.post-type-archive-product ul.products li.product .wpopal-button-actions .button-wishlist-action,
body.tax-product_cat ul.products li.product .wpopal-button-actions .button-cart-action,
body.tax-product_cat ul.products li.product .wpopal-button-actions .button-quickview-action,
body.tax-product_cat ul.products li.product .wpopal-button-actions .button-wishlist-action,
body.tax-product_tag ul.products li.product .wpopal-button-actions .button-cart-action,
body.tax-product_tag ul.products li.product .wpopal-button-actions .button-quickview-action,
body.tax-product_tag ul.products li.product .wpopal-button-actions .button-wishlist-action{
  width: 50px;
  height: 50px;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
}

/* Force the actual clickable elements to be centered and NOT padded */
body.post-type-archive-product ul.products li.product .wpopal-button-actions .button-cart-action > a,
body.post-type-archive-product ul.products li.product .wpopal-button-actions .button-quickview-action > a,
body.post-type-archive-product ul.products li.product .wpopal-button-actions .button-wishlist-action a,
body.post-type-archive-product ul.products li.product .wpopal-button-actions .yith-wcqv-button,
body.tax-product_cat ul.products li.product .wpopal-button-actions .button-cart-action > a,
body.tax-product_cat ul.products li.product .wpopal-button-actions .button-quickview-action > a,
body.tax-product_cat ul.products li.product .wpopal-button-actions .button-wishlist-action a,
body.tax-product_cat ul.products li.product .wpopal-button-actions .yith-wcqv-button,
body.tax-product_tag ul.products li.product .wpopal-button-actions .button-cart-action > a,
body.tax-product_tag ul.products li.product .wpopal-button-actions .button-quickview-action > a,
body.tax-product_tag ul.products li.product .wpopal-button-actions .button-wishlist-action a,
body.tax-product_tag ul.products li.product .wpopal-button-actions .yith-wcqv-button{
  width: 50px;
  height: 50px;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 0 !important;
  font-size: 0 !important; /* icon is via :before */
  position: relative;
}

/* Center the icon font pseudo-elements perfectly */
body.post-type-archive-product ul.products li.product .wpopal-button-actions .button-cart-action > a::before,
body.post-type-archive-product ul.products li.product .wpopal-button-actions .yith-wcqv-button::before,
body.tax-product_cat ul.products li.product .wpopal-button-actions .button-cart-action > a::before,
body.tax-product_cat ul.products li.product .wpopal-button-actions .yith-wcqv-button::before,
body.tax-product_tag ul.products li.product .wpopal-button-actions .button-cart-action > a::before,
body.tax-product_tag ul.products li.product .wpopal-button-actions .yith-wcqv-button::before{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 18px;
  line-height: 1;
}


/* WOO ARCHIVE — remove the extra (black) YITH SVG heart behind the icon */
body.post-type-archive-product ul.products li.product .wpopal-button-actions .button-wishlist-action svg,
body.tax-product_cat ul.products li.product .wpopal-button-actions .button-wishlist-action svg,
body.tax-product_tag ul.products li.product .wpopal-button-actions .button-wishlist-action svg,
body.post-type-archive-product ul.products li.product .wpopal-button-actions .button-wishlist-action .yith-wcwl-icon,
body.tax-product_cat ul.products li.product .wpopal-button-actions .button-wishlist-action .yith-wcwl-icon,
body.tax-product_tag ul.products li.product .wpopal-button-actions .button-wishlist-action .yith-wcwl-icon{
  display: none !important;
}






/* WOO ARCHIVE — Wishlist heart should be white (SVG uses currentColor) */
body.post-type-archive-product ul.products li.product .wpopal-button-actions .button-wishlist-action a,
body.tax-product_cat ul.products li.product .wpopal-button-actions .button-wishlist-action a,
body.tax-product_tag ul.products li.product .wpopal-button-actions .button-wishlist-action a,
body.post-type-archive-product ul.products li.product .yith-wcwl-add-to-wishlist a,
body.tax-product_cat ul.products li.product .yith-wcwl-add-to-wishlist a,
body.tax-product_tag ul.products li.product .yith-wcwl-add-to-wishlist a{
  color: #fff !important; /* drives stroke="currentColor" */
}

/* Ensure the SVG itself obeys the color */
body.post-type-archive-product ul.products li.product .yith-wcwl-add-to-wishlist svg,
body.tax-product_cat ul.products li.product .yith-wcwl-add-to-wishlist svg,
body.tax-product_tag ul.products li.product .yith-wcwl-add-to-wishlist svg{
  stroke: currentColor !important;
  fill: none !important;
}



/* WOO ARCHIVE (list view / 1 col) — ensure Add to cart text is readable */
body.post-type-archive-product a.button.product_type_simple.add_to_cart_button,
body.post-type-archive-product a.button.product_type_variable.add_to_cart_button,
body.post-type-archive-product a.button.product_type_simple.ajax_add_to_cart,
body.post-type-archive-product a.button.product_type_variable,
body.tax-product_cat a.button.product_type_simple.add_to_cart_button,
body.tax-product_cat a.button.product_type_variable.add_to_cart_button,
body.tax-product_cat a.button.product_type_simple.ajax_add_to_cart,
body.tax-product_cat a.button.product_type_variable,
body.tax-product_tag a.button.product_type_simple.add_to_cart_button,
body.tax-product_tag a.button.product_type_variable.add_to_cart_button,
body.tax-product_tag a.button.product_type_simple.ajax_add_to_cart,
body.tax-product_tag a.button.product_type_variable{
  color: #fff !important;
}

/* Keep it white on hover/focus too */
body.post-type-archive-product a.button.product_type_simple.add_to_cart_button:hover,
body.post-type-archive-product a.button.product_type_variable.add_to_cart_button:hover,
body.post-type-archive-product a.button.product_type_simple.ajax_add_to_cart:hover,
body.post-type-archive-product a.button.product_type_variable:hover,
body.tax-product_cat a.button.product_type_simple.add_to_cart_button:hover,
body.tax-product_cat a.button.product_type_variable.add_to_cart_button:hover,
body.tax-product_cat a.button.product_type_simple.ajax_add_to_cart:hover,
body.tax-product_cat a.button.product_type_variable:hover,
body.tax-product_tag a.button.product_type_simple.add_to_cart_button:hover,
body.tax-product_tag a.button.product_type_variable.add_to_cart_button:hover,
body.tax-product_tag a.button.product_type_simple.ajax_add_to_cart:hover,
body.tax-product_tag a.button.product_type_variable:hover{
  color: #fff !important;
}




/* WOO ARCHIVE — unified thumbnails ONLY for grid views (3/4 cols) */
body.post-type-archive-product ul.products.columns-3 li.product .product-image,
body.post-type-archive-product ul.products.columns-4 li.product .product-image,
body.tax-product_cat ul.products.columns-3 li.product .product-image,
body.tax-product_cat ul.products.columns-4 li.product .product-image,
body.tax-product_tag ul.products.columns-3 li.product .product-image,
body.tax-product_tag ul.products.columns-4 li.product .product-image{
  aspect-ratio: 4 / 5;
  width: 100%;
  overflow: hidden;
}

body.post-type-archive-product ul.products.columns-3 li.product .product-image img,
body.post-type-archive-product ul.products.columns-4 li.product .product-image img,
body.tax-product_cat ul.products.columns-3 li.product .product-image img,
body.tax-product_cat ul.products.columns-4 li.product .product-image img,
body.tax-product_tag ul.products.columns-3 li.product .product-image img,
body.tax-product_tag ul.products.columns-4 li.product .product-image img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  display: block;
}

/* 1-col / 2-col: do NOT force height */
body.post-type-archive-product ul.products.columns-1 li.product .product-image,
body.post-type-archive-product ul.products.columns-2 li.product .product-image,
body.tax-product_cat ul.products.columns-1 li.product .product-image,
body.tax-product_cat ul.products.columns-2 li.product .product-image,
body.tax-product_tag ul.products.columns-1 li.product .product-image,
body.tax-product_tag ul.products.columns-2 li.product .product-image{
  aspect-ratio: auto;
}

body.post-type-archive-product ul.products.columns-1 li.product .product-image img,
body.post-type-archive-product ul.products.columns-2 li.product .product-image img,
body.tax-product_cat ul.products.columns-1 li.product .product-image img,
body.tax-product_cat ul.products.columns-2 li.product .product-image img,
body.tax-product_tag ul.products.columns-1 li.product .product-image img,
body.tax-product_tag ul.products.columns-2 li.product .product-image img{
  height: auto !important;
  object-fit: contain;
}

/* WOO ARCHIVE — make product titles more readable (all views) */
body.post-type-archive-product ul.products li.product h3.woocommerce-loop-product__title,
body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product h3.woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
body.tax-product_tag ul.products li.product h3.woocommerce-loop-product__title,
body.tax-product_tag ul.products li.product .woocommerce-loop-product__title{
  font-size: 16px !important;   /* was ~13px */
  font-weight: 600 !important;  /* stronger */
  line-height: 1.25 !important;
  letter-spacing: 0.1px;
  margin: 10px 0 6px !important;
  color: #111 !important;
}

/* Optional: slightly bigger on desktop wide screens */
@media (min-width: 1200px){
  body.post-type-archive-product ul.products li.product h3.woocommerce-loop-product__title,
  body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
  body.tax-product_cat ul.products li.product h3.woocommerce-loop-product__title,
  body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
  body.tax-product_tag ul.products li.product h3.woocommerce-loop-product__title,
  body.tax-product_tag ul.products li.product .woocommerce-loop-product__title{
    font-size: 17px !important;
  }
}




/* HOME (front page) — product slider title readability */
body.home .swiper-slide h3.woocommerce-loop-product__title,
body.home .swiper-slide .woocommerce-loop-product__title,
body.home .swiper-slide h3.woocommerce-loop-product__title a,
body.home .swiper-slide .woocommerce-loop-product__title a{
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  color: #111 !important;
}






/* LA BOUTIQUE only — make the intro H2 bigger/bolder */
body.post-type-archive-product .woocommerce-products-header .page-description > h2{
  font-size: 20px !important;   /* increase */
  font-weight: 700 !important;  /* bold */
  line-height: 1.25 !important;
  margin: 0 0 10px !important;
  color: #111 !important;
}


/* =========================================================
   WOO SINGLE PRODUCT — center like production (all products)
   Scope: /produit/* (desktop + mobile)
   Goal: gallery + summary centered, consistent gutters, tabs/related aligned
   ========================================================= */

/* 1) Center the whole product page content */
body.single-product .site-content > .container,
body.single-product #content > .container{
  max-width: var(--dyb-container) !important; /* uses your token (1320px) */
  width: 100% !important;
}

/* Add consistent left/right gutters on desktop too */
body.single-product .site-content,
body.single-product #content{
  padding-left: var(--dyb-gutter);
  padding-right: var(--dyb-gutter);
}

/* 2) Center the Woo product wrapper */
body.single-product .woocommerce div.product{
  max-width: 1200px;           /* closer to production feel */
  margin-left: auto !important;
  margin-right: auto !important;
}

/* 3) Desktop layout: stable 2 columns (gallery | summary) */
@media (min-width: 992px){
  body.single-product .woocommerce div.product{
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    column-gap: 40px;
    row-gap: 18px;
    align-items: start;
  }

  /* Put gallery and summary in the grid columns */
  body.single-product .woocommerce div.product .woocommerce-product-gallery{
    grid-column: 1;
  }
  body.single-product .woocommerce div.product .summary{
    grid-column: 2;
  }
}

/* 4) Mobile: let it stack naturally and keep gutters */
@media (max-width: 991.98px){
  body.single-product .woocommerce div.product{
    display: block;
    max-width: 100%;
  }
}

/* 5) Tabs + related products must follow the same centered width */
body.single-product .woocommerce .woocommerce-tabs,
body.single-product .woocommerce .related,
body.single-product .woocommerce .up-sells{
  max-width: 1200px;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Optional: reduce the “too-left” feeling by killing any theme negative margins */
body.single-product .woocommerce,
body.single-product .woocommerce div.product,
body.single-product .woocommerce div.product .summary,
body.single-product .woocommerce div.product .woocommerce-product-gallery{
  margin-left: auto;
  margin-right: auto;
}




/* =========================================================
   WOO SINGLE PRODUCT — fix "too left" by centering the THEME grid wrapper
   (Zoli uses Bootstrap-like rows/cols: wp-col-*)
   ========================================================= */

/* Center the main content column that contains Woo */
body.single-product #primary,
body.single-product .content-area,
body.single-product .site-main{
  max-width: 1200px;
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
}

/* If the theme wraps Woo in a .row, kill full-width stretching */
body.single-product .site-main > .row,
body.single-product #primary > .row{
  max-width: 1200px;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Remove “left bias” padding on the inner column */
body.single-product #primary > .row > [class*="wp-col-"],
body.single-product .site-main > .row > [class*="wp-col-"]{
  padding-left: 0 !important;
  padding-right: 0 !important;
}






/* =========================================================
   SINGLE PRODUCT — Related products icon buttons alignment
   (Fix quick view + add to cart icons looking wrong in "Produits apparentés")
   ========================================================= */

body.single-product .related.products .wpopal-button-actions,
body.single-product .up-sells.products .wpopal-button-actions{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px;
}

/* Each icon wrapper = 50x50 */
body.single-product .related.products .wpopal-button-actions > div,
body.single-product .up-sells.products .wpopal-button-actions > div{
  width: 50px;
  height: 50px;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Click targets: remove inherited button padding and center */
body.single-product .related.products .wpopal-button-actions a,
body.single-product .up-sells.products .wpopal-button-actions a{
  width: 50px;
  height: 50px;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 0 !important;
  font-size: 0 !important; /* icons are via :before */
  position: relative;
}

/* Center pseudo icons */
body.single-product .related.products .wpopal-button-actions a::before,
body.single-product .up-sells.products .wpopal-button-actions a::before{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 18px;
  line-height: 1;
}





/* HOME — safe image cropping rules (no layout/flex overrides) */
body.home .elementor-background-slideshow,
body.home .elementor-background-slideshow__slide,
body.home .elementor-background-slideshow__slide__image{
  height: 100% !important;
}

/* Slider: crop product images nicely without touching the slider engine */
body.home .products .product-wrap .product-image,
body.home .products .product .product-image{
  overflow: hidden;
}

body.home .products .product-wrap .product-image img,
body.home .products .product .product-image img{
  width: 100% !important;
  height: auto !important;
  display: block;
}






/* HOME — align 3 cards row with hero/slider container without killing mobile gutters */
body.home section.dyb-home-cards{
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.home .dyb-home-cards__grid{
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

@media (max-width: 1024px){
  body.home section.dyb-home-cards{
    max-width: none;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

@media (max-width: 640px){
  body.home section.dyb-home-cards{
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}






/* =========================================================
   HOME — Latest posts block (shortcode: dyb_latest_posts)
   Responsive normalization:
   - desktop 3 cols
   - tablet 2 cols
   - mobile 1 col
   ========================================================= */

.dyb-latest-posts{
  padding: 34px 0 10px;
}

.dyb-latest-posts__grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.dyb-latest-post{
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: var(--dyb-radius);
  overflow: hidden;
  box-shadow: var(--dyb-shadow);
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.dyb-latest-post__media{
  display: block !important;
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

.dyb-latest-post__media img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.dyb-latest-post__body{
  padding: 16px 18px 18px;
}

.dyb-latest-post__kicker{
  margin: 0 0 10px;
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: .75;
}

.dyb-latest-post__title{
  margin: 0 0 10px;
  font-size: 24px;
  line-height: 1.15;
  letter-spacing: -0.01em;
}

.dyb-latest-post__title a{
  text-decoration: none;
}

.dyb-latest-post__excerpt{
  margin: 0 0 12px;
  font-size: 14px;
  line-height: 1.55;
  opacity: .88;
}

.dyb-latest-post__cta{
  text-decoration: none;
  border-bottom: 1px solid rgba(0,0,0,.25);
  padding-bottom: 2px;
  font-size: 13px;
  font-weight: 600;
}

@media (max-width: 1024px){
  .dyb-latest-posts__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }
}

@media (max-width: 640px){
  .dyb-latest-posts__grid{
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .dyb-latest-post__body{
    padding: 14px 14px 16px;
  }

  .dyb-latest-post__title{
    font-size: 22px;
  }
}









/* A11Y: Instagram follow button contrast */
.sbi_follow_btn a,
.sbi_followbtn a,
a.sbi_follow_btn,
#sb_instagram .sbi_follow_btn a {
  background: #111 !important;
  color: #fff !important;
  border: 2px solid #111 !important;
  text-decoration: none !important;
}

.sbi_follow_btn a:hover,
.sbi_followbtn a:hover,
#sb_instagram .sbi_follow_btn a:hover,
.sbi_follow_btn a:focus-visible,
.sbi_followbtn a:focus-visible,
#sb_instagram .sbi_follow_btn a:focus-visible {
  background: #000 !important;
  color: #fff !important;
  outline: 3px solid #fff !important;
  outline-offset: 2px;
}



/* A11Y: links must not rely on color alone */
.entry-content a:not(.button):not(.btn):not(.wp-block-button__link):not(.elementor-button):not(.woocommerce-button),
.woocommerce-Tabs-panel a:not(.button):not(.btn):not(.wp-block-button__link):not(.elementor-button):not(.woocommerce-button),
.woocommerce-product-details__short-description a:not(.button):not(.btn):not(.wp-block-button__link):not(.elementor-button):not(.woocommerce-button) {
  text-decoration: underline;
  text-underline-offset: 0.15em;
  text-decoration-thickness: 0.08em;
}

.entry-content a:not(.button):not(.btn):not(.wp-block-button__link):not(.elementor-button):not(.woocommerce-button):hover,
.entry-content a:not(.button):not(.btn):not(.wp-block-button__link):not(.elementor-button):not(.woocommerce-button):focus-visible {
  text-decoration-thickness: 0.12em;
}









/* =========================================================
   HEADER MULTI-LEVEL DROPDOWN FIX (safe)
   Purpose: allow 3rd-level submenu under existing desktop header
   Scope: desktop header nav only
   ========================================================= */
@media (min-width: 992px){
  #wrapper-navbar .navbar-nav li.dropdown{
    position: relative;
  }

  #wrapper-navbar .navbar-nav li.dropdown > .dropdown-menu{
    display: none;
  }

  #wrapper-navbar .navbar-nav li.dropdown.is-open > .dropdown-menu{
    display: block;
  }

  /* 3rd level submenu: open to the right of its parent item */
  #wrapper-navbar .navbar-nav .dropdown-menu li.dropdown > .dropdown-menu{
    top: -1px;
    left: 100%;
    right: auto;
    margin-top: 0;
    margin-left: 0;
    min-width: 220px;
  }

  /* Nested parent link keeps same look as other dropdown items */
  #wrapper-navbar .navbar-nav .dropdown-menu > li > a.dropdown-toggle{
    position: relative;
    padding-right: 34px !important;
  }

  /* Arrow indicator for submenu parents */
  #wrapper-navbar .navbar-nav .dropdown-menu > li > a.dropdown-toggle::after{
    content: "";
    position: absolute;
    top: 50%;
    right: 14px;
    width: 7px;
    height: 7px;
    border-top: 1.5px solid currentColor;
    border-right: 1.5px solid currentColor;
    transform: translateY(-50%) rotate(45deg);
    opacity: .8;
  }

  /* Prevent clipping of nested menus */
  #wrapper-navbar .navbar-nav .dropdown-menu{
    overflow: visible;
  }
}







/* =========================================================
   PHASE 3 — Woo surface bridge fixes
   Safe overrides only. Keep old theme utilities intact.
   ========================================================= */

body.woocommerce-page #main,
body.single-product #main,
body.post-type-archive-product #main,
body.tax-product_cat #main,
body.tax-product_tag #main {
  background: transparent;
}

body.post-type-archive-product .page-title,
body.tax-product_cat .page-title,
body.tax-product_tag .page-title,
body.single-product .page-title {
  font-family: "Cormorant Garamond", Georgia, serif;
}









/* Homepage + shared newsletter polish */
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-actions{gap:14px}
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home .dyb-v2-inline-link{display:inline-flex;align-items:center}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form{
  max-width:460px;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form .mc4wp-form,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form form{
  display:block;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form label{
  display:block;
  margin:0 0 8px;
  color:#f3eadf;
  font-size:14px;
  line-height:1.5;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="text"],
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="email"],
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="tel"]{
  width:100%;
  margin:0 0 12px;
  border:1px solid rgba(255,255,255,.18);
  background:#f7f2ec;
  color:#241f1a;
  -webkit-text-fill-color:#241f1a;
  caret-color:#241f1a;
  opacity:1;
  padding:14px 16px;
  box-sizing:border-box;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="text"]:focus,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="email"]:focus,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="tel"]:focus,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="text"]:active,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="email"]:active,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="tel"]:active{
  background:#f7f2ec;
  color:#241f1a;
  -webkit-text-fill-color:#241f1a;
  caret-color:#241f1a;
  border-color:rgba(255,255,255,.28);
  box-shadow:0 0 0 3px rgba(245,239,232,.12);
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="text"]:-webkit-autofill,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="email"]:-webkit-autofill,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="tel"]:-webkit-autofill,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="text"]:-webkit-autofill:hover,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="email"]:-webkit-autofill:hover,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="tel"]:-webkit-autofill:hover,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="text"]:-webkit-autofill:focus,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="email"]:-webkit-autofill:focus,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="tel"]:-webkit-autofill:focus{
  -webkit-text-fill-color:#241f1a;
  caret-color:#241f1a;
  box-shadow:0 0 0 1000px #f7f2ec inset;
  transition:background-color 9999s ease-out 0s;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input::placeholder{
  color:#8b8177;
  opacity:1;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form input[type="submit"],
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form button,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form .mc4wp-form input[type="submit"]{
  border:none;
  background:#f5efe8;
  color:#241f1a;
  padding:14px 20px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:12px;
  cursor:pointer;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form p{
  margin:0 0 10px;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-testimonials-v2 .dyb-v2-testimonial-card p{
  min-height:120px;
}

@media (max-width:680px){
  .dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form{
    max-width:none;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-testimonials-v2 .dyb-v2-testimonial-card p{
    min-height:0;
  }
}

/* =========================================================
   V2 HEADER — Wishlist count badge
   Purpose: show the current YITH wishlist count beside the heart icon
   Scope: V2 header only
   ========================================================= */

.dyb-v2-actions-icons-refined .dyb-v2-wishlistbtn{
  position: relative;
}

.dyb-v2-actions-icons-refined .dyb-v2-wishlistbtn em{
  position: absolute;
  top: -5px;
  right: -6px;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: 999px;
  background: #111;
  color: #fff;
  font-style: normal;
  font-weight: 700;
  font-size: 10px;
  line-height: 16px;
  text-align: center;
  pointer-events: none;
}

@media (max-width: 640px){
  .dyb-v2-actions-icons-refined .dyb-v2-wishlistbtn em{
    top: -4px;
    right: -5px;
  }
}


/* =========================================================
   GLOBAL STICKY HEADER — NORMAL ZOLI PAGES (single source)
   Goal:
   - keep normal pages sticky
   - avoid double spacing systems
   - keep V2 pages excluded
   ========================================================= */

body:not(.dyb-v2-body):not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) #wrapper-navbar{
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 10000 !important;
  background: #fcfaf7;
  border-bottom: 1px solid rgba(44,40,36,.08);
}

/* Admin bar offset */
body.admin-bar:not(.dyb-v2-body):not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) #wrapper-navbar{
  top: var(--wp-admin--admin-bar--height, 32px);
}

@media (max-width: 782px){
  body.admin-bar:not(.dyb-v2-body):not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) #wrapper-navbar{
    top: var(--wp-admin--admin-bar--height, 46px);
  }
}

/* Use ONE spacing method only: body padding-top */
body:not(.dyb-v2-body):not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2){
  padding-top: 96px;
}

@media (max-width: 991.98px){
  body:not(.dyb-v2-body):not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2){
    padding-top: 74px;
  }
}

/* Keep header panels above content */
body:not(.dyb-v2-body):not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) #wrapper-navbar .navbar,
body:not(.dyb-v2-body):not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) #wrapper-navbar .dropdown-menu,
body:not(.dyb-v2-body):not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) #wrapper-navbar .sub-menu,
body:not(.dyb-v2-body):not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) #wrapper-navbar .ac-search-panel,
body:not(.dyb-v2-body):not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) #wrapper-navbar .ac-dd-panel{
  overflow: visible;
  z-index: 10020 !important;
}
/* =========================================================
   GLOBAL LINK COLOR SYSTEM — brand beige/gold (content links only)
   Purpose: replace default blue links on pages, blog posts, Elementor text,
   WooCommerce content areas, and tables of contents without affecting buttons,
   header menus, footer menus, or utility/action icons.
   ========================================================= */
:root{
  --dyb-link: #b08b61;
  --dyb-link-hover: #8f6f4f;
  --dyb-link-soft-bg: rgba(176,139,97,.08);
}

/* Base readable content links */
main :where(
  .entry-content a,
  .elementor-widget-text-editor a,
  .elementor-text-editor a,
  .woocommerce-tabs a,
  .woocommerce-MyAccount-content a,
  .woocommerce-cart-form a,
  .cart_totals a,
  .shop_table a,
  .woocommerce-checkout a,
  .woocommerce-form-login a,
  .woocommerce-form-coupon a,
  .woocommerce-terms-and-conditions-wrapper a,
  .post-content a,
  .page-content a,
  .textwidget a,
  .widget_text a,
  .wp-block-post-content a,
  .wp-block-table a,
  .comment-content a,
  .entry-summary a
):not(.button):not(.btn):not([class*="button"]):not(.added_to_cart):not(.remove):not(.woocommerce-LoopProduct-link){
  color: var(--dyb-link);
  text-decoration-color: color-mix(in srgb, var(--dyb-link) 55%, transparent);
  transition: color .18s ease, text-decoration-color .18s ease, background-color .18s ease;
}

main :where(
  .entry-content a,
  .elementor-widget-text-editor a,
  .elementor-text-editor a,
  .woocommerce-tabs a,
  .woocommerce-MyAccount-content a,
  .woocommerce-cart-form a,
  .cart_totals a,
  .shop_table a,
  .woocommerce-checkout a,
  .woocommerce-form-login a,
  .woocommerce-form-coupon a,
  .woocommerce-terms-and-conditions-wrapper a,
  .post-content a,
  .page-content a,
  .textwidget a,
  .widget_text a,
  .wp-block-post-content a,
  .wp-block-table a,
  .comment-content a,
  .entry-summary a
):not(.button):not(.btn):not([class*="button"]):not(.added_to_cart):not(.remove):not(.woocommerce-LoopProduct-link):hover,
main :where(
  .entry-content a,
  .elementor-widget-text-editor a,
  .elementor-text-editor a,
  .woocommerce-tabs a,
  .woocommerce-MyAccount-content a,
  .woocommerce-cart-form a,
  .cart_totals a,
  .shop_table a,
  .woocommerce-checkout a,
  .woocommerce-form-login a,
  .woocommerce-form-coupon a,
  .woocommerce-terms-and-conditions-wrapper a,
  .post-content a,
  .page-content a,
  .textwidget a,
  .widget_text a,
  .wp-block-post-content a,
  .wp-block-table a,
  .comment-content a,
  .entry-summary a
):not(.button):not(.btn):not([class*="button"]):not(.added_to_cart):not(.remove):not(.woocommerce-LoopProduct-link):focus-visible{
  color: var(--dyb-link-hover);
  text-decoration-color: currentColor;
}

/* Small in-content helper links / table-of-contents blocks */
main :where(.elementor-widget-text-editor, .entry-content, .post-content, .page-content) ul a,
main :where(.elementor-widget-text-editor, .entry-content, .post-content, .page-content) ol a{
  text-underline-offset: .16em;
}

/* Keep buttons, header/footer navigation, action icons, and destructive Woo links untouched */
#wrapper-navbar a,
.site-header a,
.dyb-v2-header a,
footer a,
.site-footer a,
.dyb-footer a,
.dyb-v2-footer a,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.button,
.btn,
.remove,
.product-remove a,
.woocommerce-message a.button,
.woocommerce-info a.button,
.woocommerce-error a.button,
.ac-action-btn,
.dyb-v2-iconbtn,
.dyb-v2-menu-link,
.dyb-v2-inline-link{
  transition: inherit;
}

/* =========================================================
   WISHLIST PAGE — spacing and breathing refinement only
   Scope: /favoris/ wishlist table layout
   ========================================================= */
body.page-id-103314 .wishlist_table,
body.page-id-103314 .wishlist_table.shop_table,
body.woocommerce-wishlist .wishlist_table,
body.woocommerce-wishlist .wishlist_table.shop_table{
  width: 100%;
  table-layout: fixed;
}

body.page-id-103314 .wishlist_table th,
body.page-id-103314 .wishlist_table td,
body.woocommerce-wishlist .wishlist_table th,
body.woocommerce-wishlist .wishlist_table td{
  padding-top: 24px;
  padding-bottom: 24px;
  vertical-align: middle;
}

body.page-id-103314 .wishlist_table td.product-remove,
body.woocommerce-wishlist .wishlist_table td.product-remove{
  width: 44px;
  text-align: center;
}

body.page-id-103314 .wishlist_table td.product-thumbnail,
body.woocommerce-wishlist .wishlist_table td.product-thumbnail{
  width: 112px;
  padding-right: 18px;
}

body.page-id-103314 .wishlist_table td.product-thumbnail a,
body.woocommerce-wishlist .wishlist_table td.product-thumbnail a{
  display: block;
  width: 80px;
}

body.page-id-103314 .wishlist_table td.product-thumbnail a img,
body.woocommerce-wishlist .wishlist_table td.product-thumbnail a img{
  display: block;
  width: 80px;
  max-width: none;
  height: auto;
  border-radius: 8px;
}

body.page-id-103314 .wishlist_table td.product-name,
body.woocommerce-wishlist .wishlist_table td.product-name{
  width: 32%;
  padding-left: 12px;
}

body.page-id-103314 .wishlist_table td.product-name a:first-child,
body.woocommerce-wishlist .wishlist_table td.product-name a:first-child{
  display: inline-block;
  margin-bottom: 14px;
  line-height: 1.45;
}

body.page-id-103314 .wishlist_table td.product-name .button,
body.page-id-103314 .wishlist_table td.product-name .yith-wcqv-button,
body.woocommerce-wishlist .wishlist_table td.product-name .button,
body.woocommerce-wishlist .wishlist_table td.product-name .yith-wcqv-button{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 18px;
  margin-top: 2px;
}

body.page-id-103314 .wishlist_table td.product-price,
body.page-id-103314 .wishlist_table td.product-stock-status,
body.page-id-103314 .wishlist_table td.product-add-to-cart,
body.woocommerce-wishlist .wishlist_table td.product-price,
body.woocommerce-wishlist .wishlist_table td.product-stock-status,
body.woocommerce-wishlist .wishlist_table td.product-add-to-cart{
  font-size: 16px;
  line-height: 1.55;
}

body.page-id-103314 .wishlist_table td.product-add-to-cart a,
body.woocommerce-wishlist .wishlist_table td.product-add-to-cart a{
  display: inline-block;
  line-height: 1.55;
}

@media (max-width: 767px){
  body.page-id-103314 .wishlist_table,
  body.page-id-103314 .wishlist_table.shop_table,
  body.woocommerce-wishlist .wishlist_table,
  body.woocommerce-wishlist .wishlist_table.shop_table{
    table-layout: auto;
  }

  body.page-id-103314 .wishlist_table td,
  body.woocommerce-wishlist .wishlist_table td{
    padding-top: 16px;
    padding-bottom: 16px;
  }

  body.page-id-103314 .wishlist_table td.product-thumbnail,
  body.woocommerce-wishlist .wishlist_table td.product-thumbnail{
    width: 88px;
    padding-right: 12px;
  }

  body.page-id-103314 .wishlist_table td.product-thumbnail a,
  body.woocommerce-wishlist .wishlist_table td.product-thumbnail a{
    width: 64px;
  }

  body.page-id-103314 .wishlist_table td.product-thumbnail a img,
  body.woocommerce-wishlist .wishlist_table td.product-thumbnail a img{
    width: 64px;
  }

  body.page-id-103314 .wishlist_table td.product-name,
  body.woocommerce-wishlist .wishlist_table td.product-name{
    width: auto;
    padding-left: 8px;
  }
}

/* =========================================================
   MERGED GLOBAL V2 LAYOUT LAYER
   Source merged into custom.css so header, footer, newsletter,
   sticky header, and V2 page shell all live in one main CSS file.
   Original source: assets/css/dyb-v2-pages.css
   ========================================================= */

:root {
  --dyb-v2-bg: #f8f4ef;
  --dyb-v2-bg-soft: #efe8df;
  --dyb-v2-text: #2c2824;
  --dyb-v2-muted: #7c7268;
  --dyb-v2-line: rgba(44, 40, 36, 0.1);
  --dyb-v2-dark: #2c2824;
  --dyb-v2-accent: #b08b61;
}

body.dyb-v2-body {
  background: var(--dyb-v2-bg);
}

.dyb-v2-header,
.dyb-v2-footer,
.dyb-v2-page {
  font-family: Inter, Arial, sans-serif;
  color: var(--dyb-v2-text);
}

.dyb-v2-container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 28px;
}

.dyb-v2-announcement {
  background: #2c2824;
  color: #fdfbf8;
}

.dyb-v2-announcement p {
  margin: 0;
  padding: 9px 0;
  text-align: center;
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  opacity: 0.82;
}

.dyb-v2-navwrap {
  position: sticky;
  top: 0;
  z-index: 99;
  background: #fdfbf8;
  border-bottom: 1px solid var(--dyb-v2-line);
}

.dyb-v2-navbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 72px;
  gap: 24px;
}

.dyb-v2-brand {
  display: flex;
  align-items: center;
  min-width: 240px;
}

.dyb-v2-logo-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
  color: inherit;
}

.dyb-v2-logo-wrap .custom-logo {
  max-height: 46px;
  width: auto;
}

.dyb-v2-brand-copy {
  display: flex;
  flex-direction: column;
  line-height: 1;
}

.dyb-v2-brand-copy strong {
  font-size: 20px;
  font-weight: 600;
}

.dyb-v2-brand-copy small {
  font-size: 13px;
  color: var(--dyb-v2-muted);
}

.dyb-v2-mobile-toggle {
  display: none;
  margin-right: 10px;
  border: 0;
  background: none;
  font-size: 24px;
}

.dyb-v2-nav {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  gap: 28px;
}

.dyb-v2-menu-item {
  position: relative;
}

.dyb-v2-menu-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 26px 0;
  color: var(--dyb-v2-text);
  text-decoration: none;
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.dyb-v2-menu-link:hover {
  color: #6f5b48;
}

.dyb-v2-menu-item::before {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 14px;
}

.dyb-v2-mega-panel {
  position: absolute;
  top: 100%;
  left: 50%;
  width: min(1220px, calc(100vw - 48px));
  transform: translate(-50%, 8px);
  background: #fdfbf8;
  border: 1px solid var(--dyb-v2-line);
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.08);
  padding: 28px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity 0.22s ease,
    transform 0.22s ease,
    visibility 0.22s ease;
}

.dyb-v2-menu-item.is-open > .dyb-v2-mega-panel,
.dyb-v2-menu-item:hover > .dyb-v2-mega-panel,
.dyb-v2-menu-item:focus-within > .dyb-v2-mega-panel {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

.dyb-v2-mega-grid {
  display: grid;
  gap: 26px;
}

.dyb-v2-mega-grid.cols-3 {
  grid-template-columns: repeat(3, 1fr);
}

.dyb-v2-mega-grid.cols-4 {
  grid-template-columns: repeat(4, 1fr);
}

.dyb-v2-mega-heading {
  display: block;
  margin-bottom: 14px;
  color: var(--dyb-v2-muted);
  text-decoration: none;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.dyb-v2-mega-col ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.dyb-v2-mega-col li {
  margin-bottom: 8px;
}

.dyb-v2-mega-col li a {
  color: var(--dyb-v2-text);
  text-decoration: none;
  font-size: 14px;
}

.dyb-v2-mega-col li a:hover {
  color: #6f5b48;
}

.dyb-v2-actions-icons {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  min-width: 190px;
}

.dyb-v2-iconbtn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(44, 40, 36, 0.18);
  border-radius: 0;
  background: #fff;
  color: var(--dyb-v2-text);
  text-decoration: none;
}

.dyb-v2-iconbtn em {
  position: absolute;
  top: -6px;
  right: -6px;
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  border-radius: 999px;
  background: #2c2824;
  color: #fff;
  font-style: normal;
  font-size: 10px;
}

.dyb-v2-lang {
  margin-right: 6px;
  color: var(--dyb-v2-muted);
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.dyb-v2-search-panel {
  background: #fff;
  border-bottom: 1px solid var(--dyb-v2-line);
}

.dyb-v2-search-form {
  display: flex;
  gap: 12px;
  padding: 18px 0;
}

.dyb-v2-search-form input {
  flex: 1;
  border: 1px solid var(--dyb-v2-line);
  padding: 12px 14px;
}

.dyb-v2-search-form button {
  border: 0;
  background: #2c2824;
  color: #fff;
  padding: 12px 18px;
}

.dyb-v2-mobile-panel {
  display: none;
  width: 100%;
  margin-top: 12px;
  background: #fcfaf7;
  border: 1px solid rgba(44,40,36,.08);
  border-radius: 16px;
  box-shadow: 0 18px 40px rgba(39,31,24,.08);
  overflow: hidden;
}

.dyb-v2-mobile-panel[hidden] {
  display: none !important;
}

.dyb-v2-mobile-inner {
  padding: 10px;
}

.dyb-v2-mobile-item {
  border-bottom: 1px solid var(--dyb-v2-line);
}

.dyb-v2-mobile-item:last-child {
  border-bottom: 0;
}

.dyb-v2-mobile-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
}

.dyb-v2-mobile-top a,
.dyb-v2-mobile-subitem a {
  display: block;
  min-width: 0;
  color: var(--dyb-v2-text);
  text-decoration: none;
}

.dyb-v2-mobile-top a {
  font-size: 16px;
  line-height: 1.4;
}

.dyb-v2-mobile-top button {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(44,40,36,.12);
  border-radius: 12px;
  background: #f3eee7;
  color: var(--dyb-v2-text);
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  transition: background .22s ease, border-color .22s ease, color .22s ease, transform .22s ease;
}

.dyb-v2-mobile-item.is-open > .dyb-v2-mobile-top button {
  background: #2c2824;
  border-color: #2c2824;
  color: #fff;
}

.dyb-v2-mobile-subpanel[hidden] {
  display: none !important;
}

.dyb-v2-mobile-subpanel {
  padding: 0 12px 12px;
}

.dyb-v2-mobile-subitem {
  padding: 8px 0 8px 12px;
}

.dyb-v2-mobile-subitem + .dyb-v2-mobile-subitem {
  border-top: 1px solid rgba(44,40,36,.08);
}

.dyb-v2-mobile-subitem ul {
  margin: 8px 0 0;
  padding: 0 0 0 16px;
}
.dyb-v2-page {
  background: var(--dyb-v2-bg);
  padding-bottom: 70px;
}

.dyb-v2-hero,
.dyb-v2-boutique-hero {
  padding: 64px 0 34px;
}

.dyb-v2-hero-grid,
.dyb-v2-boutique-hero-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 42px;
}

.dyb-v2-hero-copy h1,
.dyb-v2-boutique-copy h1 {
  margin: 0 0 16px;
  font-family: "Cormorant Garamond", serif;
  font-size: 70px;
  line-height: 0.95;
  font-weight: 500;
}

.dyb-v2-hero-copy h1 em,
.dyb-v2-boutique-copy h1 em {
  font-style: italic;
  font-weight: 400;
}

.dyb-v2-eyebrow,
.dyb-v2-kicker {
  display: block;
  margin-bottom: 14px;
  color: #9b9188;
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
}

.dyb-v2-hero-copy p,
.dyb-v2-boutique-copy p {
  max-width: 620px;
  color: #5f554c;
  font-size: 18px;
  line-height: 1.7;
}

.dyb-v2-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  margin-top: 28px;
}

.dyb-v2-btn {
  text-decoration: none;
}

.dyb-v2-btn-primary {
  background: #2c2824;
  color: #fff;
  padding: 14px 22px;
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.dyb-v2-btn-link {
  color: #7c7268;
  padding: 14px 0;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.dyb-v2-hero-media img,
.dyb-v2-boutique-media img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  background: #ddd;
}

.dyb-v2-section {
  padding: 34px 0;
}

.dyb-v2-section-head {
  margin-bottom: 26px;
}

.dyb-v2-section-head h2 {
  margin: 8px 0 0;
  font-family: "Cormorant Garamond", serif;
  font-size: 42px;
  line-height: 1.05;
  font-weight: 500;
}

.dyb-v2-section-head-inline {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
}

.dyb-v2-inline-link {
  color: #7c7268;
  text-decoration: none;
  font-size: 12px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.dyb-v2-cards-3,
.dyb-v2-product-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}

.dyb-v2-card {
  background: #fff;
  border: 1px solid var(--dyb-v2-line);
  padding: 26px;
}

.dyb-v2-card h3 {
  margin: 0 0 10px;
  font-family: "Cormorant Garamond", serif;
  font-size: 30px;
}

.dyb-v2-card p {
  margin: 0 0 12px;
  color: #665d55;
  line-height: 1.7;
}

.dyb-v2-card-soft {
  background: #fdfbf8;
}

.dyb-v2-product-card {
  display: flex;
  flex-direction: column;
}

.dyb-v2-product-image {
  position: relative;
  display: block;
  overflow: hidden;
  background: #efe8df;
  aspect-ratio: 3 / 4;
}

.dyb-v2-product-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.dyb-v2-product-card:hover .dyb-v2-product-image img {
  transform: scale(1.03);
}

.dyb-v2-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  background: #2c2824;
  color: #fff;
  padding: 6px 9px;
  font-size: 10px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.dyb-v2-product-meta {
  padding-top: 14px;
}

.dyb-v2-product-cat {
  display: block;
  margin-bottom: 6px;
  color: #9b9188;
  font-size: 10px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.dyb-v2-product-meta h3 {
  margin: 0 0 8px;
  font-family: "Cormorant Garamond", serif;
  font-size: 27px;
  line-height: 1.1;
}

.dyb-v2-product-meta h3 a {
  color: var(--dyb-v2-text);
  text-decoration: none;
}

.dyb-v2-price {
  color: #4f4841;
  font-size: 15px;
}

.dyb-v2-story-grid {
  display: grid;
  grid-template-columns: 1.3fr 0.7fr;
  align-items: start;
  gap: 28px;
}

.dyb-v2-story-note {
  padding-top: 38px;
}

.dyb-v2-breadcrumb {
  margin-bottom: 14px;
  color: #9b9188;
  font-size: 12px;
}

.dyb-v2-breadcrumb a {
  color: inherit;
  text-decoration: none;
}

.dyb-v2-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 20px;
  color: #6f655d;
  font-size: 14px;
}

.dyb-v2-boutique-toolbar {
  padding: 12px 0 0;
}

.dyb-v2-toolbar-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
}

.dyb-v2-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.dyb-v2-filter {
  border: 1px solid var(--dyb-v2-line);
  color: var(--dyb-v2-text);
  padding: 10px 14px;
  text-decoration: none;
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.dyb-v2-filter.is-active {
  background: #2c2824;
  color: #fff;
}

.dyb-v2-sort {
  display: flex;
  align-items: center;
  gap: 10px;
}

.dyb-v2-sort label {
  color: #7c7268;
  font-size: 12px;
}

.dyb-v2-sort select {
  border: 1px solid var(--dyb-v2-line);
  background: #fff;
  padding: 10px 12px;
}

.dyb-v2-pagination ul {
  display: flex;
  gap: 8px;
  margin: 0;
  padding: 26px 0 0;
  list-style: none;
}

.dyb-v2-pagination a,
.dyb-v2-pagination span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 38px;
  border: 1px solid var(--dyb-v2-line);
  color: var(--dyb-v2-text);
  text-decoration: none;
}

.dyb-v2-pagination .current {
  background: #2c2824;
  color: #fff;
}

.dyb-v2-footer {
  background: #221e1b;
  color: #fdfbf8;
  padding: 55px 0 26px;
}

.dyb-v2-footer-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr 1fr;
  gap: 26px;
}

.dyb-v2-footer h3 {
  margin: 0 0 12px;
  font-family: "Cormorant Garamond", serif;
  font-size: 34px;
}

.dyb-v2-footer p {
  color: rgba(253, 251, 248, 0.62);
  line-height: 1.7;
}

.dyb-v2-footer-col h4 {
  margin: 0 0 14px;
  color: rgba(253, 251, 248, 0.45);
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.dyb-v2-footer-menu,
.dyb-v2-footer-menu ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.dyb-v2-footer-menu li {
  margin-bottom: 10px;
}

.dyb-v2-footer-menu a,
.dyb-v2-footer-bottom a {
  color: rgba(253, 251, 248, 0.72);
  text-decoration: none;
}

.dyb-v2-footer-bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 18px;
  margin-top: 30px;
  padding-top: 22px;
  border-top: 1px solid rgba(253, 251, 248, 0.08);
  font-size: 12px;
}

@media (max-width: 1100px) {
  .dyb-v2-nav {
    display: none;
  }

  .dyb-v2-mobile-toggle {
    display: inline-block;
  }

  .dyb-v2-mobile-panel.is-open,
  .dyb-v2-mobile-panel[style*="display: block"] {
    display: block;
  }

  .dyb-v2-hero-grid,
  .dyb-v2-boutique-hero-grid,
  .dyb-v2-story-grid,
  .dyb-v2-footer-grid {
    grid-template-columns: 1fr;
  }

  .dyb-v2-cards-3,
  .dyb-v2-product-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .dyb-v2-actions-icons {
    margin-left: auto;
  }

  .dyb-v2-navbar {
    height: 68px;
  }

  .dyb-v2-brand-copy strong {
    font-size: 18px;
  }
}

@media (max-width: 680px) {
  .dyb-v2-container {
    padding: 0 18px;
  }

  .dyb-v2-cards-3,
  .dyb-v2-product-grid {
    grid-template-columns: 1fr;
  }

  .dyb-v2-hero-copy h1,
  .dyb-v2-boutique-copy h1 {
    font-size: 48px;
  }

  .dyb-v2-section-head-inline,
  .dyb-v2-toolbar-row {
    flex-direction: column;
    align-items: flex-start;
  }

  .dyb-v2-actions-icons {
    gap: 8px;
  }

  .dyb-v2-iconbtn {
    width: 34px;
    height: 34px;
  }

  .dyb-v2-brand-copy small {
    display: none;
  }
}

/* =========================
   V2 HEADER DESKTOP STRONG FIX
   ========================= */

@media (min-width: 1200px) {
  .dyb-v2-header .header-inner {
    display: grid;
    grid-template-columns: 220px 1fr 170px;
    align-items: center;
    column-gap: 18px;
  }

  .dyb-v2-header .site-branding {
    min-width: 0;
  }

  .dyb-v2-header .main-nav {
    min-width: 0;
    width: 100%;
    overflow: hidden;
  }

  .dyb-v2-header .main-nav > ul,
  .dyb-v2-header .main-nav .menu {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .dyb-v2-header .main-nav li {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .dyb-v2-header .main-nav a {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    font-size: 11px;
    line-height: 1;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .dyb-v2-header .header-tools {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    min-width: 0;
  }

  .dyb-v2-header .header-tools a,
  .dyb-v2-header .header-tools button {
    flex: 0 0 auto;
  }
}
/* ===== March 2026 boutique/home refinement ===== */
.dyb-v2-header,.dyb-v2-footer,.dyb-v2-page{font-family:Inter,Arial,sans-serif}
.dyb-v2-page h1,.dyb-v2-page h2,.dyb-v2-page h3,.dyb-v2-page .dyb-v2-product-meta h3 a,.dyb-v2-page .dyb-v2-home-newsletter-copy h2,.dyb-v2-page .dyb-v2-boutique-copy h1{font-family:"Cormorant Garamond",Georgia,serif}
.dyb-v2-header .custom-logo{max-height:34px!important;width:auto}
.dyb-v2-logo-wrap{gap:10px}.dyb-v2-brand-copy{display:none}
.dyb-v2-navbar{height:56px}.dyb-v2-nav{gap:20px}.dyb-v2-menu-link{padding:18px 0;font-size:11px;letter-spacing:.14em}
.dyb-v2-actions-icons{gap:10px}.dyb-v2-lang{font-size:11px;letter-spacing:.12em;color:#8d8378}
.dyb-v2-iconbtn{width:28px;height:28px;border:none;background:transparent;color:#b8ada1;padding:0}.dyb-v2-iconbtn svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.dyb-v2-iconbtn:hover{color:#2c2824;background:transparent}.dyb-v2-cartbtn em{top:-6px;right:-4px;background:#2c2824;color:#fff;font-size:10px;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:999px}
.dyb-v2-boutique-hero--compact{padding:26px 0 18px}.dyb-v2-boutique-hero-grid{grid-template-columns:minmax(0,1fr) 460px;gap:48px;align-items:end}.dyb-v2-boutique-copy h1{font-size:68px;line-height:.95;margin:0 0 12px}.dyb-v2-boutique-copy p{max-width:540px}.dyb-v2-boutique-media img{display:block;width:100%;aspect-ratio:5/6;object-fit:cover;background:#ddd}
.dyb-v2-toolbar-row--shop{gap:24px;align-items:center;justify-content:space-between}.dyb-v2-toolbar-left,.dyb-v2-toolbar-right{display:flex;align-items:center;gap:18px}.dyb-v2-filter-toggle{border:1px solid var(--dyb-v2-line);background:#fff;color:var(--dyb-v2-text);padding:11px 18px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.dyb-v2-filters--top{display:flex;gap:28px;flex-wrap:wrap}.dyb-v2-filter{font-size:12px;letter-spacing:.11em;text-transform:uppercase;color:#8a8075;padding:0 0 14px;border-bottom:1px solid transparent;text-decoration:none}.dyb-v2-filter.is-active,.dyb-v2-filter:hover{color:#2c2824;border-bottom-color:#2c2824}.dyb-v2-results-count{font-size:12px;color:#8d8378}.dyb-v2-view-switch{display:flex;gap:10px}.dyb-v2-view-btn{text-decoration:none;color:#b6ab9f;font-size:16px}.dyb-v2-view-btn.is-active,.dyb-v2-view-btn:hover{color:#2c2824}.dyb-v2-sort{display:flex;align-items:center;gap:8px}.dyb-v2-sort label{font-size:12px;color:#8d8378}.dyb-v2-sort select{border:none;background:transparent;color:#6e655d;font-size:13px;padding:6px 18px 6px 6px}
body.page-template-template-boutique-v2 .dyb-v2-filter-drawer[hidden]{display:none}
body.page-template-template-boutique-v2 .dyb-v2-filter-drawer{position:fixed;inset:0;z-index:10020}
body.admin-bar.page-template-template-boutique-v2 .dyb-v2-filter-drawer{top:var(--wp-admin--admin-bar--height,32px);bottom:0}
body.page-template-template-boutique-v2 .dyb-v2-filter-overlay{position:absolute;inset:0;background:rgba(17,14,12,.4)}
body.page-template-template-boutique-v2 .dyb-v2-filter-panel{position:absolute;top:0;left:0;width:min(420px,92vw);height:100dvh;max-height:100dvh;display:flex;flex-direction:column;overflow:hidden;background:#fcfaf7;padding:0;box-shadow:18px 0 45px rgba(0,0,0,.14)}
body.admin-bar.page-template-template-boutique-v2 .dyb-v2-filter-panel{top:var(--wp-admin--admin-bar--height,32px);height:calc(100dvh - var(--wp-admin--admin-bar--height,32px));max-height:calc(100dvh - var(--wp-admin--admin-bar--height,32px))}
body.page-template-template-boutique-v2 .dyb-v2-filter-panel-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0;padding:24px 24px 18px;background:#fcfaf7;border-bottom:1px solid var(--dyb-v2-line)}
body.page-template-template-boutique-v2 .dyb-v2-filter-panel-head h2{margin:0;font-size:34px}
body.page-template-template-boutique-v2 .dyb-v2-filter-close{border:none;background:none;font-size:34px;line-height:1;color:#7f756a}
body.page-template-template-boutique-v2 .dyb-v2-filter-form{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding:0 24px 26px}
body.page-template-template-boutique-v2 .dyb-v2-filter-group{padding:16px 0;border-top:1px solid var(--dyb-v2-line)}
body.page-template-template-boutique-v2 .dyb-v2-filter-form .dyb-v2-filter-group:first-of-type{border-top:0;padding-top:20px}
body.page-template-template-boutique-v2 .dyb-v2-filter-group h3{margin:0 0 14px;font-size:14px;letter-spacing:.08em;text-transform:uppercase;font-family:Inter,Arial,sans-serif}
body.page-template-template-boutique-v2 .dyb-v2-check{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:10px;align-items:center;padding:6px 0;font-size:14px;color:#4b443d}
body.page-template-template-boutique-v2 .dyb-v2-check span{min-width:0}
body.page-template-template-boutique-v2 .dyb-v2-check em{font-style:normal;color:#8d8378;font-size:12px}
body.page-template-template-boutique-v2 .dyb-v2-filter-actions{position:sticky;bottom:0;display:flex;align-items:center;gap:14px;padding:18px 0 calc(8px + env(safe-area-inset-bottom,0px));margin-top:6px;background:linear-gradient(180deg,rgba(252,250,247,0) 0%,#fcfaf7 26%,#fcfaf7 100%)}
body.page-template-template-boutique-v2.dyb-v2-filter-open{overflow:hidden}

.dyb-v2-product-grid-boutique{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 30px}.dyb-v2-product-grid-compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 24px}.dyb-v2-product-card-shop .dyb-v2-product-image{background:#f0ebe4;display:block}.dyb-v2-product-card-shop .dyb-v2-product-image img{display:block;width:100%;aspect-ratio:0.78;object-fit:cover}.dyb-v2-product-card-shop .dyb-v2-product-meta{padding-top:14px}.dyb-v2-product-meta h3{margin:4px 0 6px;font-size:31px;line-height:.96;font-weight:400}.dyb-v2-product-meta h3 a{text-decoration:none;color:#2c2824}.dyb-v2-product-cat{font-size:11px;letter-spacing:.11em;text-transform:uppercase;color:#a19588}.dyb-v2-price{font-size:13px;color:#655d56}
.dyb-v2-home .dyb-v2-home-hero-copy-panel{background:#f7f2ec}.dyb-v2-home-hero-copy-inner{max-width:470px}.dyb-v2-home .dyb-v2-home-hero-v3{padding-bottom:34px}.dyb-v2-home .dyb-v2-home-hero-v3 h1{font-size:78px;line-height:.9;font-weight:400}.dyb-v2-home .dyb-v2-home-hero-v3 p{max-width:420px}.dyb-v2-home .dyb-v2-btn-primary{background:#2c2824;color:#fff;border-color:#2c2824}.dyb-v2-home .dyb-v2-btn-link{color:#9f9386;text-transform:uppercase;font-size:12px;letter-spacing:.14em}
.dyb-v2-editorial-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;align-items:stretch}.dyb-v2-editorial-card{position:relative;display:block;overflow:hidden;min-height:340px;color:#fff;text-decoration:none;background:#ddd}.dyb-v2-editorial-card-large{grid-row:1/span 2;min-height:700px}.dyb-v2-editorial-card img{width:100%;height:100%;display:block;object-fit:cover}.dyb-v2-editorial-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1) 0%,rgba(0,0,0,.55) 100%)}.dyb-v2-editorial-content{position:absolute;left:24px;right:24px;bottom:24px;display:flex;flex-direction:column;gap:6px}.dyb-v2-editorial-content small,.dyb-v2-editorial-content em{font-style:normal;font-size:12px;letter-spacing:.12em;text-transform:uppercase;opacity:.9}.dyb-v2-editorial-content strong{font-size:46px;line-height:.92;font-weight:400;font-family:"Cormorant Garamond",Georgia,serif}
.dyb-v2-product-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 22px}.dyb-v2-product-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px}.dyb-v2-home .dyb-v2-product-card .dyb-v2-product-image img{aspect-ratio:.78;object-fit:cover}.dyb-v2-home .dyb-v2-product-card .dyb-v2-product-meta h3{font-size:26px}
.dyb-v2-home-newsletter-v2{background:#241f1a;margin-top:0;padding:0}.dyb-v2-home-newsletter-wrap{display:grid;grid-template-columns:1.1fr .9fr;align-items:stretch}.dyb-v2-home-newsletter-copy{padding:68px 64px;color:#f7f2ec;background:#241f1a}.dyb-v2-home-newsletter-copy h2{font-size:60px;line-height:.95;margin:12px 0 16px;color:#f7f2ec}.dyb-v2-home-newsletter-copy p{max-width:520px;color:#c5b9aa}.dyb-v2-home-newsletter-form{margin-top:24px}.dyb-v2-home-newsletter-form small{display:block;margin-top:12px;color:#8d8378}.dyb-v2-home-newsletter-image img{display:block;width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.dyb-v2-newsletter-fallback{display:flex;gap:10px;max-width:520px}.dyb-v2-newsletter-fallback input{flex:1;border:1px solid rgba(255,255,255,.12);background:transparent;color:#f8f4ef;padding:16px 18px}.dyb-v2-newsletter-fallback button{border:none;background:#f5efe8;color:#241f1a;padding:16px 24px;text-transform:uppercase;letter-spacing:.12em;font-size:12px}
.dyb-v2-footer{margin-top:0;padding:42px 0 28px;background:#241f1a;color:#f7f2ec}.dyb-v2-footer-grid{grid-template-columns:1.5fr repeat(4,1fr);gap:40px}.dyb-v2-footer-brand h3{font-size:26px;font-family:"Cormorant Garamond",Georgia,serif;font-weight:400;margin:0 0 18px}.dyb-v2-footer-brand p{max-width:330px;color:#b8ada1;font-family:"Cormorant Garamond",Georgia,serif;font-size:19px;line-height:1.45}.dyb-v2-footer-contact{display:flex;flex-direction:column;gap:10px;margin-top:24px}.dyb-v2-footer-contact a,.dyb-v2-footer-contact span,.dyb-v2-footer a{color:#c7b9aa;text-decoration:none}.dyb-v2-footer-col h4{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#8d8378;margin-bottom:16px}.dyb-v2-footer-menu{list-style:none;margin:0;padding:0}.dyb-v2-footer-menu li{margin:0 0 12px}.dyb-v2-footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:34px;padding-top:16px;color:#8d8378}
@media (max-width: 1100px){.dyb-v2-boutique-hero-grid,.dyb-v2-home-newsletter-wrap,.dyb-v2-editorial-grid,.dyb-v2-footer-grid{grid-template-columns:1fr}.dyb-v2-editorial-card-large{min-height:420px;grid-row:auto}.dyb-v2-home .dyb-v2-home-hero-v3 h1,.dyb-v2-boutique-copy h1,.dyb-v2-home-newsletter-copy h2{font-size:52px}.dyb-v2-product-grid-boutique,.dyb-v2-product-grid-compact,.dyb-v2-product-grid-4,.dyb-v2-product-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.dyb-v2-toolbar-row--shop{align-items:flex-start}.dyb-v2-toolbar-left,.dyb-v2-toolbar-right{flex-wrap:wrap}}
@media (max-width: 680px){.dyb-v2-product-grid-boutique,.dyb-v2-product-grid-compact,.dyb-v2-product-grid-4,.dyb-v2-product-grid-3{grid-template-columns:1fr}.dyb-v2-home-newsletter-copy{padding:42px 22px}body.page-template-template-boutique-v2 .dyb-v2-filter-panel{width:100vw}body.page-template-template-boutique-v2 .dyb-v2-filter-panel-head{padding:22px 18px 16px}body.page-template-template-boutique-v2 .dyb-v2-filter-form{padding:0 18px 22px}.dyb-v2-navbar{height:52px}.dyb-v2-navwrap{position:relative}}






/* ===== FINAL HOME V2 RESTORE / PDF-ALIGNED REFINEMENT ===== */
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home,
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home * { box-sizing: border-box; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home { background: #f8f4ef; padding-bottom: 0; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-v3 { padding: 46px 0 34px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-split { max-width: 1280px; margin: 0 auto; padding: 0 28px; display: grid; grid-template-columns: minmax(0,1fr) minmax(420px,620px); gap: 48px; align-items: center; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-copy-panel { background: transparent; min-width: 0; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-copy-inner { max-width: 660px; padding: 0; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-v3 .dyb-v2-eyebrow { margin-bottom: 16px; font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: #9b9188; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-v3 h1 { margin: 0 0 18px; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(58px,5.4vw,84px); line-height: .88; font-weight: 400; color: #2c2824; white-space: nowrap; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-v3 h1 em { font-style: italic; font-weight: 400; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-v3 p { max-width: 420px; margin: 0; font-size: 18px; line-height: 1.7; color: #5f554c; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-v3 .dyb-v2-actions { margin-top: 26px; gap: 16px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-image-wrap { display: block; width: 100%; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-image-wrap img { display: block; width: 100%; height: auto; aspect-ratio: 5 / 6; object-fit: cover; background: #e7dfd5; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-collections-v2 { display: none !important; }

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home .dyb-v2-section { padding: 34px 0; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home .dyb-v2-section-head { margin-bottom: 22px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home .dyb-v2-section-head h2 { margin: 8px 0 0; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(38px,3.6vw,52px); line-height: 1; font-weight: 400; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home .dyb-v2-inline-link { font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: #9b9188; }

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-product-grid-4 { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 30px 22px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-product-grid-3 { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px 22px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-product-card { display: flex; flex-direction: column; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-product-image { position: relative; display: block; overflow: hidden; background: #efe8df; aspect-ratio: 3 / 4; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-product-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-product-meta { padding-top: 12px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-product-cat { display: block; margin-bottom: 6px; font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: #a19588; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-product-meta h3 { margin: 0 0 8px; font-family: "Cormorant Garamond", Georgia, serif; font-size: 20px; line-height: 1.05; font-weight: 400; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-product-meta h3 a { text-decoration: none; color: #2c2824; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-price { font-size: 14px; color: #4f4841; }

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-story-v2 { padding-top: 34px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-shell { display: grid; grid-template-columns: minmax(0,560px) minmax(280px,400px); justify-content: space-between; gap: 28px; align-items: center; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-media-v2 { max-width: 560px; width: 100%; margin: 0 auto; overflow: hidden; background: linear-gradient(180deg, #f3ede5 0%, #ece4da 100%); }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-media-v2 img { display: block; width: 100%; height: 100%; aspect-ratio: 3 / 4; object-fit: contain; object-position: center center; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-copy-v2 { max-width: 400px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-rule { width: 44px; height: 1px; background: rgba(44,40,36,.28); margin-bottom: 18px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-copy-v2 h2 { margin: 8px 0 18px; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(38px,3.6vw,52px); line-height: .98; font-weight: 400; color: #2c2824; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-copy-v2 p { margin: 0 0 14px; font-size: 16px; line-height: 1.75; color: #61584f; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-copy-v2 blockquote { margin: 18px 0; padding: 0; border: 0; font-family: "Cormorant Garamond", Georgia, serif; font-size: 28px; line-height: 1.15; color: #2c2824; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-copy-v2 .dyb-v2-story-quote { position: relative; display: block; max-width: 34ch; margin: 22px 0 14px; padding: 2px 0 2px 22px; border: 0; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(24px, 2.2vw, 32px); line-height: 1.32; font-style: italic; color: #6a6056; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-copy-v2 .dyb-v2-story-quote::before { content: "“"; position: absolute; left: 22px; top: 0; transform: translateX(-100%); margin-left: -2px; color: #9a8770; font-size: 1em; line-height: 1; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-copy-v2 .dyb-v2-story-quote::after { content: "”"; color: #9a8770; font-size: 1em; line-height: 1; margin-left: .04em; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-copy-v2 .dyb-v2-story-quote:empty { display: none !important; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-copy-v2 .dyb-v2-story-quote { background-image: linear-gradient(rgba(176,139,97,.78), rgba(176,139,97,.78)); background-repeat: no-repeat; background-size: 2px calc(100% - 8px); background-position: 0 4px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-copy-v2 .dyb-v2-story-support { margin: -4px 0 16px; font-size: 14px; line-height: 1.65; color: #746a60; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-copy-v2 .dyb-v2-story-support:empty { display: none !important; }
@media (max-width: 680px) {
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-copy-v2 .dyb-v2-story-quote { max-width: none; margin: 18px 0 12px; padding-left: 18px; font-size: 24px; line-height: 1.3; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-copy-v2 .dyb-v2-story-quote::before { left: 18px; }
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-favorites-grid { display: grid; grid-template-columns: 300px minmax(0,1fr); gap: 28px; align-items: start; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-favorites-intro { max-width: 260px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-favorites-intro h2 { margin: 8px 0 12px; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(38px,3.4vw,48px); line-height: 1; font-weight: 400; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-favorites-intro p { margin: 0 0 18px; font-size: 16px; line-height: 1.75; color: #61584f; }

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-fit-v2 { padding-top: 10px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-fit-grid { display: grid; grid-template-columns: 300px minmax(0,1fr); gap: 28px; align-items: start; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-fit-intro { max-width: 280px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-fit-intro h2 { margin: 8px 0 12px; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(38px,3.4vw,48px); line-height: 1; font-weight: 400; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-fit-intro h2 em { font-style: italic; font-weight: 400; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-fit-intro p { margin: 0 0 16px; font-size: 16px; line-height: 1.75; color: #61584f; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-fit-points { margin: 0 0 22px; padding: 0; list-style: none; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-fit-points li { position: relative; margin: 0 0 10px; padding-left: 16px; font-size: 14px; line-height: 1.65; color: #5f554c; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-fit-points li::before { content: ""; position: absolute; top: .7em; left: 0; width: 5px; height: 5px; border-radius: 999px; background: rgba(44,40,36,.42); }

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-section-head-center { text-align: center; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-testimonials-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-testimonial-card { background: #fcfaf7; border: 1px solid rgba(44,40,36,.08); padding: 28px 26px; min-height: 100%; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-stars { margin-bottom: 10px; color: #b08b61; letter-spacing: .12em; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-testimonial-card p { margin: 0 0 18px; font-size: 16px; line-height: 1.75; color: #554d45; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-testimonial-card footer { display: flex; flex-direction: column; gap: 4px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-testimonial-card footer strong { font-size: 14px; color: #2c2824; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-testimonial-card footer span { font-size: 12px; color: #9b9188; text-transform: uppercase; letter-spacing: .12em; }

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspirations-shell {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr);
  gap: 24px;
  align-items: start;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspirations-shell.is-single {
  grid-template-columns: minmax(0,760px);
  justify-content: center;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspirations-side-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 24px;
  align-content: start;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspo-item {
  display: block;
  color: inherit;
  text-decoration: none;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspo-media {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  overflow: hidden;
  background: #f5efe8;
  border: 1px solid rgba(44,40,36,.08);
  box-shadow: 0 8px 24px rgba(0,0,0,.04);
  padding: 14px;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background-color .22s ease;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspo-media-featured {
  aspect-ratio: 4 / 5;
  padding: 18px;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspo-media-secondary {
  aspect-ratio: 1 / 1;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspo-item img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
  object-position: center center;
  display: block;
  transform: scale(1);
  transition: transform .45s ease;
}

@media (hover: hover) {
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspo-item:hover .dyb-v2-inspo-media,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspo-item:focus-within .dyb-v2-inspo-media {
    transform: translateY(-2px);
    box-shadow: 0 14px 34px rgba(0,0,0,.08);
    border-color: rgba(44,40,36,.12);
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspo-item:hover img,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspo-item:focus-within img {
    transform: scale(1.015);
  }
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-newsletter-v2 { background: #241f1a; margin-top: 34px; padding: 0; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-newsletter-wrap { max-width: 1280px; margin: 0 auto; padding: 0 28px; display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,520px); align-items: stretch; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-newsletter-copy { padding: 56px 48px; background: #241f1a; color: #f7f2ec; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-newsletter-copy .dyb-v2-kicker { color: #8d8378; margin-bottom: 14px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-newsletter-copy h2 { margin: 0 0 14px; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(42px,4vw,58px); line-height: .98; font-weight: 400; color: #f7f2ec; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-newsletter-copy p { margin: 0; max-width: 470px; font-size: 16px; line-height: 1.75; color: #c5b9aa; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-newsletter-form { margin-top: 22px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-newsletter-fallback { display: flex; gap: 10px; max-width: 430px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-newsletter-fallback input { flex: 1; min-width: 0; border: 1px solid rgba(255,255,255,.14); background: transparent; color: #f8f4ef; padding: 15px 16px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-newsletter-fallback button { border: none; background: #f5efe8; color: #241f1a; padding: 15px 22px; text-transform: uppercase; letter-spacing: .12em; font-size: 12px; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-newsletter-form small { display: block; margin-top: 12px; color: #8d8378; }
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-newsletter-image img { display: block; width: 100%; height: 100%; min-height: 100%; object-fit: cover; filter: grayscale(1); }

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-footer { margin-top: 0; padding-top: 38px; background: #241f1a; }

@media (max-width: 1100px){
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-copy-inner { max-width: 520px; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-v3 h1 { white-space: normal; }
}

@media (max-width: 1100px) {
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-split,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-shell,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-fit-grid,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-favorites-grid,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-newsletter-wrap { grid-template-columns: 1fr; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-product-grid-4 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-product-grid-3,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-testimonials-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspirations-shell { grid-template-columns: 1fr; gap: 20px; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspirations-shell.is-single { grid-template-columns: 1fr; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspirations-side-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-newsletter-copy { padding: 42px 32px; }
}

@media (max-width: 680px) {
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-split { padding: 0 18px; gap: 28px; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-v3 h1 { font-size: 52px; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-product-grid-4,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-product-grid-3,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-testimonials-grid { grid-template-columns: 1fr; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspirations-shell { grid-template-columns: 1fr; gap: 18px; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspirations-side-grid { grid-template-columns: 1fr; gap: 16px; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspo-media-featured,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspo-media-secondary { aspect-ratio: auto; padding: 0; background: transparent; border: 0; box-shadow: none; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-inspo-item img { height: auto; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-fit-v2,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-favorites-v2,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-story-v2,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-testimonials-v2,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 { padding-top: 28px; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-fit-intro,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-favorites-intro,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-copy-v2 { max-width: none; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-newsletter-wrap { padding: 0 18px; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-newsletter-copy { padding: 34px 22px; }
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-newsletter-fallback { flex-direction: column; }
}

/* ===== FINAL V2 HEADER / FOOTER REFINEMENT — FIGMA MAKE ALIGNMENT ===== */
.dyb-v2-header-refined {
  font-family: Inter, Arial, sans-serif;
}

@media (max-width: 1380px) {
  .dyb-v2-header-refined .dyb-v2-navbar-refined {
    grid-template-columns: minmax(220px,.78fr) auto minmax(460px,1.22fr);
    gap: 20px;
  }

  .dyb-v2-header-refined .dyb-v2-nav {
    gap: 22px;
  }

  .dyb-v2-header-refined .dyb-v2-actions-icons-refined {
    gap: 10px;
    margin-left: 10px;
  }
}

.dyb-v2-footer-refined {
  font-family: Inter, Arial, sans-serif;
}

.dyb-v2-header-refined .dyb-v2-navwrap {
  position: sticky;
  top: 0;
  z-index: 999;
  background: #fcfaf7;
  border-bottom: 1px solid rgba(44, 40, 36, .08);
}

body.admin-bar .dyb-v2-header-refined .dyb-v2-navwrap {
  top: 0 !important;
}

@media (max-width: 782px) {
  body.admin-bar .dyb-v2-header-refined .dyb-v2-navwrap {
    top: 0 !important;
  }
}


.dyb-v2-header-refined .dyb-v2-navbar-refined {
  display: grid;
  grid-template-columns: minmax(260px,.82fr) auto minmax(520px,1.18fr);
  align-items: center;
  gap: clamp(22px, 2vw, 38px);
  min-height: 68px;
}

.dyb-v2-header-refined .dyb-v2-navbar-left,
.dyb-v2-header-refined .dyb-v2-navbar-right {
  display: flex;
  align-items: center;
  min-width: 0;
}

.dyb-v2-header-refined .dyb-v2-navbar-left {
  justify-content: flex-start;
}

.dyb-v2-header-refined .dyb-v2-navbar-right {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  justify-content: end;
  column-gap: clamp(18px, 1.5vw, 28px);
}

.dyb-v2-header-refined .dyb-v2-brand {
  min-width: 0;
  justify-content: center;
  padding-inline: 18px;
}

.dyb-v2-header-refined .dyb-v2-logo-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.dyb-v2-header-refined .custom-logo {
  max-height: 38px !important;
  width: auto;
}

.dyb-v2-header-refined .dyb-v2-logo-text {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 22px;
  line-height: 1;
  color: #2c2824;
}

.dyb-v2-header-refined .dyb-v2-nav {
  display: flex;
  align-items: center;
  gap: clamp(20px, 1.7vw, 34px);
  flex: 0 1 auto;
}

.dyb-v2-header-refined .dyb-v2-nav-left {
  justify-content: flex-start;
}

.dyb-v2-header-refined .dyb-v2-nav-right {
  justify-content: flex-end;
  width: 100%;
}

.dyb-v2-header-refined .dyb-v2-menu-link {
  padding: 24px 0;
  font-size: 11px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #8f8478;
  line-height: 1.15;
  white-space: nowrap;
}

.dyb-v2-header-refined .dyb-v2-menu-link:hover,
.dyb-v2-header-refined .dyb-v2-menu-item.is-open > .dyb-v2-menu-link,
.dyb-v2-header-refined .dyb-v2-menu-item:focus-within > .dyb-v2-menu-link {
  color: #2c2824;
}

.dyb-v2-header-refined .dyb-v2-menu-link .chev {
  font-size: 9px;
  transform: translateY(-1px);
}

.dyb-v2-header-refined .dyb-v2-menu-item::before {
  height: 10px;
}

.dyb-v2-header-refined .dyb-v2-mega-panel {
  background: #fcfaf7;
  border: 1px solid rgba(44,40,36,.08);
  box-shadow: 0 18px 40px rgba(39,31,24,.08);
  padding: 28px;
}

.dyb-v2-header-refined .dyb-v2-mega-heading {
  color: #8f8478;
}

.dyb-v2-header-refined .dyb-v2-mega-col li a {
  color: #4f4841;
}

.dyb-v2-header-refined .dyb-v2-actions-icons-refined {
  min-width: auto;
  gap: 12px;
  margin-left: clamp(8px, 1vw, 18px);
  justify-content: flex-end;
}

.dyb-v2-header-refined .dyb-v2-iconbtn {
  width: 18px;
  height: 18px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #aea296;
  box-shadow: none;
}

.dyb-v2-header-refined .dyb-v2-iconbtn:hover,
.dyb-v2-header-refined .dyb-v2-iconbtn:focus-visible {
  color: #2c2824;
}

.dyb-v2-header-refined .dyb-v2-iconbtn svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.dyb-v2-header-refined .dyb-v2-wishlistbtn svg path {
  fill: none;
}

.dyb-v2-header-refined .dyb-v2-cartbtn em {
  top: -8px;
  right: -8px;
  min-width: 14px;
  height: 14px;
  padding: 0 3px;
  font-size: 9px;
  background: #2c2824;
  color: #fff;
}

.dyb-v2-header-refined .dyb-v2-search-panel {
  background: #fcfaf7;
  border-bottom: 1px solid rgba(44,40,36,.08);
}

.dyb-v2-header-refined .dyb-v2-search-form {
  padding: 16px 0 18px;
}

.dyb-v2-header-refined .dyb-v2-search-form input {
  border: 1px solid rgba(44,40,36,.12);
  background: #fff;
  min-height: 46px;
}

.dyb-v2-header-refined .dyb-v2-search-form button {
  min-height: 46px;
  background: #2c2824;
  color: #fff;
  font-size: 11px;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.dyb-v2-header-refined .dyb-v2-mobile-toggle {
  display: none;
  margin-right: 14px;
  color: #8f8478;
}

.dyb-v2-footer-refined {
  margin-top: 0;
  background: #f7f3ee;
  color: #2c2824;
}

.dyb-v2-footer-refined .dyb-v2-footer-newsletter {
  background: #e9e2d9;
  border-top: 1px solid rgba(44,40,36,.07);
}

.dyb-v2-footer-refined .dyb-v2-footer-newsletter-wrap {
  display: grid;
  grid-template-columns: minmax(0,1.35fr) minmax(320px,.65fr);
  align-items: stretch;
}

.dyb-v2-footer-refined .dyb-v2-footer-newsletter-copy {
  padding: 68px 56px 62px 0;
}

.dyb-v2-footer-refined .dyb-v2-kicker {
  display: block;
  margin-bottom: 18px;
  font-size: 11px;
  letter-spacing: .20em;
  text-transform: uppercase;
  color: #b7aa9b;
}

.dyb-v2-footer-refined .dyb-v2-footer-newsletter-copy h2 {
  margin: 0 0 16px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(42px, 4vw, 56px);
  line-height: .96;
  font-weight: 400;
  color: #2c2824;
}

.dyb-v2-footer-refined .dyb-v2-footer-newsletter-copy p {
  max-width: 660px;
  margin: 0;
  font-size: 16px;
  line-height: 1.75;
  color: #5f554c;
}

.dyb-v2-footer-refined .dyb-v2-footer-newsletter-form {
  margin-top: 28px;
}

.dyb-v2-footer-refined .dyb-v2-newsletter-fallback {
  display: flex;
  gap: 12px;
  max-width: 480px;
}

.dyb-v2-footer-refined .dyb-v2-newsletter-fallback input,
.dyb-v2-footer-refined .mc4wp-form-fields input[type="email"] {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 46px;
  padding: 14px 18px;
  border: 1px solid rgba(44,40,36,.08);
  background: #fff;
  color: #2c2824;
}

.dyb-v2-footer-refined .dyb-v2-newsletter-fallback button,
.dyb-v2-footer-refined .mc4wp-form-fields input[type="submit"] {
  min-height: 46px;
  border: 0;
  background: #2c2824;
  color: #fff;
  padding: 0 24px;
  text-transform: uppercase;
  letter-spacing: .15em;
  font-size: 11px;
}

.dyb-v2-footer-refined .dyb-v2-footer-newsletter-form small {
  display: block;
  margin-top: 14px;
  font-size: 12px;
  color: #b2a697;
}

.dyb-v2-footer-refined .dyb-v2-footer-newsletter-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance {
  background: #fdfbf8;
  border-top: 1px solid rgba(44,40,36,.06);
  border-bottom: 1px solid rgba(44,40,36,.06);
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 26px;
  padding: 22px 0;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-item {
  display: flex;
  align-items: center;
  gap: 16px;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-icon {
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(44,40,36,.08);
  background: #fff;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-copy {
  display: flex;
  flex-direction: column;
  gap: 3px;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-copy strong {
  font-weight: 500;
  color: #3a342f;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-copy span {
  font-size: 14px;
  color: #b0a495;
}

.dyb-v2-footer-refined .dyb-v2-footer-main {
  background: #f7f3ee;
}

.dyb-v2-footer-refined .dyb-v2-footer-grid {
  display: grid;
  grid-template-columns: 1.35fr repeat(4, minmax(0, 1fr));
  gap: 46px;
  padding: 44px 0 30px;
}

.dyb-v2-footer-refined .dyb-v2-footer-brand h3 {
  margin: 0 0 18px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 48px;
  line-height: .9;
  font-weight: 400;
  color: #2c2824;
}

.dyb-v2-footer-refined .dyb-v2-footer-brand p {
  margin: 0;
  max-width: 320px;
  color: #b3a79a;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 18px;
  line-height: 1.65;
}

.dyb-v2-footer-refined .dyb-v2-footer-socials {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 26px;
}

.dyb-v2-footer-refined .dyb-v2-footer-socials a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #b7aa9b;
  text-decoration: none;
  line-height: 1;
  transition: color .22s ease, transform .22s ease, opacity .22s ease;
  opacity: .92;
}

.dyb-v2-footer-refined .dyb-v2-footer-socials a svg {
  width: 18px;
  height: 18px;
  display: block;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.dyb-v2-footer-refined .dyb-v2-footer-socials a:hover,
.dyb-v2-footer-refined .dyb-v2-footer-socials a:focus-visible {
  color: #2c2824;
  opacity: 1;
  transform: translateY(-1px);
}

.dyb-v2-footer-refined .dyb-v2-footer-col h4 {
  margin: 0 0 18px;
  font-size: 11px;
  letter-spacing: .20em;
  text-transform: uppercase;
  color: #b7aa9b;
}

.dyb-v2-footer-refined .dyb-v2-footer-menu,
.dyb-v2-footer-refined .dyb-v2-footer-menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.dyb-v2-footer-refined .dyb-v2-footer-menu li {
  margin: 0 0 16px;
}

.dyb-v2-footer-refined .dyb-v2-footer-menu a,
.dyb-v2-footer-refined .dyb-v2-footer-bottom a {
  color: #4c4640;
  text-decoration: none;
}

.dyb-v2-footer-refined .dyb-v2-footer-menu a:hover,
.dyb-v2-footer-refined .dyb-v2-footer-bottom a:hover {
  color: #2c2824;
}

.dyb-v2-footer-refined .dyb-v2-footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 26px 0 32px;
  border-top: 1px solid rgba(44,40,36,.06);
}

.dyb-v2-footer-refined .dyb-v2-footer-bottom-left,
.dyb-v2-footer-refined .dyb-v2-footer-bottom-right {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

.dyb-v2-footer-refined .dyb-v2-footer-bottom-left {
  font-size: 12px;
  color: #b2a697;
}

.dyb-v2-footer-refined .dyb-v2-payment-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 22px;
  padding: 0 10px;
  border: 1px solid rgba(44,40,36,.08);
  background: #fbf8f4;
  color: #c0b3a4;
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

@media (max-width: 1180px) {
  .dyb-v2-header-refined .dyb-v2-nav {
    gap: 18px;
  }

  .dyb-v2-footer-refined .dyb-v2-footer-reassurance-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dyb-v2-footer-refined .dyb-v2-footer-grid,
  .dyb-v2-footer-refined .dyb-v2-footer-newsletter-wrap {
    grid-template-columns: 1fr;
  }

  .dyb-v2-footer-refined .dyb-v2-footer-newsletter-copy {
    padding-right: 0;
  }
}

@media (max-width: 980px) {
  .dyb-v2-header-refined .dyb-v2-navbar-refined {
    grid-template-columns: 52px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    min-height: 64px;
  }

  .dyb-v2-header-refined .dyb-v2-mobile-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-right: 0;
  }

  .dyb-v2-header-refined .dyb-v2-nav-left,
  .dyb-v2-header-refined .dyb-v2-nav-right {
    display: none;
  }

  .dyb-v2-header-refined .dyb-v2-navbar-left {
    justify-content: flex-start;
    min-width: 52px;
  }

  .dyb-v2-header-refined .dyb-v2-brand {
    min-width: 0;
    padding-inline: 0;
    justify-content: center;
  }

  .dyb-v2-header-refined .dyb-v2-logo-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 0;
    max-width: 100%;
  }

  .dyb-v2-header-refined .custom-logo {
    max-height: 32px !important;
    width: auto;
    flex: 0 0 auto;
  }

  .dyb-v2-header-refined .dyb-v2-logo-text {
    display: block;
    min-width: 0;
    max-width: 120px;
    font-size: 18px;
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .dyb-v2-header-refined .dyb-v2-navbar-right {
    gap: 10px;
    min-width: auto;
  }

  .dyb-v2-header-refined .dyb-v2-actions-icons-refined {
    gap: 8px;
    margin-left: 0;
  }

  .dyb-v2-header-refined .dyb-v2-iconbtn {
    width: 18px;
    height: 18px;
  }

  .dyb-v2-header-refined .dyb-v2-iconbtn svg {
    width: 18px;
    height: 18px;
  }
}

body.dyb-v2-mobile-open {
  overflow: visible;
}

.dyb-v2-mobile-panel {
  display: block;
  width: 100%;
  max-height: min(70vh, 560px);
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  pointer-events: none;
  transition:
    opacity .26s cubic-bezier(.2,.9,.2,1),
    transform .26s cubic-bezier(.2,.9,.2,1),
    visibility .26s cubic-bezier(.2,.9,.2,1);
}

.dyb-v2-mobile-panel.is-active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

.dyb-v2-mobile-panel.is-closing {
  opacity: 0;
  visibility: visible;
  transform: translateY(-10px);
  pointer-events: none;
}

.dyb-v2-mobile-panel[hidden] {
  display: none !important;
}

.dyb-v2-mobile-inner {
  padding: 10px;
  min-height: 0;
}

@media (max-width: 680px) {
  .dyb-v2-header-refined .dyb-v2-container,
  .dyb-v2-footer-refined .dyb-v2-container {
    padding-left: 18px;
    padding-right: 18px;
  }

  .dyb-v2-header-refined .dyb-v2-navbar-refined {
    grid-template-columns: 44px minmax(0, 1fr) auto;
    gap: 8px;
  }

  .dyb-v2-header-refined .dyb-v2-mobile-toggle {
    margin-right: 0;
  }

  .dyb-v2-header-refined .dyb-v2-brand {
    min-width: 0;
    padding-inline: 0;
  }

  .dyb-v2-header-refined .dyb-v2-logo-wrap {
    gap: 0;
    max-width: 100%;
  }

  .dyb-v2-header-refined .custom-logo {
    max-height: 28px !important;
  }

  .dyb-v2-header-refined .dyb-v2-logo-text {
    display: none;
  }

  .dyb-v2-header-refined .dyb-v2-actions-icons-refined {
    gap: 8px;
    margin-left: 0;
  }

  .dyb-v2-footer-refined .dyb-v2-newsletter-fallback {
    flex-direction: column;
  }

  .dyb-v2-footer-refined .dyb-v2-footer-newsletter-copy {
    padding: 40px 0 34px;
  }

  .dyb-v2-footer-refined .dyb-v2-footer-reassurance-grid,
  .dyb-v2-footer-refined .dyb-v2-footer-grid {
    grid-template-columns: 1fr;
  }

  .dyb-v2-footer-refined .dyb-v2-footer-brand h3 {
    font-size: 40px;
  }

  .dyb-v2-footer-refined .dyb-v2-footer-bottom {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* ===== 2026-03 GLOBAL NEWSLETTER STANDARD =====
   This block used to style only the homepage.
   It now acts as the single premium newsletter owner for every page,
   post, blog, archive, and WooCommerce screen.
   ===== */

/* Promote the successful homepage/boutique newsletter styling to the
   whole website so the footer-newsletter system follows one visual rule. */
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified {
  background: #241f1a;
  border-top: 1px solid rgba(255,255,255,.08);
  border-bottom: 0;
  margin-top: 34px;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-container {
  max-width: 1280px;
  margin: 0 auto;
  padding-left: 28px;
  padding-right: 28px;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-wrap {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .92fr);
  align-items: stretch;
  gap: 0;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-copy {
  padding: 62px 56px 56px 0;
  background: #241f1a;
  color: #f7f2ec;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-kicker {
  margin-bottom: 16px;
  color: #8d8378;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-copy h2 {
  margin: 0 0 14px;
  font-size: clamp(42px, 4vw, 56px);
  line-height: .96;
  color: #f7f2ec;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-copy p {
  max-width: 620px;
  margin: 0;
  color: #c5b9aa;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form {
  margin-top: 26px;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields {
  max-width: 440px;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields p {
  margin: 0 0 12px;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields label {
  display: block;
  margin: 0 0 6px;
  font-size: 12px;
  color: #c5b9aa;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="text"],
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="email"] {
  width: 100%;
  min-height: 48px;
  padding: 13px 16px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.04);
  color: #f7f2ec;
  -webkit-text-fill-color: #f7f2ec;
  caret-color: #f7f2ec;
  opacity: 1;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="text"]:focus,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="email"]:focus,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="text"]:active,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="email"]:active {
  background: rgba(255,255,255,.08);
  color: #f7f2ec;
  -webkit-text-fill-color: #f7f2ec;
  caret-color: #f7f2ec;
  border-color: rgba(255,255,255,.26);
  box-shadow: 0 0 0 3px rgba(245,239,232,.10);
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="text"]:-webkit-autofill,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="email"]:-webkit-autofill,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="text"]:-webkit-autofill:hover,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="email"]:-webkit-autofill:hover,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="text"]:-webkit-autofill:focus,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="email"]:-webkit-autofill:focus {
  -webkit-text-fill-color: #f7f2ec;
  caret-color: #f7f2ec;
  box-shadow: 0 0 0 1000px #241f1a inset;
  transition: background-color 9999s ease-out 0s;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="text"]::placeholder,
.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="email"]::placeholder {
  color: #c5b9aa;
  opacity: 1;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .mc4wp-form-fields input[type="submit"] {
  min-height: 46px;
  padding: 0 22px;
  border: 0;
  background: #f5efe8;
  color: #241f1a;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: 11px;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-form small {
  margin-top: 12px;
  color: #8d8378;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-image {
  min-height: 520px;
  align-self: stretch;
}

.dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-image img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
  display: block;
}
/* Reassurance row: remove the accidental blue band feel and restore a subtle editorial strip. */
.dyb-v2-footer-refined .dyb-v2-footer-reassurance {
  background: #fcfaf7;
  border-top: 1px solid rgba(44,40,36,.06);
  border-bottom: 1px solid rgba(44,40,36,.06);
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-grid {
  gap: 24px;
  padding: 20px 0;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color: #b4a796;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-icon svg {
  width: 16px;
  height: 16px;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-copy strong {
  font-size: 15px;
  font-weight: 500;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-copy span {
  font-size: 13px;
}

/* Footer brand + socials: stop the ugly word break and make the social area deliberate. */
.dyb-v2-footer-refined .dyb-v2-footer-grid {
  grid-template-columns: minmax(240px, 1.55fr) repeat(4, minmax(120px, 1fr));
  gap: 40px;
}

.dyb-v2-footer-refined .dyb-v2-footer-brand h3 {
  font-size: 44px;
  line-height: .92;
  white-space: nowrap;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
}

.dyb-v2-footer-refined .dyb-v2-footer-brand p {
  max-width: 340px;
}

.dyb-v2-footer-refined .dyb-v2-footer-socials {
  gap: 12px;
  margin-top: 24px;
}

.dyb-v2-footer-refined .dyb-v2-footer-socials a {
  width: 38px;
  height: 38px;
  border-radius: 999px;
  font-size: 0;
  position: relative;
}

.dyb-v2-footer-refined .dyb-v2-footer-socials a::before {
  content: attr(aria-label);
  font-size: 10px;
  letter-spacing: .04em;
  color: currentColor;
}

/* Bottom row spacing */
.dyb-v2-footer-refined .dyb-v2-footer-bottom {
  padding: 22px 0 30px;
}

@media (max-width: 1180px) {
  .dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-wrap,
  .dyb-v2-footer-refined .dyb-v2-footer-grid {
    grid-template-columns: 1fr;
  }

  .dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-copy {
    padding-right: 0;
  }

  .dyb-v2-footer-refined .dyb-v2-footer-brand h3 {
    white-space: normal;
  }
}

@media (max-width: 680px) {
  .dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-container {
    padding-left: 18px;
    padding-right: 18px;
  }

  .dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-copy {
    padding: 38px 0 32px;
  }

  .dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-image,
  .dyb-v2-footer-newsletter.dyb-v2-home-newsletter-unified .dyb-v2-footer-newsletter-image img {
    min-height: 340px;
  }

  .dyb-v2-footer-refined .dyb-v2-footer-reassurance-grid,
  .dyb-v2-footer-refined .dyb-v2-footer-grid {
    grid-template-columns: 1fr;
  }

  .dyb-v2-footer-refined .dyb-v2-footer-socials a::before {
    font-size: 9px;
  }
}

/* ===== Global footer palette cleanup =====
   Keep the refined footer styling consistent now that the premium
   newsletter block is shared globally.
   ===== */
.dyb-v2-footer-refined {
  background: transparent !important;
  color: #2e2721;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance,
.dyb-v2-footer-refined .dyb-v2-footer-reassurance::before,
.dyb-v2-footer-refined .dyb-v2-footer-reassurance::after {
  background: #ffffff !important;
  border: 0 !important;
  box-shadow: none !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-grid {
  padding: 30px 0 26px !important;
  gap: 28px !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-item {
  align-items: center;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-icon {
  background: #ffffff !important;
  border: 1px solid rgba(46,39,33,.08) !important;
  color: #b8ab98 !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-copy strong {
  color: #201913 !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-reassurance-copy span {
  color: #a29587 !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-main,
.dyb-v2-footer-refined .dyb-v2-footer-main::before,
.dyb-v2-footer-refined .dyb-v2-footer-main::after {
  background: #f7f3ee !important;
  border: 0 !important;
  box-shadow: none !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-grid {
  padding-top: 40px;
}

.dyb-v2-footer-refined .dyb-v2-footer-brand h3 {
  color: #211913 !important;
  font-size: 30px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-brand p {
  color: #9e9082 !important;
  font-family: "Cormorant Garamond", Georgia, serif !important;
  font-size: 18px !important;
  line-height: 1.5 !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-col h4 {
  color: #a89988 !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-menu a,
.dyb-v2-footer-refined .dyb-v2-footer-bottom a,
.dyb-v2-footer-refined .dyb-v2-footer-bottom span {
  color: #6a5b4d !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-menu a:hover,
.dyb-v2-footer-refined .dyb-v2-footer-bottom a:hover {
  color: #1f1812 !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-socials {
  display: flex;
  gap: 10px;
}

.dyb-v2-footer-refined .dyb-v2-footer-socials a {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px;
  border-radius: 50% !important;
  border: 1px solid rgba(46,39,33,.09) !important;
  background: #fffdfa !important;
  color: #b5a795 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  font-size: 10px !important;
  letter-spacing: .02em;
}

.dyb-v2-footer-refined .dyb-v2-footer-socials a::before {
  content: none !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-bottom {
  border-top: 1px solid rgba(46,39,33,.08) !important;
  margin-top: 26px !important;
  padding: 18px 0 0 !important;
  justify-content: flex-start !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-bottom-right,
.dyb-v2-footer-refined .dyb-v2-payment-chip {
  display: none !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-signature,
.dyb-v2-footer-refined .dyb-v2-footer-signature::before,
.dyb-v2-footer-refined .dyb-v2-footer-signature::after {
  background: #ffffff !important;
  border: 0 !important;
  box-shadow: none !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-signature {
  padding: 16px 0 18px !important;
}

.dyb-v2-footer-refined .dyb-v2-footer-signature-mark {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  color: #221b15 !important;
  font-size: 18px;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.dyb-v2-footer-refined .dyb-v2-footer-signature-mark span {
  font-size: 9px;
  letter-spacing: .35em;
  color: #7c6e60;
}

#site-footer,
#site-footer::before,
#site-footer::after {
  border-top: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

/* kill leftover dark bars from older footer experiments */
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) #site-footer,
body.page-template-template-boutique-v2 #site-footer,
body #site-footer {
  background-image: none !important;
}

@media (max-width: 980px) {
  .dyb-v2-footer-refined .dyb-v2-footer-grid {
    grid-template-columns: 1fr 1fr !important;
  }

  .dyb-v2-footer-refined .dyb-v2-footer-brand {
    grid-column: 1 / -1;
  }
}

@media (max-width: 680px) {
  .dyb-v2-footer-refined .dyb-v2-footer-reassurance-grid,
  .dyb-v2-footer-refined .dyb-v2-footer-grid {
    grid-template-columns: 1fr !important;
  }

  .dyb-v2-footer-refined .dyb-v2-footer-signature {
    padding-bottom: 24px !important;
  }
}


/* =========================
   PERMANENT MEGA MENU POSITION FIX
   Keep submenu positioning independent from header spacing tweaks.
   ========================= */
.dyb-v2-header-refined .dyb-v2-menu-item.has-children {
  position: relative;
}

.dyb-v2-header-refined .dyb-v2-menu-item.has-children > .dyb-v2-mega-panel {
  top: calc(100% + 8px);
  width: min(1220px, calc(100vw - 48px));
  max-width: min(1220px, calc(100vw - 48px));
}

.dyb-v2-header-refined .dyb-v2-nav-left .dyb-v2-menu-item.has-children > .dyb-v2-mega-panel {
  left: 0 !important;
  right: auto !important;
  transform: translateY(8px) !important;
}

.dyb-v2-header-refined .dyb-v2-nav-right .dyb-v2-menu-item.has-children > .dyb-v2-mega-panel {
  right: 0 !important;
  left: auto !important;
  transform: translateY(8px) !important;
}

.dyb-v2-header-refined .dyb-v2-nav-left .dyb-v2-menu-item.is-open > .dyb-v2-mega-panel,
.dyb-v2-header-refined .dyb-v2-nav-left .dyb-v2-menu-item:hover > .dyb-v2-mega-panel,
.dyb-v2-header-refined .dyb-v2-nav-left .dyb-v2-menu-item:focus-within > .dyb-v2-mega-panel,
.dyb-v2-header-refined .dyb-v2-nav-right .dyb-v2-menu-item.is-open > .dyb-v2-mega-panel,
.dyb-v2-header-refined .dyb-v2-nav-right .dyb-v2-menu-item:hover > .dyb-v2-mega-panel,
.dyb-v2-header-refined .dyb-v2-nav-right .dyb-v2-menu-item:focus-within > .dyb-v2-mega-panel {
  transform: translateY(0) !important;
}


/* V2 boutique toolbar refinement — cleaner tabs, no ugly borders, better breathing */
.dyb-v2-boutique-toolbar{
  padding: 22px 0 10px;
  margin-bottom: 18px;
}

.dyb-v2-toolbar-row--shop{
  gap: 28px;
  align-items: flex-end;
}

.dyb-v2-toolbar-left,
.dyb-v2-toolbar-right{
  display: flex;
  align-items: center;
  gap: 24px;
}

.dyb-v2-filter-toggle{
  min-height: 46px;
  padding: 12px 20px;
  border-radius: 999px;
  border: 1px solid #ddd4ca;
  box-shadow: 0 1px 0 rgba(44,40,36,.04);
  background: #fff;
  color: #2c2824;
}

.dyb-v2-filters--top{
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.dyb-v2-filters--top .dyb-v2-filter{
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 0;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none;
  color: #93887d;
  line-height: 1;
  text-decoration: none;
}

.dyb-v2-filters--top .dyb-v2-filter.is-active,
.dyb-v2-filters--top .dyb-v2-filter:hover,
.dyb-v2-filters--top .dyb-v2-filter:focus-visible{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #2c2824;
  text-decoration: underline;
  text-underline-offset: 8px;
  text-decoration-thickness: 1px;
}

.dyb-v2-results-count{
  font-size: 12px;
  color: #8d8378;
}

.dyb-v2-sort{
  display: flex;
  align-items: center;
  gap: 14px;
}

.dyb-v2-sort label{
  font-size: 12px;
  color: #8d8378;
  margin: 0;
  white-space: nowrap;
}

.dyb-v2-sort select{
  min-height: 42px;
  padding: 8px 28px 8px 10px;
  border: 0;
  background: transparent;
  color: #6e655d;
}

@media (max-width: 1100px){
  .dyb-v2-boutique-toolbar{
    padding-top: 18px;
  }

  .dyb-v2-toolbar-row--shop{
    gap: 22px;
  }
}

@media (max-width: 680px){
  .dyb-v2-boutique-toolbar{
    padding: 16px 0 8px;
    margin-bottom: 14px;
  }

  .dyb-v2-toolbar-row--shop{
    gap: 16px;
    align-items: flex-start;
  }

  .dyb-v2-toolbar-left,
  .dyb-v2-toolbar-right{
    width: 100%;
    gap: 14px;
    flex-wrap: wrap;
  }

  .dyb-v2-filters--top{
    gap: 14px;
  }

  .dyb-v2-filters--top .dyb-v2-filter{
    min-height: 36px;
  }

  .dyb-v2-sort{
    gap: 10px;
  }
}

body.page-template-template-boutique-v2 .dyb-v2-toolbar-left,
body.page-template-template-boutique-v2 .dyb-v2-toolbar-right{min-width:0}
body.page-template-template-boutique-v2 .dyb-v2-filters--top{min-width:0}
body.page-template-template-boutique-v2 .dyb-v2-filters--top .dyb-v2-filter{white-space:nowrap}

@media (max-width: 1100px){
  body.page-template-template-boutique-v2 .dyb-v2-filters--top{display:none}
  body.page-template-template-boutique-v2 .dyb-v2-toolbar-left{justify-content:flex-start}
}

@media (max-width: 680px){
  body.page-template-template-boutique-v2 .dyb-v2-toolbar-right{align-items:center}
  body.page-template-template-boutique-v2 .dyb-v2-results-count{order:1}
  body.page-template-template-boutique-v2 .dyb-v2-view-switch{order:2}
  body.page-template-template-boutique-v2 .dyb-v2-sort{order:3;width:100%}
  body.page-template-template-boutique-v2 .dyb-v2-sort select{width:100%}
}


/* ===== Boutique V2 wishlist cleanup — single stable state system ===== */
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-media{
  position:relative;
}

body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-actions{
  position:absolute;
  top:14px;
  right:14px;
  z-index:5;
  pointer-events:none;
}

body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-add-to-wishlist,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-add-button,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistaddedbrowse,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistexistsbrowse,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-add-to-wishlist > div,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-add-to-wishlist > div > div{
  position:static !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  pointer-events:auto;
}

body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.add_to_wishlist,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.remove_from_wishlist,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistaddedbrowse a,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistexistsbrowse a{
  position:relative !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  min-height:22px !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  text-decoration:none !important;
  font-size:0 !important;
  line-height:0 !important;
  color:transparent !important;
}

/* hide plugin-generated label/background completely */
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.add_to_wishlist,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.remove_from_wishlist,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistaddedbrowse a,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistexistsbrowse a{
  text-indent:-9999px !important;
  white-space:nowrap !important;
}

/* clean heart icon system */
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.add_to_wishlist::before,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.remove_from_wishlist::before,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistaddedbrowse a::before,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistexistsbrowse a::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:18px;
  height:18px;
  background-color:#2c2824;
  -webkit-mask-repeat:no-repeat;
  -webkit-mask-position:center;
  mask-repeat:no-repeat;
  mask-position:center;
}

/* normal = outline heart */
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.add_to_wishlist::before{
  -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M16.5 3c-1.74 0-3.41.81-4.5 2.09A6.02 6.02 0 0 0 7.5 3C4.42 3 2 5.42 2 8.5c0 3.78 3.4 6.86 8.55 11.54L12 21.35l1.45-1.32C18.6 15.36 22 12.28 22 8.5 22 5.42 19.58 3 16.5 3Zm0 2c1.98 0 3.5 1.52 3.5 3.5 0 2.87-2.75 5.42-8 10.27C6.75 13.92 4 11.37 4 8.5 4 6.52 5.52 5 7.5 5c1.4 0 2.69.82 3.28 2.08L12 9.68l1.22-2.6A3.6 3.6 0 0 1 16.5 5Z'/></svg>");
          mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M16.5 3c-1.74 0-3.41.81-4.5 2.09A6.02 6.02 0 0 0 7.5 3C4.42 3 2 5.42 2 8.5c0 3.78 3.4 6.86 8.55 11.54L12 21.35l1.45-1.32C18.6 15.36 22 12.28 22 8.5 22 5.42 19.58 3 16.5 3Zm0 2c1.98 0 3.5 1.52 3.5 3.5 0 2.87-2.75 5.42-8 10.27C6.75 13.92 4 11.37 4 8.5 4 6.52 5.52 5 7.5 5c1.4 0 2.69.82 3.28 2.08L12 9.68l1.22-2.6A3.6 3.6 0 0 1 16.5 5Z'/></svg>");
}

/* added = filled black heart */
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.remove_from_wishlist::before,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistaddedbrowse a::before,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistexistsbrowse a::before{
  -webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/></svg>");
          mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/></svg>");
}

/* hide plugin svg/text fragments that cause the black banner */
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.add_to_wishlist > span,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.remove_from_wishlist > span,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.add_to_wishlist > svg,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.remove_from_wishlist > svg,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .feedback,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-icon,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-icon-svg-container,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-add-button span:not(.yith-wcwl-icon):not(.yith-wcwl-icon-svg-container),
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistaddedbrowse span,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistexistsbrowse span{
  display:none !important;
}

body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.add_to_wishlist:hover,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.remove_from_wishlist:hover,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.add_to_wishlist:focus-visible,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.remove_from_wishlist:focus-visible,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistaddedbrowse a:hover,
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistexistsbrowse a:hover{
  transform:scale(1.06);
  opacity:.8;
}

@media (max-width:680px){
  body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-actions{
    top:10px;
    right:10px;
  }
  body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.add_to_wishlist,
  body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.remove_from_wishlist,
  body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistaddedbrowse a,
  body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistexistsbrowse a{
    width:20px !important;
    height:20px !important;
    min-width:20px !important;
    min-height:20px !important;
  }
  body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.add_to_wishlist::before,
  body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action a.remove_from_wishlist::before,
  body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistaddedbrowse a::before,
  body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-action .yith-wcwl-wishlistexistsbrowse a::before{
    width:16px;
    height:16px;
  }
}

/* ===== 2026-03 GLOBAL NEWSLETTER STANDARD =====
   Boutique no longer needs its own duplicate newsletter overrides.
   The homepage refined block is now the single shared owner.
   ===== */

/* =========================================================
   GLOBAL STICKY HEADER FIX — V2 PAGES
   Keep sticky on desktop + mobile and respect admin bar.
   ========================================================= */
body.dyb-v2-body .dyb-v2-navwrap,
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-navwrap,
body.page-template-template-boutique-v2 .dyb-v2-navwrap,
body .dyb-v2-header-refined .dyb-v2-navwrap{
  position: sticky !important;
  top: 0 !important;
  z-index: 9999 !important;
}

body.admin-bar.dyb-v2-body .dyb-v2-navwrap,
:is(body.admin-bar.page-template-template-home-v2, body.admin-bar.dyb-v2-front-page) .dyb-v2-navwrap,
body.admin-bar.page-template-template-boutique-v2 .dyb-v2-navwrap,
body.admin-bar .dyb-v2-header-refined .dyb-v2-navwrap{
  top: 0 !important;
}

@media (max-width: 782px){
  body.admin-bar.dyb-v2-body .dyb-v2-navwrap,
  :is(body.admin-bar.page-template-template-home-v2, body.admin-bar.dyb-v2-front-page) .dyb-v2-navwrap,
  body.admin-bar.page-template-template-boutique-v2 .dyb-v2-navwrap,
  body.admin-bar .dyb-v2-header-refined .dyb-v2-navwrap{
    top: 0 !important;
  }
}

/* Kill the mobile rule that was disabling sticky */
@media (max-width: 680px){
  body.dyb-v2-body .dyb-v2-navwrap,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-navwrap,
  body.page-template-template-boutique-v2 .dyb-v2-navwrap,
  body .dyb-v2-header-refined .dyb-v2-navwrap{
    position: sticky !important;
    top: 0 !important;
  }

  body.admin-bar.dyb-v2-body .dyb-v2-navwrap,
  :is(body.admin-bar.page-template-template-home-v2, body.admin-bar.dyb-v2-front-page) .dyb-v2-navwrap,
  body.admin-bar.page-template-template-boutique-v2 .dyb-v2-navwrap,
  body.admin-bar .dyb-v2-header-refined .dyb-v2-navwrap{
    top: 0 !important;
  }
}



.dyb-v2-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  background: #fff;
}

body {
  padding-top: 80px; /* adjust */
}


/* ===== 2026-03 BOUTIQUE V2 PRODUCT TYPOGRAPHY REBALANCE =====
   Goal: make product titles smaller and more premium, with better hierarchy
   between category / title / price, without touching other components.
*/
body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-meta{
  padding-top: 12px;
}

body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-cat{
  display:block;
  margin-bottom: 5px;
  font-size: 10px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #a19588;
  line-height: 1.2;
}

body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-meta h3{
  margin: 0 0 6px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 22px;
  line-height: 1.04;
  font-weight: 400;
  letter-spacing: 0;
}

body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-meta h3 a{
  color:#2c2824;
  text-decoration:none;
}

body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-price{
  font-size: 13px;
  line-height: 1.35;
  color:#75685b;
}

@media (max-width: 1100px){
  body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-meta h3{
    font-size: 20px;
  }
}

@media (max-width: 680px){
  body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-meta{
    padding-top: 10px;
  }

  body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-meta h3{
    font-size: 18px;
    line-height: 1.08;
    margin-bottom: 5px;
  }

  body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-product-cat{
    margin-bottom: 4px;
    font-size: 9px;
    letter-spacing: .13em;
  }

  body.page-template-template-boutique-v2 .dyb-v2-product-card-shop .dyb-v2-price{
    font-size: 12px;
  }
}


/* =========================================================
   MERGED FONT DISPLAY PATCH
   Purpose: keep icon/theme fonts on swap without a separate CSS request.
   Source: assets/css/font-display.css
   ========================================================= */

/* Force font-display swap for icon/theme fonts (Lighthouse) */

/* Zoli theme font */
@font-face{
  font-family: zoli;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

/* Elementor icons */
@font-face{
  font-family: eicons;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

/* Font Awesome 5 Free (Solid 900 + Regular 400) */
@font-face{
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
}
@font-face{
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

/* End merged font display patch. */


/* =========================================================
   MERGED EDITORIAL LAYER
   Purpose: keep editorial/search/post/archive styling inside the main child stylesheet.
   Source: assets/css/dyb-editorial.css
   Note: selectors stay scoped, so behavior remains page-safe.
   ========================================================= */

/* Unified editorial layer for standard pages, archives, search, 404 and posts. */
.dyb-v2-editorial-page {
  padding: 42px 0 78px;
}

.dyb-v2-editorial-hero {
  padding: 10px 0 28px;
}

.dyb-v2-editorial-hero--single {
  max-width: 900px;
  margin: 0 auto 18px;
}

.dyb-v2-editorial-title {
  margin: 8px 0 0;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(42px, 5vw, 72px);
  line-height: 0.96;
  font-weight: 400;
  color: #2c2824;
}

.dyb-v2-editorial-intro,
.dyb-v2-editorial-intro p {
  max-width: 760px;
  margin: 14px 0 0;
  font-size: 18px;
  line-height: 1.75;
  color: #61584f;
}

.dyb-v2-breadcrumbs {
  margin-bottom: 12px;
  font-size: 12px;
  color: #9b9188;
}

.dyb-v2-editorial-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 26px;
}

.dyb-v2-editorial-card,
.dyb-v2-search-card {
  background: #fcfaf7;
  border: 1px solid rgba(44, 40, 36, 0.08);
  min-width: 0;
}

.dyb-v2-editorial-card-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.dyb-v2-editorial-media img,
.dyb-v2-single-media img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.dyb-v2-editorial-media img {
  aspect-ratio: 4 / 5;
}

/* Fiches couture only — reduce displayed thumbnail size to avoid pixelation */
body.category-fiches-couture .dyb-v2-editorial-media {
  padding: 18px 18px 0;
}

body.category-fiches-couture .dyb-v2-editorial-media img {
  width: 72%;
  max-width: 270px;
  margin: 0 auto;
  aspect-ratio: auto;
}
.dyb-v2-editorial-body,
.dyb-v2-search-card-inner {
  padding: 20px 20px 22px;
}

.dyb-v2-editorial-meta,
.dyb-v2-search-card-meta,
.dyb-v2-single-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  font-size: 11px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #9b9188;
}

.dyb-v2-editorial-card-title,
.dyb-v2-search-card-title {
  margin: 10px 0 10px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 30px;
  line-height: 1.02;
  font-weight: 400;
  color: #2c2824;
}

.dyb-v2-search-card-title a {
  color: inherit;
  text-decoration: none;
}

.dyb-v2-editorial-excerpt,
.dyb-v2-search-card-excerpt {
  font-size: 15px;
  line-height: 1.75;
  color: #61584f;
}

.dyb-v2-singular-page .dyb-v2-editorial-content,
.dyb-v2-single-article .dyb-v2-editorial-content {
  max-width: 900px;
  margin: 0 auto;
  font-size: 17px;
  line-height: 1.9;
  color: #3b3631;
}

.dyb-v2-singular-page .dyb-v2-editorial-content > * + *,
.dyb-v2-single-article .dyb-v2-editorial-content > * + * {
  margin-top: 1em;
}

.dyb-v2-singular-page .dyb-v2-editorial-content h2,
.dyb-v2-single-article .dyb-v2-editorial-content h2,
.dyb-v2-singular-page .dyb-v2-editorial-content h3,
.dyb-v2-single-article .dyb-v2-editorial-content h3 {
  font-family: "Cormorant Garamond", Georgia, serif;
  line-height: 1.05;
  color: #2c2824;
}

.dyb-v2-single-media {
  max-width: 520px;
  margin: 22px auto 28px;
}

.single-post .dyb-v2-single-article.category-fiches-couture .dyb-v2-single-media {
  max-width: 520px !important;
}
.dyb-v2-search-results {
  display: grid;
  gap: 16px;
}

.dyb-v2-search-inline,
.dyb-v2-comments-wrap {
  max-width: 900px;
  margin: 28px auto 0;
}

.dyb-v2-searchform-row {
  display: flex;
  gap: 12px;
}

.dyb-v2-searchform-input {
  flex: 1;
  min-width: 0;
  border: 1px solid rgba(44, 40, 36, 0.12);
  background: #fff;
  color: #2c2824;
  padding: 14px 16px;
}

.dyb-v2-searchform-button {
  border: none;
  background: #2c2824;
  color: #fff;
  padding: 14px 20px;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 12px;
}

.dyb-v2-empty-state {
  max-width: 760px;
  padding: 30px 0 20px;
}

.dyb-v2-single-footer {
  max-width: 900px;
  margin: 28px auto 0;
  padding-top: 18px;
  border-top: 1px solid rgba(44, 40, 36, 0.08);
}

.dyb-v2-editorial-page .navigation.pagination,
.dyb-v2-single-footer .nav-links {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-top: 28px;
}

.dyb-v2-editorial-page .navigation.pagination .nav-links {
  display: inline-flex;
  gap: 8px;
  flex-wrap: wrap;
}

.dyb-v2-editorial-page .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  border: 1px solid rgba(44, 40, 36, 0.12);
  text-decoration: none;
  color: #2c2824;
}

.dyb-v2-editorial-page .page-numbers.current {
  background: #2c2824;
  color: #fff;
}

body:not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) .wrapper,
body:not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) #page-wrapper,
body:not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) #single-wrapper,
body:not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) #archive-wrapper,
body:not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) #search-wrapper,
body:not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) #index-wrapper,
body:not(.page-template-template-home-v2):not(.dyb-v2-front-page):not(.page-template-template-boutique-v2) #error-404-wrapper {
  background: transparent;
}

@media (max-width: 1100px) {
  .dyb-v2-editorial-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .dyb-v2-editorial-page {
    padding: 28px 0 60px;
  }

  .dyb-v2-editorial-grid {
    grid-template-columns: 1fr;
  }

  .dyb-v2-searchform-row,
  .dyb-v2-single-footer .nav-links {
    flex-direction: column;
  }
}

/* End merged editorial layer. */


/* =========================================================
   NEWSLETTER IMAGE — match homepage hover behavior
   Scope: shared V2 footer newsletter image only
   ========================================================= */
.dyb-v2-footer-newsletter-image,
.dyb-v2-home-newsletter-image {
  overflow: hidden;
}

.dyb-v2-footer-newsletter-image img,
.dyb-v2-home-newsletter-image img {
  transform: scale(1);
  transition: transform .5s ease;
}

@media (hover: hover) {
  .dyb-v2-footer-newsletter-image:hover img,
  .dyb-v2-footer-newsletter-image:focus-within img,
  .dyb-v2-home-newsletter-image:hover img,
  .dyb-v2-home-newsletter-image:focus-within img {
    transform: scale(1.03);
  }
}

/* =========================================================
   STORY IMAGE — match homepage hover behavior
   Scope: Home V2 story image only
   ========================================================= */
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-media-v2 img {
  transform: none;
  transition: opacity .25s ease;
}

@media (hover: hover) {
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-media-v2:hover img,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-media-v2:focus-within img {
    transform: none;
  }
}

/* =========================================================
   HERO IMAGE — match homepage hover behavior
   Scope: Home V2 hero image only
   ========================================================= */
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-image-wrap {
  overflow: hidden;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-image-wrap img {
  transform: scale(1);
  transition: transform .5s ease;
}

@media (hover: hover) {
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-image-wrap:hover img,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-hero-image-wrap:focus-within img {
    transform: scale(1.03);
  }
}


/* ===== FRONT PAGE HARD FIX — scope directly to the real homepage root ===== */
.dyb-v2-home,
.dyb-v2-home * { box-sizing: border-box; }
.dyb-v2-home { background: #f8f4ef; padding-bottom: 0; }
.dyb-v2-home .dyb-v2-home-hero-v3 { padding: 46px 0 34px; }
.dyb-v2-home .dyb-v2-home-hero-split { max-width: 1280px; margin: 0 auto; padding: 0 28px; display: grid; grid-template-columns: minmax(0,1.16fr) minmax(340px,520px); gap: 52px; align-items: center; }
.dyb-v2-home .dyb-v2-home-hero-copy-panel { background: transparent; min-width: 0; }
.dyb-v2-home .dyb-v2-home-hero-copy-inner { max-width: 640px; padding: 0; }
.dyb-v2-home .dyb-v2-home-hero-media-panel { max-width: 520px; width: 100%; justify-self: end; }
.dyb-v2-home .dyb-v2-home-hero-v3 .dyb-v2-eyebrow { margin-bottom: 16px; font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: #9b9188; }
.dyb-v2-home .dyb-v2-home-hero-v3 h1 { margin: 0 0 22px; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(50px,4.9vw,76px); line-height: .96; font-weight: 400; letter-spacing: -.015em; color: #2c2824; }
.dyb-v2-home .dyb-v2-home-hero-v3 .dyb-v2-hero-title-line { display: block; }
.dyb-v2-home .dyb-v2-home-hero-v3 .dyb-v2-hero-title-line + .dyb-v2-hero-title-line { margin-top: .09em; }
.dyb-v2-home .dyb-v2-home-hero-v3 h1 em { font-style: italic; font-weight: 400; }
.dyb-v2-home .dyb-v2-home-hero-v3 p { max-width: 420px; margin: 0; font-size: 18px; line-height: 1.7; color: #5f554c; }
.dyb-v2-home .dyb-v2-home-hero-v3 .dyb-v2-actions { margin-top: 26px; gap: 16px; }
.dyb-v2-home .dyb-v2-home-hero-image-wrap { display: block; width: 100%; overflow: hidden; }
.dyb-v2-home .dyb-v2-home-hero-image-wrap img { display: block; width: 100%; height: auto; aspect-ratio: 5 / 6; object-fit: cover; background: #e7dfd5; }
.dyb-v2-home .dyb-v2-home-collections-v2 { display: none !important; }
.dyb-v2-home .dyb-v2-section { padding: 34px 0; }
.dyb-v2-home .dyb-v2-container { max-width: 1280px; margin: 0 auto; padding: 0 28px; }
.dyb-v2-home .dyb-v2-section-head { margin-bottom: 22px; }
.dyb-v2-home .dyb-v2-section-head h2 { margin: 8px 0 0; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(38px,3.6vw,52px); line-height: 1; font-weight: 400; }
.dyb-v2-home .dyb-v2-inline-link { display: inline-flex; align-items: center; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: #9b9188; }
.dyb-v2-home .dyb-v2-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
.dyb-v2-home .dyb-v2-product-grid-4 { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 30px 22px; }
.dyb-v2-home .dyb-v2-product-grid-3 { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px 22px; }
.dyb-v2-home .dyb-v2-product-card { display: flex; flex-direction: column; }
.dyb-v2-home .dyb-v2-product-image { position: relative; display: block; overflow: hidden; background: #efe8df; aspect-ratio: 3 / 4; }
.dyb-v2-home .dyb-v2-product-image img { width: 100%; height: 100%; object-fit: cover; display: block; }
.dyb-v2-home .dyb-v2-product-meta { padding-top: 12px; }
.dyb-v2-home .dyb-v2-product-cat { display: block; margin-bottom: 6px; font-size: 10px; letter-spacing: .16em; text-transform: uppercase; color: #a19588; }
.dyb-v2-home .dyb-v2-home-story-v2 { padding-top: 34px; }
.dyb-v2-home .dyb-v2-story-shell { display: grid; grid-template-columns: minmax(0,560px) minmax(280px,400px); justify-content: space-between; gap: 28px; align-items: center; }
.dyb-v2-home .dyb-v2-story-media-v2 { max-width: 560px; width: 100%; margin: 0 auto; overflow: hidden; background: linear-gradient(180deg, #f3ede5 0%, #ece4da 100%); }
.dyb-v2-home .dyb-v2-story-media-v2 img { display: block; width: 100%; height: 100%; aspect-ratio: 3 / 4; object-fit: contain; object-position: center center; }
.dyb-v2-home .dyb-v2-story-copy-v2 { max-width: 400px; }
.dyb-v2-home .dyb-v2-story-rule { width: 44px; height: 1px; background: rgba(44,40,36,.28); margin-bottom: 18px; }
.dyb-v2-home .dyb-v2-story-copy-v2 h2 { margin: 8px 0 18px; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(38px,3.6vw,52px); line-height: .98; font-weight: 400; color: #2c2824; }
.dyb-v2-home .dyb-v2-story-copy-v2 p { margin: 0 0 14px; font-size: 16px; line-height: 1.75; color: #61584f; }
.dyb-v2-home .dyb-v2-story-copy-v2 blockquote { margin: 18px 0; padding: 0; border: 0; font-family: "Cormorant Garamond", Georgia, serif; font-size: 28px; line-height: 1.15; color: #2c2824; }
.dyb-v2-home .dyb-v2-favorites-grid { display: grid; grid-template-columns: 300px minmax(0,1fr); gap: 28px; align-items: start; }
.dyb-v2-home .dyb-v2-favorites-intro { max-width: 260px; }
.dyb-v2-home .dyb-v2-favorites-intro h2 { margin: 8px 0 12px; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(38px,3.4vw,48px); line-height: 1; font-weight: 400; }
.dyb-v2-home .dyb-v2-favorites-intro p { margin: 0 0 18px; font-size: 16px; line-height: 1.75; color: #61584f; }
.dyb-v2-home .dyb-v2-home-fit-v2 { padding-top: 10px; }
.dyb-v2-home .dyb-v2-fit-grid { display: grid; grid-template-columns: 300px minmax(0,1fr); gap: 28px; align-items: start; }
.dyb-v2-home .dyb-v2-fit-intro { max-width: 280px; }
.dyb-v2-home .dyb-v2-fit-intro h2 { margin: 8px 0 12px; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(38px,3.4vw,48px); line-height: 1; font-weight: 400; }
.dyb-v2-home .dyb-v2-fit-intro h2 em { font-style: italic; font-weight: 400; }
.dyb-v2-home .dyb-v2-fit-intro p { margin: 0 0 16px; font-size: 16px; line-height: 1.75; color: #61584f; }
.dyb-v2-home .dyb-v2-fit-points { margin: 0 0 22px; padding: 0; list-style: none; }
.dyb-v2-home .dyb-v2-fit-points li { position: relative; margin: 0 0 10px; padding-left: 16px; font-size: 14px; line-height: 1.65; color: #5f554c; }
.dyb-v2-home .dyb-v2-fit-points li::before { content: ""; position: absolute; top: .7em; left: 0; width: 5px; height: 5px; border-radius: 999px; background: rgba(44,40,36,.42); }
.dyb-v2-home .dyb-v2-testimonials-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.dyb-v2-home .dyb-v2-inspirations-shell {
  display: grid;
  grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr);
  gap: 24px;
  align-items: start;
}
.dyb-v2-home .dyb-v2-inspirations-shell.is-single {
  grid-template-columns: minmax(0,760px);
  justify-content: center;
}
.dyb-v2-home .dyb-v2-inspirations-side-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 24px;
  align-content: start;
}
.dyb-v2-home .dyb-v2-inspo-item {
  display: block;
  color: inherit;
  text-decoration: none;
}
.dyb-v2-home .dyb-v2-inspo-media {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  overflow: hidden;
  background: #f5efe8;
  border: 1px solid rgba(44,40,36,.08);
  box-shadow: 0 8px 24px rgba(0,0,0,.04);
  padding: 14px;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background-color .22s ease;
}
.dyb-v2-home .dyb-v2-inspo-media-featured {
  aspect-ratio: 4 / 5;
  padding: 18px;
}
.dyb-v2-home .dyb-v2-inspo-media-secondary {
  aspect-ratio: 1 / 1;
}
.dyb-v2-home .dyb-v2-inspo-item img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
  object-position: center center;
  display: block;
  transform: scale(1);
  transition: transform .45s ease;
}
.dyb-v2-home .dyb-v2-home-newsletter-v2 { background: #241f1a; margin-top: 34px; padding: 0; }
.dyb-v2-home .dyb-v2-home-newsletter-wrap { max-width: 1280px; margin: 0 auto; padding: 0 28px; display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,520px); align-items: stretch; }
.dyb-v2-home .dyb-v2-home-newsletter-copy { padding: 56px 48px; background: #241f1a; color: #f7f2ec; }
.dyb-v2-home .dyb-v2-home-newsletter-copy .dyb-v2-kicker { color: #8d8378; margin-bottom: 14px; }
.dyb-v2-home .dyb-v2-home-newsletter-copy h2 { margin: 0 0 14px; font-family: "Cormorant Garamond", Georgia, serif; font-size: clamp(42px,4vw,58px); line-height: .98; font-weight: 400; color: #f7f2ec; }
.dyb-v2-home .dyb-v2-home-newsletter-copy p { margin: 0; max-width: 470px; font-size: 16px; line-height: 1.75; color: #c5b9aa; }
.dyb-v2-home .dyb-v2-home-newsletter-form { margin-top: 22px; }
.dyb-v2-home .dyb-v2-newsletter-fallback { display: flex; gap: 10px; max-width: 430px; }
.dyb-v2-home .dyb-v2-newsletter-fallback input { flex: 1; min-width: 0; border: 1px solid rgba(255,255,255,.14); background: transparent; color: #f8f4ef; padding: 15px 16px; }
.dyb-v2-home .dyb-v2-newsletter-fallback button { border: none; background: #f5efe8; color: #241f1a; padding: 15px 22px; text-transform: uppercase; letter-spacing: .12em; font-size: 12px; }
.dyb-v2-home .dyb-v2-home-newsletter-form small { display: block; margin-top: 12px; color: #8d8378; }
.dyb-v2-home .dyb-v2-home-newsletter-image { overflow: hidden; }
.dyb-v2-home .dyb-v2-home-newsletter-image img { display: block; width: 100%; height: 100%; min-height: 100%; object-fit: cover; filter: grayscale(1); }
@media (max-width: 1100px) {
  .dyb-v2-home .dyb-v2-home-hero-split,
  .dyb-v2-home .dyb-v2-story-shell,
  .dyb-v2-home .dyb-v2-fit-grid,
  .dyb-v2-home .dyb-v2-favorites-grid,
  .dyb-v2-home .dyb-v2-home-newsletter-wrap { grid-template-columns: 1fr; }
  .dyb-v2-home .dyb-v2-product-grid-4 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .dyb-v2-home .dyb-v2-product-grid-3,
  .dyb-v2-home .dyb-v2-testimonials-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .dyb-v2-home .dyb-v2-inspirations-shell { grid-template-columns: 1fr; gap: 20px; }
  .dyb-v2-home .dyb-v2-inspirations-shell.is-single { grid-template-columns: 1fr; }
  .dyb-v2-home .dyb-v2-inspirations-side-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
  .dyb-v2-home .dyb-v2-home-newsletter-copy { padding: 42px 32px; }
}
@media (max-width: 767px) {
  .dyb-v2-home .dyb-v2-home-hero-split { padding: 0 18px; gap: 28px; }
  .dyb-v2-home .dyb-v2-home-hero-v3 h1 { font-size: 52px; line-height: .98; }
  .dyb-v2-home .dyb-v2-home .dyb-v2-section,
  .dyb-v2-home .dyb-v2-section { padding: 28px 0; }
  .dyb-v2-home .dyb-v2-container { padding: 0 18px; }
  .dyb-v2-home .dyb-v2-section-head h2,
  .dyb-v2-home .dyb-v2-fit-intro h2,
  .dyb-v2-home .dyb-v2-favorites-intro h2,
  .dyb-v2-home .dyb-v2-story-copy-v2 h2,
  .dyb-v2-home .dyb-v2-home-newsletter-copy h2 { font-size: 42px; }
  .dyb-v2-home .dyb-v2-product-grid-4,
  .dyb-v2-home .dyb-v2-product-grid-3,
  .dyb-v2-home .dyb-v2-testimonials-grid { grid-template-columns: 1fr; }
  .dyb-v2-home .dyb-v2-inspirations-shell { grid-template-columns: 1fr; gap: 18px; }
  .dyb-v2-home .dyb-v2-inspirations-side-grid { grid-template-columns: 1fr; gap: 16px; }
  .dyb-v2-home .dyb-v2-inspo-media-featured,
  .dyb-v2-home .dyb-v2-inspo-media-secondary { aspect-ratio: auto; padding: 0; background: transparent; border: 0; box-shadow: none; }
  .dyb-v2-home .dyb-v2-inspo-item img { height: auto; }
  .dyb-v2-home .dyb-v2-story-shell { display: grid; grid-template-columns: 1fr; }
  .dyb-v2-home .dyb-v2-story-copy-v2 { order: 1; max-width: none; }
  .dyb-v2-home .dyb-v2-story-media-v2 { order: 2; }
  .dyb-v2-home .dyb-v2-home-newsletter-copy { padding: 34px 24px; }
  .dyb-v2-home .dyb-v2-story-copy-v2 blockquote { font-size: 24px; }
}


/* =========================================================
   FRONT PAGE PARITY BRIDGE — keep real front-page identical
   to the original Home V2 template without touching Boutique.
   The real fix is the dyb-v2-body class in functions.php;
   these rules only reinforce the same selector environment.
   ========================================================= */
body.dyb-v2-front-page { background: var(--dyb-v2-bg, #f8f4ef); }

body.dyb-v2-front-page .dyb-v2-header,
body.dyb-v2-front-page .dyb-v2-footer,
body.dyb-v2-front-page .dyb-v2-page {
  font-family: Inter, Arial, sans-serif;
  color: var(--dyb-v2-text, #2c2824);
}

body.dyb-v2-front-page .dyb-v2-container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 28px;
}

body.dyb-v2-front-page .dyb-v2-home,
body.dyb-v2-front-page .dyb-v2-home * {
  box-sizing: border-box;
}

@media (max-width: 767px) {
  body.dyb-v2-front-page .dyb-v2-container {
    padding: 0 18px;
  }
}

/* =========================================================
   BOUTIQUE HERO IMAGE — match homepage hover behavior
   Scope: Boutique V2 hero image only
   ========================================================= */
body.page-template-template-boutique-v2 .dyb-v2-boutique-media {
  overflow: hidden;
}

body.page-template-template-boutique-v2 .dyb-v2-boutique-media img {
  transform: scale(1);
  transition: transform .5s ease;
}

@media (hover: hover) {
  body.page-template-template-boutique-v2 .dyb-v2-boutique-media:hover img,
  body.page-template-template-boutique-v2 .dyb-v2-boutique-media:focus-within img {
    transform: scale(1.03);
  }
}







.dyb-thankyou-actions {
  margin-top: 32px;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

.dyb-thankyou-actions .button {
  min-width: 220px;
  text-align: center;
}


/* =========================================================
   STORY PRODUCTS CAROUSEL — Notre histoire
   Controlled portrait frame refinement
   Goal:
   - keep the slider and text layout intact
   - remove the empty side bands
   - keep the product more visible in a cleaner frame
   - strengthen title/price readability
   - touch only this section
   ========================================================= */
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-media-v2 {
  position: relative;
  overflow: hidden;
  background: #efe8df;
  border: 1px solid rgba(44,40,36,.06);
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider {
  position: relative;
  width: 100%;
  background: linear-gradient(180deg, #f3ede5 0%, #ece4da 100%);
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-slide {
  height: auto;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-card {
  position: relative;
  display: block;
  color: inherit;
  text-decoration: none;
  background: transparent;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-image {
  position: relative;
  display: block;
  aspect-ratio: 3 / 4;
  overflow: hidden;
  background: linear-gradient(180deg, #f3ede5 0%, #ece4da 100%);
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  transform: none;
  transition: opacity .25s ease;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-overlay {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 26px 24px 22px;
  background: linear-gradient(to top, rgba(16,13,11,.90) 0%, rgba(16,13,11,.62) 34%, rgba(16,13,11,.18) 66%, rgba(16,13,11,0) 100%);
  color: #f8f4ef;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-cat {
  font-size: 10px;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(248,244,239,.80);
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-title {
  display: block;
  max-width: 15ch;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(30px, 3.1vw, 40px);
  line-height: .95;
  font-weight: 400;
  color: #fff;
  text-shadow: 0 2px 18px rgba(0,0,0,.18);
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-price,
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-price .amount {
  font-size: 14px;
  line-height: 1.4;
  color: rgba(248,244,239,.96);
  text-shadow: 0 1px 12px rgba(0,0,0,.16);
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-price del,
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-price ins {
  color: inherit;
  text-decoration-color: rgba(248,244,239,.45);
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-button-prev,
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-button-next {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: rgba(248,244,239,.96);
  color: #2c2824;
  border: 1px solid rgba(44,40,36,.10);
  box-shadow: 0 12px 28px rgba(0,0,0,.16);
  top: 50%;
  transform: translateY(-50%);
  z-index: 20;
  transition: background .22s ease, box-shadow .22s ease, transform .22s ease, color .22s ease;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-button-prev::after,
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-button-next::after {
  font-size: 16px;
  font-weight: 700;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-button-prev {
  left: 18px;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-button-next {
  right: 18px;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-pagination {
  bottom: 14px !important;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  opacity: 1;
  background: rgba(248,244,239,.42);
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-pagination-bullet-active {
  background: #fff;
}

@media (hover: hover) {
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-card:hover .dyb-v2-story-product-image img,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-card:focus-visible .dyb-v2-story-product-image img {
    transform: none;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-button-prev:hover,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-button-next:hover {
    background: #fff;
    box-shadow: 0 16px 34px rgba(0,0,0,.18);
    color: #111;
  }
}

@media (max-width: 680px) {
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-image {
    aspect-ratio: 3 / 4;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-image img {
    object-position: center center;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-overlay {
    padding: 18px 16px 18px;
    gap: 5px;
    background: linear-gradient(to top, rgba(16,13,11,.92) 0%, rgba(16,13,11,.68) 36%, rgba(16,13,11,.24) 68%, rgba(16,13,11,0) 100%);
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-product-title {
    font-size: 28px;
    max-width: none;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-button-prev,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-button-next {
    width: 40px;
    height: 40px;
    top: 50%;
    transform: translateY(-50%);
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-button-prev {
    left: 12px;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-story-products-slider .swiper-button-next {
    right: 12px;
  }
}







/* TEMP HIDE — Home V2 sections on Christine request */
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-fit-v2,
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-favorites-v2{
  display: none !important;
}

/* =========================================================
   DYB — Home V2 real product reviews
   What this block does:
   - turns testimonial cards into real clickable review cards
   - adds product name + CTA line
   - keeps the scope limited to Home V2 only
   ========================================================= */
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-testimonials-v2 .dyb-v2-testimonial-card-link{
  display: block;
  color: inherit;
  text-decoration: none;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background-color .22s ease;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-testimonials-v2 .dyb-v2-testimonial-card-link:visited{
  color: inherit;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-testimonials-v2 .dyb-v2-testimonial-card-link:hover,
:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-testimonials-v2 .dyb-v2-testimonial-card-link:focus-visible{
  transform: translateY(-2px);
  border-color: rgba(44,40,36,.16);
  box-shadow: 0 18px 34px rgba(44,40,36,.08);
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-testimonials-v2 .dyb-v2-testimonial-card-link:focus-visible{
  outline: 2px solid rgba(44,40,36,.26);
  outline-offset: 3px;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-testimonials-v2 .dyb-v2-testimonial-card footer .dyb-v2-testimonial-product{
  font-size: 12px;
  line-height: 1.5;
  color: #7b726b;
  text-transform: none;
  letter-spacing: .02em;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-testimonials-v2 .dyb-v2-testimonial-card footer .dyb-v2-testimonial-link-text{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 2px;
  font-size: 11px;
  line-height: 1.4;
  color: #2c2824;
  text-transform: uppercase;
  letter-spacing: .12em;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-testimonials-v2 .dyb-v2-testimonial-card footer .dyb-v2-testimonial-link-text::after{
  content: "↗";
  font-size: 12px;
  line-height: 1;
}





/* TranslatePress floating switcher — force lower top-right position */
nav.trp-language-switcher.trp-floating-switcher{
  position: fixed !important;
  inset: 92px 16px auto auto !important;
  top: 92px !important;
  right: 16px !important;
  bottom: auto !important;
  left: auto !important;
  transform: none !important;

  --top: 92px !important;
  --right: 16px !important;
  --bottom: auto !important;
  --left: auto !important;

  z-index: 99999 !important;
}

/* Logged-in desktop admin bar */
body.admin-bar nav.trp-language-switcher.trp-floating-switcher{
  inset: 124px 16px auto auto !important;
  top: 124px !important;
  right: 16px !important;
  --top: 124px !important;
  --right: 16px !important;
}

/* Tablet + mobile */
@media (max-width: 991.98px){
  nav.trp-language-switcher.trp-floating-switcher{
    inset: 74px 12px auto auto !important;
    top: 74px !important;
    right: 12px !important;

    --top: 74px !important;
    --right: 12px !important;
  }

  body.admin-bar nav.trp-language-switcher.trp-floating-switcher{
    inset: 120px 12px auto auto !important;
    top: 120px !important;
    right: 12px !important;

    --top: 120px !important;
    --right: 12px !important;
  }
}
/* =========================================================
   V2 HEADER — MOBILE ADMIN BAR GAP KILL
   Purpose: on mobile V2 pages, keep sticky header flush to top
   even when body has admin-bar class in logged-in testing.
   Scope: V2 pages only, mobile only.
   ========================================================= */
@media (max-width: 782px){
  body.admin-bar.dyb-v2-body .dyb-v2-navwrap,
  :is(body.admin-bar.page-template-template-home-v2, body.admin-bar.dyb-v2-front-page) .dyb-v2-navwrap,
  body.admin-bar.page-template-template-boutique-v2 .dyb-v2-navwrap,
  body.admin-bar .dyb-v2-header-refined .dyb-v2-navwrap{
    top: 0 !important;
  }

  body.admin-bar .dyb-v2-header-refined,
  body.admin-bar .dyb-v2-header-refined .dyb-v2-navwrap{
    margin-top: 0 !important;
    transform: none !important;
  }
}


/* =========================================================
   BLOG ET TUTOS — editorial collage refined
   Scope: Home V2 / front-page only
   Purpose:
   - keep the same PHP + ACF logic
   - keep links pointing to blog posts
   - replace the awkward mosaic with a cleaner Figma-like collage
   - improve aspect ratio, spacing, and responsive behavior
   ========================================================= */

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-container{
  max-width: 1200px;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-section-head{
  margin-bottom: 20px;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-section-head-inline{
  align-items: flex-end;
  gap: 20px;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspirations-shell{
  display: grid;
  grid-template-columns: minmax(0, .84fr) minmax(0, .62fr) minmax(0, .96fr) minmax(0, .62fr);
  grid-template-rows: repeat(2, clamp(190px, 18vw, 248px));
  gap: 18px;
  align-items: stretch;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspirations-shell.is-single{
  grid-template-columns: minmax(0, 760px);
  grid-template-rows: auto;
  justify-content: center;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspirations-side-grid{
  display: contents;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item{
  display: block;
  min-width: 0;
  min-height: 0;
  height: 100%;
  color: inherit;
  text-decoration: none;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item-featured{
  grid-column: 1;
  grid-row: 1 / span 2;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item-secondary-1{
  grid-column: 2;
  grid-row: 1;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item-secondary-2{
  grid-column: 3 / span 2;
  grid-row: 1;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item-secondary-3{
  grid-column: 2 / span 2;
  grid-row: 2;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item-secondary-4{
  grid-column: 4;
  grid-row: 2;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-media{
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #f3ede6;
  border: 1px solid rgba(44,40,36,.08);
  box-shadow: none;
  padding: 0;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center center;
  transform: scale(1);
  transition: transform .42s ease;
}

@media (hover: hover){
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item:hover .dyb-v2-inspo-media,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item:focus-within .dyb-v2-inspo-media{
    transform: translateY(-2px);
    border-color: rgba(44,40,36,.12);
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item:hover img,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item:focus-within img{
    transform: scale(1.025);
  }
}

@media (max-width: 1100px){
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspirations-shell{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto;
    gap: 16px;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspirations-shell.is-single{
    grid-template-columns: 1fr;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item-featured{
    grid-column: 1 / -1;
    grid-row: auto;
    height: auto;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-media-featured{
    aspect-ratio: 16 / 10;
    height: auto;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspirations-side-grid{
    display: grid;
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item-secondary-1,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item-secondary-2,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item-secondary-3,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-item-secondary-4{
    grid-column: auto;
    grid-row: auto;
    height: auto;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-media-secondary{
    aspect-ratio: 4 / 3;
    height: auto;
  }
}

@media (max-width: 767px){
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-section-head-inline{
    gap: 10px;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspirations-shell{
    grid-template-columns: 1fr;
    gap: 14px;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspirations-side-grid{
    grid-template-columns: 1fr;
    gap: 14px;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-media-featured,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inspo-media-secondary{
    aspect-ratio: 4 / 3;
  }
}

/* =========================================================
   BLOG ET TUTOS — 3 clean blog cards
   Scope: Home V2 / front-page only
   Purpose:
   - replace the 5-image collage with 3 editorial cards
   - keep post links dynamic from the existing PHP/ACF logic
   - preserve the full image as much as possible
   - keep a stable responsive layout on desktop / tablet / mobile
   ========================================================= */

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-container{
  max-width: 1200px;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-section-head{
  margin-bottom: 22px;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-section-head-inline{
  align-items: flex-end;
  gap: 20px;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-card{
  display: flex;
  flex-direction: column;
  min-width: 0;
  min-height: 100%;
  background: #fff;
  border: 1px solid rgba(44,40,36,.08);
  box-shadow: 0 10px 28px rgba(0,0,0,.05);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-media{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  aspect-ratio: 1 / 1;
  padding: 8px;
  overflow: hidden;
  background: #f5efe8;
  border-bottom: 1px solid rgba(44,40,36,.08);
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-media img{
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: center center;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-body{
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: 14px 16px 16px;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-meta{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 8px;
  color: #8c8176;
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-title{
  margin: 0;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(22px, 1.7vw, 30px);
  line-height: 1.04;
  font-weight: 400;
  overflow-wrap: anywhere;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-title a{
  color: #2c2824;
  text-decoration: none;
}

@media (hover: hover){
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-card:hover,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-card:focus-within{
    transform: translateY(-2px);
    box-shadow: 0 14px 34px rgba(0,0,0,.08);
    border-color: rgba(44,40,36,.12);
  }
}

@media (max-width: 1024px){
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-media{
    aspect-ratio: 1 / 1;
    padding: 8px;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-title{
    font-size: clamp(21px, 2.6vw, 28px);
  }
}

@media (max-width: 767px){
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2{
    padding-top: 28px;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-section-head-inline{
    gap: 10px;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-grid{
    grid-template-columns: 1fr;
    gap: 16px;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-media{
    aspect-ratio: 5 / 4;
    padding: 6px;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-blog-preview-title{
    font-size: clamp(22px, 7vw, 28px);
  }
}



/* =========================================================
   DYB V2 SEARCH DRAWER — predictive overlay inspired by Atelier Brunette
   Scope: header search only
   ========================================================= */
.dyb-v2-search-open {
  overflow: hidden;
}

.dyb-v2-search-drawer {
  position: fixed;
  inset: 0;
  z-index: 99999;
}

.dyb-v2-search-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgba(18, 22, 24, 0.48);
  cursor: default;
}

.dyb-v2-search-dialog {
  position: relative;
  width: min(1360px, calc(100vw - 40px));
  margin: 108px auto 0;
  max-height: calc(100vh - 136px);
  overflow: auto;
  background: #ffffff;
  box-shadow: 0 26px 70px rgba(20, 17, 14, 0.16);
}

.dyb-v2-search-shell {
  padding: 28px 36px 20px;
}

.dyb-v2-search-header-row {
  border-bottom: 1px solid rgba(44, 40, 36, 0.10);
  padding-bottom: 22px;
}

.dyb-v2-search-drawer-form {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto auto;
  align-items: center;
  gap: 14px;
}

.dyb-v2-search-input-icon {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 28px;
  height: 28px;
  color: #2c2824;
}

.dyb-v2-search-input-icon svg,
.dyb-v2-search-close svg {
  width: 100%;
  height: 100%;
  stroke: currentColor;
  fill: none;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

#dyb-v2-search-input {
  grid-column: 1 / 2;
  min-width: 0;
  width: 100%;
  border: 0;
  background: transparent;
  padding: 6px 0 6px 40px;
  color: #2c2824;
  font-size: clamp(21px, 2.1vw, 30px);
  line-height: 1.2;
  box-shadow: none;
}

#dyb-v2-search-input::placeholder {
  color: #867d74;
}

#dyb-v2-search-input:focus {
  outline: none;
}

.dyb-v2-search-clear,
.dyb-v2-search-close {
  border: 0;
  background: transparent;
  color: #2c2824;
  padding: 0;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 11px;
}

.dyb-v2-search-clear {
  justify-self: end;
}

.dyb-v2-search-close {
  width: 22px;
  height: 22px;
}

.dyb-v2-search-body {
  padding-top: 24px;
}

.dyb-v2-search-grid {
  display: grid;
  grid-template-columns: minmax(220px, 0.9fr) minmax(260px, 0.9fr) minmax(540px, 1.6fr);
  gap: 40px;
  align-items: start;
}

.dyb-v2-search-heading {
  margin: 0 0 16px;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #9b9188;
}

.dyb-v2-search-links {
  margin: 0;
  padding: 0;
  list-style: none;
}

.dyb-v2-search-links li + li {
  margin-top: 10px;
}

.dyb-v2-search-links a,
.dyb-v2-search-collection-card,
.dyb-v2-search-product-link,
.dyb-v2-search-viewall {
  text-decoration: none;
}

.dyb-v2-search-links a {
  color: #2c2824;
  font-size: 16px;
  line-height: 1.45;
}

.dyb-v2-search-collections-list {
  display: grid;
  gap: 18px;
}

.dyb-v2-search-collection-card {
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  color: #2c2824;
}

.dyb-v2-search-collection-media {
  display: block;
  width: 86px;
}

.dyb-v2-search-collection-image,
.dyb-v2-search-collection-image--placeholder {
  display: block;
  width: 86px;
  height: 104px;
  object-fit: cover;
  background: #f3efe9;
}

.dyb-v2-search-collection-name {
  display: inline-block;
  font-size: 16px;
  line-height: 1.3;
}

.dyb-v2-search-collection-count {
  margin-left: 6px;
  color: #9b9188;
  font-size: 14px;
}

.dyb-v2-search-products-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.dyb-v2-search-product-card {
  min-width: 0;
}

.dyb-v2-search-product-link {
  display: block;
  color: #2c2824;
}

.dyb-v2-search-product-media {
  display: block;
  margin-bottom: 12px;
  background: #f6f2ec;
}

.dyb-v2-search-product-image,
.dyb-v2-search-product-image--placeholder {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  background: #f3efe9;
}

.dyb-v2-search-product-title {
  display: block;
  font-size: 14px;
  line-height: 1.45;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.dyb-v2-search-product-price {
  display: block;
  margin-top: 4px;
  font-size: 14px;
  color: #2c2824;
}

.dyb-v2-search-emptyhint,
.dyb-v2-search-empty,
.dyb-v2-search-loading {
  color: #7f766d;
  font-size: 15px;
  line-height: 1.6;
}

.dyb-v2-search-footer {
  padding-top: 16px;
}

.dyb-v2-search-viewall {
  display: inline-block;
  color: #2c2824;
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.dyb-v2-header-refined .dyb-v2-search-panel,
.dyb-v2-search-panel {
  display: none !important;
}

@media (max-width: 1199px) {
  .dyb-v2-search-dialog {
    width: min(1120px, calc(100vw - 32px));
    margin-top: 94px;
  }

  .dyb-v2-search-grid {
    grid-template-columns: minmax(200px, 0.85fr) minmax(220px, 0.9fr) minmax(420px, 1.2fr);
    gap: 28px;
  }
}

@media (max-width: 991px) {
  .dyb-v2-search-dialog {
    width: min(760px, calc(100vw - 24px));
    margin-top: 82px;
    max-height: calc(100vh - 100px);
  }

  .dyb-v2-search-shell {
    padding: 22px 22px 18px;
  }

  .dyb-v2-search-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .dyb-v2-search-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .dyb-v2-search-dialog {
    width: min(430px, calc(100vw - 18px));
    margin-top: 74px;
    max-height: calc(100vh - 88px);
  }

  .dyb-v2-search-shell {
    padding: 16px 16px 18px;
  }

  .dyb-v2-search-header-row {
    padding-bottom: 16px;
  }

  .dyb-v2-search-drawer-form {
    grid-template-columns: 1fr auto auto;
    gap: 10px;
  }

  #dyb-v2-search-input {
    font-size: 18px;
    padding-left: 34px;
  }

  .dyb-v2-search-input-icon {
    width: 22px;
    height: 22px;
  }

  .dyb-v2-search-links a,
  .dyb-v2-search-collection-name,
  .dyb-v2-search-emptyhint,
  .dyb-v2-search-empty,
  .dyb-v2-search-loading {
    font-size: 14px;
  }

  .dyb-v2-search-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  .dyb-v2-search-collection-card {
    grid-template-columns: 70px minmax(0, 1fr);
    gap: 12px;
  }

  .dyb-v2-search-collection-media,
  .dyb-v2-search-collection-image,
  .dyb-v2-search-collection-image--placeholder {
    width: 70px;
    height: 84px;
  }
}


/* =========================================================
   SEARCH DRAWER — FINAL CANONICAL OVERRIDE
   Purpose:
   - one single premium predictive-search layout
   - 3 products only on desktop
   - correct media rendering / gallery slides
   - collections + popular searches stay visible
   ========================================================= */
.dyb-v2-search-dialog{width:min(1460px,calc(100vw - 36px)) !important;margin:108px auto 0 !important;max-height:calc(100vh - 136px) !important;overflow:auto !important;}
.dyb-v2-search-body{padding-top:24px !important;}
.dyb-v2-search-grid{display:grid !important;grid-template-columns:240px 240px minmax(0,1fr) !important;gap:34px !important;align-items:start !important;}
.dyb-v2-search-col--popular{max-width:none !important;}
.dyb-v2-search-col--collections{max-width:none !important;}
.dyb-v2-search-col--products{min-width:0 !important;}
.dyb-v2-search-products-grid{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:18px !important;align-items:start !important;}
.dyb-v2-search-product-card{min-width:0 !important;width:auto !important;display:block !important;}
.dyb-v2-search-product-media{position:relative !important;display:block !important;overflow:hidden !important;background:#f6f2ec !important;aspect-ratio:264 / 353 !important;margin-bottom:12px !important;}
.dyb-v2-search-product-link--media{display:block !important;width:100% !important;height:100% !important;}
.dyb-v2-search-product-slide{position:absolute !important;inset:0 !important;display:block !important;opacity:0 !important;visibility:hidden !important;transition:opacity .24s ease,visibility .24s ease !important;}
.dyb-v2-search-product-slide.is-active{opacity:1 !important;visibility:visible !important;z-index:1 !important;}
.dyb-v2-search-product-image,.dyb-v2-search-product-image--placeholder{display:block !important;width:100% !important;height:100% !important;object-fit:cover !important;aspect-ratio:auto !important;background:#f3efe9 !important;}
.dyb-v2-search-product-nav{position:absolute !important;left:10px !important;right:10px !important;top:50% !important;transform:translateY(-50%) !important;display:flex !important;justify-content:space-between !important;align-items:center !important;pointer-events:none !important;opacity:0 !important;z-index:3 !important;transition:opacity .2s ease !important;}
.dyb-v2-search-product-navbtn{pointer-events:auto !important;}
@media (hover:hover) and (pointer:fine){.dyb-v2-search-product-media.has-gallery:hover .dyb-v2-search-product-nav,.dyb-v2-search-product-media.has-gallery:focus-within .dyb-v2-search-product-nav{opacity:1 !important;}}
.dyb-v2-search-product-meta{display:block !important;}
.dyb-v2-search-product-cat{display:block !important;margin:0 0 6px !important;font-size:11px !important;letter-spacing:.12em !important;text-transform:uppercase !important;color:#9b9188 !important;}
.dyb-v2-search-product-title{display:block !important;font-size:14px !important;line-height:1.35 !important;text-transform:uppercase !important;letter-spacing:.02em !important;color:#2c2824 !important;}
.dyb-v2-search-product-price{display:block !important;margin-top:6px !important;font-size:14px !important;color:#2c2824 !important;}
.dyb-v2-search-footer{padding-top:18px !important;text-align:right !important;}
@media (max-width:1199px){.dyb-v2-search-grid{grid-template-columns:210px 220px minmax(0,1fr) !important;gap:24px !important;}.dyb-v2-search-products-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:16px !important;}}
@media (max-width:991px){.dyb-v2-search-dialog{width:min(760px,calc(100vw - 24px)) !important;margin-top:82px !important;max-height:calc(100vh - 100px) !important;}.dyb-v2-search-shell{padding:22px 22px 18px !important;}.dyb-v2-search-grid{grid-template-columns:1fr !important;gap:24px !important;}.dyb-v2-search-products-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:16px !important;}}
@media (max-width:640px){.dyb-v2-search-dialog{width:min(430px,calc(100vw - 18px)) !important;margin-top:74px !important;max-height:calc(100vh - 88px) !important;}.dyb-v2-search-products-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important;}.dyb-v2-search-product-title,.dyb-v2-search-product-price{font-size:13px !important;}}


/* =========================================================
   SEARCH DRAWER — MOBILE NAV BUTTON FINAL FIX
   Purpose:
   - keep gallery arrows visible and clickable on touch screens
   - premium/stylish button look on mobile/tablet
   - do not change desktop behavior
   ========================================================= */
@media (max-width: 991px){
  .dyb-v2-search-product-media.has-gallery .dyb-v2-search-product-nav{
    opacity: 1 !important;
    pointer-events: none !important;
    z-index: 5 !important;
  }

  .dyb-v2-search-product-media.has-gallery .dyb-v2-search-product-navbtn{
    opacity: 1 !important;
    pointer-events: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 34px !important;
    border: 1px solid rgba(44,40,36,.18) !important;
    border-radius: 999px !important;
    background: rgba(252,250,247,.96) !important;
    color: #2c2824 !important;
    box-shadow: 0 8px 18px rgba(0,0,0,.12) !important;
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
  }

  .dyb-v2-search-product-media.has-gallery .dyb-v2-search-product-navbtn--prev{
    left: 10px !important;
  }

  .dyb-v2-search-product-media.has-gallery .dyb-v2-search-product-navbtn--next{
    right: 10px !important;
  }

  .dyb-v2-search-product-media.has-gallery .dyb-v2-search-product-navbtn span{
    transform: translateY(-1px) !important;
    font-size: 20px !important;
    line-height: 1 !important;
  }
}

@media (max-width: 640px){
  .dyb-v2-search-product-media.has-gallery .dyb-v2-search-product-nav{
    left: 8px !important;
    right: 8px !important;
  }

  .dyb-v2-search-product-media.has-gallery .dyb-v2-search-product-navbtn{
    width: 32px !important;
    height: 32px !important;
    box-shadow: 0 6px 14px rgba(0,0,0,.12) !important;
  }

  .dyb-v2-search-product-media.has-gallery .dyb-v2-search-product-navbtn span{
    font-size: 18px !important;
  }
}

@media (max-width: 420px){
  .dyb-v2-search-product-media.has-gallery .dyb-v2-search-product-nav{
    left: 6px !important;
    right: 6px !important;
  }

  .dyb-v2-search-product-media.has-gallery .dyb-v2-search-product-navbtn{
    width: 30px !important;
    height: 30px !important;
  }

  .dyb-v2-search-product-media.has-gallery .dyb-v2-search-product-navbtn span{
    font-size: 17px !important;
  }
}



/* =========================================================
   FINAL OVERRIDE — HOME V2 HERO TITLE
   Christine feedback:
   make the hero title a bit smaller on desktop and mobile
   Scope: Home V2 only
   ========================================================= */

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home .dyb-v2-home-hero-v3 h1{
  margin: 0 0 20px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(46px, 4.45vw, 68px);
  line-height: .92;
  letter-spacing: -.012em;
  font-weight: 400;
  color: #2c2824;
  white-space: normal;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home .dyb-v2-home-hero-v3 .dyb-v2-hero-title-line{
  display: block;
  white-space: normal;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home .dyb-v2-home-hero-v3 .dyb-v2-hero-title-line-1{
  font-size: .88em;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home .dyb-v2-home-hero-v3 .dyb-v2-hero-title-line-2{
  font-size: 1em;
}

:is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home .dyb-v2-home-hero-v3 .dyb-v2-hero-title-line + .dyb-v2-hero-title-line{
  margin-top: .06em;
}

@media (max-width: 767px){
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home .dyb-v2-home-hero-v3 h1{
    font-size: 46px;
    line-height: .95;
    letter-spacing: -.01em;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home .dyb-v2-home-hero-v3 .dyb-v2-hero-title-line-1{
    font-size: .84em;
  }
}

@media (max-width: 480px){
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home .dyb-v2-home-hero-v3 h1{
    font-size: 38px;
    line-height: .98;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home .dyb-v2-home-hero-v3 .dyb-v2-hero-title-line-1{
    font-size: .82em;
  }
}



/* =========================================================
   FINAL OVERRIDE — BOUTIQUE V2 FILTER CLOSE BUTTON (MOBILE)
   Goal:
   - avoid overlap with language switcher
   - make close button smaller
   - place it closer to the title
   - mobile only
   ========================================================= */

@media (max-width: 680px){
  body.page-template-template-boutique-v2 .dyb-v2-filter-panel-head{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding: 18px 18px 14px;
  }

  body.page-template-template-boutique-v2 .dyb-v2-filter-panel-head h2{
    margin: 0;
    max-width: 12ch;
    font-size: 28px;
    line-height: .98;
  }

  body.page-template-template-boutique-v2 .dyb-v2-filter-close{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    padding: 0;
    border: 1.5px solid rgba(44,40,36,.8);
    border-radius: 14px;
    background: #fcfaf7;
    color: #7f756a;
    font-size: 28px;
    line-height: 1;
    align-self: flex-start;
    margin: 0;
    position: relative;
    z-index: 2;
  }
}
/* =========================================================
   FINAL OVERRIDE — HOME V2 BLOG HEADING ALIGNMENT (MOBILE)
   Goal:
   - align the "Le Blog" heading block to the left on mobile
   - match the visual logic of "A la Une"
   - keep desktop untouched
   Scope: Home V2 inspirations/blog preview section only
   ========================================================= */
@media (max-width: 767px){
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-section-head-inline{
    display: flex;
    flex-direction: column;
    align-items: flex-start !important;
    justify-content: flex-start;
    gap: 8px;
    text-align: left;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-section-head-inline > div{
    width: 100%;
    text-align: left;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-kicker,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 h2,
  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inline-link{
    text-align: left !important;
  }

  :is(body.page-template-template-home-v2, body.dyb-v2-front-page) .dyb-v2-home-inspirations-v2 .dyb-v2-inline-link{
    justify-content: flex-start;
    align-self: flex-start;
  }
}
