.alpine-weather {
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.alpine-weather__cloud { position: absolute; height: auto; pointer-events: none; animation: alpine-drift 16s ease-in-out infinite alternate; }
.alpine-weather__cloud--far { top: clamp(12px, 3%, 32px); left: 9%; width: 23%; opacity: .6; }
.alpine-weather__cloud--near { top: clamp(20px, 5%, 48px); right: 6%; width: 31%; opacity: .85; animation-duration: 22s; animation-delay: -9s; animation-direction: alternate-reverse; }
.alpine-weather__wind {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  color: var(--site-ink, #0c0c0c);
  pointer-events: none;
}
.alpine-weather__gust-lines {
  opacity: .22;
  stroke-dasharray: 42 9 18 7 32 12;
  animation: alpine-gust var(--gust-duration, 7s) var(--gust-delay, 0s) linear infinite;
}
.alpine-weather__gust-lines path { vector-effect: non-scaling-stroke; }
.alpine-weather.is-motion-paused .alpine-weather__cloud,
.alpine-weather.is-motion-paused .alpine-weather__gust-lines { animation-play-state: paused; }
@keyframes alpine-drift {
  from { transform: translate3d(-12%, 5px, 0); }
  to { transform: translate3d(12%, -7px, 0); }
}
@keyframes alpine-gust {
  0% { opacity: 0; transform: translate(-16px, 3px); stroke-dashoffset: 120; }
  20% { opacity: var(--gust-opacity, .35); }
  65% { opacity: var(--gust-opacity, .35); }
  100% { opacity: 0; transform: translate(var(--gust-travel, 52px), -5px); stroke-dashoffset: -120; }
}
@media (max-width: 767px) {
  .alpine-weather__cloud--far { top: 14px; left: 6%; width: 36%; }
  .alpine-weather__cloud--near { top: 20px; right: 7%; width: 44%; }
}
@media (prefers-reduced-motion: reduce) {
  .alpine-weather__cloud, .alpine-weather__gust-lines { animation: none; }
}
