
.flexsml .jcf-label-active {
	background:#2f1447;
	color: #dbdbdb;
}

.feedback-form .col{
	position: relative;
}
div.wpcf7-response-output{
	margin: 0.5em 0 0;
}
.calendar-area {
	position: relative;
	width: 274px;
	margin:0px auto;
}
.feedback-form div.wpcf7 .ajax-loader{
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	margin: 0;
}
.feedback-form input:not([type="submit"]).wpcf7-not-valid,
.feedback-form textarea.wpcf7-not-valid{
	border-color: red;
}
.section .entry h2{
	text-align: inherit;
}
.comment-form input[type="email"],
.comment-form input[type="url"] {
	margin: 0 4px 0 0;
	width: 300px;
}
.main-block {
	padding-bottom: 4em;
}
.main-block:after {
	content: "";
	display: block;
	clear: both;
}

.ui-datepicker.ui-widget-content .ui-state-default {
	background: transparent;
	position: relative;
	z-index: 2;
	/* border-color: transparent; */
	color: #000;
	text-align: center;
}
.ui-datepicker.ui-widget-content .ui-datepicker-current-day .ui-state-default {
	border-color: #c5c5c5; 
}
.ui-widget-content .blackout a.ui-state-default { background: green; }
body > .jcf-select-drop {
	z-index: 99999;
}
a.close-timepicker {
	position: absolute;
	top: 10px;
	right: 10px;
	width: 20px;
	height: 20px;
}
a.close-timepicker:before {
	content: "";
	position: absolute;
	display: block;
	top: 47%;
	right: -1px;
	width: 100%;
	height: 3px;
	background: #333;
	transform: rotate(-45deg) translateY(-50%);
	transform-origin: 50% 50%;
}
a.close-timepicker:after {
	content: "";
	position: absolute;
	display: block;
	top: 47%;
	left: -1px;
	width: 100%;
	height: 3px;
	background: #333;
	transform: rotate(45deg) translateY(-50%);
	transform-origin: 50% 50%;
}
.timpicker-holder {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,0.85);
	display: none;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	z-index: 10;
}
.timpicker-holder.active {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}
.popup-block .calendar-area{
	position: relative;
}
.ui-widget.ui-datepicker{
	font-size: 1.15em;
}
.half-day{
	position: relative;
}
.half-day.half-busy-day-am:before,
.half-day.half-busy-day-bu_am:before,
.half-day.am:before,
.half-day.bu_am:before{
	content: "";
	display: block;
	position: absolute;
	left: 1px;
	top: 1px;
	background-color: #f66fda;
	width: calc(100% - 2px);
	height: calc(50% - 1px);
}
.half-day.half-busy-day-pm:after,
.half-day.pm:after,
.half-day.bu_pm:after{
	content: "";
	display: block;
	position: absolute;
	left: 1px;
	bottom: 1px;
	background-color: #f66fda;
	width: calc(100% - 2px);
	height: calc(50% - 1px);
}
.ui-state-disabled.blackout{
	opacity: 1;
}
.ui-state-disabled.blackout .ui-state-default{
	background: #f66fda;
}
.half-day.am:before,
.half-day.bu_am:before,
.half-day.bu_pm:after,
.half-day.pm:after{
	background: #00d0ff;
}
.half-day.full:before,
.half-day.bu_full:before{
	content: "";
	display: block;
	position: absolute;
	left: 1px;
	top: 1px;
	background-color: #00d0ff;
	width: calc(100% - 2px);
	height: calc(100% - 2px);
}
.popup-block .calendar-area{
	width: auto;
	margin-right: 37px;
}
.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
	border: 1px solid #c5c5c5;
}
.contact-form span.wpcf7-list-item{
	margin-left: 0;
}
.contact-form .wpcf7-not-valid{
	border-color: #ff9191 !important;
}
.contact-form .wpcf7-not-valid:focus{
	border-color: red !important;
}
form.disabled-form{
	pointer-events: none;
	opacity: 0.8;
}
.popup-block .accordion .opener{
	pointer-events: none;
}
.popup-block .accordion .opener.enabled{
	pointer-events: all;
}
textarea:disabled{
	opacity: 0.2;
}
.popup-block textarea.input-not-valid{
	border-color: red;
}
.ui-widget.ui-widget-content{
	border-width: 2px;
}
.ui-widget.ui-widget-content.has-error{
	border-color: red;
}
.acceptance-label .wpcf7-form-control-wrap{
	padding-right: 8px;
}
.popup-block .aside-block{
	position: relative;
	z-index: 1;
}
form.is-loading,
form.loading{
	pointer-events: none;
	animation: animationFrames linear 2s;
	animation-iteration-count: infinite;
	transform-origin: 50% 50%;
	-webkit-animation: animationFrames linear 2s;
	-webkit-animation-iteration-count: infinite;
	-webkit-transform-origin: 50% 50%;
	-moz-animation: animationFrames linear 2s;
	-moz-animation-iteration-count: infinite;
	-moz-transform-origin: 50% 50%;
	-o-animation: animationFrames linear 2s;
	-o-animation-iteration-count: infinite;
	-o-transform-origin: 50% 50%;
	-ms-animation: animationFrames linear 2s;
	-ms-animation-iteration-count: infinite;
	-ms-transform-origin: 50% 50%;
}

