/* ── NAV ───────────────────────────────────────────────── */
#nav { position: fixed; top: 0; left: 0; right: 0; z-index: 500; display: flex; justify-content: space-between; align-items: center; padding: 0 48px; height: 60px; border-bottom: 1px solid transparent; transition: background .3s, border-color .3s }
#nav.stuck { background: rgba(0,0,0,.97); border-bottom-color: var(--10) }

.nav-logo { font-family: 'Bebas Neue', sans-serif; font-size: 20px; letter-spacing: .1em; color: var(--100) }
.nav-logo span { color: var(--rb) }

.nav-links { display: flex; align-items: center; gap: 0; list-style: none }
.nav-links a { font-family: 'Barlow Condensed', sans-serif; font-size: 11px; font-weight: 400; letter-spacing: .28em; text-transform: uppercase; color: var(--50); padding: 0 16px; transition: color .2s }
.nav-links a:hover { color: var(--100) }
.nav-book { border: 1px solid var(--30) !important; padding: 8px 20px !important; color: var(--60) !important; transition: border-color .2s, color .2s !important }
.nav-book:hover { border-color: var(--rb) !important; color: var(--100) !important }

.ham { display: none; flex-direction: column; gap: 5px; background: none; border: none; cursor: pointer; padding: 4px }
.ham span { width: 22px; height: 1px; background: var(--80); display: block; transition: transform .25s, opacity .25s }
.ham.o span:nth-child(1) { transform: translateY(6px) rotate(45deg) }
.ham.o span:nth-child(2) { opacity: 0 }
.ham.o span:nth-child(3) { transform: translateY(-6px) rotate(-45deg) }

.mob { display: none; position: fixed; inset: 0; z-index: 490; background: var(--0); flex-direction: column; align-items: center; justify-content: center; gap: 24px }
.mob.o { display: flex }
.mob a { font-family: 'Bebas Neue', sans-serif; font-size: 40px; letter-spacing: .08em; color: var(--80); transition: color .2s }
.mob a:hover, .mob a:last-child { color: var(--rb) }
