/* ============================================
   NAVBAR STYLING - COMPLETE & CONSOLIDATED
   Sesuai design: horizontal menu + dropdown rounded/shadow + mobile responsive
   ============================================ */

/* ------------------------------------------
   BASE NAVBAR STRUCTURE
   ------------------------------------------ */
.navbar {
  border-radius: 0;
  border-width: 0;
  margin: 0;
  background: white;
  padding: 16px 20px;
  top: 0;
}

.navbar-default {
  background: white;
}

.navbar-brand > img {
  height: 24px;
}

/* ------------------------------------------
   DESKTOP NAVBAR (≥992px)
   ------------------------------------------ */
@media (min-width: 992px) {
  /* Sticky header container */
  .blockstikyheader {
    position: fixed;
    top: 0;
    z-index: 99;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    left: 0;
    right: 0;
    max-width: 1440px;
  }

  .navbar.fixed {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 99;
    width: 100%;
    /* border-bottom: 1px solid #eee; */
  }

  .navbar-collapse {
    text-align: center;
  }

  .navbar-nav {
    display: inline-block;
    float: none;
  }

  .navbar-brand > img {
    max-height: 40px;
    height: auto;
    max-width: 100%;
  }

  /* Top level menu items */
  .navbar-nav > li {
    margin-left: 15px;
    display: inline-block;
    position: relative;
  }

  .navbar-nav > li > a {
    text-transform: capitalize;
    padding: 25px 0;
    color: #028daa; /* Warna default navbar */
    font-weight: 500;
    font-size: 14px;
    transition: color 0.3s ease;
  }

  .navbar-nav > li > a:hover,
  .navbar-nav > li:hover > a {
    color: #c6d92d; /* Warna saat hover/menu dibuka */
  }

  .navbar-nav > li.active > a,
  .navbar-nav > li > a.active,
  .navbar-nav > .active > a,
  .navbar-nav > .active > a:focus,
  .navbar-nav > .active > a:hover,
  .navbar-nav > li > .dropdown-menu > .active > a,
  .navbar-nav > li:has(> .dropdown-menu .active) > a {
    color: #c6d92d !important; /* Active state */
    background: transparent;
  }

  /* Dropdown trigger on hover */
  .navbar-nav li:hover > ul {
    display: block !important;
    -moz-animation: fadeInDown 0.2s ease-out;
    -webkit-animation: fadeInDown 0.2s ease-out;
    animation: fadeInDown 0.2s ease-out;
  }

  /* Dropdown menu container */
  .navbar-nav ul {
    margin: 0;
    padding: 0;
    width: 240px;
    min-width: 240px;
    border: none;
    font-size: 14px;
    text-transform: none;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
  }

  .navbar-nav > li > .dropdown-menu {
    left: 0;
    right: auto;
    margin-top: 10px;
    border: none;
  }

  /* Fix overflow untuk dropdown di ujung kanan */
  .navbar-nav > li:nth-last-child(-n + 2) > .dropdown-menu {
    left: auto;
    right: 0;
  }

  .navbar-nav > li > .dropdown-menu li {
    /* border-bottom: 1px solid #f0f0f0; */
    position: relative;
    background: #fff;
  }

  .navbar-nav > li > .dropdown-menu li:last-child {
    border-bottom: 0;
  }

  .navbar-nav > li > .dropdown-menu li a {
    color: #00a9ce; /* Warna biru cyan sesuai gambar */
    font-weight: 400;
    padding: 12px 20px;
    display: block;
    transition: all 0.2s ease;
  }

  .navbar-nav > li > .dropdown-menu a:hover,
  .navbar-nav > li > .dropdown-menu > .active > a,
  .navbar-nav > li > .dropdown-menu > .active > a:focus,
  .navbar-nav > li > .dropdown-menu > .active > a:hover {
    color: #c6d92d;
  }

  /* Parent menu highlight jika dropdown child aktif */
  .navbar-nav > li:has(> .dropdown-menu .active) > a {
    color: #c6d92d !important;
  }

  .navbar-nav .dropdown-menu li {
    padding: 0;
  }

  /* Sub-submenu (nested dropdown) */
  .navbar-nav ul ul {
    /* Remove Bootstrap default dropdown caret */
    .navbar-nav .dropdown-toggle::after {
      display: none !important;
    }

    /* Add Font Awesome dropdown arrow indicator */
    .navbar-nav > li.dropdown > a::after,
    .navbar-nav > li > a.dropdown-toggle::after {
      content: "\f107"; /* Font Awesome chevron-down */
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      font-size: 12px;
      margin-left: 6px;
      color: currentColor;
      display: inline-block;
    }

    /* Rotate arrow saat dropdown terbuka/hover */
    .navbar-nav > li:hover.dropdown > a::after,
    .navbar-nav > li:hover > a.dropdown-toggle::after {
      transform: rotate(180deg);
      transition: transform 0.3s ease;
    }
    *
      Add
      custom
      arrow
      indicator
      for
      dropdown
      items
      */
      .navbar-nav
      > li
      > a.dropdown-toggle::after {
      content: "▼";
      font-size: 10px;
      margin-left: 6px;
      color: currentColor;
    }
  }

  /* ------------------------------------------
   TABLET/DESKTOP MEDIUM (≥768px)
   ------------------------------------------ */
  @media (min-width: 768px) {
    .navbar-nav > li > a:hover,
    .navbar-default .navbar-nav > .active > a,
    .navbar-default .navbar-nav > .active > a:focus,
    .navbar-default .navbar-nav > .active > a:hover {
      color: #c6d92d;
    }

    .navbar-nav > li:hover > a,
    .navbar-nav > li > a:hover {
      color: #c6d92d;
    }

    .navbar-default .navbar-nav > .open > a,
    .navbar-default .navbar-nav > .open > a:focus,
    .navbar-default .navbar-nav > .open > a:hover {
      color: #c6d92d;
      background: transparent;
    }

    /* Active state untuk tablet+ */
    .navbar-nav > li.active > a,
    .navbar-nav > li > a.active {
      color: #c6d92d !important;
    }
  }

  /* ------------------------------------------
   MOBILE RESPONSIVE (<992px)
   ------------------------------------------ */
  @media (max-width: 991px) {
    .custom-top-bar {
      padding-left: 0px;
      padding-right: 0px;
    }

    .blockstikyheader {
      position: fixed;
      top: 0;
      z-index: 99;
      width: 100%;
      margin-right: auto;
      margin-left: auto;
      left: 0;
      right: 0;
      max-width: 1440px;
    }

    /* Hamburger toggle button */
    .navbar-toggler {
      border: 1px solid #028daa;
      padding: 8px 12px;
      background: transparent;
      border-radius: 4px;
    }

    .navbar-toggler:focus {
      box-shadow: none;
      outline: none;
      border-color: #c6d92d;
    }

    .navbar-toggler-icon {
      font-size: 24px;
      color: #028daa;
    }

    /* Mobile menu styling */
    .navbar-collapse {
      background: #fff;
      padding: 20px 0; /* Tambah padding atas-bawah */
      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
      margin-top: 15px; /* Tambah jarak dari navbar */
      border-radius: 8px;
    }

    .navbar-nav {
      width: 100%;
      padding: 0 10px; /* Tambah padding kiri-kanan */
    }

    .navbar-nav > li {
      width: 100%;
      border-bottom: 1px solid #f0f0f0;
      margin-bottom: 5px; /* Jarak antar menu item */
    }

    .navbar-nav > li:last-child {
      border-bottom: none;
      margin-bottom: 0;
    }

    /* Menu items - dengan selector lebih spesifik */
    #mmenu .navbar-nav > li > a,
    .navbar-expand-lg .navbar-nav > li > a,
    .navbar-nav > li > a {
      padding: 16px 20px !important; /* Tambah padding vertical */
      color: #028daa !important;
      display: block !important;
      font-weight: 500 !important;
      transition: all 0.3s ease !important;
      border-radius: 6px; /* Tambah rounded untuk setiap item */
      margin: 2px 0; /* Jarak mini antar item */
    }
    #mmenu .navbar-nav > li > a:hover,
    #mmenu .navbar-nav > li:hover > a,
    #mmenu .navbar-nav > li.active > a,
    #mmenu .navbar-nav > li > a.active,
    #mmenu .navbar-nav > li:has(> .dropdown-menu .active) > a,
    .navbar-expand-lg .navbar-nav > li > a:hover,
    .navbar-expand-lg .navbar-nav > li:hover > a,
    .navbar-expand-lg .navbar-nav > li.active > a,
    .navbar-expand-lg .navbar-nav > li > a.active,
    .navbar-expand-lg .navbar-nav > li:has(> .dropdown-menu .active) > a,
    .navbar-nav > li > a:hover,
    .navbar-nav > li:hover > a,
    .navbar-nav > li.active > a,
    .navbar-nav > li > a.active,
    .navbar-nav > li:has(> .dropdown-menu .active) > a {
      color: #c6d92d !important; /* Warna hover sama dengan desktop */
      background: #f8f9fa !important;
    }

    /* Mobile: dropdown arrow dengan Font Awesome */
    .navbar-nav > li.dropdown > a::after,
    .navbar-nav > li > a[data-bs-toggle="dropdown"]::after {
      content: "\f107";
      font-family: "Font Awesome 5 Free";
      font-weight: 900;
      font-size: 12px;
      margin-left: 8px;
      float: right;
      color: currentColor;
      transition: transform 0.3s ease;
    }

    /* Rotate arrow saat dropdown terbuka di mobile */
    .navbar-nav > li.show > a::after,
    .navbar-nav > li > a[aria-expanded="true"]::after {
      transform: rotate(180deg);
    }

    /* Mobile dropdown menu - style selaras dengan desktop */
    #mmenu .navbar-nav .dropdown-menu,
    .navbar-expand-lg .navbar-nav .dropdown-menu,
    .navbar-nav .dropdown-menu {
      background-color: #fff !important; /* Background putih seperti desktop */
      padding: 10px 0 !important; /* Tambah padding */
      border: 1px solid #e9ecef !important;
      box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.05) !important;
      border-radius: 8px !important; /* Rounded seperti desktop */
      margin: 8px 15px 12px 15px !important; /* Tambah margin bawah */
      position: static !important;
      float: none !important;
      width: calc(100% - 30px) !important;
    }

    #mmenu .navbar-nav .dropdown-menu li,
    .navbar-expand-lg .navbar-nav .dropdown-menu li,
    .navbar-nav .dropdown-menu li {
      border-bottom: 1px solid #f0f0f0 !important;
      background: transparent !important;
      margin: 0 8px; /* Jarak dari tepi */
    }

    #mmenu .navbar-nav .dropdown-menu li:last-child,
    .navbar-expand-lg .navbar-nav .dropdown-menu li:last-child,
    .navbar-nav .dropdown-menu li:last-child {
      border-bottom: none;
    }

    #mmenu .navbar-nav .dropdown-menu a,
    .navbar-expand-lg .navbar-nav .dropdown-menu a,
    .navbar-nav .dropdown-menu a {
      color: #00a9ce !important; /* Warna cyan sama dengan desktop */
      padding: 14px 18px !important; /* Tambah padding */
      display: block !important;
      font-weight: 400 !important;
      transition: all 0.2s ease !important;
      border-radius: 6px; /* Tambah rounded */
      margin: 3px 0; /* Jarak antar item dropdown */
    }

    #mmenu .navbar-nav .dropdown-menu a:hover,
    #mmenu .navbar-nav .dropdown-menu a.active,
    #mmenu .navbar-nav .dropdown-menu li.active > a,
    .navbar-expand-lg .navbar-nav .dropdown-menu a:hover,
    .navbar-expand-lg .navbar-nav .dropdown-menu a.active,
    .navbar-expand-lg .navbar-nav .dropdown-menu li.active > a,
    .navbar-nav .dropdown-menu a:hover,
    .navbar-nav .dropdown-menu a.active,
    .navbar-nav .dropdown-menu li.active > a {
      color: #c6d92d; /* Hover warna sama dengan desktop */
    }
  }

  /* Small mobile (<576px) */
  @media (max-width: 575px) {
    .custom-top-bar {
      padding-left: 15px;
      padding-right: 15px;
    }

    .navbar-brand > img {
      max-height: 40px;
    }

   
  }

  /* ------------------------------------------
   ANIMATIONS
   ------------------------------------------ */
  @keyframes fadeInDown {
    from {
      opacity: 0;
      transform: translateY(-10px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  @-webkit-keyframes fadeInDown {
    from {
      opacity: 0;
      -webkit-transform: translateY(-10px);
    }
    to {
      opacity: 1;
      -webkit-transform: translateY(0);
    }
  }

  @-moz-keyframes fadeInDown {
    from {
      opacity: 0;
      -moz-transform: translateY(-10px);
    }
    to {
      opacity: 1;
      -moz-transform: translateY(0);
    }
  }

  /* ------------------------------------------
   UTILITY CLASSES
   ------------------------------------------ */
  .text-end-lg {
    text-align: right;
  }

  @media (max-width: 991px) {
    .text-end-lg {
      text-align: left;
    }
  }
}

.goog-te-banner-frame.skiptranslate {
  display: none !important;
}
.goog-te-banner-frame {
  display: none !important;
}
body {
  top: 0 !important;
}

.skiptranslate {
  display: none !important;
}

.lang-select-wrapper {
  position: relative;
  width: 70px;
  user-select: none;
  margin: 16px 10px;
}

.lang-selected {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: #f1f1f1;
  padding: 4px 6px;
  border-radius: 10px;
  /* border: 1px solid #dedede; */
  cursor: pointer;
}

.lang-selected img {
  width: 16px;
  height: auto;
}

.lang-list {
  position: absolute !important;
  top: 48px !important;
  left: 0 !important;
  width: 100px;
  background: white !important;
  border-radius: 10px !important;
  border: 1px solid #ccc !important;
  display: none !important;
  overflow: hidden !important;
  z-index: 9999 !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}

.lang-list[style*="display: block"] {
  display: block !important;
}

.lang-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px;
  cursor: pointer;
}

.lang-item:hover {
  background: #f3f3f3;
}

.lang-item img {
  width: 16px;
  height: auto;
}
