/* ==========================================================================
   THE HEIRS OF THE HOLLOW — Responsive layer (mobile-first breakpoints)
   ========================================================================== */

/* ≥ 600px — large phones / small tablets */
@media (min-width: 600px) {
  .inline-form { flex-direction: row; }
  .inline-form .input { flex: 1; }
  .upcoming-grid { grid-template-columns: repeat(4, 1fr); }
  .lore-grid { grid-template-columns: repeat(2, 1fr); }
  .ensemble-grid { grid-template-columns: repeat(3, 1fr); }
  .video-grid { grid-template-columns: repeat(2, 1fr); }
  .form-grid--2 { grid-template-columns: 1fr 1fr; }
  .pager { grid-template-columns: 1fr 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}

/* ≥ 820px — tablets */
@media (min-width: 820px) {
  .split { grid-template-columns: 1.05fr 1fr; }
  .split--reverse .split__media { order: 2; }
  .book-card { grid-template-columns: minmax(200px, 0.8fr) 1fr; gap: 2.2rem; align-items: center; }
  .char-grid { grid-template-columns: repeat(3, 1fr); }
  .char-feature { grid-template-columns: 0.8fr 1fr; }
  .char-feature:nth-of-type(even) .char-feature__media { order: 2; }
  .char-feature:nth-of-type(even) { grid-template-columns: 1fr 0.8fr; }
  .lore-grid--home { grid-template-columns: repeat(3, 1fr); }
  .lore-grid--home .lore-card:nth-child(1),
  .lore-grid--home .lore-card:nth-child(5) { grid-row: span 1; }
  .entries { grid-template-columns: repeat(2, 1fr); }
  .book-detail { grid-template-columns: minmax(260px, 0.75fr) 1fr; }
  .book-detail__cover { position: sticky; top: calc(var(--header-h) + 2rem); }
  .themes { grid-template-columns: repeat(3, 1fr); }
  .journal-entry { grid-template-columns: 1.3fr 1fr; }
  .journal-entry:nth-of-type(even) .journal-entry__media { order: 2; }
  .journal-entry:nth-of-type(even) { grid-template-columns: 1fr 1.3fr; }
  .author-grid { grid-template-columns: minmax(260px, 0.8fr) 1.2fr; }
  .author-grid__media { position: sticky; top: calc(var(--header-h) + 2rem); }
  .contact-grid { display: grid; grid-template-columns: 0.9fr 1.1fr; gap: clamp(3rem, 6vw, 6rem); align-items: start; }
  .footer-grid { grid-template-columns: 1.6fr 1fr 1fr 1.2fr; }
}

@media (min-width: 1000px) {
  .book-grid--featured { grid-template-columns: 1fr 1fr; gap: clamp(2.5rem, 4vw, 4rem); }
  .book-grid--featured .book-card { grid-template-columns: 1fr; }
  .book-grid--featured .book-card__cover { max-width: 340px; }
  .entries { grid-template-columns: repeat(3, 1fr); }
  .video-grid--3 { grid-template-columns: repeat(3, 1fr); }
}

/* ≥ 1120px — desktop navigation */
@media (min-width: 1120px) {
  :root { --header-h: 84px; }
  .primary-nav { display: block; }
  .nav-toggle { display: none; }
  .hero { min-height: 100vh; min-height: 100svh; }
  .book-grid--featured .book-card { grid-template-columns: minmax(240px, 1fr) 1.15fr; align-items: center; }
  .book-grid--featured .book-card__cover { max-width: none; }
}

/* Short landscape phones: keep hero usable */
@media (max-height: 520px) {
  .hero { padding-bottom: 4rem; }
  .scroll-cue { display: none; }
}

/* Phones: tighten header */
@media (max-width: 520px) {
  .brand { font-size: 0.74rem; letter-spacing: 0.14em; gap: 0.6rem; }
  .brand__mark { width: 32px; height: 32px; }
  .nav-toggle { padding: 0 0.75rem; }
  .nav-toggle > span:not(.nav-toggle__bars) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
}

/* Very small phones */
@media (max-width: 380px) {
  .brand { font-size: 0.72rem; letter-spacing: 0.16em; }
  .brand__text--long { display: none; }
  .btn { padding-inline: 1.2rem; letter-spacing: 0.18em; }
}

@media print {
  body::after, .site-header, .drawer, .to-top, .fog, .scroll-cue { display: none !important; }
  body { background: #fff; color: #000; }
}

/* Newsletter / contact (added with Letters from the Hollow) */
@media (min-width: 600px) {
  .nl-form__row { grid-template-columns: 0.8fr 1.2fr; }
  .footer-nl__row { flex-direction: row; }
  .footer-nl__row .input { flex: 1; min-width: 0; }
}
