:root {
  --ow-nav-bg: var(--bg, #0b0b0b);
  --ow-nav-text: var(--dark, #e5e5e5);
  --ow-nav-accent: var(--accent, #b886ff);
  --ow-nav-pad: var(--pad, clamp(20px, 4vw, 72px));
  --ow-nav-font: var(--font-display, "Extenda", "Inter", "Manrope", sans-serif);
}

body.menu-open {
  overflow: hidden !important;
}

.nav {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  z-index: 300 !important;
  width: 100% !important;
  padding: clamp(20px, 2.5vw, 40px) var(--ow-nav-pad) !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  background: transparent !important;
  color: var(--ow-nav-text) !important;
  transition: padding 0.35s ease, background 0.35s ease !important;
  box-sizing: border-box !important;
  mix-blend-mode: normal !important;
}

.nav.is-scrolled {
  padding: clamp(12px, 1.5vw, 24px) var(--ow-nav-pad) !important;
  background: rgba(11, 11, 11, 0.95) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

.nav-logo,
.mobile-logo {
  font-family: var(--ow-nav-font) !important;
  font-weight: 700 !important;
  text-transform: lowercase !important;
  color: inherit !important;
}

.nav-logo {
  font-size: clamp(1.8rem, 2.5vw, 2.5rem) !important;
  letter-spacing: -0.04em !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: color 0.3s ease !important;
}

.nav-logo:hover,
.menu-toggle:hover,
.mobile-close:hover {
  color: var(--ow-nav-accent) !important;
}

.nav-links {
  display: none !important;
}

.menu-toggle {
  display: block !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-family: inherit !important;
  font-size: 1.1rem !important;
  line-height: 1 !important;
  cursor: pointer !important;
  color: var(--ow-nav-text) !important;
  padding: 12px 0 !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  transition: color 0.3s ease !important;
}

.mobile-menu {
  position: fixed !important;
  inset: 0 !important;
  z-index: 400 !important;
  background: #0b0b0b !important;
  color: var(--ow-nav-text) !important;
  padding: clamp(30px, 5vw, 60px) var(--ow-nav-pad) clamp(20px, 4vw, 40px) !important;
  display: flex !important;
  flex-direction: column !important;
  transform: translateY(-100%) !important;
  visibility: hidden !important;
  opacity: 0 !important;
  box-sizing: border-box !important;
  transition: transform 0.55s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.35s ease, visibility 0.35s ease !important;
}

.mobile-menu.is-open {
  transform: translateY(0) !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.mobile-menu-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  margin-bottom: 8vh !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

.mobile-logo {
  font-size: 2.5rem !important;
  letter-spacing: -0.04em !important;
  line-height: 1 !important;
}

.mobile-close {
  display: block !important;
  font-family: inherit !important;
  font-size: 1rem !important;
  border: 0 !important;
  background: transparent !important;
  cursor: pointer !important;
  color: var(--ow-nav-text) !important;
  font-weight: 500 !important;
  padding: 12px 0 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  transition: color 0.3s ease !important;
}

.mobile-menu-links {
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

.mobile-link-wrapper {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  font-family: var(--ow-nav-font) !important;
  font-size: clamp(2rem, 5vw, 4rem) !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.02em !important;
  overflow: visible !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

.mobile-link-wrapper a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  border: 2px solid var(--ow-nav-accent) !important;
  color: var(--ow-nav-accent) !important;
  border-radius: 999px !important;
  padding: clamp(12px, 2vh, 18px) 24px !important;
  text-transform: uppercase !important;
  text-align: center !important;
  text-decoration: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.mobile-link-wrapper a:hover {
  background: var(--ow-nav-accent) !important;
  color: #0b0b0b !important;
  transform: translateY(-4px) !important;
}

.mobile-menu-bottom {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-end !important;
  margin-top: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
}

.mobile-socials {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

.mobile-socials a {
  color: var(--ow-nav-text) !important;
  text-decoration: none !important;
  font-size: 1.2rem !important;
}
