/* Home-only editorial imagery. Reading pages keep their existing layout. */
.home-hero {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  grid-template-areas: "heading visual" "intro visual";
  column-gap: 48px;
  row-gap: 28px;
  align-items: start;
  padding-block: 64px;
}
.hero-heading { grid-area: heading; align-self: end; }
.home-hero h1 { font-size: clamp(2.5rem, 4.7vw, 3.75rem); }
.hero-intro { grid-area: intro; padding-bottom: 0; }
.hero-visual { grid-area: visual; align-self: stretch; min-width: 0; overflow: hidden; background: var(--media-placeholder); }
.hero-visual img { display: block; width: 100%; height: 100%; min-height: 460px; object-fit: cover; object-position: 50% 50%; }
.guide-card { border-top: 0; }
.guide-card-link { padding: 0 0 24px; }
.guide-thumbnail { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; background: var(--media-placeholder); }
.guide-card-link > .guide-category { margin: 26px 30px 22px; }
.guide-card-body { padding-inline: 30px; }
.guide-card-footer { margin-inline: 30px; }
@media (max-width: 1000px) {
  .home-hero { column-gap: 28px; }
  .home-hero h1 { font-size: clamp(2rem, 4.7vw, 3rem); }
  .hero-visual img { min-height: 450px; }
  .guide-card-link > .guide-category { margin-inline: 24px; }
  .guide-card-body { padding-inline: 24px; }
  .guide-card-footer { margin-inline: 24px; }
}
@media (max-width: 760px) {
  .home-hero { grid-template-columns: minmax(0, 1fr); grid-template-areas: "heading" "visual" "intro"; gap: 26px; padding-block: 38px; }
  .home-hero h1 { font-size: clamp(2.125rem, 8vw, 3.625rem); }
  .hero-visual img { min-height: 0; height: auto; aspect-ratio: 3 / 2; }
  .guide-card-link { padding: 0 0 24px; }
  .guide-card-footer { margin-top: 12px; }
}
@media (max-width: 380px) {
  .guide-card-link > .guide-category { margin-inline: 20px; }
  .guide-card-body { padding-inline: 20px; }
  .guide-card-footer { margin-inline: 20px; }
}
