/* Match Fashion Vally — client feedback corrections, 2026-09-10.
 * Loaded last so the client-requested staging review changes are explicit,
 * small, reversible, and isolated from the previously accepted 2026-09-05
 * geometry. No catalog membership or production state is changed here. */

:root {
  --mfv-feedback-ink: #111;
  --mfv-feedback-paper: #fff;
  --mfv-feedback-warm: #f3ede8;
  --mfv-feedback-line: #d7d0ca;
  --mfv-sticky-header-height: 210px;
}

@media (max-width: 999px) {
  :root {
    --mfv-sticky-header-height: 100px;
  }
}

html {
  scroll-padding-top: var(--mfv-sticky-header-height) !important;
}

html, body {
  overflow-x: clip !important;
}

.ct-header-cart .ct-cart-content,
.ct-cart-content {
  right: 0 !important;
  left: auto !important;
  max-width: calc(100vw - 20px) !important;
}

.mfv-section,
.mfv-module,
.mfv-home-finder-band,
.mfv-help-strip,
.mfv-vc-newsletter,
.mfv-instagram-feed,
.mfv-ref-page,
[id] {
  scroll-margin-top: calc(var(--mfv-sticky-header-height) + 16px) !important;
}

/* The approved visible hero is the background on .mfv-hero__grid. Keep that
 * renderer unchanged and expose the Collections link as a transparent,
 * keyboard-focusable overlay. Also expose the visible Collections button. */
.home .mfv-hero__grid {
  position: relative !important;
  background: #f6f6f6 url('/wp-content/uploads/2026/09/hero-authoritative.webp') center center / cover no-repeat !important;
}
.home .mfv-hero__visual {
  display: block !important;
  visibility: visible !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 4 !important;
  min-height: 0 !important;
  background: none !important;
  pointer-events: none !important;
}
.home .mfv-hero__visual-link {
  display: block !important;
  visibility: visible !important;
  position: absolute !important;
  inset: 0 !important;
  width: auto !important;
  height: auto !important;
  color: inherit !important;
  cursor: pointer !important;
  text-decoration: none !important;
  pointer-events: auto !important;
  outline-offset: -5px !important;
}
.home .mfv-hero__visual-link:focus-visible {
  outline: 3px solid var(--mfv-feedback-paper) !important;
  box-shadow: inset 0 0 0 5px var(--mfv-feedback-ink) !important;
}
.home .mfv-hero__visual-link .mfv-hero__image {
  display: none !important;
  visibility: hidden !important;
}
.home .mfv-hero__copy .wp-block-buttons {
  visibility: visible !important;
  position: absolute !important;
  left: 8.2% !important;
  top: 65% !important;
  z-index: 5 !important;
  pointer-events: auto !important;
}
.home .mfv-hero__copy .wp-block-button__link {
  visibility: visible !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  padding: 12px 28px !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  background: #ffffff !important;
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
  border: 1px solid #ffffff !important;
  text-decoration: none !important;
  transition: all .2s ease !important;
}
.home .mfv-hero__copy .wp-block-button__link:hover,
.home .mfv-hero__copy .wp-block-button__link:focus-visible {
  background: #000000 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: #ffffff !important;
}

/* Collections and category cards need an unmistakable interactive state. */
.mfv-collection-card,
.mfv-category-card__link {
  cursor: pointer !important;
  transition: transform .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease !important;
}
.mfv-collection-card:hover,
.mfv-collection-card:focus-visible {
  background: var(--mfv-feedback-ink) !important;
  border-color: var(--mfv-feedback-ink) !important;
  color: var(--mfv-feedback-paper) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.12) !important;
}
.mfv-collection-card:hover span,
.mfv-collection-card:hover em,
.mfv-collection-card:focus-visible span,
.mfv-collection-card:focus-visible em {
  color: var(--mfv-feedback-paper) !important;
}
.mfv-collection-card em::after {
  content: "  →" !important;
}

