:root {
  --hk-menu-width: clamp(300px, 28vw, 420px);
}

.hk-site-chrome {
  position: fixed;
  inset: 0;
  z-index: 99990;
  pointer-events: none;
}

.hk-menu-body-locked {
  touch-action: none;
}

button.hk-menu-toggle,
button.hk-menu-toggle:hover,
button.hk-menu-toggle:focus,
button.hk-menu-toggle:focus-visible,
button.hk-menu-toggle:active {
  position: fixed;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: 99999;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  appearance: none;
  -webkit-appearance: none;
  padding: 0 !important;
  margin: 0 !important;
  cursor: pointer;
  pointer-events: auto;
  mix-blend-mode: difference;
  transition: transform 0.5s ease;
}

button.hk-menu-toggle::before,
button.hk-menu-toggle::after {
  content: none !important;
  display: none !important;
}

.hk-menu-toggle:hover {
  transform: translateY(-50%) scale(1.02);
}

.hk-menu-toggle__box {
  position: relative;
  width: 2.5rem;
  height: 2.5rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.hk-menu-toggle__line {
  position: absolute;
  width: 1.25rem;
  height: 1px;
  background: #a57e45;
  transition:
    transform 0.6s cubic-bezier(0.76, 0, 0.24, 1),
    opacity 0.4s cubic-bezier(0.76, 0, 0.24, 1),
    background-color 0.3s ease;
}

.hk-menu-toggle__line--top {
  transform: translateY(-6px);
}

.hk-menu-toggle__line--bot {
  transform: translateY(6px);
}

html.hk-menu-open .hk-menu-toggle {
  mix-blend-mode: normal;
}

html.hk-menu-open .hk-menu-toggle__line {
  background: #05070a;
}

html.hk-menu-open .hk-menu-toggle__line--top {
  transform: translateY(0) rotate(45deg);
}

html.hk-menu-open .hk-menu-toggle__line--mid {
  opacity: 0;
  transform: scaleX(0);
}

html.hk-menu-open .hk-menu-toggle__line--bot {
  transform: translateY(0) rotate(-45deg);
}

.hk-site-nav {
  position: fixed;
  inset: 0;
  z-index: 99995;
  pointer-events: none;
}

button.hk-site-nav__backdrop,
button.hk-site-nav__backdrop:hover,
button.hk-site-nav__backdrop:focus,
button.hk-site-nav__backdrop:focus-visible,
button.hk-site-nav__backdrop:active {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  appearance: none;
  -webkit-appearance: none;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  opacity: 0;
  transition: opacity 0.45s ease;
  pointer-events: none;
}

.hk-site-nav__panel {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: var(--hk-menu-width);
  max-width: 88vw;
  background: #a8864c;
  border-right: 1px solid rgba(5, 7, 10, 0.06);
  box-shadow: 20px 0 60px rgba(0, 0, 0, 0.5);
  transform: translate3d(-102%, 0, 0);
  transition: transform 1s cubic-bezier(0.76, 0, 0.24, 1);
  overflow: hidden;
  pointer-events: auto;
}

html.hk-menu-open .hk-site-nav {
  pointer-events: auto;
}

html.hk-menu-open .hk-site-nav__panel {
  transform: translate3d(0, 0, 0);
}

html.hk-menu-open button.hk-site-nav__backdrop {
  opacity: 1;
  pointer-events: auto;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
}

.hk-site-nav__noise,
.hk-site-nav__pattern {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.hk-site-nav__noise {
  opacity: 0.028;
  mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
}

.hk-site-nav__pattern {
  opacity: 0.06;
  mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 144 180'%3E%3Cg fill='none' stroke='%23232A4C' stroke-width='1' stroke-linecap='round'%3E%3Cpath d='M34 42 C34 68 48 82 64 82 C80 82 94 68 94 42'/%3E%3Cpath d='M96 150 C96 126 82 112 66 112 C50 112 36 126 36 150'/%3E%3C/g%3E%3C/svg%3E");
  background-size: 144px 180px;
  background-repeat: repeat;
  background-position: 0 0;
}

.hk-site-nav__inner {
  position: relative;
  z-index: 5;
  box-sizing: border-box;
  height: 100%;
  min-height: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: clamp(68px, 10vh, 92px) 1.5rem clamp(24px, 4.5vh, 40px);
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(5, 7, 10, 0.2) rgba(5, 7, 10, 0.05);
}

.hk-site-nav__inner::-webkit-scrollbar {
  width: 2px;
}

.hk-site-nav__inner::-webkit-scrollbar-track {
  background: rgba(5, 7, 10, 0.05);
}

.hk-site-nav__inner::-webkit-scrollbar-thumb {
  background: rgba(5, 7, 10, 0.2);
  border-radius: 10px;
}

.hk-site-nav__menu-wrap {
  display: flex;
  flex: 1 1 auto;
  min-height: 0;
  width: 100%;
  align-items: center;
  justify-content: center;
  padding-block: clamp(1rem, 4vh, 2.5rem);
}

.hk-site-menu__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.375rem;
  width: 100%;
}

.hk-site-menu__list > li {
  width: 100%;
  text-align: center;
}

.hk-site-menu__list > li > a {
  display: inline-block;
  max-width: 100%;
  text-decoration: none;
  border: 0;
  background: transparent;
  color: #05070a;
  font-size: 0;
  line-height: 0;
  padding: 0.5rem 1.25rem;
}

.hk-site-menu__label {
  display: inline-block;
  font-family: ui-sans-serif, system-ui, -apple-system, sans-serif;
  font-size: clamp(18px, 1.58vw, 19px);
  line-height: 1.25;
  text-transform: uppercase;
  letter-spacing: normal;
  font-weight: 400;
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.45s ease, transform 0.45s ease;
}

.hk-site-menu__list:has(li:hover) li:not(:hover) .hk-site-menu__label,
.hk-site-menu__list:has(li:focus-within) li:not(:focus-within) .hk-site-menu__label,
.hk-site-menu__list[data-hk-hovering='true'] > li:not([data-hk-hovered='true']) .hk-site-menu__label {
  opacity: 0.4;
}

.hk-site-menu__list > li:hover .hk-site-menu__label,
.hk-site-menu__list > li:focus-within .hk-site-menu__label,
.hk-site-menu__list > li.current-menu-item .hk-site-menu__label,
.hk-site-menu__list > li.current_page_item .hk-site-menu__label {
  transform: scale(1.015);
}

.hk-site-nav__meta {
  flex: 0 0 auto;
  margin-top: 0;
  padding-top: 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.hk-site-nav__lang {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--font-mono, 'Roboto Mono', ui-monospace, 'Cascadia Code', 'Source Code Pro', monospace);
  font-size: 8px;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: #05070a;
}

.hk-site-nav__lang a,
.hk-site-nav__lang span {
  color: inherit;
  opacity: 0.4;
  text-decoration: none;
}

.hk-site-nav__lang a {
  pointer-events: auto;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.hk-site-nav__lang a:hover,
.hk-site-nav__lang a:focus-visible {
  opacity: 1;
  outline: none;
  transform: translateY(-1px);
}

.hk-site-nav__lang a.is-active,
.hk-site-nav__lang span.is-active {
  opacity: 1;
}

.hk-site-nav__divider {
  opacity: 0.2 !important;
}

.hk-site-nav__social {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
}

.hk-site-nav__social a,
.hk-site-nav__social button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #05070a;
  opacity: 0.72;
  transition: opacity 0.3s ease, transform 0.3s ease;
  border: 0;
  padding: 0;
  margin: 0;
  background: transparent;
}

.hk-site-nav__social a:hover,
.hk-site-nav__social a:focus-visible {
  opacity: 1;
  transform: translateY(-1px);
}

.hk-site-nav__social button.is-disabled {
  opacity: 0.72;
  cursor: default;
}

.hk-site-nav__social svg {
  width: 14px;
  height: 14px;
}

html.hk-menu-open body {
  overflow: hidden;
}

html.hk-menu-open:has(body.page-template-page-internal) {
  background: #061126 !important;
  background-color: #061126 !important;
}

html.hk-menu-open body.page-template-page-internal,
html.hk-menu-open body.page-template-page-internal #page,
html.hk-menu-open body.page-template-page-internal .site,
html.hk-menu-open body.page-template-page-internal #content,
html.hk-menu-open body.page-template-page-internal .site-main,
html.hk-menu-open body.page-template-page-internal .hk-internal-page,
html.hk-menu-open body.page-template-page-internal .elementor,
html.hk-menu-open body.page-template-page-internal .elementor-section,
html.hk-menu-open body.page-template-page-internal .elementor-container,
html.hk-menu-open body.page-template-page-internal .elementor-widget-wrap {
  background: #061126 !important;
  background-color: #061126 !important;
}

html.hk-menu-open body.page-template-page-internal::before {
  content: '';
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: var(--hk-menu-width);
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 54% 38%, rgba(16, 38, 82, 0.24), rgba(6, 17, 38, 0) 56%),
    #061126;
}

