.hero-practice { margin-bottom: .75rem; color: #526f9e; font-family: "Italiana", serif; font-size: clamp(2rem, 3.5vw, 3rem); font-weight: 400; line-height: 1.2; }
.memory-journey { height: 500svh; }
.memory-track { bottom: auto; }
.memory-beat { min-height: max(100svh, 36rem); }
.memory-canvas { background: #fff; }
.journey-scene { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; pointer-events: none; visibility: hidden; }
.journey-scene.is-current { visibility: visible; }
@media (min-width: 821px) {
  .memory-beat[data-scene="0"], .memory-beat[data-scene="2"] { justify-content: flex-end; }
  .memory-beat[data-scene="4"] { justify-content: center; align-items: flex-start; padding-top: 10rem; }
  .memory-beat[data-scene="4"] .memory-copy { width: min(31rem, 38vw); }
}
@media (max-width: 520px) {
  .site-nav { gap: .5rem; }
  .wordmark { width: clamp(7.5rem, 31vw, 9.25rem); }
  .nav-links { gap: 0; flex-shrink: 0; }
  .nav-links .nav-cta { padding: .7rem .8rem; font-size: .65rem; }
}
@media (max-width: 820px) and (orientation: portrait) {
  .journey-scene {
    top: 9rem;
    height: calc(100vw * 941 / 1672);
    -webkit-mask-image: linear-gradient(to bottom, transparent, #000 12%, #000 88%, transparent);
    mask-image: linear-gradient(to bottom, transparent, #000 12%, #000 88%, transparent);
  }
  .memory-beat, .memory-beat:nth-child(even) {
    min-height: max(100svh, calc(9rem + 100vw * 941 / 1672 + 26rem));
    align-items: flex-start;
    padding-top: calc(10rem + 100vw * 941 / 1672);
  }
  .memory-copy { backdrop-filter: none; background: #fff; }
}
