/* ENVI UI & Performance Patch 1.4.0 — storefront recovery */
body.envi-ui-patch-v140 {
  --envi-ui-ink:#2a2223;
  --envi-ui-soft:#66595c;
  --envi-ui-muted:#817477;
  --envi-ui-paper:#fffdfb;
  --envi-ui-ivory:#fbf8f4;
  --envi-ui-blush:#f4e9e6;
  --envi-ui-blush-2:#ead7d3;
  --envi-ui-wine:#945269;
  --envi-ui-tiffany:#2b9292;
  --envi-ui-tiffany-dark:#227878;
  --envi-ui-tiffany-soft:#e5f4f2;
  --envi-ui-line:rgba(48,37,39,.13);
  --envi-ui-line-strong:rgba(48,37,39,.21);
  --envi-ui-shadow:0 14px 38px rgba(45,31,33,.08);
}

/* Desktop readability: body copy should not look like footnotes. */
@media (min-width:1021px) {
  body.envi-ui-patch-v140 .site-main p,
  body.envi-ui-patch-v140 .envi-main p,
  body.envi-ui-patch-v140 .woocommerce p,
  body.envi-ui-patch-v140 .woocommerce li,
  body.envi-ui-patch-v140 .woocommerce label,
  body.envi-ui-patch-v140 .woocommerce input,
  body.envi-ui-patch-v140 .woocommerce select,
  body.envi-ui-patch-v140 .woocommerce textarea { font-size:16.5px !important; }

  body.envi-ui-patch-v140 .woocommerce-product-details__short-description,
  body.envi-ui-patch-v140 .woocommerce-products-header__description,
  body.envi-ui-patch-v140 .term-description,
  body.envi-ui-patch-v140 .woocommerce-tabs .panel { font-size:17px !important; line-height:1.72 !important; }

  body.envi-ui-patch-v140 .woocommerce-breadcrumb { font-size:13px !important; }
  body.envi-ui-patch-v140.single-product .envi-product-kicker { font-size:11px !important; }
  body.envi-ui-patch-v140.single-product table.variations th.label label { font-size:15px !important; }
  body.envi-ui-patch-v140.single-product .variable-item,
  body.envi-ui-patch-v140.single-product .variable-item span { font-size:14px !important; }
  body.envi-ui-patch-v140.single-product .product_meta,
  body.envi-ui-patch-v140.single-product .product_meta a { font-size:14.5px !important; line-height:1.7 !important; }
  body.envi-ui-patch-v140 .envi-product-assurance strong { font-size:15.5px !important; }
  body.envi-ui-patch-v140 .envi-product-assurance small { font-size:13.5px !important; }
  body.envi-ui-patch-v140 .envi-desktop-nav > a,
  body.envi-ui-patch-v140 .envi-desktop-nav ul.menu > li > a { font-size:14px !important; }
  body.envi-ui-patch-v140 .envi-card-title,
  body.envi-ui-patch-v140 .woocommerce ul.products li.product .woocommerce-loop-product__title.envi-card-title { font-size:16.5px !important; }
  body.envi-ui-patch-v140 .envi-card-price { font-size:16px !important; }
  body.envi-ui-patch-v140 .envi-card-action { font-size:13.5px !important; }
}

/* Softer ENVI buttons — Tiffany + blush instead of aggressive black blocks. */
body.envi-ui-patch-v140 .single_add_to_cart_button,
body.envi-ui-patch-v140 .envi-button-dark,
body.envi-ui-patch-v140 .button.alt {
  border:1px solid var(--envi-ui-tiffany-dark) !important;
  border-radius:13px !important;
  background:var(--envi-ui-tiffany-dark) !important;
  color:#fff !important;
  box-shadow:0 7px 18px rgba(34,120,120,.13) !important;
  font-weight:750 !important;
  text-transform:none !important;
}
body.envi-ui-patch-v140 .single_add_to_cart_button:hover,
body.envi-ui-patch-v140 .envi-button-dark:hover,
body.envi-ui-patch-v140 .button.alt:hover { background:var(--envi-ui-tiffany) !important; border-color:var(--envi-ui-tiffany) !important; transform:none !important; }
body.envi-ui-patch-v140 .envi-card-action,
body.envi-ui-patch-v140 .button:not(.alt):not(.single_add_to_cart_button) {
  border-color:var(--envi-ui-line-strong) !important;
  border-radius:11px !important;
  background:var(--envi-ui-paper) !important;
  color:var(--envi-ui-ink) !important;
  box-shadow:none !important;
}
body.envi-ui-patch-v140 .envi-card-action:hover,
body.envi-ui-patch-v140 .button:not(.alt):not(.single_add_to_cart_button):hover { border-color:rgba(43,146,146,.42) !important; background:var(--envi-ui-tiffany-soft) !important; color:var(--envi-ui-tiffany-dark) !important; }

/* Product page hierarchy. */
body.envi-ui-patch-v140.single-product .summary.entry-summary { display:flex !important; flex-direction:column !important; }
body.envi-ui-patch-v140.single-product .summary.entry-summary > * { order:50; }
body.envi-ui-patch-v140.single-product .summary.entry-summary > .woocommerce-breadcrumb { order:1; }
body.envi-ui-patch-v140.single-product .summary.entry-summary > .envi-product-kicker { order:2; }
body.envi-ui-patch-v140.single-product .summary.entry-summary > .single-product-category { order:3; }
body.envi-ui-patch-v140.single-product .summary.entry-summary > .product_title { order:4; }
body.envi-ui-patch-v140.single-product .summary.entry-summary > .price { order:5; }
body.envi-ui-patch-v140.single-product .summary.entry-summary > form.cart { order:6; }
body.envi-ui-patch-v140.single-product .summary.entry-summary > .woocommerce-product-details__short-description { order:7; }
body.envi-ui-patch-v140.single-product .summary.entry-summary > .envi-single-wishlist { order:8; }
body.envi-ui-patch-v140.single-product .summary.entry-summary > .envi-product-assurance { order:9; }
body.envi-ui-patch-v140.single-product .summary.entry-summary > .envi-product-wholesale-link { order:10; }
body.envi-ui-patch-v140.single-product .summary.entry-summary > .product_meta,
body.envi-ui-patch-v140.single-product .summary.entry-summary > .envi-ui-meta-details { order:11; }

/* Reliable curl labels: never show anonymous white image squares. */
body.envi-ui-patch-v140.single-product li.variable-item[data-attribute_name="attribute_pa_curve"],
body.envi-ui-patch-v140.single-product li.variable-item[data-attribute_name="attribute_pa_curl"],
body.envi-ui-patch-v140.single-product .variable-items-wrapper[data-attribute_name="attribute_pa_curve"] > li.variable-item,
body.envi-ui-patch-v140.single-product .variable-items-wrapper[data-attribute_name="attribute_pa_curl"] > li.variable-item {
  position:relative !important;
  width:auto !important;
  min-width:44px !important;
  height:42px !important;
  min-height:42px !important;
  padding:0 11px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:visible !important;
  border:1px solid var(--envi-ui-line-strong) !important;
  border-radius:10px !important;
  background:#fff !important;
  color:var(--envi-ui-ink) !important;
  box-shadow:none !important;
}
body.envi-ui-patch-v140.single-product li.variable-item[data-attribute_name="attribute_pa_curve"] .variable-item-contents,
body.envi-ui-patch-v140.single-product li.variable-item[data-attribute_name="attribute_pa_curl"] .variable-item-contents,
body.envi-ui-patch-v140.single-product .variable-items-wrapper[data-attribute_name="attribute_pa_curve"] > li.variable-item .variable-item-contents,
body.envi-ui-patch-v140.single-product .variable-items-wrapper[data-attribute_name="attribute_pa_curl"] > li.variable-item .variable-item-contents { display:none !important; }
body.envi-ui-patch-v140.single-product .envi-ui-curve-text {
  display:block !important;
  position:relative !important;
  z-index:3 !important;
  margin:0 !important;
  color:var(--envi-ui-ink) !important;
  font-family:inherit !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:800 !important;
  white-space:nowrap !important;
}
body.envi-ui-patch-v140.single-product li.variable-item.selected[data-attribute_name="attribute_pa_curve"],
body.envi-ui-patch-v140.single-product li.variable-item[aria-checked="true"][data-attribute_name="attribute_pa_curve"],
body.envi-ui-patch-v140.single-product li.variable-item.selected[data-attribute_name="attribute_pa_curl"],
body.envi-ui-patch-v140.single-product li.variable-item[aria-checked="true"][data-attribute_name="attribute_pa_curl"] { border-color:var(--envi-ui-tiffany-dark) !important; background:var(--envi-ui-tiffany-soft) !important; color:var(--envi-ui-tiffany-dark) !important; }
body.envi-ui-patch-v140.single-product li.variable-item.selected .envi-ui-curve-text,
body.envi-ui-patch-v140.single-product li.variable-item[aria-checked="true"] .envi-ui-curve-text { color:var(--envi-ui-tiffany-dark) !important; }
body.envi-ui-patch-v140.single-product li.variable-item.disabled { opacity:.34 !important; }

