/*
 * Hamisu live WooCommerce typography lock — v4.6.
 * Loaded last so imported content and Elementor cannot restore old display titles.
 */

/* Product-category mastheads: compact, calm and brand-led. */
html body.tax-product_cat .hamisu-category-masthead,
html body.tax-product_cat .hamisu-category-hero,
html body.tax-product_cat .woocommerce-products-header,
html body[class*="term-"] .hamisu-category-masthead,
html body[class*="term-"] .hamisu-category-hero {
  display: grid !important;
  width: 100% !important;
  min-height: 220px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 52px 24px !important;
  place-items: center !important;
  background: #fffefa !important;
  color: #211b19 !important;
  text-align: center !important;
  overflow: visible !important;
}

html body.tax-product_cat .hamisu-category-masthead .hamisu-container,
html body.tax-product_cat .hamisu-category-masthead-inner,
html body.tax-product_cat .hamisu-category-hero-inner,
html body.tax-product_cat .woocommerce-products-header,
html body[class*="term-"] .hamisu-category-masthead-inner,
html body[class*="term-"] .hamisu-category-hero-inner {
  display: block !important;
  position: static !important;
  width: min(100%, 760px) !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  color: #211b19 !important;
  transform: none !important;
}

html body.tax-product_cat .hamisu-category-masthead .hamisu-kicker,
html body.tax-product_cat .hamisu-category-hero-inner .hamisu-kicker {
  margin: 0 0 13px !important;
  color: #a44438 !important;
  font-family: var(--hamisu-sans, Inter, Arial, sans-serif) !important;
  font-size: 0.64rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.19em !important;
  line-height: 1.4 !important;
  opacity: 1 !important;
  text-transform: uppercase !important;
}

html body.tax-product_cat .hamisu-category-masthead h1,
html body.tax-product_cat .hamisu-category-masthead h1 *,
html body.tax-product_cat .hamisu-category-hero-inner h1,
html body.tax-product_cat .hamisu-category-hero-inner h1 *,
html body.tax-product_cat h1.woocommerce-products-header__title,
html body.tax-product_cat h1.woocommerce-products-header__title *,
html body.tax-product_cat .woocommerce-products-header h1.page-title,
html body.tax-product_cat .elementor-widget-theme-archive-title .elementor-heading-title,
html body[class*="term-"] .hamisu-category-masthead h1,
html body[class*="term-"] .hamisu-category-hero h1 {
  position: static !important;
  max-width: none !important;
  margin: 0 auto 14px !important;
  padding: 0 !important;
  color: #211b19 !important;
  font-family: var(--hamisu-sans, Inter, Arial, sans-serif) !important;
  font-size: clamp(1.35rem, 1.65vw, 1.7rem) !important;
  font-style: normal !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.25 !important;
  opacity: 1 !important;
  text-align: center !important;
  text-shadow: none !important;
  text-transform: uppercase !important;
  transform: none !important;
}

html body.tax-product_cat .hamisu-category-masthead h1,
html body.tax-product_cat .hamisu-category-hero-inner h1,
html body.tax-product_cat h1.woocommerce-products-header__title,
html body.tax-product_cat .woocommerce-products-header h1.page-title,
html body.tax-product_cat .elementor-widget-theme-archive-title .elementor-heading-title,
html body[class*="term-"] .hamisu-category-masthead h1,
html body[class*="term-"] .hamisu-category-hero h1 { display: block !important; }

html body.tax-product_cat .hamisu-category-masthead h1 *,
html body.tax-product_cat .hamisu-category-hero h1 * { display: inline !important; }

html body.tax-product_cat .hamisu-category-masthead h1 br,
html body.tax-product_cat .hamisu-category-hero h1 br { display: none !important; }

html body.tax-product_cat .hamisu-category-masthead p:last-child,
html body.tax-product_cat .hamisu-category-hero-inner p:last-child,
html body.tax-product_cat .term-description,
html body[class*="term-"] .hamisu-category-masthead p:last-child,
html body[class*="term-"] .hamisu-category-hero p:last-child {
  max-width: 640px !important;
  margin: 14px auto 0 !important;
  color: #5f524d !important;
  font-family: var(--hamisu-sans, Inter, Arial, sans-serif) !important;
  font-size: 0.86rem !important;
  line-height: 1.7 !important;
  opacity: 1 !important;
  text-align: center !important;
}

/*
 * WooCommerce loads woocommerce.php ahead of taxonomy-product_cat.php when a
 * theme supplies both templates. On the live store that produces a native
 * h1.page-title directly inside the shop container, without a masthead wrapper.
 * Lock that real markup as well as the richer masthead variants above.
 */
