@font-face {
  font-family: ArialNova;
  src: url('../fonts/ArialNova.ttf');
}
/* Start Swiper */
  .gallery-wrap {
      width: 100%;
      margin: 0 auto;
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
  }

  @media (max-width: 992px) { .gallery-wrap { width: 100%; } }

  .gallery-swiper {
    flex: 1 1 auto;
  }

  .swiper { padding: 30px 0; }
/* wrapper dalam slide -> kita apply scale di sini */
  .gallery-swiper .swiper-slide {
      display:flex;
      justify-content:center;
      align-items:center;
      overflow: hidden;
      border-radius: 0px;
      aspect-ratio: 16/9;
      max-height:400px;
  }
  .slide-inner {
    transition: transform 320ms cubic-bezier(.2,.9,.2,1), opacity 320ms ease;
    transform-origin: center center;
    width:100%;
    height:100%;
    max-width: 420px;  /*kontrol ukuran gambar maksimal*/
    display:block;
  }
  .slide-inner img { display:block; width:100%; height:100%; border-radius:0px; object-fit: cover;}

  /* default (small) */
  /*.slide-inner { transform: scale(0.6); opacity: 0.6; }*/

  /* kelas yang akan ditambahkan pada .swiper-slide element */
  .scale-large  { transform: scale(1); opacity: 1; z-index: 5; }
  .scale-medium { transform: scale(0.8); opacity: 0.9; z-index: 3; }
  .scale-small { transform: scale(0.6); opacity: 0.6; z-index: 1; }

  /* navigasi warna */
  .swiper-button-prev,
  .swiper-button-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    color: #1565c0;
  }
  .swiper-button-prev {
    left: -50px;
  }
  .swiper-button-next {
    right: -50px;
  }

/* End Swiper */

.dropdown-menu {

  min-width: 240px;
}

.cbbps-card {
  width: 20%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.cbbps-card .cbbps-item {
  width: 100%;
  height: 400px;
}

.cbbps-card .cbbps-header {
  font-size: 9rem;
  font-weight: 500;
  font-family: 'Six Caps';
}

.cbbps-card .cbbps-desc {
  font-family: 'ArialNova';
  font-size: 0.56rem;
}

.cbbps-card-horizontal {
  width: 100%;
  height: 256px;
  display: flex;
  align-items: center;
}

.cbbps-card-horizontal .cbbps-item-header {
  width: 75%;
  height: 100%;
  display: flex;
  align-items: center;
  padding: 3rem 4rem;
}

.cbbps-card-horizontal .cbbps-item-img {
  width: 25%;
  height: 100%;
}

.cbbps-card-horizontal .cbbps-header {
  font-size: 9rem;
  font-weight: 500;
  font-family: 'Six Caps';
  line-height: 1;
}

.cbbps-card-horizontal .cbbps-desc {
  font-family: 'ArialNova';
  font-size: 1.2rem;
}

.underline-white {
  width: 100%; /* atau pakai % */
  height: 2px;
  background-color: white;
  margin-bottom: 0.5rem;
}

.underline-white-sm {
  width: 100%; /* atau pakai % */
  height: 1px;
  background-color: white;
  margin-bottom: 0.5rem;
}

.active {
  font-weight: bold;
}
/* Submenu base position */
.dropdown-item {
  font-size: 14px;
}
.dropdown-item:hover {
  background-color: #e6c300;
}
.dropdown-submenu {
  position: relative;
}

.dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -0.1rem;
  display: none;
  position: absolute;
}

.logo-img {
  height: 50px;
  transition: height 0.3s ease;
}

.object-fit-cover {
  object-fit: cover;
  height: 100%;
}

.slide-btn {
  font-size: 4rem;
}

/*.td-container {
  width: 100%;
}*/

input.form-control-sm {
  padding: 0.1rem 0.4rem;
  font-size: 0.85rem;
  height: auto;
}

.form-label, .form-check-label {
  font-weight: normal;
}

