.rw-pw-grid {
  --rw-pw-grid-gap: 1px;
  --rw-pw-grid-page-padding: 1px;
  --rw-pw-grid-breakpoint-tablet: 1024;
  --rw-pw-grid-breakpoint-small-tablet: 820;
  --rw-pw-grid-breakpoint-mobile: 640;
  --rw-pw-grid-font-family: Overused Grotesk Webfont, sans-serif;
  --rw-pw-grid-text-color: rgba(234, 234, 234, 0.89);
  --rw-pw-grid-black: #000;
  --rw-pw-grid-image-bg: #111;
  --rw-pw-grid-overlay-bg: rgba(0, 0, 0, 0.5);
  --rw-pw-grid-title-size-desktop: clamp(46px, 5vw, 72px);
  --rw-pw-grid-title-size-tablet: clamp(46px, 5.8vw, 72px);
  --rw-pw-grid-title-size-mobile: 46px;
  --rw-pw-grid-title-size: var(--rw-pw-grid-title-size-desktop);
  --rw-pw-grid-title-line-height: 0.82;
  --rw-pw-grid-title-weight: 600;
  --rw-pw-grid-excerpt-size-desktop: 24px;
  --rw-pw-grid-excerpt-size-tablet: 21px;
  --rw-pw-grid-excerpt-size-mobile: 20px;
  --rw-pw-grid-excerpt-size: var(--rw-pw-grid-excerpt-size-desktop);
  --rw-pw-grid-excerpt-line-height: 1.12;
  --rw-pw-grid-content-x: clamp(10px, 1.7vw, 25px);
  --rw-pw-grid-content-y-start: 5px;
  --rw-pw-grid-content-y-end: 10px;
  --rw-pw-grid-marker-icon-width: clamp(28px, 3.1vw, 52px);
  --rw-pw-grid-marker-icon-stroke: 1;
  --rw-pw-grid-marker-gap: clamp(10px, 1.2vw, 18px);
  --rw-pw-grid-hover-slide: 32px;
  --rw-pw-grid-touch-slide: 64px;
  --rw-pw-grid-touch-activation-top: 0.30;
  --rw-pw-grid-touch-activation-bottom: 0.65;
  --rw-pw-grid-touch-activate-delay: 90;
  --rw-pw-grid-touch-deactivate-delay: 180;

  display: flex;
  gap: var(--rw-pw-grid-gap);
  padding: 0 var(--rw-pw-grid-page-padding);
  font-family: var(--rw-pw-grid-font-family);
}

.rw-pw-grid--mobile {
  display: none;
}

.rw-pw-grid__column {
  display: flex;
  flex: 1 1 0;
  min-width: 0;
  flex-direction: column;
  gap: var(--rw-pw-grid-gap);
}

.rw-pw-grid__item,
.rw-pw-grid__marker {
  position: relative;
  display: block;
  width: 100%;
  min-width: 0;
}

.rw-pw-grid__item {
  aspect-ratio: 16 / 9;
}

.rw-pw-grid__marker {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  aspect-ratio: 16 / 5;
  color: var(--rw-pw-grid-text-color);
  text-decoration: none;
  background: var(--rw-pw-grid-black);
}

.rw-pw-grid__marker-text {
  display: inline-flex;
  align-items: center;
  gap: var(--rw-pw-grid-marker-gap);
  padding: 5px var(--rw-pw-grid-content-x);
  color: var(--rw-pw-grid-text-color);
  font-size: var(--rw-pw-grid-title-size);
  font-weight: var(--rw-pw-grid-title-weight);
  line-height: var(--rw-pw-grid-title-line-height);
  text-align: left;
}

.rw-pw-grid__marker-label {
  display: block;
}

.rw-pw-grid__marker-icon {
  display: block;
  flex: 0 0 auto;
  align-self: center;
  width: var(--rw-pw-grid-marker-icon-width);
  height: auto;
  overflow: visible;
}

.rw-pw-grid__marker-icon line,
.rw-pw-grid__marker-icon polyline {
  fill: none;
  stroke: currentColor;
  stroke-width: var(--rw-pw-grid-marker-icon-stroke);
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}

.rw-pw-grid__link {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  color: var(--rw-pw-grid-text-color);
  text-decoration: none;
  overflow: hidden;
  background: var(--rw-pw-grid-image-bg);
}

.rw-pw-grid__link:hover,
.rw-pw-grid__link:focus-visible {
  color: var(--rw-pw-grid-text-color);
}

.rw-pw-grid__media,
.rw-pw-grid__overlay {
  position: absolute;
  inset: 0;
}

.rw-pw-grid__media {
  display: block;
  overflow: hidden;
  background: var(--rw-pw-grid-image-bg);
}

.rw-pw-grid__image {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  min-width: 100%;
  min-height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
  transform: scale(1);
  transition: transform 1600ms ease;
}

