/* responsive.css
   Media queries mapped to required breakpoints.
*/

@media (max-width: 1200px) {
  /* reserved for parity tweaks */
}

@media (max-width: 992px) {
  /* reserved for parity tweaks */
}

@media (min-width: 768px) {
  .section-padding {
    padding-left: 2rem;  /* md:px-8 */
    padding-right: 2rem;
    padding-top: 6rem;   /* md:py-24 */
    padding-bottom: 6rem;
  }

  .text-4xl { font-size: 2.25rem; line-height: 2.5rem; }
  .text-6xl { font-size: 3.75rem; line-height: 1; }
}

@media (min-width: 992px) {
  .section-padding {
    padding-left: 4rem; /* lg:px-16 (mapped to <=992 strategy) */
    padding-right: 4rem;
  }

  .site-nav__desktop {
    display: flex;
  }
  .nav-toggle {
    display: none;
  }
  .site-nav__mobile {
    display: none;
  }
}

@media (max-width: 576px) {
  .site-main {
    overflow-x: clip;
  }

  .section-padding {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .hero {
    min-height: 78vh;
  }

  .page-hero__title {
    font-size: 1.875rem;
    line-height: 2.25rem;
  }

  .floating-contact {
    right: 1rem;
    bottom: 1rem;
  }

  .floating-contact__toggle {
    width: 52px;
    height: 52px;
  }

  .floating-contact__item {
    padding: 0.625rem 0.875rem;
  }
}

@media (min-width: 640px) {
  .site-nav__brand-text {
    display: block;
  }
}

@media (min-width: 768px) {
  .grid-md-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .grid-md-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .grid-md-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (min-width: 992px) {
  .grid-lg-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .grid-lg-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .grid-lg-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (min-width: 576px) {
  .grid-sm-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 768px) {
  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (min-width: 992px) {
  .footer-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

