/* rem and em do NOT depend on html font-size in media queries!
Instead, 1rem = 1em = 16px */

/***********************************************/
/* BELOW 1533 px (DESKTOPS) */
/***********************************************/

@media (max-width: 97rem) {
  .hero-heading-primary {
    font-size: 11rem;
  }

  .hero-heading-secondary {
    font-size: 3.6rem;
  }

  .hero-heading-tertiary {
    font-size: 2rem;
  }

  .hero-heading-text {
    font-size: 2.4rem;
  }

  .hero-img {
    height: 100%;
  }

  /* .testimonial-text,
  .testimonial-name {
    padding-left: 6.4rem;
    padding-right: 6.4rem;
  } */

  .footer-text {
    font-size: 1.8rem;
  }
}

/***********************************************/
/* BELOW 1564 px (DESKTOPS) */
/***********************************************/

@media (max-width: 82rem) {
  .hero-heading-primary {
    font-size: 10.4rem;
  }

  .hero-heading-secondary {
    font-size: 3.3rem;
  }

  .hero-heading-tertiary {
    font-size: 1.9rem;
  }

  .hero-heading-text {
    font-size: 2.4rem;
  }

  .section-heading {
    font-size: 4.8rem;
  }

  .heading-primary {
    font-size: 4rem;
  }

  .heading-secondary {
    font-size: 3.3rem;
  }

  .main-nav-link:link,
  .main-nav-link:visited {
    font-size: 1.8rem;
  }
  .btn:link,
  .btn:visited {
    font-size: 1.8rem;
    width: 24.4rem;
  }

  .btn-outline:link,
  .btn-outline:visited {
    font-size: 1.6rem;
  }

  /* .testimonial-text,
  .testimonial-name {
    padding-left: 4.8rem;
    padding-right: 4.8rem;
  } */

  .footer-text {
    font-size: 1.6rem;
  }

  .about-left {
    padding: 3rem 6.4rem 3rem 6.4rem;
  }
}

/***********************************************/
/* BELOW 960 px (hidden header)  */
/***********************************************/
/* MOBILE NAVIGATION */
@media (max-width: 66rem) {
  .btn-mobile-nav {
    display: block;
  }

  .main-nav {
    background-color: rgba(255, 255, 255, 0.97);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    transform: translateX(100%);

    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.5s ease-in;

    /* Hide navigation */
    /* Allows NO transitions at all */
    /* display: none; */

    /* 1) Hide it visually */
    opacity: 0;

    /* 2) Make it unaccessible to mouse and keyboard */
    pointer-events: none;

    /* 3) Hide it from screen readers */
    visibility: hidden;
  }

  .nav-open .main-nav {
    opacity: 1;
    pointer-events: auto;
    visibility: visible;
    transform: translateX(0);
  }

  .nav-open .icon-mobile-nav[name="close-outline"] {
    display: block;
  }

  .nav-open .icon-mobile-nav[name="menu-outline"] {
    display: none;
  }

  .testimonial {
    flex: 0 0 100%;
  }

  .slide {
    padding: 0 3.2rem 0 3.2rem;
  }
}
/***********************************************/
/* BELOW 944 px (Landscape Tablets)  */
/***********************************************/
/* MOBILE NAVIGATION */
@media (max-width: 57rem) {
  html {
    /* 8px / 16px = 0.5 = 50% */
    font-size: 56.25%;
  }

  .prices {
    padding-left: 3.2rem;
    padding-right: 3.2rem;
  }

  .testimonials {
    padding-left: 3.2rem;
    padding-right: 3.2rem;
  }

  .hero {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2.4rem;
    padding: 0rem;
  }

  .hero-right {
    grid-column: 1;
  }

  .grid--2-cols {
    grid-template-columns: 1fr;
  }

  .testimonials {
    grid-template-columns: 1fr;
  }

  .testimonial {
    padding: 0rem;
  }

  .hero-left {
    width: 100%;
    text-align: left;
    padding: 8rem;
  }

  .btn-outline {
    text-align: center;
  }

  .work-methods {
    padding: 0 3.2rem 9.6rem 3.2rem;
  }

  .philosophy-right {
    padding: 3.2rem;
  }

  .about-left {
    padding: 3.2rem;
  }

  .methods-img-box:nth-child(2) {
    grid-row: 1;
  }

  .methods-img-box:nth-child(6) {
    grid-row: 5;
  }

  .footer-right-left {
    text-align: center;
    padding: 2.5rem 2.5rem 2.5rem 2.5rem;
  }

  .footer-right-right {
    text-align: center;
    margin: auto;
    padding: 2.5rem 2.5rem 2.5rem 2.5rem;
  }
}
/***********************************************/
/* BELOW 784 px (Smaller Tablets)  */
/***********************************************/

