/* widget: mr-nav */
.mr-nav {
  position: fixed; inset: 0 0 auto 0; z-index: 50;
  background: rgba(255, 248, 241, .96);
  -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
  transition: box-shadow .3s var(--mr-ease);
}
.mr-nav.is-scrolled { box-shadow: 0 8px 30px -12px rgba(87, 66, 57, .25); }

.mr-nav__inner {
  max-width: var(--mr-max); margin-inline: auto; height: var(--mr-nav-h);
  padding-inline: var(--mr-gutter);
  display: flex; align-items: center; justify-content: space-between; gap: 24px;
}
.mr-nav__brand {
  font-family: var(--mr-font-display); font-weight: 700; font-size: 1.75rem; line-height: 36px; letter-spacing: -.05em;
  color: var(--mr-primary); text-decoration: none; white-space: nowrap;
}
.mr-nav__menu { flex: 1; display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.mr-nav__links { flex: 1; display: flex; justify-content: center; gap: 32px; }
.mr-nav__links a {
  position: relative; display: inline-block; padding-block: 4px;
  color: var(--mr-text); text-decoration: none;
  font-family: var(--mr-font-label); font-size: var(--mr-label); font-weight: 700; line-height: 15px; letter-spacing: .1em; text-transform: uppercase;
  transition: color .2s var(--mr-ease);
}
.mr-nav__links a::after {
  content: ''; position: absolute; left: 0; right: 0; bottom: -2px; height: 2px; background: var(--mr-primary);
  transform: scaleX(0); transform-origin: left; transition: transform .35s var(--mr-ease);
}
.mr-nav__links a:hover { color: var(--mr-primary); }
.mr-nav__links a:hover::after { transform: scaleX(1); }

body[data-page="home"] .mr-nav [data-nav="home"],
body[data-page="menu"] .mr-nav [data-nav="menu"],
body[data-page="gallery"] .mr-nav [data-nav="gallery"],
body[data-page="contact"] .mr-nav [data-nav="contact"],
.mr-nav__links a[aria-current="page"] { color: var(--mr-primary); }
body[data-page="home"] .mr-nav [data-nav="home"]::after,
body[data-page="menu"] .mr-nav [data-nav="menu"]::after,
body[data-page="gallery"] .mr-nav [data-nav="gallery"]::after,
body[data-page="contact"] .mr-nav [data-nav="contact"]::after,
.mr-nav__links a[aria-current="page"]::after { transform: scaleX(1); }

.mr-nav__actions { display: flex; align-items: center; gap: 16px; }
.mr-nav__lang { display: flex; align-items: center; }
.mr-nav__lang li + li::before { content: '|'; margin-inline: 5px; color: var(--mr-text); font-family: var(--mr-font-label); font-size: var(--mr-label); font-weight: 700; }
.mr-nav__lang a { color: var(--mr-text); text-decoration: none; font-family: var(--mr-font-label); font-size: var(--mr-label); font-weight: 700; letter-spacing: .1em; }
.mr-nav__lang a[aria-current="true"], .mr-nav__lang a:hover { color: var(--mr-primary); }
.mr-nav__cta { padding: 11.5px 24px; }

.mr-nav__toggle { display: none; width: 44px; height: 44px; padding: 0; border: 0; background: transparent; cursor: pointer; color: var(--mr-ink); }
.mr-nav__bars, .mr-nav__bars::before, .mr-nav__bars::after {
  display: block; width: 24px; height: 2px; margin-inline: auto; border-radius: 2px; background: currentColor; transition: transform .3s var(--mr-ease), background-color .2s;
}
.mr-nav__bars { position: relative; }
.mr-nav__bars::before, .mr-nav__bars::after { content: ''; position: absolute; left: 0; }
.mr-nav__bars::before { top: -7px; }
.mr-nav__bars::after { top: 7px; }
.mr-nav.is-open .mr-nav__bars { background: transparent; }
.mr-nav.is-open .mr-nav__bars::before { transform: translateY(7px) rotate(45deg); }
.mr-nav.is-open .mr-nav__bars::after { transform: translateY(-7px) rotate(-45deg); }

@media (max-width: 1080px) {
  :root { --mr-nav-h: 72px; }
  .mr-nav__toggle { display: block; }
  .mr-nav__menu {
    position: fixed; top: var(--mr-nav-h); left: 0; right: 0;
    flex-direction: column; align-items: stretch; gap: 0;
    padding: 8px var(--mr-gutter) 32px; background: var(--mr-bg);
    box-shadow: 0 30px 40px -20px rgba(31, 27, 18, .25);
    visibility: hidden; opacity: 0; transform: translateY(-8px);
    transition: opacity .3s var(--mr-ease), transform .3s var(--mr-ease), visibility 0s .3s;
    max-height: calc(100dvh - var(--mr-nav-h)); overflow-y: auto;
  }
  .mr-nav.is-open .mr-nav__menu { visibility: visible; opacity: 1; transform: none; transition-delay: 0s; }
  .mr-nav__links { flex-direction: column; gap: 0; }
  .mr-nav__links a { display: block; padding: 18px 0; border-bottom: 1px solid var(--mr-line); font-size: .8125rem; }
  .mr-nav__links a::after { display: none; }
  .mr-nav__actions { justify-content: space-between; padding-top: 24px; }
}

/* logo (SVG) in place of the text wordmark */
.mr-nav__brand { display: flex; align-items: center; }
.mr-nav__brand img { display: block; height: 64px; width: auto; }
@media (max-width: 1080px) { .mr-nav__brand img { height: 52px; } }
