.navbar{
    padding: 15px 75px;
    z-index: 1;
    font-family: "Inter", sans-serif;
  }
  
  .logo-navbar{
    width: 110px;
  }

  .nav-item{
    color: #FFFFFF;
  }

  .nav-link {
    font-size: 15px;
    display: inline-block;
    color: #ffffff;
    text-decoration: none;
    margin-right: 30px;
}

.navbar-nav .nav-link, .navbar-nav .nav-link.show{
    color: white;
}

.dropdown-toggle::after{
    border-top: .1em solid;
}
.nav-link::after {
    content: '';
    display: block;
    width: 0px;
    height: 2px;
    background: #0048B7;
    transition: width .3s;
    color: #0048B7;
    border-radius: 10px;
}

.nav-link:hover::after {
    color: #0048B7;
    width: 100%;
    transition: width .3s;
}

.nav-link:hover{
    color: #ffffff;
}

.dropdown:hover .dropdown-menu {
    display: block;
    margin-top: 0;
}
  
  
  .navbar-nav{
    margin-left: 50px;
  }
  
  .navbar-nav .nav-link.active{
    color: #ffffff;
  }
  
 
  
  li{
    font-size: 16px;
    font-weight: 400;
  }
  
  
  .dropdown-item{
    color: #0F2E5D;
  }
  
  .dropdown-item:hover{
    color: #0F2E5D;
    background-color: #F5F5F5;
  }

  /* =========================================================
     DESKTOP MEGA MENU (min-width: 992px)
     Menggunakan CSS Grid 3-kolom yang rapi tanpa bug float
  ========================================================= */
  @media screen and (min-width: 992px) {
    .dropdown- {
      float: left;
      overflow: visible;
      position: static;
    }
    
    .dropdown- .dropbtn {
      border: none;
    }
    
    .dropdown-content {
      display: none;
      position: fixed;
      top: 68px;
      left: 50%;
      transform: translateX(-50%);
      width: 92vw;
      max-width: 1200px;
      margin: 0;
      z-index: 99999;
      background: #ffffff;
      padding: 18px;
      border-radius: 18px;
      -webkit-box-shadow: 0px 20px 60px 0px rgba(0,0,0,0.25);
      -moz-box-shadow: 0px 20px 60px 0px rgba(0,0,0,0.25);
      box-shadow: 0px 20px 60px 0px rgba(0,0,0,0.25);
      border: 1px solid #e2e8f0;
      box-sizing: border-box;
    }

    /* Invisible hover bridge */
    .dropdown-content::before {
      content: "";
      position: absolute;
      top: -20px;
      left: 0;
      right: 0;
      height: 20px;
      background: transparent;
    }
    
    .dropdown-:hover .dropdown-content,
    .dropdown-.show .dropdown-content,
    .dropdown-content.show {
      display: block !important;
    }

    /* CSS Grid Responsif Rapi: 4 Kolom di Layar Lebar (4x3 = 12 Kolom), 3 Kolom di Laptop (3x4 = 12 Kolom) */
    .row-nav {
      display: grid !important;
      grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
      gap: 16px !important;
      max-height: 72vh !important;
      overflow-y: auto !important;
      overflow-x: hidden !important;
      background-color: #ffffff !important;
      padding: 6px !important;
      box-sizing: border-box !important;
    }

    @media screen and (max-width: 1250px) and (min-width: 992px) {
      .row-nav {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
      }
    }

    .row-nav::-webkit-scrollbar {
      width: 7px;
    }
    .row-nav::-webkit-scrollbar-track {
      background: #f1f5f9;
      border-radius: 10px;
    }
    .row-nav::-webkit-scrollbar-thumb {
      background: #cbd5e1;
      border-radius: 10px;
    }
    .row-nav::-webkit-scrollbar-thumb:hover {
      background: #94a3b8;
    }

    .column {
      float: none !important;
      width: 100% !important;
      margin: 0 !important;
      padding: 16px 18px !important;
      background-color: #f8fafc !important;
      border: 1px solid #eef2f6 !important;
      border-radius: 12px !important;
      box-sizing: border-box !important;
      display: flex !important;
      flex-direction: column !important;
      transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
    }

    .column:hover {
      border-color: #0048B7 !important;
      box-shadow: 0 8px 24px rgba(0, 72, 183, 0.08) !important;
      transform: translateY(-2px) !important;
      background-color: #ffffff !important;
    }

    .column a.dropdown-item {
      padding: 7px 10px !important;
      text-decoration: none !important;
      display: block !important;
      color: #334155 !important;
      font-size: 13.5px !important;
      font-weight: 500 !important;
      border-radius: 6px !important;
      transition: all 0.15s ease !important;
      white-space: normal !important;
      line-height: 1.4 !important;
    }
    
    .column a.dropdown-item:hover {
      background-color: #eff6ff !important;
      color: #0048B7 !important;
      padding-left: 14px !important;
    }

    .mega-nav-sosmed {
      font-size: 14px !important;
      font-weight: 700 !important;
      color: #0f172a !important;
      letter-spacing: 0.5px !important;
      text-transform: uppercase !important;
      vertical-align: middle !important;
    }

    .icon-float {
      width: 20px !important;
      height: 20px !important;
      object-fit: contain !important;
      margin-right: 8px !important;
      vertical-align: middle !important;
      float: none !important;
      display: inline-block !important;
    }

    .icon-float-i {
      font-size: 20px !important;
      margin-right: 8px !important;
      vertical-align: middle !important;
      display: inline-block !important;
      line-height: 1 !important;
    }

    .hr-mega-nav {
      border: 0 !important;
      height: 1px !important;
      background: #e2e8f0 !important;
      margin: 10px 0 12px 0 !important;
    }
  }
  
  /* =========================================================
     MOBILE & TABLET RESPONSIVE (max-width: 991.98px)
     Mencegah overflow ke samping dan merapikan menu layanan
  ========================================================= */
  @media screen and (max-width: 991.98px) {
    .navbar {
      padding: 10px 16px !important;
      width: 100% !important;
      max-width: 100vw !important;
      box-sizing: border-box !important;
      overflow-x: clip !important;
    }
  
    .navbar > .container {
      width: 100% !important;
      max-width: 100% !important;
      padding-left: 0 !important;
      padding-right: 0 !important;
      margin: 0 auto !important;
      box-sizing: border-box !important;
    }

    .navbar-collapse {
      background-color: #081d3b !important;
      padding: 16px 14px !important;
      border-radius: 12px !important;
      margin-top: 12px !important;
      box-shadow: 0 12px 32px rgba(0, 0, 0, 0.45) !important;
      width: 100% !important;
      max-width: 100% !important;
      box-sizing: border-box !important;
      overflow-x: hidden !important;
    }

    .navbar-toggler {
      background-color: transparent !important;
      border: 2px solid #0048B7 !important;
      padding: 4px 8px !important;
      border-radius: 8px !important;
    }

    .bo {
      color: #0048B7 !important;
      font-size: 28px !important;
    }
  
    /* RESET PENTING: Margin-left 50px yang membuat menu mobile meluber ke kanan */
    .navbar-nav {
      margin-left: 0 !important;
      margin-right: 0 !important;
      padding-left: 0 !important;
      padding-right: 0 !important;
      width: 100% !important;
      max-width: 100% !important;
      box-sizing: border-box !important;
    }

    .nav-item,
    .dropdown- {
      width: 100% !important;
      max-width: 100% !important;
      box-sizing: border-box !important;
      float: none !important;
      position: static !important;
      margin: 4px 0 !important;
    }

    .nav-link {
      margin-right: 0 !important;
      padding: 10px 12px !important;
      display: block !important;
      color: #ffffff !important;
      font-size: 15px !important;
      border-radius: 8px !important;
      box-sizing: border-box !important;
      width: 100% !important;
    }

    .nav-link:hover {
      background: rgba(255, 255, 255, 0.08) !important;
      color: #ffffff !important;
    }

    .dropdown-content {
      position: static !important;
      transform: none !important;
      width: 100% !important;
      max-width: 100% !important;
      box-sizing: border-box !important;
      margin: 10px 0 !important;
      padding: 10px 8px !important;
      background: #ffffff !important;
      border-radius: 12px !important;
      box-shadow: none !important;
      border: none !important;
      overflow-x: hidden !important;
      display: none;
    }

    .dropdown-.show .dropdown-content,
    .dropdown-content.show {
      display: block !important;
    }
  
    .row-nav {
      display: flex !important;
      flex-direction: column !important;
      gap: 12px !important;
      width: 100% !important;
      max-width: 100% !important;
      box-sizing: border-box !important;
      height: auto !important;
      max-height: 55vh !important;
      overflow-y: auto !important;
      overflow-x: hidden !important;
      padding: 2px !important;
      background: transparent !important;
    }

    .column {
      width: 100% !important;
      max-width: 100% !important;
      float: none !important;
      margin: 0 !important;
      padding: 14px 12px !important;
      box-sizing: border-box !important;
      background: #f8fafc !important;
      border: 1px solid #e2e8f0 !important;
      border-radius: 10px !important;
    }

    .column a.dropdown-item {
      color: #0F2E5D !important;
      font-size: 13.5px !important;
      padding: 8px 10px !important;
      display: block !important;
      width: 100% !important;
      box-sizing: border-box !important;
      white-space: normal !important;
      word-break: break-word !important;
      border-radius: 6px !important;
      line-height: 1.4 !important;
    }

    .column a.dropdown-item:active,
    .column a.dropdown-item:hover {
      background-color: #eff6ff !important;
      color: #0048B7 !important;
    }

    .mega-nav-sosmed {
      font-size: 13px !important;
      font-weight: 700 !important;
      color: #0f172a !important;
      letter-spacing: 0.5px !important;
    }

    .icon-float {
      width: 18px !important;
      height: 18px !important;
      object-fit: contain !important;
      margin-right: 8px !important;
      vertical-align: middle !important;
      float: none !important;
      display: inline-block !important;
    }

    .hr-mega-nav {
      border: 0 !important;
      height: 1px !important;
      background: #e2e8f0 !important;
      margin: 8px 0 10px 0 !important;
    }
  }