.cols.spaces-cols{
	display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.cols.spaces-cols .col{
	width: 49%;
	margin-top: 2em;
}
.cols.spaces-cols .col:nth-child(1),
.cols.spaces-cols .col:nth-child(2){
	margin-top: 0;
}
.cols.spaces-cols .col:nth-child(2n){
	margin-left: 2%;
}
.space-title-holder {
    text-align: center;
    margin-bottom: 1em;
}
.spaces-cols label{
	position: relative;
	display: block;
	cursor: pointer;
}
.spaces-cols .info-holder{
	opacity: 0;
	transition: opacity 0.3s ease;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,0.75);
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}
.spaces-cols .jcf-label-active .info-holder,
.spaces-cols label:hover .info-holder{
	opacity: 1;
}
.spaces-cols .info-holder:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background: none;
    width: 100%;
    height: 100%;
}
.price-holder{
	margin: 0;
	padding: 0;
	list-style: none;
}
.spaces-cols .jcf-radio{
	display: none;
}
.book-info .list,
.book-info .bottom-text{
	display: none;
}
.book-info .list.show,
.book-info .bottom-text.show{
	display: block;
}

.fancybox-is-open .fancybox-bg {
	opacity: .87;
	-webkit-transition-timing-function: cubic-bezier(.22, .61, .36, 1);
	transition-timing-function: cubic-bezier(.22, .61, .36, 1);
}
.widget .summary-block{
	padding: 0;
    margin: 0;
    list-style: none;
}

.widget .summary-block li{
    margin-bottom: 0;
}
/* jQuery UI Datepicker moving pixels fix */
table.ui-datepicker-calendar {border-collapse: separate;}
.ui-datepicker-calendar td {border: 1px solid transparent;}

/* jQuery UI Datepicker hide datepicker helper */
#ui-datepicker-div {display:none;}

/* jQuery UI Datepicker emphasis on selected dates */
.ui-datepicker .ui-datepicker-calendar .ui-state-highlight a {
    background: transparent;
    color: #000;
}
.ui-widget-content .ui-state-highlight {
	background: #dbdbdb;
	border-color: #dbdbdb;
}
@keyframes animationFrames{
	0% {
		opacity: 1;
	}
	50% {
		opacity: 0.6;
	}
	100% {
		opacity: 1;
	}
}

@-moz-keyframes animationFrames{
	0% {
		opacity: 1;
	}
	50% {
		opacity: 0.6;
	}
	100% {
		opacity: 1;
	}
}

@-webkit-keyframes animationFrames {
	0% {
		opacity: 1;
	}
	50% {
		opacity: 0.6;
	}
	100% {
		opacity: 1;
	}
}

@-o-keyframes animationFrames {
	0% {
		opacity: 1;
	}
	50% {
		opacity: 0.6;
	}
	100% {
		opacity: 1;
	}
}

