@media (max-width: 1100px) {
  .hero-grid,
  .contact-grid,
  .contact-page-grid,
  .process-grid,
  .services-grid,
  .services-grid-2,
  .services-grid-3,
  .projects-grid,
  .products-grid,
  .faq-grid,
  .form-row {
    grid-template-columns: 1fr;
  }

  .hero {
    padding-top: 60px;
  }

  .hero-panel {
    min-height: 500px;
  }

  .cta-box,
  .footer-content {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 860px) {
  .nav {
    position: absolute;
    top: calc(100% + 10px);
    right: 4%;
    width: min(300px, 92vw);
    padding: 18px;
    border-radius: 20px;
    background: rgba(7, 12, 25, 0.96);
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-10px) scale(0.98);
    transform-origin: top right;
    transition:
      opacity 0.28s ease,
      transform 0.28s ease,
      visibility 0.28s ease;
  }

  .nav.open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0) scale(1);
  }

  .menu-toggle {
    display: block;
  }

  .header-actions {
    gap: 10px;
  }

  .lang-switcher {
    order: -1;
  }

  .lang-btn {
    min-width: 38px;
    height: 34px;
    padding: 0 10px;
    font-size: 0.82rem;
  }

  .hero-stats {
    grid-template-columns: 1fr;
  }

  .floating-card {
    position: relative;
    width: 100%;
    left: auto;
    right: auto;
    top: auto;
    bottom: auto;
  }

  .hero-panel {
    display: grid;
    gap: 16px;
  }

  .grid-lines {
    display: none;
  }
}

@media (max-width: 560px) {
  .section {
    padding: 80px 0;
  }

  .hero h1 {
    font-size: 2.35rem;
  }

  .hero-text,
  .section-heading p,
  .service-card p,
  .process-step p,
  .project-card p,
  .product-card p,
  .contact-info p,
  .cta-box p {
    font-size: 0.97rem;
  }

  .service-card,
  .process-step,
  .project-card,
  .product-card,
  .contact-info,
  .contact-form,
  .cta-box {
    padding: 22px;
  }

  .logo-text {
    font-size: 0.94rem;
  }

  .logo-image {
    height: 38px;
  }

  .header-actions {
    gap: 8px;
  }

  .lang-switcher {
    padding: 5px;
  }

  .lang-btn {
    min-width: 34px;
    height: 32px;
    padding: 0 8px;
    font-size: 0.78rem;
  }
}