/* Direction-aware navigation shared by every page. */
.site-header.scroll-navigation {
  position: fixed;
  opacity: 1;
  visibility: visible;
  transition: opacity 280ms ease, visibility 0s;
}
.site-header.scroll-navigation.navigation-scrolled:not(.light) {
  background: var(--ink);
  border-bottom-color: rgba(255,255,255,.22);
}
.site-header.scroll-navigation.navigation-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 800ms ease, visibility 0s 800ms;
}
.floating-adventure-cta {
  position: fixed;
  right: max(28px, env(safe-area-inset-right));
  bottom: max(28px, env(safe-area-inset-bottom));
  z-index: 19;
  max-width: calc(100vw - 32px);
  background: var(--ink);
  color: var(--white);
  border: 1px solid rgba(255,255,255,.35);
  box-shadow: 0 6px 24px rgba(0,0,0,.2);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 280ms ease, visibility 0s 280ms, background 200ms ease;
}
.floating-adventure-cta.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: opacity 280ms ease, visibility 0s, background 200ms ease;
}
.floating-adventure-cta:hover { transform: none; }
.floating-adventure-cta:focus-visible { outline: 2px solid var(--white); outline-offset: 4px; }
@media (max-width: 660px) {
  .floating-adventure-cta {
    right: max(16px, env(safe-area-inset-right));
    bottom: max(16px, env(safe-area-inset-bottom));
    min-height: 48px;
    padding: .85rem 1.1rem;
    font-size: .75rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .site-header.scroll-navigation, .floating-adventure-cta { transition: none; }
}
