/* ============================================
   TECH ORBIT - RESPONSIVE DESIGN
   ============================================ */

/* ---- Tablet (max-width: 1200px) ---- */
@media (max-width: 1200px) {
  .services-grid, .projects-grid, .projects-carousel, .products-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .stats-grid { grid-template-columns: repeat(2, 1fr); gap: var(--space-md); }
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
  .feature-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ---- Tablet Portrait (max-width: 992px) ---- */
@media (max-width: 992px) {
  /* Mobile nav */
  .nav-menu { position: fixed; top: 0; right: -100%; width: 320px; height: 100vh; background: var(--white); flex-direction: column; padding: 80px var(--space-lg) var(--space-lg); box-shadow: var(--shadow-xl); transition: right var(--transition-normal); z-index: 300; gap: 0; align-items: stretch; }
  .nav-menu.active { right: 0; }
  .nav-menu .nav-link { color: var(--dark-gray); padding: 14px 0; border-bottom: 1px solid #eee; font-size: 1rem; }
  .nav-menu .nav-link::after { display: none; }
  .nav-links { position: fixed; top: 0; right: -100%; width: 320px; height: 100vh; background: var(--white); flex-direction: column; padding: 80px var(--space-lg) var(--space-lg); box-shadow: var(--shadow-xl); transition: right var(--transition-normal); z-index: 300; gap: 0; }
  .nav-links.active { right: 0; display: flex; }
  .nav-links .nav-link { color: var(--dark-gray); padding: 14px 0; border-bottom: 1px solid #eee; font-size: 1rem; }
  .nav-links .nav-link::after { display: none; }
  .nav-toggle, .hamburger { display: flex; }
  .nav-cta { display: none; }

  .services-grid, .why-us-grid, .features-grid { grid-template-columns: 1fr; max-width: 600px; margin: 0 auto; }
  .projects-grid, .projects-carousel { grid-template-columns: 1fr; max-width: 500px; margin: 0 auto; }
  .process-steps { flex-direction: column; gap: var(--space-lg); }
  .process-steps::before { display: none; }
  .contact-grid { grid-template-columns: 1fr; }
  .contact-cards-row { grid-template-columns: 1fr; }
  .ci-social-grid { grid-template-columns: repeat(3, 1fr); }
  .hero-stats { flex-wrap: wrap; gap: var(--space-md); }
  .footer-grid { grid-template-columns: 1fr; gap: var(--space-lg); }
  .quick-inquiry-panel { width: 100%; right: -100%; }
}

/* ---- Mobile Landscape (max-width: 768px) ---- */
@media (max-width: 768px) {
  :root { --space-2xl: 4rem; --space-3xl: 5rem; }
  .hero { min-height: 90vh; }
  .hero h1, .hero-title { font-size: clamp(2rem, 6vw, 3rem); }
  .hero-description, .hero-subtitle { font-size: 1rem; }
  .hero-cta { flex-direction: column; align-items: stretch; }
  .hero-cta .btn { width: 100%; text-align: center; }
  .hero-stats { justify-content: space-around; }
  .hero-stat .stat-number, .stat-item .stat-number { font-size: 1.5rem; }
  .scroll-indicator, .hero-scroll-indicator { display: none; }
  .stats-grid { grid-template-columns: repeat(2, 1fr); gap: var(--space-md); }
  .stat-box .stat-number { font-size: 2rem; }
  .section { padding: var(--space-xl) 0; }
  .products-grid, .feature-grid { grid-template-columns: 1fr; }
  .tabs { gap: 4px; }
  .tab-btn { padding: 10px 16px; font-size: 0.8rem; }
  .page-hero { min-height: 35vh; }
  .cta-buttons { flex-direction: column; align-items: center; }
  .quick-inquiry-panel { display: none; }
  .quick-inquiry-btn { display: none; }
  .form-grid { grid-template-columns: 1fr; }
  .contact-cards-row { grid-template-columns: 1fr; gap: var(--space-sm); }
  .ci-card { padding: 24px 20px; }
  .ci-social-grid { grid-template-columns: repeat(3, 1fr); }
}

/* ---- Mobile Portrait (max-width: 480px) ---- */
@media (max-width: 480px) {
  :root { --space-lg: 2rem; --space-xl: 3rem; --space-2xl: 3.5rem; }
  .container { padding: 0 16px; }
  .logo-text, .brand-text { display: none; }
  .hero { min-height: 85vh; padding-top: 80px; }
  .hero h1, .hero-title { font-size: 1.8rem; }
  .hero-badge { font-size: 0.75rem; padding: 6px 14px; }
  .hero-stats { flex-direction: column; align-items: center; gap: var(--space-sm); }
  .stats-grid { grid-template-columns: 1fr; }
  .footer-bottom-content { flex-direction: column; text-align: center; }
  .footer-bottom-links { flex-wrap: wrap; justify-content: center; }
  .btn { padding: 12px 24px; font-size: 0.9rem; }
  .nav-menu, .nav-links { width: 100%; }
  .chatbot-window { width: calc(100vw - 40px); right: -10px; }
  .chatbot-messages { max-height: 50vh; }
  .spec-table th, .spec-table td { padding: 10px 12px; font-size: 0.8rem; }
}

/* ---- Print ---- */
@media print {
  .navbar, .chatbot, .chatbot-widget, .scroll-top, .scroll-to-top, .cta-banner, .quick-inquiry-panel { display: none !important; }
  .hero { min-height: auto; padding: 2rem 0; }
  body { font-size: 12pt; }
}
