/* Phone typography. Desktop layout and the compact edition controls stay intact. */
@media (max-width: 700px) {
  body { font-size: 16px; }
  .hero .hero-copy h1 {
    font-size: clamp(28px, 8vw, 34px);
    line-height: 1.2;
    letter-spacing: -.5px;
    white-space: normal;
    margin-bottom: 18px;
  }
  .hero .hero-copy h1 em { display: block; }
  .hero-sub { font-size: 16px; line-height: 1.65; color: #45413d; }
  .hero-copy .eyebrow { font-size: 11px; letter-spacing: 1.1px; line-height: 1.6; }
  .brand small { font-size: 8px; line-height: 1.5; letter-spacing: 1px; }
  .chips a { font-size: 13px; line-height: 1.5; min-height: 40px; padding: 9px 12px; }
  .section-intro, .page-head p:last-child { font-size: 16px; line-height: 1.65; }
  .section-heading { flex-wrap: wrap; align-items: flex-start; gap: 12px; }
  .section-heading > div { flex: 1 1 220px; min-width: 0; }
  .section-heading > .text-link { font-size: 14px; line-height: 1.5; margin-top: 0; min-height: 44px; white-space: normal; }
  .section-heading .eyebrow { font-size: 11px; line-height: 1.6; letter-spacing: 1px; }
  .topic-card { min-height: 188px; padding: 20px 10px 16px; }
  .topic-card h3 { font-size: 17px; line-height: 1.4; overflow-wrap: anywhere; }
  .topic-card p { font-size: 14px; line-height: 1.6; color: #5a5550; }
  .card-copy h3 { font-size: 16px; line-height: 1.4; min-height: 0; overflow-wrap: anywhere; }
  .card-copy .author { font-size: 13px; line-height: 1.55; color: #555d61; }
  .card-summary { font-size: 14px; line-height: 1.6; min-height: 0; color: #4f585c; }
  .card-format { font-size: 12px; line-height: 1.5; }
  .card-bottom { gap: 4px; }
  .card-bottom .text-link { font-size: 13px; line-height: 1.5; min-height: 44px; }
  .card-bottom .save { min-width: 44px; min-height: 44px; padding: 10px; }
  .daily-reading .eyebrow { font-size: 12px; line-height: 1.6; letter-spacing: 1px; }
  .daily-reading .fineprint { font-size: 13px; line-height: 1.6; color: #61584f; }
  .daily-reading-actions .text-link { font-size: 14px; min-height: 44px; }
  .daily-reading-list time { font-size: 13px; }
  .daily-reading-list span { font-size: 15px; }
  .book-detail .detail-intro, .prose p, .book-detail .prose p, .prose li {
    font-size: 16px;
    line-height: 1.75;
    color: #4b5053;
  }
  .breadcrumbs { font-size: 13px; line-height: 1.6; flex-wrap: wrap; }
  .edition dt { font-size: 13px; color: #62584e; }
  .edition dd { font-size: 15px; line-height: 1.6; }
  .edition h3 { font-size: 18px; }
  .fineprint, .book-cover-figure figcaption, .book-cover-media figcaption { font-size: 13px; line-height: 1.6; color: #61584f; }
  .book-cover-figure figcaption a { display: inline-block; min-height: 40px; }
  main .button, main .outline-button { font-size: 15px; line-height: 1.5; min-height: 44px; }
  .filters label, .form-field label { font-size: 14px; }
  .filters input, .filters select, input[type="search"], textarea { font-size: 16px; }
  .author-card p { font-size: 16px; line-height: 1.7; }
  .gift-copy .eyebrow { font-size: 12px; }
  .gift-copy > p:not(.eyebrow) { font-size: 15px; line-height: 1.7; }
  .gift-copy .text-link { font-size: 14px; min-height: 44px; }
  .mobile-nav a, .mobile-nav button { font-size: 16px; min-height: 44px; }
  footer h2 { font-size: 16px; }
  footer p { font-size: 14px; line-height: 1.7; }
  footer a:not(.brand), footer button { font-size: 14px; line-height: 1.5; min-height: 40px; }
  .footer-bottom { font-size: 12px; line-height: 1.6; }
}
@media (max-width: 360px) {
  .book-grid, #book-results .book-grid, #reading-list .book-grid { grid-template-columns: minmax(0, 1fr); }
}