html.hk-menu-open body.page-template-page-internal .hk-internal-page,
html.hk-menu-open body.page-template-page-internal #content,
html.hk-menu-open body.page-template-page-internal .site-main,
html.hk-menu-open body.page-template-page-internal .elementor {
  position: relative;
  z-index: 1;
}

html.hk-menu-open body:not(.page-template-page-internal) #page,
html.hk-menu-open body:not(.page-template-page-internal) .site,
html.hk-menu-open body:not(.page-template-page-internal) main,
html.hk-menu-open body.page-template-page-internal .hk-internal-page {
  pointer-events: none;
  filter: brightness(0.82);
  transform: translate3d(16px, 0, 0) scale(0.985);
  transform-origin: left center;
  transition:
    filter 0.95s cubic-bezier(0.76, 0, 0.24, 1),
    transform 0.95s cubic-bezier(0.76, 0, 0.24, 1),
    margin-left 0.95s cubic-bezier(0.76, 0, 0.24, 1),
    width 0.95s cubic-bezier(0.76, 0, 0.24, 1);
}

@media (min-width: 768px) {
  .hk-site-nav__inner {
    padding: clamp(68px, 10vh, 92px) 3rem clamp(24px, 4.5vh, 40px);
  }

  .hk-site-nav__meta {
    margin-top: 0;
    padding-top: 1rem;
  }

  html.hk-menu-open body:not(.page-template-page-internal) #page,
  html.hk-menu-open body:not(.page-template-page-internal) .site,
  html.hk-menu-open body:not(.page-template-page-internal) main,
  html.hk-menu-open body.page-template-page-internal .hk-internal-page {
    transform: translate3d(0, 0, 0) scale(0.985);
    margin-left: var(--hk-menu-width);
    width: calc(100vw - var(--hk-menu-width));
  }
}

