.elementor-2940 .elementor-element.elementor-element-b97a938{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;}.elementor-2940 .elementor-element.elementor-element-b97a938:not(.elementor-motion-effects-element-type-background), .elementor-2940 .elementor-element.elementor-element-b97a938 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-2940 .elementor-element.elementor-element-29b8b70{--display:flex;}.elementor-2940 .elementor-element.elementor-element-29b8b70.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-2940 .elementor-element.elementor-element-aa72409{text-align:start;}.elementor-2940 .elementor-element.elementor-element-aa72409 img{width:18%;}.elementor-2940 .elementor-element.elementor-element-4077773{--display:flex;}.elementor-2940 .elementor-element.elementor-element-4077773.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2940 .elementor-element.elementor-element-e52abfc{width:var( --container-widget-width, 110.771% );max-width:110.771%;--container-widget-width:110.771%;--container-widget-flex-grow:0;}.elementor-2940 .elementor-element.elementor-element-e52abfc.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-menu-toggle{margin:0 auto;}.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu .elementor-item{font-family:"Space Mono", Sans-serif;font-weight:600;}.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;}.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--main .elementor-item:hover,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--main .elementor-item:focus{color:#B1B7B2;fill:#B1B7B2;}.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:#B1B7B2;}.elementor-2940 .elementor-element.elementor-element-e52abfc .e--pointer-framed .elementor-item:before,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .e--pointer-framed .elementor-item:after{border-color:#B1B7B2;}.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#B1B7B2;}.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:before,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item.elementor-item-active:after{background-color:#B1B7B2;}.elementor-2940 .elementor-element.elementor-element-e52abfc .e--pointer-framed .elementor-item.elementor-item-active:before,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .e--pointer-framed .elementor-item.elementor-item-active:after{border-color:#B1B7B2;}.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--dropdown a, .elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-menu-toggle{color:#FFFFFF;fill:#FFFFFF;}.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--dropdown{background-color:#000000;}.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--dropdown a:hover,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--dropdown a:focus,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--dropdown a.highlighted,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-menu-toggle:hover,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-menu-toggle:focus{color:#000000;}.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--dropdown a:hover,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--dropdown a:focus,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--dropdown a.highlighted{background-color:#FFFFFF;}.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu--dropdown a.elementor-item-active{color:#050505;background-color:#FFFFFF;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-2940 .elementor-element.elementor-element-4077773{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2940 .elementor-element.elementor-element-e52abfc .elementor-nav-menu .elementor-item{font-size:13px;}}@media(min-width:768px){.elementor-2940 .elementor-element.elementor-element-29b8b70{--width:33.525%;}.elementor-2940 .elementor-element.elementor-element-4077773{--width:50%;}}@media(max-width:1024px) and (min-width:768px){.elementor-2940 .elementor-element.elementor-element-29b8b70{--width:43.559%;}.elementor-2940 .elementor-element.elementor-element-4077773{--width:466.566px;}}@media(max-width:767px){.elementor-2940 .elementor-element.elementor-element-29b8b70{--width:8.818%;}.elementor-2940 .elementor-element.elementor-element-aa72409{text-align:start;}.elementor-2940 .elementor-element.elementor-element-aa72409 img{width:24%;}}/* Start custom CSS for container, class: .elementor-element-b97a938 *//* =========================================================
   HEAVY HAZE - HEADER (logo kiri, menu kanan)
   Tanpa !important. Setting panel Elementor tetap menang.

   CLASSES (Advanced > CSS Classes, tanpa titik):
   Container paling luar ..... hh-header
     Container kiri .......... hh-header__left
       Site Logo ............. hh-logo
     Container kanan ......... hh-header__right
       WordPress Menu ........ hh-menu
   ========================================================= */


/* ---------- 1. VARIABEL (ubah di sini) ---------- */
.hh-header {
  --hh-bg:         #000000;   /* latar header */
  --hh-text:       #F2F2F2;   /* teks menu, hamburger */
  --hh-line:       #3A3A3A;   /* garis bawah header */
  --hh-drop-bg:    #0A0A0A;   /* latar dropdown */
  --hh-drop-line:  #2A2A2A;   /* garis antar item dropdown */
  --hh-drop-hover: #1A1A1A;   /* latar item saat disentuh */

  --hh-logo-w:     76px;      /* lebar logo */
  --hh-burger:     46px;      /* diameter tombol hamburger */
}


/* =========================================================
   2. HEADER (container paling luar)
   ========================================================= */
.hh-header.e-con {
  --flex-direction: row;
  --flex-wrap: nowrap;
  --justify-content: space-between;
  --align-items: center;
  --gap: 16px 16px;
  --padding-top: 14px;
  --padding-right: 48px;
  --padding-bottom: 14px;
  --padding-left: 48px;

  position: relative;
  max-width: 100%;
  overflow-x: clip;
  background-color: var(--hh-bg);
  border-bottom: 1px solid var(--hh-line);
}


/* =========================================================
   3. KIRI: LOGO
   ========================================================= */
.hh-header .hh-header__left.e-con {
  --flex-direction: row;
  --justify-content: flex-start;
  --align-items: center;
  --width: auto;
  --padding-top: 0px;
  --padding-right: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;

  flex: 0 0 auto;
  align-self: center;
  width: fit-content;
  max-width: none;
  min-width: 0;
}

.hh-header .hh-logo {
  --container-widget-width: auto;
  --container-widget-flex-grow: 0;
  width: fit-content;
  margin: 0;
}

.hh-header .hh-logo .elementor-widget-container {
  width: fit-content;
  margin: 0;
  padding: 0;
}

.hh-logo.hh-logo img {
  display: block;
  width: var(--hh-logo-w);
  max-width: 100%;
  height: auto;
}


/* =========================================================
   4. KANAN: MENU
   ========================================================= */
.hh-header .hh-header__right.e-con {
  --flex-direction: row;
  --justify-content: flex-end;
  --align-items: center;
  --width: auto;
  --padding-top: 0px;
  --padding-right: 0px;
  --padding-bottom: 0px;
  --padding-left: 0px;

  flex: 1 1 auto;
  align-self: center;
  width: auto;
  max-width: none;
  min-width: 0;
  min-height: 0;
  height: auto;
}

.hh-header .hh-menu.hh-menu {
  --container-widget-width: 100%;
  --container-widget-flex-grow: 1;
  width: 100%;
  max-width: none;
  height: auto;
  min-height: 0;
  margin: 0;
}

.hh-header .hh-menu.hh-menu .elementor-widget-container {
  margin: 0;
  padding: 0;
}


/* ---------- Menu desktop ---------- */
.hh-menu .elementor-nav-menu--main .elementor-nav-menu {
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
}

.hh-menu .elementor-nav-menu--main .elementor-item {
  padding: 10px 18px;
  border-bottom: 2px solid transparent;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  white-space: nowrap;
}

.hh-menu .elementor-nav-menu--main .elementor-item-active {
  border-bottom-color: var(--hh-text);
}


/* ---------- Hamburger: tombol bulat ---------- */
/* display tidak diatur di sini: Elementor yang menyembunyikannya di desktop */
.hh-header .hh-menu.hh-menu .elementor-menu-toggle {
  align-items: center;
  justify-content: center;
  width: var(--hh-burger);
  height: var(--hh-burger);
  margin: 0 0 0 auto;
  padding: 0;
  border: 1px solid var(--hh-text);
  border-radius: 50%;
  background-color: transparent;
  color: var(--hh-text);
  font-size: 20px;
  transition: background-color 0.25s ease, color 0.25s ease;
}

.hh-menu .elementor-menu-toggle svg {
  fill: currentColor;
}

/* Saat menu dibuka */
.hh-header .hh-menu.hh-menu .elementor-menu-toggle.elementor-active {
  background-color: var(--hh-text);
  color: var(--hh-bg);
}


/* ---------- Dropdown ---------- */
.hh-menu .elementor-nav-menu--dropdown {
  min-width: 240px;
  margin: 0;
  background-color: var(--hh-drop-bg);
  border-top: 1px solid var(--hh-line);
}

.hh-menu .elementor-nav-menu--dropdown .elementor-item,
.hh-menu .elementor-nav-menu--dropdown .elementor-sub-item {
  padding: 16px 24px;
  border-bottom: 1px solid var(--hh-drop-line);
  border-left: 3px solid transparent;
  color: var(--hh-text);
  letter-spacing: 0.12em;
  text-align: left;
  text-transform: uppercase;
}

.hh-menu .elementor-nav-menu--dropdown li:last-child > .elementor-item {
  border-bottom: 0;
}

.hh-menu .elementor-nav-menu--dropdown .elementor-item:hover,
.hh-menu .elementor-nav-menu--dropdown .elementor-item:focus,
.hh-menu .elementor-nav-menu--dropdown .elementor-item-active {
  background-color: var(--hh-drop-hover);
  border-left-color: var(--hh-text);
}

.hh-menu .elementor-nav-menu--dropdown .sub-menu .elementor-sub-item {
  padding-left: 40px;
}


/* =========================================================
   5. TABLET (maks 1024px): grid 2 kolom, logo kiri, hamburger kanan
   ========================================================= */
@media (max-width: 1024px) {
  .hh-header {
    --hh-logo-w: 64px;
    --hh-burger: 44px;
  }

  .hh-header.e-con {
    --gap: 12px 12px;
    --padding-top: 12px;
    --padding-right: 30px;
    --padding-bottom: 12px;
    --padding-left: 30px;
  }

  /* Dikunci jadi 2 kolom: kolom kiri selebar logo, kolom kanan sisanya */
  .hh-header.e-con,
  .hh-header.e-con > .e-con-inner {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    column-gap: 12px;
    row-gap: 0;
  }

  /* kalau container dibuat Boxed, isinya melebar penuh */
  .hh-header.e-con > .e-con-inner {
    grid-column: 1 / -1;
    width: 100%;
    max-width: none;
    padding: 0;
  }

  .hh-header .hh-header__left.e-con {
    justify-self: start;
    width: auto;
    --width: auto;
  }

  .hh-header .hh-header__right.e-con {
    justify-self: end;
    width: auto;
    --width: auto;
  }

  .hh-header .hh-menu.hh-menu {
    --container-widget-width: auto;
    width: auto;
  }

  /* Kalau menu horizontal masih tampil di tablet, tidak boleh keluar layar */
  .hh-menu .elementor-nav-menu--main {
    max-width: 100%;
  }

  .hh-menu .elementor-nav-menu--main .elementor-item {
    padding: 8px 12px;
    letter-spacing: 0.1em;
  }

  /* Dropdown selalu muncul dari sisi kanan */
  .hh-menu .elementor-nav-menu--dropdown {
    left: auto;
    right: 0;
  }
}


/* =========================================================
   6. MOBILE (maks 767px)
   ========================================================= */
@media (max-width: 767px) {
  .hh-header {
    --hh-logo-w: 52px;
    --hh-burger: 42px;
  }

  .hh-header.e-con {
    --padding-top: 10px;
    --padding-right: 20px;
    --padding-bottom: 10px;
    --padding-left: 20px;
  }

  .hh-header .hh-menu.hh-menu .elementor-menu-toggle {
    font-size: 18px;
  }

  .hh-menu .elementor-nav-menu--dropdown .elementor-item,
  .hh-menu .elementor-nav-menu--dropdown .elementor-sub-item {
    padding: 15px 20px;
  }

  .hh-menu .elementor-nav-menu--dropdown .sub-menu .elementor-sub-item {
    padding-left: 34px;
  }
}


@media (prefers-reduced-motion: reduce) {
  .hh-header .hh-menu.hh-menu .elementor-menu-toggle {
    transition: none;
  }
}

/* =========================================================
   HEADER: DROPDOWN MENGAMBANG (tablet + mobile)
   Header tidak ikut turun saat menu dibuka
   ========================================================= */
@media (max-width: 1024px) {
  /* Header jangan memotong dropdown */
  .hh-header.e-con {
    overflow: visible;
    z-index: 100;
  }

  .hh-header .hh-menu.hh-menu {
    position: relative;
  }

  /* Dropdown: menempel di bawah tombol, menimpa konten halaman */
  .hh-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    position: absolute;
    top: 100%;
    right: 0;
    left: auto;
    width: min(320px, calc(100vw - 40px));
    margin-top: 12px;
    z-index: 9999;
    border: 1px solid var(--hh-line);
  }
}

@media (max-width: 767px) {
  .hh-menu .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    width: calc(100vw - 40px);
  }
}/* End custom CSS */