:root {
  --professional-nav-bg: rgba(5, 20, 31, .94);
  --professional-nav-line: rgba(148, 183, 201, .22);
  --professional-nav-copper: #ed955b;
  --professional-nav-text: #f7f2eb;
  --professional-nav-muted: #aebbc3;
}

.professional-nav-bar {
  position: sticky;
  top: 0;
  z-index: 80;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: clamp(18px, 3vw, 44px);
  width: 100%;
  min-height: 86px;
  padding: 12px 0;
  border-bottom: 1px solid var(--professional-nav-line);
  background: var(--professional-nav-bg);
  box-shadow: 0 14px 35px rgba(1, 10, 16, .18);
  -webkit-backdrop-filter: blur(18px);
  backdrop-filter: blur(18px);
}

.professional-nav-brand {
  color: var(--professional-nav-text);
  text-decoration: none;
  white-space: nowrap;
  font: 700 clamp(1.3rem, 2vw, 1.8rem)/1 Georgia, serif;
}

.professional-nav-brand span {
  color: var(--professional-nav-copper);
}

.professional-nav-links {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 0;
  overflow-x: auto;
  padding: 3px 2px 7px;
  scrollbar-width: thin;
  scrollbar-color: rgba(237, 149, 91, .45) transparent;
}

.professional-nav-links a {
  flex: 0 0 auto;
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  padding: 9px 14px;
  border: 1px solid var(--professional-nav-line);
  border-radius: 10px;
  color: var(--professional-nav-muted);
  text-decoration: none;
  font: 650 .82rem/1.15 Inter, ui-sans-serif, system-ui, sans-serif;
  transition: border-color .18s, background .18s, color .18s, transform .18s;
}

.professional-nav-links a:hover,
.professional-nav-links a:focus-visible {
  border-color: rgba(237, 149, 91, .65);
  color: var(--professional-nav-text);
  background: rgba(237, 149, 91, .08);
  outline: none;
}

.professional-nav-links a.active,
.professional-nav-links a[aria-current="page"] {
  border-color: var(--professional-nav-copper);
  color: var(--professional-nav-text);
  background: rgba(237, 149, 91, .1);
}

.professional-nav-session {
  color: var(--professional-nav-muted);
  white-space: nowrap;
  font: 650 .82rem/1.2 Inter, ui-sans-serif, system-ui, sans-serif;
}

button.professional-nav-session {
  border: 0;
  background: transparent;
  cursor: pointer;
}

button.professional-nav-session:hover,
button.professional-nav-session:focus-visible {
  color: var(--professional-nav-text);
  outline: none;
}

.briefing-admin-page .professional-nav-bar {
  margin-bottom: 46px;
}

.admin-content > .professional-nav-bar {
  margin-bottom: 32px;
}

.gallery-admin-page .admin-app {
  display: block;
}

.gallery-admin-page .admin-content {
  width: min(1480px, calc(100% - 64px));
  margin: 0 auto;
  padding: 0 0 70px;
}

@media (max-width: 1080px) {
  .professional-nav-bar {
    grid-template-columns: auto auto;
    gap: 8px 18px;
    min-height: 0;
    padding: 14px 0 8px;
  }

  .professional-nav-links {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-content: flex-start;
  }

  .professional-nav-session {
    justify-self: end;
  }
}

@media (max-width: 620px) {
  .professional-nav-bar {
    margin: 0;
  }

  .professional-nav-links {
    width: calc(100vw - 28px);
    margin-right: -14px;
    padding-right: 14px;
    scroll-snap-type: x proximity;
  }

  .professional-nav-links a {
    min-height: 40px;
    padding: 8px 12px;
    font-size: .76rem;
    scroll-snap-align: start;
  }

  .professional-nav-session {
    font-size: .75rem;
  }

  .gallery-admin-page .admin-content {
    width: calc(100% - 28px);
    padding: 0 0 50px;
  }
}