html body.tax-product_cat main.hamisu-shop-shell > .hamisu-container > h1.page-title,
html body.tax-product_cat #primary.hamisu-shop-shell > .hamisu-container > h1.page-title,
html body.tax-product_cat .hamisu-shop-shell .hamisu-container > h1.page-title {
  display: block !important;
  position: static !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 auto !important;
  padding: 72px 24px 14px !important;
  color: #211b19 !important;
  background: transparent !important;
  font-family: var(--hamisu-sans, Inter, Arial, sans-serif) !important;
  font-size: clamp(1.35rem, 1.65vw, 1.7rem) !important;
  font-style: normal !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.25 !important;
  opacity: 1 !important;
  overflow: visible !important;
  text-align: center !important;
  text-shadow: none !important;
  text-transform: uppercase !important;
  transform: none !important;
}

html body.tax-product_cat main.hamisu-shop-shell > .hamisu-container > .term-description,
html body.tax-product_cat #primary.hamisu-shop-shell > .hamisu-container > .term-description,
html body.tax-product_cat .hamisu-shop-shell .hamisu-container > h1.page-title + .term-description {
  display: block !important;
  width: min(100%, 640px) !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 auto 52px !important;
  padding: 0 24px !important;
  color: #5f524d !important;
  background: transparent !important;
  font-family: var(--hamisu-sans, Inter, Arial, sans-serif) !important;
  font-size: 0.86rem !important;
  line-height: 1.7 !important;
  opacity: 1 !important;
  text-align: center !important;
  transform: none !important;
}

html body.tax-product_cat .hamisu-shop-shell .hamisu-container > h1.page-title + .term-description p {
  margin: 0 !important;
  color: inherit !important;
  font: inherit !important;
  line-height: inherit !important;
  text-align: inherit !important;
}

/* Product cards: restrained names with dependable contrast. */
html body.woocommerce-page ul.products li.product h2.woocommerce-loop-product__title,
html body.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
  color: #211b19 !important;
  font-family: var(--hamisu-sans, Inter, Arial, sans-serif) !important;
  font-size: 0.76rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.035em !important;
  line-height: 1.45 !important;
  opacity: 1 !important;
  text-transform: uppercase !important;
}

/* Every native or Elementor WooCommerce single-product title. */
html body.single-product.woocommerce div.product .summary h1.product_title.entry-title,
html body.single-product.woocommerce div.product .summary h1.product_title,
html body.single-product div.product.product .summary .product_title,
html body.single-product .elementor-widget-woocommerce-product-title .product_title,
html body.single-product .elementor-widget-theme-post-title .elementor-heading-title {
  display: block !important;
  max-width: 620px !important;
  margin: 0 auto 15px !important;
  padding: 0 !important;
  color: #211b19 !important;
  font-family: var(--hamisu-sans, Inter, Arial, sans-serif) !important;
  font-size: clamp(1.05rem, 1.12vw, 1.25rem) !important;
  font-style: normal !important;
  font-weight: 600 !important;
  letter-spacing: 0.055em !important;
  line-height: 1.38 !important;
  opacity: 1 !important;
  overflow-wrap: anywhere !important;
  text-align: center !important;
  text-shadow: none !important;
  text-transform: uppercase !important;
}

html body.single-product.woocommerce div.product .summary > p.price,
html body.single-product.woocommerce div.product .summary > span.price {
  margin: 0 0 22px !important;
  color: #a44438 !important;
  text-align: center !important;
}

/* Imported description headings: remove the old oversized pale display style. */
html body.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2,
html body.single-product.woocommerce div.product .woocommerce-tabs .wc-tab h2,
html body.single-product.woocommerce div.product .entry-content h2,
html body.single-product .elementor-widget-woocommerce-product-data-tabs .woocommerce-Tabs-panel h2,
html body.single-product .elementor-widget-woocommerce-product-data-tabs .wc-tab h2 {
  margin: 30px 0 14px !important;
  padding: 0 !important;
  color: #211b19 !important;
  font-family: var(--hamisu-sans, Inter, Arial, sans-serif) !important;
  font-size: 1.05rem !important;
  font-style: normal !important;
  font-weight: 600 !important;
  letter-spacing: 0.075em !important;
  line-height: 1.4 !important;
  opacity: 1 !important;
  text-align: left !important;
  text-shadow: none !important;
  text-transform: uppercase !important;
}

html body.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2:first-child,
html body.single-product.woocommerce div.product .woocommerce-tabs .wc-tab h2:first-child { margin-top: 0 !important; }

html body.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h3,
html body.single-product.woocommerce div.product .woocommerce-tabs .wc-tab h3,
html body.single-product.woocommerce div.product .entry-content h3,
html body.single-product .elementor-widget-woocommerce-product-data-tabs .woocommerce-Tabs-panel h3 {
  margin: 24px 0 12px !important;
  color: #211b19 !important;
  font-family: var(--hamisu-sans, Inter, Arial, sans-serif) !important;
  font-size: 0.93rem !important;
  font-style: normal !important;
  font-weight: 600 !important;
  letter-spacing: 0.055em !important;
  line-height: 1.45 !important;
  opacity: 1 !important;
  text-transform: uppercase !important;
}

