.comparison-widget {
  display: inline-block;
  max-width: 100%;
  max-height: 100%;
  position: relative;
  overflow: hidden;
  vertical-align: top;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border-radius: 8px; }

.comparison-widget * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

.comparison-widget:hover .comparison-separator {
  opacity: 1; }

.comparison-widget:hover .comparison-control {
  opacity: 1; }

.comparison-widget:hover .comparison-control:before,
.comparison-widget:hover .comparison-control:after {
  opacity: 1; }

.comparison-widget--hidden {
  opacity: 0; }

.comparison-item {
  height: 100%;
  width: 100%;
  border-radius: 8px; }

.comparison-item--first {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2; }

.comparison-item__content {
  height: 100%;
  overflow: hidden;
  position: relative; }

.comparison-item__content:hover .comparison-item__label {
  background: white; }

.comparison-item--first .comparison-image {
  width: auto;
  max-width: none;
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 8px; }

.comparison-item__image {
  display: block;
  width: 100%;
  max-width: 100%;
  -webkit-user-drag: none; }

.comparison-item--first .comparison-item__label {
  left: 0;
  right: inherit; }

.comparison-item__label {
  padding: 7px 10px;
  position: absolute;
  top: 0;
  right: 0;
  font-size: 32px;
  color: #000;
  background: rgba(255, 255, 255, 0.65);
  z-index: 1;
  -webkit-transition: background-color 300ms linear;
  -o-transition: background-color 300ms linear;
  transition: background-color 300ms linear; }

.comparison-separator {
  width: 2px;
  height: 90%;
  position: absolute;
  right: -1px;
  top: 0;
  z-index: 10;
  background: #000;
  cursor: pointer;
  margin-top: 11px; }

.comparison-control {
  width: 12px;
  height: 100px;
  margin-top: -6px;
  margin-left: -6px;
  position: absolute;
  top: 50%;
  left: 50%;
  background: #000;
  opacity: 1;
  border-radius: 4px; }

.comparison-control:before,
.comparison-control:after {
  content: '';
  margin-top: -6px;
  position: absolute;
  top: 50%;
  border: solid black;
  border-width: 0 3px 3px 0;
  display: inline-block;
  padding: 3px; }

.comparison-control:before {
  left: -10px;
  -webkit-transform: rotate(135deg);
      -ms-transform: rotate(135deg);
          transform: rotate(135deg); }

.comparison-control:after {
  right: -10px;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg); }

.comparison-control__mask {
  width: 50px;
  height: 40px;
  position: absolute;
  top: -15px;
  left: -18px;
  background: #000;
  opacity: 0; }

@media screen and (max-width: 992px) {
  .comparison-separator {
    height: 100%;
    margin-top: 0; } }
