/**
 * Harvest Seeds Hub — Site-Wide Brand Theme
 * Brand Book 2025 — Full Website Override
 *
 * Brand Colors:
 *   Primary:   #0A6D1F  (Forest Green)
 *   Dark:      #085518  (Deep Forest)
 *   Deep:      #205a39  (Dark Canopy)
 *   Gold:      #ECC003  (Harvest Gold)
 *   Lime:      #A2C510  (Fresh Lime)
 *   Brown:     #6D412A  (Earth Brown)
 *   White:     #FFFFFF
 *   Neutral:   #DBDBDB
 *
 * Typography:
 *   Headings: Montserrat Bold/ExtraBold (uppercase for display)
 *   Body:     Poppins Regular/Medium
 */

/* ══════════════════════════════════════════════════════════
   1. GOOGLE FONTS
══════════════════════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,500;0,600;0,700;0,800;0,900;1,700&family=Poppins:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap');

/* ══════════════════════════════════════════════════════════
   2. DESIGN TOKENS
══════════════════════════════════════════════════════════ */
:root {
  /* Brand palette */
  --hsh-primary:       #0A6D1F;
  --hsh-primary-dark:  #085518;
  --hsh-primary-deep:  #205a39;
  --hsh-primary-light: #e6f5ea;
  --hsh-primary-mid:   #d0ecda;

  --hsh-gold:          #ECC003;
  --hsh-gold-dark:     #c9a502;
  --hsh-gold-hover:    #f5cc0a;
  --hsh-gold-light:    #fdf8dc;
  --hsh-gold-surface:  #fffae6;

  --hsh-lime:          #A2C510;
  --hsh-lime-light:    #f0f7cc;

  --hsh-brown:         #6D412A;
  --hsh-brown-light:   #f7ede6;

  --hsh-white:         #FFFFFF;
  --hsh-neutral:       #DBDBDB;
  --hsh-neutral-light: #f5f5f5;

  /* Semantic */
  --hsh-text:          #1a2e1e;
  --hsh-text-muted:    #5a6b5e;
  --hsh-text-light:    #8a9e8e;
  --hsh-border:        #d6e8da;
  --hsh-surface:       #f7faf7;

  /* Typography */
  --hsh-font-head:     'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --hsh-font-body:     'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  /* Radii */
  --hsh-radius-xs:     4px;
  --hsh-radius-sm:     8px;
  --hsh-radius:        12px;
  --hsh-radius-lg:     20px;
  --hsh-radius-pill:   999px;

  /* Shadows */
  --hsh-shadow-xs:     0 1px 4px rgba(10, 109, 31, 0.08);
  --hsh-shadow-sm:     0 3px 10px rgba(10, 109, 31, 0.10);
  --hsh-shadow:        0 6px 24px rgba(10, 109, 31, 0.13);
  --hsh-shadow-lg:     0 12px 40px rgba(10, 109, 31, 0.16);
  --hsh-shadow-gold:   0 6px 20px rgba(236, 192, 3, 0.28);

  /* Motion */
  --hsh-ease:          cubic-bezier(0.4, 0, 0.2, 1);
  --hsh-ease-spring:   cubic-bezier(0.34, 1.56, 0.64, 1);
  --hsh-dur:           0.22s;
  --hsh-dur-lg:        0.38s;
}

/* ══════════════════════════════════════════════════════════
   3. GLOBAL BASE — TYPOGRAPHY
══════════════════════════════════════════════════════════ */
body,
.ast-single-post .entry-content,
.woocommerce-page,
.woocommerce {
  font-family: var(--hsh-font-body) !important;
  color: var(--hsh-text) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* All headings — Montserrat */
h1, h2, h3, h4, h5, h6,
.entry-title,
.page-title,
.woocommerce-loop-product__title,
.product_title,
.ast-blog-single-post-title,
.site-title {
  font-family: var(--hsh-font-head) !important;
  color: var(--hsh-text) !important;
  letter-spacing: -0.02em;
}

/* Large display headings get uppercase treatment */
h1,
.ast-page-title,
.entry-title,
.page-title,
.product_title {
  font-weight: 800 !important;
}

h2 { font-weight: 700 !important; }
h3 { font-weight: 700 !important; }
h4 { font-weight: 600 !important; }

p, li, td, th, label, input, select, textarea, button {
  font-family: var(--hsh-font-body) !important;
}

a {
  color: var(--hsh-primary) !important;
  transition: color var(--hsh-dur) var(--hsh-ease) !important;
}

a:hover {
  color: var(--hsh-primary-dark) !important;
}

/* ══════════════════════════════════════════════════════════
   4. SITE HEADER & TOP BAR (State-of-the-Art Overhaul)
══════════════════════════════════════════════════════════ */

/* Top bar: Harvest Gold (#ECC003) brand framing */
.ast-above-header,
#ast-above-header,
.site-above-header-wrap,
.ast-above-header-wrap,
.ast-above-header-bar {
  background: var(--hsh-gold) !important;
  background-color: var(--hsh-gold) !important;
  border-bottom: none !important;
  min-height: 40px !important;
}

.ast-above-header .ast-builder-grid-row,
.site-above-header-wrap .ast-builder-grid-row {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  min-height: 40px !important;
  box-sizing: border-box !important;
}

.ast-above-header p,
.ast-above-header span,
.ast-above-header a,
.site-above-header-wrap *,
.ast-above-header-bar * {
  font-family: var(--hsh-font-body) !important;
  font-weight: 600 !important;
  font-size: 0.85rem !important;
  color: #ffffff !important;
  letter-spacing: 0.01em;
  margin: 0 !important;
}

.ast-above-header a:hover,
.site-above-header-wrap a:hover {
  color: #f3f4f6 !important;
}

.ast-above-header-bar .ast-builder-social-element,
.ast-above-header .ast-builder-social-element,
.site-above-header-wrap .ast-builder-social-element {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  transition: transform 0.2s ease !important;
  margin-left: 10px !important;
}

.ast-above-header-bar .ast-builder-social-element svg,
.ast-above-header .ast-builder-social-element svg,
.site-above-header-wrap .ast-builder-social-element svg {
  fill: #ffffff !important;
  color: #ffffff !important;
  width: 18px !important;
  height: 18px !important;
}

.ast-above-header-bar .ast-builder-social-element:hover,
.ast-above-header .ast-builder-social-element:hover {
  transform: scale(1.15) !important;
}

/* Main header background: 100% Full Edge-to-Edge */
.site-header,
#masthead,
.main-header-bar,
.main-header-bar-wrap,
.site-primary-header-wrap,
.ast-primary-header-bar,
.ast-above-header-bar,
.ast-above-header-wrap,
.site-above-header-wrap {
  background-color: var(--hsh-primary) !important;
  border-bottom: none !important;
  box-shadow: 0 4px 20px rgba(10, 109, 31, 0.22) !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

#masthead,
.site-header {
  position: relative !important;
  z-index: 9999 !important;
}

/* Inner header layout container: Single boundary, zero double-padding */
.site-primary-header-wrap.ast-container,
.site-above-header-wrap.ast-container {
  max-width: 100% !important;
  width: 100% !important;
  padding-left: 18px !important;
  padding-right: 18px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
  background: transparent !important;
  overflow: visible !important;
}

/* Row inside container: 100% width, 0 padding, no negative margins, flexbox */
.site-primary-header-wrap .ast-builder-grid-row.ast-grid-center-col-layout,
.site-primary-header-wrap .ast-builder-grid-row,
.site-above-header-wrap .ast-builder-grid-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  flex-wrap: nowrap !important;
  overflow: visible !important;
}

.site-header-primary-section-left {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex: 0 0 auto !important;
  flex-shrink: 0 !important;
  margin-right: 12px !important;
}

.site-header-primary-section-center {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
  overflow: visible !important;
}

.site-header-primary-section-right {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex: 0 0 auto !important;
  flex-shrink: 0 !important;
  gap: 12px !important;
  margin-left: auto !important;
  margin-right: 0 !important;
  padding-right: 8px !important;
  white-space: nowrap !important;
  position: relative !important;
  z-index: 10 !important;
}

/* Hide duplicate account icon from desktop right section (Account is already in main menu) */
.site-header-primary-section-right .ast-header-account {
  display: none !important;
}

/* Logo */
.site-branding .custom-logo-link img,
.site-branding .site-logo-img img {
  max-height: 52px !important;
  width: auto !important;
  transition: transform var(--hsh-dur) var(--hsh-ease) !important;
}


.site-branding .custom-logo-link:hover img {
  transform: scale(1.03) !important;
}

/* ══════════════════════════════════════════════════════════
   5. PRIMARY NAVIGATION — Desktop Web Menu (Clean, Modern, Non-Pills)
══════════════════════════════════════════════════════════ */

/* ── Hide mobile pill scroll bar on Desktop (Web) ── */
@media (min-width: 922px) {
  #hsh-mobile-scroll-nav,
  .hsh-nav-dropdown {
    display: none !important;
  }
}

/* ── Hide Contact and About from Main Navigation ── */
.main-header-menu li[id*="8362"],
.main-header-menu li[id*="8363"],
.main-header-menu li.menu-item-8362,
.main-header-menu li.menu-item-8363,
.ast-nav-menu li.menu-item-8362,
.ast-nav-menu li.menu-item-8363,
.main-header-menu a[href*="/contact/"],
.main-header-menu a[href*="/about/"],
.ast-nav-menu a[href*="/contact/"],
.ast-nav-menu a[href*="/about/"],
.main-navigation li:has(> a[href*="/contact/"]),
.main-navigation li:has(> a[href*="/about/"]),
#ast-mobile-site-navigation li:has(> a[href*="/contact/"]),
#ast-mobile-site-navigation li:has(> a[href*="/about/"]) {
  display: none !important;
}

/* ── Desktop Web Header Menu (Single Row, Clean Spacing) ── */
.ast-primary-header-bar .main-header-menu,
.main-navigation .ast-nav-menu,
#ast-desktop-nav-menu,
.ast-nav-menu {
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  gap: 2px !important;
  padding: 0 !important;
}

/* Web-style clean navigation links */
.main-header-menu > li > a,
.ast-nav-menu > li > a {
  font-family: var(--hsh-font-body) !important;
  font-weight: 600 !important;
  color: rgba(255, 255, 255, 0.92) !important;
  text-decoration: none !important;
  transition: all 0.18s ease !important;
  border-radius: 6px !important;
  border: none !important;
  background: transparent !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 3px !important;
  padding: 6px 7px !important;
  font-size: 0.79rem !important;
}

@media (min-width: 922px) and (max-width: 1350px) {
  .main-header-menu > li > a,
  .ast-nav-menu > li > a {
    font-size: 0.72rem !important;
    padding: 5px 3.5px !important;
    gap: 2px !important;
    letter-spacing: normal !important;
  }
  .main-header-menu > li.menu-item-has-children > a .ast-icon {
    margin-left: 1px !important;
  }
}

@media (min-width: 1351px) and (max-width: 1550px) {
  .main-header-menu > li > a,
  .ast-nav-menu > li > a {
    font-size: 0.76rem !important;
    padding: 6px 5.5px !important;
    gap: 2.5px !important;
  }
}

/* Remove all underline pseudo-elements */
.main-header-menu > li > a::after,
.main-header-menu > li > a::before,
.ast-nav-menu > li > a::after,
.ast-nav-menu > li > a::before,
.main-header-menu > li.current-menu-item > a::after,
.ast-nav-menu > li.current-menu-item > a::after,
.main-header-menu > li.current_page_item > a::after,
.ast-nav-menu > li.current_page_item > a::after {
  display: none !important;
  content: none !important;
  height: 0 !important;
  width: 0 !important;
  border: none !important;
}

/* Active & Hover states */
.main-header-menu > li > a:hover,
.ast-nav-menu > li > a:hover {
  color: var(--hsh-gold) !important;
  background: rgba(255, 255, 255, 0.08) !important;
}

.main-header-menu > li.current-menu-item > a,
.ast-nav-menu > li.current-menu-item > a,
.main-header-menu > li.current_page_item > a,
.ast-nav-menu > li.current_page_item > a {
  color: var(--hsh-gold) !important;
  font-weight: 700 !important;
  background: rgba(255, 255, 255, 0.06) !important;
}

/* Arrow indicator on parent items */
.main-header-menu > li.menu-item-has-children > a .ast-icon,
.ast-nav-menu > li.menu-item-has-children > a .ast-icon {
  margin-left: 2px !important;
  display: inline-flex !important;
  align-items: center !important;
}

.main-header-menu > li.menu-item-has-children > a .ast-icon svg,
.ast-nav-menu > li.menu-item-has-children > a .ast-icon svg {
  width: 8px !important;
  height: 8px !important;
  fill: currentColor !important;
  transition: transform 0.2s ease !important;
}

.main-header-menu > li.menu-item-has-children:hover > a .ast-icon svg,
.main-header-menu > li.menu-item-has-children.hsh-dropdown-open > a .ast-icon svg {
  transform: rotate(180deg) !important;
}

.main-header-menu > li.menu-item-has-children:hover > a,
.main-header-menu > li.menu-item-has-children.hsh-dropdown-open > a {
  color: var(--hsh-gold) !important;
  background: rgba(255, 255, 255, 0.08) !important;
}

/* Invisible hover bridge connecting parent menu item to dropdown */
.main-header-menu > li.menu-item-has-children {
  position: relative !important;
}

.main-header-menu > li.menu-item-has-children::after {
  content: '' !important;
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  width: 100% !important;
  height: 18px !important;
  background: transparent !important;
  display: block !important;
  z-index: 99998 !important;
  pointer-events: auto !important;
}

/* ── Desktop dropdown menus ── */
.ast-nav-menu .sub-menu,
.main-header-menu .sub-menu,
.nav-menu .sub-menu {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.16) !important;
  min-width: 210px !important;
  padding: 8px 0 !important;
  margin-top: 0 !important;
  top: 100% !important;
  list-style: none !important;
  z-index: 99999 !important;
}

.ast-nav-menu .sub-menu::before,
.main-header-menu .sub-menu::before {
  content: '' !important;
  position: absolute !important;
  top: -18px !important;
  left: -10px !important;
  right: -10px !important;
  height: 20px !important;
  background: transparent !important;
  display: block !important;
  z-index: 99998 !important;
  pointer-events: auto !important;
}

.ast-nav-menu .sub-menu .ast-icon,
.main-header-menu .sub-menu .ast-icon,
.main-header-menu .sub-menu .dropdown-menu-toggle {
  display: none !important;
}