/* Wishlist: heart over gallery, never a big separate button. */
body.envi-ui-patch-v140.single-product .woocommerce-product-gallery { position:relative !important; }
body.envi-ui-patch-v140.single-product .envi-ui-gallery-wishlist {
  position:absolute !important;
  z-index:25 !important;
  top:13px !important;
  inset-inline-start:13px !important;
  width:42px !important;
  min-width:42px !important;
  height:42px !important;
  min-height:42px !important;
  display:grid !important;
  place-items:center !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid var(--envi-ui-line) !important;
  border-radius:50% !important;
  background:rgba(255,253,251,.95) !important;
  color:var(--envi-ui-wine) !important;
  box-shadow:0 8px 22px rgba(45,31,33,.08) !important;
  font-size:0 !important;
  text-indent:-9999px !important;
  overflow:hidden !important;
}
body.envi-ui-patch-v140.single-product .envi-ui-gallery-wishlist::before {
  content:"";
  width:19px;
  height:19px;
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 21s-7-4.35-9.33-8.35C.85 9.5 2.4 5.5 6.1 4.75A5.6 5.6 0 0 1 12 7.2a5.6 5.6 0 0 1 5.9-2.45c3.7.75 5.25 4.75 3.43 7.9C19 16.65 12 21 12 21Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 21s-7-4.35-9.33-8.35C.85 9.5 2.4 5.5 6.1 4.75A5.6 5.6 0 0 1 12 7.2a5.6 5.6 0 0 1 5.9-2.45c3.7.75 5.25 4.75 3.43 7.9C19 16.65 12 21 12 21Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
body.envi-ui-patch-v140.single-product .envi-ui-gallery-wishlist.woosw-added { background:var(--envi-ui-wine) !important; color:#fff !important; }
body.envi-ui-patch-v140.single-product .envi-single-wishlist:empty { display:none !important; }

/* Compact contextual catalog filters. */
body.envi-ui-patch-v140 .woocommerce-result-count,
body.envi-ui-patch-v140 .woocommerce-ordering { display:none !important; }
.envi-ui-toolbar {
  position:relative;
  z-index:60;
  clear:both;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:10px 0 16px;
  padding:7px;
  border:1px solid var(--envi-ui-line);
  border-radius:13px;
  background:rgba(255,253,251,.90);
}
.envi-ui-toolbar-main { min-width:0; display:flex; align-items:center; gap:6px; }
.envi-ui-control { position:relative; flex:0 0 auto; }
.envi-ui-control > summary {
  min-height:38px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:0 12px;
  border:1px solid var(--envi-ui-line-strong);
  border-radius:10px;
  background:#fff;
  color:var(--envi-ui-ink);
  font-size:12.5px;
  font-weight:750;
  list-style:none;
  cursor:pointer;
}
.envi-ui-control > summary::-webkit-details-marker { display:none; }
.envi-ui-control > summary svg { width:16px; height:16px; }
.envi-ui-control > summary b { color:var(--envi-ui-wine); font-size:16px; line-height:0; }
.envi-ui-control[open] > summary { border-color:rgba(43,146,146,.45); background:var(--envi-ui-tiffany-soft); color:var(--envi-ui-tiffany-dark); }
.envi-ui-popover {
  position:absolute;
  z-index:100;
  top:calc(100% + 7px);
  inset-inline-start:0;
  min-width:230px;
  max-width:min(440px,calc(100vw - 28px));
  padding:10px;
  border:1px solid var(--envi-ui-line);
  border-radius:14px;
  background:var(--envi-ui-paper);
  box-shadow:0 22px 58px rgba(45,31,33,.15);
}
.envi-ui-sort-popover { display:grid; gap:3px; }
.envi-ui-sort-popover > a { min-height:36px; display:flex; align-items:center; padding:0 10px; border-radius:9px; color:var(--envi-ui-soft); font-size:12px; font-weight:700; white-space:nowrap; }
.envi-ui-sort-popover > a:hover,
.envi-ui-sort-popover > a.is-active { background:var(--envi-ui-tiffany-soft); color:var(--envi-ui-tiffany-dark); }
.envi-ui-filter-popover { width:min(420px,calc(100vw - 28px)); }
.envi-ui-filter-group + .envi-ui-filter-group { margin-top:12px; padding-top:11px; border-top:1px solid var(--envi-ui-line); }
.envi-ui-filter-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:7px; }
.envi-ui-filter-head strong { font-size:12px; color:var(--envi-ui-ink); }
.envi-ui-filter-head a,
.envi-ui-clear { color:var(--envi-ui-wine); font-size:10.5px; font-weight:700; text-decoration:underline; text-underline-offset:2px; }
.envi-ui-filter-options { display:flex; flex-wrap:wrap; gap:6px; }
.envi-ui-filter-options > a {
  min-height:32px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 10px;
  border:1px solid var(--envi-ui-line);
  border-radius:9px;
  background:#fff;
  color:var(--envi-ui-soft);
  font-size:11px;
  font-weight:700;
}
.envi-ui-filter-options > a:hover,
.envi-ui-filter-options > a.is-active { border-color:rgba(43,146,146,.45); background:var(--envi-ui-tiffany-soft); color:var(--envi-ui-tiffany-dark); }
.envi-ui-clear { display:inline-block; margin-top:13px; }
.envi-ui-quick { min-width:0; display:flex; align-items:center; gap:5px; }
.envi-ui-quick > a {
  min-height:36px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:0 12px;
  border:1px solid transparent;
  border-radius:999px;
  background:var(--envi-ui-blush);
  color:var(--envi-ui-soft);
  font-size:11px;
  font-weight:750;
  white-space:nowrap;
}
.envi-ui-quick > a i { width:7px; height:7px; border-radius:50%; background:currentColor; opacity:.58; }
.envi-ui-quick > a:hover { color:var(--envi-ui-wine); }
.envi-ui-quick > a.is-active { border-color:rgba(43,146,146,.42); background:var(--envi-ui-tiffany-soft); color:var(--envi-ui-tiffany-dark); }
.envi-ui-count { padding-inline:5px; color:var(--envi-ui-muted); font-size:11px; white-space:nowrap; }

/* Archive intro: compact, no huge blank gap before products. */
body.envi-ui-patch-v140.woocommerce-page .site-main,
body.envi-ui-patch-v140.woocommerce .site-main { padding-top:24px !important; }
body.envi-ui-patch-v140 .woocommerce-products-header { max-width:900px !important; margin-bottom:10px !important; }
body.envi-ui-patch-v140 .woocommerce-products-header__title,
body.envi-ui-patch-v140 .woocommerce-page-title { margin-bottom:7px !important; }
body.envi-ui-patch-v140 .woocommerce ul.products,
body.envi-ui-patch-v140 ul.products { margin-top:12px !important; }

/* Mobile shell/menu cleanup. */
@media (max-width:1020px) {
  body.envi-ui-patch-v140 { padding-bottom:0 !important; }
  body.envi-ui-patch-v140 .envi-mobile-dock { display:none !important; }

  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) {
    grid-template-columns:44px 44px minmax(0,1fr) 44px !important;
    gap:4px !important;
    padding-inline:10px !important;
  }
  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) .envi-logo {
    grid-column:3 !important;
    grid-row:1 !important;
    justify-self:center !important;
    width:116px !important;
  }
  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) .envi-header-actions { display:contents !important; }
  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) .envi-cart-button { grid-column:1 !important; grid-row:1 !important; }
  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) .envi-ui-header-search,
  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) [data-envi-search-toggle] { grid-column:2 !important; grid-row:1 !important; display:inline-grid !important; }
  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) .envi-mobile-toggle { grid-column:4 !important; grid-row:1 !important; }
  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) > .envi-language-switcher { display:none !important; }

  body.envi-ui-patch-v140 .envi-mobile-nav { padding:12px 14px 18px !important; }
  body.envi-ui-patch-v140 .envi-mobile-nav .envi-mobile-menu-utilities [data-envi-search-toggle],
  body.envi-ui-patch-v140 .envi-mobile-nav .envi-mobile-more-links { display:none !important; }
  body.envi-ui-patch-v140 .envi-ui-account-row {
    min-height:42px !important;
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    margin:10px 0 0 !important;
    padding:0 11px !important;
    border:1px solid var(--envi-ui-line) !important;
    border-radius:10px !important;
    background:rgba(255,255,255,.74) !important;
    color:var(--envi-ui-ink) !important;
    font-size:11.5px !important;
    font-weight:750 !important;
  }
  body.envi-ui-patch-v140 .envi-ui-account-row svg { width:16px; height:16px; }
  body.envi-ui-patch-v140 .envi-ui-language {
    margin-top:7px;
    border:1px solid var(--envi-ui-line);
    border-radius:10px;
    background:rgba(255,255,255,.64);
  }
  body.envi-ui-patch-v140 .envi-ui-language > summary {
    min-height:40px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:0 11px;
    list-style:none;
    color:var(--envi-ui-soft);
    font-size:11px;
    font-weight:750;
    cursor:pointer;
  }
  body.envi-ui-patch-v140 .envi-ui-language > summary::-webkit-details-marker { display:none; }
  body.envi-ui-patch-v140 .envi-ui-language-body { padding:0 9px 9px; }
  body.envi-ui-patch-v140 .envi-ui-language-body .envi-language-switcher { width:100% !important; margin:0 !important; border-top:1px solid var(--envi-ui-line); }
  body.envi-ui-patch-v140 .envi-ui-language-body select { width:100% !important; height:38px !important; }
  body.envi-ui-patch-v140 .envi-ui-old-language-grid { display:none !important; }

  /* Homepage hero: photo first, copy second. No text painted over the red trays. */
  body.envi-ui-patch-v140 .envi-hero {
    min-height:0 !important;
    max-height:none !important;
    padding:0 0 18px !important;
    overflow:hidden !important;
    background:linear-gradient(180deg,#f2e4df 0%,var(--envi-ui-ivory) 100%) !important;
  }
  body.envi-ui-patch-v140 .envi-hero-image {
    position:relative !important;
    inset:auto !important;
    z-index:0 !important;
    display:block !important;
    width:100% !important;
    height:250px !important;
    object-fit:cover !important;
    object-position:62% 48% !important;
  }
  body.envi-ui-patch-v140 .envi-hero-overlay { display:none !important; }
  body.envi-ui-patch-v140 .envi-hero-content {
    position:relative !important;
    inset:auto !important;
    width:calc(100% - 24px) !important;
    margin:0 auto !important;
    padding:17px 15px 16px !important;
    transform:none !important;
    border:1px solid var(--envi-ui-line) !important;
    border-top:0 !important;
    border-radius:0 0 16px 16px !important;
    background:rgba(255,253,251,.98) !important;
    box-shadow:none !important;
    text-align:start !important;
  }
  body.envi-ui-patch-v140 .envi-hero h1 { font-size:35px !important; line-height:1.03 !important; }
  body.envi-ui-patch-v140 .envi-hero-intro { margin-top:10px !important; font-size:13px !important; line-height:1.55 !important; }
  body.envi-ui-patch-v140 .envi-hero-buttons { margin-top:14px !important; gap:9px !important; }
  body.envi-ui-patch-v140 .envi-hero-notes,
  body.envi-ui-patch-v140 .envi-hero-signature { display:none !important; }
  body.envi-ui-patch-v140 .envi-category-section.envi-section-pad { padding-top:44px !important; }

  /* Mobile catalog starts almost immediately. */
  body.envi-ui-patch-v140.woocommerce-page .ast-woocommerce-container,
  body.envi-ui-patch-v140.woocommerce .ast-woocommerce-container,
  body.envi-ui-patch-v140.woocommerce-page .site-main,
  body.envi-ui-patch-v140.woocommerce .site-main { width:calc(100% - 24px) !important; padding:17px 0 52px !important; }
  body.envi-ui-patch-v140 .woocommerce-breadcrumb { margin-bottom:8px !important; font-size:9.5px !important; }
  body.envi-ui-patch-v140 .woocommerce-products-header { margin-bottom:8px !important; }
  body.envi-ui-patch-v140 .woocommerce-products-header__title,
  body.envi-ui-patch-v140 .woocommerce-page-title { margin-bottom:5px !important; font-size:31px !important; line-height:1.05 !important; }
  body.envi-ui-patch-v140 .woocommerce-products-header__description,
  body.envi-ui-patch-v140 .term-description { font-size:12.5px !important; line-height:1.52 !important; }
  .envi-ui-toolbar { margin:8px 0 12px; padding:5px; gap:5px; border-radius:10px; }
  .envi-ui-toolbar-main { flex:1 1 auto; overflow-x:auto; gap:5px; scrollbar-width:none; }
  .envi-ui-toolbar-main::-webkit-scrollbar { display:none; }
  .envi-ui-control > summary { min-height:34px; padding:0 9px; border-radius:8px; font-size:10px; }
  .envi-ui-control > summary span { display:none; }
  .envi-ui-control > summary svg { width:16px; height:16px; }
  .envi-ui-popover { position:fixed; top:auto; bottom:14px; inset-inline:12px; width:auto; max-width:none; max-height:70svh; overflow:auto; border-radius:16px; }
  .envi-ui-quick { flex:0 0 auto; overflow-x:auto; scrollbar-width:none; }
  .envi-ui-quick::-webkit-scrollbar { display:none; }
  .envi-ui-quick > a { min-height:34px; padding:0 10px; font-size:9.8px; }
  .envi-ui-count { font-size:8.8px; }
  body.envi-ui-patch-v140 .woocommerce ul.products,
  body.envi-ui-patch-v140 ul.products { margin-top:10px !important; gap:20px 9px !important; }

  /* Mobile product page: strip noise, keep image/choice/CTA close together. */
  body.envi-ui-patch-v140.single-product .ast-woocommerce-container,
  body.envi-ui-patch-v140.single-product .site-main { width:calc(100% - 20px) !important; padding:10px 0 44px !important; }
  body.envi-ui-patch-v140.single-product .summary.entry-summary { margin-top:12px !important; }
  body.envi-ui-patch-v140.single-product .summary .woocommerce-breadcrumb,
  body.envi-ui-patch-v140.single-product .summary .envi-product-kicker,
  body.envi-ui-patch-v140.single-product .summary .single-product-category { display:none !important; }
  body.envi-ui-patch-v140.single-product .product_title { margin:0 0 6px !important; font-size:29px !important; line-height:1.06 !important; }
  body.envi-ui-patch-v140.single-product p.price { margin:0 0 9px !important; font-size:21px !important; }
  body.envi-ui-patch-v140.single-product .woocommerce-product-gallery__image > a { padding:8px !important; border-radius:13px !important; }
  body.envi-ui-patch-v140.single-product .woocommerce-product-gallery .flex-control-thumbs { gap:5px !important; margin-top:6px !important; }
  body.envi-ui-patch-v140.single-product .woocommerce-product-gallery .flex-control-thumbs li,
  body.envi-ui-patch-v140.single-product .woocommerce-product-gallery .flex-control-thumbs img { width:48px !important; height:48px !important; }
  body.envi-ui-patch-v140.single-product form.cart { margin:0 0 7px !important; }
  body.envi-ui-patch-v140.single-product table.variations { margin:0 0 6px !important; }
  body.envi-ui-patch-v140.single-product table.variations tbody { gap:4px !important; }
  body.envi-ui-patch-v140.single-product table.variations tr { grid-template-columns:52px minmax(0,1fr) !important; gap:6px !important; padding:0 0 6px !important; }
  body.envi-ui-patch-v140.single-product table.variations th.label label { padding-top:9px !important; font-size:10.5px !important; }
  body.envi-ui-patch-v140.single-product .variable-items-wrapper { gap:5px !important; }
  body.envi-ui-patch-v140.single-product .variable-item { min-width:39px !important; height:39px !important; min-height:39px !important; padding-inline:8px !important; border-radius:8px !important; font-size:10.5px !important; }
  body.envi-ui-patch-v140.single-product .woocommerce-variation-add-to-cart,
  body.envi-ui-patch-v140.single-product form.cart:not(.variations_form) { width:100% !important; display:grid !important; grid-template-columns:54px minmax(0,1fr) !important; gap:7px !important; align-items:stretch !important; }
  body.envi-ui-patch-v140.single-product .quantity,
  body.envi-ui-patch-v140.single-product .quantity .qty { width:54px !important; min-width:54px !important; height:46px !important; min-height:46px !important; margin:0 !important; }
  body.envi-ui-patch-v140.single-product .single_add_to_cart_button { width:100% !important; min-width:0 !important; min-height:46px !important; display:flex !important; align-items:center !important; justify-content:center !important; margin:0 !important; padding:0 14px !important; float:none !important; font-size:13px !important; white-space:nowrap !important; }
  body.envi-ui-patch-v140.single-product .woocommerce-product-details__short-description { margin:8px 0 0 !important; padding:10px 0 0 !important; border-top:1px solid var(--envi-ui-line) !important; font-size:12.5px !important; line-height:1.55 !important; }
  body.envi-ui-patch-v140.single-product .envi-product-assurance { margin-top:11px !important; border-radius:12px !important; }
  body.envi-ui-patch-v140.single-product .envi-product-assurance > div { padding:10px !important; }
  body.envi-ui-patch-v140.single-product .envi-product-assurance strong { font-size:12.5px !important; }
  body.envi-ui-patch-v140.single-product .envi-product-assurance small { font-size:10.5px !important; }
  body.envi-ui-patch-v140.single-product .envi-product-wholesale-link { margin-top:7px !important; padding:10px 11px !important; border-radius:11px !important; font-size:11px !important; }
  body.envi-ui-patch-v140.single-product .product_meta { display:none !important; }
  body.envi-ui-patch-v140.single-product .envi-ui-meta-details { margin-top:8px; border:1px solid var(--envi-ui-line); border-radius:10px; background:rgba(255,255,255,.52); }
  body.envi-ui-patch-v140.single-product .envi-ui-meta-details > summary { min-height:39px; display:flex; align-items:center; padding:0 11px; list-style:none; font-size:11px; font-weight:750; cursor:pointer; }
  body.envi-ui-patch-v140.single-product .envi-ui-meta-details > summary::-webkit-details-marker { display:none; }
  body.envi-ui-patch-v140.single-product .envi-ui-meta-details .product_meta { display:block !important; margin:0 !important; padding:9px 11px 11px !important; border-top:1px solid var(--envi-ui-line); font-size:10.5px !important; line-height:1.55 !important; }
}

