/* ═══ Responsive ═══ */

@media (max-width: 1024px) {
  .hero__title { font-size: 36px; }
  .hero__latest-title { font-size: 26px; }
  .hero__left, .hero__right { padding: var(--space-2xl) var(--space-lg); }
}

@media (max-width: 768px) {
  /* Nav */
  .nav-links { display: none; }
  .nav-hamburger { display: flex; }
  .nav-wordmark { font-size: 16px; }

  /* Split hero stacks on mobile */
  .hero--split {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .hero__left {
    padding: 100px var(--space-lg) var(--space-2xl);
    min-height: 45vh;
  }
  .hero__right {
    padding: var(--space-xl) var(--space-lg);
  }
  .hero__title { font-size: 32px; }
  .hero__latest-title { font-size: 24px; }
  .hero__subscribe {
    flex-direction: column;
  }

  /* Feed */
  .feed { padding: var(--space-xl) var(--space-md); }
  .post-card__title { font-size: 22px; }

  /* Article */
  .article { padding: 100px var(--space-md) var(--space-2xl); }
  .article__title { font-size: 30px; }
  .article__body { font-size: 17px; }
  .article__body blockquote { font-size: 20px; }

  /* Share */
  .share { flex-direction: column; align-items: flex-start; gap: var(--space-sm); }

  /* About */
  .about-hero__title { font-size: 36px; }
  .about-hero__content { padding-top: 100px; }
  .about-body__content { font-size: 17px; }
  .about-contact { justify-content: center; }

  /* Archive */
  .archive-page { padding: 80px var(--space-md) var(--space-2xl); }
  .archive-title { font-size: 30px; }
  .archive-item { flex-direction: column; gap: var(--space-xs); }

  /* Archive cards */
  .archive-card { flex-direction: column-reverse; gap: var(--space-md); }
  .archive-card__image { width: 100%; }
  .archive-card__title { font-size: 20px; }

  /* Post cards with images */
  .post-card__link { flex-direction: column-reverse; gap: var(--space-md); }
  .post-card__image { width: 100%; }
  .post-card__title { font-size: 22px; }

  /* Feed cards with images */
  .feed-card__link { flex-direction: column-reverse; gap: var(--space-md); }
  .feed-card__image { width: 100%; }

  /* Generic / Error */
  .generic-page { padding: 80px var(--space-md) var(--space-2xl); }
  .generic-page__title { font-size: 30px; }
  .error-page__code { font-size: 64px; }

  /* Recommendations */
  .rec-card { flex-direction: column-reverse; gap: var(--space-md); }
  .rec-card__image { width: 100%; }
  .rec-card__title { font-size: 18px; }

  /* Bottom section */
  .bottom-section__inner {
    grid-template-columns: 1fr;
    gap: var(--space-xl);
  }

  /* Modal — bottom sheet */
  .modal-backdrop { align-items: flex-end; }
  .signup-modal {
    width: 100%;
    max-width: 100%;
    border-radius: var(--radius-xl) var(--radius-xl) 0 0;
    max-height: 70vh;
    overflow-y: auto;
    transform: translateY(100%);
  }
  .modal-backdrop.is-open .signup-modal { transform: translateY(0); }
  .signup-modal::before {
    content: '';
    display: block;
    width: 40px;
    height: 4px;
    border-radius: 2px;
    background: rgba(42, 31, 20, 0.15);
    margin: 0 auto var(--space-md);
  }
}

@media (max-width: 480px) {
  .hero__title { font-size: 28px; }
  .hero__latest-title { font-size: 22px; }
  .nav-inner { padding: var(--space-sm) var(--space-md); }
}
