/* Static sub-pages: same tokens, document flow instead of the fixed stage */
.page-body { background: var(--bg); min-height: 100vh; display: flex; flex-direction: column; }
.page-header {
  position: sticky; top: 0; z-index: 50;
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  padding: 12px 24px;
  background: rgba(8, 13, 24, 0.9);
  backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--line-2);
}
.page-header .wordmark { font-size: var(--fs-14); font-weight: 600; letter-spacing: 0.34em; text-decoration: none; }
.page-nav { display: flex; align-items: center; gap: 20px; }
.page-nav a { font-size: var(--fs-12); color: var(--muted); text-decoration: none; min-height: 44px; display: inline-flex; align-items: center; }
.page-nav a:hover, .page-nav a[aria-current] { color: var(--text); }
.page-main { flex: 1; width: min(1120px, calc(100vw - 48px)); margin: 0 auto; padding: 56px 0 72px; }
.page-main .eyebrow { margin-bottom: 12px; }
.page-title { font-size: clamp(32px, 4.4vw, 52px); line-height: 1.08; letter-spacing: -0.02em; font-weight: 600; max-width: 22ch; }
.page-lede { font-size: var(--fs-20); color: var(--muted); max-width: 62ch; margin-top: 16px; }
.page-section { margin-top: 56px; padding-top: 32px; border-top: 1px solid var(--line-2); }
.page-section h2 { font-size: var(--fs-24); letter-spacing: -0.01em; margin-bottom: 8px; }
.page-section > p { color: var(--muted); max-width: 68ch; margin-top: 8px; }
.room-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; margin-top: 24px; }
.room-card { background: linear-gradient(180deg, #101827 0%, var(--graphite) 100%); padding: 22px; border: 1px solid var(--line-2); border-radius: 2px; }
.room-card h3 { font-size: var(--fs-20); font-weight: 600; }
.room-card .status {
  display: inline-block; margin-top: 8px; font-size: 11px; font-weight: 600;
  padding: 3px 8px; border-radius: 4px;
  color: var(--mint); background: rgba(100, 216, 196, 0.12);
}
.room-card .status.candidate { color: var(--muted); background: rgba(199, 206, 218, 0.1); }
.room-card .room-kind { display: block; margin-top: 14px; font-size: 11px; letter-spacing: 1.2px; text-transform: uppercase; color: var(--muted); }
.room-card p { font-size: var(--fs-14); color: var(--muted); margin-top: 10px; line-height: 1.5; }
.fact-list { margin-top: 20px; display: grid; gap: 10px; max-width: 68ch; }
.fact-list li { list-style: none; display: flex; gap: 10px; align-items: baseline; font-size: var(--fs-16); color: var(--muted); }
.fact-list li::before { content: ""; flex: none; width: 8px; height: 8px; border: 1px solid var(--line-1); border-radius: 1px; transform: translateY(-1px); }
.fact-list li strong { color: var(--text); font-weight: 600; }
.legal-note {
  margin-top: 20px; padding: 16px 20px;
  border: 1px solid var(--line-2); border-left: 3px solid var(--amber); border-radius: 2px;
  font-size: var(--fs-14); color: var(--muted); max-width: 74ch;
}
.page-footer { border-top: 1px solid var(--line-2); padding: 20px 24px 28px; }
.page-footer-inner { width: min(1120px, calc(100vw - 48px)); margin: 0 auto; display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; font-size: 11px; color: var(--muted); }
@media (max-width: 767px) {
  .page-nav { gap: 12px; }
  .page-nav .hide-m { display: none; }
  .page-main { padding: 36px 0 48px; }
}