/* === 1.2.0 TYPOGRAPHY RESET ===
   Previous pass corrected WooCommerce text but left the ENVI homepage/editorial shell
   on its original micro-type scale. This block deliberately normalises the entire
   desktop storefront hierarchy instead of only WooCommerce. */
@media (min-width:1021px) {
  body.envi-ui-patch-v140 {
    font-size:17px !important;
    line-height:1.62 !important;
  }

  /* Header / utility text */
  body.envi-ui-patch-v140 .envi-announcement {
    min-height:34px !important;
    padding-block:7px !important;
    font-size:13px !important;
    line-height:1.35 !important;
    letter-spacing:.025em !important;
  }
  body.envi-ui-patch-v140 .envi-header {
    min-height:82px !important;
    height:82px !important;
  }
  body.envi-ui-patch-v140 .envi-desktop-nav > a,
  body.envi-ui-patch-v140 .envi-desktop-nav ul.menu > li > a {
    min-height:48px !important;
    padding-inline:15px !important;
    font-size:16.5px !important;
    line-height:1.2 !important;
    font-weight:720 !important;
    letter-spacing:.01em !important;
  }
  body.envi-ui-patch-v140 .envi-desktop-nav .sub-menu a {
    font-size:15px !important;
    line-height:1.35 !important;
  }
  body.envi-ui-patch-v140 .envi-language-switcher select {
    font-size:13px !important;
  }

  /* Homepage hero: keep title elegant, make supporting copy actually readable. */
  body.envi-ui-patch-v140 .envi-hero {
    min-height:clamp(560px,52vw,680px) !important;
  }
  body.envi-ui-patch-v140 .envi-hero-content {
    width:min(620px,44vw) !important;
  }
  body.envi-ui-patch-v140 .envi-hero-content .envi-eyebrow,
  body.envi-ui-patch-v140 .envi-eyebrow {
    margin-bottom:15px !important;
    font-size:12.5px !important;
    line-height:1.25 !important;
    font-weight:800 !important;
    letter-spacing:.13em !important;
  }
  body.envi-ui-patch-v140 .envi-hero h1 {
    max-width:610px !important;
    font-size:clamp(50px,3.55vw,60px) !important;
    line-height:1.01 !important;
    letter-spacing:-.028em !important;
  }
  body.envi-ui-patch-v140 .envi-hero-intro {
    max-width:590px !important;
    margin-top:23px !important;
    font-size:18px !important;
    line-height:1.66 !important;
    font-weight:450 !important;
  }
  body.envi-ui-patch-v140 .envi-hero-buttons {
    margin-top:27px !important;
    gap:16px !important;
  }
  body.envi-ui-patch-v140 .envi-hero .envi-button,
  body.envi-ui-patch-v140 .envi-hero .envi-text-button {
    min-height:50px !important;
    padding-inline:22px !important;
    font-size:15px !important;
    line-height:1.1 !important;
    font-weight:760 !important;
  }
  body.envi-ui-patch-v140 .envi-hero .envi-button.envi-button-dark {
    border-color:#9a5368 !important;
    background:#9a5368 !important;
    color:#fff !important;
    box-shadow:0 9px 22px rgba(154,83,104,.16) !important;
  }
  body.envi-ui-patch-v140 .envi-hero .envi-button.envi-button-dark:hover {
    border-color:#86475b !important;
    background:#86475b !important;
  }
  body.envi-ui-patch-v140 .envi-hero .envi-text-button {
    color:#6e4a56 !important;
  }
  body.envi-ui-patch-v140 .envi-hero-notes {
    gap:30px !important;
    font-size:13px !important;
    line-height:1.35 !important;
    letter-spacing:.025em !important;
  }
  body.envi-ui-patch-v140 .envi-hero-signature {
    font-size:11.5px !important;
    letter-spacing:.12em !important;
  }

  /* Shared editorial section hierarchy */
  body.envi-ui-patch-v140 .envi-section-heading {
    margin-bottom:42px !important;
  }
  body.envi-ui-patch-v140 .envi-section-heading h2 {
    font-size:clamp(40px,3.1vw,50px) !important;
    line-height:1.07 !important;
  }
  body.envi-ui-patch-v140 .envi-section-heading > p,
  body.envi-ui-patch-v140 .envi-standard-copy > p,
  body.envi-ui-patch-v140 .envi-uv-copy > p,
  body.envi-ui-patch-v140 .envi-artist-copy > p,
  body.envi-ui-patch-v140 .envi-loyalty-copy > p,
  body.envi-ui-patch-v140 .envi-trade-copy > p {
    font-size:17.5px !important;
    line-height:1.72 !important;
  }
  body.envi-ui-patch-v140 .envi-standard-copy h2,
  body.envi-ui-patch-v140 .envi-uv-copy h2,
  body.envi-ui-patch-v140 .envi-artist-copy h2,
  body.envi-ui-patch-v140 .envi-loyalty-copy h2,
  body.envi-ui-patch-v140 .envi-trade-copy h2 {
    font-size:clamp(42px,3.4vw,54px) !important;
    line-height:1.04 !important;
  }
  body.envi-ui-patch-v140 .envi-standard-points h3,
  body.envi-ui-patch-v140 .envi-loyalty-cards h3 {
    font-size:17px !important;
  }
  body.envi-ui-patch-v140 .envi-standard-points p,
  body.envi-ui-patch-v140 .envi-loyalty-cards p {
    font-size:14.5px !important;
    line-height:1.6 !important;
  }

  /* Category and product cards */
  body.envi-ui-patch-v140 .envi-category-card h3 {
    font-size:17px !important;
    line-height:1.35 !important;
  }
  body.envi-ui-patch-v140 .envi-category-card > div:last-child span {
    font-size:13px !important;
  }
  body.envi-ui-patch-v140 .envi-product-info > p,
  body.envi-ui-patch-v140 .envi-card-meta {
    font-size:11px !important;
  }
  body.envi-ui-patch-v140 .envi-product-info h3,
  body.envi-ui-patch-v140 .envi-card-title,
  body.envi-ui-patch-v140 .woocommerce ul.products li.product .woocommerce-loop-product__title.envi-card-title {
    font-size:18px !important;
    line-height:1.42 !important;
  }
  body.envi-ui-patch-v140 .envi-product-row .price,
  body.envi-ui-patch-v140 .envi-card-price {
    font-size:17px !important;
  }
  body.envi-ui-patch-v140 .envi-card-action,
  body.envi-ui-patch-v140 .woocommerce ul.products li.product .envi-card-action.button {
    min-height:46px !important;
    font-size:14.5px !important;
  }

  /* Woo archive pages: reduce headline domination, increase copy/filter readability. */
  body.envi-ui-patch-v140 .woocommerce-products-header__title,
  body.envi-ui-patch-v140 .woocommerce-page-title {
    font-size:clamp(42px,3vw,50px) !important;
    line-height:1.05 !important;
  }
  body.envi-ui-patch-v140 .woocommerce-products-header__description,
  body.envi-ui-patch-v140 .term-description {
    max-width:850px !important;
    font-size:17.5px !important;
    line-height:1.7 !important;
  }
  body.envi-ui-patch-v140 .envi-ui-control > summary,
  body.envi-ui-patch-v140 .envi-ui-sort-popover > a,
  body.envi-ui-patch-v140 .envi-ui-filter-head strong,
  body.envi-ui-patch-v140 .envi-ui-filter-option,
  body.envi-ui-patch-v140 .envi-ui-quick > a,
  body.envi-ui-patch-v140 .envi-ui-count {
    font-size:13.5px !important;
  }
  body.envi-ui-patch-v140 .envi-ui-control > summary,
  body.envi-ui-patch-v140 .envi-ui-quick > a {
    min-height:40px !important;
  }

  /* Single product desktop */
  body.envi-ui-patch-v140.single-product .product_title {
    font-size:clamp(38px,2.55vw,45px) !important;
    line-height:1.08 !important;
  }
  body.envi-ui-patch-v140.single-product .woocommerce-product-details__short-description {
    font-size:17px !important;
    line-height:1.7 !important;
  }
  body.envi-ui-patch-v140.single-product table.variations th.label label {
    font-size:16px !important;
  }
  body.envi-ui-patch-v140.single-product .variable-item,
  body.envi-ui-patch-v140.single-product .variable-item span,
  body.envi-ui-patch-v140.single-product .envi-ui-curve-text {
    font-size:14.5px !important;
  }
  body.envi-ui-patch-v140.single-product .single_add_to_cart_button {
    min-height:50px !important;
    font-size:15px !important;
  }
  body.envi-ui-patch-v140.single-product .product_meta,
  body.envi-ui-patch-v140.single-product .product_meta a {
    font-size:15px !important;
  }
  body.envi-ui-patch-v140.single-product .envi-product-assurance strong {
    font-size:16px !important;
  }
  body.envi-ui-patch-v140.single-product .envi-product-assurance small {
    font-size:14px !important;
  }

  /* Footer should not collapse back to micro copy. */
  body.envi-ui-patch-v140 .envi-footer,
  body.envi-ui-patch-v140 .envi-footer a,
  body.envi-ui-patch-v140 .envi-footer button,
  body.envi-ui-patch-v140 .envi-footer p {
    font-size:14.5px !important;
    line-height:1.55 !important;
  }
}

