/* ---------- Fly-through gallery + CTA ---------- */
.fly { height: 420vh; background: var(--bg-mid); }
.fly-stage { position: sticky; top: 0; height: 100vh; overflow: hidden; perspective: 1000px; }
.fly-item { position: absolute; left: 50%; top: 50%; will-change: transform, opacity; }
.fly-item img { border-radius: 4px; box-shadow: 0 20px 50px rgba(0,0,0,.4); }
.fly-cta { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 22px; padding: 0 20px; z-index: 0; }
.fly-cta h2 { font-size: clamp(32px, 4vw, 46px); font-weight: 600; line-height: 1.15; letter-spacing: -.02em; max-width: 520px; }
.fly-cta h2 i.s { font-weight: 400; }
.fly-cta p { font-size: 14px; color: var(--muted); }
.fly-cta p a { color: #fff; border-bottom: 1px solid var(--accent); }


@media (max-width: 600px) {
  .fly { height: 320vh; }
}
