.about-documents {
  display: grid;
  gap: var(--space-xl);
  padding-block: var(--space-2xl);
  overflow: hidden;
  background: var(--color-surface-dark);
  color: var(--color-on-accent);
}

.about-documents__heading { margin-inline-start: var(--space-xl); }
.about-documents__stage { min-width: 0; overflow: hidden; }

.about-documents__slider {
  width: min(100%, var(--size-document-slider));
  min-block-size: var(--size-document-active-block);
  aspect-ratio: 2 / 1;
  margin-inline: auto;
  overflow: visible;
  cursor: grab;
}

.about-documents__slider:active { cursor: grabbing; }

.about-documents__slider:focus-visible {
  outline: 2px solid var(--color-header-border-end);
  outline-offset: -2px;
}

.about-documents__slider .swiper-wrapper { align-items: center; }
.about-documents__slider:not(.swiper-initialized) .swiper-wrapper {
  justify-content: center;
  gap: calc(2 * var(--space-document-outer));
}
.about-documents__slider .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--size-document-slide);
  min-block-size: var(--size-document-active-block);
}

.about-documents__slider .about-documents__slide--outer-before { transform: translateX(var(--space-document-outer)); }
.about-documents__slider .about-documents__slide--outer-after { transform: translateX(calc(-1 * var(--space-document-outer))); }

.about-documents__frame {
  position: relative;
  flex: none;
  width: var(--size-document-slide);
  aspect-ratio: 3 / 4;
  overflow: hidden;
  opacity: .5;
  transition: opacity var(--dur-carousel) var(--ease-standard);
}

.about-documents__slider .swiper-slide-active .about-documents__frame,
.about-documents__slider:not(.swiper-initialized) .about-documents__slide--initial .about-documents__frame,
.about-documents__slider--single .about-documents__frame {
  width: var(--size-document-active);
  aspect-ratio: 336 / 500;
  opacity: 1;
}

.about-documents__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about-documents__slider--single .swiper-wrapper { justify-content: center; }

@media (width <= 48rem) {
  .about-documents__slider {
    --size-document-active: min(21rem, calc(100vw - 2 * var(--container-gutter)));
    --size-document-slide: calc(var(--size-document-active) * .892857);
    --size-document-active-block: calc(var(--size-document-active) * 1.488095);
  }
  .about-documents__heading { margin-inline-start: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .about-documents__frame { transition-duration: .01ms; }
}