/* Canonical 4 Categories Design (Shop by Category) */
.mfv-category,
.home .mfv-category {
  padding-block: 32px 24px !important;
}
.mfv-category-header,
.home .mfv-category-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  margin-bottom: 20px !important;
}
.mfv-category-header h2,
.home .mfv-category-header h2 {
  font-family: var(--mfv-sans, inherit) !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: #111111 !important;
  margin: 0 !important;
}
.mfv-category-header .mfv-view-all,
.home .mfv-category-header .mfv-view-all {
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #111111 !important;
  text-decoration: none !important;
}
.mfv-category-grid,
.home .mfv-category-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
  width: 100% !important;
}
.mfv-category-card,
.home .mfv-category-card {
  position: relative !important;
  background-image: none !important;
  background-color: #ffffff !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  display: flex !important;
  flex-direction: column !important;
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease !important;
}
.mfv-category-card:nth-child(n),
.home .mfv-category-card:nth-child(n) {
  background-image: none !important;
}
.mfv-category-card:before,
.home .mfv-category-card:before {
  display: none !important;
  content: none !important;
}
.mfv-category-card:hover,
.mfv-category-card:focus-within,
.home .mfv-category-card:hover,
.home .mfv-category-card:focus-within {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.09) !important;
  border-color: #111111 !important;
}
.mfv-category-grid .mfv-category-card > *,
.mfv-category-grid .mfv-category-card:nth-child(n) > *,
.mfv-category-card .mfv-category-card__link,
.home .mfv-category-grid .mfv-category-card > *,
.home .mfv-category-grid .mfv-category-card:nth-child(n) > *,
.home .mfv-category-card .mfv-category-card__link {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100% !important;
  text-decoration: none !important;
  color: inherit !important;
  cursor: pointer !important;
  overflow: hidden !important;
}
.mfv-category-card__image,
.home .mfv-category-card__image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  transition: transform 0.28s ease !important;
}
.mfv-category-card:hover .mfv-category-card__image,
.home .mfv-category-card:hover .mfv-category-card__image {
  transform: scale(1.03) !important;
}
.mfv-category-card__content,
.home .mfv-category-card__content {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 14px 10px 18px !important;
  margin: 0 !important;
  overflow: visible !important;
  clip: auto !important;
  white-space: normal !important;
  border: 0 !important;
  background: #ffffff !important;
  pointer-events: auto !important;
}
.mfv-category-card__title,
.home .mfv-category-card__title {
  font-family: var(--mfv-sans, inherit) !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #111111 !important;
  margin: 0 0 4px !important;
  line-height: 1.2 !important;
}
.mfv-category-card__desc,
.home .mfv-category-card__desc {
  font-family: var(--mfv-serif, serif) !important;
  font-size: 0.76rem !important;
  font-style: italic !important;
  color: #555555 !important;
  margin: 0 0 10px !important;
  line-height: 1.35 !important;
}
.mfv-category-card__cta,
.home .mfv-category-card__cta {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  font-family: var(--mfv-sans, inherit) !important;
  font-size: 0.70rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #111111 !important;
  border-bottom: 1px solid #111111 !important;
  padding-bottom: 2px !important;
}
.mfv-category-card__link:focus-visible {
  outline: 3px solid #111111 !important;
  outline-offset: -3px !important;
}
@media (max-width: 999px) and (min-width: 601px) {
  .mfv-category-grid,
  .home .mfv-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
}
@media (max-width: 600px) {
  .mfv-category-grid,
  .home .mfv-category-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
}

/* Product/card actions must never enter the low-contrast grey-on-grey state
 * shown in the client screenshot. */
.woocommerce a.added_to_cart,
.woocommerce-page a.added_to_cart {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  padding: 10px 16px !important;
  border: 1px solid var(--mfv-feedback-ink) !important;
  background: var(--mfv-feedback-paper) !important;
  color: var(--mfv-feedback-ink) !important;
  text-decoration: none !important;
}
/* Comprehensive high-contrast hover styles for all buttons across the site.
 * Guarantees crisp, high-contrast text on hover (dark on dark eliminated). */
