/* Modest, shared typography lift. Keep the established hero, logos, images and
   assurance marks at their approved scale; grow the small reading text. */
body[data-readable-type] { font-size: 16px; }

/* Header and the white product category menu. */
body[data-readable-type] :is(.contact-strip, .utility) { font-size: 12.8px; }
body[data-readable-type] #main-nav > a,
body[data-readable-type] #main-nav > details > summary {
  font-size: 16px !important;
  line-height: 1.4;
}
body[data-readable-type] #main-nav .visual-products-all { font-size: 14px !important; }
body[data-readable-type][data-preview-layout] #main-nav .visual-products-grid[data-catalogue-navigation] .showcase-menu-label {
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 600;
  white-space: normal;
  overflow-wrap: break-word;
  min-width: 0;
}
body[data-readable-type] #main-nav .visual-products-grid[data-catalogue-navigation] > .visual-product-link {
  grid-template-rows: auto minmax(3.1em, auto) !important;
}
body[data-readable-type] header :is(.store-search input, #search-form input) { font-size: 15px; }

/* All nine slide titles stay inside their controls and can wrap. */
body.home-approved[data-readable-type][data-preview-layout] #collections .slide-dot-name {
  font-size: 14px !important;
  line-height: 1.35 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}
body.home-approved[data-readable-type] #collections .showcase-dots button {
  min-height: 58px !important;
  height: auto !important;
  min-width: 0;
}
body.home-approved[data-readable-type] #collections .showcase-copy .eyebrow { font-size: 12px !important; }
body.home-approved[data-readable-type] #collections .showcase-description {
  font-size: clamp(15px, calc(1.05vw + 2px), 18px) !important;
  line-height: 1.6 !important;
}

/* Homepage category names and section descriptions. */
body.home-approved[data-readable-type] #main #product-families #family-track .category-tile > .category-label {
  font-size: 16px !important;
  line-height: 1.45 !important;
  min-height: 0 !important;
  height: auto !important;
  white-space: normal;
}
body.home-approved[data-readable-type] #main .eyebrow { font-size: 12px !important; line-height: 1.55; }
body.home-approved[data-readable-type] #main #product-families .eyebrow,
body.home-approved[data-readable-type] #main .specialist-copy .eyebrow { font-size: 11px !important; }
body.home-approved[data-readable-type] #main .family-intro { font-size: 17px; line-height: 1.7; }
body.home-approved[data-readable-type] #main :is(.intro, .range-heading > p, .specialist-copy > p, .story-features p) {
  font-size: 14px; line-height: 1.75;
}
body.home-approved[data-readable-type] #main .story-intro { font-size: 15px; line-height: 1.75; }
body.home-approved[data-readable-type] #main :is(.story-note, .catalog-note, .finder-tip) { font-size: 12px; line-height: 1.65; }
body.home-approved[data-readable-type] #main .story-features h3 { font-size: 16px; line-height: 1.45; }
body.home-approved[data-readable-type] #main .learning-card h3 { font-size: 17px; line-height: 1.45; }
body.home-approved[data-readable-type] #main :is(.factory-copy p, .feature-copy p, .learning-card p, .catalogue-access p, .editorial-worldwide-copy > p) {
  font-size: 16px; line-height: 1.7;
}
body.home-approved[data-readable-type] #main :is(.support-grid p, .contact .intro, .questions details > p) { font-size: 17px; line-height: 1.7; }
body.home-approved[data-readable-type] #main .mechanism-button .explain { font-size: 14px; line-height: 1.65; }
body.home-approved[data-readable-type] #main .finder .intro { font-size: 15px; }
body.home-approved[data-readable-type] #main .finder .subtle { font-size: 12px; }
body.home-approved[data-readable-type] #main .journey p { font-size: 13px; line-height: 1.65; }
body.home-approved[data-readable-type] #main .service-strip strong { font-size: 13px; }
body.home-approved[data-readable-type] #main .service-strip span { font-size: 12px; }
body.home-approved[data-readable-type] #main :is(.personal-copy p, .menu-guide p) { font-size: 14px; line-height: 1.7; }
body.home-approved[data-readable-type] #main :is(.visual-foot, .visual-label) { font-size: 11px; line-height: 1.6; }
body.home-approved[data-readable-type] #main :is(.photo-tag, .format-tag, .material-label, .field-title) { font-size: 12px; line-height: 1.5; }
body.home-approved[data-readable-type] #main :is(.btn, .choice) { font-size: 14px; }
body.home-approved[data-readable-type] #main .mechanism-stage .subtle { font-size: 12px; }
body.home-approved[data-readable-type] #main .finder-result :is(small, .specs dt) { font-size: 12px; }
body.home-approved[data-readable-type] #products :is(.catalog-filters button, .card-actions button) { font-size: 13px; }
body.home-approved[data-readable-type] #products .results-line { font-size: 12px; }
body.home-approved[data-readable-type] #products .product-image > .product-label { font-size: 11px !important; }
body.home-approved[data-readable-type] #products .request-price { font-size: 15px; }
body.home-approved[data-readable-type] #main :is(.text-link, .contact-links, .home-department-link) { font-size: 16px; }
body.home-approved[data-readable-type] #main .directory-links a { font-size: 16px; line-height: 1.5; }
body.home-approved[data-readable-type] #products .product-card-body h3 { font-size: 17px; line-height: 1.5; }
body.home-approved[data-readable-type] #products :is(.product-code, .card-specs) { font-size: 13px; line-height: 1.6; }
body.home-approved[data-readable-type] #products .preview-lift-specs dt { font-size: 12px; }
body.home-approved[data-readable-type] #products .preview-lift-specs dd { font-size: 14px; }
body.home-approved[data-readable-type] #products .preview-lift-features { font-size: 13px; }
body.home-approved[data-readable-type] #main .logistics-gallery-heading h3 { font-size: 18px; }
body.home-approved[data-readable-type] #main .logistics-gallery-heading p { font-size: 13px; }
body.home-approved[data-readable-type] #main .logistics-gallery-card strong { font-size: 14px; }
body.home-approved[data-readable-type] #main .logistics-gallery-origin { font-size: 11px; }

