/************************/
/* TAGLINE SECTION */
/************************/
.section-tagline {
  padding: 9rem 0 9.6rem 0;
}

.tagline {
  max-width: 130rem;
  margin: 0 auto;
  padding: 0 3.2rem;
  display: grid;
  grid-template-columns: 1fr;
  gap: 9.6rem;
  align-items: center;
  text-align: center;
}

.horizontal-line {
  margin: 4rem auto;
  width: 30rem;
}

.tagline-imgs {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6rem;
}
.tagline-imgs img {
  height: 20rem;
}
.tagline .btn {
  width: 22rem;
  margin-top: 4rem;
}

/************************/
/* FEATURED PRODUCT SECTION */
/************************/

.section-featured {
  padding: 8rem 0 9.6rem 0;
}

.featured-product {
  max-width: 130rem;
  margin: 0 auto;
  text-align: center;
}

.featured-carousel {
  margin: 0 auto;
  width: 1300px;
  position: relative;
}

.carousel-slide {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 100px;
  overflow: hidden;
}

.carousel-card {
  font-size: 2.5rem;
  transition: transform 0.5s ease;
}

.carousel-card img {
  width: 600px;
}
.carousel-card .card-title {
  margin: 2rem 0 0.5rem;
}

.carousel-control {
  position: absolute;
  font-size: 4rem;
  top: 22rem;
  cursor: pointer;
  color: #555;
}
.carousel-control.left-icon {
  left: -6rem;
  color: #ccc;
  cursor: not-allowed;
}
.carousel-control.right-icon {
  right: -6rem;
}

/************************/
/* NEWSLETTER SECTION */
/************************/

.section-newsletter {
  padding: 6rem 0 9.6rem 0;
}

.newsletter {
  max-width: 130rem;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 10rem;
}

.newsletter-brief {
  font-size: 2rem;
}

.newsletter-subscribe input[type="email"] {
  padding: 2rem;
  width: 40rem;
  margin-right: 10px;
}

.newsletter-subscribe button {
  padding: 2rem;
  width: 18.6rem;
}

/************************/
/* MORE PRODUCT SECTION */
/************************/

.section-more-product {
  padding: 6rem 0 9.6rem 0;
}

.more-product {
  max-width: 130rem;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10rem;
}

.more-product-column {
  max-width: 36rem;
}

.more-product-column:nth-child(1) img {
  min-height: 78rem;
}

.more-product-column img {
  max-width: 36rem;
}

.more-product-detail {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin: 1rem 0 0.5rem;
}

.more-product-title {
  font-size: 2rem;
}
.more-product-price {
  font-size: 2rem;
}

.more-product-review-stars {
  font-size: 2rem;
  text-align: right;
}

/************************/
/* MORE PRODUCT SECTION */
/************************/

.section-about-shop {
  padding: 6rem 0 9.6rem 0;
}

.about-shop {
  max-width: 130rem;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 4rem;
  text-align: center;
}

.about-shop-brief {
  font-size: 2rem;
  padding: 0 20rem;
}

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

/************************/
/* BELOW 1400px (Reduce Some Sizes, Above 1200px) */
/************************/

@media (max-width: 87.5em) {
  .featured-carousel {
    width: 1000px;
  }
  .carousel-card img {
    width: 450px;
  }
}

/************************/
/* BELOW 1200px (Large devices, Above 992px) */
/************************/

@media (max-width: 75em) {
  .featured-carousel {
    width: 900px;
  }
  .carousel-slide {
    gap: 20px;
  }

  .newsletter {
    width: 900px;
  }
  .newsletter-subscribe input[type="email"] {
    width: 36rem;
  }
  .newsletter-subscribe button {
    padding: 2rem;
    width: 12rem;
  }

  .more-product {
    width: 900px;
  }
  .more-product-column:nth-child(1) img {
    min-height: 65.5rem;
  }
  .more-product-column img {
    max-width: 30rem;
  }
}

/************************/
/* BELOW 992px (Medium devices, Above 768px) */
/************************/

@media (max-width: 62em) {
  .featured-carousel {
    width: 700px;
  }
  .carousel-card img {
    width: 340px;
  }

  .newsletter {
    width: 700px;
  }
  .newsletter-subscribe button {
    width: 36rem;
  }

  .more-product {
    width: 700px;
    gap: 2rem;
  }
  .more-product-column:nth-child(1) img {
    min-height: 70rem;
  }
  .more-product-column img {
    max-width: 32rem;
  }
}

/************************/
/* BELOW 768px (Medium devices, Above 576px) */
/************************/

@media (max-width: 48em) {
  .tagline {
    width: 560px;
  }
  .tagline-imgs img {
    height: 16rem;
  }

  .featured-carousel {
    width: 500px;
  }
  .carousel-card img {
    width: 240px;
  }
  .carousel-control {
    top: 16rem;
  }

  .newsletter {
    width: 500px;
  }
  .newsletter-subscribe button {
    width: 36rem;
  }

  .more-product {
    width: 500px;
    gap: 2rem;
  }
  .more-product-column:nth-child(1) img {
    min-height: 58rem;
  }
  .more-product-column img {
    max-width: 26rem;
  }
}

/************************/
/* BELOW 576px (Small devices, Above 280px) */
/************************/

@media (max-width: 36em) {
  .tagline {
    width: 260px;
  }
  .tagline-imgs img {
    height: 10rem;
  }

  .featured-carousel {
    width: 220px;
  }
  .carousel-card img {
    width: 220px;
  }
  .carousel-control {
    top: 16rem;
  }

  .newsletter {
    width: 220px;
    display: grid;
    grid-template-columns: 1fr;
  }
  .newsletter-intro {
    text-align: center;
  }
  .newsletter-subscribe {
    margin: 0 auto;
  }
  .newsletter-subscribe input[type="email"] {
    width: 18rem;
  }
  .newsletter-subscribe input[type="email"]::placeholder {
    font-size: 10px;
  }
  .newsletter-subscribe button {
    width: 18rem;
  }

  .more-product {
    width: 220px;
    gap: 1rem;
    grid-template-columns: repeat(1, 1fr);
  }
  .more-product-column {
    margin: 0 auto;
  }
  .more-product-column img {
    max-width: 36rem;
  }
}