.woocommerce a.button:hover,
.woocommerce a.button:focus-visible,
.woocommerce button.button:hover,
.woocommerce button.button:focus-visible,
.woocommerce a.added_to_cart:hover,
.woocommerce a.added_to_cart:focus-visible,
.single-product .single_add_to_cart_button:hover,
.single-product .single_add_to_cart_button:focus-visible,
.single-product button.mfv-buy-now:hover,
.single-product button.mfv-buy-now:focus-visible,
.single-product button.buy-now:hover,
.single-product button.buy-now:focus-visible,
.single-product .mfv-buy-now button:hover,
.single-product .mfv-buy-now button:focus-visible,
.woocommerce-cart .wc-block-cart__submit-button:hover,
.woocommerce-cart .wc-block-cart__submit-button:focus-visible,
.woocommerce-cart .checkout-button:hover,
.woocommerce-cart .checkout-button:focus-visible,
.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
.woocommerce-checkout .wc-block-components-checkout-place-order-button:focus-visible,
.woocommerce-checkout #place_order:hover,
.woocommerce-checkout #place_order:focus-visible,
.wp-block-button__link:hover,
.wp-block-button__link:focus-visible,
.wp-element-button:hover,
.wp-element-button:focus-visible,
.mfv-vc-button:hover,
.mfv-vc-button:focus-visible,
.mfv-btn-solid:hover,
.mfv-btn-solid:focus-visible,
.mfv-btn-quiz:hover,
.mfv-btn-quiz:focus-visible,
.mfv-set-card__btn:hover,
.mfv-set-card__btn:focus-visible,
.mfv-btn-match-me:hover,
.mfv-btn-match-me:focus-visible,
.mfv-contact-form button[type="submit"]:hover,
.mfv-contact-form button[type="submit"]:focus-visible,
.mfv-vc-newsletter__form button:hover,
.mfv-vc-newsletter__form button:focus-visible {
  background: #000000 !important;
  border-color: #000000 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  cursor: pointer !important;
}

/* Outline buttons invert to solid dark background with bright white text */
.mfv-vc-button--outline:hover,
.mfv-vc-button--outline:focus-visible,
.button.mfv-btn-outline:hover,
.button.mfv-btn-outline:focus-visible,
a.button.mfv-btn-outline:hover,
a.button.mfv-btn-outline:focus-visible,
button.mfv-btn-outline:hover,
button.mfv-btn-outline:focus-visible {
  background: #000000 !important;
  border-color: #000000 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  cursor: pointer !important;
}

/* Single product quantity buttons on hover */
.single-product form.cart .quantity .minus:hover,
.single-product form.cart .quantity .minus:focus-visible,
.single-product form.cart .quantity .plus:hover,
.single-product form.cart .quantity .plus:focus-visible {
  background: #111111 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  cursor: pointer !important;
}

/* Single product Wishlist and Share on hover */
.single-product .summary .yith-add-to-wishlist-button-block--single .yith-wcwl-add-to-wishlist-button:hover,
.single-product .summary .yith-wcwl-add-to-wishlist-button:hover,
.single-product .summary .mfv-share-control:hover {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
  opacity: 1 !important;
}

/* Client requested visibly larger Search and Cart actions. Header identity and
 * icon rendering are shared site-wide; no homepage-only header override lives
 * in this page-feedback layer. */
.ct-header [data-row="middle"] .ct-header-search svg,
.ct-header [data-row="middle"] [data-id="search"] svg {
  width: 26px !important;
  height: 26px !important;
  min-width: 26px !important;
}
.ct-header [data-row="middle"] .ct-cart-item svg,
.ct-header [data-row="middle"] [data-id="cart"] svg {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
}

/* Native Blocksy mobile trigger is already part of the source-owned header
 * builder. Make sure it cannot be visually suppressed by older cascade rules. */
