/* ---------------------------------------------
   Mobile View Styles
--------------------------------------------- */
@media (max-width: 600px) {
    body {
      padding: 0 10px;
    }
    .nav-toggle {
      display: block;
    }
  
    .main-nav {
      overflow: hidden;
      max-height: 0;
      transition: max-height 0.4s ease-out;
      width: 100%;
    }
  
    .main-nav.nav-open {
      display: flex;
      flex-direction: column;
      gap: 1rem;
      margin-top: 15px;
      max-height: 500px; /* enough to show all menu items */
      transition: max-height 0.5s ease-in;
    }
    .header-container {
      flex-direction: row;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 10px;
    }
    .logo {
      max-width: 120px;
    margin-bottom: 0;
    }
    .nav-links {
      flex-direction: column;
      gap: 0.8rem;
    }
    .nav-link {
      font-size: 0.95rem;
    }
  
    /* Hero Section */
    #hero {
      height: 90vh;
    }
    .hero-title {
      font-size: 1.8rem;
      line-height: 2.2rem;
    }
    .hero-subtitle {
      font-size: 1rem;
      padding: 0 10px;
    }
    .btn {
      padding: 10px 20px;
      font-size: 0.95rem;
    }
  
    /* Services Section */
    .services {
      padding: 50px 10px;
    }
    .section-title {
      font-size: 2rem;
    }
    .service-card {
      padding: 30px 20px;
    }
    .icon-box {
      width: 70px;
      height: 70px;
    }
  
    /* Products Section */
    .products-section {
      padding: 50px 10px;
    }
    .section-description {
      font-size: 1rem;
      margin: 0 auto 30px;
    }
    .product-grid {
      grid-template-columns: 1fr;
      gap: 20px;
    }
    .product-card {
      padding: 20px;
    }
    .product-card img {
      height: 150px;
    }
  
    /* Clients Section */
    .client-card img {
      width: 80px;
      height: 80px;
    }
  
    /* Footer */
    .site-footer {
      padding: 40px 10px;
    }
    .footer-grid {
      grid-template-columns: 1fr;
      gap: 30px;
    }
    .footer-column h4 {
      font-size: 1rem;
    }
    .footer-column p,
    .footer-column ul li,
    .footer-column a {
      font-size: 0.8rem;
    }
    .footer-bottom {
      font-size: 0.7rem;
    }
  
    /* Contact Modal */
    .contact-modal .modal-content {
      width: 90%;
      padding: 20px 15px;
    }
    .contact-buttons {
      gap: 10px;
    }
    .contact-option {
      font-size: 0.9rem;
      padding: 12px;
    }
  }
  