/* ==========================================================================
   Sunvani — Responsive rules
   Breakpoints tested at: 1440 / 1200 / 992 / 768 / 480 / 360
   ========================================================================== */

/* ---------- 1200px and down ---------- */
@media (max-width: 1200px) {
  .services-grid { grid-template-columns: repeat(2, 1fr); }
  .industries-grid { grid-template-columns: repeat(3, 1fr); }
  .why-grid { grid-template-columns: repeat(2, 1fr); }
  .analytics-metrics { grid-template-columns: repeat(3, 1fr); }
  :root { --container-w: 100%; }
}

/* ---------- 992px and down (tablet) ---------- */
@media (max-width: 992px) {
  .main-nav, .header-actions .btn-primary { display: none; }
  .hamburger { display: inline-flex; }

  .hero-inner { grid-template-columns: 1fr; }
  .hero-visual { order: -1; max-width: 480px; margin: 0 auto; }
  .hero-copy .lead { max-width: 100%; }

  .process-track { grid-template-columns: repeat(3, 1fr); gap: 32px; }
  .process-track::before { display: none; }

  .analytics-grid { grid-template-columns: 1fr; }
  .analytics-metrics { grid-template-columns: repeat(3, 1fr); }

  .split-inner { grid-template-columns: 1fr; gap: 40px; }
  .split-inner.reverse .split-copy, .split-inner .split-copy { order: 2; }
  .split-inner.reverse .split-visual, .split-inner .split-visual { order: 1; }
  .split-visual { max-width: 520px; margin: 0 auto; width: 100%; }

  .footer-grid { grid-template-columns: 1fr 1fr; gap: 36px; }
  .footer-brand-col { grid-column: 1 / -1; }

  .contact-grid { grid-template-columns: 1fr; }
  .contact-info-card { order: 2; }

  .two-col-media { grid-template-columns: 1fr; }
  .feature-list-grid { grid-template-columns: 1fr; }
  .industries-grid { grid-template-columns: repeat(2, 1fr); }
  .partner-types-grid { grid-template-columns: repeat(2, 1fr); }
  .values-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ---------- 768px and down (mobile) ---------- */
@media (max-width: 768px) {
  .container { padding: 0 18px; }

  .mobile-nav {
    display: block;
    position: fixed; inset: 0; top: var(--header-h);
    background: var(--white); z-index: 490;
    padding: 20px 18px 40px; overflow-y: auto;
    transform: translateX(100%); transition: transform 0.3s var(--ease);
  }
  .site-header.is-scrolled ~ .mobile-nav { top: 68px; }
  .mobile-nav.is-open { transform: translateX(0); }
  .mobile-nav ul { display: flex; flex-direction: column; gap: 4px; }
  .mobile-nav > ul > li > a, .mobile-dropdown-toggle {
    display: flex; align-items: center; justify-content: space-between; width: 100%;
    padding: 16px 6px; font-weight: 700; font-size: 1.05rem; border-bottom: 1px solid var(--border-light);
  }
  .mobile-dropdown-menu { max-height: 0; overflow: hidden; transition: max-height 0.3s var(--ease); padding-left: 14px; }
  .mobile-services.is-open .mobile-dropdown-menu { max-height: 400px; }
  .mobile-services.is-open .icon-chevron { transform: rotate(180deg); }
  .mobile-dropdown-menu li a { padding: 12px 6px; font-weight: 600; color: var(--text-secondary); border-bottom: none; }
  .mobile-nav .btn { margin-top: 18px; }

  .hero { padding: 44px 0 60px; }
  .hero-buttons { flex-direction: column; align-items: stretch; }
  .hero-buttons .btn { width: 100%; }

  .dashboard-metrics { grid-template-columns: repeat(2, 1fr); }
  .floating-card { display: none; }

  .trust-strip-inner { flex-direction: column; align-items: flex-start; }
  .trust-items { gap: 18px 26px; }

  .services-section, .process-section, .analytics-section, .why-section,
  .industries-section, .split-section, .content-section { padding: 64px 0; }

  .services-grid { grid-template-columns: 1fr; }
  .process-track { grid-template-columns: 1fr; gap: 26px; }
  .analytics-metrics { grid-template-columns: repeat(2, 1fr); }
  .why-grid { grid-template-columns: 1fr; }
  .industries-grid { grid-template-columns: repeat(2, 1fr); }
  .partner-types-grid { grid-template-columns: 1fr; }
  .values-grid { grid-template-columns: 1fr; }

  .final-cta-inner { flex-direction: column; align-items: flex-start; text-align: left; }
  .final-cta-inner .cta-buttons { width: 100%; }
  .final-cta-inner .cta-buttons .btn { flex: 1; }

  .footer-grid { grid-template-columns: 1fr; gap: 30px; }
  .footer-bottom { flex-direction: column; align-items: flex-start; }

  .page-hero { padding: 100px 0 60px; }

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

  .bar-chart-large { height: 130px; }
}

/* ---------- 480px and down ---------- */
@media (max-width: 480px) {
  h1 { font-size: 2rem; }
  h2 { font-size: 1.6rem; }

  .dashboard-card { padding: 20px 18px 18px; }
  .dashboard-metrics { grid-template-columns: repeat(2, 1fr); gap: 8px; }
  .metric-tile { padding: 11px; }
  .metric-tile .metric-value { font-size: 1.05rem; }

  .industries-grid { grid-template-columns: 1fr; }
  .cta-buttons { flex-direction: column; align-items: stretch; }
  .cta-buttons .btn { width: 100%; }

  .contact-info-card, .contact-form-card { padding: 22px; }
}

/* ---------- 360px ---------- */
@media (max-width: 360px) {
  .container { padding: 0 14px; }
  .analytics-metrics { grid-template-columns: 1fr 1fr; }
  .dashboard-metrics { grid-template-columns: 1fr 1fr; }
}
