/* rem and em DO NOT depend on HTML font size in media queries

Instead, 1 rem = 1em = 16px
*/

/* 
************BELOW 1300px (Smaller desktops)
*/

@media (max-width: 82em) {
  .hero {
    max-width: 120rem;
  }
  .hero-textbox {
    width: 45%;
  }
}

/* 
************BELOW 1200px (Landscape tablets)
*/

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

  .hero-textbox {
    width: 50%;
  }

  .grid,
  .grid.grid--what {
    gap: 4.8rem;
  }
}

/* 
************BELOW 1000px (Large Portrait tablets)
*/

@media (max-width: 62.5em) {
  /* Mobile Navigation */

  html {
    /* 8px/16px */
    font-size: 50%;
  }

  .app-icon-header {
    height: 60px; /* Adjust this to match desired button height */
  }

  .sticky .app-icon-header {
    height: 25px;
  }

  .section-hero {
    overflow: hidden;
  }

  .hero-container {
    padding: 0 2rem;
    padding-top: 1.6rem;
  }

  .hero-textbox {
    top: 5%;
  }

  .app-download-buttons {
    flex-direction: column;
    align-items: flex-start;
  }

  .img-container {
    transform: translateY(25%);
  }

  .hero-img {
    max-width: 120%;
  }

  .heading-primary {
    font-size: 6.2rem;
  }

  .hero-description {
    font-size: 3.6rem;
  }

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

  .main-nav-link:link,
  .main-nav-link:visited {
    font-size: 3rem;
  }

  .main-nav-link.btn,
  .main-nav-link.btn:link,
  .main-nav-link.btn:visited {
    font-size: 2.8rem !important;
  }

  .main-nav {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;

    background-color: rgba(0, 0, 0, 0.904);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);

    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 200;

    /* 1) Hide element visually */
    opacity: 0;
    /* 2) make it unaccessible to mouse and keyboard */
    pointer-events: none;
    /* 3) Hide it from screen readers */
    visibility: hidden;
    transition: all 0.3s;
  }

  .mobile-nav-open .main-nav {
    opacity: 1;
    pointer-events: auto;
    visibility: visible;
  }

  .main-nav-list {
    flex-direction: column;
  }

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

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

  .grid,
  .grid.grid--what {
    gap: 2rem;
  }

  /* Set auto scroll up for mobile scroll */

  .what-box:hover {
    transform: none;
  }

  .what-box {
    transform: translateY(8%);
  }

  .box-move-up {
    transform: translateY(0rem);
  }
}

/* 
************BELOW 710px (small Portrait tablets)
*/

@media (max-width: 45em) {
  .grid--2-cols {
    grid-template-columns: 1fr;
  }

  .img-container {
    transform: translateY(20%);
  }

  .hero-img {
    max-width: 130%;
  }

  .hero-textbox {
    width: 75%;
  }

  .heading-primary {
    font-size: 6.2rem;
  }

  .hero-description {
    font-size: 3.6rem;
  }

  .who-img-box {
    width: 100%;
    justify-self: center;
    margin-bottom: 4.8rem;
  }

  .who-img-box:last-child {
    margin-bottom: 0rem;
  }

  .who-img-box:nth-child(3) {
    grid-row: 4;
  }
  .who-img-box:nth-child(6) {
    grid-row: 6;
  }

  .heading-secondary {
    margin-bottom: 3.2rem !important;
  }

  .heading-tertiary {
    margin-bottom: 1.6rem !important;
  }

  .grid.grid--what {
    gap: 4.8rem;
  }

  .team-box.no-marg-right {
    margin-right: 4.2rem !important;
  }
  .team-box.no-marg-left {
    margin-left: 4.2rem !important;
  }
  .team-container.grid {
    gap: 0;
  }

  .team-box:last-child {
    margin-top: 0;
  }

  .section-who {
    padding: 4.8rem 0;
  }

  .section-what {
    padding: 4.8rem 0;
  }

  .section-why {
    padding: 4.8rem 0;
  }

  .section-team {
    padding: 4.8rem 0;
  }
}

/* 
***********Below 550px (Mobile Navigation portrait)
*/

@media (max-width: 34em) {
  .heading-primary {
    font-size: 3.6rem;
  }

  .heading-secondary {
    font-size: 3.6rem;
  }

  .hero-container {
    margin: 0 02rem;
    padding-top: 12.8rem;
  }

  .hero-textbox {
    width: 75%;
    left: 5%;
  }

  .hero-description {
    font-size: 2.4rem;
  }

  .hero-textbox .btn,
  .hero-textbox .btn:link,
  .hero-textbox .btn:visited {
    font-size: 1.6rem;
    padding: 1.2rem 2.4rem;
  }

  .hero-img {
    max-width: 150%;
  }

  .team-box {
    margin: 2.4rem;
    padding: 2.4rem;
    gap: 3.2rem;
  }

  .team-box.no-marg-right {
    margin-right: 2.4rem !important;
  }
  .team-box.no-marg-left {
    margin-left: 2.4rem !important;
  }

  .copyright {
    font-size: 1.4rem;
  }
}

/* 
***********Below 350px (Mobile Navigation portrait)
*/
@media (max-width: 20.625em) {
  .img-container {
    transform: translateY(100%);
  }
}

/* ********** Phone Landscape********** */

@media screen and (max-height: 31em) {
  .heading-primary {
    font-size: 3.6rem;
  }

  .heading-secondary {
    font-size: 3.6rem;
  }

  .hero-container {
    margin: 0 02rem;
    padding-top: 12.8rem;
    overflow: hidden;
  }

  .hero-textbox {
    width: 50%;
    transform: translate(3%, 20%);
  }

  .hero-description {
    font-size: 2.4rem;
  }

  .img-container {
    transform: translate(30%, -40%);
  }

  .hero-img {
    max-width: 80%;
  }
}

/* - FONT SIZE SYSTEM (px)
10 / 12 / 14 / 16 / 18 / 20 / 24 / 30 / 36 / 44 / 52 / 62 / 74 / 86 / 98
SPACING SYSTEM (px)
2 / 4 / 8 / 12 / 16 / 24 / 32 / 48 / 64 / 80 / 96 / 128 */