@media (max-width: 767px) {
  :root {
    --hk-menu-width: 300px;
  }

  .hk-site-nav__meta {
    margin-top: 0;
  }

  .hk-site-menu__label {
    font-size: 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .hk-menu-toggle,
  .hk-menu-toggle *,
  .hk-site-nav,
  .hk-site-nav * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* Final multilingual menu typography/direction parity */
.hk-site-nav[dir='rtl'] .hk-site-menu__list,
.hk-site-nav[dir='rtl'] .hk-site-menu__list > li {
  direction: rtl;
  text-align: right;
}

.hk-site-nav[dir='ltr'] .hk-site-menu__list,
.hk-site-nav[dir='ltr'] .hk-site-menu__list > li {
  direction: ltr;
  text-align: left;
}

.hk-site-nav[dir='rtl'] .hk-site-menu__list {
  align-items: flex-end;
}

.hk-site-nav[dir='ltr'] .hk-site-menu__list {
  align-items: flex-start;
}

.hk-site-nav[dir='rtl'] .hk-site-menu__label {
  font-family: var(--font-persian, 'Vazirmatn', Tahoma, Arial, sans-serif) !important;
  text-transform: none;
  letter-spacing: 0;
  font-weight: 500;
}

.hk-site-nav[dir='ltr'] .hk-site-menu__label {
  font-family: var(--font-english, 'Inter', 'Segoe UI', Arial, sans-serif) !important;
  text-transform: uppercase;
}



/* QA correction: reference centered menu alignment */
.hk-site-nav[dir='rtl'] .hk-site-menu__list,
.hk-site-nav[dir='ltr'] .hk-site-menu__list {
  align-items: center !important;
  text-align: center !important;
}

.hk-site-nav[dir='rtl'] .hk-site-menu__list > li,
.hk-site-nav[dir='ltr'] .hk-site-menu__list > li,
.hk-site-nav[dir='rtl'] .hk-site-menu__label,
.hk-site-nav[dir='ltr'] .hk-site-menu__label {
  text-align: center !important;
}