.main-header-menu > li.menu-item-has-children:hover > .sub-menu,
.main-header-menu > li.menu-item-has-children.hsh-dropdown-open > .sub-menu,
.ast-nav-menu > li.menu-item-has-children:hover > .sub-menu,
.ast-nav-menu > li.menu-item-has-children.hsh-dropdown-open > .sub-menu {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.ast-nav-menu .sub-menu > li > a,
.main-header-menu .sub-menu > li > a {
  color: #2d3748 !important;
  font-size: 0.86rem !important;
  padding: 8px 18px !important;
  border-radius: 0 !important;
  border: none !important;
  display: block !important;
  transition: background 0.15s ease, color 0.15s ease, padding-left 0.15s ease !important;
  font-weight: 500 !important;
  background: transparent !important;
  white-space: nowrap !important;
}

.ast-nav-menu .sub-menu > li > a:hover,
.main-header-menu .sub-menu > li > a:hover {
  color: #174229 !important;
  background: #f0fdf4 !important;
  padding-left: 22px !important;
}


/* Seeds sub-menu: 2-column grid so 20+ varieties fit elegantly, aligned left under Seeds */
@media (min-width: 922px) {
  .main-header-menu li:has(> a[href*="/seeds/"]) > .sub-menu,
  .main-header-menu .menu-item-9761 > .sub-menu {
    min-width: 360px !important;
    max-height: 460px !important;
    overflow-y: auto !important;
    left: 0 !important;
    right: auto !important;
    margin-top: 0 !important;
    top: 100% !important;
  }
  .main-header-menu li:has(> a[href*="/seeds/"]):hover > .sub-menu,
  .main-header-menu .menu-item-9761:hover > .sub-menu,
  .main-header-menu li:has(> a[href*="/seeds/"]).hsh-dropdown-open > .sub-menu,
  .main-header-menu .menu-item-9761.hsh-dropdown-open > .sub-menu {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 2px !important;
    padding: 8px !important;
    left: 0 !important;
    right: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  .main-header-menu li:has(> a[href*="/vegetables/"]) > .sub-menu {
    left: 0 !important;
    right: auto !important;
    margin-top: 0 !important;
    top: 100% !important;
  }
  .main-header-menu li:has(> a[href*="/vegetables/"]):hover > .sub-menu,
  .main-header-menu li:has(> a[href*="/vegetables/"]).hsh-dropdown-open > .sub-menu {
    left: 0 !important;
    right: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
}

/* ── Header Action Icons (Cart, Search) ── */
.site-header-primary-section-right {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex: 0 0 auto !important;
  flex-shrink: 0 !important;
  gap: 12px !important;
  margin-left: auto !important;
  margin-right: 0 !important;
  padding-right: 8px !important;
  white-space: nowrap !important;
}

.site-header-primary-section-right .ast-header-woo-cart {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}

.site-header-primary-section-right .ast-site-header-cart {
  display: inline-flex !important;
  align-items: center !important;
  padding: 0 !important;
  margin: 0 !important;
}

.site-header-primary-section-right .cart-container {
  display: inline-flex !important;
  align-items: center !important;
  padding: 4px 6px !important;
  margin: 0 !important;
  white-space: nowrap !important;
}

.site-header-primary-section-right a,
.site-header-primary-section-right button:not(.hsh-header-search-btn),
.site-header-primary-section-right i,
.site-header-primary-section-right svg:not(.hsh-header-search-btn svg) {
  color: #ffffff !important;
  fill: #ffffff !important;
  transition: all var(--hsh-dur) var(--hsh-ease) !important;
}

/* Explicit exemption for search button so SVG circle is never a solid white disk */
.site-header-primary-section-right .hsh-header-search-btn svg,
.site-header-primary-section-right .hsh-header-search-btn svg * {
  fill: none !important;
  stroke: #ffffff !important;
}

.site-header-primary-section-right .hsh-header-search-btn:hover svg,
.site-header-primary-section-right .hsh-header-search-btn:hover svg * {
  fill: none !important;
  stroke: var(--hsh-primary-dark, #064E14) !important;
}

.site-header-primary-section-right a:hover i,
.site-header-primary-section-right a:hover svg {
  color: var(--hsh-gold) !important;
  fill: var(--hsh-gold) !important;
  transform: scale(1.1) !important;
}

/* Cart counter bubble */
.ast-site-header-cart .count,
.ast-header-woo-cart .count {
  background: var(--hsh-gold) !important;
  color: var(--hsh-primary-dark) !important;
  font-weight: 800 !important;
  font-size: 0.72rem !important;
  border-radius: 999px !important;
  padding: 2px 6px !important;
}


/* ══════════════════════════════════════════════════════════
   6. MOBILE HEADER (Matching Original Live — No Hamburger)
══════════════════════════════════════════════════════════ */

.ast-mobile-header-wrap,
.ast-header-break-point .main-header-bar,
.ast-header-break-point .ast-primary-header-bar {
  background: var(--hsh-primary) !important;
  background-color: var(--hsh-primary) !important;
}

/* Remove mobile hamburger menu button & drawer completely */
[data-section="section-header-mobile-trigger"],
.ast-header-break-point [data-section="section-header-mobile-trigger"],
.ast-button-wrap,
.ast-header-break-point .ast-button-wrap,
.ast-mobile-menu-trigger-fill,
.main-header-menu-toggle,
.menu-toggle,
.ast-header-break-point .menu-toggle,
.ast-mobile-popup-drawer,
#ast-mobile-popup,
.ast-slide-out-panel,
.ast-mobile-header-content {
  display: none !important;
  visibility: hidden !important;
}

/* ══════════════════════════════════════════════════════════
   8. GLOBAL BUTTONS
══════════════════════════════════════════════════════════ */

/* Base button */
.ast-btn,
.button,
button[type="submit"],
input[type="submit"],
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.wc-block-components-button,
.wp-block-button__link,
.ast-custom-button,
a.checkout-button,
.checkout-button {
  font-family: var(--hsh-font-body) !important;
  font-weight: 700 !important;
  font-size: 0.9rem !important;
  letter-spacing: 0.01em;
  border-radius: var(--hsh-radius-sm) !important;
  padding: 12px 22px !important;
  min-height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition:
    background var(--hsh-dur) var(--hsh-ease),
    color var(--hsh-dur) var(--hsh-ease),
    transform var(--hsh-dur) var(--hsh-ease-spring),
    box-shadow var(--hsh-dur) var(--hsh-ease) !important;
  text-decoration: none !important;
  border: none !important;
  position: relative;
  overflow: hidden;

  /* Default: primary green */
  background: var(--hsh-primary) !important;
  color: #ffffff !important;
  box-shadow: var(--hsh-shadow-xs) !important;
}

.ast-btn:hover,
.button:hover,
button[type="submit"]:hover,
input[type="submit"]:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.wp-block-button__link:hover,
a.checkout-button:hover,
.checkout-button:hover {
  background: var(--hsh-primary-dark) !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  box-shadow: var(--hsh-shadow) !important;
}

/* Outline / secondary buttons */
.ast-btn.ast-btn-outline,
.woocommerce a.button.alt,
.button.alt,
.btn-outline {
  background: transparent !important;
  color: var(--hsh-primary) !important;
  border: 2px solid var(--hsh-primary) !important;
}

.woocommerce a.button.alt:hover,
.button.alt:hover {
  background: var(--hsh-primary) !important;
  color: #ffffff !important;
}

/* CTA / gold accent buttons */
.ast-btn-gold,
.woocommerce a.button.checkout,
a.button.checkout,
.wc-forward,
.checkout-button.button {
  background: var(--hsh-gold) !important;
  color: var(--hsh-primary-dark) !important;
  box-shadow: var(--hsh-shadow-gold) !important;
}

.ast-btn-gold:hover,
.woocommerce a.button.checkout:hover,
.checkout-button.button:hover {
  background: var(--hsh-gold-hover) !important;
  color: var(--hsh-primary-dark) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(236,192,3,0.35) !important;
}

/* Press depth */
.button:active,
.ast-btn:active,
.woocommerce a.button:active,
button[type="submit"]:active {
  transform: translateY(0) scale(0.98) !important;
}

/* Focus */
.button:focus-visible,
.ast-btn:focus-visible,
.woocommerce a.button:focus-visible {
  outline: 3px solid var(--hsh-gold) !important;
  outline-offset: 2px !important;
}

/* ══════════════════════════════════════════════════════════
   9. FORMS — INPUTS, SELECTS, TEXTAREAS
══════════════════════════════════════════════════════════ */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="url"],
input[type="date"],
select,
textarea,
.woocommerce-Input,
.wc-block-components-text-input input,
.wc-block-components-select select {
  font-family: var(--hsh-font-body) !important;
  font-size: 0.95rem !important;
  color: var(--hsh-text) !important;
  background: var(--hsh-white) !important;
  border: 1.5px solid var(--hsh-neutral) !important;
  border-radius: var(--hsh-radius-xs) !important;
  padding: 11px 14px !important;
  transition:
    border-color var(--hsh-dur) var(--hsh-ease),
    box-shadow var(--hsh-dur) var(--hsh-ease) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="date"]:focus,
select:focus,
textarea:focus {
  border-color: var(--hsh-primary) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(10, 109, 31, 0.15) !important;
}

label,
.woocommerce-form-row label {
  font-family: var(--hsh-font-body) !important;
  font-weight: 600 !important;
  font-size: 0.875rem !important;
  color: var(--hsh-text) !important;
  margin-bottom: 5px !important;
  display: block;
}

/* ══════════════════════════════════════════════════════════
   10. PAGE LAYOUT & CONTENT AREA
══════════════════════════════════════════════════════════ */

/* Main content background */
body,
#page,
.site-content .ast-container,
#content .ast-container {
  background-color: var(--hsh-white) !important;
}

/* Sidebar */
.ast-sidebar-layout .widget,
.widget {
  font-family: var(--hsh-font-body) !important;
  border-radius: var(--hsh-radius-sm) !important;
  overflow: hidden;
}

.widget-title,
.widgettitle {
  font-family: var(--hsh-font-head) !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  color: var(--hsh-primary) !important;
  padding-bottom: 8px !important;
  border-bottom: 2px solid var(--hsh-gold) !important;
  margin-bottom: 16px !important;
}

/* Page title banner area */
.ast-page-title-wrap,
.ast-breadcrumbs-wrapper {
  background: var(--hsh-surface) !important;
  border-bottom: 1px solid var(--hsh-border) !important;
}

.ast-page-title-wrap .entry-title,
.page-header .page-title {
  font-family: var(--hsh-font-head) !important;
  font-weight: 800 !important;
  color: var(--hsh-text) !important;
}

/* Breadcrumbs */
.ast-breadcrumbs a {
  color: var(--hsh-primary) !important;
}

/* Content headings */
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4 {
  font-family: var(--hsh-font-head) !important;
  color: var(--hsh-text) !important;
  line-height: 1.2 !important;
}

/* Prevent dark text on dark hero / CTA backgrounds in Harvest Prep */
.entry-content .hsh-hp-hero-title,
.hsh-hp-hero-title {
  color: #ffffff !important;
}
.entry-content .hsh-hp-hero-title .hsh-hp-gold,
.hsh-hp-hero-title .hsh-hp-gold {
  color: #ECC003 !important;
}
.entry-content .hsh-hp-cta-inner h2,
.hsh-hp-cta-inner h2 {
  color: #ffffff !important;
}

.entry-content h2 {
  font-size: clamp(1.4rem, 2.5vw, 2rem);
  margin-bottom: 16px;
}

/* ══════════════════════════════════════════════════════════
   11. WOOCOMMERCE — SHOP & PRODUCT CARDS
══════════════════════════════════════════════════════════ */

/* Shop page layout */
.woocommerce-page h1.woocommerce-products-header__title,
.woocommerce h1.page-title {
  font-family: var(--hsh-font-head) !important;
  font-weight: 800 !important;
  color: var(--hsh-text) !important;
}

/* Product card */
.woocommerce ul.products li.product,
.wc-block-grid__product {
  border-radius: var(--hsh-radius) !important;
  border: 1.5px solid var(--hsh-border) !important;
  overflow: hidden !important;
  transition:
    transform var(--hsh-dur) var(--hsh-ease),
    box-shadow var(--hsh-dur) var(--hsh-ease),
    border-color var(--hsh-dur) var(--hsh-ease) !important;
  background: var(--hsh-white) !important;
  box-shadow: var(--hsh-shadow-xs) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
}

.woocommerce ul.products li.product:hover,
.wc-block-grid__product:hover {
  transform: translateY(-5px) !important;
  box-shadow: var(--hsh-shadow) !important;
  border-color: var(--hsh-primary) !important;
}

/* Product image container and uniform aspect ratio */
.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product img,
.wc-block-grid__product-image img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  border-top-left-radius: calc(var(--hsh-radius) - 1.5px) !important;
  border-top-right-radius: calc(var(--hsh-radius) - 1.5px) !important;
  transition: transform var(--hsh-dur-lg) var(--hsh-ease) !important;
}

.woocommerce ul.products li.product:hover a img,
.woocommerce ul.products li.product:hover img {
  transform: scale(1.05) !important;
}

/* Product title */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.wc-block-grid__product-title {
  font-family: var(--hsh-font-head) !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  color: var(--hsh-text) !important;
  padding: 12px 14px 4px !important;
  line-height: 1.3 !important;
}

/* Product price */
.woocommerce ul.products li.product .price,
.woocommerce .product .price,
.wc-block-grid__product-price {
  font-family: var(--hsh-font-body) !important;
  font-weight: 700 !important;
  color: var(--hsh-primary) !important;
  font-size: 1.05rem !important;
  padding: 0 14px 8px !important;
}

.woocommerce ul.products li.product .price del,
.woocommerce .product .price del {
  color: var(--hsh-text-light) !important;
  font-weight: 400 !important;
}

.woocommerce ul.products li.product .price ins {
  color: var(--hsh-primary) !important;
  text-decoration: none !important;
}

/* Sale badge */
.woocommerce ul.products li.product .onsale,
.woocommerce span.onsale {
  background: var(--hsh-gold) !important;
  color: var(--hsh-primary-dark) !important;
  font-family: var(--hsh-font-body) !important;
  font-weight: 700 !important;
  font-size: 0.75rem !important;
  border-radius: var(--hsh-radius-pill) !important;
  padding: 5px 12px !important;
  min-width: unset !important;
  min-height: unset !important;
  line-height: 1.3 !important;
  top: 12px !important;
  left: 12px !important;
  right: auto !important;
}

/* Add to cart button on product cards */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button,
.wc-block-grid__product-add-to-cart .wp-block-button__link {
  background: var(--hsh-primary) !important;
  color: #ffffff !important;
  font-family: var(--hsh-font-body) !important;
  font-weight: 600 !important;
  font-size: 0.88rem !important;
  border-radius: var(--hsh-radius-sm) !important;
  padding: 11px 18px !important;
  width: calc(100% - 28px) !important;
  margin: 0 14px 14px 14px !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: none !important;
  cursor: pointer !important;
  transition: all var(--hsh-dur) var(--hsh-ease) !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.button:hover {
  background: var(--hsh-gold) !important;
  color: var(--hsh-primary-dark) !important;
  transform: translateY(-2px) !important;
  box-shadow: var(--hsh-shadow-gold) !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.button:hover {
  background: var(--hsh-gold) !important;
  color: var(--hsh-primary-dark) !important;
  transform: translateY(-1px) !important;
}

/* ══════════════════════════════════════════════════════════
   12. WOOCOMMERCE — SINGLE PRODUCT PAGE
══════════════════════════════════════════════════════════ */
.woocommerce div.product .product_title {
  font-family: var(--hsh-font-head) !important;
  font-weight: 800 !important;
  color: var(--hsh-text) !important;
  letter-spacing: -0.02em !important;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: var(--hsh-primary) !important;
  font-family: var(--hsh-font-body) !important;
  font-weight: 700 !important;
  font-size: 1.6rem !important;
}

/* Remove the upper price on variable product single pages, keep only the selected variation price */
.woocommerce div.product.product-type-variable .summary > p.price,
.woocommerce div.product.product-type-variable .entry-summary > p.price,
.woocommerce div.product.product-type-variable .summary > .price:not(.woocommerce-variation-price):not(.single_variation .price),
.woocommerce div.product.product-type-variable .entry-summary > .price:not(.woocommerce-variation-price):not(.single_variation .price) {
  display: none !important;
}

.woocommerce div.product .woocommerce-variation-price,
.woocommerce div.product .single_variation .woocommerce-variation-price {
  display: block !important;
  margin: 0.5rem 0 0.75rem 0 !important;
  color: var(--hsh-primary) !important;
  font-family: var(--hsh-font-body) !important;
  font-weight: 700 !important;
  font-size: 1.5rem !important;
}

/* Product tabs */
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  font-family: var(--hsh-font-body) !important;
  font-weight: 600 !important;
  color: var(--hsh-text-muted) !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
  color: var(--hsh-primary) !important;
  border-bottom-color: var(--hsh-primary) !important;
}

/* Star ratings */
.woocommerce .star-rating span::before,
.woocommerce p.stars a::after,
.wc-block-components-product-rating span::before {
  color: var(--hsh-gold) !important;
}

/* ══════════════════════════════════════════════════════════
   13. WOOCOMMERCE — CART
══════════════════════════════════════════════════════════ */
.woocommerce-cart table.cart td,
.woocommerce-cart table.cart th {
  font-family: var(--hsh-font-body) !important;
  border-color: var(--hsh-border) !important;
}

.woocommerce-cart .cart-collaterals .cart_totals h2,
.woocommerce-cart .cart-collaterals .shipping h2 {
  font-family: var(--hsh-font-head) !important;
  font-weight: 700 !important;
  font-size: 1.1rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: var(--hsh-text) !important;
}

.woocommerce-cart .cart_totals table tr.order-total th,
.woocommerce-cart .cart_totals table tr.order-total td {
  font-family: var(--hsh-font-body) !important;
  font-weight: 700 !important;
  color: var(--hsh-primary) !important;
}

/* Cart Totals Table Text Alignment */
.woocommerce-cart .cart_totals table.shop_table th {
  text-align: left !important;
  vertical-align: middle !important;
  font-size: 0.95rem !important;
  color: #1a2e1e !important;
  padding: 12px 0 !important;
}

.woocommerce-cart .cart_totals table.shop_table td {
  text-align: right !important;
  vertical-align: middle !important;
  padding: 12px 0 !important;
}

.woocommerce-cart .cart_totals table.shop_table td .hsh-dual-price {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  text-align: right !important;
  margin-left: auto !important;
  margin-right: 0 !important;
  gap: 2px !important;
}

.woocommerce-cart .cart_totals table.shop_table td .hsh-dual-price .hsh-jmd-price {
  display: block !important;
  text-align: right !important;
  width: 100% !important;
  white-space: nowrap !important;
  font-weight: 700 !important;
}

.woocommerce-cart .cart_totals table.shop_table td .hsh-dual-price .hsh-usd-price {
  display: block !important;
  text-align: right !important;
  width: 100% !important;
  white-space: nowrap !important;
  font-weight: 400 !important;
  color: #5a6b5e !important;
  font-size: 0.85em !important;
}

/* Shipment cell alignment */
.woocommerce-cart .cart_totals table.shop_table tr.shipping td ul#shipping_method,
.woocommerce-cart .cart_totals table.shop_table tr.shipping ul.woocommerce-shipping-methods {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: right !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
}

.woocommerce-cart .cart_totals table.shop_table tr.shipping ul#shipping_method li,
.woocommerce-cart .cart_totals table.shop_table tr.shipping ul.woocommerce-shipping-methods li {
  text-align: right !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  margin: 0 !important;
  padding: 0 !important;
}

.woocommerce-cart .cart_totals table.shop_table tr.shipping label {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  text-align: right !important;
  margin: 0 !important;
}

.woocommerce-cart .cart_totals table.shop_table .woocommerce-shipping-destination {
  text-align: right !important;
  margin: 6px 0 0 auto !important;
  font-size: 0.82rem !important;
  color: #5a6b5e !important;
  display: block !important;
}

/* Gift card cell alignment */
.woocommerce-cart .cart_totals table.shop_table tr.giftup-cart-subtotal td,
.woocommerce-cart .cart_totals table.shop_table td.giftup-cart-subtotal-td {
  text-align: right !important;
}

.woocommerce-cart .cart_totals table.shop_table td.giftup-cart-subtotal-td a {
  display: inline-block !important;
  text-align: right !important;
}

/* Remove Payment Options from Cart Page and Mini-Cart Drawer (Checkout Only) */
.woocommerce-cart .ppc-button-wrapper,
.woocommerce-cart #ppc-button-ppcp-gateway,
.woocommerce-cart .wc-proceed-to-checkout .ppc-button-wrapper,
.woocommerce-cart .wcppec-checkout-buttons__separator,
.woocommerce-cart .payment_methods,
.woocommerce-cart #payment,
.woocommerce-cart .paypal-buttons,
.woocommerce-cart .express-checkout-button,
.woocommerce-cart [id*="ppc-button"],
.woocommerce-cart [class*="ppc-button"],
.woocommerce-cart [class*="paypal"],
.woocommerce-cart [class*="venmo"],
.moderncart-plugin .ppc-button-wrapper,
.moderncart-plugin #ppc-button-ppcp-gateway,
.moderncart-plugin .paypal-buttons,
.moderncart-plugin [id*="ppc-button"],
.moderncart-plugin [class*="ppc-button"],
.moderncart-plugin [class*="paypal"],
.moderncart-plugin [class*="venmo"],
.moderncart-slide-out-footer .ppc-button-wrapper,
.moderncart-slide-out-footer [id*="ppc-button"],
.moderncart-slide-out-footer .paypal-buttons,
.moderncart-slide-out-footer .wc-proceed-to-checkout > div:not(.checkout-button) {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
}

/* ══════════════════════════════════════════════════════════
   FLOATING CART (Elevated Cleanly Above Live Chat Widget)
   ══════════════════════════════════════════════════════════ */
#moderncart-floating-cart,
.moderncart-toggle-slide-out,
[id*="moderncart-floating"],
.moderncart-floating-cart {
  bottom: 96px !important;
  right: 22px !important;
  z-index: 99990 !important;
  transition: transform 0.25s ease, bottom 0.25s ease, box-shadow 0.25s ease !important;
}

#moderncart-floating-cart:hover,
.moderncart-toggle-slide-out:hover {
  transform: translateY(-4px) scale(1.05) !important;
}

#zsiq_float,
.zsiq_cnt,
.zsiq-float {
  bottom: 20px !important;
  right: 22px !important;
  z-index: 99980 !important;
}

/* ══════════════════════════════════════════════════════════
   13. MODERNCART — SIDE-OUT CART DRAWER & BRAND THEME
   ══════════════════════════════════════════════════════════ */

/* Drawer Overlay & Main Panel */
#moderncart-slide-out-modal.moderncart-plugin,
#moderncart-slide-out-modal,
#moderncart-slide-out,
.moderncart-modal,
.moderncart-plugin {
  font-family: var(--hsh-font-body, 'Poppins', sans-serif) !important;
}

#moderncart-slide-out .moderncart-panel,
#moderncart-slide-out-modal .moderncart-panel {
  background-color: #ffffff !important;
  box-shadow: -8px 0 35px rgba(0, 0, 0, 0.12) !important;
  border-left: 1px solid #e2e8f0 !important;
}

/* 1. Header */
#moderncart-slide-out .moderncart-slide-out-header,
#moderncart-slide-out-modal .moderncart-slide-out-header,
.moderncart-slide-out-header {
  background: #ffffff !important;
  border-bottom: 1.5px solid #edf2f7 !important;
  padding: 18px 24px !important;
}

#moderncart-slide-out .moderncart-slide-out-header-heading,
#moderncart-slide-out-modal .moderncart-slide-out-header-heading,
.moderncart-slide-out-header-heading {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
}

#moderncart-slide-out .moderncart-slide-out-header-close,
#moderncart-slide-out-modal .moderncart-slide-out-header-close,
.moderncart-slide-out-header-close {
  appearance: none !important;
  background: #f1f5f9 !important;
  border: none !important;
  width: 36px !important;
  height: 36px !important;
  padding: 0 !important;
  margin: 0 !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
}

#moderncart-slide-out .moderncart-slide-out-header-close:hover,
#moderncart-slide-out-modal .moderncart-slide-out-header-close:hover,
.moderncart-slide-out-header-close:hover {
  background: var(--hsh-primary, #0A6D1F) !important;
  transform: translateX(2px) !important;
}

#moderncart-slide-out .moderncart-slide-out-header-close svg,
#moderncart-slide-out-modal .moderncart-slide-out-header-close svg,
.moderncart-slide-out-header-close svg {
  width: 18px !important;
  height: 18px !important;
  fill: #334155 !important;
  transition: fill 0.2s ease !important;
}

#moderncart-slide-out .moderncart-slide-out-header-close:hover svg,
#moderncart-slide-out-modal .moderncart-slide-out-header-close:hover svg,
.moderncart-slide-out-header-close:hover svg {
  fill: #ffffff !important;
}

#moderncart-slide-out .moderncart-slide-out-header-title,
#moderncart-slide-out-modal .moderncart-slide-out-header-title,
.moderncart-slide-out-header-title {
  flex: 1 1 auto !important;
  text-align: center !important;
}

#moderncart-slide-out .moderncart-slide-out-header-title span,
#moderncart-slide-out-modal .moderncart-slide-out-header-title span,
.moderncart-slide-out-header-title span {
  font-family: var(--hsh-font-head, 'Montserrat', sans-serif) !important;
  font-weight: 800 !important;
  font-size: 1.25rem !important;
  color: #0f172a !important;
  letter-spacing: -0.01em !important;
}

#moderncart-slide-out .moderncart-slide-out-header-quantity,
#moderncart-slide-out-modal .moderncart-slide-out-header-quantity,
.moderncart-slide-out-header-quantity {
  background: rgba(10, 109, 31, 0.08) !important;
  border: 1px solid rgba(10, 109, 31, 0.22) !important;
  border-radius: 20px !important;
  padding: 4px 12px !important;
  min-width: 28px !important;
  text-align: center !important;
}

#moderncart-slide-out .moderncart-slide-out-header-quantity span,
#moderncart-slide-out-modal .moderncart-slide-out-header-quantity span,
.moderncart-slide-out-header-quantity span {
  font-family: var(--hsh-font-head, 'Montserrat', sans-serif) !important;
  font-weight: 700 !important;
  font-size: 0.9rem !important;
  color: var(--hsh-primary, #0A6D1F) !important;
}

/* 2. Free Shipping Bar */
.moderncart-slide-out-free-shipping-bar-wrapper,
.moderncart-free-shipping-bar {
  background: #f8fafc !important;
  border-bottom: 1px solid #edf2f7 !important;
  padding: 12px 24px !important;
  font-size: 0.85rem !important;
  color: #334155 !important;
}

.moderncart-free-shipping-progress-bar,
.moderncart-free-shipping-bar-progress {
  background-color: #e2e8f0 !important;
  border-radius: 999px !important;
  height: 6px !important;
  overflow: hidden !important;
}

.moderncart-progress-bar,
.moderncart-free-shipping-bar-progress-bar {
  background: linear-gradient(90deg, #0A6D1F 0%, #16a34a 100%) !important;
  border-radius: 999px !important;
}

/* 3. Cart Items List */
#moderncart-slide-out .moderncart-cart-item,
#moderncart-slide-out-modal .moderncart-cart-item,
.moderncart-cart-item {
  border-bottom: 1px solid #f1f5f9 !important;
  padding: 16px 24px !important;
  transition: background-color 0.15s ease !important;
}

#moderncart-slide-out .moderncart-cart-item:hover,
#moderncart-slide-out-modal .moderncart-cart-item:hover,
.moderncart-cart-item:hover {
  background-color: #fafbfa !important;
}

#moderncart-slide-out .moderncart-cart-item-container,
#moderncart-slide-out-modal .moderncart-cart-item-container,
.moderncart-cart-item-container {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 0 !important;
  width: 100% !important;
}

#moderncart-slide-out .moderncart-cart-item-image,
#moderncart-slide-out-modal .moderncart-cart-item-image,
.moderncart-cart-item-image {
  width: 68px !important;
  height: 68px !important;
  min-width: 68px !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1px solid #e2e8f0 !important;
  background: #f8fafc !important;
  flex-shrink: 0 !important;
}

#moderncart-slide-out .moderncart-cart-item-image img,
#moderncart-slide-out-modal .moderncart-cart-item-image img,
.moderncart-cart-item-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 10px !important;
  display: block !important;
}

#moderncart-slide-out .moderncart-cart-item-product,
#moderncart-slide-out-modal .moderncart-cart-item-product,
.moderncart-cart-item-product {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  padding: 0 !important;
}

#moderncart-slide-out .moderncart-cart-item-product-name,
#moderncart-slide-out-modal .moderncart-cart-item-product-name,
.moderncart-cart-item-product-name {
  font-family: var(--hsh-font-head, 'Montserrat', sans-serif) !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  margin: 0 0 6px 0 !important;
  color: var(--hsh-primary, #0A6D1F) !important;
}

#moderncart-slide-out .moderncart-cart-item-product-name a,
#moderncart-slide-out-modal .moderncart-cart-item-product-name a,
.moderncart-cart-item-product-name a {
  color: var(--hsh-primary, #0A6D1F) !important;
  text-decoration: none !important;
  transition: color 0.15s ease !important;
}

#moderncart-slide-out .moderncart-cart-item-product-name a:hover,
#moderncart-slide-out-modal .moderncart-cart-item-product-name a:hover,
.moderncart-cart-item-product-name a:hover {
  color: var(--hsh-primary-dark, #064E14) !important;
}

#moderncart-slide-out .moderncart-cart-item .moderncart-price,
#moderncart-slide-out-modal .moderncart-cart-item .moderncart-price,
.moderncart-cart-item .moderncart-price {
  font-family: var(--hsh-font-body) !important;
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  color: #1e293b !important;
  line-height: 1.3 !important;
}

#moderncart-slide-out .moderncart-cart-item .moderncart-price .woocommerce-Price-amount,
.moderncart-cart-item .moderncart-price .woocommerce-Price-amount {
  color: #0f172a !important;
  font-weight: 700 !important;
}

#moderncart-slide-out .moderncart-cart-item .moderncart-price .hsh-dual-price,
#moderncart-slide-out .moderncart-cart-item .moderncart-price small,
.moderncart-cart-item .moderncart-price .hsh-dual-price,
.moderncart-cart-item .moderncart-price small {
  color: #64748b !important;
  font-size: 0.82rem !important;
  font-weight: 500 !important;
  display: block !important;
  margin-top: 2px !important;
}

#moderncart-slide-out .moderncart-cart-item-actions-remove,
#moderncart-slide-out-modal .moderncart-cart-item-actions-remove,
.moderncart-cart-item-actions-remove {
  background: transparent !important;
  border: none !important;
  color: #94a3b8 !important;
  cursor: pointer !important;
  padding: 6px !important;
  margin-left: 8px !important;
  transition: color 0.15s ease, transform 0.15s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

#moderncart-slide-out .moderncart-cart-item-actions-remove:hover,
#moderncart-slide-out-modal .moderncart-cart-item-actions-remove:hover,
.moderncart-cart-item-actions-remove:hover {
  color: #ef4444 !important;
  transform: scale(1.1) !important;
}

/* 4. QUANTITY STEPPER (FIX: ELIMINATE BLACK-OVER-GREEN & FIX DIGIT CLIPPING) */
#moderncart-slide-out .moderncart-cart-item-actions,
#moderncart-slide-out-modal .moderncart-cart-item-actions,
.moderncart-cart-item-actions {
  flex-shrink: 0 !important;
  margin-left: 10px !important;
}

#moderncart-slide-out .moderncart-cart-item-quantity,
#moderncart-slide-out-modal .moderncart-cart-item-quantity,
.moderncart-plugin .moderncart-cart-item-quantity,
.moderncart-cart-item-quantity {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  background: #ffffff !important;
  border: 1.5px solid var(--hsh-primary, #0A6D1F) !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  box-shadow: 0 1px 3px rgba(10, 109, 31, 0.12) !important;
  width: 32px !important;
  min-width: 32px !important;
  box-sizing: border-box !important;
}

/* Stepper Buttons: White Icons on Forest Green Background */
#moderncart-slide-out .moderncart-cart-item-quantity button,
#moderncart-slide-out-modal .moderncart-cart-item-quantity button,
.moderncart-plugin .moderncart-cart-item-quantity button,
.moderncart-cart-item-quantity button,
.moderncart-cart-item-quantity button.quantity__button--up,
.moderncart-cart-item-quantity button.quantity__button--down {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 28px !important;
  min-width: 32px !important;
  min-height: 28px !important;
  background: var(--hsh-primary, #0A6D1F) !important;
  color: #ffffff !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  cursor: pointer !important;
  outline: none !important;
  text-indent: 0 !important;
  transition: background-color 0.15s ease !important;
  box-sizing: border-box !important;
}

#moderncart-slide-out .moderncart-cart-item-quantity button:hover,
#moderncart-slide-out-modal .moderncart-cart-item-quantity button:hover,
.moderncart-plugin .moderncart-cart-item-quantity button:hover,
.moderncart-cart-item-quantity button:hover {
  background: var(--hsh-primary-dark, #064E14) !important;
}

#moderncart-slide-out .moderncart-cart-item-quantity button:active,
#moderncart-slide-out-modal .moderncart-cart-item-quantity button:active,
.moderncart-plugin .moderncart-cart-item-quantity button:active,
.moderncart-cart-item-quantity button:active {
  background: #04380e !important;
}

/* STRICT OVERRIDE: SVG Path MUST be Pure White (Never Black over Green) */
#moderncart-slide-out .moderncart-cart-item-quantity button svg,
#moderncart-slide-out .moderncart-cart-item-quantity button svg path,
#moderncart-slide-out-modal .moderncart-cart-item-quantity button svg,
#moderncart-slide-out-modal .moderncart-cart-item-quantity button svg path,
.moderncart-plugin .moderncart-cart-item-quantity button svg,
.moderncart-plugin .moderncart-cart-item-quantity button svg path,
.moderncart-cart-item-quantity button svg,
.moderncart-cart-item-quantity button svg path {
  fill: #ffffff !important;
  stroke: #ffffff !important;
  color: #ffffff !important;
}

#moderncart-slide-out .moderncart-cart-item-quantity button svg,
#moderncart-slide-out-modal .moderncart-cart-item-quantity button svg,
.moderncart-plugin .moderncart-cart-item-quantity button svg,
.moderncart-cart-item-quantity button svg {
  width: 11px !important;
  height: 11px !important;
  display: block !important;
  margin: auto !important;
}

/* Middle Quantity Number Input (Prevents '1' from clipping into an apostrophe) */
#moderncart-slide-out .moderncart-cart-item-quantity input.moderncart-quantity__input,
#moderncart-slide-out .moderncart-cart-item-quantity input[type="number"],
#moderncart-slide-out-modal .moderncart-cart-item-quantity input.moderncart-quantity__input,
#moderncart-slide-out-modal .moderncart-cart-item-quantity input[type="number"],
.moderncart-plugin .moderncart-cart-item-quantity input.moderncart-quantity__input,
.moderncart-plugin .moderncart-cart-item-quantity input[type="number"],
.moderncart-cart-item-quantity input.moderncart-quantity__input,
.moderncart-cart-item-quantity input[type="number"] {
  width: 32px !important;
  min-width: 32px !important;
  max-width: 32px !important;
  height: 28px !important;
  min-height: 28px !important;
  max-height: 28px !important;
  line-height: 28px !important;
  background: #ffffff !important;
  color: #0f172a !important;
  font-family: var(--hsh-font-head, 'Montserrat', sans-serif) !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  text-align: center !important;
  border-top: 1px solid #e2e8f0 !important;
  border-bottom: 1px solid #e2e8f0 !important;
  border-left: none !important;
  border-right: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  appearance: textfield !important;
  -moz-appearance: textfield !important;
  box-sizing: border-box !important;
}

#moderncart-slide-out .moderncart-cart-item-quantity input[type="number"]::-webkit-outer-spin-button,
#moderncart-slide-out .moderncart-cart-item-quantity input[type="number"]::-webkit-inner-spin-button,
#moderncart-slide-out-modal .moderncart-cart-item-quantity input[type="number"]::-webkit-outer-spin-button,
#moderncart-slide-out-modal .moderncart-cart-item-quantity input[type="number"]::-webkit-inner-spin-button,
.moderncart-cart-item-quantity input[type="number"]::-webkit-outer-spin-button,
.moderncart-cart-item-quantity input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

/* 5. Discount Code / Coupon Area */
#moderncart-slide-out .moderncart-have-coupon-code-area,
.moderncart-have-coupon-code-area {
  padding: 14px 24px !important;
  background: #f8fafc !important;
  border-top: 1px solid #edf2f7 !important;
  border-bottom: 1px solid #edf2f7 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  transition: background-color 0.15s ease !important;
}

#moderncart-slide-out .moderncart-have-coupon-code-area:hover,
.moderncart-have-coupon-code-area:hover {
  background: #f1f5f9 !important;
}

#moderncart-slide-out .moderncart-have-coupon-code,
.moderncart-have-coupon-code {
  font-family: var(--hsh-font-body) !important;
  font-weight: 600 !important;
  font-size: 0.92rem !important;
  color: #334155 !important;
}

/* Replace dark navy chevron with brand Forest Green */
#moderncart-slide-out .moderncart-have-coupon-code-area svg,
#moderncart-slide-out .moderncart-have-coupon-code-area svg path,
.moderncart-have-coupon-code-area svg,
.moderncart-have-coupon-code-area svg path {
  fill: var(--hsh-primary, #0A6D1F) !important;
}

#moderncart-slide-out .moderncart-slide-out-coupon,
.moderncart-slide-out-coupon {
  padding: 16px 24px !important;
  background: #f8fafc !important;
  border-bottom: 1px solid #edf2f7 !important;
}

#moderncart-slide-out .moderncart-coupon-form,
.moderncart-coupon-form {
  display: flex !important;
  gap: 8px !important;
  align-items: center !important;
}

#moderncart-slide-out .moderncart-slide-out-coupon-input,
.moderncart-slide-out-coupon-input {
  display: flex !important;
  gap: 8px !important;
  width: 100% !important;
}

#moderncart-slide-out .moderncart-slide-out-coupon-input input,
.moderncart-slide-out-coupon-input input {
  flex: 1 1 auto !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  font-size: 0.9rem !important;
  color: #1e293b !important;
  background: #ffffff !important;
}

#moderncart-slide-out .moderncart-slide-out-coupon-input input:focus,
.moderncart-slide-out-coupon-input input:focus {
  border-color: var(--hsh-primary, #0A6D1F) !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(10, 109, 31, 0.15) !important;
}

#moderncart-slide-out .moderncart-slide-out-coupon-form-button,
.moderncart-slide-out-coupon-form-button {
  background: var(--hsh-primary, #0A6D1F) !important;
  color: #ffffff !important;
  font-family: var(--hsh-font-head, 'Montserrat', sans-serif) !important;
  font-weight: 700 !important;
  font-size: 0.9rem !important;
  border-radius: 8px !important;
  border: none !important;
  padding: 10px 20px !important;
  cursor: pointer !important;
  transition: background-color 0.2s ease !important;
  white-space: nowrap !important;
}

#moderncart-slide-out .moderncart-slide-out-coupon-form-button:hover,
.moderncart-slide-out-coupon-form-button:hover {
  background: var(--hsh-primary-dark, #064E14) !important;
}

/* 6. Totals & Line Items */
#moderncart-slide-out .moderncart-cart-total,
.moderncart-cart-total {
  padding: 18px 24px 12px 24px !important;
  background: #ffffff !important;
}

#moderncart-slide-out .moderncart-cart-line-items,
.moderncart-cart-line-items {
  margin-bottom: 12px !important;
}

#moderncart-slide-out .moderncart-cart-line-items-item,
.moderncart-cart-line-items-item {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 8px 0 !important;
  font-size: 0.95rem !important;
  color: #475569 !important;
  border-bottom: 1px solid #f8fafc !important;
}

#moderncart-slide-out .moderncart-cart-line-items-label,
.moderncart-cart-line-items-label {
  font-weight: 600 !important;
  color: #334155 !important;
  font-family: var(--hsh-font-body) !important;
}

#moderncart-slide-out .moderncart-cart-line-items-value,
.moderncart-cart-line-items-value {
  font-weight: 700 !important;
  color: #0f172a !important;
  text-align: right !important;
}

#moderncart-slide-out .moderncart-cart-line-items-value small,
#moderncart-slide-out .moderncart-cart-line-items-value .hsh-dual-price,
.moderncart-cart-line-items-value small,
.moderncart-cart-line-items-value .hsh-dual-price {
  font-size: 0.82rem !important;
  color: #64748b !important;
  font-weight: 500 !important;
}

/* Final Total Row */
#moderncart-slide-out .moderncart-cart-line-items__total,
.moderncart-cart-line-items__total {
  border-top: 1.5px solid #e2e8f0 !important;
  border-bottom: none !important;
  margin-top: 8px !important;
  padding-top: 14px !important;
}

#moderncart-slide-out .moderncart-cart-line-items__total .moderncart-cart-line-items-label,
.moderncart-cart-line-items__total .moderncart-cart-line-items-label {
  font-family: var(--hsh-font-head, 'Montserrat', sans-serif) !important;
  font-size: 1.15rem !important;
  font-weight: 800 !important;
  color: #0f172a !important;
}

#moderncart-slide-out .moderncart-cart-line-items__total .moderncart-cart-line-items-value,
.moderncart-cart-line-items__total .moderncart-cart-line-items-value {
  font-family: var(--hsh-font-head, 'Montserrat', sans-serif) !important;
  font-size: 1.25rem !important;
  font-weight: 800 !important;
  color: var(--hsh-primary, #0A6D1F) !important;
}

/* 7. Proceed to Checkout Footer Button */
#moderncart-slide-out .moderncart-slide-out-footer,
.moderncart-slide-out-footer {
  padding: 0 !important;
  background: #ffffff !important;
  border-top: 1px solid #edf2f7 !important;
}

#moderncart-slide-out .moderncart-slide-out-footer .moderncart-cart-total .wc-proceed-to-checkout,
.moderncart-cart-total .wc-proceed-to-checkout,
.moderncart-slide-out-footer .wc-proceed-to-checkout {
  padding: 14px 24px 24px 24px !important;
  margin: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

#moderncart-slide-out .moderncart-slide-out-footer .moderncart-cart-total a.checkout-button,
#moderncart-slide-out a.checkout-button,
.moderncart-plugin a.checkout-button,
.moderncart-slide-out-footer a.checkout-button,
.wc-proceed-to-checkout a.checkout-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  width: 100% !important;
  min-height: 52px !important;
  box-sizing: border-box !important;
  background: linear-gradient(135deg, #0A6D1F 0%, #0d8827 100%) !important;
  color: #ffffff !important;
  font-family: var(--hsh-font-head, 'Montserrat', sans-serif) !important;
  font-weight: 700 !important;
  font-size: 1.05rem !important;
  text-transform: none !important;
  letter-spacing: 0.02em !important;
  border: none !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 16px rgba(10, 109, 31, 0.35) !important;
  cursor: pointer !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  text-decoration: none !important;
  padding: 14px 24px !important;
  line-height: 1.3 !important;
}

#moderncart-slide-out .moderncart-slide-out-footer .moderncart-cart-total a.checkout-button:hover,
#moderncart-slide-out a.checkout-button:hover,
.moderncart-plugin a.checkout-button:hover,
.moderncart-slide-out-footer a.checkout-button:hover,
.wc-proceed-to-checkout a.checkout-button:hover {
  background: linear-gradient(135deg, #064E14 0%, #0A6D1F 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 22px rgba(10, 109, 31, 0.45) !important;
  color: #ffffff !important;
}

#moderncart-slide-out .moderncart-slide-out-footer .moderncart-cart-total a.checkout-button:active,
#moderncart-slide-out a.checkout-button:active,
.moderncart-slide-out-footer a.checkout-button:active,
.wc-proceed-to-checkout a.checkout-button:active {
  transform: translateY(1px) !important;
  box-shadow: 0 2px 8px rgba(10, 109, 31, 0.25) !important;
}

/* Cart item quantity inputs on standard WooCommerce Cart page */
.woocommerce .quantity input.qty {
  font-family: var(--hsh-font-body) !important;
  border: 1.5px solid var(--hsh-border) !important;
  border-radius: var(--hsh-radius-xs) !important;
}

/* ══════════════════════════════════════════════════════════
   14. WOOCOMMERCE — CHECKOUT
══════════════════════════════════════════════════════════ */
.woocommerce-checkout h3,
.woocommerce-checkout #order_review_heading {
  font-family: var(--hsh-font-head) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  font-size: 1rem !important;
  color: var(--hsh-text) !important;
  padding-bottom: 8px !important;
  border-bottom: 2px solid var(--hsh-gold) !important;
  margin-bottom: 20px !important;
}

/* Outer Payment Container Card */
.woocommerce-checkout #payment {
  background: #ffffff !important;
  border-radius: 16px !important;
  border: 1px solid #e2e8f0 !important;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05), 0 2px 6px -1px rgba(0, 0, 0, 0.02) !important;
  padding: 24px !important;
  margin-top: 24px !important;
  margin-bottom: 24px !important;
}

@media (max-width: 767px) {
  .woocommerce-checkout #payment {
    padding: 16px !important;
    border-radius: 12px !important;
  }
}

/* Payment Methods List */
.woocommerce-checkout #payment ul.payment_methods,
.woocommerce-checkout #payment ul.wc_payment_methods {
  list-style: none !important;
  margin: 0 0 20px 0 !important;
  padding: 0 !important;
  border: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

/* Individual Payment Method Tile / Card */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
  position: relative !important;
  background: #ffffff !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 12px !important;
  padding: 16px 18px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  transition: border-color 0.2s cubic-bezier(0.4, 0, 0.2, 1),
              background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1),
              box-shadow 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer !important;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:hover {
  border-color: #cbd5e1 !important;
  background: #fbfdfb !important;
}

/* Selected Payment Method Card Highlight */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:has(input[type="radio"]:checked),
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method.is-selected {
  border-color: var(--hsh-primary, #0A6D1F) !important;
  background: #f7faf7 !important;
  box-shadow: 0 0 0 1px var(--hsh-primary, #0A6D1F), 0 3px 10px rgba(10, 109, 31, 0.08) !important;
}

/* Inline Radio Button */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > input[type="radio"],
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input.input-radio {
  display: inline-block !important;
  float: none !important;
  margin: 0 12px 0 0 !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  accent-color: var(--hsh-primary, #0A6D1F) !important;
  cursor: pointer !important;
  flex-shrink: 0 !important;
  vertical-align: middle !important;
  position: static !important;
}

/* Method Label & Text */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label {
  display: inline-flex !important;
  align-items: center !important;
  flex: 1 1 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: var(--hsh-font-body) !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  color: #1e293b !important;
  cursor: pointer !important;
  line-height: 1.4 !important;
  user-select: none !important;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:has(input[type="radio"]:checked) > label,
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method.is-selected > label {
  color: var(--hsh-primary-dark, #064E14) !important;
}

/* Payment Icons / Badges inside Label */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method > label img {
  max-height: 24px !important;
  width: auto !important;
  margin-left: auto !important;
  vertical-align: middle !important;
}

/* Payment Description Box */
.woocommerce-checkout #payment div.payment_box {
  flex-basis: 100% !important;
  width: 100% !important;
  margin: 14px 0 4px 0 !important;
  padding: 16px 18px !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-left: 3.5px solid var(--hsh-primary, #0A6D1F) !important;
  border-radius: 10px !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.03) !important;
  box-sizing: border-box !important;
}

/* Selected payment method MUST display its payment box */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method.is-selected div.payment_box,
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:has(input[type="radio"]:checked) div.payment_box {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Unselected payment method MUST hide its payment box */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:not(.is-selected):not(:has(input[type="radio"]:checked)) div.payment_box {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

/* Suppress WooCommerce default ugly speech-bubble triangular arrow */
.woocommerce-checkout #payment div.payment_box::before,
.woocommerce-checkout #payment div.payment_box::after {
  display: none !important;
  content: none !important;
  border: none !important;
}

.woocommerce-checkout #payment div.payment_box p {
  margin: 0 0 12px 0 !important;
  font-size: 0.9rem !important;
  line-height: 1.55 !important;
  color: #475569 !important;
  font-family: var(--hsh-font-body) !important;
}

/* Inner Action Slot for Gateway Buttons inside Payment Box */
.woocommerce-checkout #payment .hsh-box-actions {
  width: 100% !important;
  margin-top: 14px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  box-sizing: border-box !important;
}

/* Zippy Pay NOW Button inside Zippy Box */
.woocommerce-checkout #payment .payment_box.payment_method_zippy_pay #place_order,
.woocommerce-checkout #payment #place_order.hsh-zippy-pay-now {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 52px !important;
  background: linear-gradient(135deg, #0A6D1F 0%, #0d8827 100%) !important;
  color: #ffffff !important;
  font-family: var(--hsh-font-head, 'Montserrat', sans-serif) !important;
  font-weight: 700 !important;
  font-size: 1.05rem !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  border: none !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 14px rgba(10, 109, 31, 0.28) !important;
  cursor: pointer !important;
  margin: 8px 0 2px 0 !important;
  padding: 14px 24px !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  box-sizing: border-box !important;
}

.woocommerce-checkout #payment .payment_box.payment_method_zippy_pay #place_order:hover,
.woocommerce-checkout #payment #place_order.hsh-zippy-pay-now:hover {
  background: linear-gradient(135deg, #064E14 0%, #0A6D1F 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(10, 109, 31, 0.38) !important;
}

.woocommerce-checkout #payment .payment_box.payment_method_zippy_pay #place_order:active,
.woocommerce-checkout #payment #place_order.hsh-zippy-pay-now:active {
  transform: translateY(1px) !important;
  box-shadow: 0 2px 8px rgba(10, 109, 31, 0.25) !important;
}

/* PayPal Buttons inside PayPal Box */
.woocommerce-checkout #payment .payment_box.payment_method_ppcp-gateway #place_order,
.woocommerce-checkout #payment #place_order.hsh-paypal-place-order {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 48px !important;
  background: var(--hsh-gold, #ecc003) !important;
  color: #1e293b !important;
  font-family: var(--hsh-font-head, 'Montserrat', sans-serif) !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  letter-spacing: 0.02em !important;
  border: none !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 14px rgba(236, 192, 3, 0.25) !important;
  cursor: pointer !important;
  margin: 6px 0 6px 0 !important;
  padding: 12px 24px !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  box-sizing: border-box !important;
}

.woocommerce-checkout #payment .payment_box.payment_method_ppcp-gateway #place_order:hover,
.woocommerce-checkout #payment #place_order.hsh-paypal-place-order:hover {
  background: var(--hsh-gold-hover, #d4a017) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(236, 192, 3, 0.35) !important;
}

.woocommerce-checkout #payment .payment_box.payment_method_ppcp-gateway .ppc-button-wrapper {
  margin-top: 4px !important;
  margin-bottom: 0 !important;
  width: 100% !important;
}

.woocommerce-checkout #payment .payment_box.payment_method_ppcp-gateway .ppc-button-wrapper iframe {
  border-radius: 8px !important;
}

/* If smart buttons iframe has rendered, hide fallback button; if not rendered, keep fallback button visible */
.woocommerce-checkout #payment .payment_box.payment_method_ppcp-gateway:has(.ppc-button-wrapper iframe) #place_order {
  display: none !important;
}

/* Suppress redundant floating buttons in bottom container once moved */
.woocommerce-checkout #payment div.form-row.place-order > #place_order {
  display: none !important;
}
.woocommerce-checkout #payment div.form-row.place-order > .ppc-button-wrapper {
  display: none !important;
}

/* Fallback: if #place_order is in place-order without JS, keep visible */
.woocommerce-checkout #payment:not(:has(.hsh-box-actions #place_order)) div.form-row.place-order > #place_order {
  display: flex !important;
}

/* Terms & Privacy Policy Notice Box */
.woocommerce-checkout #payment div.form-row.place-order {
  padding: 0 !important;
  margin: 14px 0 0 0 !important;
  float: none !important;
  width: 100% !important;
}

.woocommerce-checkout #payment .woocommerce-terms-and-conditions-wrapper,
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
  margin: 0 !important;
}

.woocommerce-checkout #payment .woocommerce-privacy-policy-text,
.woocommerce-checkout .woocommerce-privacy-policy-text {
  margin: 0 !important;
  padding: 12px 16px !important;
  background: #f8fafc !important;
  border: 1px solid #edf2f7 !important;
  border-radius: 10px !important;
  font-size: 0.82rem !important;
  line-height: 1.6 !important;
  color: #64748b !important;
  box-sizing: border-box !important;
}

.woocommerce-checkout #payment .woocommerce-privacy-policy-text p,
.woocommerce-checkout .woocommerce-privacy-policy-text p {
  margin: 0 !important;
  font-size: 0.82rem !important;
  line-height: 1.6 !important;
  color: #64748b !important;
  font-family: var(--hsh-font-body) !important;
}

.woocommerce-checkout #payment .woocommerce-privacy-policy-text a,
.woocommerce-checkout .woocommerce-privacy-policy-text a {
  color: var(--hsh-primary, #0A6D1F) !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  transition: color 0.15s ease !important;
}

.woocommerce-checkout #payment .woocommerce-privacy-policy-text a:hover,
.woocommerce-checkout .woocommerce-privacy-policy-text a:hover {
  color: var(--hsh-primary-dark, #064E14) !important;
}

/* ══════════════════════════════════════════════════════════
   15. WOOCOMMERCE — MY ACCOUNT
══════════════════════════════════════════════════════════ */
.woocommerce-MyAccount-navigation ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.woocommerce-MyAccount-navigation ul li {
  border-bottom: 1px solid var(--hsh-border) !important;
}

.woocommerce-MyAccount-navigation ul li a {
  font-family: var(--hsh-font-body) !important;
  font-weight: 600 !important;
  color: var(--hsh-text) !important;
  padding: 12px 16px !important;
  display: block !important;
  border-radius: var(--hsh-radius-xs) !important;
  transition: all var(--hsh-dur) var(--hsh-ease) !important;
}

.woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce-MyAccount-navigation ul li.is-active a {
  color: var(--hsh-primary) !important;
  background: var(--hsh-primary-light) !important;
}

.woocommerce-MyAccount-navigation ul li.is-active a {
  font-weight: 700 !important;
  border-left: 3px solid var(--hsh-gold) !important;
}

.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
  font-family: var(--hsh-font-head) !important;
  color: var(--hsh-text) !important;
}

/* ══════════════════════════════════════════════════════════
   16. NOTICES & ALERTS
══════════════════════════════════════════════════════════ */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-notice,
.wc-block-components-notice,
.ast-notice {
  font-family: var(--hsh-font-body) !important;
  border-radius: var(--hsh-radius-sm) !important;
  padding: 16px 22px 16px 56px !important;
  position: relative !important;
  font-size: 0.95rem !important;
  font-weight: 500 !important;
  line-height: 1.6 !important;
  box-sizing: border-box !important;
  margin-bottom: 24px !important;
}

/* Ensure notice icon is positioned with comfortable spacing from text */
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before,
.woocommerce-notice::before {
  position: absolute !important;
  top: 18px !important;
  left: 20px !important;
  font-family: WooCommerce !important;
  font-size: 1.25rem !important;
  line-height: 1 !important;
  margin: 0 !important;
  display: inline-block !important;
  text-align: center !important;
}

.woocommerce-info {
  background: var(--hsh-gold-surface) !important;
  border-left: 4px solid var(--hsh-gold) !important;
  border-top: none !important;
  border-right: 1px solid rgba(236, 192, 3, 0.25) !important;
  border-bottom: 1px solid rgba(236, 192, 3, 0.25) !important;
  color: #6b5300 !important;
}

.woocommerce-info::before {
  color: #c99700 !important;
}

.woocommerce-message {
  background: var(--hsh-primary-light) !important;
  border-left: 4px solid var(--hsh-primary) !important;
  border-top: none !important;
  border-right: 1px solid rgba(10, 109, 31, 0.15) !important;
  border-bottom: 1px solid rgba(10, 109, 31, 0.15) !important;
  color: var(--hsh-primary-dark) !important;
}

.woocommerce-message::before {
  color: var(--hsh-primary) !important;
}

.woocommerce-error {
  background: #fff5f5 !important;
  border-left: 4px solid #e53e3e !important;
  border-top: none !important;
  border-right: 1px solid rgba(229, 62, 62, 0.18) !important;
  border-bottom: 1px solid rgba(229, 62, 62, 0.18) !important;
  color: #9b2c2c !important;
}

.woocommerce-error::before {
  color: #e53e3e !important;
}

.woocommerce-message a.button,
.woocommerce-info a.button,
.woocommerce-error a.button {
  float: right !important;
  margin-top: -2px !important;
  padding: 6px 16px !important;
  font-size: 0.85rem !important;
  border-radius: var(--hsh-radius-pill) !important;
}

.woocommerce-message::after,
.woocommerce-info::after,
.woocommerce-error::after {
  content: '' !important;
  display: table !important;
  clear: both !important;
}

/* ══════════════════════════════════════════════════════════
   17. PAGINATION
══════════════════════════════════════════════════════════ */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.page-numbers a,
.page-numbers span {
  font-family: var(--hsh-font-body) !important;
  font-weight: 600 !important;
  border-radius: var(--hsh-radius-xs) !important;
  border: 1.5px solid var(--hsh-border) !important;
  color: var(--hsh-text) !important;
  transition: all var(--hsh-dur) var(--hsh-ease) !important;
}

.woocommerce nav.woocommerce-pagination ul li span.current,
.page-numbers .current {
  background: var(--hsh-primary) !important;
  color: #ffffff !important;
  border-color: var(--hsh-primary) !important;
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.page-numbers a:hover {
  background: var(--hsh-primary-light) !important;
  color: var(--hsh-primary) !important;
  border-color: var(--hsh-primary) !important;
}

/* ══════════════════════════════════════════════════════════
   18. FOOTER — STATE-OF-THE-ART OVERHAUL
══════════════════════════════════════════════════════════ */
.site-footer,
#colophon,
.ast-footer-layout,
footer,
.site-primary-footer-wrap,
.site-primary-footer-wrap[data-section="section-primary-footer-builder"] {
  background-color: #ffffff !important;
  background: #ffffff !important;
  background-image: none !important;
  border-top: 1px solid rgba(0, 0, 0, 0.08) !important;
}

.site-primary-footer-wrap .ast-builder-grid-row-container,
.site-primary-footer-wrap .ast-builder-grid-row-container-inner,
.site-primary-footer-wrap .site-footer-section,
.site-primary-footer-wrap .site-footer-primary-section-wrap {
  background-color: transparent !important;
  border: none !important;
  border-top: none !important;
  border-bottom: none !important;
}

/* 4-column balanced layout with clean padding */
.site-primary-footer-wrap .ast-builder-grid-row {
  display: grid !important;
  grid-template-columns: 1.2fr 1.6fr 1fr 1fr !important;
  gap: 36px !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 56px 24px 44px !important;
  align-items: start !important;
}

@media (max-width: 921px) {
  .site-primary-footer-wrap .ast-builder-grid-row {
    grid-template-columns: 1fr 1fr !important;
    gap: 32px !important;
    padding: 40px 20px 32px !important;
  }
}

@media (max-width: 580px) {
  .site-primary-footer-wrap .ast-builder-grid-row {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
}

/* KEY FIX: Transform the 18-item categories menu into a sleek 2-column grid to eliminate the vertical void! */
.site-footer #menu-footer-categories,
.site-footer ul#menu-footer-categories,
.site-footer .widget_nav_menu #menu-footer-categories {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  column-gap: 24px !important;
  row-gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Quick links, policies, and account list styling */
.site-footer .widget_nav_menu ul,
.site-footer .menu {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.site-footer .widget_nav_menu li,
.site-footer .menu li {
  margin-bottom: 8px !important;
  padding: 0 !important;
}

/* Footer widget headings: Forest Green with refined Gold underline */
.site-footer .widget-title,
.site-primary-footer-wrap .widget-title,
#colophon .widget-title,
.footer-widget-title,
.site-footer h1, .site-footer h2, .site-footer h3, .site-footer h4, .site-footer h5, .site-footer h6 {
  font-family: var(--hsh-font-head) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  font-size: 0.95rem !important;
  color: var(--hsh-primary) !important;
  border-bottom: 2.5px solid var(--hsh-gold) !important;
  padding-bottom: 6px !important;
  margin-bottom: 18px !important;
  display: inline-block !important;
  width: auto !important;
}

/* Footer text & links */
.site-footer,
.site-footer p,
.site-footer span,
#colophon,
.site-primary-footer-wrap,
.site-primary-footer-wrap p {
  font-family: var(--hsh-font-body) !important;
  color: #4A5568 !important;
  font-size: 0.90rem !important;
  line-height: 1.65 !important;
}

.site-footer a,
.site-footer a:link,
.site-footer a:visited,
#colophon a,
.site-primary-footer-wrap a {
  color: #4A5568 !important;
  font-size: 0.90rem !important;
  text-decoration: none !important;
  transition: all var(--hsh-dur) var(--hsh-ease) !important;
  display: inline-block;
  padding: 2px 0 !important;
}

.site-footer a:hover,
#colophon a:hover,
.site-primary-footer-wrap a:hover {
  color: var(--hsh-primary) !important;
  font-weight: 600 !important;
  transform: translateX(4px) !important;
}

/* Footer logo: natural white background integration (no sticker box) */
.site-footer .widget_media_image,
.site-footer .ast-builder-html-element {
  margin-bottom: 16px !important;
}

.site-footer .widget_media_image img,
.site-footer img.attachment-full,
.site-footer .custom-logo {
  background: transparent !important;
  padding: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  border: none !important;
  max-width: 175px !important;
  height: auto !important;
  display: inline-block !important;
  margin-bottom: 16px !important;
}

/* WhatsApp support button (Clean, High Contrast, Visited-Safe) */
#block-16,
#block-16.widget {
  margin: 14px 0 18px 0 !important;
}

#block-16 a,
.site-footer a[href*="wa.me"],
.site-footer a[href*="whatsapp"],
.site-footer a[href*="api.whatsapp.com"],
.site-footer .whatsapp-btn,
.site-footer a.hsh-whatsapp-btn,
a.hsh-whatsapp-btn {
  background: #25D366 !important;
  color: #ffffff !important;
  padding: 12px 24px !important;
  border-radius: 50px !important;
  font-family: var(--hsh-font-body), sans-serif !important;
  font-weight: 600 !important;
  font-size: 0.92rem !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-shadow: 0 4px 14px rgba(37, 211, 102, 0.35) !important;
  margin: 0 !important;
  border: none !important;
  line-height: 1 !important;
  transform: none !important;
  transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease !important;
}

#block-16 a:link,
#block-16 a:visited,
#block-16 a:hover,
#block-16 a:active,
#block-16 a:focus,
#block-16 a *,
.site-footer a[href*="wa.me"]:link,
.site-footer a[href*="wa.me"]:visited,
.site-footer a[href*="wa.me"]:hover,
.site-footer a[href*="wa.me"]:active,
.site-footer a[href*="wa.me"]:focus,
.site-footer a[href*="wa.me"] *,
.site-footer a[href*="whatsapp"]:link,
.site-footer a[href*="whatsapp"]:visited,
.site-footer a[href*="whatsapp"]:hover,
.site-footer a[href*="whatsapp"]:active,
.site-footer a[href*="whatsapp"] *,
.site-footer a.hsh-whatsapp-btn:link,
.site-footer a.hsh-whatsapp-btn:visited,
.site-footer a.hsh-whatsapp-btn:hover,
.site-footer a.hsh-whatsapp-btn:active,
.site-footer a.hsh-whatsapp-btn:focus,
.site-footer a.hsh-whatsapp-btn * {
  color: #ffffff !important;
  text-decoration: none !important;
}

#block-16 a:hover,
.site-footer a[href*="wa.me"]:hover,
.site-footer a[href*="whatsapp"]:hover,
.site-footer a.hsh-whatsapp-btn:hover {
  background: #1ebc59 !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(37, 211, 102, 0.45) !important;
}

#block-16 a svg,
.site-footer a[href*="wa.me"] svg,
.site-footer a[href*="whatsapp"] svg,
.site-footer a.hsh-whatsapp-btn svg {
  width: 20px !important;
  height: 20px !important;
  fill: #ffffff !important;
  color: #ffffff !important;
  flex-shrink: 0 !important;
  display: block !important;
}

/* Footer social buttons */
.ast-footer-social-1-wrap,
.ast-footer-social-wrap {
  display: flex !important;
  gap: 12px !important;
  align-items: center !important;
  margin-top: 10px !important;
  width: 100% !important;
}

.ast-footer-social-wrap .ast-builder-social-element {
  color: #174229 !important;
  background: #f1f5f9 !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 50% !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  min-height: 42px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.2s ease !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04) !important;
}

.ast-footer-social-wrap .social-item-label {
  display: none !important;
}

.ast-footer-social-wrap .ast-builder-social-element:hover {
  background: #174229 !important;
  color: #ffffff !important;
  border-color: #174229 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(10, 109, 31, 0.25) !important;
}

.ast-footer-social-wrap .ast-builder-social-element svg {
  width: 18px !important;
  height: 18px !important;
  fill: currentColor !important;
}

/* Copyright bottom bar: Clean, seamless white with no stacked horizontal lines */
.site-below-footer-wrap,
.site-below-footer-wrap[data-section="section-below-footer-builder"] {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border: none !important;
  border-top: none !important;
  border-bottom: none !important;
  border-left: none !important;
  border-right: none !important;
  padding: 16px 24px 24px !important;
  box-shadow: none !important;
}

.site-below-footer-wrap .ast-builder-grid-row-container,
.site-below-footer-wrap .ast-builder-grid-row-container-inner,
.site-below-footer-wrap .site-below-footer-inner-wrap,
.site-below-footer-wrap .ast-builder-grid-row,
.site-below-footer-wrap .site-footer-section,
.site-below-footer-wrap .site-footer-below-section-1,
.site-below-footer-wrap .site-footer-below-section-2,
.site-below-footer-wrap .ast-footer-copyright,
.site-below-footer-wrap .ast-footer-html-1,
.site-below-footer-wrap .ast-builder-layout-element,
.ast-footer-bottom-bar,
.footer-copy,
.site-info {
  background: transparent !important;
  border: none !important;
  border-top: none !important;
  border-bottom: none !important;
  border-left: none !important;
  border-right: none !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  box-shadow: none !important;
}

.site-below-footer-wrap .ast-builder-grid-row-container-inner,
.site-below-footer-wrap .site-below-footer-inner-wrap {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.site-below-footer-wrap .ast-builder-grid-row {
  max-width: 1240px !important;
  margin: 0 auto !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  background: transparent !important;
  border: none !important;
}

.site-below-footer-wrap *,
.site-below-footer-wrap a,
.ast-footer-copyright,
.ast-footer-copyright p,
.ast-footer-copyright span,
.site-info * {
  color: #64748b !important;
  font-size: 0.85rem !important;
  font-family: var(--hsh-font-body) !important;
}

.site-below-footer-wrap a:hover {
  color: #174229 !important;
}

/* Offset payment card icons to prevent Zoho chat widget overlap */
.site-footer-below-section-2,
.ast-footer-html-1,
.site-below-footer-wrap img.wp-image-8578 {
  margin-right: 76px !important;
}


/* ══════════════════════════════════════════════════════════
   19. CATEGORY / ARCHIVE PAGES
══════════════════════════════════════════════════════════ */
.tax-product_cat .woocommerce-products-header,
.archive .page-header {
  background: linear-gradient(135deg, var(--hsh-primary) 0%, var(--hsh-primary-deep) 100%) !important;
  padding: 40px 20px !important;
  border-radius: var(--hsh-radius) !important;
  margin-bottom: 32px !important;
}

.tax-product_cat .woocommerce-products-header h1,
.archive .page-header .page-title {
  color: #ffffff !important;
  font-family: var(--hsh-font-head) !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

/* Shop ordering + results count bar */
.woocommerce .woocommerce-result-count,
.woocommerce-result-count {
  font-family: var(--hsh-font-body) !important;
  color: var(--hsh-text-muted) !important;
  font-size: 0.88rem !important;
}

.woocommerce .woocommerce-ordering select {
  font-family: var(--hsh-font-body) !important;
  border: 1.5px solid var(--hsh-border) !important;
  border-radius: var(--hsh-radius-xs) !important;
  padding: 8px 12px !important;
  color: var(--hsh-text) !important;
}

/* ══════════════════════════════════════════════════════════
   20. CARDS & BLOCK ELEMENTS
══════════════════════════════════════════════════════════ */

/* Astra content boxes */
.ast-author-box,
.ast-review-box,
.post-card {
  border-radius: var(--hsh-radius) !important;
  border: 1.5px solid var(--hsh-border) !important;
  box-shadow: var(--hsh-shadow-xs) !important;
  overflow: hidden;
}

/* Blog cards */
.ast-article-post,
.ast-blog-single-post {
  border-radius: var(--hsh-radius) !important;
  overflow: hidden !important;
  border: 1.5px solid var(--hsh-border) !important;
  box-shadow: var(--hsh-shadow-xs) !important;
  transition: transform var(--hsh-dur) var(--hsh-ease), box-shadow var(--hsh-dur) var(--hsh-ease) !important;
}

.ast-article-post:hover {
  transform: translateY(-4px) !important;
  box-shadow: var(--hsh-shadow) !important;
}

.ast-blog-single-post-title a {
  font-family: var(--hsh-font-head) !important;
  font-weight: 700 !important;
  color: var(--hsh-text) !important;
}

.ast-blog-single-post-title a:hover {
  color: var(--hsh-primary) !important;
}

/* Disable Sticky Header / Sticky Search */
.ast-sticky-active,
.ast-primary-sticky-header-active,
.ast-header-sticky,
.site-header.ast-sticky-active,
[class*="ast-sticky"] {
  position: static !important;
  box-shadow: none !important;
}

/* ══════════════════════════════════════════════════════════
   21. CUSTOMIZED HEADER SEARCH BUTTON & LIVE SEARCH MODAL
   ══════════════════════════════════════════════════════════ */

/* Suppress default clunky Astra search element completely */
.ast-header-search,
.ast-header-search *,
.ast-search-menu-icon,
.ast-search-menu-icon *,
.ast-header-search .search-form,
.ast-search-menu-icon.slide-search form,
.ast-search-menu-icon .ast-search-icon,
.ast-search-menu-icon a.astra-search-icon {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

/* Ensure WP Admin Bar is completely isolated from frontend button/input styles */
#wpadminbar,
#wpadminbar * {
  box-sizing: content-box !important;
}

#wpadminbar input,
#wpadminbar input[type="text"],
#wpadminbar input[type="submit"],
#wpadminbar button {
  min-height: 0 !important;
  height: auto !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  font-size: 13px !important;
  letter-spacing: normal !important;
  transform: none !important;
  line-height: normal !important;
}

#wpadminbar #adminbarsearch,
#wpadminbar #wp-admin-bar-search {
  display: none !important;
}

/* Header Search Element Wrapper */
.hsh-search-wrapper,
.hsh-mobile-search-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 4px !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: static !important;
  width: auto !important;
  height: auto !important;
  flex-shrink: 0 !important;
}

/* Pretty Looking Customized Search Icon Button */
/* Pretty Looking Customized Search Icon Button (Frosted White on Dark Green Nav) */
.hsh-header-search-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.15) !important;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
  color: #ffffff !important;
  cursor: pointer !important;
  padding: 0 !important;
  margin: 0 !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12) !important;
  vertical-align: middle !important;
  position: relative !important;
}

.hsh-header-search-btn svg,
.hsh-header-search-btn svg *,
.site-header-primary-section-right .hsh-header-search-btn svg,
.site-header-primary-section-right .hsh-header-search-btn svg * {
  width: 18px !important;
  height: 18px !important;
  stroke: #ffffff !important;
  stroke-width: 2.2 !important;
  fill: none !important;
  transition: all 0.2s ease !important;
}

.hsh-header-search-btn:hover {
  background: var(--hsh-gold, #ECC003) !important;
  border-color: var(--hsh-gold, #ECC003) !important;
  color: var(--hsh-primary-dark, #064E14) !important;
  transform: translateY(-1px) scale(1.08) !important;
  box-shadow: 0 4px 14px rgba(236, 192, 3, 0.4) !important;
}

.hsh-header-search-btn:hover svg,
.hsh-header-search-btn:hover svg *,
.site-header-primary-section-right .hsh-header-search-btn:hover svg,
.site-header-primary-section-right .hsh-header-search-btn:hover svg * {
  stroke: var(--hsh-primary-dark, #064E14) !important;
  fill: none !important;
  transform: rotate(-6deg) scale(1.05) !important;
}

.hsh-header-search-btn:focus-visible {
  outline: 2px solid var(--hsh-gold, #ECC003) !important;
  outline-offset: 2px !important;
}

/* Mobile Search Button */
.hsh-mobile-search-btn {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  margin-right: 4px !important;
}

/* Lock body scroll when search modal is open */
body.hsh-search-open {
  overflow: hidden !important;
}

/* Search Modal Overlay */
.hsh-search-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 9999999 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  padding: 40px 16px 20px 16px !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 0.25s ease, visibility 0.25s ease !important;
  box-sizing: border-box !important;
}

.hsh-search-modal.is-active {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Frosted Dark Backdrop */
.hsh-search-backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(15, 23, 42, 0.65) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  cursor: pointer !important;
}

/* Search Card Container */
.hsh-search-container {
  position: relative !important;
  z-index: 10 !important;
  width: 100% !important;
  max-width: 660px !important;
  transform: translateY(-24px) scale(0.98) !important;
  transition: transform 0.26s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.hsh-search-modal.is-active .hsh-search-container {
  transform: translateY(0) scale(1) !important;
}

.hsh-search-card {
  background: #ffffff !important;
  border-radius: 18px !important;
  border: 1.5px solid #e2e8f0 !important;
  box-shadow: 0 25px 60px -15px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(0, 0, 0, 0.05) !important;
  overflow: hidden !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.hsh-search-card:focus-within {
  border-color: var(--hsh-primary, #0A6D1F) !important;
  box-shadow: 0 25px 60px -15px rgba(0, 0, 0, 0.3), 0 0 0 3px rgba(10, 109, 31, 0.15) !important;
}

/* Search Bar Header: Clean flex row with zero overlap */
.hsh-search-header {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 16px 0 18px !important;
  height: 60px !important;
  border-bottom: 1.5px solid #edf2f7 !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

.hsh-search-input-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--hsh-primary, #0A6D1F) !important;
  flex: 0 0 auto !important;
  margin-right: 12px !important;
  pointer-events: none !important;
}

.hsh-search-input-icon svg,
.hsh-search-input-icon svg * {
  stroke: var(--hsh-primary, #0A6D1F) !important;
  fill: none !important;
}

.hsh-search-input,
.hsh-search-input:focus,
.hsh-search-input:focus-visible,
.hsh-search-input:active,
input.hsh-search-input,
input.hsh-search-input:focus,
input.hsh-search-input:focus-visible {
  flex: 1 1 auto !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  outline: none !important;
  outline-width: 0 !important;
  outline-style: none !important;
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
  font-family: var(--hsh-font-body) !important;
  font-size: 1.05rem !important;
  color: #1e293b !important;
  background: transparent !important;
  -webkit-appearance: none !important;
}

.hsh-search-input::-webkit-search-cancel-button,
.hsh-search-input::-webkit-search-decoration {
  -webkit-appearance: none !important;
  display: none !important;
}

.hsh-search-input::placeholder {
  color: #94a3b8 !important;
  font-size: 0.98rem !important;
}

/* Right Actions Container: Clear & Close side by side with gap */
.hsh-search-actions {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex: 0 0 auto !important;
  margin-left: 12px !important;
}

/* Clear Button */
.hsh-search-clear-btn {
  width: 26px !important;
  height: 26px !important;
  border-radius: 50% !important;
  background: #f1f5f9 !important;
  border: none !important;
  color: #64748b !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  padding: 0 !important;
  transition: all 0.15s ease !important;
}

.hsh-search-clear-btn:hover {
  background: #e2e8f0 !important;
  color: #1e293b !important;
}

.hsh-search-clear-btn svg,
.hsh-search-clear-btn svg * {
  fill: none !important;
  stroke: currentColor !important;
}

/* Close Button */
.hsh-search-close-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 6px 12px !important;
  border-radius: 8px !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  color: #64748b !important;
  cursor: pointer !important;
  font-family: var(--hsh-font-body) !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  transition: all 0.15s ease !important;
}

.hsh-search-close-btn:hover {
  background: #f1f5f9 !important;
  color: #0f172a !important;
  border-color: #cbd5e1 !important;
}

.hsh-search-close-btn svg,
.hsh-search-close-btn svg * {
  fill: none !important;
  stroke: currentColor !important;
}

.hsh-search-esc-badge {
  font-size: 0.72rem !important;
  letter-spacing: 0.04em !important;
  color: #94a3b8 !important;
}

/* Search Body Area */
.hsh-search-body {
  max-height: calc(85vh - 120px) !important;
  overflow-y: auto !important;
  scrollbar-width: thin !important;
  scrollbar-color: #cbd5e1 transparent !important;
  padding: 16px 20px 20px 20px !important;
  background: #fcfdfc !important;
}

/* Quick Search Suggestions */
.hsh-search-suggestions {
  padding: 6px 0 !important;
}

.hsh-search-section-label {
  font-family: var(--hsh-font-head) !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: #64748b !important;
  margin-bottom: 12px !important;
}

.hsh-search-tags {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.hsh-search-tag {
  display: inline-flex !important;
  align-items: center !important;
  padding: 7px 14px !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  font-family: var(--hsh-font-body) !important;
  font-size: 0.86rem !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  color: #334155 !important;
  cursor: pointer !important;
  transition: all 0.18s ease !important;
}

.hsh-search-tag:hover {
  background: var(--hsh-primary-light, #f0fdf4) !important;
  border-color: var(--hsh-primary, #0A6D1F) !important;
  color: var(--hsh-primary, #0A6D1F) !important;
  transform: translateY(-1px) !important;
}

/* Loading State */
.hsh-search-loading {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  padding: 36px 16px !important;
  color: #64748b !important;
  font-family: var(--hsh-font-body) !important;
  font-size: 0.92rem !important;
}

.hsh-search-spinner {
  width: 22px !important;
  height: 22px !important;
  border: 2.5px solid #e2e8f0 !important;
  border-top-color: var(--hsh-primary, #0A6D1F) !important;
  border-radius: 50% !important;
  animation: hshSearchSpin 0.7s linear infinite !important;
}

@keyframes hshSearchSpin {
  to { transform: rotate(360deg); }
}

/* Results List */
.hsh-search-results-top {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding-bottom: 12px !important;
  margin-bottom: 10px !important;
  border-bottom: 1px solid #f1f5f9 !important;
}

.hsh-search-count-label {
  font-family: var(--hsh-font-head) !important;
  font-size: 0.76rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  color: #64748b !important;
}

.hsh-search-view-all-link {
  font-family: var(--hsh-font-body) !important;
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  color: var(--hsh-primary, #0A6D1F) !important;
  text-decoration: none !important;
  transition: color 0.15s ease !important;
}

.hsh-search-view-all-link:hover {
  color: var(--hsh-primary-dark, #064E14) !important;
  text-decoration: underline !important;
}

.hsh-search-items-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}

/* Individual Product Result Item */
.hsh-search-item {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 10px 14px !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  border: 1px solid #edf2f7 !important;
  text-decoration: none !important;
  transition: all 0.18s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.hsh-search-item:hover {
  background: #f8faf6 !important;
  border-color: var(--hsh-primary, #0A6D1F) !important;
  transform: translateX(3px) !important;
  box-shadow: 0 4px 12px rgba(10, 109, 31, 0.08) !important;
}

.hsh-search-item-thumb {
  width: 50px !important;
  height: 50px !important;
  min-width: 50px !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.hsh-search-item-thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.hsh-search-item-info {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.hsh-search-item-cat {
  display: inline-block !important;
  font-family: var(--hsh-font-body) !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  color: var(--hsh-primary, #0A6D1F) !important;
  margin-bottom: 2px !important;
}

.hsh-search-item-title {
  font-family: var(--hsh-font-body) !important;
  font-size: 0.94rem !important;
  font-weight: 600 !important;
  color: #1e293b !important;
  line-height: 1.35 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.hsh-search-item-title mark {
  background: rgba(236, 192, 3, 0.28) !important;
  color: #0f172a !important;
  font-weight: 700 !important;
  border-radius: 3px !important;
  padding: 1px 3px !important;
}

.hsh-search-item-pricing {
  text-align: right !important;
  flex-shrink: 0 !important;
}

.hsh-search-item-price {
  font-family: var(--hsh-font-body) !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  color: #0f172a !important;
}

.hsh-search-item-stock {
  display: inline-block !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  color: #16a34a !important;
  margin-top: 2px !important;
}

/* Results Footer Button */
.hsh-search-results-footer {
  margin-top: 14px !important;
}

.hsh-search-footer-action-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  padding: 12px 18px !important;
  border-radius: 10px !important;
  background: var(--hsh-gold, #ECC003) !important;
  color: var(--hsh-primary-dark, #064E14) !important;
  font-family: var(--hsh-font-body) !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  box-shadow: 0 2px 8px rgba(236, 192, 3, 0.2) !important;
}

.hsh-search-footer-action-btn:hover {
  background: var(--hsh-gold-hover, #d4ad03) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 14px rgba(236, 192, 3, 0.3) !important;
}

/* Empty State Box */
.hsh-search-empty-box {
  padding: 40px 16px !important;
  text-align: center !important;
}

.hsh-search-empty-icon {
  font-size: 2.2rem !important;
  margin-bottom: 10px !important;
}

.hsh-search-empty-title {
  font-family: var(--hsh-font-head) !important;
  font-size: 1.02rem !important;
  font-weight: 700 !important;
  color: #1e293b !important;
  margin-bottom: 6px !important;
}

.hsh-search-empty-hint {
  font-family: var(--hsh-font-body) !important;
  font-size: 0.85rem !important;
  color: #64748b !important;
}

@media (max-width: 767px) {
  .hsh-search-modal {
    padding: 16px 12px !important;
  }
  .hsh-search-container {
    margin-top: 10px !important;
  }
  .hsh-search-input {
    height: 50px !important;
    font-size: 0.98rem !important;
    padding: 0 84px 0 40px !important;
  }
  .hsh-search-close-btn {
    padding: 4px 8px !important;
  }
  .hsh-search-esc-badge {
    display: none !important;
  }
}



/* General search inputs outside the header (e.g. sidebar, shop) */
.site-content .search-form input[type="search"],
.widget .search-form input[type="search"] {
  font-family: var(--hsh-font-body) !important;
  border: 1.5px solid var(--hsh-border) !important;
  border-radius: var(--hsh-radius-pill) !important;
  padding: 10px 18px !important;
  color: var(--hsh-text) !important;
}

.site-content .search-form input[type="search"]:focus,
.widget .search-form input[type="search"]:focus {
  border-color: var(--hsh-primary) !important;
  box-shadow: 0 0 0 3px rgba(10,109,31,0.12) !important;
  outline: none !important;
}

/* ══════════════════════════════════════════════════════════
   22. SCROLL-TO-TOP BUTTON
══════════════════════════════════════════════════════════ */
#ast-scroll-top,
.ast-scroll-top {
  background: var(--hsh-primary) !important;
  color: #ffffff !important;
  border-radius: var(--hsh-radius-sm) !important;
  box-shadow: var(--hsh-shadow) !important;
  transition: background var(--hsh-dur), transform var(--hsh-dur) var(--hsh-ease-spring) !important;
}

#ast-scroll-top:hover,
.ast-scroll-top:hover {
  background: var(--hsh-gold) !important;
  transform: translateY(-3px) !important;
}

/* ══════════════════════════════════════════════════════════
   23. WOOCOMMERCE BLOCKS (GUTENBERG)
══════════════════════════════════════════════════════════ */
.wp-block-woocommerce-product-template,
.wc-block-grid__products {
  font-family: var(--hsh-font-body) !important;
}

/* ══════════════════════════════════════════════════════════
   WooCommerce Price Filter Block & Widget (Pixel-Perfect)
══════════════════════════════════════════════════════════ */
.wp-block-woocommerce-price-filter,
.wc-block-price-filter,
.wc-block-components-price-slider,
.widget_price_filter {
  padding: 8px 6px !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

.wp-block-woocommerce-price-filter h3,
.wc-block-price-filter h3,
.wc-block-components-price-slider h3,
.widget_price_filter .widget-title {
  font-family: var(--hsh-font-head) !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: var(--hsh-text) !important;
  margin-bottom: 16px !important;
}

/* Slider Track & Range Input — Ensure thumb circles never get cut off */
.wc-block-price-filter__range-input-wrapper,
.wc-block-components-price-slider__range-input-wrapper {
  margin: 12px 10px 24px 10px !important;
  padding: 0 !important;
  position: relative !important;
  overflow: visible !important;
}

.wc-block-price-filter__range-input,
.wc-block-components-price-slider__range-input {
  overflow: visible !important;
}

.wc-block-price-filter__range-input-progress,
.wc-block-components-price-slider__range-input-progress {
  background: var(--hsh-primary) !important;
  height: 4px !important;
  border-radius: var(--hsh-radius-pill) !important;
}

/* Slider Thumbs */
.wc-block-price-filter__range-input::-webkit-slider-thumb,
.wc-block-components-price-slider__range-input::-webkit-slider-thumb {
  background: var(--hsh-primary-dark) !important;
  border: 2.5px solid #ffffff !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.25) !important;
  cursor: pointer !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
}

.wc-block-price-filter__range-input::-moz-range-thumb,
.wc-block-components-price-slider__range-input::-moz-range-thumb {
  background: var(--hsh-primary-dark) !important;
  border: 2.5px solid #ffffff !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.25) !important;
  cursor: pointer !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
}

/* Price Controls & Inputs Container */
.wc-block-price-filter__controls,
.wc-block-components-price-slider__controls {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 12px !important;
  width: 100% !important;
  margin-top: 14px !important;
  box-sizing: border-box !important;
}

/* Amount Input Wrapper */
.wc-block-price-filter__amount,
.wc-block-components-price-slider__amount,
.wc-block-formatted-money-amount {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  flex: 1 1 0% !important;
  min-width: 0 !important;
  max-width: none !important;
  width: 50% !important;
  box-sizing: border-box !important;
}

/* Input Fields — Generous internal space and no text truncation */
.wc-block-price-filter__amount input,
.wc-block-components-price-slider__amount input,
.wc-block-formatted-money-amount input,
.wc-block-price-filter__amount-input,
.wc-block-components-price-slider__amount-input {
  width: 100% !important;
  min-width: 80px !important;
  max-width: 100% !important;
  height: 42px !important;
  padding: 6px 10px !important;
  font-family: var(--hsh-font-body) !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  color: var(--hsh-text) !important;
  text-align: center !important;
  background: var(--hsh-white) !important;
  border: 1.5px solid var(--hsh-border) !important;
  border-radius: var(--hsh-radius-sm) !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  white-space: nowrap !important;
  overflow: visible !important;
}

.wc-block-price-filter__amount input:focus,
.wc-block-components-price-slider__amount input:focus,
.wc-block-formatted-money-amount input:focus {
  border-color: var(--hsh-primary) !important;
  box-shadow: 0 0 0 2px rgba(10, 109, 31, 0.15) !important;
  outline: none !important;
}

/* Min. Price / Max. Price Labels */
.wc-block-price-filter__label,
.wc-block-components-price-slider__label,
.wc-block-price-filter__amount-label {
  font-family: var(--hsh-font-body) !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  color: var(--hsh-text-muted) !important;
  text-align: center !important;
  margin-top: 6px !important;
  margin-bottom: 0 !important;
  display: block !important;
  white-space: nowrap !important;
  width: 100% !important;
}

/* Classic WooCommerce Price Filter Widget */
.widget_price_filter .price_slider_wrapper .ui-slider {
  margin: 12px 10px 18px 10px !important;
  background: #e2ede5 !important;
  height: 5px !important;
  border: none !important;
  border-radius: 999px !important;
}

.widget_price_filter .price_slider_wrapper .ui-slider .ui-slider-range {
  background: var(--hsh-primary) !important;
  border-radius: 999px !important;
}

.widget_price_filter .price_slider_wrapper .ui-slider .ui-slider-handle {
  background: var(--hsh-primary-dark) !important;
  border: 2px solid #ffffff !important;
  border-radius: 50% !important;
  width: 16px !important;
  height: 16px !important;
  top: -5.5px !important;
  cursor: pointer !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.2) !important;
}

.widget_price_filter .price_slider_amount {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  color: var(--hsh-text) !important;
  margin-top: 10px !important;
}

.widget_price_filter .price_slider_amount .button {
  padding: 6px 14px !important;
  font-size: 0.78rem !important;
  border-radius: var(--hsh-radius-sm) !important;
}

/* Checkout blocks */
.wc-block-checkout__contact-fields h2,
.wc-block-checkout__shipping-fields h2,
.wc-block-checkout__payment h2 {
  font-family: var(--hsh-font-head) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  font-size: 0.95rem !important;
  color: var(--hsh-text) !important;
}

/* ══════════════════════════════════════════════════════════
   24. ELEMENTOR & HOMEPAGE BRAND BOOK OVERRIDES
══════════════════════════════════════════════════════════ */
.elementor-heading-title,
.elementor-icon-box-title,
.elementor-image-box-title {
  font-family: var(--hsh-font-head) !important;
  letter-spacing: -0.02em !important;
  color: var(--hsh-text);
}

.elementor-icon-box-description,
.elementor-image-box-description,
.elementor-widget-text-editor {
  font-family: var(--hsh-font-body) !important;
}

.elementor-button,
.elementor-button-link {
  font-family: var(--hsh-font-body) !important;
  font-weight: 700 !important;
  border-radius: var(--hsh-radius-sm) !important;
  letter-spacing: 0.01em;
  min-height: 48px !important;
  background-color: var(--hsh-primary) !important;
  color: #ffffff !important;
  box-shadow: var(--hsh-shadow-xs) !important;
  transition:
    background var(--hsh-dur) var(--hsh-ease),
    transform var(--hsh-dur) var(--hsh-ease-spring),
    box-shadow var(--hsh-dur) var(--hsh-ease) !important;
}

.elementor-button:hover,
.elementor-button-link:hover {
  background-color: var(--hsh-gold) !important;
  color: var(--hsh-primary-dark) !important;
  transform: translateY(-2px) !important;
  box-shadow: var(--hsh-shadow-gold) !important;
}

/* Feature 4-box banner (Fast Shipping, Premium Quality, etc.) */
.elementor-element-966d6bb,
.elementor-element-966d6bb.e-con,
.elementor-element-966d6bb.e-parent {
  max-width: 1200px !important;
  width: calc(100% - 48px) !important;
  margin: 0 auto 48px auto !important;
  background: linear-gradient(135deg, #064413 0%, #0A6D1F 55%, #085518 100%) !important;
  border-radius: 20px !important;
  padding: 24px 22px !important;
  box-shadow: 0 16px 40px -8px rgba(10, 109, 31, 0.28), 0 4px 12px rgba(0, 0, 0, 0.06) !important;
  box-sizing: border-box !important;
  position: relative !important;
  overflow: hidden !important;
}

.elementor-element-966d6bb .e-con-inner {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  justify-content: space-between !important;
  align-items: stretch !important;
  gap: 16px !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
}

/* Eliminate all Elementor dark overlays on child columns */
.elementor-element-966d6bb .e-child::before,
.elementor-element-966d6bb .e-child::after,
.elementor-element-ab3b0ab::before,
.elementor-element-d6c3c68::before,
.elementor-element-4236095::before,
.elementor-element-c3254ca::before {
  display: none !important;
  content: none !important;
  background: none !important;
  opacity: 0 !important;
}

/* Clean, radiant glass cards inside feature bar */
.elementor-element-966d6bb .e-child,
.elementor-element-ab3b0ab,
.elementor-element-d6c3c68,
.elementor-element-4236095,
.elementor-element-c3254ca {
  flex: 1 1 0 !important;
  min-width: 0 !important;
  background: rgba(255, 255, 255, 0.10) !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  border-radius: 16px !important;
  padding: 18px 16px !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  transition: all 0.28s var(--hsh-ease) !important;
}

.elementor-element-966d6bb .e-child:hover,
.elementor-element-ab3b0ab:hover,
.elementor-element-d6c3c68:hover,
.elementor-element-4236095:hover,
.elementor-element-c3254ca:hover {
  background: rgba(255, 255, 255, 0.18) !important;
  border-color: rgba(236, 192, 3, 0.6) !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16) !important;
}

.elementor-element-966d6bb .elementor-icon-box-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}

/* Vibrant Harvest Gold Icon Badge */
.elementor-element-966d6bb .elementor-icon-box-icon {
  margin: 0 !important;
  padding: 0 !important;
  flex: 0 0 44px !important;
  width: 44px !important;
  height: 44px !important;
  background: rgba(236, 192, 3, 0.20) !important;
  border: 1px solid rgba(236, 192, 3, 0.40) !important;
  border-radius: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.25s ease !important;
}

.elementor-element-966d6bb .elementor-icon,
.elementor-element-966d6bb .elementor-icon i,
.elementor-element-966d6bb .elementor-icon svg {
  color: #ECC003 !important;
  fill: #ECC003 !important;
  font-size: 1.25rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
}

.elementor-element-966d6bb .e-child:hover .elementor-icon-box-icon {
  background: #ECC003 !important;
  transform: scale(1.08) !important;
}

.elementor-element-966d6bb .e-child:hover .elementor-icon i,
.elementor-element-966d6bb .e-child:hover .elementor-icon svg {
  color: #064413 !important;
  fill: #064413 !important;
}

.elementor-element-966d6bb .elementor-icon-box-content {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.elementor-element-966d6bb .elementor-icon-box-title {
  color: #ffffff !important;
  font-family: var(--hsh-font-head) !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  letter-spacing: -0.01em !important;
  line-height: 1.25 !important;
  margin: 0 0 3px 0 !important;
}

.elementor-element-966d6bb .elementor-icon-box-title a {
  color: #ffffff !important;
  text-decoration: none !important;
}

.elementor-element-966d6bb .elementor-icon-box-description {
  color: rgba(255, 255, 255, 0.85) !important;
  font-family: var(--hsh-font-body) !important;
  font-size: 0.80rem !important;
  line-height: 1.35 !important;
  margin: 0 !important;
}

@media (max-width: 1024px) and (min-width: 769px) {
  .elementor-element-966d6bb .e-con-inner {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 14px !important;
  }
}

@media (max-width: 768px) {
  .elementor-element-966d6bb .e-con-inner {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }
}

/* ══════════════════════════════════════════════════════════
   HERO SECTION REVAMP (Modern Organic Marketplace Hero)
   Compact Spacing: Reduced Up and Down
   ══════════════════════════════════════════════════════════ */

/* Eliminate Astra's default top gap on homepage content */
.home #content.site-content,
.home .site-content,
.home #content .ast-container,
.home .ast-container,
.home .site-main,
.home .entry-content,
.home .entry-content .elementor {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

.elementor-element-3849851,
.elementor-element-3849851.e-con,
.elementor-element-3849851.e-parent {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 20px 0 !important;
  --margin-top: 0px !important;
  --margin-bottom: 20px !important;
  --margin-left: 0px !important;
  --margin-right: 0px !important;
  background: radial-gradient(circle at 18% 45%, rgba(236, 192, 3, 0.12) 0%, transparent 45%),
              radial-gradient(circle at 85% 25%, rgba(10, 109, 31, 0.08) 0%, transparent 40%),
              linear-gradient(180deg, #F8FAF6 0%, #FFFFFF 100%) !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 32px 0 !important;
  --padding-top: 32px !important;
  --padding-bottom: 32px !important;
  --padding-left: 0px !important;
  --padding-right: 0px !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  position: relative !important;
  overflow: hidden !important;
}

.elementor-element-3849851 .e-con-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 32px !important;
  width: 100% !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 0 28px !important;
  box-sizing: border-box !important;
}

/* Left Column: 3 Harvest Blends Pouches */
.elementor-element-3849851 .elementor-element-28c5393 {
  flex: 1 1 48% !important;
  max-width: 48% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
}

/* Soft glowing aura behind the products */
.elementor-element-3849851 .elementor-element-429782a {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.elementor-element-3849851 .elementor-element-429782a::before {
  content: '' !important;
  position: absolute !important;
  width: 85% !important;
  height: 85% !important;
  background: radial-gradient(circle, rgba(236, 192, 3, 0.20) 0%, rgba(10, 109, 31, 0.08) 50%, transparent 72%) !important;
  border-radius: 50% !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

/* 3D Drop-Shadow on the Pouches */
.elementor-element-3849851 .elementor-element-429782a img {
  position: relative !important;
  z-index: 1 !important;
  max-width: 100% !important;
  height: auto !important;
  filter: drop-shadow(0 16px 24px rgba(10, 109, 31, 0.20)) drop-shadow(0 4px 10px rgba(0, 0, 0, 0.08)) !important;
  transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
}

.elementor-element-3849851 .elementor-element-429782a:hover img {
  transform: translateY(-4px) scale(1.02) !important;
}

/* Right Column: Content */
.elementor-element-3849851 .elementor-element-2b8fc88 {
  flex: 1 1 52% !important;
  max-width: 52% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  padding-left: 10px !important;
}

/* Leaf Doodle Brand Mark */
.elementor-element-3849851 .elementor-element-e88e1f0 {
  margin-bottom: 6px !important;
}

.elementor-element-3849851 .elementor-element-e88e1f0 img {
  width: 50px !important;
  height: auto !important;
  filter: drop-shadow(0 2px 6px rgba(10, 109, 31, 0.25)) !important;
}

/* Headline */
.elementor-element-3849851 .elementor-heading-title,
.elementor-element-3849851 h5.elementor-heading-title {
  font-family: var(--hsh-font-head) !important;
  font-size: clamp(2.2rem, 3.8vw, 3.2rem) !important;
  font-weight: 800 !important;
  color: #064413 !important;
  line-height: 1.12 !important;
  letter-spacing: -0.03em !important;
  margin: 0 0 8px 0 !important;
}

/* Sub-headline value proposition paragraph */
.elementor-element-3849851 .elementor-element-a213dcc::after {
  content: 'Experience hand-harvested Jamaican superfood smoothies, nutrient-packed blends, and premium organic seeds grown in rich island soil and delivered fresh to your door.' !important;
  display: block !important;
  font-family: var(--hsh-font-body) !important;
  font-size: 0.98rem !important;
  font-weight: 450 !important;
  line-height: 1.55 !important;
  color: #4B5563 !important;
  margin-top: 8px !important;
  margin-bottom: 18px !important;
  max-width: 500px !important;
}

/* High-Converting CTA Button */
.elementor-element-3849851 .elementor-button,
.elementor-element-3849851 .elementor-element-a1c6cd2 .elementor-button {
  background: linear-gradient(135deg, #064413 0%, #0A6D1F 100%) !important;
  color: #ffffff !important;
  font-family: var(--hsh-font-body) !important;
  font-size: 0.95rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  padding: 13px 32px !important;
  border-radius: var(--hsh-radius-pill) !important;
  box-shadow: 0 6px 20px rgba(10, 109, 31, 0.28) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  border: none !important;
  transition: all 0.28s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor-element-3849851 .elementor-button:hover,
.elementor-element-3849851 .elementor-element-a1c6cd2 .elementor-button:hover {
  background: #ECC003 !important;
  color: #064413 !important;
  transform: translateY(-2px) scale(1.02) !important;
  box-shadow: 0 10px 28px rgba(236, 192, 3, 0.45) !important;
}

.elementor-element-3849851 .elementor-button .elementor-button-icon {
  font-size: 1rem !important;
  margin-right: 2px !important;
}

/* Trust Proof Under Button */
.elementor-element-3849851 .elementor-element-a1c6cd2::after {
  content: '★ ★ ★ ★ ★  Rated 4.9/5 by 1,200+ Jamaican shoppers' !important;
  display: block !important;
  font-family: var(--hsh-font-body) !important;
  font-size: 0.80rem !important;
  font-weight: 600 !important;
  color: #6B7280 !important;
  margin-top: 10px !important;
  letter-spacing: 0.02em !important;
}

/* Hide empty spacer container 31132d43 directly below hero */
.elementor-element-31132d43 {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
}

/* 4 Features Bar directly below hero: 20px space between hero and this section */
.elementor-element-966d6bb {
  margin-top: 0 !important;
  margin-bottom: 24px !important;
}


/* Mobile & Tablet Responsiveness */
@media (max-width: 921px) {
  .elementor-element-3849851 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 20px 0 !important;
    --margin-top: 0px !important;
    --margin-bottom: 20px !important;
    --margin-left: 0px !important;
    --margin-right: 0px !important;
    border-radius: 0 !important;
    border: none !important;
    box-shadow: none !important;
    padding: 28px 16px !important;
    --padding-top: 28px !important;
    --padding-bottom: 28px !important;
    --padding-left: 16px !important;
    --padding-right: 16px !important;
  }

  .elementor-element-3849851 .e-con-inner {
    flex-direction: column-reverse !important;
    text-align: center !important;
    gap: 28px !important;
    padding: 0 !important;
    max-width: 100% !important;
  }

  .elementor-element-3849851 .elementor-element-28c5393,
  .elementor-element-3849851 .elementor-element-2b8fc88 {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 0 !important;
    align-items: center !important;
  }

  .elementor-element-3849851 .elementor-element-a213dcc::after {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .elementor-element-3849851 .elementor-button,
  .elementor-element-3849851 .elementor-element-a1c6cd2 .elementor-button {
    width: 100% !important;
    max-width: 300px !important;
    justify-content: center !important;
  }
}

/* Promo Banner: Get 10% Off On Your First Purchase (Contained Card — Never Edge-to-Edge) */
.elementor-element-28fc7dc {
  max-width: 1200px !important;
  width: calc(100% - 48px) !important;
  margin: 56px auto !important;
  background: linear-gradient(135deg, #064413 0%, #0A6D1F 50%, #085518 100%) !important;
  border-radius: 20px !important;
  padding: 38px 48px !important;
  box-shadow: 0 16px 40px -8px rgba(10, 109, 31, 0.28), 0 4px 12px rgba(0, 0, 0, 0.08) !important;
  box-sizing: border-box !important;
  position: relative !important;
  overflow: hidden !important;
}

.elementor-element-28fc7dc::before {
  content: '' !important;
  position: absolute !important;
  top: -50% !important;
  right: -10% !important;
  width: 350px !important;
  height: 350px !important;
  background: radial-gradient(circle, rgba(236, 192, 3, 0.15) 0%, transparent 70%) !important;
  pointer-events: none !important;
}

.elementor-element-28fc7dc .e-con-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 24px !important;
  width: 100% !important;
  max-width: 100% !important;
}

.elementor-element-28fc7dc .elementor-element-477b54a {
  flex: 1 1 300px !important;
  width: auto !important;
}

.elementor-element-28fc7dc .elementor-heading-title {
  color: #ffffff !important;
  font-family: var(--hsh-font-head) !important;
  font-size: clamp(1.5rem, 3vw, 2.2rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.2 !important;
  margin: 0 !important;
}

.elementor-element-28fc7dc .elementor-element-bb7ca93 {
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
}

/* High-Contrast Harvest Gold CTA Button Inside 10% Off Banner */
.elementor-element-28fc7dc .elementor-button,
.elementor-element-6cc5796 .elementor-button {
  background: var(--hsh-gold) !important;
  color: var(--hsh-primary-dark) !important;
  font-family: var(--hsh-font-body) !important;
  font-weight: 800 !important;
  font-size: 0.95rem !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  border-radius: var(--hsh-radius-pill) !important;
  padding: 14px 34px !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.18) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  border: none !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor-element-28fc7dc .elementor-button:hover,
.elementor-element-6cc5796 .elementor-button:hover {
  background: #ffffff !important;
  color: var(--hsh-primary-dark) !important;
  transform: translateY(-3px) scale(1.02) !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.24) !important;
}

.elementor-element-28fc7dc .elementor-button .elementor-button-icon i,
.elementor-element-6cc5796 .elementor-button .elementor-button-icon i {
  color: var(--hsh-primary-dark) !important;
}

/* Promo Banners: From Seed to Harvest & Grow Fresh (Contained Cards) */
.elementor-element-29clomm,
.elementor-element-724be73 {
  max-width: 1200px !important;
  width: calc(100% - 48px) !important;
  margin: 48px auto !important;
  background: linear-gradient(135deg, #205a39 0%, #085518 100%) !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 14px 36px -6px rgba(8, 85, 24, 0.18) !important;
  box-sizing: border-box !important;
}

.elementor-element-29clomm .elementor-heading-title,
.elementor-element-724be73 .elementor-heading-title {
  color: #ffffff !important;
}

.elementor-element-29clomm p,
.elementor-element-724be73 p {
  color: rgba(255, 255, 255, 0.88) !important;
}

.elementor-element-29clomm .elementor-button,
.elementor-element-724be73 .elementor-button {
  background: var(--hsh-gold) !important;
  color: var(--hsh-primary-dark) !important;
  border-radius: var(--hsh-radius-pill) !important;
  font-weight: 800 !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15) !important;
  transition: all 0.25s ease !important;
}

.elementor-element-29clomm .elementor-button:hover,
.elementor-element-724be73 .elementor-button:hover {
  background: #ffffff !important;
  color: var(--hsh-primary-dark) !important;
  transform: translateY(-2px) !important;
}

/* ══════════════════════════════════════════════════════════
   CALLOUT CARDS (Farm Fresh, Fresh Vegetables, Fresh Products)
   Balanced Margins & Equal Grid Layout on All Sides
   ══════════════════════════════════════════════════════════ */

/* Basil Leaf decorative accent container */
.elementor-element-c6c5202 {
  max-width: 1240px !important;
  width: 100% !important;
  margin: 32px auto 0 auto !important;
  padding: 0 !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  background: transparent !important;
  position: relative !important;
  z-index: 2 !important;
}

.elementor-element-c6c5202 img {
  display: block !important;
  margin: 0 auto !important;
  max-width: 140px !important;
  height: auto !important;
  filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.08)) !important;
}

/* Three Cards Section Container — Balanced Margins on All Sides */
.elementor-element-d349891 {
  max-width: 1240px !important;
  width: calc(100% - 48px) !important;
  margin: -10px auto 48px auto !important;
  padding: 0 !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

/* Inner 3-column equal grid layout with balanced gaps and margins on all sides */
.elementor-element-d349891 > .e-con-inner {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 28px !important;
  width: 100% !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
  padding: 16px 0 24px 0 !important;
  align-items: stretch !important;
  box-sizing: border-box !important;
}

/* Each Individual Card (016cbfd = Farm Fresh, 620b583 = Fresh Vegetables, 6cb5657 = Fresh Products) */
.elementor-element-d349891 .elementor-element-016cbfd,
.elementor-element-d349891 .elementor-element-620b583,
.elementor-element-d349891 .elementor-element-6cb5657 {
  margin: 0 !important;
  background-color: #ffffff !important;
  border-radius: 18px !important;
  border: 1px solid #e5e7eb !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05) !important;
  padding: 32px 28px 180px 28px !important;
  position: relative !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  box-sizing: border-box !important;
  transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.28s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.28s ease !important;
}

.elementor-element-d349891 .elementor-element-016cbfd:hover,
.elementor-element-d349891 .elementor-element-620b583:hover,
.elementor-element-d349891 .elementor-element-6cb5657:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 16px 36px rgba(10, 109, 31, 0.12) !important;
  border-color: rgba(10, 109, 31, 0.25) !important;
}

/* Remove awkward nested inner boxes inside the cards */
.elementor-element-d349891 .elementor-widget-image-box {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 0 16px 0 !important;
  box-shadow: none !important;
  transform: none !important;
  width: 100% !important;
}

.elementor-element-d349891 .elementor-widget-image-box:hover {
  transform: none !important;
  box-shadow: none !important;
  border-color: transparent !important;
}

.elementor-element-d349891 .elementor-image-box-title {
  color: var(--hsh-primary-dark) !important;
  font-family: var(--hsh-font-head) !important;
  font-weight: 800 !important;
  font-size: 1.35rem !important;
  line-height: 1.25 !important;
  margin: 0 0 8px 0 !important;
}

.elementor-element-d349891 .elementor-image-box-description {
  color: #4b5563 !important;
  font-family: var(--hsh-font-body) !important;
  font-size: 0.92rem !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}

/* Clean Shop Now Button Placement */
.elementor-element-d349891 .elementor-widget-button {
  margin: 0 !important;
  padding: 0 !important;
  z-index: 2 !important;
  position: relative !important;
}

.elementor-element-d349891 .elementor-button {
  background: #0b6d20 !important;
  color: #ffffff !important;
  font-family: var(--hsh-font-body) !important;
  font-weight: 700 !important;
  font-size: 0.85rem !important;
  letter-spacing: 0.02em !important;
  text-transform: uppercase !important;
  border-radius: 50px !important;
  padding: 10px 22px !important;
  min-height: 40px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  box-shadow: 0 4px 12px rgba(11, 109, 32, 0.25) !important;
  transition: all 0.2s ease !important;
}

.elementor-element-d349891 .elementor-button:hover {
  background: var(--hsh-gold) !important;
  color: var(--hsh-primary-dark) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15) !important;
}

/* Tablet & Mobile Equal Margins */
@media (max-width: 921px) {
  .elementor-element-d349891 {
    width: calc(100% - 36px) !important;
    margin: 0 auto 36px auto !important;
  }
  .elementor-element-d349891 > .e-con-inner {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px !important;
  }
}

@media (max-width: 640px) {
  .elementor-element-d349891 {
    width: calc(100% - 24px) !important;
    margin: 0 auto 28px auto !important;
  }
  .elementor-element-d349891 > .e-con-inner {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  .elementor-element-d349891 .elementor-element-016cbfd,
  .elementor-element-d349891 .elementor-element-620b583,
  .elementor-element-d349891 .elementor-element-6cb5657 {
    padding: 28px 24px 160px 24px !important;
  }
}


/* Review Cards: Customers Reviews */
.elementor-element-ea9e0d9 {
  max-width: 1200px !important;
  width: calc(100% - 48px) !important;
  margin: 56px auto !important;
  border-radius: 20px !important;
  box-sizing: border-box !important;
}

.elementor-element-ea9e0d9 .elementor-testimonial {
  background: #ffffff !important;
  border: 1.5px solid var(--hsh-border) !important;
  border-radius: 16px !important;
  padding: 28px !important;
  box-shadow: var(--hsh-shadow-xs) !important;
}

/* Responsive Contained Margins for All Screen Widths */
@media (max-width: 768px) {
  .elementor-element-28fc7dc,
  .elementor-element-966d6bb,
  .elementor-element-29clomm,
  .elementor-element-724be73,
  .elementor-element-d349891,
  .elementor-element-ea9e0d9 {
    width: calc(100% - 24px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    border-radius: 16px !important;
  }

  .elementor-element-28fc7dc {
    padding: 32px 20px !important;
    text-align: center !important;
  }

  .elementor-element-28fc7dc .e-con-inner {
    flex-direction: column !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .elementor-element-28fc7dc .elementor-element-bb7ca93 {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
  }

  .elementor-element-28fc7dc .elementor-button,
  .elementor-element-6cc5796 .elementor-button {
    width: 100% !important;
    max-width: 280px !important;
    justify-content: center !important;
  }
}

/* Product Card Grids (Best Selling & Trending Products) */
.elementor-element-dcab615 .elementor-widget-container,
.elementor-widget-woocommerce-products ul.products {
  gap: 24px !important;
}

.elementor-element-dcab615 .e-con-inner {
  gap: 24px !important;
}

/* Featured Brands section polish */
.elementor-element-357f4cd {
  padding: 30px 20px !important;
  margin: 30px auto !important;
}

.elementor-element-357f4cd .elementor-heading-title {
  color: var(--hsh-text-muted) !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
}

.elementor-element-5f11061 .gallery-item img {
  border-radius: var(--hsh-radius-sm) !important;
  opacity: 0.85 !important;
  transition: opacity 0.2s ease, transform 0.2s ease !important;
}

.elementor-element-5f11061 .gallery-item img:hover {
  opacity: 1 !important;
  transform: scale(1.04) !important;
}

/* ══════════════════════════════════════════════════════════
   25. UTILITY CLASSES (available globally)
══════════════════════════════════════════════════════════ */
.hsh-text-primary  { color: var(--hsh-primary) !important; }
.hsh-text-gold     { color: var(--hsh-gold) !important; }
.hsh-text-muted    { color: var(--hsh-text-muted) !important; }
.hsh-bg-primary    { background: var(--hsh-primary) !important; }
.hsh-bg-gold       { background: var(--hsh-gold) !important; }
.hsh-bg-surface    { background: var(--hsh-surface) !important; }
.hsh-font-head     { font-family: var(--hsh-font-head) !important; }
.hsh-font-body     { font-family: var(--hsh-font-body) !important; }

/* ══════════════════════════════════════════════════════════
   26. MOBILE RESPONSIVE OVERRIDES
══════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
  /* Prevent text from being too small */
  body { font-size: 15px !important; }

  /* Product cards full width on small screens */
  .woocommerce ul.products li.product {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* Checkout fields stack properly */
  .woocommerce-checkout .col2-set .col-1,
  .woocommerce-checkout .col2-set .col-2 {
    width: 100% !important;
    float: none !important;
  }

  /* Footer columns stack */
  .ast-footer-layout .footer-widget-area {
    width: 100% !important;
    text-align: center !important;
  }

  /* Nav buttons full width */
  .button, .ast-btn {
    padding: 13px 18px !important;
  }
}

@media (max-width: 480px) {
  h1 { font-size: clamp(1.6rem, 7vw, 2.2rem) !important; }
  h2 { font-size: clamp(1.3rem, 5.5vw, 1.8rem) !important; }
  h3 { font-size: clamp(1.1rem, 4.5vw, 1.4rem) !important; }
}

/* ══════════════════════════════════════════════════════════
   27. REDUCED MOTION
══════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
  *,
  ::before,
  ::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* ══════════════════════════════════════════════════════════
   28. FOCUS VISIBILITY (ACCESSIBILITY)
══════════════════════════════════════════════════════════ */
:focus-visible {
  outline: 3px solid var(--hsh-gold) !important;
  outline-offset: 2px !important;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid var(--hsh-primary) !important;
  outline-offset: 2px !important;
}

/* ══════════════════════════════════════════════════════════
   29. REMOVE PAYMENT OPTIONS FROM SINGLE PRODUCT & CART PAGES
   (Payment Options Reserved Strictly for Final Checkout)
   ══════════════════════════════════════════════════════════ */
.single-product .ast-single-product-payments,
.single-product fieldset.ast-single-product-payments,
.single-product .ppc-button-wrapper,
.single-product #ppc-button-ppcp-gateway,
.single-product .wcppec-checkout-buttons__separator,
.single-product .payment_methods,
.single-product #payment,
.single-product .paypal-buttons,
.single-product .express-checkout-button,
.single-product [id*="ppc-button"],
.single-product [class*="ppc-button"],
.single-product [class*="paypal"],
.single-product [id*="paypal"],
.single-product .woocommerce-payment-box,
.single-product .wc-stripe-payment-request-wrapper,
.single-product #wc-stripe-payment-request-wrapper,
.single-product .tilopay-payment-button,
.single-product .giftup-cart-subtotal-td,
.woocommerce-cart .ppc-button-wrapper,
.woocommerce-cart #ppc-button-ppcp-gateway,
.woocommerce-cart .ast-single-product-payments {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

/* ══════════════════════════════════════════════════════════
   30. SEED PRODUCTS: VARIATION SWATCHES & OPTIONS STYLING
   ══════════════════════════════════════════════════════════ */

/* Seed Variation Swatches & Option Buttons Styling */
.hsh-seed-options-container,
.single-product .cfvsw-swatches-container[swatches-attr="attribute_size"] {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 12px 0 18px 0 !important;
  padding: 0 !important;
}

.hsh-seed-option-btn,
.single-product .cfvsw-swatches-container[swatches-attr="attribute_size"] .cfvsw-swatches-option {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 72px !important;
  min-height: 38px !important;
  padding: 6px 14px !important;
  background: #ffffff !important;
  border: 1px solid #d1d5db !important;
  border-radius: 4px !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
  transition: all 0.18s cubic-bezier(0.4, 0, 0.2, 1) !important;
  font-family: var(--hsh-font-body) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #374151 !important;
  line-height: 1.2 !important;
  user-select: none !important;
  -webkit-user-select: none !important;
}

.hsh-seed-option-btn .cfvsw-swatch-inner,
.single-product .cfvsw-swatches-container[swatches-attr="attribute_size"] .cfvsw-swatch-inner {
  font-family: var(--hsh-font-body) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: inherit !important;
  white-space: nowrap !important;
  letter-spacing: 0.01em !important;
}

.hsh-seed-option-btn:hover,
.single-product .cfvsw-swatches-container[swatches-attr="attribute_size"] .cfvsw-swatches-option:hover {
  border-color: #4b5563 !important;
  color: #111827 !important;
}

.hsh-seed-option-btn.cfvsw-selected-swatch,
.hsh-seed-option-btn.active,
.single-product .cfvsw-swatches-container[swatches-attr="attribute_size"] .cfvsw-selected-swatch {
  border-color: #111827 !important;
  border-width: 1.5px !important;
  color: #111827 !important;
  font-weight: 600 !important;
}

.hsh-seed-option-btn:focus-visible {
  outline: 2px solid var(--hsh-primary) !important;
  outline-offset: 2px !important;
}

/* Ensure seed variation swatches appear ONLY on detailed product pages, never on home or catalog loops */
body:not(.single-product) .cfvsw_variations_form,
body:not(.single-product) .cfvsw-shop-variations,
body:not(.single-product) .cfvsw-swatches-container,
body:not(.single-product) .cfvsw-shop-container,
body:not(.single-product) .cfvsw-hidden-select,
.home .cfvsw_variations_form,
.home .cfvsw-shop-variations,
.home .cfvsw-swatches-container,
.home .cfvsw-shop-container,
.home .cfvsw-hidden-select {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

/* ─────────────────────────────────────────────────────────
 * HEADER TOP-BAR REFER A FRIEND & SOCIAL MEDIA ICONS REMOVAL
 * ───────────────────────────────────────────────────────── */
.ast-above-header-bar .ast-builder-html-1,
.ast-mobile-header-wrap .ast-builder-html-1,
.ast-header-html-1,
.ast-above-header-bar [class*="html-1"],
.ast-above-header-bar .ast-header-social-1-wrap,
.ast-above-header-bar [data-section="section-hb-social-icons-1"],
.ast-mobile-header-wrap [data-section="section-hb-social-icons-1"],
.ast-above-header-bar {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  height: 0 !important;
  min-height: 0 !important;
}

.ast-above-header-wrap {
  display: none !important;
}

/* ─────────────────────────────────────────────────────────
 * FOOTER SOCIAL MEDIA ICONS — BRAND REDESIGN
 * ───────────────────────────────────────────────────────── */
.site-footer [data-section="section-fb-social-icons-1"],
.site-footer .ast-footer-social-wrap {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  margin-top: 20px !important;
  width: 100% !important;
}

.site-footer [data-section="section-fb-social-icons-1"]::before {
  content: "Follow Us" !important;
  display: block !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: #475569 !important;
  margin-bottom: 10px !important;
}

.site-footer .footer-social-inner-wrap {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  text-align: left !important;
}

.site-footer .ast-footer-social-wrap .ast-builder-social-element {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 44px !important;
  padding: 10px 18px !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: #1e293b !important;
  text-decoration: none !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1) !important;
  border: 1px solid #cbd5e1 !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06) !important;
}

.site-footer .ast-footer-social-wrap .ast-builder-social-element .social-item-label {
  color: #1e293b !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  transition: color 0.2s ease !important;
}

.site-footer .ast-footer-social-wrap .ast-builder-social-element svg {
  width: 18px !important;
  height: 18px !important;
  transition: transform 0.2s ease, fill 0.2s ease !important;
  flex-shrink: 0 !important;
}

/* Facebook Badge */
.site-footer .ast-footer-social-wrap .ast-facebook {
  color: #1877F2 !important;
}
.site-footer .ast-footer-social-wrap .ast-facebook svg {
  fill: #1877F2 !important;
}
.site-footer .ast-footer-social-wrap .ast-facebook:hover {
  background: #1877F2 !important;
  color: #ffffff !important;
  border-color: #1877F2 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 14px rgba(24, 119, 242, 0.35) !important;
}
.site-footer .ast-footer-social-wrap .ast-facebook:hover svg {
  fill: #ffffff !important;
  transform: scale(1.1) !important;
}
.site-footer .ast-footer-social-wrap .ast-facebook:hover .social-item-label {
  color: #ffffff !important;
}

/* Instagram Badge */
.site-footer .ast-footer-social-wrap .ast-instagram {
  color: #E4405F !important;
}
.site-footer .ast-footer-social-wrap .ast-instagram svg {
  fill: #E4405F !important;
}
.site-footer .ast-footer-social-wrap .ast-instagram:hover {
  background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%) !important;
  color: #ffffff !important;
  border-color: transparent !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 14px rgba(228, 64, 95, 0.35) !important;
}
.site-footer .ast-footer-social-wrap .ast-instagram:hover svg {
  fill: #ffffff !important;
  transform: scale(1.1) !important;
}
.site-footer .ast-footer-social-wrap .ast-instagram:hover .social-item-label {
  color: #ffffff !important;
}

@media (max-width: 768px) {
  .site-footer [data-section="section-fb-social-icons-1"] {
    align-items: center !important;
  }
  .site-footer [data-section="section-fb-social-icons-1"]::before {
    text-align: center !important;
  }
  .site-footer .footer-social-inner-wrap {
    justify-content: center !important;
  }
}

/* ─────────────────────────────────────────────────────────
 * BELOW-FOOTER (COPYRIGHT BAR) SOCIAL MEDIA ICONS
 * ───────────────────────────────────────────────────────── */
.hsh-below-footer-combined {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 20px !important;
  flex-wrap: wrap !important;
}

.hsh-below-social-wrap {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.hsh-below-social-label {
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  color: rgba(255, 255, 255, 0.85) !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

.hsh-below-social-links {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.hsh-below-social-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.15) !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important;
  color: #ffffff !important;
  text-decoration: none !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.hsh-below-social-btn svg {
  width: 17px !important;
  height: 17px !important;
  fill: #ffffff !important;
  transition: transform 0.2s ease !important;
}

.hsh-below-social-btn:hover {
  transform: translateY(-2px) scale(1.08) !important;
}

.hsh-below-fb:hover {
  background: #1877F2 !important;
  border-color: #1877F2 !important;
  box-shadow: 0 4px 12px rgba(24, 119, 242, 0.4) !important;
}

.hsh-below-ig:hover {
  background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%) !important;
  border-color: transparent !important;
  box-shadow: 0 4px 12px rgba(228, 64, 95, 0.4) !important;
}

.hsh-below-cards {
  display: inline-flex !important;
  align-items: center !important;
}

@media (max-width: 768px) {
  .hsh-below-footer-combined {
    justify-content: center !important;
    flex-direction: column !important;
    gap: 12px !important;
    margin-top: 10px !important;
  }
}

/* ─────────────────────────────────────────────────────────
 * CHECKOUT BLOCKUI BACK-NAVIGATION RESILIENCE
 * ───────────────────────────────────────────────────────── */
.woocommerce-checkout form.checkout:not(.processing) .blockUI,
.woocommerce-checkout form.checkout:not(.processing) .blockOverlay,
.woocommerce-checkout form.checkout:not(.processing) .blockElement,
.woocommerce-checkout:not(:has(.processing)) .blockUI,
.woocommerce-checkout:not(:has(.processing)) .blockOverlay {
  display: none !important;
  pointer-events: none !important;
}

/* ─────────────────────────────────────────────────────────
 * REFER A FRIEND MODAL
 * ───────────────────────────────────────────────────────── */
.hsh-refer-modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 999999;
  align-items: center;
  justify-content: center;
  padding: 16px;
  box-sizing: border-box;
}

.hsh-refer-modal.hsh-modal-visible {
  display: flex !important;
}

body.hsh-modal-open {
  overflow: hidden !important;
}

.hsh-refer-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(15, 23, 42, 0.65);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  animation: hshFadeIn 0.2s ease-out forwards;
}

.hsh-refer-card {
  position: relative;
  background: #ffffff;
  width: 100%;
  max-width: 480px;
  border-radius: 18px;
  box-shadow: 0 25px 60px -15px rgba(0, 0, 0, 0.3), 0 10px 25px -5px rgba(0, 0, 0, 0.15);
  padding: 32px 28px;
  box-sizing: border-box;
  z-index: 2;
  animation: hshModalPop 0.25s cubic-bezier(0.16, 1, 0.3, 1) forwards;
  font-family: var(--hsh-font-body, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
}

@keyframes hshModalPop {
  from {
    opacity: 0;
    transform: scale(0.92) translateY(12px);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}

.hsh-refer-close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #f1f5f9;
  border: none;
  color: #64748b;
  font-size: 22px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s ease;
}

.hsh-refer-close:hover {
  background: #e2e8f0;
  color: #0f172a;
  transform: rotate(90deg);
}

.hsh-refer-header {
  text-align: center;
  margin-bottom: 22px;
}

.hsh-refer-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #f0fdf4;
  color: #166534;
  border: 1px solid #bbf7d0;
  border-radius: 20px;
  padding: 4px 12px;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.hsh-refer-badge svg {
  color: #16a34a;
}

.hsh-refer-title {
  font-family: var(--hsh-font-head, 'Montserrat', sans-serif);
  font-size: 1.45rem;
  font-weight: 800;
  color: #174229;
  margin: 0 0 10px 0;
  line-height: 1.25;
}

.hsh-refer-desc {
  font-size: 0.95rem;
  color: #475569;
  line-height: 1.5;
  margin: 0;
}

.hsh-refer-body {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.hsh-refer-box {
  background: #f0fdf4;
  border: 2px dashed #86efac;
  border-radius: 12px;
  padding: 16px 18px;
  text-align: center;
}

.hsh-refer-box-label {
  font-size: 0.8rem;
  font-weight: 600;
  color: #166534;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 8px;
}

.hsh-refer-code-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.hsh-refer-code {
  font-family: 'Courier New', Courier, monospace;
  font-size: 1.5rem;
  font-weight: 800;
  color: #174229;
  letter-spacing: 0.12em;
  background: #ffffff;
  padding: 6px 16px;
  border-radius: 8px;
  border: 1px solid #bbf7d0;
}

.hsh-refer-copy-btn {
  background: #174229;
  color: #ffffff;
  border: none;
  border-radius: 8px;
  padding: 10px 16px;
  font-size: 0.9rem;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
}

.hsh-refer-copy-btn:hover {
  background: #0a6d1f;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(10, 109, 31, 0.25);
}

.hsh-refer-link-row {
  display: flex;
  gap: 8px;
  align-items: center;
}

.hsh-refer-input {
  flex: 1;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 10px 14px;
  font-size: 0.88rem;
  color: #334155;
  outline: none;
  font-family: inherit;
}

.hsh-refer-input:focus {
  border-color: #174229;
}

.hsh-refer-link-btn {
  background: #f1f5f9;
  color: #1e293b;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  padding: 10px 14px;
  font-size: 0.88rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
}

.hsh-refer-link-btn:hover {
  background: #e2e8f0;
  color: #0f172a;
}

.hsh-refer-share-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 4px;
}

.hsh-share-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 14px;
  border-radius: 10px;
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none !important;
  transition: all 0.2s ease;
  box-sizing: border-box;
}

.hsh-whatsapp-btn {
  background: #25D366;
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(37, 211, 102, 0.25);
}

.hsh-whatsapp-btn:hover {
  background: #20ba5a;
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(37, 211, 102, 0.35);
  color: #ffffff !important;
}

.hsh-email-btn {
  background: #f8fafc;
  color: #1e293b !important;
  border: 1px solid #e2e8f0;
}

.hsh-email-btn:hover {
  background: #f1f5f9;
  color: #0f172a !important;
  transform: translateY(-1px);
}

/* ══════════════════════════════════════════════════════════
   Suppress Astra Single Product Free Shipping Text / Badges
══════════════════════════════════════════════════════════ */
.ast-shipping-text,
.astra-shipping-text,
.single-product-shipping,
.ast-single-product-shipping,
.woocommerce-product-details__short-description + .ast-shipping-text,
.single-product .summary [class*="shipping-text"],
.single-product .summary [class*="free-shipping"],
.single-product .summary .ast-shipping-text,
.single-product .ast-article-single .ast-shipping-text {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
}


