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

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

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

  .astronaut {
    height: 10rem;
  }

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

  .project-track {
    height: 54rem;
  }

  .project-slide.slide-prev {
    transform: translate(calc(-50% - 38rem), 0) scale(0.8);
  }

  .project-slide.slide-next {
    transform: translate(calc(-50% + 38rem), 0) scale(0.8);
  }

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

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

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

  .footer-nav {
    gap: 3rem;
  }

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

/************************/
/* 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: 35rem;
    height: 22rem;
  }

  .project-track {
    height: 50rem;
  }

  .project-slide.slide-prev {
    transform: translate(calc(-50% - 32rem), 0) scale(0.75);
  }

  .project-slide.slide-next {
    transform: translate(calc(-50% + 32rem), 0) scale(0.75);
  }

  .contact-grid {
    gap: 0;
  }

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

  .nav-links {
    background: linear-gradient(rgba(11, 21, 50, 0.9));
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100vh;
    transform: translateX(100%);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: all 0.4s ease-in;
    font-size: 3.5rem;

    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    padding: 8rem 0 4rem;
    gap: 3rem;
  }

  .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;
  }

  .nav-item-dropdown {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .dropdown-menu {
    position: static;
    transform: none;
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 0;
    min-width: auto;
    max-height: 0;
    overflow: hidden;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: max-height 0.3s ease;
  }

  .nav-item-dropdown.dropdown-open .dropdown-menu {
    max-height: 30rem;
  }

  .nav-item-dropdown:hover .dropdown-menu {
    max-height: 0;
  }

  .nav-item-dropdown.dropdown-open:hover .dropdown-menu {
    max-height: 30rem;
  }

  .dropdown-link:link,
  .dropdown-link:visited {
    padding: 0.8rem 2rem;
    font-size: 2rem;
    text-align: center;
    color: rgba(255, 255, 255, 0.7); /* var(--color-white) at 70% opacity */
  }

  .dropdown-link:hover,
  .dropdown-link:active {
    background-color: transparent;
    color: var(--color-yellow);
  }

  .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;
  }

  .footer-nav {
    grid-template-columns: repeat(2, 1fr);
    row-gap: 7rem;
  }

  .footer-column:nth-child(4) {
    grid-row: 1 / 2;
    grid-column: 2 / 3;
  }

  .testimonial-btn {
    width: 5rem;
    height: 5rem;
  }

  .testimonial-btn img {
    width: 4rem;
    height: 4rem;
  }

  .project-btn {
    width: 5rem;
    height: 5rem;
  }

  .project-btn img {
    width: 4rem;
    height: 4rem;
  }
}

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

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

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

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

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

  .project-desc {
    max-width: 65rem;
  }

  .project-slide {
    width: 65rem;
  }

  .project-track {
    height: 58rem;
  }

  .project-slide.slide-prev {
    transform: translate(calc(-50% - 50rem), 0) scale(0.8);
    opacity: 0;
    pointer-events: none;
  }

  .project-slide.slide-next {
    transform: translate(calc(-50% + 50rem), 0) scale(0.8);
    opacity: 0;
    pointer-events: none;
  }

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

  .contact-img {
    grid-row: 1;
  }

  .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-links {
    display: grid;
    justify-self: center;
    margin-bottom: 5rem;
  }

  .contact-img {
    width: 30rem;
  }

  .form-field {
    width: 50rem;
  }

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

  .contact-grid {
    gap: 5rem;
  }

  .about-picture {
    width: 40%;
  }

  .about-wrapper {
    display: grid;
    grid-template-columns: 1fr;
    gap: 5rem;
  }

  .about-picture {
    margin: 0;
    grid-row: 2 / 3;
    width: 75%;
    height: auto;
    justify-self: center;
  }
}

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

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

  .footer-nav {
    grid-template-columns: 1fr;
    padding: 0 10rem;
  }

  .footer-column {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .footer-links {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .footer-column:nth-child(4) {
    grid-row: 4 / 5;
    grid-column: 1 / 2;
  }

  .back-to-top {
    bottom: 10rem;
  }
}

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

@media (max-width: 31em) {
  .about-content {
    padding-bottom: 30rem;
  }

  .project-card {
    width: 38rem;
    height: 24rem;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .project-desc {
    max-width: 38rem;
  }

  .project-track {
    height: 54rem;
  }

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

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

  .form-field {
    width: 38rem;
  }

  .about-picture {
    width: 100%;
    height: auto;
  }
}
