@media (max-width: 1280px) {
  .section-title { font-size: 36px; }
  .creds-band-title { font-size: 32px; }
}

/* 1100px */
@media (max-width: 1100px) {
  .areas-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-grid { grid-template-columns: 1.5fr 1fr 1fr; gap: 32px; }
  .creds-band-inner { grid-template-columns: 1fr; gap: 44px; }
  .step-path-title { font-size: 26px; }
}

/* 1024px - tablet and below: hamburger on */
@media (max-width: 1024px) {
  .nav-links { display: none; }
  .nav-actions .btn-nav-outline { display: none; }
  .nav-hamburger { display: flex; }
  .svc-grid { grid-template-columns: repeat(2, 1fr); }
  .bundles-grid { grid-template-columns: repeat(2, 1fr); }
  .testi-grid { grid-template-columns: repeat(2, 1fr); }
  .what-grid { grid-template-columns: repeat(2, 1fr); }
  .about-grid { grid-template-columns: 1fr; gap: 44px; }
  .content-grid { grid-template-columns: 1fr; gap: 44px; }
  .about-hero-inner { grid-template-columns: 1fr; gap: 40px; }
  .steps { grid-template-columns: repeat(2, 1fr); gap: 36px; }
  .steps::before { display: none; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  .prose-grid { grid-template-columns: 1fr; }
  .sidebar { position: static; }
  .checks-grid { grid-template-columns: 1fr; }
  .types-grid { grid-template-columns: 1fr; }
  .path-card { max-width: 520px; }
  .section-title { font-size: 32px; }
  .hero-inner { grid-template-columns: 1fr; max-width: 680px; }
  .page-hero-inner { grid-template-columns: 1fr; }
}

/* 900px */
@media (max-width: 900px) {
  .mob-open[style*="flex"] { display: flex !important; }
  .hero { padding: 72px 20px 64px; }
  .hero-sub { font-size: 16px; }
  .page-hero { padding: 52px 20px 44px; }
  .step-path, .services-section, .bundles-section, .about-section,
  .testi-section, .areas-section, .section-white, .section-cream,
  .what-section, .docs-section, .process-section, .prose-section,
  .faq-section, .checks-section, .types-section, .creds-band,
  .bybl-band { padding-left: 20px; padding-right: 20px; }
  .docs-grid { grid-template-columns: repeat(2, 1fr); }
  .med-types-grid { grid-template-columns: 1fr; }
  .pricing-grid { grid-template-columns: 1fr; }
  .section-title { font-size: 30px; }
}

/* 768px */
@media (max-width: 768px) {
  .svc-grid { grid-template-columns: 1fr; }
  .bundles-grid { grid-template-columns: 1fr; }
  .testi-grid { grid-template-columns: 1fr; }
  .docs-grid { grid-template-columns: 1fr; }
  .what-grid { grid-template-columns: 1fr; }
  .areas-grid { grid-template-columns: repeat(2, 1fr); }
  .process-steps { grid-template-columns: repeat(2, 1fr); }
  .process-steps::before { display: none; }
  .footer-grid { grid-template-columns: 1fr; gap: 28px; }
  .footer-bottom { flex-direction: column; }
  .arrival-inner { flex-direction: column; align-items: flex-start; }
  .arrival-cta { width: 100%; justify-content: center; }
  .cta-btns { flex-direction: column; align-items: center; }
  .section-title { font-size: 28px; }
}

/* 640px */
@media (max-width: 640px) {
  .nav-inner { padding: 0 16px; }
  .step-path, .services-section, .bundles-section, .about-section,
  .testi-section, .areas-section, .section-white, .section-cream,
  .what-section, .docs-section, .process-section, .prose-section,
  .faq-section, .checks-section, .types-section, .creds-band,
  .bybl-band { padding-left: 16px; padding-right: 16px; }
  .steps { grid-template-columns: 1fr; gap: 28px; }
  .areas-grid { grid-template-columns: 1fr; }
  .process-steps { grid-template-columns: 1fr; }
  .hero-ctas { flex-direction: column; }
  .hero-ctas .btn-gold, .hero-ctas .btn-ghost { width: 100%; justify-content: center; }
  .hero-trust { flex-direction: column; gap: 10px; }
  .svc-card, .bundle, .testi { padding: 20px 18px; }
  .quote-card blockquote { font-size: 18px; }
  .bundle-price { font-size: 26px; }
  .section-title { font-size: 24px; }
  .section-intro { font-size: 15px; margin-bottom: 36px; }
  .step-path-title { font-size: 20px; }
  .creds-band-title { font-size: 22px; }
}

/* 600px */
@media (max-width: 600px) {
  .nav-logo-main { font-size: 15px; }
  .nav-logo-support { font-size: 12px; }
  .btn-nav-gold { font-size: 12px; padding: 8px 14px; }
}

/* 480px */
@media (max-width: 480px) {
  body { padding-top: 64px; }
  .nav { height: 64px; }
  .mob-open { top: 64px; }
  .nav-logo-main { font-size: 13px; }
  .nav-logo-support { font-size: 11px; }
  .nav-logo-rule { margin: 4px 0 3px; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-logo { font-size: 15px; }
  .section-title { font-size: 21px; }
  .section-intro { font-size: 14px; }
}
