/************************/
/* BELOW 1350px */
/************************/

@media (max-width: 85em) {
  .hero {
    max-width: 55%;
  }

  .services-section {
    max-width: 85%;
  }

  .about-content {
    max-width: 85%;
  }

  .astronaut {
    height: 10rem;
  }

  .project-card {
    width: 45rem;
    height: 28rem;
  }

  .steps-header {
    max-width: 90%;
  }

  .steps-grid {
    max-width: 90%;
  }

  .heading-sub {
    max-width: 100rem;
  }
}

/************************/
/* BELOW 1120px */
/************************/

@media (max-width: 70em) {
  html {
    font-size: 56.25%;
  }

  .hero {
    max-width: 65%;
  }

  .steps-grid {
    gap: 3rem;
  }

  .steps-grid .service-card {
    padding: 3rem;
  }
}

/************************/
/* BELOW 1008px */
/************************/

@media (max-width: 63em) {
  html {
    font-size: 50%;
  }

  .services-grid {
    column-gap: 3rem;
    row-gap: 3rem;
  }

  .service-card {
    padding: 3rem;
  }

  .project-card {
    width: 40rem;
    height: 25rem;
  }

  .contact-grid {
    gap: 0;
  }

  .btn-mobile-nav {
    display: block;
    z-index: 1000;
  }

  .nav-links {
    background: linear-gradient(
      rgba(11, 21, 50, 0.95),
      rgb(45, 84, 199, 0.95),
      rgba(11, 21, 50, 0.95)
    );
    position: absolute;
    top: 0;
    right: 0;
    width: 30%;
    height: 40vh;
    transform: translateX(100%);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-bottom-left-radius: 100px;
    transition: all 0.4s ease-in;
    font-size: 3rem;
    border-left: 3px solid rgb(255, 230, 66, 0.95);
    border-bottom: 3px solid rgb(255, 230, 66, 0.95);

    opacity: 0;
    pointer-events: none;
    visibility: hidden;
  }

  .nav-open .nav-links {
    opacity: 1;
    pointer-events: auto;
    visibility: visible;
    transform: translateX(0);
  }

  .nav-open .icon-mobile-nav[name="close"] {
    display: block;
  }

  .nav-open .icon-mobile-nav[name="open"] {
    display: none;
  }

  .steps-header {
    max-width: 95%;
  }

  .steps-grid {
    max-width: 95%;
  }

  .contact-img {
    width: 40rem;
  }

  .form-field {
    width: 40rem;
  }

  .heading-sub {
    max-width: 85rem;
  }

  .contact-grid {
    gap: 6rem;
  }
}

/************************/
/* BELOW 752px */
/************************/

@media (max-width: 47em) {
  .hero {
    max-width: 80%;
  }

  .services-section {
    max-width: 90%;
  }

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

  .about-content {
    max-width: 90%;
    padding: 10rem 0;
  }

  .about-wrapper {
    padding: 3rem;
  }

  .about-picture {
    bottom: -28rem;
  }

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

  .project-card {
    width: 65rem;
    height: 40rem;
  }

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

  .contact-img {
    grid-row: 1;
  }
  .nav-links {
    width: 40%;
  }

  .steps-header {
    max-width: 85%;
  }

  .steps-grid {
    max-width: 85%;
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    gap: 5rem;
  }

  .steps-section .service-card:nth-child(1) {
    grid-row: 2 / 3;
  }

  .steps-section .service-card:nth-child(3) {
    grid-row: 3 / 4;
  }

  .steps-section .service-card:nth-child(4) {
    grid-row: 4 / 5;
  }
  .steps-section .service-card:nth-child(6) {
    grid-row: 5 / 6;
  }

  .fifth-step {
    grid-row: 6 / 7;
  }

  .footer-spacer {
    height: 60rem;
  }

  .footer-nav {
    display: grid;
    grid-template-columns: 1fr;
  }

  .footer-links {
    display: grid;
    grid-template-columns: 1fr 1fr;
    justify-self: center;
    margin-bottom: 5rem;
  }

  .footer-links .main-nav-link {
    color: #0b1532;
  }

  .contact-img {
    width: 30rem;
  }

  .form-field {
    width: 50rem;
  }

  .heading-sub {
    max-width: 65rem;
  }

  .contact-grid {
    gap: 5rem;
  }
}

/************************/
/* BELOW 608px */
/************************/

@media (max-width: 38em) {
  html {
    font-size: 45%;
  }
  .hero {
    max-width: 90%;
  }
  .nav-links {
    width: 50%;
  }
}

/************************/
/* BELOW 496px */
/************************/

@media (max-width: 31em) {
  .project-card {
    width: 55rem;
    height: 32rem;
  }

  .about-content {
    padding-bottom: 30rem;
  }

  .project-card {
    width: 42rem;
    height: 28rem;
  }

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

  .heading-sub {
    max-width: 80%;
  }

  .nav-links {
    width: 60%;
  }

  .form-field {
    width: 38rem;
  }
}
