 .cmp-compare {
  --cmp-value: 50%;
  position: relative;
  width: 100%;
  max-width: 800px;
  aspect-ratio: 1 / 1;
  overflow: hidden;
  border-radius: 12px;
  background: #000;
}

/* Базовые изображения */
.cmp-compare__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* Верхнее изображение обрезается clip-path */
.cmp-compare__img--before {
  z-index: 2;
  clip-path: inset(0 calc(100% - var(--cmp-value)) 0 0);
}

/* Нижнее изображение остаётся на заднем плане */
.cmp-compare__img--after {
  z-index: 1;
}

/* Невидимый input range */
.cmp-compare__range {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: col-resize;
  z-index: 3;
}

/* Вертикальный разделитель */
.cmp-compare__divider {
  position: absolute;
  top: 0;
  left: var(--cmp-value);
  width: 2px;
  height: 100%;
  background: #fff;
  transform: translateX(-50%);
  pointer-events: none;
  z-index: 4;
}

.cmp-compare__divider::before {
  content: '';
  position: absolute;
  bottom: 25px;
  left: 50%;
  width: 40px;
  height: 40px;
  background: url("../../media/teeth.svg") center / contain no-repeat;
  transform: translateX(-50%);
}

/* Подписи */
.cmp-compare__label {
  position: absolute;
  bottom: 12px;
  padding: 6px 14px;
  font-size: 14px;
  color: #fff;
  background: rgba(0,0,0,0.6);
  border-radius: 6px;
  pointer-events: none;
  transition: opacity 0.2s ease;
  z-index: 5;
}

.cmp-compare__label--before { left: 12px; }
.cmp-compare__label--after { right: 12px; }

		@media (max-width: 999px) {
			.cmp-compare {
				--cmp-value: 50%;
				position: relative;
				overflow: hidden;
			}
		}
		@media (max-width: 769px) {
			.cmp-compare {
				--cmp-value: 50%;
				position: relative;
				width: 500px;
        margin: 0 auto;
				overflow: hidden;
				
			}
		}
		@media (max-width: 560px) {
			.cmp-compare {
				--cmp-value: 50%;
				position: relative;
        max-width: 100%;
				overflow: hidden;
				margin-top: 20px;
			}
		}

		.cs-slider {
position: relative;
width: auto;
height: 100%;
overflow: hidden;
border-radius: 12px;
background: #000;
}


.cs-track {
display: flex;
height: 100%;
transition: transform 0.4s ease;
}


.cs-slide {
min-width: 100%;
height: 100%;
position: relative;
cursor: pointer;
}


.cs-slide img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}


.cs-slide::after {
content: "";
position: absolute;
inset: 0;
background: rgba(0,0,0,0);
transition: background 0.25s ease;
}


.cs-btn {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 28px;
height: 28px;
border: none;
background: rgba(0,0,0,0.5); /* полупрозрачные по умолчанию */
color: #fff;
font-size: 26px;
cursor: pointer;
z-index: 20;
display: flex;
align-items: center;
justify-content: center;
transition: background 0.25s ease;
padding-bottom: 6px;
}


.cs-btn:hover {
background: rgba(0,0,0,0.75); /* при наведении становятся ярче */
}


.cs-btn-prev { left: 12px; }
.cs-btn-next { right: 12px; }


.cs-fullscreen {
position: fixed;
inset: 0;
background: rgba(0,0,0,0.9);
display: none;
align-items: center;
justify-content: center;
z-index: 9999;
}


.cs-fullscreen img {
max-width: 92%;
max-height: 92%;
border-radius: 8px;
}


.cs-close {
position: absolute;
top: 20px;
right: 24px;
font-size: 32px;
color: #fff;
cursor: pointer;
line-height: 1;
}