  /* ============================================================
     RESPONSIVE
     ============================================================ */
  @media (max-width: 1100px) {
    .hero-page-grid { grid-template-columns: 1fr; gap: 32px; }
    .channel-grid { grid-template-columns: 1fr; gap: 56px; }
    .concept-grid,
    .concept-grid--4 { grid-template-columns: repeat(2, 1fr); }
    .persona-grid { grid-template-columns: repeat(2, 1fr); }
    .stats-grid { grid-template-columns: repeat(2, 1fr); }
    .process-grid { grid-template-columns: repeat(2, 1fr); gap: 40px; }
  }
  @media (max-width: 760px) {
    .persona-grid { grid-template-columns: 1fr; }
    .stats-grid { grid-template-columns: repeat(2, 1fr); }
  }
  @media (max-width: 600px) {
    .container { padding: 0 20px; }
    .hero-page { padding: 120px 0 60px; }
    .block { padding: 70px 0; }
    .channel-section { padding: 80px 0; }
    .stats-band { padding: 80px 0; }
    .section-head { margin-bottom: 48px; }
    .concept-grid,
    .concept-grid--4 { grid-template-columns: 1fr; }
    .channel-cards { grid-template-columns: 1fr; }
    .chat-mock { padding: 22px 18px; }
    .stats-grid { grid-template-columns: 1fr; gap: 16px; }
    .stat-num { font-size: 38px; }
    .process-grid { grid-template-columns: 1fr; gap: 32px; }
    .process-step::before { font-size: 64px; }
    .cta-band { padding: 80px 0; }
    .hero-cta-row { flex-direction: column; }
    .btn-primary, .btn-secondary { justify-content: center; }
    .inline-cta { flex-direction: column; align-items: stretch; padding: 24px 22px; gap: 18px; margin-top: 44px; }
    .inline-cta .btn-primary { align-self: stretch; justify-content: center; }
    .cta-band-links { flex-direction: column; gap: 14px; }
  }

  /* Keep this page clear of the fixed contact rail while it is visible. */
  @media (min-width: 1024px) and (max-width: 1399px) {
    .hero-page > .container, .block > .container { padding-left: 104px; }
  }