/* Show submenu when hovering (desktop) */
@media (min-width: 992px) {
  .dropdown-submenu:hover > .dropdown-menu {
    display: block;
  }

  .cbbps-card:nth-child(even) {
    flex-direction: column-reverse;
  }

  .cbbps-card-horizontal:nth-child(even) {
    flex-direction: row-reverse;
  }

  .navbar .dropdown:hover .dropdown-menu {
    display: block;
    margin-top: 0;
  }
  
  .navbar .dropdown-menu {
    margin-top: 0;
  }

  .px-lg-lg {
    padding-left: 4rem;
    padding-right: 4rem;
  }

  .py-lg-lg {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  .pe-lg-lg {
    padding-right: 4rem;
  }

  .ps-lg-lg {
    padding-left: 4rem;
  }

  .pt-lg-lg {
    padding-top: 4rem;
  }

  .pb-lg-lg {
    padding-bottom: 4rem;
  }

  .p-lg-lg {
    padding: 4rem;
  }
}

@media (max-width: 991.98px) {
  .logo-img {
    max-height: 40px;
    /*margin-top: 0px;*/
  }
  .dropdown-menu {
    min-width: 100%;
  }

  .dropdown-submenu > .dropdown-menu {
    position: static;  /* Removes absolute */
    display: none;      /* Controlled via JS */
    margin: 0;
    box-shadow: none;
    border-style: none;
  }

  .dropdown-submenu > .dropdown-menu.show {
    display: block;
  }

  .cbbps-card {
    width: 100%;
  }

  .cbbps-card-horizontal {
    flex-direction: column;
    height: auto;
  }

  .cbbps-card-horizontal .cbbps-item-header {
    width: 100%;
    height: 400px;
    flex-direction: column;
    padding: 1rem;
  }

  .cbbps-card-horizontal .cbbps-item-img {
    width: 100%;
    height: 256px;
  }

  .cbbps-card-horizontal .cbbps-desc {
    font-size: 1rem;
  }

  .slide-btn {
    font-size: 1rem;
  }
}
/* Flip submenu to the left */
.dropdown-submenu > .dropdown-menu.dropdown-menu-left {
  left: auto;
  right: 100%;
}

body {
  font-family: 'Poppins'
}

html, body {
  margin: 0;
  padding: 0;
}

footer {
        background-color: #005bcb; /* biru */
        color: white;
        padding: 30px 50px;
    }

    .footer-container {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        gap: 30px;
    }

    /* Bagian logo & tagline */
    .footer-logo {
        max-width: 300px;
    }
    .footer-logo img {
        width: 100%;
        height: auto;
    }
    .footer-tagline {
        font-style: italic;
        margin-top: 5px;
        font-size: 0.9rem;
    }

    /* Bagian kontak */
    .footer-contact h3 {
        margin-bottom: 15px;
        font-size: 1.2rem;
    }
    .footer-contact ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }
    .footer-contact li {
        margin-bottom: 10px;
        display: flex;
        align-items: center;
        gap: 10px;
    }
    .footer-contact img {
        width: 20px;
        height: 20px;
    }

    /* Bagian Instagram */
    .footer-instagram {
        text-align: center;
    }
    .footer-instagram .gallery {
        display: grid;
        grid-template-columns: repeat(3, 80px);
        gap: 10px;
        justify-content: center;
        margin-bottom: 15px;
    }
    .footer-instagram .gallery img {
        width: 80px;
        height: 80px;
        object-fit: cover;
        border-radius: 5px;
    }
    .instagram-btn {
        background-color: #ffe54f;
        color: black;
        padding: 10px 20px;
        border-radius: 25px;
        font-weight: bold;
        text-decoration: none;
        display: inline-block;
    }
    .instagram-btn:hover {
        background-color: #ffdb00;
    }

    /* Responsif */
    @media (max-width: 991.98px) {
      .footer-container {
          flex-direction: column;
          align-items: center;
          text-align: center;
      }
      .footer-instagram .gallery {
          grid-template-columns: repeat(3, 70px);
        }
    }