/* Catalogue and detail text: preserve photographs, pricing data and headings. */
body[data-readable-type] :is(.catalogue-intro, .collection-intro, .product-intro, .product-description, .product-summary, .product-info > p) { font-size: 16px; line-height: 1.7; }
body[data-readable-type] .card-content :is(h2, h3),
body[data-readable-type] .product-card :is(.card-title, .product-title) { font-size: 17px; line-height: 1.45; }
body[data-readable-type] .card-content .eyebrow { font-size: 12px; }
body[data-readable-type] .product-technical-item dt { font-size: 13px !important; }
body[data-readable-type] .product-technical-item dd { font-size: 15px !important; }
body[data-readable-type] .store-product-media .product-technical-item dt { font-size: 12px !important; }
body[data-readable-type] .store-product-media .product-technical-item dd { font-size: 15px !important; }
body[data-readable-type] .store-variations .inline-doner-picker :is(legend, button) { font-size: 14px !important; }
body[data-readable-type] .nf :is(label, .nf-card p, .nf-note, .nf-panel p, table),
body[data-readable-type] .arican-commerce :is(label, p) { font-size: 16px; }
body[data-readable-type] main[data-product-card-refinement] .quality-card-actions button { font-size: 15px; }
body[data-readable-type] .product-info .lede { font-size: 15px; line-height: 1.7; }
body[data-readable-type] .product-info .feature-list { font-size: 16px; line-height: 1.7; }
body[data-readable-type] .product-info :is(.specs, .fine) { font-size: 15px; }
body[data-readable-type] .nf-media .nf-specs { font-size: 15px; }
body[data-readable-type] .nf-photo figcaption { font-size: 15px; }
body[data-readable-type] .lift-features { font-size: 16px; }
body[data-readable-type] :is(.lift-specs dt, .lift-reference, .lift-quote p) { font-size: 14px; }
body[data-readable-type] .lift-documents > a { font-size: 15px; }

@media (max-width: 760px) {
  body[data-readable-type] :is(.contact-strip, .utility) { font-size: 10.64px; }
  body[data-readable-type] #main-nav > a,
  body[data-readable-type] #main-nav > details > summary { font-size: 17px !important; }
  body.home-approved[data-readable-type][data-preview-layout] #collections .slide-dot-name { font-size: 14px !important; }
  body.home-approved[data-readable-type] #collections .showcase-copy .eyebrow { font-size: 11px !important; }
  body.home-approved[data-readable-type] #collections .showcase-description { font-size: 14px !important; line-height: 1.5 !important; }
  body.home-approved[data-readable-type] #main #product-families #family-track .category-tile > .category-label { font-size: 14px !important; }
  body[data-readable-type][data-preview-layout] #main-nav .visual-products-grid[data-catalogue-navigation] .showcase-menu-label { font-size: 14px !important; }
  body.home-approved[data-readable-type] #main :is(.support-grid p, .contact .intro, .questions details > p) { font-size: 17px; }
  body.home-approved[data-readable-type] #main :is(.btn, .choice) { font-size: 13px; }
  body.home-approved[data-readable-type] #products .catalog-filters button { font-size: 12px; }
}
