/* Desktop-only revision; v2 mobile styling remains unchanged. */
.expand-scene { display: none; }
.collapse-icon { display: none; }
#scene-dialog { border: 0; padding: 0; color: #fff; background: #020202; }
#scene-dialog::backdrop { background: #020202ed; }
.scene-expanded { overflow: hidden; }
@media (min-width: 1000px) {
  body { max-width: 1560px; margin-inline: auto; padding-inline: clamp(32px, 4vw, 64px); display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); column-gap: clamp(40px, 5vw, 80px); }
  .page { width: 100%; min-width: 0; min-height: 100svh; }
  .page header { padding-block: 28px; }
  .page main { padding-block: 24px; display: flex; flex-direction: column; justify-content: center; }
  .page h1 { font-size: clamp(48px, 4.5vw, 64px); }
  .page .intro { font-size: clamp(18px, 1.5vw, 21px); }
  .page footer { padding-block: 24px; }
  .journey { width: 100%; min-width: 0; margin: auto 0; padding: 24px 0; }
  .journey-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 12px; min-height: 44px; }
  .journey h2 { font-size: 17px; }
  .journey .expand-scene { display: inline-grid; place-items: center; flex: 0 0 44px; min-height: 44px; padding: 0; border-color: #535353; border-radius: 50%; }
  .journey-art { height: min(680px, calc(100svh - 270px)); aspect-ratio: auto; }
  .journey-controls { padding-top: 16px; }
  .journey button { min-height: 44px; padding: 10px 18px; font-size: 14px; }
  .journey-timeline { margin-top: 6px; gap: 12px; }
  .journey input[type=range] { height: 32px; }
  .journey #player-status { font-size: 13px; margin-top: 6px; min-height: 42px; }
  .journey #reduced-motion-note { font-size: 13px; }
  #scene-dialog[open] { position: fixed; inset: 0; width: 100vw; height: 100dvh; max-width: none; max-height: none; margin: 0; display: grid; place-items: center; overflow: auto; }
  #scene-dialog .journey { width: min(calc(100% - 80px), calc((100dvh - 270px) * 1672 / 941)); margin: auto; padding: 20px 0; }
  #scene-dialog .journey-art { height: auto; aspect-ratio: 1672 / 941; }
  #scene-dialog .expand-icon { display: none; }
  #scene-dialog .collapse-icon { display: block; }
}
@media (min-width: 1000px) and (max-height: 740px) {
  .page header { padding-block: 20px; }
  .page main { padding-block: 12px; }
  .page h1 { font-size: 46px; margin-bottom: 22px; }
  .page .intro { font-size: 18px; line-height: 1.5; }
  .page .intro p + p { margin-top: 18px; }
  .page .update { margin-top: 24px; }
  .page nav { margin-top: 18px; }
  .page footer { padding-block: 18px; }
  .journey-art { height: max(260px, calc(100svh - 260px)); }
}
