@media only screen and (max-width: 83em) {
  /* GENERAL */
  .body-heading {
    font-size: 3.8rem;
  }

  /* TESTIMONIALS */
  .gallery {
    grid-template-columns: repeat(2, 1fr);
  }

  .testimonials-details {
    grid-template-columns: auto;
  }

  .testimonials-card {
    padding: 2rem 3rem;
  }

  /* MEAL CARDS */
  .meal-card .meal-types-list li {
    padding: 0.4rem 0.6rem;
    margin: 0.2rem;
  }

  .meal-card .meal-types-list {
    font-size: 1rem;
    line-height: 2rem;
  }

  .meal-card-body {
    padding: 1rem 1.4rem;
  }

  .meal-card-heading {
    font-size: 1.6rem;
    margin: 1rem 0.6rem;
  }

  .meal-card-desc {
    margin: auto 0.6rem 0.6rem 0.6rem;
  }

  .meal-stats {
    font-size: 1.4rem;
    margin: 0 1rem;
  }

  .meal-stats li {
    padding-bottom: 0.6rem;
  }
}

@media only screen and (max-width: 72em) {
  /* GENERAL */
  html,
  body {
    font-size: 65%;
  }

  /* HEADER & NAV */
  .main-nav-list {
    gap: 1rem;
    padding: 1rem 2rem;
  }

  .header .solid-btn {
    padding: 1rem 3rem;
  }

  /* HERO */
  .hero-marquee {
    max-width: 56rem;
  }

  /* PRICING CARDS */
  .pricing-card {
    padding: 3rem 1rem 3rem 2rem;
    width: 34rem;
    height: 38rem;
  }

  .pricing-list-items {
    font-size: 1.5rem;
  }

  .pricing-list-items li {
    line-height: 2.6rem;
  }
}

