/* ============================================================
   TEMPER SHARED SHELL
   The navigation is a promise of orientation. It should retain
   the same measure and type rhythm, regardless of page ancestry.
   Loaded after each page's local styles to tame legacy inline nav.
   ============================================================ */
:root {
  --temper-shell-width: var(--temper-content-width, 820px);
  --temper-shell-gutter: 1.5rem;
  --temper-pill-size: .82rem;
  --temper-pill-pad-y: .35rem;
  --temper-pill-pad-x: .85rem;
}

body > nav:first-of-type,
nav.temper-primary-nav,
nav[aria-label="Primary navigation"],
.top-nav {
  width: min(var(--temper-shell-width), calc(100% - (var(--temper-shell-gutter) * 2))) !important;
  min-height: 76px !important;
  margin: 0 auto !important;
  padding: 1rem 0 !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 1.5rem !important;
  border-bottom: 1px solid rgba(255,255,255,.1) !important;
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body > nav:first-of-type > a:first-child,
nav.temper-primary-nav > a:first-child,
nav[aria-label="Primary navigation"] > .brand,
.top-nav .nav-logo {
  color: #4fd1c5 !important;
  font-family: Temper, serif !important;
  font-size: 1.55rem !important;
  font-weight: 600 !important;
  letter-spacing: -.02em !important;
  text-decoration: none !important;
  text-shadow: 0 0 10px rgba(79,209,197,.2) !important;
}

body > nav:first-of-type > div,
nav.temper-primary-nav > div,
nav[aria-label="Primary navigation"] .nav-links,
.top-nav .pill-row {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-end !important;
  align-items: center !important;
  gap: .55rem !important;
}

body > nav:first-of-type > div > a,
nav.temper-primary-nav > div > a,
nav[aria-label="Primary navigation"] .nav-links a,
.top-nav .pill-row .pill,
.nav-pills .nav-pill {
  display: inline-flex !important;
  align-items: center !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.03) !important;
  color: #94a3b8 !important;
  font-family: Inter, sans-serif !important;
  font-size: var(--temper-pill-size) !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  padding: var(--temper-pill-pad-y) var(--temper-pill-pad-x) !important;
  text-decoration: none !important;
  text-transform: none !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transition: .2s ease !important;
}

body > nav:first-of-type > div > a:hover,
nav.temper-primary-nav > div > a:hover,
nav[aria-label="Primary navigation"] .nav-links a:hover,
.top-nav .pill-row .pill:hover,
.nav-pills .nav-pill:hover {
  border-color: rgba(79,209,197,.55) !important;
  background: rgba(79,209,197,.08) !important;
  color: #4fd1c5 !important;
  transform: none !important;
}

/* The old pages append a second navigation at the foot. Keep it
   in the same readable column, but make it deliberately quieter. */
body > nav:not(:first-of-type) {
  width: min(var(--temper-shell-width), calc(100% - (var(--temper-shell-gutter) * 2))) !important;
  margin: 2rem auto 0 !important;
  padding: 0 !important;
  display: flex !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: .55rem !important;
}

body > nav:not(:first-of-type) a {
  color: #94a3b8 !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.03) !important;
  font-family: Inter, sans-serif !important;
  font-size: var(--temper-pill-size) !important;
  letter-spacing: 0 !important;
  padding: var(--temper-pill-pad-y) var(--temper-pill-pad-x) !important;
  text-decoration: none !important;
  text-transform: none !important;
}

body > nav:not(:first-of-type) a:hover { color: #4fd1c5 !important; border-color: rgba(79,209,197,.55) !important; }

footer { font-family: Inter, sans-serif; font-size: .82rem !important; }

@media (max-width: 760px) {
  body > nav:first-of-type,
  nav.temper-primary-nav,
  nav[aria-label="Primary navigation"],
  .top-nav { min-height: 0 !important; align-items: flex-start !important; flex-direction: column !important; }
  body > nav:first-of-type > div,
  nav.temper-primary-nav > div,
  nav[aria-label="Primary navigation"] .nav-links,
  .top-nav .pill-row { justify-content: flex-start !important; }
}
