#rec2092455401 .works-row-videos,
#rec2092458171 .works-row-cases,
#rec2093054421 .works-row-cases {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.works-row-viewport {
  position: relative;
  width: 100%;
  overflow: hidden;
  touch-action: pan-y;
  cursor: grab;
  -webkit-user-select: none;
  user-select: none;
}

.works-row-viewport.is-dragging {
  cursor: grabbing;
}

.works-row-track {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  width: max-content;
  gap: 20px;
  will-change: transform;
  transform: translate3d(0, 0, 0);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -webkit-user-select: none;
  user-select: none;
}

.works-row-set {
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  flex: 0 0 auto;
  gap: 20px;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -webkit-user-select: none;
  user-select: none;
}

.works-row-set > * {
  flex: 0 0 auto;
  position: relative;
  margin: 0 !important;
  -webkit-user-select: none;
  user-select: none;
}

.works-row-set a,
.works-row-set button,
.works-row-set [role="button"],
.works-row-set .tn-atom[href] {
  position: relative;
  z-index: 5;
  pointer-events: auto;
}

.works-row-set img,
.works-row-set video {
  display: block;
  -webkit-user-drag: none;
  user-drag: none;
  -webkit-user-select: none;
  user-select: none;
}

.works-row-set img {
  pointer-events: none;
}

/* в самой карточке видео не кликается напрямую — кликается кнопка/обертка */
.works-row-set video {
  pointer-events: none;
}

/* ===== Видео-карточка ===== */

.my-card-video-wrap {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  line-height: 0;
  border-radius: 10px;
  box-sizing: border-box;
  background: #000;
  isolation: isolate;
  -webkit-mask-image: -webkit-radial-gradient(white, black);
  cursor: pointer;
}

.my-card-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  box-sizing: border-box;
  background: #000;
  border-radius: 10px;
  clip-path: inset(0 round 10px);
}

.my-card-video-wrap iframe,
.my-card-video-wrap video,
.my-card-video-wrap img {
  border-radius: 10px;
  clip-path: inset(0 round 10px);
}

.my-card-video-play {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 56px;
  height: 56px;
  margin: 0;
  padding: 0;
  transform: translate(-50%, -50%);
  border: 0;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.78);
  cursor: pointer;
  z-index: 6;
  pointer-events: auto !important;
  transition: transform 0.2s ease, background 0.2s ease, opacity 0.2s ease;
}

.my-card-video-play:hover {
  transform: translate(-50%, -50%) scale(1.06);
  background: rgba(0, 0, 0, 0.88);
}

.my-card-video-play::before {
  content: "";
  position: absolute;
  left: 52%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  border-left: 14px solid #fff;
  border-top: 9px solid transparent;
  border-bottom: 9px solid transparent;
}

/* ===== Popup ===== */

.works-video-modal {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.25s ease, visibility 0.25s ease;
}

.works-video-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.works-video-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(10, 10, 12, 0.82);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.works-video-modal__dialog {
  position: relative;
  z-index: 2;
  width: min(1100px, calc(100vw - 48px));
  max-height: calc(100vh - 48px);
  border-radius: 18px;
  overflow: hidden;
  background: #000;
  box-shadow: 0 20px 80px rgba(0, 0, 0, 0.35);
}

.works-video-modal__inner {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #000;
}

.works-video-modal__video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  background: #000;
}

.works-video-modal__close {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 3;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 999px;
  background: rgba(0, 0, 0, 0.65);
  cursor: pointer;
}

.works-video-modal__close::before,
.works-video-modal__close::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 18px;
  height: 2px;
  background: #fff;
  border-radius: 2px;
}

.works-video-modal__close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.works-video-modal__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

body.works-video-modal-open {
  overflow: hidden;
}

@media (max-width: 980px) {
  .works-row-track,
  .works-row-set {
    gap: 16px;
  }
}

@media (max-width: 640px) {
  .works-row-track,
  .works-row-set {
    gap: 12px;
  }

  .my-card-video-play {
    width: 46px;
    height: 46px;
  }

  .my-card-video-play::before {
    border-left-width: 12px;
    border-top-width: 8px;
    border-bottom-width: 8px;
  }

  .works-video-modal {
    padding: 12px;
  }

  .works-video-modal__dialog {
    width: calc(100vw - 24px);
    max-height: calc(100vh - 24px);
    border-radius: 14px;
  }

  .works-video-modal__close {
    top: 8px;
    right: 8px;
    width: 40px;
    height: 40px;
  }
}