/* Temply Studio sitewide body typography; typography only. */
html body { font-size: 16px; }

/* Meaningful paragraphs everywhere, excluding compact labels and product-title text. */
html body p:not([class*="kicker"]):not([class*="eyebrow"]):not([class*="category"]):not([class*="meta"]):not([class*="badge"]):not([class*="label"]):not([class*="price"]):not([class*="count"]):not(.temply-shop-product-title):not(.temply-related-product-title):not(.line-clamp-2.font-semibold) {
  font-size: 16px !important;
  line-height: 1.6 !important;
}

/* React home has more-specific section rules and includes its cart and footer outside main. */
html body #pixio-react-home-root#pixio-react-home-root p:not([class*="kicker"]):not([class*="eyebrow"]):not([class*="category"]):not([class*="meta"]):not([class*="badge"]):not([class*="label"]):not([class*="price"]):not([class*="count"]):not(.temply-shop-product-title):not(.temply-related-product-title):not(.line-clamp-2.font-semibold) {
  font-size: 16px !important;
  line-height: 1.6 !important;
}

/* Cart item names use a paragraph element but retain their product-title scale. */
html body #pixio-react-home-root#pixio-react-home-root .ts-home-cart-dialog li p[class~="text-[14px]"] {
  font-size: 14px !important;
  line-height: 1.4 !important;
}

/* Proof-card detail text and footer utility descriptions are body copy. */
html body #pixio-react-home-root#pixio-react-home-root .ts-home-proof__item > span > span,
html body #pixio-react-home-root#pixio-react-home-root .ts-home-proof__item > span > strong,
html body #pixio-react-home-root#pixio-react-home-root .ts-footer-v4__utility-item small,
html body #pixio-react-home-root#pixio-react-home-root .ts-footer-v4__utility-item strong {
  font-size: 16px !important;
  line-height: 1.6 !important;
}

html body #pixio-react-home-root#pixio-react-home-root .ts-home-proof__item > span > :is(span, strong) {
  display: block !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: normal !important;
  -webkit-line-clamp: unset !important;
  line-clamp: unset !important;
}

/* Article template has ID-scoped rules, so keep its actual copy at the requested size. */
html body.single-post #z-post-content#z-post-content p:not([class*="kicker"]):not([class*="eyebrow"]):not([class*="category"]),
html body.single-post .ts-article-hero.ts-article-hero .ts-article-dek,
html body.single-post .c-author-info p,
html body.single-post .comment-form-note {
  font-size: 16px !important;
  line-height: 1.6 !important;
}

/* Descriptive lists and definition lists; navigation and filter lists retain their sizing. */
html body #z-post-content#z-post-content :is(li, dt, dd),
html body .c-post-content.c-post-content :is(li, dt, dd),
html body .ts-content-article.ts-content-article :is(li, dt, dd),
html body .product-desc.product-desc :is(li, dt, dd),
html body .ds-seo-category-copy.ds-seo-category-copy :is(li, dt, dd) {
  font-size: 16px !important;
  line-height: 1.6 !important;
}

html body .product-desc.product-desc {
  font-size: 16px !important;
  line-height: 1.6 !important;
}

/* Inline emphasis and links inherit the copy size. */
html body p:not([class*="kicker"]):not([class*="eyebrow"]):not([class*="category"]):not([class*="meta"]):not([class*="badge"]):not([class*="label"]):not([class*="price"]):not([class*="count"]):not(.temply-shop-product-title):not(.temply-related-product-title):not(.line-clamp-2.font-semibold) :is(a, strong, b, em, i),
html body #z-post-content#z-post-content li :is(a, strong, b, em, i),
html body .product-desc.product-desc li :is(a, strong, b, em, i),
html body .ds-seo-category-copy.ds-seo-category-copy li :is(a, strong, b, em, i) {
  font-size: inherit !important;
}

/* Product-page support and terms copy; preserve product names, headings, badges and prices. */
html body #pixio-react-product-root#pixio-react-product-root p.mt-1.mb-0,
html body #pixio-react-product-root#pixio-react-product-root p.m-0.font-bold,
html body #pixio-react-product-root#pixio-react-product-root span[class~="text-[12px]"][class~="text-[#5c786b]"],
html body #pixio-react-product-root#pixio-react-product-root [data-temply-purchase-unavailable] > span:last-child {
  font-size: 16px !important;
  line-height: 1.6 !important;
}

/* Form labels, fields and helper paragraphs remain legible on mobile. */
html body .ds-inner-page.ds-inner-page .woocommerce-form .form-row :is(label, input, select, textarea),
html body.woocommerce-checkout #customer_details :is(label, input, select, textarea),
html body main :is(label, input, select, textarea) {
  font-size: 16px !important;
}

/* Cart guidance and empty-state paragraphs are body copy. */
html body .ds-cart-drawer__empty p,
html body.ds-cart-page .pc-page-v2 .pc-empty-copy > p,
html body.ds-cart-page .pc-page-v2 .pc-trust-card p,
html body.ds-cart-page .pc-page-v2 .pc-help-card p,
html body.ds-cart-page .pc-page-v2 .pc-coupon-copy p {
  font-size: 16px !important;
  line-height: 1.6 !important;
}

/* Shared PHP footer copy and legal lines override its inline stylesheet sizes. */
html body #ds-footer#ds-footer :is(.ts-footer-v4__brand-copy, .ts-footer-v4__bottom-inner p, .ts-footer-v4__bottom p, .ts-footer-v4__utility-item small, .ts-footer-v4__utility-item strong),
html body #pixio-react-home-root#pixio-react-home-root :is(.ts-site-footer__brand p, .ts-site-footer__bottom-inner p, .ts-footer-v4__brand-copy, .ts-footer-v4__bottom-inner p),
html body.pixio-react-shop-page #pixio-react-shop-root#pixio-react-shop-root :is(.ts-site-footer__brand p, .ts-footer-v4__brand-copy, .ts-footer-v4__bottom-inner p, .ts-footer-v4__utility-item small, .ts-footer-v4__utility-item strong),
html body :is(.ts-unified-footer__brand > p, .ts-unified-footer__bottom p, .ts-site-footer__brand p, .ts-site-footer__bottom-inner p, .ts-footer-v4__brand-copy, .ts-footer-v4__bottom-inner p, .ts-footer-v4__bottom p, .ds-footer-copy) {
  font-size: 16px !important;
  line-height: 1.6 !important;
}