/* Related and upsell blocks use a compact editorial label, not a hero title. */
html body.single-product.woocommerce div.product section.related.products > h2,
html body.single-product.woocommerce div.product section.up-sells.products > h2,
html body.single-product.woocommerce div.product .related.products > h2,
html body.single-product.woocommerce div.product .up-sells.products > h2,
html body.single-product .elementor-widget-woocommerce-product-related h2,
html body.single-product .elementor-widget-woocommerce-product-upsell h2 {
  display: block !important;
  min-height: 0 !important;
  height: auto !important;
  align-self: start !important;
  margin: 0 0 28px !important;
  padding: 0 !important;
  color: #211b19 !important;
  font-family: var(--hamisu-sans, Inter, Arial, sans-serif) !important;
  font-size: 1.15rem !important;
  font-style: normal !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.4 !important;
  opacity: 1 !important;
  text-align: center !important;
  text-shadow: none !important;
  text-transform: uppercase !important;
}

@media (max-width: 760px) {
  html body.tax-product_cat .hamisu-category-masthead,
  html body.tax-product_cat .hamisu-category-hero,
  html body.tax-product_cat .woocommerce-products-header,
  html body[class*="term-"] .hamisu-category-masthead,
  html body[class*="term-"] .hamisu-category-hero {
    min-height: 168px !important;
    padding: 36px 20px !important;
  }

  html body.tax-product_cat .hamisu-category-masthead h1,
  html body.tax-product_cat .hamisu-category-hero-inner h1,
  html body.tax-product_cat h1.woocommerce-products-header__title,
  html body.tax-product_cat .woocommerce-products-header h1.page-title,
  html body.tax-product_cat .elementor-widget-theme-archive-title .elementor-heading-title {
    margin-bottom: 10px !important;
    font-size: 1.2rem !important;
    letter-spacing: 0.065em !important;
  }

  html body.tax-product_cat .hamisu-category-masthead p:last-child,
  html body.tax-product_cat .hamisu-category-hero-inner p:last-child,
  html body.tax-product_cat .term-description {
    margin-top: 10px !important;
    font-size: 0.79rem !important;
    line-height: 1.6 !important;
  }

  html body.tax-product_cat main.hamisu-shop-shell > .hamisu-container > h1.page-title,
  html body.tax-product_cat #primary.hamisu-shop-shell > .hamisu-container > h1.page-title,
  html body.tax-product_cat .hamisu-shop-shell .hamisu-container > h1.page-title {
    min-height: 0 !important;
    height: auto !important;
    padding: 44px 20px 10px !important;
    font-size: 1.2rem !important;
    letter-spacing: 0.065em !important;
  }

  html body.tax-product_cat main.hamisu-shop-shell > .hamisu-container > .term-description,
  html body.tax-product_cat #primary.hamisu-shop-shell > .hamisu-container > .term-description,
  html body.tax-product_cat .hamisu-shop-shell .hamisu-container > h1.page-title + .term-description {
    margin: 0 auto 36px !important;
    padding: 0 20px !important;
    font-size: 0.79rem !important;
    line-height: 1.6 !important;
  }

  html body.single-product.woocommerce div.product .summary h1.product_title.entry-title,
  html body.single-product.woocommerce div.product .summary h1.product_title,
  html body.single-product div.product.product .summary .product_title,
  html body.single-product .elementor-widget-woocommerce-product-title .product_title,
  html body.single-product .elementor-widget-theme-post-title .elementor-heading-title {
    max-width: 33rem !important;
    margin-bottom: 13px !important;
    font-size: 1rem !important;
    letter-spacing: 0.045em !important;
    line-height: 1.42 !important;
  }

  html body.single-product.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2,
  html body.single-product.woocommerce div.product .woocommerce-tabs .wc-tab h2,
  html body.single-product.woocommerce div.product .entry-content h2,
  html body.single-product .elementor-widget-woocommerce-product-data-tabs .woocommerce-Tabs-panel h2 {
    margin-top: 25px !important;
    font-size: 0.96rem !important;
  }

  html body.single-product.woocommerce div.product section.related.products > h2,
  html body.single-product.woocommerce div.product section.up-sells.products > h2,
  html body.single-product.woocommerce div.product .related.products > h2,
  html body.single-product.woocommerce div.product .up-sells.products > h2 {
    margin-bottom: 22px !important;
    font-size: 1.02rem !important;
  }

  html body.woocommerce-page ul.products li.product h2.woocommerce-loop-product__title,
  html body.woocommerce-page ul.products li.product .woocommerce-loop-product__title { font-size: 0.68rem !important; }
}