@media (max-width: 49em) {
  .header {
    padding: 1.6rem 1.6rem; /* shrink header padding on mobile */
    height: 8.4rem;
  }

  .hero {
    grid-template-columns: 1fr; /* stack for narrow screens */
  }

  .hero-left {
    text-align: center;
    /* reduce horizontal padding so it won't overflow on small devices */
    padding: 1.2rem 2.4rem 0rem 2.4rem;
    margin: 0 auto;
  }

  .hero-heading-primary {
    font-size: 6rem; /* scale down the very large heading on phones */
    word-break: break-word;
  }

  .methods-img-box::before {
    height: 22rem;
    width: 22rem;
  }

  .methods-img-box::after {
    height: 17rem;
    width: 17rem;
  }

  .methods-img {
    width: 40%;
    height: 40%;
  }

  .footer-right-left {
    text-align: center;
    padding: 2.5rem 2.5rem 2.5rem 2.5rem;
  }

  .footer-right-right {
    text-align: center;
    margin: auto;
    padding: 2.5rem 2.5rem 2.5rem 2.5rem;
  }

  .main-nav-list {
    flex-direction: column;
    gap: 1.6rem;
  }

  .main-nav-link:link,
  .main-nav-link:visited {
    font-size: 3rem;
  }

  .hero-heading-secondary,
  .hero-heading-tertiary,
  .hero-heading-text {
    font-size: calc(1.6rem + 1vw);
  }
}
/***********************************************/
/* BELOW 544 px (Mobile phones)  */
/***********************************************/

@media (max-width: 34em) {
  /* MOBILE NAVIGATION */

  .hero-heading-primary {
    font-size: 6.4rem;
  }
  /* 
  .hero-heading-secondary {
    font-size: 1.6rem;
  }

  .hero-heading-tertiary {
    font-size: 1.2rem;
  }

  .hero-heading-text {
    font-size: 1.4rem;
  } */

  .methods-img-box::before {
    height: 18rem;
    width: 18rem;
  }

  .methods-img-box::after {
    height: 13rem;
    width: 13rem;
  }

  .methods-img {
    width: 45%;
    height: 45%;
  }

  .methods-img {
    width: 43%;
    height: 43%;
  }

  .fizjoklucz-logo-footer {
    width: 60%;
  }

  .footer-right-left {
    text-align: center;
    padding: 2.5rem 2.5rem 2.5rem 2.5rem;
  }

  .footer-right-right {
    text-align: center;
    margin: auto;
    padding: 2.5rem 2.5rem 2.5rem 2.5rem;
  }

  .grid--2-cols .grid--3-cols {
    grid-template-columns: 1fr;
  }

  .btn-mobile-nav {
    display: block;
  }

  .main-nav {
    background-color: rgb(255, 255, 255, 0.97);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    transform: translateX(100%);

    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.5s ease-in;
    /* Hide navigation visually */
    opacity: 0;
    /* Make it unaccessible to mouse and keyboard */
    pointer-events: none;
    /* Hide it from screenreaders */
    visibility: hidden;
  }

  .nav-open .main-nav {
    opacity: 1;
    pointer-events: auto;
    visibility: visible;
    transform: translate(0);
  }

  .nav-open .icon-mobile-nav[name="close-outline"] {
    display: block;
  }

  .nav-open .icon-mobile-nav[name="menu-outline"] {
    display: none;
  }

  .main-nav-list {
    flex-direction: column;
    gap: 4.8rem;
  }

  .main-nav-link:link,
  .main-nav-link:visited {
    font-size: 2.4rem;
  }
}
/* .method-description {
  ZRÓB COŚ ŻEBY PADDING BYŁ TAKI JAK W HERO. 
  SPRAWDZ HTML FONT-SIZE 56% - CZY NIE WPŁYWA NA INNE TXTY. 
  LOGO HEADER ZMNIEJSZYĆ. 
  BREAK HERO, FILOZOFIA, LAYOUT AT 1200px . 
  FIX GAPS BELOW ? */

/* 
- Font sizes (px)
10 / 12 / 14 / 16 / 18 / 20 / 24 / 30 / 36 / 44 / 52 / 62 / 74 / 86 / 98 / 110 / 122 / 134

- Spacing system (px)
2 / 4 / 8 / 12 / 16 / 24 / 32 / 48 / 64 / 80 / 96 / 128
*/
