/* Visual layer only: all forms, events, prices and commerce markup remain native. */
body.htw-slot-search-drawer-current .htw-site-header .htw-site-header__panel.htw-site-header__search,
body.htw-slot-cart-drawer-current .htw-site-header .htw-site-header__panel.htw-site-header__mini-cart {
  --ce-surface-ink: #151a22;
  --ce-surface-line: #d5d5d5;
  --ce-surface-muted: #676763;
  --ce-surface-ground: #e7e8e5;
  color: var(--ce-surface-ink);
  font-family: "PP Neue Montreal", Arial, sans-serif;
}
body.htw-slot-search-drawer-current .htw-site-header__search .storefront-drawer-heading,
body.htw-slot-cart-drawer-current .htw-site-header__mini-cart .storefront-drawer-heading {
  flex: 0 0 auto;
  border-color: var(--ce-surface-line);
}
body.htw-slot-search-drawer-current .htw-site-header__search .storefront-drawer-heading h2,
body.htw-slot-cart-drawer-current .htw-site-header__mini-cart .storefront-drawer-heading h2 {
  color: var(--ce-surface-ink);
  font: 400 24px/1.2 "PP Neue Montreal", Arial, sans-serif;
  letter-spacing: 0;
}
body.htw-slot-search-drawer-current .htw-site-header__search .searchform .flex-row {
  border-color: var(--ce-surface-ink);
  border-radius: 0;
}
body.htw-slot-search-drawer-current .htw-site-header__search .searchform input.search-field {
  color: var(--ce-surface-ink);
  font: 400 16px/1.4 "PP Neue Montreal", Arial, sans-serif;
}
body.htw-slot-search-drawer-current .htw-site-header__search .autocomplete-suggestion {
  color: var(--ce-surface-ink);
  border-color: var(--ce-surface-line);
  overflow-wrap: anywhere;
}
body.htw-slot-search-drawer-current .htw-site-header__search .autocomplete-suggestion img {
  object-fit: cover;
  background: var(--ce-surface-ground);
}

/* Flatsome's mini-cart fragment has a list and an .ux-mini-cart-footer sibling.
   Apply flex only after the native header's script has taken control. */
body.htw-slot-cart-drawer-current .htw-site-header.is-ready .htw-site-header__panel.htw-site-header__mini-cart:not([hidden]) {
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
  padding-bottom: 0;
}
body.htw-slot-cart-drawer-current .htw-site-header__mini-cart > .widget_shopping_cart_content {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
  min-width: 0;
  overflow: hidden;
}
body.htw-slot-cart-drawer-current .htw-site-header__mini-cart .widget_shopping_cart_content > ul.product_list_widget {
  flex: 1 1 auto;
  min-height: 0;
  min-width: 0;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-right: 10px;
}
body.htw-slot-cart-drawer-current .htw-site-header__mini-cart .widget_shopping_cart_content > .ux-mini-cart-footer {
  flex: 0 0 auto;
  max-height: 50dvh;
  max-width: 100%;
  margin: 0;
  padding: 16px 0 24px;
  overflow-y: auto;
  border-top: 1px solid var(--ce-surface-line);
  background: #fff;
}
body.htw-slot-cart-drawer-current .htw-site-header__mini-cart .widget_shopping_cart_content > .ux-mini-cart-empty {
  min-height: 0;
  overflow-y: auto;
}
body.htw-slot-cart-drawer-current .htw-site-header__mini-cart ul.product_list_widget li {
  min-width: 0;
  overflow-wrap: anywhere;
  word-break: normal;
}
body.htw-slot-cart-drawer-current .htw-site-header__mini-cart ul.product_list_widget li a:not(.remove),
body.htw-slot-cart-drawer-current .htw-site-header__mini-cart ul.product_list_widget li .variation {
  white-space: normal;
  overflow-wrap: anywhere;
}
body.htw-slot-cart-drawer-current .htw-site-header__mini-cart .woocommerce-mini-cart-item .ux-mini-cart-qty {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin-right: 0;
  flex-wrap: wrap;
}
body.htw-slot-cart-drawer-current .htw-site-header__mini-cart .ux-mini-cart-qty .product-subtotal {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
}
body.htw-slot-cart-drawer-current .htw-site-header__mini-cart .woocommerce-mini-cart__buttons a.button,
body.htw-slot-cart-drawer-current .htw-site-header__mini-cart .return-to-shop .button {
  font-family: "PP Neue Montreal", Arial, sans-serif;
  letter-spacing: 0;
  white-space: normal;
}

/* Reuse the native Flatsome popup and product form, scoped to its quick view. */
body.htw-slot-quick-view-current .product-quick-view-container {
  color: #151a22;
  font-family: "PP Neue Montreal", Arial, sans-serif;
}
body.htw-slot-quick-view-current .product-quick-view-container h1 {
  color: #151a22;
  font-family: "ABC Gaisyr", Georgia, "Times New Roman", serif;
  font-weight: 300;
  letter-spacing: normal;
  overflow-wrap: anywhere;
}
body.htw-slot-quick-view-current .product-quick-view-container .product-gallery {
  background: #e7e8e5;
}
body.htw-slot-quick-view-current .product-quick-view-container .product-info,
body.htw-slot-quick-view-current .product-quick-view-container form.cart {
  min-width: 0;
}
body.htw-slot-quick-view-current .product-quick-view-container .price ins,
body.htw-slot-quick-view-current .product-quick-view-container .price ins .amount {
  color: #a12020;
}
body.htw-slot-quick-view-current .product-quick-view-container form.cart .single_add_to_cart_button {
  max-width: 100%;
  font-family: "PP Neue Montreal", Arial, sans-serif;
  white-space: normal;
}
body.htw-slot-quick-view-current .mfp-content:has(.product-quick-view-container) .mfp-close {
  mix-blend-mode: normal;
  color: #151a22;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 0 0 1px #d5d5d5;
  opacity: 1;
}
@media (max-width: 767px) {
  body.htw-slot-search-drawer-current .htw-site-header__search .storefront-drawer-heading h2,
  body.htw-slot-cart-drawer-current .htw-site-header__mini-cart .storefront-drawer-heading h2 { font-size: 21px; }
  body.htw-slot-cart-drawer-current .htw-site-header__mini-cart .widget_shopping_cart_content > .ux-mini-cart-footer { padding-bottom: max(20px, env(safe-area-inset-bottom)); }
  body.htw-slot-cart-drawer-current .htw-site-header__mini-cart ul.product_list_widget li { padding-left: 96px; }
  body.htw-slot-cart-drawer-current .htw-site-header__mini-cart ul.product_list_widget li img { width: 80px; height: 92px; }
  body.htw-slot-quick-view-current .product-quick-view-container .product-lightbox-inner { padding: 24px !important; }
}
@media (prefers-reduced-motion: reduce) {
  body.htw-slot-search-drawer-current .htw-site-header__search,
  body.htw-slot-cart-drawer-current .htw-site-header__mini-cart { scroll-behavior: auto; }
}
