/* The shared menu adds no layout or playback logic to the cinematic home. */
.site-menu { position: relative; z-index: 40; }
.site-menu summary { position: fixed; z-index: 42; right: max(12px,calc((100vw - 430px) / 2 + 12px),calc(env(safe-area-inset-right) + 12px)); top: max(16px,env(safe-area-inset-top)); display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; padding: 0; border-radius: 50%; background: transparent; color: #000; font: 700 .875rem/1 var(--typeface); letter-spacing: .04em; list-style: none; cursor: pointer; }
body.inner-page .site-menu summary { right: max(12px,calc((100vw - 900px) / 2 + 12px),calc(env(safe-area-inset-right) + 12px)); }
@media (max-width: 350px) { body:not(.inner-page) .site-menu summary { right: max(8px,calc(env(safe-area-inset-right) + 8px)); } }
.site-menu .menu-dot { position: relative; display: block; width: 24px; height: 24px; border-radius: 50%; background: var(--amber); pointer-events: none; }
.site-menu summary:active .menu-dot { transform: scale(.8); }
.site-menu .menu-open-label, .site-menu .menu-close-label { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.site-menu[open] .menu-dot::before, .site-menu[open] .menu-dot::after { content: ''; position: absolute; top: 11px; left: 6px; width: 12px; height: 2px; background: #000; transform: rotate(45deg); }
.site-menu[open] .menu-dot::after { transform: rotate(-45deg); }
.site-menu summary::-webkit-details-marker { display: none; }
.site-menu summary:focus-visible { outline-color: #fff; }
.site-menu .menu-close-label, .site-menu[open] .menu-open-label { display: none; }
.site-menu[open] .menu-close-label { display: inline; }
.site-menu nav { position: fixed; z-index: 41; inset: 0; display: flex; flex-direction: column; justify-content: center; gap: 6px; padding: max(88px,calc(env(safe-area-inset-top) + 72px)) 24px max(24px,env(safe-area-inset-bottom)); overflow-y: auto; background: #000; animation: menu-appear 150ms ease-out; }
.site-menu nav a { display: flex; align-items: center; min-height: 56px; width: fit-content; max-width: 100%; padding: 6px 0; color: var(--white); font: 400 var(--title-size)/1.12 var(--title-typeface); letter-spacing: -.015em; text-decoration: none; overflow-wrap: anywhere; }
.site-menu nav a:hover, .site-menu nav a[aria-current="page"] { color: var(--amber); }
.site-menu nav .menu-home { margin-top: 14px; }
.menu-is-open { overflow: hidden; }
body.entry-open .site-menu { visibility: hidden; }
/* Keep the existing opaque black menu; use the same secondary link tone on every new page. */
.site-menu nav { --white: #dedbd4; gap: var(--space-sm); }
.site-menu nav a { line-height: var(--title-leading); }
.site-menu nav .menu-home { margin-top: var(--space-md); }
@keyframes menu-appear { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .site-menu nav { animation: none; } .site-menu summary:active .menu-dot { transform: none; } }
