.vdnav-header {
  --vdnav-bg: rgba(20, 7, 12, .97);
  --vdnav-burgundy: #5b1f2e;
  --vdnav-cream: #f7f0e5;
  --vdnav-gold: #d5b66f;
  position: sticky;
  top: 0;
  z-index: 10000;
  width: 100%;
  color: var(--vdnav-cream);
  background: rgba(20, 7, 12, .82);
  border-bottom: 1px solid rgba(213, 182, 111, .16);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.vdnav-header *, .vdnav-header *::before, .vdnav-header *::after { box-sizing: border-box; }
.vdnav-header__inner {
  width: min(100% - 32px, 1440px);
  min-height: 76px;
  margin-inline: auto;
  display: flex;
  align-items: center;
  gap: 22px;
}
.vdnav-header__brand {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  flex: 0 0 auto;
  min-height: 48px;
  color: var(--vdnav-cream);
  text-decoration: none;
}
.vdnav-header__mark {
  width: 32px;
  height: 32px;
  border: 1px solid rgba(213, 182, 111, .65);
  border-radius: 50%;
  position: relative;
}
.vdnav-header__mark::before {
  content: "";
  position: absolute;
  inset: 8px 10px 7px;
  border-radius: 60% 40% 55% 45%;
  background: var(--vdnav-gold);
  transform: rotate(-22deg);
}
.vdnav-header__brand-copy { display: grid; line-height: 1.1; }
.vdnav-header__name { font-family: Georgia, serif; font-size: 20px; letter-spacing: .02em; white-space: nowrap; }
.vdnav-header__sub { margin-top: 4px; font: 500 9px/1.2 system-ui, sans-serif; letter-spacing: .13em; text-transform: uppercase; color: rgba(247, 240, 229, .66); white-space: nowrap; }
.vdnav-header__toggle {
  display: none;
  width: 48px;
  height: 48px;
  margin-left: auto;
  padding: 0;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(213, 182, 111, .55);
  border-radius: 50%;
  background: rgba(91, 31, 46, .7);
  color: var(--vdnav-cream);
  cursor: pointer;
  pointer-events: auto;
}
.vdnav-header__toggle-icon, .vdnav-header__toggle-icon::before, .vdnav-header__toggle-icon::after {
  width: 20px;
  height: 2px;
  display: block;
  position: relative;
  background: currentColor;
  border-radius: 2px;
  transition: transform .2s ease, opacity .2s ease;
}
.vdnav-header__toggle-icon::before, .vdnav-header__toggle-icon::after { content: ""; position: absolute; left: 0; }
.vdnav-header__toggle-icon::before { top: -6px; }
.vdnav-header__toggle-icon::after { top: 6px; }
.vdnav-header__toggle[aria-expanded="true"] .vdnav-header__toggle-icon { background: transparent; }
.vdnav-header__toggle[aria-expanded="true"] .vdnav-header__toggle-icon::before { top: 0; transform: rotate(45deg); }
.vdnav-header__toggle[aria-expanded="true"] .vdnav-header__toggle-icon::after { top: 0; transform: rotate(-45deg); }
.vdnav-header__nav { margin-left: auto; display: flex; align-items: center; gap: 20px; }
.vdnav-header__list { display: flex; align-items: center; gap: clamp(12px, 1.4vw, 24px); margin: 0; padding: 0; list-style: none; }
.vdnav-header__item { position: relative; }
.vdnav-header__link, .vdnav-header__submenu-toggle {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  border: 0;
  background: none;
  color: rgba(247, 240, 229, .88);
  font: 600 14px/1 system-ui, sans-serif;
  text-decoration: none;
  cursor: pointer;
  white-space: nowrap;
}
.vdnav-header__link { position: relative; }
.vdnav-header__link::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: 6px;
  height: 1px;
  background: var(--vdnav-gold);
  transition: right .2s ease;
}
.vdnav-header__link:hover::after, .vdnav-header__link[aria-current="page"]::after { right: 0; }
.vdnav-header__services-head { display: flex; align-items: center; }
.vdnav-header__services-head .vdnav-header__link { padding-right: 4px; }
.vdnav-header__submenu-toggle { width: 34px; justify-content: center; padding: 0; }
.vdnav-header__caret { width: 8px; height: 8px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .2s ease; }
.vdnav-header__submenu-toggle[aria-expanded="true"] .vdnav-header__caret { transform: rotate(225deg) translate(-1px, -1px); }
.vdnav-header__submenu {
  display: none;
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  width: min(360px, 90vw);
  margin: 0;
  padding: 10px;
  list-style: none;
  border: 1px solid rgba(213, 182, 111, .24);
  border-radius: 12px;
  background: var(--vdnav-bg);
  box-shadow: 0 20px 55px rgba(0, 0, 0, .38);
}
.vdnav-header__item--services[data-open="true"] .vdnav-header__submenu { display: grid; }
.vdnav-header__submenu a { display: block; padding: 12px 14px; border-radius: 8px; color: var(--vdnav-cream); font: 600 14px/1.3 system-ui, sans-serif; text-decoration: none; }
.vdnav-header__submenu a:hover { background: rgba(91, 31, 46, .62); color: #fff; }
.vdnav-header__cta { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; padding: 0 18px; border-radius: 999px; background: var(--vdnav-gold); color: #241017; font: 700 14px/1 system-ui, sans-serif; text-decoration: none; white-space: nowrap; }
.vdnav-header__toggle:focus-visible, .vdnav-header a:focus-visible, .vdnav-header button:focus-visible { outline: 3px solid #f1cf78; outline-offset: 3px; }
.vdnav-backdrop { display: none; position: fixed; inset: 0; z-index: 9998; background: rgba(8, 3, 5, .68); }
body.vdnav-menu-open { overflow: hidden; }

@media (min-width: 1180px) {
  .vdnav-header__item--services:hover .vdnav-header__submenu,
  .vdnav-header__item--services:focus-within .vdnav-header__submenu { display: grid; }
}
@media (max-width: 1179px) {
  .vdnav-header__inner { width: min(100% - 24px, 100%); min-height: 68px; }
  .vdnav-header__sub { display: none; }
  .vdnav-header__toggle { display: inline-flex; position: relative; z-index: 10002; }
  .vdnav-header__nav {
    display: none;
    position: fixed;
    z-index: 10001;
    top: 68px;
    left: 12px;
    right: 12px;
    max-height: calc(100dvh - 80px);
    overflow-y: auto;
    margin: 0;
    padding: 16px;
    border: 1px solid rgba(213, 182, 111, .25);
    border-radius: 14px;
    background: var(--vdnav-bg);
    box-shadow: 0 24px 60px rgba(0, 0, 0, .48);
  }
  .vdnav-header__nav[data-open="true"] { display: block; }
  .vdnav-header__list { display: grid; gap: 2px; }
  .vdnav-header__link { width: 100%; padding: 0 12px; font-size: 16px; }
  .vdnav-header__link::after { display: none; }
  .vdnav-header__services-head { width: 100%; }
  .vdnav-header__services-head .vdnav-header__link { flex: 1; }
  .vdnav-header__submenu-toggle { width: 48px; height: 48px; }
  .vdnav-header__submenu { position: static; width: 100%; margin: 2px 0 8px; padding: 6px; box-shadow: none; }
  .vdnav-header__submenu a { min-height: 44px; display: flex; align-items: center; padding: 8px 12px; }
  .vdnav-header__cta { width: 100%; margin-top: 12px; min-height: 48px; }
  .vdnav-backdrop[data-open="true"] { display: block; }
}
@media (max-width: 380px) {
  .vdnav-header__inner { width: min(100% - 16px, 100%); }
  .vdnav-header__name { font-size: 18px; }
  .vdnav-header__nav { left: 8px; right: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .vdnav-header *, .vdnav-header *::before, .vdnav-header *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
