/* Keep the landing page's two chapters on touch screens as well. */
@media (max-width: 860px) {
  body.landing-body {
    overflow: hidden;
  }

  .landing-body .viewport {
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    scroll-snap-type: y mandatory;
    scrollbar-width: none;
  }

  .landing-body .viewport::-webkit-scrollbar {
    display: none;
  }

  .landing-body.nav-open .viewport {
    overflow-y: hidden;
  }

  .landing-body .screen {
    min-height: var(--viewport-height);
    height: auto;
    padding: max(80px, env(safe-area-inset-top)) 32px max(112px, env(safe-area-inset-bottom));
    scroll-snap-align: start;
    scroll-snap-stop: always;
  }

  body.landing-body .screen.hero {
    flex-direction: column;
    gap: clamp(28px, 5vh, 48px);
    padding-block: max(80px, env(safe-area-inset-top)) max(112px, env(safe-area-inset-bottom));
  }

  .landing-body .logo-wrap {
    flex-shrink: 0;
    width: min(100%, 620px);
  }

  .landing-body .hero-clarity-line {
    position: relative;
    left: auto;
    top: auto;
    transform: none;
    width: min(100%, 760px);
  }

  .landing-body .content {
    width: 100%;
    padding: 0;
  }

  .landing-body .cta-pyramid {
    margin-top: 32px;
  }

  body.landing-body .scroll-hint {
    display: block;
    bottom: max(24px, env(safe-area-inset-bottom));
  }

  .landing-body .scroll-line {
    height: 24px;
  }

  .landing-body .chapter-dots {
    display: flex;
    right: 0;
    gap: 0;
  }

  .landing-body .dot {
    display: grid;
    place-items: center;
    width: 32px;
    height: 44px;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
  }

  .landing-body .dot::before {
    content: "";
    width: 8px;
    height: 8px;
    border: 1px solid rgba(212, 175, 55, 0.4);
    border-radius: 50%;
  }

  .landing-body .dot.active::before {
    background: var(--gold);
    box-shadow: 0 0 0 4px rgba(212, 175, 55, 0.12);
  }

  .landing-body .site-shell > .bottombar {
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 12px 20px max(12px, env(safe-area-inset-bottom));
    background: linear-gradient(180deg, transparent, #090909 25%);
  }

  .landing-body .bottombar-nav {
    gap: 0 8px;
  }

  .landing-body .footer-link {
    padding: 10px 6px;
    font-size: 11px;
    letter-spacing: 0.1em;
  }
}