@media (max-width: 999px) {
  .ct-header [data-row="middle"] [data-column="end"] {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
    overflow: visible !important;
  }
  .ct-header [data-id="trigger"],
  .ct-header .ct-header-trigger,
  .ct-header button[aria-label="Menu"] {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    flex: 0 0 44px !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--mfv-feedback-ink) !important;
  }
  .ct-header [data-id="trigger"] svg,
  .ct-header .ct-header-trigger svg,
  .ct-header button[aria-label="Menu"] svg {
    width: 24px !important;
    height: 24px !important;
  }

  /* Enlarge the actual approved background hero on mobile. The accepted
   * background remains the renderer; no hidden duplicate image is measured or
   * promoted. 118% is a modest enlargement with the hero itself containing the
   * crop, so the document still has no horizontal overflow. */
  .home .mfv-hero__grid {
    aspect-ratio: auto !important;
    height: calc(100vw * 291 / 862 * 1.18) !important;
    min-height: calc(100vw * 291 / 862 * 1.18) !important;
    max-height: 176px !important;
    background-size: 118% auto !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    overflow: hidden !important;
  }
  .home .mfv-hero__visual,
  .home .mfv-hero__visual-link {
    min-height: 0 !important;
    height: auto !important;
  }

  /* The four client-requested service pillars stay present but become a
   * compact 2x2 control group with the whole card clickable. */
  .mfv-trust-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 !important;
    padding: 0 !important;
  }
  .mfv-trust-grid > .mfv-trust-col {
    min-height: 84px !important;
    padding: 10px 12px !important;
    border: 1px solid var(--mfv-feedback-line) !important;
    background: var(--mfv-feedback-paper) !important;
    color: var(--mfv-feedback-ink) !important;
    text-decoration: none !important;
    transition: background-color .18s ease, color .18s ease !important;
  }
  .mfv-trust-grid > .mfv-trust-col:nth-child(2n) {
    border-left: 0 !important;
  }
  .mfv-trust-grid > .mfv-trust-col:nth-child(n+3) {
    border-top: 0 !important;
  }
  .mfv-trust-item {
    gap: 8px !important;
  }
  .mfv-trust-item__icon {
    flex-basis: 26px !important;
    width: 26px !important;
    height: 26px !important;
  }
  .mfv-trust-item__icon svg {
    width: 24px !important;
    height: 24px !important;
  }
  .mfv-trust-item__text h3 {
    margin-bottom: 2px !important;
    font-size: .66rem !important;
  }
  .mfv-trust-item__text p {
    font-size: .59rem !important;
    line-height: 1.25 !important;
  }
}

@media (min-width: 1000px) {
  .mfv-trust-grid > .mfv-trust-col {
    min-height: 88px !important;
    padding: 12px 14px !important;
    color: var(--mfv-feedback-ink) !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: background-color .18s ease, color .18s ease !important;
  }
  .mfv-trust-grid > .mfv-trust-col:hover,
  .mfv-trust-grid > .mfv-trust-col:focus-visible {
    background: #f8f6f4 !important;
    color: var(--mfv-feedback-ink) !important;
  }
  .mfv-trust-grid > .mfv-trust-col:hover *,
  .mfv-trust-grid > .mfv-trust-col:focus-visible * {
    color: inherit !important;
  }
  .mfv-trust-item__icon,
  .mfv-trust-item__icon svg {
    width: 28px !important;
    height: 28px !important;
  }
}

/* The client explicitly asked to see the real box/set presentation from the
 * approved reference storefront. These are presentation-only reference images;
 * they do not create products, prices, stock, or catalog membership. Target the
 * current shared reference hero structure with enough specificity to beat the
 * canonical cover rule without replacing that shared component. */
.home .mfv-home-gifting-banner__media img,
.mfv-vc-page--gift.mfv-ref-page--gift .mfv-vc-hero__media.mfv-ref-hero__media > img {
  content: url("https://matchperfumesus.com/cdn/shop/files/MATCH_Perfume_PINK_KIT_PDP2.png?crop=center&height=1800&v=1772758159&width=1800") !important;
  background: #f6efed !important;
  object-fit: contain !important;
  object-position: center center !important;
}
.mfv-vc-page--discovery.mfv-ref-page--discovery .mfv-vc-hero__media.mfv-ref-hero__media > img {
  content: url("https://matchperfumesus.com/cdn/shop/files/MATCH_Perfume_DISCOVERY_KIT_PDP1.png?crop=center&height=2160&v=1772758593&width=1800") !important;
  background: #f5f7fa !important;
  object-fit: contain !important;
  object-position: center center !important;
}

/* Repeated story/wide editorial artwork uses the shared reference components.
 * Match the canonical specificity so this later feedback layer wins cleanly and
 * the leading M in MATCH is not cover-cropped anywhere the component repeats. */
.mfv-ref-page .mfv-ref-story img,
.mfv-ref-page .mfv-ref-wide-cta img,
.mfv-ref-page .mfv-ref-editorial-split img {
  object-fit: contain !important;
  object-position: center center !important;
}

/* Final shared-shell correction.
 * The same Blocksy header and shared prefooter modules must render with the
 * same geometry on home, archives, PDPs, and editorial pages. */
/* Blocksy uses filled shapes for these controls. The shared outline-icon
 * rule must not erase the hamburger, close cross or submenu chevrons. */
