/* ============================================================
   RESPONSIVE — tablet (1024), mobile (768), small (480)
   ============================================================ */

@media (max-width: 1024px) {
  .page-layout {
    grid-template-columns: 1fr;
  }
  .toc { display: none; }
}

@media (max-width: 768px) {
  /* Header */
  .site-header-inner { padding: 2px 12px; }
  .logo-img { height: 58px; }
  .header-cta { font-size: 0.75rem; padding: 6px 14px; }

  /* Hero */
  .page-header { padding: 48px 32px 40px; }
  .page-header h1 { font-size: 1.75rem; }

  /* Layout */
  .page-layout { padding: 24px 16px 60px; }

  /* Intro */
  .intro-block p { font-size: 0.9375rem; line-height: 1.75; }

  /* Sections */
  .section-block { padding: 32px 0; }

  /* Typography */
  .section-block h2 { font-size: 1.375rem; }
  .section-block h3 { font-size: 1.0625rem; }
  .section-block h4 { font-size: 0.875rem; }

  /* Content grid */
  .content-grid { grid-template-columns: 1fr; }
  .content-grid--3 { grid-template-columns: 1fr; }

  /* Reviews */
  .review-specs { grid-template-columns: 1fr 1fr; }
  .pros-cons { grid-template-columns: 1fr; }
  .review-header {
    flex-direction: column;
    text-align: center;
  }
  h3.review-title { font-size: 1.0625rem; }
}

@media (max-width: 480px) {
  /* Header */
  .site-header-inner { padding: 2px 8px; }
  .logo-img { height: 54px; }
  .header-cta { font-size: 0.7rem; padding: 5px 10px; }

  /* Hero */
  .page-header { padding: 40px 24px 32px; }
  .page-header h1 { font-size: 1.25rem; }
  .page-header .subtitle { font-size: 0.875rem; }

  /* Layout */
  .page-layout { padding: 16px 12px 48px; }

  /* Sections */
  .section-block { padding: 28px 0; }

  /* Typography */
  .section-block h2 { font-size: 1.1875rem; }
  .section-block h3 { font-size: 1rem; }
  .section-block h4 { font-size: 0.8125rem; }
  h3.review-title { font-size: 1rem; }

  /* Tables */
  .data-table, .feature-table, .vs-table { font-size: 0.75rem; }
  .data-table td, .data-table th,
  .feature-table td, .feature-table th { padding: 10px 8px; }

  /* Reviews */
  .review-specs { grid-template-columns: 1fr; }
  .review-body { padding: 16px 14px; }
  .review-header { padding: 16px 14px; }

  /* Key Answer */
  .key-answer { padding: 20px 18px; gap: 14px; }
  .key-answer-badge { width: 44px; height: 44px; }
  .key-answer-badge i { font-size: 1.25rem; }
  .key-answer-text strong { font-size: 0.9375rem; }

  /* Licence Profiles */
  .licence-profile-header { padding: 14px 18px; flex-wrap: wrap; }
  .licence-profile-meta { padding: 12px 18px; gap: 4px 16px; }
  .licence-profile-body { padding: 18px; }
  .licence-profile-header h3 { font-size: 0.9375rem !important; }

  /* Check Items */
  .check-item { gap: 14px; padding: 20px 0; }
  .check-marker { width: 36px; height: 36px; }
  .check-marker i { font-size: 1rem; }

  /* Reason Items */
  .reason-item { gap: 14px; padding: 24px 0; }
  .reason-number { width: 36px; height: 36px; font-size: 0.875rem; }

  /* Red Flags & Tips Box */
  .red-flags-header { padding: 14px 18px; }
  .red-flags-list li { padding: 14px 18px; }
  .tips-box-header { padding: 14px 18px; }
  .tips-box-list li { padding: 12px 18px 12px 36px; }
  .tips-box-list li::before { left: 18px; }

  /* Bonus Scenarios */
  .bonus-scenario { padding: 14px 16px; }
  .bonus-scenario-math { gap: 4px 16px; }

  /* Pro Tips */
  .pro-tip { padding: 16px; gap: 12px; }
  .pro-tip-icon { width: 30px; height: 30px; }
  .pro-tip-icon i { font-size: 0.875rem; }

  /* Footer */
  .footer-logo { height: 56px; }
}
