/**
 * Twentwenty image comparison
 */
.twentytwenty-handle {
	z-index: 40;
	position: absolute;
	left: 50%;
	top: 50%;
	height: 64px;
	width: 64px;
	margin-left: -32px;
	margin-top: -32px;
	border-radius: 50%;
	box-shadow: 0 3px 0 #338EA6;
	background: #40B1D0;
	cursor: pointer;
}
.twentytwenty-horizontal .twentytwenty-handle:before,
.twentytwenty-horizontal .twentytwenty-handle:after {
	left: 50%;
	width: 2px;
	height: 9999px;
	margin-left: -1px;
}

.twentytwenty-horizontal .twentytwenty-handle:before {
	bottom: 50%;
	margin-bottom: 32px;
	box-shadow: 0 3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
}

.twentytwenty-horizontal .twentytwenty-handle:after {
	top: 50%;
	margin-top: 34px;
	box-shadow: 0 -3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
}

.twentytwenty-horizontal .twentytwenty-handle:before,
.twentytwenty-horizontal .twentytwenty-handle:after {
	content: "";
	position: absolute;
	z-index: 30;
	display: block;
	background: #F2F5F7;
	box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
}

.twentytwenty-labels,
.twentytwenty-overlay {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	-webkit-transition-duration: 0.5s;
			transition-duration: 0.5s;
}

.twentytwenty-labels {
	opacity: 1;
	-webkit-transition-property: opacity;
			transition-property: opacity;
}

.twentytwenty-labels .twentytwenty-label-content {
	position: absolute;
	padding: 0 12px;
	font-size: 13px;
	letter-spacing: 0.1em;
	line-height: 38px;
	color: white;
	background: #1F2332;
	border-radius: 2px;
}

.twentytwenty-horizontal .twentytwenty-labels .twentytwenty-label-content {
	bottom: 15px;
}

.twentytwenty-after-label .twentytwenty-label-content {
	background: #40B1D0;
}

.twentytwenty-left-arrow,
.twentytwenty-right-arrow {
	position: absolute;
	width: 0;
	height: 0;
	border: 8px inset transparent;
}

.twentytwenty-left-arrow,
.twentytwenty-right-arrow {
	top: 50%;
	margin-top: -8px;
}

.twentytwenty-container {
	box-sizing: content-box;
	position: relative;
	z-index: 0;
	overflow: hidden;
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.15);
	opacity: 0;
	-webkit-transition: opacity 0.4s;
			transition: opacity 0.4s;
	-webkit-user-select: none;
	-moz-user-select: none;
}

.twentytwenty-container * {
	box-sizing: content-box;
}

.twentytwenty-container img {
	position: absolute;
	top: 0;
	display: block;
	width: 100%;
	height: auto;
}

.loaded .twentytwenty-container {
	opacity: 1;
}

.twentytwenty-container.active .twentytwenty-overlay .twentytwenty-labels,
.twentytwenty-container.active .twentytwenty-overlay:hover .twentytwenty-labels {
	opacity: 0;
}

.twentytwenty-horizontal .twentytwenty-before-label .twentytwenty-label-content {
	left: 15px;
}

.twentytwenty-horizontal .twentytwenty-after-label .twentytwenty-label-content {
	right: 15px;
}

.twentytwenty-overlay {
	z-index: 25;
}
.twentytwenty-before {
	z-index: 20;
}
.twentytwenty-after {
	z-index: 10;
}

/* Buttons for image choices */
.twentytwenty-duo-buttons {
	position: absolute;
	top: 10px;
	z-index: 30;
	overflow: hidden;
}

.twentytwenty-duo-buttons button {
	float: left;
	padding: 2px 6px;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.125em;
	font-weight: bold;
	border: 0;
	background: #1f2332;
	color: #FFF;
	transition: all .3s;
	cursor: pointer;
}

.twentytwenty-duo-buttons button:hover,
.twentytwenty-duo-buttons button:focus {
	background: #444;
}

.twentytwenty-duo-buttons button:first-child {
	border-radius: 3px 0 0 3px;
}

.twentytwenty-duo-buttons button:last-child {
	border-radius: 0 3px 3px 0;
}

.twentytwenty-duo-buttons button.selected {
	background: #8bc34a;
	text-shadow: 0 0 1px rgba(0,0,0,.2);
	cursor: default;
}

.twentytwenty-duo-left {
	left: 10px;
}

.twentytwenty-duo-right {
	right: 10px;
}

.twentytwenty-left-arrow {
	left: 50%;
	margin-left: -22px;
	border-right: 8px solid white;
}

.twentytwenty-right-arrow {
	right: 50%;
	margin-right: -22px;
	border-left: 8px solid white;
}

#imagify-visual-comparison .close-btn,
.imagify-visual-comparison .close-btn {
	top: 50px;
	right: 5px;
	width: 33px;
	height: 33px;
	padding: 1px 0 0 2px;
	border: 1px solid #F2F2F2;
	color: #F2F2F2;
	line-height: 19px;
	text-align: center;
	border-radius: 50%;
}

.imagify-modal .imagify-comparison-title {
	font-size: 28px;
	margin-bottom: 1em;
	color: #F2F2F2;
	text-align: left;
}
.imagify-modal .imagify-comparison-title .twentytwenty-duo-buttons {
	position: static;
	margin: 0 10px 0 15px;
}
.imagify-comparison-title .twentytwenty-duo-buttons button {
	float: none;
	padding: 6px 12px;
	font-size: 16px;
	text-transform: none;
	border: 1px solid #40B1D0;
	color: #888899;
	letter-spacing: 0;
}
.imagify-comparison-title .twentytwenty-duo-buttons button:focus {
	outline: none;
	box-shadow: none;
}
.imagify-comparison-title .twentytwenty-duo-buttons .selected {
	border: 1px solid #40B1D0;
	color: #FFF;
	background: #40B1D0;
}

.imagify-comparison-levels {
	margin: 15px 0;
	overflow: hidden;
}
.imagify-comparison-levels .imagify-c-level {
	display: none;
	min-width: 175px;
	font-size: 11px;
}
.imagify-c-level.go-left {
	float: left;
}
.imagify-c-level.go-right {
	float: right;
}
.imagify-c-level.go-right,
.imagify-c-level.go-left {
	display: table;
}
.imagify-c-level .imagify-c-level-row {
	display: table-row;
	margin: 0;
	color: #FFF;
}
.imagify-c-level-row > span {
	display: table-cell;
	padding: 2px 0;
}
.imagify-c-level-row .value {
	text-align: right;
	padding-left: 5px;
}
.imagify-c-level-row .value.level {
	color: #40b1d0;
}
.imagify-c-level-row .value.size {
	color: #8bc34a;
	font-weight: bold;
}

/* TT Loader */
.imagify-modal .loader {
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -32px 0 0 -32px;
	opacity: 0;
	visibility: hidden;
	transition: opacity .4s;
}
.imagify-modal .loading .loader {
	visibility: visible;
	opacity: 1;
}

/* Specifics for too high modals */
.modal-is-too-high .imagify-comparison-levels {
	position: absolute;
	padding: 15px 20px;
	background: rgba(31, 35, 50, 0.95);
	bottom: 0; left: 0; right: 0;
	margin-bottom: 0;
}