.ct-header .ct-header-trigger svg,
.ct-header .ct-toggle-close svg,
.ct-header .ct-toggle-dropdown-mobile svg {
  fill: currentColor !important;
}
#offcanvas .ct-toggle-close,
#offcanvas .ct-toggle-close svg,
#offcanvas .ct-toggle-dropdown-mobile,
#offcanvas .ct-toggle-dropdown-mobile svg {
  color: #fff !important;
}
#offcanvas .ct-toggle-close {
  min-width: 44px;
  min-height: 44px;
}
#offcanvas .ct-toggle-close:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
}
@media (max-width: 999px) {
  .ct-header [data-row="middle"] .ct-container,
  .ct-header [data-device="mobile"] [data-row="middle"] .ct-container {
    align-items: center !important;
    display: flex !important;
    justify-content: space-between !important;
    min-height: 72px !important;
    position: relative !important;
  }
  .ct-header [data-device="mobile"] [data-row="middle"] [data-column="start"],
  .ct-header [data-device="mobile"] [data-row="middle"] [data-column="end"] {
    align-items: center !important;
    display: flex !important;
    min-height: 44px !important;
    visibility: visible !important;
  }
  .ct-header [data-device="mobile"] .ct-header-trigger,
  .ct-header [data-device="mobile"] [data-id="trigger"],
  .ct-header .ct-header-trigger,
  .ct-header [data-id="trigger"] {
    align-items: center !important;
    display: inline-flex !important;
    flex: 0 0 44px !important;
    height: 44px !important;
    justify-content: center !important;
    min-width: 44px !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    visibility: visible !important;
  }
  .ct-header [data-device="mobile"] .ct-header-trigger svg,
  .ct-header [data-device="mobile"] [data-id="trigger"] svg,
  .ct-header .ct-header-trigger svg,
  .ct-header [data-id="trigger"] svg {
    height: 24px !important;
    width: 24px !important;
  }
  .ct-header [data-device="mobile"] .site-branding,
  .ct-header [data-device="mobile"] .site-title,
  .ct-header [data-device="mobile"] .site-description {
    left: 50% !important;
    margin-inline: 0 !important;
    position: absolute !important;
    text-align: center !important;
    transform: translateX(-50%) !important;
    white-space: nowrap !important;
  }
  .ct-header [data-device="mobile"] .site-branding {
    max-width: min(52vw, 220px) !important;
  }
  .ct-header [data-device="mobile"] .ct-cart-item .ct-label,
  .ct-header [data-device="mobile"] .ct-cart-item .ct-cart-item-label {
    display: none !important;
  }

  /* Keep the native filter disclosure useful instead of hiding its headings
   * and leaving padded, closed details as blank rows. */
  .woocommerce-shop .mfv-shop-filter__summary,
  .tax-product_cat .mfv-shop-filter__summary {
    align-items: center !important;
    display: flex !important;
    justify-content: space-between !important;
    min-height: 44px !important;
    padding-block: .55rem !important;
  }
  .woocommerce-shop .mfv-shop-filter:not([open]),
  .tax-product_cat .mfv-shop-filter:not([open]) {
    margin-bottom: 0 !important;
    padding-block: 0 !important;
  }
  .woocommerce-shop .mfv-shop-filter:not([open]) .mfv-shop-filter__summary,
  .tax-product_cat .mfv-shop-filter:not([open]) .mfv-shop-filter__summary {
    padding-block: .7rem !important;
  }

  /* One exact shared newsletter treatment on every route. */
  .mfv-vc-newsletter__inner {
    align-items: stretch !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    margin-inline: auto !important;
    max-width: 480px !important;
    padding: 24px 16px !important;
    text-align: center !important;
    width: min(92vw, 480px) !important;
  }
  .mfv-vc-newsletter__form {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    max-width: 360px !important;
    width: 100% !important;
  }
  .mfv-vc-newsletter__form input[type="email"],
  .mfv-vc-newsletter__form button {
    box-sizing: border-box !important;
    width: 100% !important;
  }
}

@media (min-width: 1000px) {
  .mfv-vc-newsletter__inner {
    align-items: center !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .8fr) !important;
    margin-inline: auto !important;
    max-width: 1440px !important;
  }
}