/* Tablet Landscape */
@media only screen and (max-width: 64em) {
  /* GENERAL */
  .heading-left {
    text-align: center;
  }

  /* HERO */
  .hero-marquee {
    max-width: 45rem;
  }

  .hero-heading {
    font-size: 4.6rem;
  }

  /* MOBILE NAV */
  .mobile-nav-btn {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .main-nav {
    position: absolute;
    background: #92ba80e6;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    color: #103201;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    transition: all 200ms ease-in;
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
  }

  .main-nav-list {
    position: relative;
    flex-direction: column;
    background: none;
    text-align: center;
    gap: 4rem;
  }

  .main-nav-list a {
    font-size: 2.4rem;
    padding: 1rem 3rem;
    border-radius: 50px;
  }

  /* HAMBURGER NAV OPEN */
  .nav-open .main-nav {
    opacity: 1;
    pointer-events: auto;
    visibility: visible;
  }

  .nav-open .mobile-close {
    display: block;
    z-index: 100;
  }

  .nav-open .mobile-open {
    display: none;
  }

  .desktop-order {
    display: none;
  }

  .mobile-order {
    display: block;
    margin: 3rem auto;
    font-size: 2.4rem;
  }

  /* MEAL CARDS */
  .meal-card-overview {
    grid-template-columns: repeat(2, minmax(28rem, 38rem));
    gap: 3rem;
  }

  .meal-card .meal-types-list li {
    padding: 0.6rem 0.8rem;
  }

  .meal-card .meal-types-list {
    font-size: 1.3rem;
    line-height: 3rem;
  }

  .meal-card-heading {
    font-size: 2.2rem;
    margin: 1rem 0.6rem;
  }

  .meal-card-desc {
    margin: auto 0.6rem 0.6rem 0.6rem;
    font-size: 1.4rem;
  }

  .meal-stats {
    font-size: 1.8rem;
  }

  .meal-stats li {
    padding-bottom: 1rem;
  }

  /* TESTIMONIALS */
  .section-testimonials {
    display: flex;
    flex-direction: column-reverse;
  }

  .gallery {
    grid-template-columns: repeat(4, 1fr);
  }

  .testimonials-details {
    grid-template-columns: repeat(2, 1fr);
  }

  /* PRICING CARD */

  .pricing-card .btn {
    padding: 1rem 2rem;
  }

  .pricing-card h3 {
    font-size: 1.8rem;
  }

  .pricing-list-items {
    font-size: 1.4rem;
  }

  .pricing-list-items li {
    line-height: 2rem;
  }

  .selected-pricing:after {
    right: -22%;
  }
  /* SUBSCRIBE */
  .subscribe-box label {
    font-size: 1.2rem;
  }
}

@media only screen and (max-width: 58em) {
  /* GENERAL */
  html,
  body {
    font-size: 60%;
  }

  /* FEATURED SECTION */
  .featured-logos {
    padding: 2rem 1rem;
  }

  .featured-logos img {
    height: 2rem;
  }

  /* SECTION HOW IT WORKS */
  .how-full-wrapper,
  .how-full-wrapper-switch {
    gap: 4rem;
  }

  /* SUBSCRIBE FORM */
  .subscribe-box {
    grid-template-columns: 45fr 55fr;
  }

  .subscribe-form form {
    grid-template-columns: auto;
  }
  .subscribe-btn {
    margin-top: 1.4rem;
  }
}

@media only screen and (max-width: 48em) {
  /* HERO */
  .hero-group {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .hero-text-wrapper {
    justify-self: center;
    align-self: center;
  }

  .hero-marquee,
  .hero-heading,
  .hero-description {
    margin: 2rem;
    max-width: 58rem;
  }

  .hero-buttons {
    text-align: center;
  }

  .hero-customer-proof {
    margin: 0;
    padding: 0;
  }

  .hero-img-wrapper {
    display: none;
  }

  .mobile-hero-img img {
    display: block;
  }

  /* FEATURED SECTION */
  .featured-logos img {
    height: 1.6rem;
  }

  /* HOW IT WORKS SECTION */
  .section-how {
    padding: 4rem 0;
  }

  .how-heading {
    font-size: 2.6rem;
  }

  .how-step-num {
    margin-top: 8rem;
  }

  .how-full-wrapper,
  .how-full-wrapper-switch {
    flex-direction: column;
    height: auto;
    gap: 2rem;
    margin: 2rem;
  }

  .how-img-wrapper .mobile-bg:last-child {
    margin-bottom: 14rem;
  }

  /* PRICING CARDS */
  .pricing-card-wrapper {
    flex-direction: column;
  }

  .pricing-card {
    width: 36rem;
    height: 40rem;
  }

  .pricing-list-items {
    font-size: 1.8rem;
  }

  .pricing-list-items li {
    line-height: 3rem;
  }

  .selected-pricing:after {
    right: -15%;
  }

  .pricing-card h1 {
    font-size: 5rem;
  }

  .pricing-card small {
    font-size: 1.6rem;
  }

  /* SUBSCRIBE */
  .section-subscribe {
    padding: 2rem;
  }

  /* FOOTER */
  .section-footer {
    grid-template-columns: repeat(6, 1fr);
  }

  .logo-col,
  .address-col {
    grid-column: span 3;
  }

  .nav-col {
    grid-row: 1;
    grid-column: span 2;
    margin-bottom: 1.8rem;
  }
}

@media only screen and (max-width: 35em) {
  /* HERO */
  .header {
    padding: 0 2rem;
  }

  .hero-marquee,
  .hero-heading,
  .hero-description {
    max-width: 49rem;
  }

  .hero-heading {
    font-size: 4.4rem;
    line-height: 1.6;
  }

  .hero-customer-proof {
    flex-direction: column;
    text-align: center;
  }

  /* GENERAL */
  .subheading {
    font-size: 2rem;
  }

  /* TESTIMONIALS */
  .section-testimonials {
    padding: 3rem;
    gap: 3rem;
  }

  .testimonials-details {
    gap: 1rem;
    grid-template-columns: auto;
  }

  .gallery {
    grid-template-columns: repeat(3, 1fr);
  }

  /* MEAL CARDS */
  .meal-types-overview .meal-types-list {
    margin: 1rem;
    transform: scale(1);
  }

  .meal-card-overview {
    grid-template-columns: auto;
  }

  .meal-card {
    width: 40rem;
  }

  .meal-card-body {
    padding: 2rem;
  }

  .meal-card-heading {
    font-size: 2.4rem;
  }

  .meal-card-desc {
    font-size: 1.6rem;
  }

  .meal-stats {
    font-size: 2rem;
  }

  .meal-types-overview br {
    display: none;
  }

  /* PRICING SECTION BANNER */
  .member-info-banner {
    display: grid;
    grid-template-columns: auto auto;
    gap: 2rem;
  }
  /* SUBSCRIBE */
  .subscribe-box label {
    font-size: 1.4rem;
  }
}

@media only screen and (max-width: 30em) {
  /* HERO */
  .hero-marquee,
  .hero-heading,
  .hero-description {
    max-width: 40rem;
  }

  .mobile-hero-img img {
    max-width: 30rem;
    max-height: 30rem;
  }

  .hero-heading {
    font-size: 3.6rem;
    line-height: 1.5;
  }

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

  .hero-buttons .btn {
    padding: 1rem 2rem;
  }

  /* GENERAL */
  .body-heading br {
    display: none;
  }

  .body-heading {
    margin: 0 2rem;
  }

  /* FEATURED SECTION */
  .featured-logos img {
    height: 1.2rem;
  }

  /* MEAL CARDS */
  .meal-card {
    width: 32rem;
  }

  /* PRICING CARDS */
  .pricing-card {
    width: 32rem;
    height: 40rem;
  }

  /* PRICING SECTION BANNER */
  .member-info-banner {
    display: grid;
    grid-template-columns: auto auto;
    gap: 2rem;
  }

  .banner-heading {
    font-size: 1.3rem;
  }

  .banner-desc {
    font-size: 1.1rem;
  }

  .banner-item {
    width: 12rem;
  }

  .banner-item i {
    font-size: 2rem;
    margin: 0 auto;
    color: #379e0a;
    background: #d8f5cc;
    padding: 1.5rem;
    border-radius: 50px;
  }

  /* SUBSCRIBE */
  .subscribe-box {
    grid-template-columns: auto;
  }

  .subscribe-heading {
    font-size: 3.4rem;
  }

  .subscribe-img {
    height: 30rem;
  }

  /* TOGGLE BUG ON iPHONE FIX */
  #toggle:checked + .toggle-wrapper:before {
    transform: translateX(112%);
  }
}

@media only screen and (max-width: 25em) {
  /* HERO */
  .hero-marquee,
  .hero-heading,
  .hero-description {
    max-width: 32rem;
  }
}
