/* Shared site navigation and audio controls, without the home page layout. */
.site-nav { width: min(1180px, 100%); min-height: 66px; margin: auto; padding: 20px 150px 0 22px; display: flex; align-items: center; font-size: 10px; letter-spacing: .12em; color: #8a7b6b; }
#venus-back {
  position: fixed; top: 16px; right: 18px; z-index: 40;
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-width: 118px; padding: 12px 16px; border-radius: 999px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 13px; font-weight: 500; line-height: 1; letter-spacing: .14em;
  text-transform: uppercase; white-space: nowrap; text-decoration: none; cursor: pointer;
  color: #f6f1e8; background: rgba(13, 11, 8, .9); backdrop-filter: blur(6px);
  border: 1px solid rgba(217, 185, 90, .55); box-shadow: 0 8px 26px rgba(0, 0, 0, .32);
  transition: background .25s ease, color .25s ease, border-color .25s ease, box-shadow .25s ease;
}
#venus-back:hover { background: #b89438; color: #0d0b08; border-color: #b89438; box-shadow: 0 10px 32px rgba(0, 0, 0, .3); }
.back-u-turn { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.music-toggle { position: fixed; right: 18px; bottom: 18px; z-index: 40; width: 44px; height: 44px; border-radius: 50%; border: 1px solid #b8943880; color: #e9e5dc; background: #14120ee6; cursor: pointer; font-size: 20px; display: grid; place-items: center; }
.music-playing .music-toggle { color: #d9b95a; border-color: #d9b95a; }
.site-nav a:focus-visible, .music-toggle:focus-visible { outline: 2px solid #b89438; outline-offset: 4px; }
.app { animation: venus-arrival .5s ease both; }
@keyframes venus-arrival { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .app { animation: none; } }