/* Tablet: don't inherit desktop micro-type from the base theme. */
@media (min-width:761px) and (max-width:1020px) {
  body.envi-ui-patch-v140 .envi-section-heading > p,
  body.envi-ui-patch-v140 .envi-standard-copy > p,
  body.envi-ui-patch-v140 .envi-uv-copy > p,
  body.envi-ui-patch-v140 .envi-artist-copy > p,
  body.envi-ui-patch-v140 .envi-loyalty-copy > p,
  body.envi-ui-patch-v140 .envi-trade-copy > p {
    font-size:16px !important;
  }
}


/* =========================================================
   ENVI 1.3.0 — final hierarchy / navigation / mobile hard reset
   ========================================================= */

/* Global readability: no micro-copy on desktop. */
@media (min-width:1021px) {
  body.envi-ui-patch-v140 { font-size:17px !important; }
  body.envi-ui-patch-v140 .envi-main p,
  body.envi-ui-patch-v140 .site-main p,
  body.envi-ui-patch-v140 .woocommerce p,
  body.envi-ui-patch-v140 .woocommerce li,
  body.envi-ui-patch-v140 .woocommerce label,
  body.envi-ui-patch-v140 .entry-content p,
  body.envi-ui-patch-v140 .entry-content li { font-size:17px !important; line-height:1.68 !important; }
  body.envi-ui-patch-v140 .envi-eyebrow,
  body.envi-ui-patch-v140 .envi-product-kicker,
  body.envi-ui-patch-v140 .envi-card-meta,
  body.envi-ui-patch-v140 .envi-product-info > p { font-size:12.5px !important; line-height:1.35 !important; }
  body.envi-ui-patch-v140 .envi-section-heading > p,
  body.envi-ui-patch-v140 .woocommerce-products-header__description,
  body.envi-ui-patch-v140 .term-description,
  body.envi-ui-patch-v140.single-product .woocommerce-product-details__short-description,
  body.envi-ui-patch-v140.single-product .woocommerce-tabs .panel { font-size:17.5px !important; line-height:1.72 !important; }
  body.envi-ui-patch-v140 .envi-button,
  body.envi-ui-patch-v140 .button,
  body.envi-ui-patch-v140 button { font-size:15px !important; }
}

