/* ===========================
   PIXOSWIFTRC — Responsive
   =========================== */

@media (max-width: 1100px) {
  .hero-grid { grid-template-columns: 1fr; gap: 60px; }
  .hero-visual { max-width: 500px; margin: 0 auto; }
  .showcase-grid, .two-col { grid-template-columns: 1fr; gap: 50px; }
  .two-col.reverse { direction: ltr; }
  .feature-grid, .feature-grid.three { grid-template-columns: repeat(2, 1fr); }
  .testimonial-grid { grid-template-columns: 1fr; }
  .resource-grid { grid-template-columns: repeat(2, 1fr); }
  .rules-grid { grid-template-columns: repeat(2, 1fr); }
  .legal-wrap { grid-template-columns: 1fr; }
  .legal-toc { position: static; }
  .contact-grid { grid-template-columns: 1fr; gap: 40px; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 40px; }
  .cta-card { flex-direction: column; align-items: flex-start; padding: 42px; }
}

@media (max-width: 860px) {
  :root { --section-y: 80px; }
  .main-nav, .btn-cta { display: none; }
  .menu-toggle { display: flex; }
  .nav-wrap { padding: 14px 20px; }
  .container { padding: 0 20px; }

  .hero { padding: 70px 0 90px; }
  .hero-meta { gap: 24px; }
  .hero-meta strong { font-size: 1.3rem; }
  .floating-chip { display: none; }

  .page-hero { padding: 80px 0 70px; }

  .cta-card { padding: 34px; }
  .form-row { grid-template-columns: 1fr; }
  .contact-form { padding: 28px; }
}

@media (max-width: 560px) {
  :root { --section-y: 60px; }
  body { font-size: 15px; }
  .container { padding: 0 18px; }

  h1 { font-size: 2.1rem; }
  h2 { font-size: 1.7rem; }

  .feature-grid, .feature-grid.three, .rules-grid, .resource-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; gap: 32px; }
  .footer-bottom { flex-direction: column; gap: 8px; text-align: center; }

  .hero-ctas { flex-direction: column; align-items: stretch; }
  .hero-ctas .btn { width: 100%; }
  .hero-meta { gap: 20px; flex-wrap: wrap; }

  .cta-card { padding: 28px; }
  .cta-actions { width: 100%; }
  .cta-actions .btn { flex: 1; }

  .feature-card, .rule-card { padding: 26px; }
  .warning-list { padding: 26px; }
}