/* Product-detail-only tokens. Edit these values to tune the adapter. */
body.single-product.htw-slot-product-detail-current .sf-pdp {
  --qpd-font: grosa, WGMNativeCardJost, Arial, sans-serif;
  --qpd-ink: #21201f;
  --qpd-muted: #62605e;
  --qpd-line: #d8d8d5;
  --qpd-sale: #a92c25;
  --qpd-badge-bg: #f3f3f2;
  --qpd-badge-ink: #21201f;
  --qpd-gallery-radius: 0px;
  --qpd-action-radius: 999px;
  --qpd-title-size: clamp(26px, 2.3vw, 32px);
  color: var(--qpd-ink);
  font-family: var(--qpd-font);
}

/* Square image presentation and a compact badge, matching homepage cards.
   The provider's gallery, image fit, asset choice and navigation remain intact. */
body.single-product.htw-slot-product-detail-current .sf-pdp__gallery .product-images,
body.single-product.htw-slot-product-detail-current .sf-pdp__gallery .woocommerce-product-gallery {
  border-radius: var(--qpd-gallery-radius);
}
body.single-product.htw-slot-product-detail-current .sf-pdp__gallery .badge-container .badge {
  display: block;
  width: max-content;
  max-width: 100%;
  height: auto;
  transform: none;
}
body.single-product.htw-slot-product-detail-current .sf-pdp__gallery .badge-container .badge-inner {
  display: block;
  width: auto;
  height: auto;
  min-width: 0;
  padding: 5px 8px;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--qpd-badge-bg) !important;
  color: var(--qpd-badge-ink) !important;
  font: 400 14px/1.2 var(--qpd-font) !important;
  text-align: left;
}
body.single-product.htw-slot-product-detail-current .sf-pdp__gallery .badge-container .onsale {
  color: var(--qpd-badge-ink) !important;
  font: inherit;
}

/* A full-width title followed by its real price avoids narrow-screen crowding. */
body.single-product.htw-slot-product-detail-current .sf-pdp__summary {
  grid-template-columns: minmax(0, 1fr);
}
body.single-product.htw-slot-product-detail-current .sf-pdp__summary > .product_title {
  grid-column: 1 / -1;
  grid-row: auto;
  margin: 0 0 8px;
  color: var(--qpd-ink);
  font: 400 var(--qpd-title-size)/1.2 var(--qpd-font);
  letter-spacing: normal;
  overflow-wrap: anywhere;
}
body.single-product.htw-slot-product-detail-current .sf-pdp__summary > .price-wrapper {
  grid-column: 1 / -1;
  grid-row: auto;
  justify-self: start;
  padding: 0;
  text-align: left;
}
body.single-product.htw-slot-product-detail-current .sf-pdp__summary > .price-wrapper .price {
  justify-content: flex-start;
  color: var(--qpd-ink);
  font: 400 17px/1.4 var(--qpd-font);
}
body.single-product.htw-slot-product-detail-current .sf-pdp__summary .price ins,
body.single-product.htw-slot-product-detail-current .sf-pdp__summary .price ins .amount {
  color: var(--qpd-sale);
}
body.single-product.htw-slot-product-detail-current .sf-pdp__summary .price del,
body.single-product.htw-slot-product-detail-current .sf-pdp__summary .price del .amount {
  color: var(--qpd-muted);
}

/* Preserve the configured native action colors and all WooCommerce states. */
body.single-product.htw-slot-product-detail-current .sf-pdp__summary form.cart .single_add_to_cart_button,
body.single-product.htw-slot-product-detail-current .sf-pdp__summary form.cart .ux-buy-now-button {
  min-height: 48px;
  border-radius: var(--qpd-action-radius);
  font-family: var(--qpd-font);
  font-weight: 500;
}
body.single-product.htw-slot-product-detail-current .sf-pdp__summary .sf-pdp__variant-option,
body.single-product.htw-slot-product-detail-current .sf-pdp__summary .sf-pdp__dropdown-trigger,
body.single-product.htw-slot-product-detail-current .sf-pdp__summary .sf-pdp__dropdown-option {
  font-family: var(--qpd-font);
}
body.single-product.htw-slot-product-detail-current .sf-pdp__accordion {
  border-color: var(--qpd-line);
}
body.single-product.htw-slot-product-detail-current .sf-pdp__accordion summary {
  font-family: var(--qpd-font);
  font-weight: 500;
}
body.single-product.htw-slot-product-detail-current .sf-pdp__gallery :focus-visible,
body.single-product.htw-slot-product-detail-current .sf-pdp__details :focus-visible {
  outline: 2px solid var(--qpd-ink);
  outline-offset: 3px;
}
@media (max-width: 549px) {
  body.single-product.htw-slot-product-detail-current .sf-pdp {
    --qpd-title-size: 25px;
  }
}
