/* A single, readable type scale for public pages. */
body { font-size: 16px; line-height: 1.6; }
.announcement { font-size: 12px; }
.brand small { font-size: 9px; }
.hero-copy h1 { font-size: clamp(46px, 4.7vw, 68px); line-height: 1.12; }
.hero-copy > p { font-size: 17px; line-height: 1.75; }
.hero-tag,.eyebrow { font-size: 12px; }
.hero-proof span { font-size: 12px; }
.trust-strip { font-size: 13px; }
.section-heading h2,.process-section h2,.faq-section h2 { font-size: clamp(32px, 3.4vw, 46px); line-height: 1.2; }
.section-heading > p,.process-section > div > p:last-child,.faq-section > div:first-child > p:last-child { font-size: 15px; }
.category-tabs button { font-size: 13px; }
.search-box input { font-size: 14px; }
.card-kicker { font-size: 11px; }
.card-title { font-size: 18px; line-height: 1.35; }
.card-body > p { font-size: 13px; line-height: 1.65; }
.card-specs span { font-size: 11px; }
.card-bottom .buy-button,.sold-out { font-size: 12px; }
.process-section li b { font-size: 18px; }
.process-section li p { font-size: 14px; }
.guide-card > span { font-size: 11px; }
.guide-card h3 { font-size: 24px; line-height: 1.3; }
.guide-card > p,.guide-card > a { font-size: 14px; }
.faq-list summary { font-size: 16px; }
.faq-list details p { font-size: 14px; }
.site-footer > div:first-child p { font-size: 13px; }
.site-footer > div > b { font-size: 13px; }
.site-footer > div > a,.site-footer > div > span,.site-footer > small { font-size: 12px; }
.breadcrumbs { font-size: 12px; }
.product-detail-copy h1 { font-size: clamp(34px, 4vw, 52px); line-height: 1.16; }
.detail-labels span { font-size: 11px; }
.detail-summary { font-size: 16px; line-height: 1.7; }
.detail-price b { font-size: 36px; }
.detail-price small,.detail-stats small,.compatibility-note { font-size: 11px; }
.detail-stats b { font-size: 14px; line-height: 1.45; }
.detail-information h2 { font-size: 30px; }
.detail-information aside h3 { font-size: 18px; }
.detail-information dl div { font-size: 12px; }
.detail-information .rich-product-details h3 { font-size: 15px; }
.detail-information .rich-product-details p,.detail-information .parameter-table div { font-size: 14px; }
.detail-information .rich-product-details .detail-disclaimer p { font-size: 13px; }
.checkout-heading h1 { font-size: clamp(34px, 4vw, 50px); }
.checkout-heading > p:last-child { font-size: 15px; }
.order-form label,.track-form label,.admin-login label,.order-form legend { font-size: 13px; }
.order-form input,.order-form select,.order-form textarea,.track-form input,.admin-login input { font-size: 15px; }
.choice-row small,.legal-note { font-size: 11px; }
.checkout-summary dl > div { font-size: 13px; }
.track-intro h1 { font-size: 46px; }
.track-intro > p:last-child { font-size: 15px; }
.track-summary div,.event-timeline b { font-size: 13px; }
.event-timeline p,.event-timeline small { font-size: 12px; }
.article-page h1 { font-size: clamp(34px, 4.5vw, 52px); }

@media (max-width: 740px) {
  .announcement { font-size: 10px; letter-spacing: .025em; }
  .hero-copy h1 { font-size: 40px; }
  .hero-copy > p { font-size: 16px; }
  .hero-proof span { font-size: 11px; }
  .section-heading h2,.process-section h2,.faq-section h2 { font-size: 34px; }
  .product-detail-copy h1 { font-size: 34px; letter-spacing: -.035em; }
  .detail-summary { font-size: 15px; }
  .detail-information h2 { font-size: 28px; }
  .track-intro h1 { font-size: 36px; }
}

@media (max-width: 420px) {
  .hero-copy h1 { font-size: 37px; }
  .section-heading h2,.process-section h2,.faq-section h2 { font-size: 31px; }
  .product-detail-copy h1 { font-size: 31px; }
}