/* Header controls: large enough to read and tap. */
body.envi-ui-patch-v140 .envi-header { min-height:82px !important; height:auto !important; }
body.envi-ui-patch-v140 .envi-header .envi-icon-button {
  width:50px !important;
  min-width:50px !important;
  height:50px !important;
  min-height:50px !important;
  border:1px solid transparent !important;
}
body.envi-ui-patch-v140 .envi-header .envi-icon-button:hover {
  border-color:var(--envi-ui-line) !important;
  background:var(--envi-ui-tiffany-soft) !important;
}
body.envi-ui-patch-v140 .envi-header .envi-icon-button svg {
  width:24px !important;
  height:24px !important;
  stroke-width:1.85 !important;
}
body.envi-ui-patch-v140 .envi-header .envi-ui-header-search svg { width:26px !important; height:26px !important; }
body.envi-ui-patch-v140 .envi-cart-count {
  min-width:20px !important;
  height:20px !important;
  top:0 !important;
  font-size:10px !important;
}

/* Seven direct desktop groups. No giant nested dropdown. */
body.envi-ui-patch-v140 .envi-desktop-nav { display:flex !important; justify-content:center !important; min-width:0 !important; }
body.envi-ui-patch-v140 .envi-desktop-nav .envi-v14-nav-grid {
  width:100%;
  max-width:980px;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:4px 8px;
  margin:0;
  padding:0;
}
body.envi-ui-patch-v140 .envi-desktop-nav .envi-v14-nav-link {
  position:relative;
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 10px;
  color:#5d5254 !important;
  font-size:16px !important;
  line-height:1.2 !important;
  font-weight:720 !important;
  white-space:nowrap;
}
body.envi-ui-patch-v140 .envi-desktop-nav .envi-v14-nav-link::after {
  content:"";
  position:absolute;
  inset-inline:10px;
  bottom:4px;
  height:2px;
  border-radius:999px;
  background:var(--envi-ui-wine);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .18s ease;
}
body.envi-ui-patch-v140 .envi-desktop-nav .envi-v14-nav-link:hover,
body.envi-ui-patch-v140 .envi-desktop-nav .envi-v14-nav-link.is-current { color:var(--envi-ui-wine) !important; }
body.envi-ui-patch-v140 .envi-desktop-nav .envi-v14-nav-link:hover::after,
body.envi-ui-patch-v140 .envi-desktop-nav .envi-v14-nav-link.is-current::after { transform:scaleX(1); }
body.envi-ui-patch-v140 .envi-desktop-nav .sub-menu { display:none !important; }

/* Search: clean drawer with a usable field; no black square submit. */
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel {
  position:absolute !important;
  z-index:2400 !important;
  top:100% !important;
  inset-inline:0 !important;
  padding:14px 20px 16px !important;
  background:rgba(255,253,251,.995) !important;
  border-top:1px solid var(--envi-ui-line) !important;
  border-bottom:1px solid var(--envi-ui-line) !important;
  box-shadow:0 15px 35px rgba(45,31,33,.08) !important;
}
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-search-form {
  width:min(860px,100%) !important;
  max-width:860px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 50px !important;
  gap:8px !important;
  align-items:center !important;
}
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-search-form label { margin:0 !important; }
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel input[type="search"] {
  width:100% !important;
  height:50px !important;
  padding:0 16px !important;
  border:1px solid var(--envi-ui-line-strong) !important;
  border-radius:13px !important;
  background:#fff !important;
  color:var(--envi-ui-ink) !important;
  box-shadow:none !important;
  font-size:16px !important;
}
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel input[type="search"]:focus {
  border-color:rgba(43,146,146,.62) !important;
  box-shadow:0 0 0 3px rgba(43,146,146,.10) !important;
}
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-search-form button[type="submit"] {
  width:50px !important;
  min-width:50px !important;
  height:50px !important;
  min-height:50px !important;
  padding:0 !important;
  display:grid !important;
  place-items:center !important;
  border:1px solid rgba(43,146,146,.30) !important;
  border-radius:50% !important;
  background:var(--envi-ui-tiffany-soft) !important;
  color:var(--envi-ui-tiffany-dark) !important;
  box-shadow:none !important;
}
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-search-form button[type="submit"] svg {
  width:22px !important;
  height:22px !important;
}

/* Archive filters: clearly visible, but compact. */
body.envi-ui-patch-v140 .envi-ui-toolbar { padding:8px !important; margin:12px 0 18px !important; }
body.envi-ui-patch-v140 .envi-ui-toolbar-main { flex-wrap:wrap !important; gap:7px !important; }
body.envi-ui-patch-v140 .envi-ui-control > summary,
body.envi-ui-patch-v140 .envi-ui-quick > a {
  min-height:40px !important;
  font-size:13px !important;
}
body.envi-ui-patch-v140 .envi-ui-filter-head strong,
body.envi-ui-patch-v140 .envi-ui-filter-options > a,
body.envi-ui-patch-v140 .envi-ui-sort-popover > a { font-size:13px !important; }
body.envi-ui-patch-v140 .envi-ui-count { font-size:12px !important; }

/* Single product: tabs/details must be readable too. */
body.envi-ui-patch-v140.single-product div.product > .woocommerce-tabs ul.tabs { gap:24px !important; }
body.envi-ui-patch-v140.single-product div.product > .woocommerce-tabs ul.tabs li a {
  padding-bottom:12px !important;
  font-size:16px !important;
  line-height:1.35 !important;
  font-weight:760 !important;
}
body.envi-ui-patch-v140.single-product div.product > .woocommerce-tabs .panel {
  max-width:980px !important;
  font-size:17.5px !important;
  line-height:1.72 !important;
}
body.envi-ui-patch-v140.single-product div.product > .woocommerce-tabs .panel h2,
body.envi-ui-patch-v140.single-product div.product > .woocommerce-tabs .panel h3 {
  font-size:30px !important;
  line-height:1.2 !important;
}
body.envi-ui-patch-v140.single-product .product_meta,
body.envi-ui-patch-v140.single-product .product_meta a { font-size:15px !important; }

/* MOBILE / TABLET — hard layout reset so hero can never overlap on any phone. */
@media (max-width:1020px) {
  body.envi-ui-patch-v140 { font-size:16px !important; }

  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) {
    min-height:68px !important;
    grid-template-columns:46px 46px minmax(0,1fr) 46px !important;
    gap:3px !important;
    padding-inline:9px !important;
  }
  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) .envi-logo { width:118px !important; }
  body.envi-ui-patch-v140 .envi-header .envi-icon-button {
    width:46px !important;
    min-width:46px !important;
    height:46px !important;
    min-height:46px !important;
  }
  body.envi-ui-patch-v140 .envi-header .envi-icon-button svg { width:22px !important; height:22px !important; }
  body.envi-ui-patch-v140 .envi-header .envi-ui-header-search svg { width:24px !important; height:24px !important; }

  body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel { padding:10px !important; }
  body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-search-form {
    grid-template-columns:minmax(0,1fr) 46px !important;
    gap:6px !important;
  }
  body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel input[type="search"],
  body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-search-form button[type="submit"] {
    height:46px !important;
    min-height:46px !important;
  }
  body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-search-form button[type="submit"] {
    width:46px !important;
    min-width:46px !important;
  }

  /* Hero is a normal document flow: image, then text. Never absolute. */
  body.envi-ui-patch-v140 .envi-hero {
    display:flex !important;
    flex-direction:column !important;
    min-height:0 !important;
    height:auto !important;
    max-height:none !important;
    padding:0 !important;
    margin:0 !important;
    overflow:hidden !important;
    background:var(--envi-ui-ivory) !important;
  }
  body.envi-ui-patch-v140 .envi-hero-image {
    order:1 !important;
    position:relative !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    inset:auto !important;
    z-index:1 !important;
    display:block !important;
    width:100% !important;
    height:clamp(220px,58vw,320px) !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    object-fit:cover !important;
    object-position:62% 50% !important;
    transform:none !important;
  }
  body.envi-ui-patch-v140 .envi-hero-overlay { display:none !important; }
  body.envi-ui-patch-v140 .envi-hero-content {
    order:2 !important;
    position:relative !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    inset:auto !important;
    z-index:2 !important;
    width:100% !important;
    max-width:none !important;
    min-height:0 !important;
    margin:0 !important;
    padding:18px 16px 20px !important;
    transform:none !important;
    border:0 !important;
    border-radius:0 !important;
    background:var(--envi-ui-paper) !important;
    box-shadow:none !important;
    text-align:start !important;
  }
  body.envi-ui-patch-v140 .envi-hero-content .envi-eyebrow {
    margin:0 0 8px !important;
    font-size:11.5px !important;
    line-height:1.3 !important;
  }
  body.envi-ui-patch-v140 .envi-hero h1 {
    max-width:none !important;
    margin:0 !important;
    font-size:clamp(31px,8.7vw,39px) !important;
    line-height:1.04 !important;
    letter-spacing:-.025em !important;
  }
  body.envi-ui-patch-v140 .envi-hero-intro {
    max-width:none !important;
    margin:11px 0 0 !important;
    font-size:15.5px !important;
    line-height:1.55 !important;
  }
  body.envi-ui-patch-v140 .envi-hero-buttons {
    display:flex !important;
    flex-wrap:wrap !important;
    margin-top:15px !important;
    gap:8px !important;
  }
  body.envi-ui-patch-v140 .envi-hero .envi-button,
  body.envi-ui-patch-v140 .envi-hero .envi-text-button {
    min-height:44px !important;
    padding-inline:16px !important;
    font-size:13.5px !important;
  }
  body.envi-ui-patch-v140 .envi-hero-notes,
  body.envi-ui-patch-v140 .envi-hero-signature { display:none !important; }
  body.envi-ui-patch-v140 .envi-category-section.envi-section-pad { padding-top:34px !important; }

  /* Mobile text scale — readable, not desktop micro text. */
  body.envi-ui-patch-v140 .envi-main p,
  body.envi-ui-patch-v140 .site-main p,
  body.envi-ui-patch-v140 .woocommerce p,
  body.envi-ui-patch-v140 .woocommerce li,
  body.envi-ui-patch-v140 .woocommerce label { font-size:15px !important; line-height:1.58 !important; }
  body.envi-ui-patch-v140 .woocommerce-products-header__description,
  body.envi-ui-patch-v140 .term-description { font-size:15px !important; line-height:1.58 !important; }
  body.envi-ui-patch-v140 .envi-ui-control > summary { font-size:12.5px !important; }
  body.envi-ui-patch-v140 .envi-ui-control > summary span { display:inline !important; }
  body.envi-ui-patch-v140 .envi-ui-quick > a { font-size:12px !important; }
  body.envi-ui-patch-v140 .envi-ui-count { font-size:11px !important; }

  body.envi-ui-patch-v140.single-product .product_title { font-size:30px !important; line-height:1.08 !important; }
  body.envi-ui-patch-v140.single-product .woocommerce-product-details__short-description { font-size:15px !important; line-height:1.6 !important; }
  body.envi-ui-patch-v140.single-product table.variations th.label label { font-size:13px !important; }
  body.envi-ui-patch-v140.single-product .variable-item,
  body.envi-ui-patch-v140.single-product .variable-item span,
  body.envi-ui-patch-v140.single-product .envi-ui-curve-text { font-size:13px !important; }
  body.envi-ui-patch-v140.single-product div.product > .woocommerce-tabs ul.tabs li a { font-size:14.5px !important; }
  body.envi-ui-patch-v140.single-product div.product > .woocommerce-tabs .panel { font-size:15.5px !important; line-height:1.62 !important; }
  body.envi-ui-patch-v140.single-product .product_meta,
  body.envi-ui-patch-v140.single-product .product_meta a { font-size:13.5px !important; }

  /* Burger category labels and language are not tiny. */
  body.envi-ui-patch-v140 .envi-mobile-featured-category strong { font-size:15px !important; }
  body.envi-ui-patch-v140 .envi-mobile-featured-category small { font-size:11.5px !important; }
  body.envi-ui-patch-v140 .envi-mobile-category-buttons strong { font-size:13px !important; }
  body.envi-ui-patch-v140 .envi-mobile-category-buttons small { font-size:10.5px !important; }
  body.envi-ui-patch-v140 .envi-ui-account-row,
  body.envi-ui-patch-v140 .envi-ui-language > summary { font-size:13px !important; }
}