@-ms-keyframes animationFrames {
	0% {
		opacity: 1;
	}
	50% {
		opacity: 0.6;
	}
	100% {
		opacity: 1;
	}
}
.fancybox-caption{
	display: none;
}
.fancybox-button--close{
	z-index: 100;
}
.popup-block .aside-block{
	display: none;
}
.fancybox-is-open .popup-block .aside-block{
	display: block;
}
.fancybox-navigation {
    display: none;
}
@media (max-width: 1023px) {
	.popup-block .calendar-area {
		float: none;
		width: auto;
		max-width: inherit;
		margin: 0 auto 30px;
		display: inline-block;
	}
}
@media (max-width: 768px) {

	.spaces-cols .info-holder{
		background: rgba(255, 255, 255, 0.5);
		opacity: 1;
		transition: background 0.3s ease;
	}
	.spaces-cols .jcf-label-active .info-holder{
		background: rgba(255, 255, 255, 0.85);
	}
}
@media (max-width: 767px) {
	.widget{
		padding: 5px;
		margin-bottom: 5px;
	}
	.widget.widget-price h3 {
		font-size: 11px;
	}
	.popup-block .widget .price {
		font-size: 16px;
		display: block;
	}
	.widget.widget-form input[type="submit"]{
		font-size: 14px;
		text-indent: -9999px;
		position: absolute;
		top: 5px;
		right: 2px;
		height: 22px;
		width: 22px;
		display: block;
		padding: 0;
		background: url(images/button-bg.png) 0 0 no-repeat;
		background-size: contain;
	}
	.widget.widget-form .input-holder {
		margin-bottom: 0;
	}
	.widget.widget-form input[type="text"] {
		height: 26px;
		font-size: 12px;
		padding: 2px 26px 2px 5px;
	}
	.widget.widget-add {
		padding: 20px 8px;
		font-size: 14px;
	}
	.popup-content .aside-area{
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-align-content: stretch;
		-ms-flex-line-pack: stretch;
		align-content: stretch;
		-webkit-align-items: stretch;
		-ms-flex-align: stretch;
		align-items: stretch;
	}
	.popup-content .widget{
		max-width: 32%;
		margin: 0 0 1.3333%;
		width: 100%;
		padding: 4px 2px;
	}
	.widget.widget-form h3 {
		font-size: 8px;
		margin-bottom: 0;
	}
	.widget.widget-form form{
		margin: 0;
	}
	.acceptance-label{
		display: block;
	}
	.widget.widget-add a span.has-next {
		display: none;
	}
	.widget.widget-price{
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-align-content: stretch;
		-ms-flex-line-pack: stretch;
		align-content: stretch;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.widget.widget-add{
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-align-content: stretch;
		-ms-flex-line-pack: stretch;
		align-content: stretch;
		-webkit-align-items: center;
		-ms-flex-align: center;
	}
	.widget.widget-add a{
		font-size: 10px;
		line-height: 1em;
		display: block;
	}
	.discount-form{
		position: relative;
	}
	.fancybox-slider .popup-block .aside-block{
		position: fixed;
		padding: 9px 15px 0;
		margin: 0;
		top: 0;
		left: 0;
		z-index: 1;
		background: rgba(36, 36, 39, 0.4);
	}
	.fancybox-slide > *{
		margin-top: 0;
	}
	.popup-block .content-block{
		margin-top: 70px;
	}
	.cols.spaces-cols{
		display: block;
	}
	.cols.spaces-cols .col{
		width: 100%;
	}
	.cols.spaces-cols .col:nth-child(2n){
		margin-left: 0;
	}
	.cols.spaces-cols .col:nth-child(2){
		margin-top: 2em;
	}
	.popup-block .aside-block{
		position: fixed;
		width: 100%;
		top: 40px;
	}
	.fancybox-slide{
		padding-top: 0;
	}
}
@media (max-width: 666px) {
	.comment-form input[type="email"],
	.comment-form input[type="url"] {
		width: 100%;
	}
	.feedback-form .col{
		position: static;
	}
	
}
@media (max-width: 420px) {
	.ui-widget.ui-datepicker{
		width: 15em;
		margin: auto;
	}
	.popup-block .calendar-area{
		width: 100%;
	}
}




.jcf-checkbox {
	vertical-align: middle;
	display: inline-block;
	position: relative;
	overflow: hidden;
	cursor: default;
	background: #fff;
	border: 1px solid #000;
	border-radius:12px;
	margin: 0 10px 0px 0;
	height: 20px;
	width: 20px;
    min-width: 20px;
}

.jcf-checkbox span {
	position: absolute;
	display: none;
	height: 7px;
	width: 11px;
	top: 50%;
	left: 50%;
	margin: -10px 0 0 -9px;
	border: 2px solid #000;
	border-width: 0 0 2px 2px;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

:root .jcf-checkbox span {
	margin: -5px 0 0 -5px;
}

.jcf-checkbox input[type="checkbox"] {
	position: absolute;
	width: 100%;
	height: 100%;
	border: 0;
	margin: 0;
	left: 0;
	top: 0;
}

.jcf-checkbox.jcf-checked span {
	display: block;
}

/* custom radio styles */



.jcf-radio {
	vertical-align: middle;
	display: none;
	position: relative;
	overflow: hidden;
	cursor: default;
	background: #fff;
	border: 1px solid #505050;
	border-radius: 50%;
	margin: -3px 3px 0 0;
	height: 20px;
	width: 20px;
}

.jcf-radio span {
	display: none;
	position: absolute;
	top: 3px;
	left: 3px;
	right: 3px;
	bottom: 3px;
	background: #505050;
	border-radius: 100%;
}

.jcf-radio input[type="radio"] {
	position: absolute;
	height: 100%;
	width: 100%;
	border: 0;
	margin: 0;
	left: 0;
	top: 0;
}

.jcf-radio.jcf-checked span {
	display: block;
}

/* custom number input styles */

.jcf-number {
	display: inline-block;
	vertical-align: top;
	position: relative;
	height: 33px;
}

.jcf-number input {
	-moz-appearance: textfield;
}

.jcf-number input::-webkit-inner-spin-button,
.jcf-number input::-webkit-outer-spin-button {
	-webkit-appearance: none;
}

.jcf-number input {
	box-sizing: border-box;
	border: 1px solid #000;
	padding: 3px 27px 3px 7px;
	margin: 0;
	width: 100%;
	height: 100%;
}

.jcf-number .jcf-btn-dec,
.jcf-number .jcf-btn-inc {
	position: absolute;
	background: #aaa;
	width: 20px;
	height: 16px;
	right: 1px;
	top: 1px;
}

.jcf-number .jcf-btn-dec {
	top: auto;
	bottom: 1px;
}

.jcf-number .jcf-btn-dec:hover,
.jcf-number .jcf-btn-inc:hover {
	background: #e6e6e6;
}

.jcf-number.jcf-disabled .jcf-btn-dec:hover,
.jcf-number.jcf-disabled .jcf-btn-inc:hover {
	background: #aaa;
}

.jcf-number .jcf-btn-dec:before,
.jcf-number .jcf-btn-inc:before {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	top: 50%;
	left: 50%;
	margin: -6px 0 0 -4px;
	border: 4px solid #aaa;
	border-color: transparent transparent #000 transparent;
}

.jcf-number .jcf-btn-dec:before {
	margin: -1px 0 0 -4px;
	border-color: #000 transparent transparent transparent;
}

.jcf-number.jcf-disabled .jcf-btn-dec:before,
.jcf-number.jcf-disabled .jcf-btn-inc:before,
.jcf-number .jcf-btn-dec.jcf-disabled:before,
.jcf-number .jcf-btn-inc.jcf-disabled:before {
	opacity: .3;
}

.jcf-number.jcf-disabled input {
	background: #ddd;
}

/* custom select styles */

.jcf-select {
	display: inline-block;
	vertical-align: top;
	position: relative;
	border: 1px solid #777;
	background: #fff;
	margin: 0 0 12px;
	min-width: 150px;
	height: 35px;
}

.jcf-select select {
	z-index: 1;
	left: 0;
	top: 0;
}

.jcf-select .jcf-select-text {
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	cursor: default;
	display: block;
	font-size: 16px;
	line-height: 1.2;
	padding: 7px 35px 7px 8px;
}

.jcf-select .jcf-select-opener {
	position: absolute;
	text-align: center;
	width: 26px;
	bottom: 0;
	right: 0;
	top: 0;
}

.jcf-select .jcf-select-opener:after {
	content: "↓";
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	color: #aaa;
	font-size: 8px;
	line-height: 1;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body > .jcf-select-drop {
	position: absolute;
	margin: -1px 0 0;
	z-index: 9999;
}

body > .jcf-select-drop.jcf-drop-flipped {
	margin: 1px 0 0;
}

.jcf-select .jcf-select-drop {
	position: absolute;
	margin-top: 0;
	z-index: 9999;
	top: 100%;
	left: -1px;
	right: -1px;
}

.jcf-select .jcf-drop-flipped {
	bottom: 100%;
	top: auto;
}

.jcf-select-drop .jcf-select-drop-content {
	border: 1px solid #505050;
}

/* multiple select styles */

.jcf-list-box {
	overflow: hidden;
	display: inline-block;
	border: 1px solid #b8c3c9;
	min-width: 200px;
	margin: 0 15px;
}

/* select options styles */

.jcf-list {
	display: inline-block;
	vertical-align: top;
	position: relative;
	background: #fff;
	line-height: 1.4em;
	font-size: 16px;
	width: 100%;
}

.jcf-list .jcf-list-content {
	vertical-align: top;
	display: inline-block;
	overflow: auto;
	width: 100%;
}

.jcf-list ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.jcf-list ul li {
	overflow: hidden;
	display: block;
}

.jcf-list .jcf-overflow {
	overflow: auto;
}

.jcf-list .jcf-option {
	overflow: hidden;
	cursor: default;
	display: block;
	padding: 5px 9px;
	color: #656565;
	height: 1%;
}

.jcf-list .jcf-disabled {
	background: #fff !important;
	color: #aaa !important;
}

.jcf-select-drop .jcf-hover,
.jcf-list-box .jcf-selected {
	background: #e6e6e6;
	color: #000;
}

.jcf-list .jcf-optgroup-caption {
	white-space: nowrap;
	font-weight: bold;
	display: block;
	padding: 5px 9px;
	cursor: default;
	color: #000;
}

.jcf-list .jcf-optgroup .jcf-option {
	padding-left: 30px;
}

/* common custom form elements styles */

.jcf-disabled {
	background: #ddd !important;
}

.fancybox-enabled {
	overflow: hidden;
}

.fancybox-enabled body {
	overflow: visible;
	-ms-touch-action: none;
	touch-action: none;
}

.fancybox-container {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 99993;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

/* Make sure that the first one is on the top */

.fancybox-container ~ .fancybox-container {
	z-index: 99994;
}

.fancybox-bg {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: #0f0f11;
	opacity: 0;
	-webkit-transition-timing-function: cubic-bezier(.55, .06, .68, .19);
	transition-timing-function: cubic-bezier(.55, .06, .68, .19);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.fancybox-container--ready .fancybox-bg {
	opacity: .87;
	-webkit-transition-timing-function: cubic-bezier(.22, .61, .36, 1);
	transition-timing-function: cubic-bezier(.22, .61, .36, 1);
}

.fancybox-controls {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	text-align: center;
	opacity: 0;
	z-index: 99994;
	-webkit-transition: opacity .2s;
	transition: opacity .2s;
	pointer-events: none;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	direction: ltr;
}

.fancybox-show-controls .fancybox-controls {
	opacity: 1;
}

.fancybox-infobar {
	display: none;
}

.fancybox-show-infobar .fancybox-infobar {
	display: inline-block;
	pointer-events: all;
}

.fancybox-infobar__body {
	display: inline-block;
	width: 70px;
	line-height: 44px;
	font-size: 13px;
	font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
	text-align: center;
	color: #ddd;
	background-color: rgba(30, 30, 30, .7);
	pointer-events: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-webkit-tap-highlight-color: transparent;
	-webkit-font-smoothing: subpixel-antialiased;
}

.fancybox-buttons {
	position: absolute;
	top: 0;
	right: 0;
	display: none;
	pointer-events: all;
}

.fancybox-show-buttons .fancybox-buttons {
	display: block;
}

.fancybox-slider-wrap {
	overflow: hidden;
	direction: ltr;
}

.fancybox-slider-wrap,
.fancybox-slider {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	padding: 0;
	margin: 0;
	z-index: 99993;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.fancybox-slide {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	overflow: auto;
	outline: none;
	white-space: normal;
	box-sizing: border-box;
	text-align: center;
	z-index: 99994;
	-webkit-overflow-scrolling: touch;
	-webkit-tap-highlight-color: transparent;
}

.fancybox-slide::before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	height: 100%;
	width: 0;
}

.fancybox-slide > * {
	display: inline-block;
	position: relative;
	padding: 15px;
	margin: 44px 0 44px;
	border-width: 0;
	vertical-align: middle;
	text-align: left;
	background-color: #fff;
	overflow: auto;
	box-sizing: border-box;
}

.fancybox-slide--image {
	overflow: hidden;
}

.fancybox-slide--image::before {
	display: none;
}

.fancybox-content {
	display: inline-block;
	position: relative;
	margin: 44px auto;
	padding: 0;
	border: 0;
	width: 80%;
	height: calc(100% - 88px);
	vertical-align: middle;
	line-height: normal;
	text-align: left;
	white-space: normal;
	outline: none;
	font-size: 16px;
	font-family: Arial, sans-serif;
	box-sizing: border-box;
	-webkit-tap-highlight-color: transparent;
	-webkit-overflow-scrolling: touch;
}

.fancybox-iframe {
	display: block;
	margin: 0;
	padding: 0;
	border: 0;
	width: 100%;
	height: 100%;
	background: #fff;
}

.fancybox-slide--video .fancybox-content,
.fancybox-slide--video .fancybox-iframe {
	background: transparent;
}

.fancybox-placeholder {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	padding: 0;
	border: 0;
	z-index: 99995;
	background: transparent;
	cursor: default;
	overflow: visible;
	-webkit-transform-origin: top left;
	-ms-transform-origin: top left;
	transform-origin: top left;
	background-size: 100% 100%;
	background-repeat: no-repeat;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.fancybox-image,
.fancybox-spaceball {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	max-width: none;
	max-height: none;
	background: transparent;
	background-size: 100% 100%;
}

.fancybox-controls--canzoomOut .fancybox-placeholder {
	cursor: zoom-out;
}

.fancybox-controls--canzoomIn .fancybox-placeholder {
	cursor: zoom-in;
}

.fancybox-controls--canGrab .fancybox-placeholder {
	cursor: grab;
}

.fancybox-controls--isGrabbing .fancybox-placeholder {
	cursor: grabbing;
}

.fancybox-spaceball {
	z-index: 1;
}

.fancybox-tmp {
	position: absolute;
	top: -9999px;
	left: -9999px;
	visibility: hidden;
}

.fancybox-error {
	position: absolute;
	margin: 0;
	padding: 40px;
	top: 50%;
	left: 50%;
	width: 380px;
	max-width: 100%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background: #fff;
	cursor: default;
}

.fancybox-error p {
	margin: 0;
	padding: 0;
	color: #444;
	font: 16px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
}

.fancybox-close-small {
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, .5);
	position: absolute;
	top: 4px;
	right: 4px;
	padding: 0;
	margin: 0;
	width: 30px;
	height: 30px;
	font: 20px/1 Arial,"Helvetica Neue",Helvetica,sans-serif;
	color: #888;
	font-weight: 300;
	text-align: center;
	border-radius: 50%;
	border-width: 0;
	cursor: pointer;
	background: #fff;
	-webkit-transition: background .2s;
	transition: background .2s;
	box-sizing: border-box;
	z-index: 2;
}

.fancybox-close-small:focus {
	outline: 1px dotted #888;
}

.fancybox-slide--video .fancybox-close-small {
	top: -36px;
	right: -36px;
	background: transparent;
}

.fancybox-close-small:hover {
	color: #555;
	background: #eee;
}

/* Caption */

.fancybox-caption-wrap {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 60px 30px 0 30px;
	z-index: 99998;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	box-sizing: border-box;
	background: -webkit-linear-gradient(top, transparent 0%, rgba(0, 0, 0, .1) 20%, rgba(0, 0, 0, .2) 40%, rgba(0, 0, 0, .6) 80%, rgba(0, 0, 0, .8) 100%);
	background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, .1) 20%, rgba(0, 0, 0, .2) 40%, rgba(0, 0, 0, .6) 80%, rgba(0, 0, 0, .8) 100%);
	opacity: 0;
	-webkit-transition: opacity .2s;
	transition: opacity .2s;
	pointer-events: none;
}

.fancybox-show-caption .fancybox-caption-wrap {
	opacity: 1;
}

.fancybox-caption {
	padding: 30px 0;
	border-top: 1px solid rgba(255, 255, 255, .4);
	font-size: 14px;
	font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
	color: #fff;
	line-height: 20px;
	-webkit-text-size-adjust: none;
}

.fancybox-caption a,
.fancybox-caption button {
	pointer-events: all;
}

.fancybox-caption a {
	color: #fff;
	text-decoration: underline;
}