.rw-pw-grid__overlay {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 10px;
  padding: var(--rw-pw-grid-content-y-start) var(--rw-pw-grid-content-x) var(--rw-pw-grid-content-y-end);
  color: var(--rw-pw-grid-text-color);
  background: var(--rw-pw-grid-overlay-bg);
  opacity: 1;
  transition: opacity 260ms ease;
}

.rw-pw-grid__title,
.rw-pw-grid__excerpt {
  color: var(--rw-pw-grid-text-color);
  transform: translateX(0);
  transition:
    transform 360ms ease,
    opacity 260ms ease;
}

.rw-pw-grid__title {
  display: block;
  font-size: var(--rw-pw-grid-title-size);
  font-weight: var(--rw-pw-grid-title-weight);
  line-height: var(--rw-pw-grid-title-line-height);
}

.rw-pw-grid__excerpt {
  display: block;
  font-size: var(--rw-pw-grid-excerpt-size);
  line-height: var(--rw-pw-grid-excerpt-line-height);
}

.rw-pw-grid--empty {
  display: block;
  padding: 16px;
  border: 1px dashed rgba(20, 20, 20, 0.3);
  border-radius: 8px;
  color: #555;
  background: #fafafa;
}

@media (hover: hover) and (pointer: fine) {
  .rw-pw-grid__overlay,
  .rw-pw-grid__title,
  .rw-pw-grid__excerpt {
    opacity: 0;
  }

  .rw-pw-grid__item--from-left .rw-pw-grid__title,
  .rw-pw-grid__item--from-left .rw-pw-grid__excerpt {
    transform: translateX(calc(var(--rw-pw-grid-hover-slide) * -1));
  }

  .rw-pw-grid__item--from-right .rw-pw-grid__title,
  .rw-pw-grid__item--from-right .rw-pw-grid__excerpt {
    transform: translateX(var(--rw-pw-grid-hover-slide));
  }

  .rw-pw-grid__link:hover .rw-pw-grid__overlay,
  .rw-pw-grid__link:hover .rw-pw-grid__title,
  .rw-pw-grid__link:hover .rw-pw-grid__excerpt,
  .rw-pw-grid__link:focus-visible .rw-pw-grid__overlay,
  .rw-pw-grid__link:focus-visible .rw-pw-grid__title,
  .rw-pw-grid__link:focus-visible .rw-pw-grid__excerpt {
    opacity: 1;
    transform: translateX(0);
  }

  .rw-pw-grid__link:hover .rw-pw-grid__image,
  .rw-pw-grid__link:focus-visible .rw-pw-grid__image {
    transform: scale(1.08);
  }
}

@media (hover: none) {
  .rw-pw-grid__overlay {
    opacity: 0;
    transition: opacity 620ms ease;
  }

  .rw-pw-grid__title,
  .rw-pw-grid__excerpt {
    opacity: 0;
    transition:
      transform 720ms cubic-bezier(0.22, 1, 0.36, 1),
      opacity 620ms ease;
  }

  .rw-pw-grid__item--from-left .rw-pw-grid__title,
  .rw-pw-grid__item--from-left .rw-pw-grid__excerpt {
    transform: translateX(calc(var(--rw-pw-grid-touch-slide) * -1));
  }

  .rw-pw-grid__item--from-right .rw-pw-grid__title,
  .rw-pw-grid__item--from-right .rw-pw-grid__excerpt {
    transform: translateX(var(--rw-pw-grid-touch-slide));
  }

  .rw-pw-grid__item.is-active .rw-pw-grid__overlay,
  .rw-pw-grid__item.is-active .rw-pw-grid__title,
  .rw-pw-grid__item.is-active .rw-pw-grid__excerpt {
    opacity: 1;
    transform: translateX(0);
  }
}

@media (max-width: 1024px) {
  .rw-pw-grid {
    --rw-pw-grid-title-size: var(--rw-pw-grid-title-size-tablet);
    --rw-pw-grid-excerpt-size: var(--rw-pw-grid-excerpt-size-tablet);
    --rw-pw-grid-marker-icon-stroke: 5.5;
  }
}

@media (max-width: 820px) {
  .rw-pw-grid__item {
    aspect-ratio: 4 / 3;
  }
}

@media (max-width: 640px) {
  .rw-pw-grid {
    --rw-pw-grid-title-size: var(--rw-pw-grid-title-size-mobile);
    --rw-pw-grid-excerpt-size: var(--rw-pw-grid-excerpt-size-mobile);
    --rw-pw-grid-marker-gap: clamp(8px, 3vw, 16px);
    --rw-pw-grid-marker-icon-width: clamp(28px, 10vw, 48px);
    --rw-pw-grid-marker-icon-stroke: 7;
  }

  .rw-pw-grid--columns {
    display: none;
  }

  .rw-pw-grid--mobile {
    display: flex;
    flex-direction: column;
    gap: var(--rw-pw-grid-gap);
  }

  .rw-pw-grid__item {
    aspect-ratio: 4 / 3;
  }

  .rw-pw-grid__marker {
    display: none;
  }
}
