/* Presentation only: the current target provider owns all content and behavior. */
body.single-product .sf-pdp {
  --pdp-ink: #18171c;
  --pdp-muted: #6c6c6c;
  --pdp-line: #dededb;
  --pdp-surface: #f2f2f1;
  font-family: "PP Neue Montreal", Arial, sans-serif;
}

/* Preserve the target's contain treatment and all real gallery controls. */
body.single-product .sf-pdp__gallery .product-images,
body.single-product .sf-pdp__gallery .woocommerce-product-gallery { border-radius: 2px; }
body.single-product .sf-pdp__gallery .product-thumbnails img { border-radius: 2px; }

body.single-product .sf-pdp__summary > .product_title {
  min-width: 0;
  overflow-wrap: anywhere;
  color: var(--pdp-ink);
  font-family: "PP Neue Montreal", Arial, sans-serif;
  font-size: clamp(27px, 2.5vw, 36px);
  font-weight: 400;
  line-height: 1.16;
  letter-spacing: .025em;
}
body.single-product .sf-pdp__summary > .price-wrapper { min-width: 0; }
body.single-product .sf-pdp__summary > .price-wrapper .price,
body.single-product .sf-pdp__summary .woocommerce-variation-price .price {
  font-family: "PP Neue Montreal", Arial, sans-serif;
  font-weight: 400;
  line-height: 1.4;
}
body.single-product .sf-pdp__summary .price ins,
body.single-product .sf-pdp__summary .price ins .amount { color: #be4141; text-decoration: none; }
body.single-product .sf-pdp__summary .price del,
body.single-product .sf-pdp__summary .price del .amount { color: var(--pdp-muted); }

body.single-product .sf-pdp__topline .woocommerce-breadcrumb,
body.single-product .sf-pdp__summary .woocommerce-product-rating,
body.single-product .sf-pdp__summary .woocommerce-product-details__short-description,
body.single-product .sf-pdp__summary .product-short-description,
body.single-product .sf-pdp__summary form.variations_form .variations label,
body.single-product .sf-pdp__summary .sf-pdp__variant-option,
body.single-product .sf-pdp__summary .sf-pdp__dropdown-trigger,
body.single-product .sf-pdp__summary .sf-pdp__dropdown-option,
body.single-product .sf-pdp__accordion summary,
body.single-product .sf-pdp__accordion-content,
body.single-product .sf-pdp__sticky-copy { font-family: "PP Neue Montreal", Arial, sans-serif; }

/* Use the existing configurable button colors; never change disabled states. */
body.single-product .sf-pdp__summary form.cart .single_add_to_cart_button,
body.single-product .sf-pdp__summary form.cart .ux-buy-now-button,
body.single-product .sf-pdp__sticky-button {
  border-radius: 4px;
  font-family: "PP Neue Montreal", Arial, sans-serif;
  font-weight: 500;
  letter-spacing: .03em;
}
body.single-product .sf-pdp__summary .sf-pdp__variant-option,
body.single-product .sf-pdp__summary .sf-pdp__dropdown-trigger,
body.single-product .sf-pdp__summary .sf-pdp__dropdown-option { border-radius: 4px; }
body.single-product .sf-pdp__summary button:focus-visible,
body.single-product .sf-pdp__summary select:focus-visible,
body.single-product .sf-pdp__sticky-button:focus-visible { outline: 2px solid #426b7c; outline-offset: 3px; }
body.single-product .sf-pdp__related .related.products > h2,
body.single-product .sf-pdp__related .product-section-title {
  font-family: "ABC Gaisyr", Georgia, "Times New Roman", serif;
  font-weight: 300;
  letter-spacing: normal;
}

@media (max-width: 849px) {
  body.single-product .sf-pdp__summary > .product_title { font-size: 26px; }
  body.single-product .sf-pdp__summary > .price-wrapper .price { font-size: 16px; }
}
@media (max-width: 380px) {
  body.single-product .sf-pdp__summary > .product_title { font-size: 24px; }
}
