/* hsb_typography_boost_all.r2.css
   Goal: Make text comfortably readable across Papers/Products/Issues/Community and detail views
   - Keep layout stable (avoid huge jumps)
   - Respect existing theme variables
*/

html { font-size: 20px; }
body { line-height: 1.65; }

/* Mobile scale-down (avoid overflow) */
@media (max-width: 900px) { html { font-size: 17.5px; } }
@media (max-width: 480px) { html { font-size: 17px; } }

/* Section titles */
.section-title { font-size: clamp(24px, 2.2vw, 30px); letter-spacing: -0.01em; }
.section-title small { font-size: 0.9rem !important; }

/* Cards (lists) */
.card-paper .title,
.card-product .title,
.card-issue .title,
.card-community .title,
.grid .card .title {
  font-size: 1.15rem;
  line-height: 1.35;
}

.card-paper .desc,
.card-product .desc,
.card-issue .desc,
.card-community .desc,
.grid .card .desc,
.grid .card .body,
.grid .card .body div {
  font-size: 1.05rem;
}

.card-paper .meta,
.card-product .meta,
.card-issue .meta,
.card-community .meta,
.grid .card .meta {
  font-size: 0.96rem;
}

/* View/detail pages */
.view-title, .detail-title, .article-title {
  font-size: clamp(22px, 2vw, 30px);
  line-height: 1.25;
}
.view-body, .detail-body, .article-body {
  font-size: 1.08rem;
  line-height: 1.75;
}

/* Forms */
input, textarea, select, button { font-size: 1rem; }
textarea { line-height: 1.7; }

/* Tables */
table { font-size: 1.05rem; }

/* Pagers */
.pager a, .pager span { font-size: 1.06rem; padding: 11px 13px; }
