/* ==========================================================================
   We IT Services - Responsive Styles
   ========================================================================== */

/* ---------- Large tablets / small laptops ---------- */
@media (max-width: 1024px) {
  .hero__grid {
    grid-template-columns: 1fr;
    gap: 48px;
  }

  .hero__text {
    max-width: 100%;
  }

  .hero__visual {
    order: -1;
  }

  .network-visual {
    max-width: 340px;
  }

  .cards-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .why-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .stats-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .focus-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .blog-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .service-row {
    grid-template-columns: auto 1fr;
  }

  .service-row__actions {
    grid-column: 2;
    flex-direction: row;
  }

  .article-layout {
    grid-template-columns: 1fr;
  }

  .toc {
    position: static;
    margin-bottom: 32px;
  }

  .contact-grid {
    grid-template-columns: 1fr;
  }

  .footer__grid {
    grid-template-columns: 1fr 1fr;
  }

  .trust-band__inner {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ---------- Tablets / large phones ---------- */
@media (max-width: 768px) {
  .section {
    padding: 64px 0;
  }

  .hero {
    padding: 72px 0 64px;
  }

  .hero__title {
    font-size: clamp(1.9rem, 6vw, 2.5rem);
  }

  .hero__actions {
    flex-direction: column;
    align-items: flex-start;
  }

  .hero__actions .btn {
    width: 100%;
  }

  .cards-grid,
  .blog-grid {
    grid-template-columns: 1fr;
  }

  .why-grid {
    grid-template-columns: 1fr;
  }

  .focus-grid {
    grid-template-columns: 1fr;
  }

  .stats-grid {
    grid-template-columns: 1fr 1fr;
  }

  .service-row {
    grid-template-columns: 1fr;
  }

  .service-row__actions {
    grid-column: 1;
  }

  .service-row__cols {
    grid-template-columns: 1fr;
  }

  .contact-grid {
    grid-template-columns: 1fr;
  }

  .contact-form {
    padding: 28px 22px;
  }

  .form-row {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .footer__grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .footer__bottom {
    flex-direction: column;
    align-items: flex-start;
  }

  .blog-toolbar {
    flex-direction: column;
    align-items: stretch;
  }

  .blog-search {
    max-width: none;
  }

  .category-filter {
    justify-content: flex-start;
  }

  .legal {
    padding: 28px 22px;
  }

  .scroll-top {
    bottom: 18px;
    right: 18px;
  }
}

/* ---------- Small phones ---------- */
@media (max-width: 480px) {
  .container {
    padding: 0 18px;
  }

  .stats-grid {
    grid-template-columns: 1fr;
  }

  .trust-band__inner {
    grid-template-columns: 1fr;
  }

  .network-visual {
    max-width: 280px;
  }

  .brand__tagline {
    display: none;
  }

  .article__share {
    flex-wrap: wrap;
  }
}