.landscape {
  background: var(--c1);
  height: 45vh;
  overflow: hidden;
  position: relative;
}
.landscape__layer {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  transform: translateY(calc(var(--scrollPos, 0) * var(--offset, 0)));
}
@media (prefers-reduced-motion: reduce) {
  .landscape__layer {
    transform: translateY(0);
  }
}
.landscape__image {
  bottom: 0;
  display: flex;
  flex-direction: column;
  left: 50%;
  max-height: 100%;
  max-width: 300%;
  min-width: 100%;
  position: absolute;
  transform: translateX(-50%);
  width: 2500px;
}
.landscape__image svg {
  display: block;
  height: auto;
  max-width: 100%;
}

/**
 * Styles for demo
 */
html {
  --c0: #feebe2;
  --c1: #ffe2a6;
  --c2: #ffb06d;
  --c3: #ff9d60;
  --c4: #ff8f4c;
  --c5: #fc813a;
  --c6: #f04f30;
  --c7: #d2353a;
  --c8: #8b1036;
  --c9: #620a38;
  --c10: #2f1121;
}

body {
  background: var(--c10);
  color: #fff;
  min-height: 200vh;
}

.wrap {
  margin: 5rem auto;
  max-width: 70rem;
  padding-left: 1rem;
  padding-right: 1rem;
  position: relative;
}

a {
  color: inherit;
  text-decoration-color: var(--c6);
}