/* Existing target components retain their own markup, lifecycle and data. */
.htw-site-header__search,
.htw-site-header__mini-cart { background:#fff; color:#181818; font-family:Inter,Arial,sans-serif; border-color:#e6e3df; }
.htw-site-header__search { padding:22px clamp(16px,3.5vw,50px); }
.htw-site-header__search form { max-width:1000px; margin:0 auto; }
.htw-site-header__search input[type="search"] { border:1px solid #c8c4c0; background:#fff; color:#181818; border-radius:4px; min-height:48px; box-shadow:none; }
.htw-site-header__search button[type="submit"] { min-height:48px; background:#181818; color:#fff; border:1px solid #181818; }
.htw-site-header__search input:focus-visible,
.htw-site-header__search button:focus-visible,
.htw-site-header__mini-cart a:focus-visible,
.htw-site-header__mini-cart button:focus-visible,
.single-product .product-info :focus-visible,
.product-quick-view-container :focus-visible { outline:2px solid #be8f39; outline-offset:2px; }
.htw-site-header__mini-cart { width:min(420px,calc(100vw - 24px)); max-height:calc(100dvh - 100px); overflow-y:auto; overscroll-behavior:contain; padding:24px; box-sizing:border-box; }
.htw-site-header__mini-cart .woocommerce-mini-cart { margin:0; padding:0; }
.htw-site-header__mini-cart .woocommerce-mini-cart-item { position:relative; min-height:82px; padding-bottom:18px; margin:0 0 18px; border-bottom:1px solid #e6e3df; overflow-wrap:anywhere; }
.htw-site-header__mini-cart .woocommerce-mini-cart-item img { width:72px; height:72px; object-fit:cover; border-radius:4px; }
.htw-site-header__mini-cart .woocommerce-mini-cart-item .quantity,
.htw-site-header__mini-cart .woocommerce-mini-cart-item dl { line-height:1.5; }
.htw-site-header__mini-cart .woocommerce-mini-cart__total { border-top:1px solid #dedbd7; padding-top:16px; }
.htw-site-header__mini-cart .woocommerce-mini-cart__buttons a,
.htw-site-header__mini-cart > a { display:inline-block; border:1px solid #181818; background:#181818; color:#fff; text-align:center; padding:12px 18px; line-height:1.25; text-decoration:none; border-radius:3px; }
.htw-site-header__mini-cart .woocommerce-mini-cart__buttons a:hover,
.htw-site-header__mini-cart > a:hover { background:#fff; color:#181818; }
/* Flatsome's actual product and lightbox wrappers; no controls are hidden or moved. */
.single-product .product-info,
.product-quick-view-container .product-info { color:#181818; font-family:Inter,Arial,sans-serif; }
.single-product .product-info .product-title,
.product-quick-view-container .product-info h1 { color:#181818; font-weight:500; line-height:1.15; }
.single-product .product-info .price,
.product-quick-view-container .product-info .price { color:#181818; font-weight:700; }
.single-product .product-info .price del,
.product-quick-view-container .product-info .price del { opacity:.65; font-weight:400; }
.single-product .product-info .single_add_to_cart_button,
.product-quick-view-container .single_add_to_cart_button { background:#181818; color:#fff; border:1px solid #181818; border-radius:3px; min-height:48px; padding:12px 24px; line-height:1.3; }
.single-product .product-info .single_add_to_cart_button:hover,
.product-quick-view-container .single_add_to_cart_button:hover { background:#fff; color:#181818; }
.single-product .product-info select,
.product-quick-view-container select { border:1px solid #c8c4c0; border-radius:3px; color:#181818; background-color:#fff; min-height:44px; }
.single-product .product-gallery img,
.product-quick-view-container .product-gallery img { border-radius:6px; }
.product-quick-view-container { background:#fff; color:#181818; }
.product-quick-view-container .product-info { overflow-wrap:anywhere; }
@media (max-width:767px) {
 .htw-site-header__search { padding:16px; }
 .htw-site-header__mini-cart { right:12px; max-height:calc(100dvh - 80px); padding:16px; }
 .product-quick-view-container .product-lightbox-inner { padding:20px !important; }
 .single-product .product-info .product-title,.product-quick-view-container .product-info h1 { line-height:1.2; }
}

/* The active provider supplies its own calculated badge; suppress the theme duplicate only for such cards. */
.product-small > .col-inner:has(> .lattafa-card .lattafa-card__badge) > .badge-container { display:none; }

/* The shared provider owns its frame; leave source-like rounding on media only. */
.lattafa-card.product-small.box {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
}

/* Keep the native sticky purchase bar below the actual sticky site header. */
.single-product .sf-pdp__sticky-buy { top:var(--lattafa-sticky-header-bottom, 114px); }
@media (max-width:1100px) { .single-product .sf-pdp__sticky-buy { top:var(--lattafa-sticky-header-bottom, 90px); } }
/* Restyle only an actual sale badge on the native product gallery; preserve its content and conditions. */
.single-product .sf-pdp__gallery .badge-container .badge-inner.on-sale {
 background-color:#161616!important; color:#fff!important; border:0!important;
 border-radius:2px!important; padding:4px 8px!important;
 font-family:Inter,Arial,sans-serif!important; font-size:11px!important; font-weight:700!important;
 line-height:1.3!important; letter-spacing:normal!important;
}
.single-product .sf-pdp__gallery .badge-container .badge-inner.on-sale .onsale { color:inherit!important; font:inherit!important; }
