/* Homepage nav — dynamic anchors + desktop/mobile split (no section overrides) */

.nav-link.is-active,
.nav-link.is-active .nav-link__text {
  opacity: 1;
  color: var(--forest);
  font-weight: 600;
}

.nav-sheet__more,
.nav-desktop-actions {
  display: none;
}

.nav-more {
  position: relative;
  display: none;
  z-index: 140;
}
@media (min-width: 1024px) {
  .nav-more {
    display: inline-flex;
  }
}
.nav-more__trigger {
  appearance: none;
  border: none;
  background: transparent;
  color: var(--ink-muted);
  font-size: 0.8125rem;
  font-weight: 500;
  padding: 0.45rem 0.65rem;
  border-radius: 10px;
  cursor: pointer;
  white-space: nowrap;
  font-family: inherit;
}
.nav-more__trigger:hover {
  color: var(--forest);
  background: rgba(45, 75, 50, 0.06);
}
.nav-more__menu {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  min-width: 220px;
  padding: 0.45rem;
  border-radius: 14px;
  background: var(--white);
  border: 1px solid var(--border-subtle);
  box-shadow: var(--shadow-card);
  display: none;
  flex-direction: column;
  gap: 0.15rem;
  z-index: 120;
}
.nav-more.is-open .nav-more__menu {
  display: flex;
}
.nav-more__menu a {
  display: block;
  padding: 0.55rem 0.75rem;
  border-radius: 10px;
  font-size: 0.875rem;
  color: var(--ink);
  text-decoration: none;
}
.nav-more__menu a:hover {
  background: rgba(45, 75, 50, 0.06);
  color: var(--forest);
}

@media (min-width: 1024px) {
  .nav {
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: clamp(0.75rem, 1.5vw, 1.5rem);
  }
  .nav-panel {
    order: 2;
    min-width: 0;
    justify-self: end;
  }
  .nav-desktop-actions {
    display: flex;
    align-items: center;
    gap: clamp(0.5rem, 0.9vw, 1rem);
    flex-shrink: 0;
    order: 3;
    position: relative;
    z-index: 6;
    padding-left: clamp(0.75rem, 1vw, 1.1rem);
    margin-left: clamp(0.25rem, 0.6vw, 0.65rem);
    border-left: 1px solid rgba(45, 75, 50, 0.1);
  }
  .nav-desktop-actions__lang .lang-dropdown__menu {
    z-index: 130;
  }
  .nav-links__item--mobile {
    display: none !important;
  }
  .nav-sheet__foot {
    display: none !important;
  }
  .nav-sheet {
    gap: 0;
  }
  .nav-sheet__body {
    flex: 0 1 auto;
    padding-left: 0;
  }
  .nav-cta--desktop {
    width: auto;
    min-height: 40px;
    padding: 0 1.05rem;
    font-size: 0.8125rem;
    border-radius: 12px;
    margin: 0;
    white-space: nowrap;
  }
  .nav-admin--desktop {
    margin-left: 0;
    opacity: 0.55;
    font-size: 0.75rem;
    white-space: nowrap;
  }
  .nav-admin--desktop:hover {
    opacity: 0.85;
    color: var(--forest);
  }
}

@media (max-width: 1023px) {
  .nav-sheet__more {
    display: block;
    margin-top: 0.5rem;
    padding-top: 0.75rem;
    border-top: 1px solid rgba(45, 75, 50, 0.1);
  }
  .nav-sheet__more[hidden] {
    display: none !important;
  }

  body.nav-open .site-header {
    background: #f8f6f4;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    box-shadow: 0 1px 0 rgba(45, 75, 50, 0.1);
  }

  body.nav-open .nav-toggle {
    position: relative;
    z-index: 70;
  }

  .nav-sheet {
    background: #fffefb;
  }

  .nav-sheet__foot {
    background: #fffefb;
  }

  .nav-panel:not(.is-open) {
    visibility: hidden;
  }

  .nav-panel.is-open {
    visibility: visible;
  }
  .nav-sheet__more-label {
    font-size: 0.6875rem;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--ink-soft);
    margin: 0 0 0.5rem;
  }
  .nav-sheet__more-links {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
  }
  .nav-sheet__more-links a {
    font-size: 0.9375rem;
    color: var(--forest);
    text-decoration: none;
    padding: 0.35rem 0;
  }
  .nav-cta--sheet {
    width: 100%;
  }
  .nav-sheet__foot-staff {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0.65rem;
    width: 100%;
  }
  .nav-sheet__foot .nav-admin {
    align-self: center;
    opacity: 0.55;
    font-size: 0.8125rem;
  }
}