@media (max-width:430px) {
  body.envi-ui-patch-v140 .envi-hero-image { height:225px !important; }
  body.envi-ui-patch-v140 .envi-hero-content { padding:16px 14px 18px !important; }
  body.envi-ui-patch-v140 .envi-hero h1 { font-size:32px !important; }
  body.envi-ui-patch-v140 .envi-hero-intro { font-size:15px !important; }
  body.envi-ui-patch-v140 .envi-ui-control > summary span { display:none !important; }
}

@media (max-width:1020px){body.envi-ui-patch-v140 .envi-header-actions > .envi-language-switcher{display:none!important;} body.envi-ui-patch-v140 .envi-mobile-category-buttons a{min-height:52px!important;padding:9px 11px!important;} body.envi-ui-patch-v140 .envi-mobile-category-buttons a small{display:none!important;}}


/* =========================================================
   ENVI 1.4.0 — mobile header/burger/search/product controls
   ========================================================= */

/* On phones/tablets absolutely everything navigational lives in the burger.
   The desktop category row must never leak into the mobile document flow. */
@media (max-width:1020px) {
  body.envi-ui-patch-v140 .envi-desktop-nav,
  body.envi-ui-patch-v140 .envi-desktop-nav .envi-v14-nav-grid,
  body.envi-ui-patch-v140 .envi-desktop-nav .envi-v14-nav-link {
    display:none !important;
  }

  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) {
    grid-template-columns:48px 48px minmax(0,1fr) 48px !important;
    min-height:70px !important;
    height:70px !important;
    gap:3px !important;
    padding-inline:10px !important;
  }
  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) .envi-logo {
    grid-column:3 !important;
    grid-row:1 !important;
    width:124px !important;
    justify-self:center !important;
  }
  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) .envi-header-actions { display:contents !important; }
  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) .envi-cart-button { grid-column:1 !important; grid-row:1 !important; justify-self:start !important; }
  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) .envi-ui-header-search,
  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) [data-envi-search-toggle] { grid-column:2 !important; grid-row:1 !important; justify-self:center !important; display:inline-grid !important; }
  body.envi-ui-patch-v140 .envi-header:not(.envi-header-checkout) .envi-mobile-toggle { grid-column:4 !important; grid-row:1 !important; justify-self:end !important; display:inline-grid !important; }
  body.envi-ui-patch-v140 .envi-header-actions > .envi-language-switcher,
  body.envi-ui-patch-v140 .envi-header > .envi-language-switcher,
  body.envi-ui-patch-v140 .envi-header .envi-desktop-action:not(.envi-ui-header-search) { display:none !important; }

  /* Clean burger: seven groups, account, then collapsed language at the very bottom. */
  body.envi-ui-patch-v140 .envi-mobile-nav {
    top:100% !important;
    inset-inline:0 !important;
    width:100% !important;
    max-height:calc(100svh - 98px) !important;
    overflow:auto !important;
    padding:12px 14px 18px !important;
    background:rgba(255,253,251,.995) !important;
    border-bottom:1px solid var(--envi-ui-line) !important;
    box-shadow:0 18px 40px rgba(45,31,33,.10) !important;
  }
  body.envi-ui-patch-v140 .envi-mobile-nav[hidden] { display:none !important; }
  body.envi-ui-patch-v140 .envi-mobile-nav:not([hidden]) { display:block !important; }
  body.envi-ui-patch-v140 .envi-v14-mobile-menu { display:grid !important; gap:10px !important; }
  body.envi-ui-patch-v140 .envi-v14-mobile-categories {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:7px !important;
  }
  body.envi-ui-patch-v140 .envi-v14-mobile-category {
    min-width:0 !important;
    min-height:50px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:8px 10px !important;
    border:1px solid var(--envi-ui-line) !important;
    border-radius:12px !important;
    background:#fff !important;
    color:var(--envi-ui-ink) !important;
    font-size:13px !important;
    line-height:1.25 !important;
    font-weight:760 !important;
    text-align:center !important;
  }
  body.envi-ui-patch-v140 .envi-v14-mobile-category.is-current {
    border-color:rgba(43,146,146,.46) !important;
    background:var(--envi-ui-tiffany-soft) !important;
    color:var(--envi-ui-tiffany-dark) !important;
  }
  body.envi-ui-patch-v140 .envi-v14-mobile-account {
    min-height:44px !important;
    display:flex !important;
    align-items:center !important;
    gap:9px !important;
    padding:0 12px !important;
    border:1px solid var(--envi-ui-line) !important;
    border-radius:11px !important;
    background:var(--envi-ui-blush) !important;
    color:var(--envi-ui-ink) !important;
    font-size:13px !important;
    font-weight:760 !important;
  }
  body.envi-ui-patch-v140 .envi-v14-mobile-account svg { width:18px !important; height:18px !important; }

  body.envi-ui-patch-v140 .envi-v14-mobile-language {
    margin-top:1px !important;
    border:1px solid var(--envi-ui-line) !important;
    border-radius:11px !important;
    background:#fff !important;
  }
  body.envi-ui-patch-v140 .envi-v14-mobile-language > summary {
    min-height:42px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    padding:0 12px !important;
    list-style:none !important;
    color:var(--envi-ui-soft) !important;
    font-size:13px !important;
    font-weight:800 !important;
    letter-spacing:.05em !important;
    cursor:pointer !important;
  }
  body.envi-ui-patch-v140 .envi-v14-mobile-language > summary::-webkit-details-marker { display:none !important; }
  body.envi-ui-patch-v140 .envi-v14-mobile-language > summary svg { width:14px !important; height:14px !important; transition:transform .18s ease; }
  body.envi-ui-patch-v140 .envi-v14-mobile-language[open] > summary svg { transform:rotate(180deg); }
  body.envi-ui-patch-v140 .envi-v14-language-options {
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:6px !important;
    padding:8px !important;
    border-top:1px solid var(--envi-ui-line) !important;
  }
  body.envi-ui-patch-v140 .envi-v14-language-options a {
    min-height:38px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 5px !important;
    border:1px solid var(--envi-ui-line) !important;
    border-radius:9px !important;
    background:#fff !important;
    color:var(--envi-ui-soft) !important;
    font-size:12px !important;
    line-height:1 !important;
    font-weight:850 !important;
    letter-spacing:.05em !important;
  }
  body.envi-ui-patch-v140 .envi-v14-language-options a.is-current {
    border-color:rgba(43,146,146,.45) !important;
    background:var(--envi-ui-tiffany-soft) !important;
    color:var(--envi-ui-tiffany-dark) !important;
  }

  /* Product variation options stay on the page and wrap naturally into as many rows as needed. */
  body.envi-ui-patch-v140.single-product table.variations tbody { display:grid !important; gap:9px !important; }
  body.envi-ui-patch-v140.single-product table.variations tr {
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:6px !important;
    padding:0 0 9px !important;
    border-bottom:1px solid var(--envi-ui-line) !important;
  }
  body.envi-ui-patch-v140.single-product table.variations th.label,
  body.envi-ui-patch-v140.single-product table.variations td.value {
    width:100% !important;
    display:block !important;
    padding:0 !important;
  }
  body.envi-ui-patch-v140.single-product table.variations th.label label {
    display:block !important;
    padding:0 !important;
    margin:0 !important;
    font-size:13px !important;
    line-height:1.3 !important;
    font-weight:800 !important;
  }
  body.envi-ui-patch-v140.single-product .variable-items-wrapper,
  body.envi-ui-patch-v140.single-product ul.variable-items-wrapper {
    width:100% !important;
    max-width:100% !important;
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:stretch !important;
    gap:6px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
    white-space:normal !important;
  }
  body.envi-ui-patch-v140.single-product .variable-items-wrapper > li.variable-item,
  body.envi-ui-patch-v140.single-product li.variable-item.button-variable-item,
  body.envi-ui-patch-v140.single-product li.variable-item[data-attribute_name="attribute_pa_curve"],
  body.envi-ui-patch-v140.single-product li.variable-item[data-attribute_name="attribute_pa_curl"] {
    flex:0 0 auto !important;
    width:auto !important;
    max-width:100% !important;
    min-width:44px !important;
    height:auto !important;
    min-height:40px !important;
    margin:0 !important;
    padding:7px 10px !important;
    border:1px solid var(--envi-ui-line-strong) !important;
    border-radius:9px !important;
    background:#fff !important;
    color:var(--envi-ui-ink) !important;
    box-shadow:none !important;
    white-space:normal !important;
    overflow:visible !important;
  }
  body.envi-ui-patch-v140.single-product .variable-item .variable-item-contents,
  body.envi-ui-patch-v140.single-product .variable-item .variable-item-span,
  body.envi-ui-patch-v140.single-product .variable-item .variable-item-span-button,
  body.envi-ui-patch-v140.single-product .envi-ui-curve-text {
    max-width:100% !important;
    color:inherit !important;
    font-size:12.5px !important;
    line-height:1.2 !important;
    font-weight:780 !important;
    text-align:center !important;
    white-space:normal !important;
    overflow:visible !important;
    text-overflow:clip !important;
    word-break:normal !important;
  }
  body.envi-ui-patch-v140.single-product li.variable-item.selected,
  body.envi-ui-patch-v140.single-product li.variable-item[aria-checked="true"] {
    border-color:rgba(43,146,146,.62) !important;
    background:var(--envi-ui-tiffany-soft) !important;
    color:var(--envi-ui-tiffany-dark) !important;
  }

  /* Add to cart: full, friendly CTA; disabled state keeps its size instead of collapsing. */
  body.envi-ui-patch-v140.single-product .woocommerce-variation-add-to-cart.variations_button,
  body.envi-ui-patch-v140.single-product .single_variation_wrap .woocommerce-variation-add-to-cart,
  body.envi-ui-patch-v140.single-product form.cart:not(.variations_form) {
    width:100% !important;
    max-width:100% !important;
    display:grid !important;
    grid-template-columns:56px minmax(0,1fr) !important;
    gap:8px !important;
    align-items:stretch !important;
    margin:0 !important;
  }
  body.envi-ui-patch-v140.single-product .woocommerce-variation-add-to-cart .quantity,
  body.envi-ui-patch-v140.single-product form.cart .quantity {
    width:56px !important;
    min-width:56px !important;
    margin:0 !important;
  }
  body.envi-ui-patch-v140.single-product .woocommerce-variation-add-to-cart .quantity .qty,
  body.envi-ui-patch-v140.single-product form.cart .quantity .qty {
    width:56px !important;
    min-width:56px !important;
    height:50px !important;
    min-height:50px !important;
    margin:0 !important;
    padding:0 5px !important;
    border:1px solid var(--envi-ui-line-strong) !important;
    border-radius:11px !important;
    background:#fff !important;
    color:var(--envi-ui-ink) !important;
    box-shadow:none !important;
    font-size:15px !important;
  }
  body.envi-ui-patch-v140.single-product button.single_add_to_cart_button,
  body.envi-ui-patch-v140.single-product .single_add_to_cart_button.button.alt,
  body.envi-ui-patch-v140.single-product button.single_add_to_cart_button.disabled,
  body.envi-ui-patch-v140.single-product button.single_add_to_cart_button.wc-variation-selection-needed {
    position:relative !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:50px !important;
    min-height:50px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 16px !important;
    float:none !important;
    border:1px solid var(--envi-ui-tiffany-dark) !important;
    border-radius:11px !important;
    background:var(--envi-ui-tiffany-dark) !important;
    color:#fff !important;
    box-shadow:none !important;
    font-size:14px !important;
    line-height:1 !important;
    font-weight:800 !important;
    white-space:nowrap !important;
    opacity:1 !important;
  }
  body.envi-ui-patch-v140.single-product button.single_add_to_cart_button.disabled,
  body.envi-ui-patch-v140.single-product button.single_add_to_cart_button.wc-variation-selection-needed {
    border-color:#d4e3e1 !important;
    background:#e3efed !important;
    color:#71817f !important;
    cursor:not-allowed !important;
  }
}

