/* Shared Flatsome storefront surfaces. Checkout and cart do not load this file. */
body.htw-source-site-shell #top-bar { background:#4d0c13!important; color:#fff!important; }
body.htw-source-site-shell #top-bar .html_topbar_left { display:block; width:100%; min-width:0; }
body.htw-source-site-shell #top-bar .htw-announcement-rotation { position:relative; display:block; box-sizing:border-box; width:100%; height:30px; color:#fff; font:600 12px/30px Arial,sans-serif; letter-spacing:.03em; text-align:center; white-space:nowrap; }
body.htw-source-site-shell #top-bar .htw-announcement-rotation span { position:absolute; inset:0; display:block; width:100%; opacity:0; animation-duration:8s; animation-timing-function:steps(1,end); animation-iteration-count:infinite; }
body.htw-source-site-shell #top-bar .htw-announcement-rotation span:first-child { opacity:1; animation-name:htw-westman-announcement-first; }
body.htw-source-site-shell #top-bar .htw-announcement-rotation span:nth-child(2) { animation-name:htw-westman-announcement-second; }
@keyframes htw-westman-announcement-first { 0%,49.999% { opacity:1; } 50%,100% { opacity:0; } }
@keyframes htw-westman-announcement-second { 0%,49.999% { opacity:0; } 50%,100% { opacity:1; } }
@media (max-width:849px) { body.htw-source-site-shell #top-bar .flex-col.show-for-medium { display:flex!important; flex:1 1 100%; width:100%; max-width:100%; justify-content:center; } body.htw-source-site-shell #top-bar .mobile-nav, body.htw-source-site-shell #top-bar .mobile-nav>li { width:100%; min-width:0; margin:0; padding:0; } }
@media (prefers-reduced-motion:reduce) { body.htw-source-site-shell #top-bar .htw-announcement-rotation span { animation:none!important; } body.htw-source-site-shell #top-bar .htw-announcement-rotation span:first-child { opacity:1; } body.htw-source-site-shell #top-bar .htw-announcement-rotation span:nth-child(2) { opacity:0; } }

/* Native WooCommerce sale badges and effective sale prices. */
body.htw-source-site-shell.woocommerce-page .badge-inner.on-sale { background:#4d0c13!important; color:#fff!important; }
body.htw-source-site-shell.woocommerce-page .price ins, body.htw-source-site-shell.woocommerce-page .price ins .amount { color:#9e1c2b!important; text-decoration:none; }
body.htw-source-site-shell.woocommerce-page .price del, body.htw-source-site-shell.woocommerce-page .price del .amount { color:#858080!important; }
body.htw-source-site-shell.single-product .single_add_to_cart_button { background:#4d0c13!important; border-color:#4d0c13!important; color:#fff!important; }
body.htw-source-site-shell.single-product .single_add_to_cart_button:hover { background:#6a1823!important; border-color:#6a1823!important; }
body.htw-source-site-shell.single-product .product-page-title { background:#4d0c13!important; }
body.htw-source-site-shell.single-product .product-info .ux-buy-now-button,
body.htw-source-site-shell .mfp-wrap:not(.off-canvas) .product-info .single_add_to_cart_button,
body.htw-source-site-shell .mfp-wrap.off-canvas .woocommerce-mini-cart__buttons .button { background:#4d0c13!important; border-color:#4d0c13!important; color:#fff!important; }
body.htw-source-site-shell.single-product .product-info .ux-buy-now-button:hover,
body.htw-source-site-shell .mfp-wrap:not(.off-canvas) .product-info .single_add_to_cart_button:hover,
body.htw-source-site-shell .mfp-wrap.off-canvas .woocommerce-mini-cart__buttons .button:hover { background:#6a1823!important; border-color:#6a1823!important; color:#fff!important; }
body.htw-source-site-shell.woocommerce-page .page-number.current { background:#4d0c13!important; border-color:#4d0c13!important; color:#fff!important; }
body.htw-source-site-shell.woocommerce-page a.page-number:hover { background:#4d0c13!important; border-color:#4d0c13!important; color:#fff!important; }

/* Flatsome's existing mobile filter button opens the real sidebar on all archive widths. */
@media (min-width:850px) {
  body.htw-source-site-shell.woocommerce.archive .category-filter-row.show-for-medium { display:block!important; margin-top:10px; }
  body.htw-source-site-shell.woocommerce.archive .category-page-row>.col.large-3 { display:none!important; }
  body.htw-source-site-shell.woocommerce.archive .category-page-row>.col.large-9 { flex-basis:100%!important; max-width:100%!important; }
  body.htw-source-site-shell.single-product .product-gallery .row.row-small { margin-left:0; margin-right:0; }
  body.htw-source-site-shell.single-product .product-gallery .row.row-small>.col { padding-left:4px; padding-right:4px; }
}
body.htw-source-site-shell.woocommerce.archive .filter-button { color:#4d0c13!important; }
body.htw-source-site-shell.woocommerce-shop:not(.search) .htw-shop-sidebar-column { display:none!important; }
body.htw-source-site-shell.woocommerce-shop:not(.search) .htw-shop-products-column { flex-basis:100%!important; max-width:100%!important; }

/* Gift-set product media use a consistent 4:5 frame and aligned copy area. */
body.htw-source-site-shell.term-shop-gift-sets .products .product-small .col-inner { height:100%; }
body.htw-source-site-shell.term-shop-gift-sets .products .product-small .box { height:100%; display:flex; flex-direction:column; }
body.htw-source-site-shell.term-shop-gift-sets .products .product-small .box-image { aspect-ratio:4/5; height:auto!important; overflow:hidden; }
body.htw-source-site-shell.term-shop-gift-sets .products .product-small .box-image .image-fade_in_back { height:100%; }
body.htw-source-site-shell.term-shop-gift-sets .products .product-small .box-image img { display:block; width:100%; height:100%!important; object-fit:contain; }
body.htw-source-site-shell.term-shop-gift-sets .products .product-small .box-text { min-height:90px; margin-top:auto; display:flex; flex-direction:column; justify-content:flex-end; }
@media (max-width:849px) { body.htw-source-site-shell.term-shop-gift-sets .products .product-small .box-text { min-height:130px; } }

/* Keep image frames and product details level across other collection rows. */
body.htw-source-site-shell.tax-product_cat:not(.term-shop-gift-sets) .products .product-small .col-inner { height:100%; }
body.htw-source-site-shell.tax-product_cat:not(.term-shop-gift-sets) .products .product-small .box { height:100%; display:flex; flex-direction:column; }
body.htw-source-site-shell.tax-product_cat:not(.term-shop-gift-sets) .products .product-small .box-image { aspect-ratio:4/5; height:auto!important; overflow:hidden; }
body.htw-source-site-shell.tax-product_cat:not(.term-shop-gift-sets) .products .product-small .box-image .image-fade_in_back { height:100%; }
body.htw-source-site-shell.tax-product_cat:not(.term-shop-gift-sets) .products .product-small .box-image img { display:block; width:100%; height:100%!important; object-fit:contain; }
body.htw-source-site-shell.tax-product_cat:not(.term-shop-gift-sets) .products .product-small .box-text { min-height:90px; margin-top:auto; display:flex; flex-direction:column; justify-content:flex-end; }
@media (max-width:849px) { body.htw-source-site-shell.tax-product_cat:not(.term-shop-gift-sets) .products .product-small .box-text { min-height:130px; } }

/* Existing footer widgets become accessible accordions below the desktop breakpoint. */
body.htw-native-site-footer #footer .htw-footer-accordion-toggle { display:block; width:100%; padding:0; border:0; background:transparent; color:#000; font:600 15px/1.4 Arial,sans-serif; text-align:left; cursor:pointer; }
body.htw-native-site-footer #footer .htw-footer-accordion-toggle:focus-visible { outline:2px solid #4d0c13; outline-offset:3px; }
@media (max-width:849px) {
  body.htw-native-site-footer #footer #custom_html-3, body.htw-native-site-footer #footer #custom_html-4, body.htw-native-site-footer #footer #custom_html-5 { border-bottom:1px solid #e5deda; padding-bottom:0; }
  body.htw-native-site-footer #footer .htw-footer-accordion-toggle { position:relative; padding:13px 28px 13px 0; }
  body.htw-native-site-footer #footer .htw-footer-accordion-toggle:after { content:'+'; position:absolute; right:0; top:10px; font:400 22px/1 Arial,sans-serif; }
  body.htw-native-site-footer #footer .htw-footer-accordion-toggle[aria-expanded="true"]:after { content:'−'; }
  body.htw-native-site-footer #footer .htw-footer-accordion-panel[hidden] { display:none!important; }
  body.htw-native-site-footer #footer .htw-footer-accordion-panel { padding:0 0 12px; }
}
@media (min-width:850px) { body.htw-native-site-footer #footer .htw-footer-accordion-panel { display:block!important; } }

/* Remove the placeholder social accounts from Flatsome's mobile menu only. */
body.htw-source-site-shell #main-menu .social-icons.follow-icons { display:none!important; }

@media (max-width:400px) {
  body.htw-source-site-shell.single-product .woocommerce-variation-add-to-cart { display:flex; flex-wrap:nowrap; align-items:center; gap:7px; }
  body.htw-source-site-shell.single-product .woocommerce-variation-add-to-cart .ux-quantity { flex:0 0 auto; margin:0; }
  body.htw-source-site-shell.single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button { flex:1 1 auto; min-width:0; height:40px; min-height:40px; margin:0; padding:0 5px; white-space:nowrap; font-size:12px; line-height:40px; }
}
@media (max-width:340px) {
  body.htw-source-site-shell.single-product .woocommerce-variation-add-to-cart { gap:3px; }
  body.htw-source-site-shell.single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button { font-size:11px; }
}
