/* PDP-only readability layer. Loaded after catalog-copy.css intentionally:
   its #productTitle and mobile metadata rules otherwise shrink this page.
   Keep the reference geometry, shared chrome and concise copy unchanged. */
.pd-outer.pd-reference {
  font-size:16px;
  line-height:1.6;
}
.pd-reference #productTitle.product-title {
  font-size:28px;
  font-weight:700;
  line-height:1.3;
  overflow-wrap:anywhere;
}
.pd-reference #productTitle + .catalog-copy-meta,
.pd-reference :is(.catalog-copy-meta,.catalog-copy-summary,.catalog-copy-context,.brand-row,.model-num) {
  font-size:14px;
  line-height:1.6;
}
.pd-reference :is(.pd-short-desc,.pd-tab-prose,.catalog-copy-full,.highlights-list,.spec-table-inline),
.pd-reference #acc-desc .pd-tab-prose {
  font-size:16px;
  line-height:1.65;
}
.pd-reference :is(.pd-short-desc-label,.pd-option-label,.attr-pill,.v-attr-label,.pd-qty-ctn) {
  font-size:14px;
  line-height:1.6;
}
.pd-reference .rating-row {font-size:14px}
.pd-reference :is(.v-attr-select,.qty-select,.zip-input-row input) {
  font-size:16px;
  min-height:44px;
}
.pd-reference :is(.acc-trigger,#acc-desc .acc-trigger) {font-size:16px}
.pd-reference #acc-specs > .acc-trigger {font-size:20px}
.pd-reference .spec-table-inline td {line-height:1.6}
.pd-reference :is(.pd-breadcrumb,.action-links a,.action-links button,.click-hint,.pd-compare) {
  font-size:14px;
}
.pd-reference :is(.pd-web-price,.bb-price-pkg,.bb-price-was,.bb-save-badge,
  .bb-ship,.bb-quote,.bb-related-link,.bb-trust-row,.bb-secure,.bb-qty-label,
  .pd-package-label,.pd-purchase-summary,.pd-purchase-note,.pd-estimate-status,
  .pd-buying-guide,.pd-guide-state,.pd-savings-milestone,.pd-list-status,
  .zip-row label,.return-note,.bulk-header,.bulk-table,.bulk-table th,.save-text,
  .bb-stock-request label,.bb-stock-request p) {
  font-size:14px;
  line-height:1.6;
}
.pd-reference .buybox .bb-qty-label {font-size:14px}
.pd-reference :is(.bb-price-dollars,.bb-price-sup,.bb-price-cents) {
  font-size:30px;
  line-height:1.25;
}
/* The template supplies an inline size on cents; retain baseline decimal prices. */
.pd-reference .bb-price-cents sup {font-size:30px!important}
.pd-reference .bb-price-main {flex-wrap:wrap;overflow-wrap:anywhere}
.pd-reference .bb-instock {font-size:16px}
.pd-reference .pd-purchase-total {
  font-size:14px;
  flex-wrap:wrap;
  align-items:baseline;
}
.pd-reference .pd-purchase-total strong {font-size:16px}
.pd-reference .pd-guide-heading {flex-wrap:wrap}
.pd-reference .pd-guide-heading h2 {font-size:16px}
.pd-reference :is(.add-cart-btn,.buy-now-btn,.bb-stock-request button,
  .zip-save-btn,.pd-list-button,.pd-estimate-retry,.see-all-specs) {
  font-size:16px;
  line-height:1.4;
  min-height:44px;
}
.pd-reference .buybox :is(.add-cart-btn,.buy-now-btn) {
  min-height:44px;
  padding:10px 8px;
}
.pd-reference .pd-order-controls {align-items:end}
.pd-reference .pd-order-controls > *,
.pd-reference .gallery-col,
.pd-reference .pd-discovery-product > * {min-width:0}
.pd-reference :is(.pd-discovery-product,.pd-discovery-product small,
  .related-card .rc-model,.related-cart-row .rc-view-btn,.related-card .rc-quote) {
  font-size:14px;
}
.pd-reference .related-card .rc-name {font-size:16px}
/* These legacy template blocks use inline font sizes. Override only their PDP
   text; no availability logic or stock-request behavior is changed here. */
.pd-reference #variantSelectionStatus,
.pd-reference #pdShipResult,
.pd-reference .buybox-inner > div[style*="font-size:13px"] {
  font-size:14px!important;
}
.pd-reference #acc-features table {font-size:16px!important}
.pd-reference #acc-features th {font-size:14px!important}
#pdListDialog :is(p,label,button) {font-size:14px}
#pdListDialog :is(input,select) {font-size:16px}
@media(max-width:767px) {
  .pd-reference #productTitle.product-title {font-size:24px}
}
@media(max-width:720px) {
  #pdMobilePurchase {font-size:16px}
  #pdMobilePurchase label,
  #pdMobilePurchase .pd-mobile-summary {font-size:14px;line-height:1.5}
  #pdMobilePurchase .pd-mobile-summary {min-width:0;overflow-wrap:anywhere}
  #pdMobilePurchase .pd-mobile-summary strong {font-size:20px}
  /* Leave room to reach the final page content even with pricing retry visible. */
  body.pd-has-mobile-purchase:has(.pd-reference) {
    padding-bottom:calc(260px + env(safe-area-inset-bottom,0px));
  }
  .pd-has-mobile-purchase:has(.pd-reference) .top-btn {
    bottom:calc(265px + env(safe-area-inset-bottom,0px));
  }
}
