body {
  overflow-x: hidden;
  margin: 0;
  padding: 0;
}

/* === Base Carousel === */
.homeBanner_logo img{
    width: 10% !important;
    margin-bottom: 10px;
}
.carousel {
  height: 100vh;
  width: 100vw;
  overflow: hidden;
  position: relative;
  font-family: "Poppins", sans-serif;
}

.carousel .list {
  height: 100%;
  display: flex;
  transition: transform 0.8s ease; /* smooth slide */
}

.carousel .list .item {
  min-width: 100%;
  height: 100%;
  position: relative;
}


.carousel .list .item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* === Content Overlay === */
.carousel .list .item .content {
  position: absolute;
  top: 42%;
  width: 1140px;
  max-width: 80%;
  left: 10%;
  color: #fff;
  text-shadow: 0 5px 10px #0004;
}

.carousel .list .item .author {
  font-size: 1.5em;
  letter-spacing: 2px;
  margin-bottom: 10px;
}

.carousel .list .item .title {
  font-family: 'Poppins-SemiBold';
  font-size: 48px;
  font-weight: 700;
  line-height: 48px;
}

.carousel .list .item .topic {
  color: #ffffff;
  font-size: 28px;
  /* font-family: 'Inter-Medium'; */
  line-height: 42px;
  margin-top: 15px;
}

.carousel .list .item .des {
  font-family: 'Poppins-Regular';
  font-weight: 400;
  text-align: justify;
  color: #ffffff;
  font-size: 20px;
  max-width: 600px;
  margin-top: 15px;
}

.carousel .list .item .buttons button {
  background: #00a6fb;
  border: none;
  padding: 12px 30px;
  border-radius: 30px;
  color: #fff;
  font-weight: 500;
  margin-top: 25px;
  cursor: pointer;
  transition: 0.3s ease;
}

.carousel .list .item .buttons button:hover {
  background: #0084c9;
  transform: translateY(-2px);
}

/* === Thumbnails === */
.thumbnail {
  position: absolute;
  bottom: 40px;
  right: 50px;
  display: flex;
  align-items: flex-end;
  gap: 20px;
  z-index: 100;
  overflow: hidden;
  width: 410px; /* fits 2 thumbnails */
}

.thumbnail .item {
  flex: 0 0 auto;
  width: 180px;
  height: 250px;
  border-radius: 15px;
  overflow: hidden;
  opacity: 0.6;
  cursor: pointer;

  /* 👇 key changes */
  transition:
    transform 0.8s cubic-bezier(0.22, 1, 0.36, 1),
    width 0.6s ease,
    height 0.6s ease,
    opacity 0.6s ease;
}

.thumbnail .item.active {
  width: 200px;
  height: 300px;
  opacity: 1;
  border: 1px solid white;
}

.thumbnail .item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 15px;
}

/* === Dots === */
.dots {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 8px;
  z-index: 100;
}

.dots .dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.4);
  transition: 0.3s;
  cursor: pointer;
}

.dots .dot.active {
  background-color: #00a6fb;
  transform: scale(1.3);
}

/* === Responsive Adjustments === */

/* XL (1200px–) */
@media screen and (max-width: 1200px) {
  .carousel .list .item .title {
    font-size: 2.5em;
  }
  .carousel .list .item .topic {
    font-size: 1em;
  }
  .carousel .list .item .des {
    font-size: 1em;
  }
}

/* LG (992px–1199px) */
@media screen and (max-width: 992px) {
  .carousel .list .item .content {
    top: 18%;
    left: 8%;
    max-width: 85%;
  }

  .carousel .list .item .title {
    font-size: 2em;
  }
  .carousel .list .item .topic {
    font-size: 1em;
  }

  .thumbnail {
    right: 30px;
    bottom: 30px;
    width: 320px;
    gap: 15px;
  }

  .thumbnail .item {
    width: 150px;
    height: 200px;
  }

  .thumbnail .item.active {
    width: 170px;
    height: 230px;
  }
}

/* MD (768px–991px) */
@media screen and (max-width: 768px) {
  .carousel .list .item .content {
    top: 15%;
    left: 6%;
    max-width: 90%;
  }

  .carousel .list .item .title {
    font-size: 2.5em;
  }

  .carousel .list .item .topic {
    font-size: 1.5em;
  }

  .carousel .list .item .des {
    font-size: 1em;
  }

  .thumbnail {
    right: 20px;
    bottom: 25px;
    width: 230px;
    gap: 12px;
  }

  .thumbnail .item {
    width: 100px;
    height: 130px;
  }

  .thumbnail .item.active {
    width: 115px;
    height: 150px;
  }
}

/* SM (576px–767px) */
@media screen and (max-width: 576px) {
  .carousel .list .item .content {
    top: 12%;
    left: 5%;
    max-width: 90%;
  }

  .carousel .list .item .author {
    font-size: 1em;
  }

  .carousel .list .item .title {
    font-size: 2em;
  }

  .carousel .list .item .topic {
    font-size: 1.3em;
  }

  .carousel .list .item .des {
    font-size: 0.95em;
  }

  .carousel .list .item .buttons button {
    padding: 8px 20px;
    font-size: 0.9em;
  }

  .thumbnail {
    right: 15px;
    bottom: 20px;
    width: 200px;
    gap: 10px;
  }

  .thumbnail .item {
    width: 80px;
    height: 100px;
  }

  .thumbnail .item.active {
    width: 95px;
    height: 115px;
  }
}

/* XS (≤480px) */
@media screen and (max-width: 480px) {
  .carousel .list .item .content {
    top: 20%;
    left: 5%;
    max-width: 90%;
  }

  .carousel .list .item .author {
    font-size: 0.9em;
  }

  .carousel .list .item .title {
    font-size: 1.6em;
  }

  .carousel .list .item .topic {
    font-size: 1.2em;
  }

  .carousel .list .item .des {
    font-size: 0.9em;
  }

  .carousel .list .item .buttons button {
    padding: 6px 16px;
    font-size: 0.85em;
  }

        .thumbnail {
        bottom: 75px;
        right: 50%;
        transform: translateX(50%);
        width: 100%;
        gap: 12px;
        justify-content: center;
    }


  .thumbnail .item {
    width: 70px;
    height: 85px;
  }

  .thumbnail .item.active {
    width: 80px;
    height: 95px;
  }

  .dots {
    bottom: 25px;
  }
}
