/* ========== Custom Scrollbar ========== */
/* Ukuran Scrollbar */
::-webkit-scrollbar {
  width: 20px;
}

/* Warna Track Scrollbar */
::-webkit-scrollbar-track {
  background-color: #111;
}

/* Warna Tombol Scrollbar */
::-webkit-scrollbar-thumb {
  background: linear-gradient(to bottom, #c8001f, #26b7a0);
}

/* base styling */
body {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 16px;
}

:root {
  --pr-color: #c8001f;
  --sc-color: #191919;
}

/* ================== Utilities ================== */
.bg-black-500 {
  background-color: #0f0e0e;
}

:is(.bg-black-300, .btn-black) {
  background-color: #191919;
}

.btn-black:hover {
  background-color: #212121;
}

.bg-black-100 {
  background-color: #212121;
}

.bg-blur {
  background-color: transparent;
  -webkit-backdrop-filter: blur(28px);
  backdrop-filter: blur(28px);
}

.bg-danger {
  background-color: #c8001f;
}

.btn-danger {
  background-color: #c8001f;
  border: none;
}

.text-green {
  color: #26b7a0;
}

h1 {
  font-size: 28px;
  font-weight: 700;
  color: #f2f2f2;
}

h2 {
  font-size: 34px;
  font-weight: 700;
  line-height: 40px;
  color: #f2f2f2;
}

h4 {
  font-size: 18px;
  color: #fff;
  font-weight: 500;
}

p {
  font-size: 18px;
  font-weight: 500;
  color: #f2f2f2;
  opacity: 80%;
}

.pt-6 {
  padding-top: 82px;
}

/* ================== Styling ================== */
/* 
  dibawah ini adalah styling untuk mengubah style bawaan bootstrap seperti
  warna, sizing, responsive
 */
.navbar {
  transition: all 0.5s;
}

@media (width <= 990px) {
  .navbar {
    background-color: transparent;
    -webkit-backdrop-filter: blur(28px);
    backdrop-filter: blur(28px);
  }
}

.nav-link {
  font-weight: 500;
  color: #ccc;
}

a.nav-link.active {
  color: #c8001f !important;
}

.dropdown-item:hover {
  background-color: #222;
}

input[type="search"]::placeholder {
  font-size: 16px;
  font-weight: 600;
  color: #aaaaaa;
}

input[type="search"] {
  background-color: transparent;
  caret-color: var(--pr-color);
  color: #aaaaaa;
}

input[type="search"]:focus {
  box-shadow: none;
  background-color: transparent;
  border: 1px solid var(--pr-color);
  color: #ccc;
}

.carousel-item {
  height: 100vh;
}

.carousel-caption {
  top: 58%;
}

@media (width <= 456px) {
  .carousel-item {
    height: 400px;
  }

  h1 {
    font-size: 18px;
  }

  p {
    font-size: 12px;
  }

  :is(.carousel-control-prev-icon, .carousel-control-next-icon) {
    width: 25px;
  }
  .carousel-caption {
    top: 50%;
  }
}

.carousel-img {
  object-fit: fill;
  width: 100%;
  height: 100%;
}

section {
  margin-top: 70px;
}

#about {
  background-image: url("../img/decorative-left.svg");
  background-position: bottom left;
  background-repeat: no-repeat;
  background-size: 100%;
}

#features {
  background: url("../img/decorative-right.svg") bottom right no-repeat;
  background-size: 300px;
}

#popular {
  background-image: url("../img/decorative-left.svg"), url("../img/decorative-right.svg");
  background-repeat: no-repeat, no-repeat;
  background-position: top left, bottom right;
  background-size: 250px, 200px;
  padding-top: 100px;
}

:is(#about, #features) p {
  margin-top: 20px;
  font-size: 14px;
  font-weight: 400;
}

.popular-title h2 {
  overflow: hidden;
  position: relative;
  color: #1f1f1f;
  font-weight: 600;
}

.popular-title h2::before {
  content: "";
  position: absolute;
  background-image: url(../img/popular-title.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  width: 820px;
  height: 50px;
  z-index: -1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.top-list > div > p {
  font-size: 0.9rem;
  text-align: left;
  margin: 0;
}

.badge-txt {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  font-size: 24px;
  font-weight: 700;
}

.card {
  transition: transform 300ms ease-in-out;
}

.card:hover {
  cursor: pointer;
  transform: translateY(-6px);
}

.accordion-item {
  color: #999999;
  background-color: #1f1f1f !important;
}

.accordion-button {
  color: #ccc !important;
  background-color: var(--sc-color) !important;
}

.accordion-button:focus {
  background-color: #1b1b1b !important;
  box-shadow: none;
}

/* Ubah warna bawaan panah accordion menjadi warna abu */
.accordion-button:not(.collapsed)::after {
  filter: grayscale(1);
}

#footer {
  padding: 30px 0;
}

#footer ul li {
  cursor: pointer;
  list-style-type: none;
  color: #696969;
  font-size: 12px;
  padding: 8px 0;
}

#footer ul li:hover {
  color: #888888;
}