/* Mobile search & cart icons enlargement */
@media (max-width: 999px) {
  .ct-header [data-row="middle"] .ct-header-search:before,
  .ct-header [data-row="middle"] .ct-header-search svg,
  .ct-header [data-row="middle"] [data-id="search"] svg {
    width: 25px !important;
    height: 25px !important;
    flex: 0 0 25px !important;
    min-width: 25px !important;
  }
  .ct-header [data-row="middle"] .ct-cart-item:before,
  .ct-header [data-row="middle"] .ct-cart-item svg,
  .ct-header [data-row="middle"] [data-id="cart"] svg {
    width: 27px !important;
    height: 27px !important;
    flex: 0 0 27px !important;
    min-width: 27px !important;
  }
}

/* Contact page direct options: readable without hover, no black button block. */
.mfv-contact-direct-options {
  display: flex !important;
  align-items: center !important;
  gap: 24px !important;
  padding-block: 0 28px !important;
}
.mfv-contact-direct-options a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 32px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
  font-size: .9rem !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  text-underline-offset: 4px !important;
}
.mfv-contact-direct-options a:hover,
.mfv-contact-direct-options a:focus-visible {
  background: transparent !important;
  color: #111111 !important;
  -webkit-text-fill-color: #111111 !important;
}
@media (max-width: 600px) {
  .mfv-contact-direct-options {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 8px !important;
  }
}

/* Verified reference galleries and PDP inspiration pairing. */
.mfv-reference-gallery,
.mfv-impressions {
  margin-block: clamp(36px, 6vw, 72px) !important;
}
.mfv-reference-gallery__head,
.mfv-impressions > .mfv-kicker,
.mfv-impressions > h2 {
  max-width: 760px !important;
}
.mfv-reference-gallery__head h2,
.mfv-impressions > h2 {
  margin: 0 0 12px !important;
  font-size: clamp(1.8rem, 3vw, 3rem) !important;
  line-height: 1.05 !important;
}
.mfv-reference-gallery__grid,
.mfv-impressions__grid {
  display: grid !important;
  gap: clamp(14px, 2vw, 24px) !important;
  margin-top: 24px !important;
}
.mfv-reference-gallery__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}
.mfv-impressions__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}
.mfv-reference-gallery figure,
.mfv-impressions figure {
  margin: 0 !important;
}
.mfv-reference-gallery img,
.mfv-impressions img {
  background: #f6f4f2 !important;
  display: block !important;
  height: auto !important;
  object-fit: contain !important;
  width: 100% !important;
}
.mfv-reference-gallery img {
  aspect-ratio: 1 / 1 !important;
}
.mfv-impressions img {
  aspect-ratio: 4 / 5 !important;
}
.mfv-impressions figcaption {
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  padding-top: 10px !important;
}
.mfv-impressions figcaption span {
  color: #6b6662 !important;
  font-size: .78rem !important;
}
@media (max-width: 700px) {
  .mfv-reference-gallery__grid,
  .mfv-impressions__grid {
    grid-template-columns: 1fr !important;
  }
}

/* ==========================================================================
   Sets page styling matching reference https://matchperfumesus.com/collections/sets
   ========================================================================== */