/* Search submit is an icon inside the white field — never a black square. */
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-search-form {
  position:relative !important;
  display:block !important;
  width:min(860px,100%) !important;
  max-width:860px !important;
  margin:0 auto !important;
}
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-search-form label { display:block !important; width:100% !important; margin:0 !important; }
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel input[type="search"] {
  width:100% !important;
  height:50px !important;
  padding-inline:16px 58px !important;
  border:1px solid var(--envi-ui-line-strong) !important;
  border-radius:13px !important;
  background:#fff !important;
  color:var(--envi-ui-ink) !important;
  box-shadow:none !important;
  font-size:16px !important;
}
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-search-form button[type="submit"],
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-ui-search-submit {
  position:absolute !important;
  z-index:2 !important;
  top:50% !important;
  inset-inline-end:5px !important;
  transform:translateY(-50%) !important;
  width:42px !important;
  min-width:42px !important;
  height:42px !important;
  min-height:42px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:transparent !important;
  color:var(--envi-ui-tiffany-dark) !important;
  box-shadow:none !important;
}
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-search-form button[type="submit"]:hover,
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-ui-search-submit:hover {
  background:var(--envi-ui-tiffany-soft) !important;
  color:var(--envi-ui-tiffany-dark) !important;
}
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-search-form button[type="submit"] svg,
body.envi-ui-patch-v140 .envi-search-panel.envi-v14-search-panel .envi-ui-search-submit svg { width:21px !important; height:21px !important; }

/* =========================================================
   ENVI 1.5.0 — compact product purchase flow + readable cards
   ========================================================= */

/* Numeric decorative indexes are not part of the ENVI retail UI. */
body.envi-ui-patch-v150 .envi-product-index,
body.envi-ui-patch-v150 .envi-product-assurance > div > span { display:none !important; }

/* Catalog cards: the action must read like an action, not a footnote. */
body.envi-ui-patch-v150 .envi-card-action,
body.envi-ui-patch-v150 .woocommerce ul.products li.product .envi-card-action.button {
  min-height:48px !important;
  padding:0 14px !important;
  font-size:15px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
}

