/* ============================================================
   Vic Tech – Responsive Styles
   ============================================================ */

/* ---- Tablet: ≤1024px ---- */
@media (max-width: 1024px) {
  .hero-content { grid-template-columns: 1fr; gap: 60px; text-align: center; }
  .hero-actions { justify-content: center; }
  .hero-stats   { justify-content: center; }
  .hero-sub     { margin: 0 auto 40px; }
  .hero-visual  { justify-content: center; }
  .hero-solar-card { right: 0; }

  .about-grid { grid-template-columns: 1fr; gap: 40px; }
  .contact-grid { grid-template-columns: 1fr; gap: 40px; }

  .footer-top .footer-container { grid-template-columns: 1fr 1fr; gap: 40px; }
}

/* ---- Mobile: ≤768px ---- */
@media (max-width: 768px) {
  /* Navbar */
  .nav-menu {
    position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 999;
    background: var(--dark); flex-direction: column; justify-content: center;
    gap: 8px; padding: 80px 24px 32px; transform: translateX(100%);
    transition: transform .4s ease;
  }
  .nav-menu.open { transform: translateX(0); }
  .nav-link { font-size: 1.1rem; padding: 14px 20px; width: 100%; text-align: center; }
  .nav-actions {
    position: fixed; bottom: 32px; left: 24px; right: 24px; z-index: 1000;
    display: none; gap: 8px;
  }
  .nav-actions.open { display: flex; }
  .nav-toggle { display: flex; position: relative; z-index: 1001; }

  /* Hero */
  .hero-phone-wrapper { width: 180px; }
  .hero-phone { width: 180px; height: 360px; }
  .hero-orbit-1 { width: 280px; height: 280px; }
  .hero-orbit-2 { width: 380px; height: 380px; }

  /* Sections */
  .section-pad { padding: 72px 0; }
  .services-grid { grid-template-columns: 1fr 1fr; }
  .features-grid { grid-template-columns: 1fr 1fr; }
  .blog-grid     { grid-template-columns: 1fr; }
  .pricing-grid  { grid-template-columns: 1fr; }
  .pricing-card.popular { transform: scale(1); }
  .portfolio-grid { grid-template-columns: 1fr 1fr; }
  .team-grid     { grid-template-columns: 1fr 1fr; }
  .about-values  { grid-template-columns: 1fr; }
  .counters-grid { grid-template-columns: 1fr 1fr; }

  /* Footer */
  .footer-top .footer-container { grid-template-columns: 1fr; gap: 32px; }
  .footer-bottom-inner { flex-direction: column; text-align: center; }
  .footer-newsletter { flex-direction: column; }

  /* Contact form card */
  .contact-form-card { padding: 32px 24px; }
}

/* ---- Small Mobile: ≤480px ---- */
@media (max-width: 480px) {
  .services-grid { grid-template-columns: 1fr; }
  .features-grid { grid-template-columns: 1fr; }
  .portfolio-grid { grid-template-columns: 1fr; }
  .team-grid     { grid-template-columns: 1fr; }
  .counters-grid { grid-template-columns: 1fr; }
  .hero-actions  { flex-direction: column; align-items: center; }
  .cta-actions   { flex-direction: column; align-items: center; }
  .hero-stats    { gap: 24px; }
  .nav-actions   { flex-direction: column; }
  .btn           { width: 100%; justify-content: center; }
  .btn-sm        { width: auto; }
}

/* ---- Print ---- */
@media print {
  .navbar, .floating-buttons, #page-loader { display: none !important; }
  body { color: #000; }
  a { color: #000; }
}