.mfv-route-sets .hero-section,
.mfv-route-sets .ct-page-title {
  display: none !important;
}
.mfv-sets-page {
  padding-top: clamp(30px, 4vw, 56px) !important;
}
.mfv-sets-header {
  margin-bottom: 24px !important;
}
.mfv-sets-header h1 {
  font-size: clamp(2.2rem, 3.8vw, 3.6rem) !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  margin: 0 0 12px !important;
  line-height: 1.1 !important;
}
.mfv-sets-intro {
  max-width: 820px !important;
  font-size: clamp(.88rem, 1.1vw, 1.02rem) !important;
  line-height: 1.6 !important;
  color: #4d4d4d !important;
  margin: 0 0 24px !important;
}
.mfv-sets-subcollections {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-bottom: 30px !important;
}
.mfv-sets-chip {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 8px 18px !important;
  border-radius: 999px !important;
  border: 1px solid #d9d2cc !important;
  background: #ffffff !important;
  color: #111111 !important;
  font-size: .78rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all .2s ease !important;
}
.mfv-sets-chip:hover,
.mfv-sets-chip:focus-visible {
  background: #111111 !important;
  color: #ffffff !important;
  border-color: #111111 !important;
}
.mfv-sets-chip span {
  font-size: .7rem !important;
  opacity: .7 !important;
}
.mfv-sets-chip:hover span {
  color: #ffffff !important;
}
.mfv-sets-toolbar {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 12px 0 !important;
  margin-bottom: 24px !important;
  border-block: 1px solid #eee !important;
  font-size: .82rem !important;
  color: #555555 !important;
}
.mfv-sets-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(20px, 3vw, 40px) !important;
  margin-bottom: 48px !important;
}
@media (max-width: 680px) {
  .mfv-sets-grid {
    grid-template-columns: 1fr !important;
  }
}
.mfv-set-card {
  position: relative !important;
  border: 1px solid #e8e3df !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  background: #ffffff !important;
  display: flex !important;
  flex-direction: column !important;
  transition: transform .2s ease, box-shadow .2s ease !important;
}
.mfv-set-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 24px rgba(0,0,0,.06) !important;
}
.mfv-set-card__badge {
  position: absolute !important;
  top: 14px !important;
  left: 14px !important;
  z-index: 2 !important;
  background: #111111 !important;
  color: #ffffff !important;
  font-size: .62rem !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  padding: 4px 10px !important;
  border-radius: 2px !important;
}
.mfv-set-card__media {
  aspect-ratio: 16 / 10 !important;
  overflow: hidden !important;
  background: #f7f5f2 !important;
}
.mfv-set-card__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform .3s ease !important;
}
.mfv-set-card:hover .mfv-set-card__media img {
  transform: scale(1.03) !important;
}
.mfv-set-card__copy {
  padding: 24px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
}
.mfv-set-card__copy h3 {
  font-size: 1.25rem !important;
  margin: 0 0 6px !important;
}
.mfv-set-card__copy h3 a {
  color: #111111 !important;
  text-decoration: none !important;
}
.mfv-set-card__spec {
  font-size: .8rem !important;
  color: #666666 !important;
  margin: 0 0 14px !important;
}
.mfv-set-card__price {
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: #111111 !important;
  margin-bottom: 18px !important;
}
.mfv-set-card__price del {
  color: #888888 !important;
  font-weight: 400 !important;
  margin-right: 8px !important;
}
.mfv-set-card__price ins {
  text-decoration: none !important;
  color: #111111 !important;
}
.mfv-set-card__btn {
  margin-top: auto !important;
  width: 100% !important;
  text-align: center !important;
}
.mfv-sets-featured {
  padding-block: 28px !important;
  border-top: 1px solid #eee !important;
}
.mfv-sets-quiz {
  background: #f7f4f1 !important;
  padding: clamp(36px, 5vw, 64px) clamp(20px, 4vw, 48px) !important;
  text-align: center !important;
  margin-block: 40px !important;
  border-radius: 4px !important;
}
.mfv-sets-quiz__inner {
  max-width: 620px !important;
  margin: 0 auto !important;
}
.mfv-sets-quiz h2 {
  font-size: clamp(1.4rem, 2.2vw, 2.1rem) !important;
  margin: 8px 0 12px !important;
  line-height: 1.2 !important;
}
.mfv-sets-quiz p {
  color: #555555 !important;
  margin-bottom: 20px !important;
}
.mfv-btn-match-me {
  padding: 12px 32px !important;
  font-size: .78rem !important;
  letter-spacing: .08em !important;
}

/* ==========================================================================
 * OWNER CORRECTIONS 2026-09-12
 * ========================================================================== */

/* 1. STICKY HEADER SITE-WIDE (DESKTOP & MOBILE) */
header#header.ct-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
  background: #ffffff !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06) !important;
}

/* 2. DESKTOP NAV EQUAL SPACING */
@media (min-width: 1000px) {
  .ct-header [data-row="bottom"] nav > ul,
  .ct-header nav.header-menu-1 > ul {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 1120px !important;
    margin-inline: auto !important;
    padding: 0 !important;
  }
  .ct-header [data-row="bottom"] nav > ul > li,
  .ct-header nav.header-menu-1 > ul > li {
    flex: 1 1 0px !important;
    width: 0 !important;
    min-width: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }
  .ct-header [data-row="bottom"] nav > ul > li > a,
  .ct-header nav.header-menu-1 > ul > li > a {
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    text-align: center !important;
    white-space: nowrap !important;
    font-size: 0.74rem !important;
    letter-spacing: 0.06em !important;
  }
}

/* Mobile header branding is owned by header-unification-20260912.css. */