/* Compact service benefits + visual safe-payment strip. */
body.envi-ui-patch-v150.single-product .envi-product-assurance {
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:1px !important;
  margin:14px 0 0 !important;
  overflow:hidden !important;
  border:1px solid var(--envi-ui-line) !important;
  border-radius:13px !important;
  background:var(--envi-ui-line) !important;
}
body.envi-ui-patch-v150.single-product .envi-product-assurance > div {
  min-width:0 !important;
  display:block !important;
  padding:11px 10px !important;
  background:var(--envi-ui-paper) !important;
}
body.envi-ui-patch-v150.single-product .envi-product-assurance strong {
  display:block !important;
  margin:0 !important;
  font-size:13px !important;
  line-height:1.25 !important;
  font-weight:800 !important;
}
body.envi-ui-patch-v150.single-product .envi-product-assurance small {
  display:block !important;
  margin-top:3px !important;
  font-size:11px !important;
  line-height:1.35 !important;
}
body.envi-ui-patch-v150.single-product .envi-ui-safe-payment {
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  margin:8px 0 0 !important;
  padding:9px 11px !important;
  border:1px solid var(--envi-ui-line) !important;
  border-radius:11px !important;
  background:#fff !important;
}
body.envi-ui-patch-v150.single-product .envi-ui-safe-payment-title {
  min-width:0 !important;
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  color:var(--envi-ui-soft) !important;
}
body.envi-ui-patch-v150.single-product .envi-ui-safe-payment-title svg {
  width:19px !important;
  height:19px !important;
  flex:0 0 auto !important;
  color:var(--envi-ui-tiffany-dark) !important;
}
body.envi-ui-patch-v150.single-product .envi-ui-safe-payment-title strong {
  font-size:11.5px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  white-space:nowrap !important;
}
body.envi-ui-patch-v150.single-product .envi-ui-payment-strip {
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:7px !important;
  min-width:0 !important;
  color:#493f41 !important;
}
body.envi-ui-patch-v150.single-product .envi-ui-pay-card,
body.envi-ui-patch-v150.single-product .envi-ui-pay-word,
body.envi-ui-patch-v150.single-product .envi-ui-pay-master {
  height:27px !important;
  min-width:42px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 7px !important;
  border:1px solid var(--envi-ui-line) !important;
  border-radius:7px !important;
  background:#fff !important;
  font-size:10px !important;
  line-height:1 !important;
  font-weight:850 !important;
}
body.envi-ui-patch-v150.single-product .envi-ui-pay-card svg { width:28px !important; height:18px !important; }
body.envi-ui-patch-v150.single-product .envi-ui-pay-master { position:relative !important; min-width:44px !important; gap:0 !important; }
body.envi-ui-patch-v150.single-product .envi-ui-pay-master i { width:15px !important; height:15px !important; border-radius:50% !important; background:#7b565e !important; opacity:.82 !important; }
body.envi-ui-patch-v150.single-product .envi-ui-pay-master i + i { margin-inline-start:-5px !important; background:#c09b75 !important; }
body.envi-ui-patch-v150.single-product .envi-ui-pay-bit { color:#11879b !important; }
body.envi-ui-patch-v150.single-product .envi-ui-pay-grow { color:#315f59 !important; }

@media (max-width:1020px) {
  /* Header cart is deliberately a little stronger than the other utilities. */
  body.envi-ui-patch-v150 .envi-header:not(.envi-header-checkout) {
    grid-template-columns:52px 48px minmax(0,1fr) 48px !important;
  }
  body.envi-ui-patch-v150 .envi-header:not(.envi-header-checkout) .envi-cart-button {
    width:50px !important;
    min-width:50px !important;
    height:50px !important;
    min-height:50px !important;
  }
  body.envi-ui-patch-v150 .envi-header:not(.envi-header-checkout) .envi-cart-button svg {
    width:25px !important;
    height:25px !important;
    stroke-width:1.8 !important;
  }
  body.envi-ui-patch-v150 .envi-header:not(.envi-header-checkout) .envi-cart-count {
    min-width:19px !important;
    height:19px !important;
    top:-1px !important;
    font-size:10px !important;
  }

  /* Remove the vertical desert around variation rows. */
  body.envi-ui-patch-v150.single-product form.variations_form,
  body.envi-ui-patch-v150.single-product form.cart,
  body.envi-ui-patch-v150.single-product table.variations,
  body.envi-ui-patch-v150.single-product table.variations tbody,
  body.envi-ui-patch-v150.single-product table.variations tr,
  body.envi-ui-patch-v150.single-product table.variations th,
  body.envi-ui-patch-v150.single-product table.variations td,
  body.envi-ui-patch-v150.single-product .variable-items-wrapper,
  body.envi-ui-patch-v150.single-product .single_variation_wrap,
  body.envi-ui-patch-v150.single-product .single_variation {
    min-height:0 !important;
  }
  body.envi-ui-patch-v150.single-product form.variations_form { margin:0 0 8px !important; }
  body.envi-ui-patch-v150.single-product table.variations { margin:0 !important; border-spacing:0 !important; }
  body.envi-ui-patch-v150.single-product table.variations tbody { display:grid !important; gap:0 !important; }
  body.envi-ui-patch-v150.single-product table.variations tr {
    display:grid !important;
    grid-template-columns:58px minmax(0,1fr) !important;
    align-items:start !important;
    gap:7px !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:7px 0 !important;
    border-bottom:1px solid var(--envi-ui-line) !important;
  }
  body.envi-ui-patch-v150.single-product table.variations tr:first-child { padding-top:2px !important; }
  body.envi-ui-patch-v150.single-product table.variations th.label,
  body.envi-ui-patch-v150.single-product table.variations td.value {
    width:auto !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
  }
  body.envi-ui-patch-v150.single-product table.variations th.label label {
    display:block !important;
    margin:0 !important;
    padding:11px 0 0 !important;
    font-size:12.5px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    white-space:nowrap !important;
  }
  body.envi-ui-patch-v150.single-product .variable-items-wrapper,
  body.envi-ui-patch-v150.single-product ul.variable-items-wrapper {
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    gap:5px !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
  }
  body.envi-ui-patch-v150.single-product .variable-items-wrapper > li.variable-item,
  body.envi-ui-patch-v150.single-product li.variable-item.button-variable-item,
  body.envi-ui-patch-v150.single-product li.variable-item[data-attribute_name="attribute_pa_curve"],
  body.envi-ui-patch-v150.single-product li.variable-item[data-attribute_name="attribute_pa_curl"] {
    min-width:44px !important;
    min-height:40px !important;
    height:40px !important;
    margin:0 !important;
    padding:0 10px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:9px !important;
    white-space:nowrap !important;
  }
  body.envi-ui-patch-v150.single-product .variable-item .variable-item-contents,
  body.envi-ui-patch-v150.single-product .variable-item .variable-item-span,
  body.envi-ui-patch-v150.single-product .variable-item .variable-item-span-button,
  body.envi-ui-patch-v150.single-product .envi-ui-curve-text {
    font-size:12.5px !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }
  body.envi-ui-patch-v150.single-product .reset_variations {
    margin:5px 0 0 !important;
    font-size:10px !important;
    line-height:1.2 !important;
  }
  body.envi-ui-patch-v150.single-product .single_variation { margin:4px 0 !important; }

  /* The expiry plugin's notice was taking the first grid cell and shrinking the CTA. */
  body.envi-ui-patch-v150.single-product .envi-ui-buy-row {
    width:100% !important;
    display:grid !important;
    grid-template-columns:118px minmax(0,1fr) !important;
    gap:8px !important;
    align-items:stretch !important;
    margin:8px 0 0 !important;
  }
  body.envi-ui-patch-v150.single-product .envi-ui-buy-row > .woope-variable-notice[hidden],
  body.envi-ui-patch-v150.single-product .envi-ui-buy-row > .woope-variable-notice:empty { display:none !important; }
  body.envi-ui-patch-v150.single-product .envi-ui-buy-row > .envi-ui-buy-notice {
    grid-column:1 / -1 !important;
    margin:0 0 5px !important;
    padding:7px 9px !important;
    font-size:11px !important;
    line-height:1.35 !important;
  }
  body.envi-ui-patch-v150.single-product .quantity.envi-ui-qty-ready {
    width:118px !important;
    min-width:118px !important;
    height:52px !important;
    display:grid !important;
    grid-template-columns:36px 46px 36px !important;
    align-items:stretch !important;
    margin:0 !important;
    overflow:hidden !important;
    border:1px solid var(--envi-ui-line-strong) !important;
    border-radius:12px !important;
    background:#fff !important;
  }
  body.envi-ui-patch-v150.single-product .quantity.envi-ui-qty-ready .qty {
    width:46px !important;
    min-width:46px !important;
    height:50px !important;
    min-height:50px !important;
    padding:0 !important;
    border:0 !important;
    border-inline:1px solid var(--envi-ui-line) !important;
    border-radius:0 !important;
    background:#fff !important;
    box-shadow:none !important;
    font-size:15px !important;
    text-align:center !important;
    -moz-appearance:textfield !important;
  }
  body.envi-ui-patch-v150.single-product .quantity.envi-ui-qty-ready .qty::-webkit-outer-spin-button,
  body.envi-ui-patch-v150.single-product .quantity.envi-ui-qty-ready .qty::-webkit-inner-spin-button { -webkit-appearance:none !important; margin:0 !important; }
  body.envi-ui-patch-v150.single-product .envi-ui-qty-btn {
    width:36px !important;
    min-width:36px !important;
    height:50px !important;
    min-height:50px !important;
    display:grid !important;
    place-items:center !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:#fff !important;
    color:var(--envi-ui-ink) !important;
    box-shadow:none !important;
    font-size:22px !important;
    line-height:1 !important;
    font-weight:500 !important;
  }
  body.envi-ui-patch-v150.single-product .envi-ui-qty-btn:hover { background:var(--envi-ui-tiffany-soft) !important; color:var(--envi-ui-tiffany-dark) !important; }
  body.envi-ui-patch-v150.single-product .envi-ui-buy-row .single_add_to_cart_button {
    grid-column:2 !important;
    width:100% !important;
    min-width:0 !important;
    height:52px !important;
    min-height:52px !important;
    margin:0 !important;
    padding:0 16px !important;
    border-radius:12px !important;
    font-size:15px !important;
    line-height:1 !important;
    font-weight:850 !important;
    white-space:nowrap !important;
  }

  body.envi-ui-patch-v150.single-product .woocommerce-product-details__short-description {
    margin:11px 0 0 !important;
    padding:10px 0 0 !important;
    font-size:14px !important;
    line-height:1.55 !important;
  }
  body.envi-ui-patch-v150.single-product .envi-product-assurance { margin-top:10px !important; }
  body.envi-ui-patch-v150.single-product .envi-product-assurance > div { padding:8px 6px !important; text-align:center !important; }
  body.envi-ui-patch-v150.single-product .envi-product-assurance strong { font-size:11.5px !important; line-height:1.2 !important; }
  body.envi-ui-patch-v150.single-product .envi-product-assurance small { margin-top:2px !important; font-size:9.5px !important; line-height:1.25 !important; }
  body.envi-ui-patch-v150.single-product .envi-ui-safe-payment { padding:8px 9px !important; gap:8px !important; }
  body.envi-ui-patch-v150.single-product .envi-ui-safe-payment-title strong { font-size:10.5px !important; }
  body.envi-ui-patch-v150.single-product .envi-ui-payment-strip { gap:4px !important; }
  body.envi-ui-patch-v150.single-product .envi-ui-pay-card,
  body.envi-ui-patch-v150.single-product .envi-ui-pay-word,
  body.envi-ui-patch-v150.single-product .envi-ui-pay-master { min-width:36px !important; height:25px !important; padding:0 5px !important; font-size:9px !important; }
  body.envi-ui-patch-v150.single-product .envi-product-wholesale-link { margin-top:7px !important; }
}

@media (max-width:390px) {
  body.envi-ui-patch-v150.single-product table.variations tr { grid-template-columns:52px minmax(0,1fr) !important; gap:5px !important; }
  body.envi-ui-patch-v150.single-product .variable-items-wrapper > li.variable-item,
  body.envi-ui-patch-v150.single-product li.variable-item.button-variable-item { min-width:40px !important; padding-inline:8px !important; }
  body.envi-ui-patch-v150.single-product .envi-ui-buy-row { grid-template-columns:108px minmax(0,1fr) !important; gap:7px !important; }
  body.envi-ui-patch-v150.single-product .quantity.envi-ui-qty-ready { width:108px !important; min-width:108px !important; grid-template-columns:32px 44px 32px !important; }
  body.envi-ui-patch-v150.single-product .quantity.envi-ui-qty-ready .qty { width:44px !important; min-width:44px !important; }
  body.envi-ui-patch-v150.single-product .envi-ui-qty-btn { width:32px !important; min-width:32px !important; }
  body.envi-ui-patch-v150.single-product .envi-ui-safe-payment-title strong { display:none !important; }
}

/* Redundant instruction from the older theme is intentionally removed in v1.5. */
body.envi-ui-patch-v150.single-product .envi-selection-note { display:none !important; }
body.envi-ui-patch-v150.single-product .quantity.envi-ui-qty-ready { direction:ltr !important; }
