/* ==== Tablet ≤ 992px ==== */
@media (max-width: 992px) {
  .hero-grid { grid-template-columns: 1fr; gap: 32px; }
  .hero-cover { max-width: 420px; margin: 0 auto; }
  .previews { grid-template-columns: repeat(3, 1fr); }
  .related-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; }
}

/* ==== Mobile ≤ 768px ==== */
@media (max-width: 768px) {
  .header-inner { min-height: 72px; }
  .main-nav {
    display: none;
    position: absolute; left: 0; right: 0; top: 100%;
    background: #fff; border-top: 1px solid #eee;
    flex-direction: column; padding: 12px 20px; gap: 0;
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.08);
    z-index: 50;
  }
  .main-nav.open { display: flex; }
  .main-nav a { padding: 10px 0; border-bottom: 1px solid #f2f2f2; }
  .main-nav a:last-child { border-bottom: none; }
  .site-header { position: relative; }
  .nav-toggle { display: block; }

  .hero { padding: 36px 0 44px; }
  .hero-content h1 { font-size: 26px; }
  .hero-content > p { font-size: 15px; }

  .flash-header { padding: 10px 16px; }
  .flash-price-row { flex-direction: column; align-items: flex-start; gap: 8px; }
  .flash-btn-col { width: 100%; text-align: center; }
  .buy-btn { justify-content: center; width: auto; margin: 0 auto; }
  .price-big { font-size: 56px; }
  .trust-row { flex-direction: column; gap: 8px; align-items: center; }

  .accordion-head h2 { font-size: 21px; }
  .previews { grid-template-columns: repeat(2, 1fr); margin: 32px 0 40px; }
  .faq-grid { grid-template-columns: 1fr; }
  .faq-title { font-size: 22px; }
  .faq-head { font-size: 16px; }

  .related-title { font-size: 24px; }
  .related-grid { grid-template-columns: 1fr 1fr; gap: 16px; }

  .post-nav-inner { flex-direction: column; gap: 16px; }
  .post-nav-prev, .post-nav-next { max-width: 100%; }
  .post-nav-next { align-items: flex-start; text-align: left; }

  .footer-grid { grid-template-columns: 1fr; gap: 32px; padding-top: 40px; }
}
