/* The homepage keeps its original interactive art; this is its multi-page gateway. */
.route-index { padding-top: 90px; padding-bottom: 42px; }
.route-index-head { display: flex; justify-content: space-between; gap: 40px; align-items: end; margin: 50px 0 45px; }
.route-index-head > div > span { font: 10px var(--font-mono); letter-spacing: .16em; color: var(--cyan); }
.route-index h2 { margin: 18px 0 0; font-size: clamp(48px, 5.6vw, 88px); letter-spacing: -.075em; font-weight: 500; }
.route-index h2 em { font-family: Georgia,'Times New Roman',serif; color: var(--cyan); font-weight: 400; }
.route-index-head p { max-width: 350px; color: var(--muted); font-size: 15px; line-height: 1.8; margin: 0; }
.route-index-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; border: 1px solid var(--line-strong); background: var(--line-strong); }
.route-index-grid a { position: relative; min-height: 195px; display: flex; flex-direction: column; background: var(--bg); padding: 28px; transition: background .2s; }
.route-index-grid a:hover { background: var(--panel); }
.route-index-grid a small { font: 10px var(--font-mono); color: var(--cyan); }
.route-index-grid a strong { margin-top: 30px; font-weight: 490; font-size: clamp(20px,2.2vw,30px); letter-spacing: -.04em; }
.route-index-grid a span { color: var(--muted); font: 11px var(--font-mono); margin-top: 8px; }
.route-index-grid a b { position: absolute; right: 25px; top: 25px; color: var(--cyan); font-size: 22px; font-weight: 400; }
@media(max-width:900px) { .route-index-head { display: block; }.route-index-head p { margin-top: 22px; }.route-index-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:640px) { .route-index { padding-block: 65px 15px; } .route-index-grid { grid-template-columns: 1fr; } .route-index-grid a { min-height: 132px; padding: 24px; } .route-index-grid a strong { margin-top: 21px; }
  /* Replace the oversized mobile dock with a compact command launcher. */
  .orbital-dock { left: auto; right: 15px; bottom: max(12px,env(safe-area-inset-bottom)); transform: none; height: 61px; width: auto; padding: 6px; border-radius: 16px; gap: 6px; }
  .orbital-dock a, .orbital-dock .dock-rule { display: none !important; }
  .orbital-dock button { flex: none; }
  .orbital-dock .dock-expand { width: 50px; height: 47px; }
  .orbital-dock .dock-search { width: 50px; height: 47px; }
  .orbital-dock .dock-indicator { display: none; }
}