/* 4. SCENT FINDER BAND — PREVENT STEP 4 RIGHT-EDGE CLIPPING */
.mfv-help-strip.mfv-vc-scent-journey,
.mfv-help-strip:has(.mfv-home-finder-band) {
  width: 100% !important;
  max-width: 100% !important;
  padding: 28px 0 !important;
  margin-bottom: 28px !important;
  background: #faf7f4 !important;
  overflow: hidden !important;
}
.mfv-home-finder-band {
  display: grid !important;
  grid-template-columns: minmax(240px, 0.82fr) minmax(0, 2fr) !important;
  gap: 20px !important;
  width: min(92vw, 1760px) !important;
  max-width: 1760px !important;
  margin-inline: auto !important;
  box-sizing: border-box !important;
}
.mfv-home-finder-band__left {
  min-width: 0 !important;
}
.home .mfv-home-finder-band .mfv-home-finder-band__steps,
.home .mfv-help-strip .mfv-home-finder-band__steps,
.home .mfv-help-strip .mfv-help-grid.mfv-home-finder-band__steps,
.mfv-home-finder-band .mfv-home-finder-band__steps {
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
}
@media (max-width: 767px) {
  .mfv-home-finder-band {
    grid-template-columns: 1fr !important;
  }
  .home .mfv-home-finder-band .mfv-home-finder-band__steps,
  .home .mfv-help-strip .mfv-home-finder-band__steps,
  .home .mfv-help-strip .mfv-help-grid.mfv-home-finder-band__steps,
  .mfv-home-finder-band .mfv-home-finder-band__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
.mfv-home-finder-step {
  min-width: 0 !important;
  padding: 10px 14px !important;
  box-sizing: border-box !important;
  border-left: 1px solid #e2ddd6 !important;
}
.mfv-home-finder-step:first-child {
  border-left: 0 !important;
}

/* 5. SHARED LOWER MODULES CANONICAL SHELL GEOMETRY */
.mfv-vc-newsletter,
.mfv-newsletter-band,
.mfv-instagram-feed {
  width: 100% !important;
  box-sizing: border-box !important;
}
.mfv-vc-newsletter__inner,
.mfv-instagram-feed__inner {
  width: min(92vw, 1760px) !important;
  max-width: 1760px !important;
  margin-inline: auto !important;
  box-sizing: border-box !important;
}

/* 6. CANONICAL REUSABLE 4-QUAD COMPONENT & MOBILE READABLE TYPOGRAPHY */
.mfv-trust-strip,
.mfv-vc-value-strip {
  width: 100% !important;
  background: #ffffff !important;
  border-block: 1px solid #ece8e4 !important;
  box-sizing: border-box !important;
}
.mfv-trust-grid,
.mfv-vc-value-strip__grid {
  width: min(92vw, 1760px) !important;
  max-width: 1760px !important;
  margin-inline: auto !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  box-sizing: border-box !important;
}
@media (max-width: 767px) {
  .mfv-trust-grid,
  .mfv-vc-value-strip__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 !important;
    width: 100% !important;
  }
  .mfv-trust-grid > *,
  .mfv-vc-value-strip__grid > * {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 16px 12px !important;
    box-sizing: border-box !important;
    min-height: 94px !important;
  }
  .mfv-trust-grid > *:nth-child(even),
  .mfv-vc-value-strip__grid > *:nth-child(even) {
    border-left: 1px solid #ece8e4 !important;
  }
  .mfv-trust-grid > *:nth-child(1),
  .mfv-trust-grid > *:nth-child(2),
  .mfv-vc-value-strip__grid > *:nth-child(1),
  .mfv-vc-value-strip__grid > *:nth-child(2) {
    border-bottom: 1px solid #ece8e4 !important;
  }
  .mfv-trust-grid h3,
  .mfv-trust-grid strong,
  .mfv-vc-value-strip__grid strong,
  .mfv-vc-brand-values strong {
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-align: center !important;
    margin: 6px 0 4px !important;
    color: #111111 !important;
  }
  .mfv-trust-grid p,
  .mfv-trust-grid span:not(.mfv-trust-item__icon),
  .mfv-vc-value-strip__grid small,
  .mfv-vc-value-strip__grid p,
  .mfv-vc-brand-values small,
  .mfv-vc-brand-values p {
    font-size: 12px !important;
    line-height: 1.4 !important;
    text-align: center !important;
    margin: 0 !important;
    color: #555555 !important;
  }
}
