/* Carousel */
.portfolio-item,
.carousel-container {
	position: relative;
}

.portfolio-item .flickity-prev-next-button,
.portfolio-item button,
.carousel-container .flickity-prev-next-button,
.carousel-container button {
	margin: 0 10px;
	font-size: 22px;
	position: relative;
	top: auto;
	right: auto;
	left: auto;
	display: inline-block;
	padding: 0;
	width: 30px;
	height: 30px;
	background-color: #e4e4e4;
	color: #fff;
	border-radius: 3px;
	text-align: center;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	transform: translateY(0);
}

.portfolio-item .flickity-prev-next-button span,
.portfolio-item button span,
.carousel-container .flickity-prev-next-button span,
.carousel-container button span {
	padding: 0;
}

.portfolio-item .flickity-prev-next-button i,
.portfolio-item button i,
.carousel-container .flickity-prev-next-button i,
.carousel-container button i {
	font-size: 1em;
	margin: 0;
	-webkit-transition: -webkit-transform .3s ease;
	transition: -webkit-transform .3s ease;
	transition: transform .3s ease;
	transition: transform .3s ease, -webkit-transform .3s ease;
}

.portfolio-item .flickity-prev-next-button:hover, .portfolio-item .flickity-prev-next-button:focus,
.portfolio-item button:hover,
.portfolio-item button:focus,
.carousel-container .flickity-prev-next-button:hover,
.carousel-container .flickity-prev-next-button:focus,
.carousel-container button:hover,
.carousel-container button:focus {
	transform: translateY(0);
	-webkit-box-shadow: none;
	box-shadow: none;
}

.portfolio-item .flickity-prev-next-button:hover,
.portfolio-item button:hover,
.carousel-container .flickity-prev-next-button:hover,
.carousel-container button:hover {
	background-color: #000;
}

.portfolio-item .flickity-prev-next-button.previous:hover i,
.portfolio-item button.previous:hover i,
.carousel-container .flickity-prev-next-button.previous:hover i,
.carousel-container button.previous:hover i {
	transform: translateX(-2px);
}

.portfolio-item .flickity-prev-next-button.next:hover i,
.portfolio-item button.next:hover i,
.carousel-container .flickity-prev-next-button.next:hover i,
.carousel-container button.next:hover i {
	transform: translateX(2px);
}

.portfolio-item .progressive__img,
.carousel-container .progressive__img {
	width: 100%;
	height: auto;
}

.carousel-items > .items-container .carousel-item {
	width: 100%;
}

.carousel-items > .vc_element,
.carousel-items > .items-container .carousel-item > .vc_element {
	width: 100%;
}

.carousel-items > .vc_element:before, .carousel-items > .vc_element:after,
.carousel-items > .items-container .carousel-item > .vc_element:before,
.carousel-items > .items-container .carousel-item > .vc_element:after {
	content: "";
	display: table;
}

.carousel-items > .vc_element:after,
.carousel-items > .items-container .carousel-item > .vc_element:after {
	clear: both;
}

.carousel-items.flickity-enabled.row {
	margin-left: 0;
	margin-right: 0;
}

.carousel-parallax .carousel-items .flickity-slider > figure,
.carousel-parallax .carousel-items .flickity-slider > .carousel-item,
.carousel-parallax .carousel-items .flickity-slider > [class*=col-],
.carousel-parallax .carousel-items .flickity-slider > [class*=vc_col-] {
	overflow: hidden;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-perspective: 2400px;
	perspective: 2400px;
}

.carousel-parallax .carousel-items .flickity-slider img {
	will-change: transform;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.flickity-viewport {
	-webkit-transition: height 0.3s ease;
	transition: height 0.3s ease;
}

.tab-pane .flickity-viewport {
	-webkit-transition: none;
	transition: none;
}

.carousel-nav {
	text-align: center;
	margin-top: 2em;
}

.flickity-slider {
	-webkit-transform-style: flat;
	transform-style: flat;
}

.flickity-slider > [class*=col-]:empty {
	display: none;
}

.flickity-slider > .vc_element {
	width: 100%;
}

.flickity-slider > .vc_element:before, .flickity-slider > .vc_element:after {
	content: "";
	display: table;
}

.flickity-slider > .vc_element:after {
	clear: both;
}

.flickity-slider > figure > img:only-child,
.flickity-slider > [class*=col-] > img:only-child {
	width: 100%;
	height: auto;
}

.nav-buttons-exist .flickity-enabled > .flickity-prev-next-button,
.nav-buttons-exist .flickity-enabled button {
	display: none;
}

.carousel-bordered {
	border: 1px solid #ededed;
}

.carousel-nav-style11 {
	font-size: 24px;
	margin-top: 10px;
}

.carousel-nav-style11 .flickity-prev-next-button,
.carousel-nav-style11 button {
	width: 40px;
	height: 40px;
	font-size: 18px;
	line-height: 1em;
	background-color: transparent;
	border: 1px solid rgba(0, 0, 0, 0.2);
	border-radius: 0;
	line-height: 38px;
	color: rgba(0, 0, 0, 0.1);
}

.carousel-nav-style11 .previous {
	margin-right: .3em;
}

.carousel-nav-style11 .next {
	margin-left: .3em;
}

.carousel-nav-style11.nav-light .flickity-prev-next-button,
.carousel-nav-style11.nav-light button {
	border-color: rgba(255, 255, 255, 0.25);
	color: rgba(255, 255, 255, 0.25);
}

.carousel-nav-style11.nav-light .flickity-prev-next-button:hover, .carousel-nav-style11.nav-light .flickity-prev-next-button:active,
.carousel-nav-style11.nav-light button:hover,
.carousel-nav-style11.nav-light button:active, .carousel-nav-style11.nav-dark .flickity-prev-next-button:hover, .carousel-nav-style11.nav-dark .flickity-prev-next-button:active,
.carousel-nav-style11.nav-dark button:hover,
.carousel-nav-style11.nav-dark button:active {
	border-color: #f42958;
	color: #f42958;
}

.carousel-nav-style1 .carousel-nav {
	margin-bottom: 4.5em;
	text-align: center;
}

.carousel-nav-style1 .carousel-nav h4 {
	display: inline-block;
	margin: 0 1em;
}

.carousel-nav-style1 .flickity-prev-next-button,
.carousel-nav-style1 button {
	font-size: 22px;
	position: relative;
	top: auto;
	right: auto;
	left: auto;
	display: inline-block;
	width: 30px;
	height: 30px;
	line-height: 26px;
	background-color: #e4e4e4;
	transform: translateY(0);
	color: #fff;
	border-radius: 3px;
	text-align: center;
}

.carousel-nav-style1 .flickity-prev-next-button:hover,
.carousel-nav-style1 button:hover {
	background-color: #000;
}

.carousel-nav-style2 .carousel-nav, .carousel-nav-style5 .carousel-nav, .carousel-nav-style7 .carousel-nav, .carousel-nav-style9 .carousel-nav, .carousel-nav-style10 .carousel-nav {
	margin-top: 5em;
}

.carousel-nav-style2 .flickity-prev-next-button, .carousel-nav-style5 .flickity-prev-next-button, .carousel-nav-style7 .flickity-prev-next-button, .carousel-nav-style9 .flickity-prev-next-button, .carousel-nav-style10 .flickity-prev-next-button,
.carousel-nav-style2 button, .carousel-nav-style5 button, .carousel-nav-style7 button, .carousel-nav-style9 button, .carousel-nav-style10 button {
	border: 1px solid #e5e5e5;
	text-align: center;
	font-size: 20px;
	line-height: 70px;
	position: relative;
	top: auto;
	right: auto;
	left: auto;
	z-index: 10;
	display: inline-block;
	height: 70px;
	width: 70px;
	transform: translateY(0);
	color: #000;
}

.carousel-nav-style2 .flickity-prev-next-button, .carousel-nav-style5 .flickity-prev-next-button, .carousel-nav-style7 .flickity-prev-next-button, .carousel-nav-style9 .flickity-prev-next-button, .carousel-nav-style10 .flickity-prev-next-button,
.carousel-nav-style2 button, .carousel-nav-style5 button, .carousel-nav-style7 button, .carousel-nav-style9 button, .carousel-nav-style10 button {
	border-radius: 2px;
	background-color: transparent;
}

.carousel-nav-style2 .flickity-prev-next-button:hover, .carousel-nav-style5 .flickity-prev-next-button:hover, .carousel-nav-style7 .flickity-prev-next-button:hover, .carousel-nav-style9 .flickity-prev-next-button:hover, .carousel-nav-style10 .flickity-prev-next-button:hover,
.carousel-nav-style2 button:hover, .carousel-nav-style5 button:hover, .carousel-nav-style7 button:hover, .carousel-nav-style9 button:hover, .carousel-nav-style10 button:hover {
	background-color: #000;
	color: #fff;
}

.carousel-nav-style3 .carousel-nav {
	margin-top: 0;
	padding: 3.5em 60px 3.5em;
	text-align: left;
}

.carousel-nav-style3 .carousel-nav h2 {
	margin-bottom: 0.3em;
}

.carousel-nav-style3 .carousel-nav p {
	font-size: 15px;
	line-height: 2em;
	margin-bottom: 40px;
	color: #999;
}

.carousel-nav-style3 .carousel-nav [class*=section-title] {
	margin-bottom: 35px;
	text-align: left;
}

.carousel-nav-style3 .flickity-prev-next-button,
.carousel-nav-style3 button {
	display: inline-block;
	font-size: 18px;
	line-height: 40px;
	overflow: hidden;
	width: 40px;
	height: 40px;
	margin: 0 3px;
	text-align: center;
	color: #000;
	border-radius: 0;
	background-color: #fff;
	-webkit-box-shadow: 0 0 20px rgba(83, 96, 95, 0.1);
	box-shadow: 0 0 20px rgba(83, 96, 95, 0.1);
}

.carousel-nav-style3 .flickity-prev-next-button:before,
.carousel-nav-style3 button:before {
	position: absolute;
	z-index: 0;
	top: 0;
	left: 0;
	display: inline-block;
	width: 100%;
	height: 100%;
	content: '';
	-webkit-transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	opacity: 0;
	background: #00bbff;
	background: linear-gradient(135deg, #00bbff 0%, #007bff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00bbff', endColorstr='#007bff', GradientType=1 );
}

.carousel-nav-style3 .flickity-prev-next-button:hover,
.carousel-nav-style3 button:hover {
	transform: translateX(0);
	opacity: 1;
	color: #fff;
	-webkit-box-shadow: 0 0 10px rgba(83, 96, 95, 0.2);
	box-shadow: 0 0 10px rgba(83, 96, 95, 0.2);
}

.carousel-nav-style3 .flickity-prev-next-button:hover:before,
.carousel-nav-style3 button:hover:before {
	z-index: -1;
	opacity: 1;
}

.carousel-nav-style3 .flickity-page-dots .dot {
	width: 40px;
	height: 2px;
	border-radius: 0;
	position: relative;
	/* Making clickable area a bit bigger */
}

.carousel-nav-style3 .flickity-page-dots .dot:before {
	content: '';
	display: inline-block;
	width: 100%;
	height: 20px;
	position: absolute;
	top: -9px;
	left: 0;
	background-color: inherit;
	opacity: 0;
}

.carousel-nav-style4 {
	overflow: hidden;
}

.portfolio-item .carousel-nav,
.carousel-nav-style4 .carousel-nav {
	margin: 0;
}

.portfolio-item .flickity-prev-next-button,
.portfolio-item button,
.carousel-nav-style4 .flickity-prev-next-button,
.carousel-nav-style4 button {
	height: 75px;
	margin: 0;
	padding-left: 18px;
	padding-right: 18px;
	border-radius: 0 4px 4px 0;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 3;
	margin-top: -37px;
	background-color: rgba(0, 0, 0, 0.65);
	font-size: 16px;
	line-height: 75px;
	color: #fff;
	transform: translate(-100%);
	opacity: 0;
}

.portfolio-item .flickity-prev-next-button.next,
.portfolio-item button.next,
.carousel-nav-style4 .flickity-prev-next-button.next,
.carousel-nav-style4 button.next {
	left: auto;
	right: 0;
	border-radius: 4px 0 0 4px;
	transform: translate(100%);
}

.portfolio-item .flickity-prev-next-button:hover,
.portfolio-item button:hover,
.carousel-nav-style4 .flickity-prev-next-button:hover,
.carousel-nav-style4 button:hover {
	background-color: rgba(0, 0, 0, 0.9);
	outline: none;
}

.portfolio-item .row .carousel-nav .previous,
.carousel-nav-style4 .row .carousel-nav .previous {
	left: 15px;
}

.portfolio-item .row .carousel-nav .next,
.carousel-nav-style4 .row .carousel-nav .next {
	right: 15px;
}

.portfolio-item:hover .flickity-prev-next-button,
.portfolio-item:hover button,
.carousel-nav-style4:hover .flickity-prev-next-button,
.carousel-nav-style4:hover button {
	transform: translate(0);
	opacity: 1;
}

.portfolio-item [data-flickity-options*='"pageDots":true'] + .carousel-nav > .flickity-prev-next-button,
.portfolio-item [data-flickity-options*='"pageDots":true'] + .carousel-nav button,
.portfolio-item [data-flickity-options*='"pageDots":true'] + .carousel-nav > .row,
.portfolio-item [data-flickity-options*='"pageDots":true'] + .carousel-nav > .container,
.portfolio-item [data-flickity-options*='"pageDots": true'] + .carousel-nav > .flickity-prev-next-button,
.portfolio-item [data-flickity-options*='"pageDots": true'] + .carousel-nav button,
.portfolio-item [data-flickity-options*='"pageDots": true'] + .carousel-nav > .row,
.portfolio-item [data-flickity-options*='"pageDots": true'] + .carousel-nav > .container,
.carousel-nav-style4 [data-flickity-options*='"pageDots":true'] + .carousel-nav > .flickity-prev-next-button,
.carousel-nav-style4 [data-flickity-options*='"pageDots":true'] + .carousel-nav button,
.carousel-nav-style4 [data-flickity-options*='"pageDots":true'] + .carousel-nav > .row,
.carousel-nav-style4 [data-flickity-options*='"pageDots":true'] + .carousel-nav > .container,
.carousel-nav-style4 [data-flickity-options*='"pageDots": true'] + .carousel-nav > .flickity-prev-next-button,
.carousel-nav-style4 [data-flickity-options*='"pageDots": true'] + .carousel-nav button,
.carousel-nav-style4 [data-flickity-options*='"pageDots": true'] + .carousel-nav > .row,
.carousel-nav-style4 [data-flickity-options*='"pageDots": true'] + .carousel-nav > .container {
	top: calc(50% - 33px);
}

.portfolio-item > .carousel-nav {
	margin: 0;
}

.carousel-nav-style4 .flickity-page-dots,
.carousel-nav-style6 .flickity-page-dots {
	margin-top: 2.71429em;
	position: relative;
	top: auto;
	left: auto;
	bottom: auto;
	right: auto;
	text-align: center;
}

.carousel-nav-style4 .flickity-page-dots .dot,
.carousel-nav-style6 .flickity-page-dots .dot {
	width: 12px;
	height: 12px;
	margin: 7px;
	opacity: 1;
	background-color: #e5e5e5;
}

.carousel-nav-style4 .flickity-page-dots .dot.is-selected,
.carousel-nav-style6 .flickity-page-dots .dot.is-selected {
	background-color: #ff2955;
	-webkit-animation: bounceIn 1.5s linear 1 both;
	animation: bounceIn 1.5s linear 1 both;
}

.carousel-nav-style5 .carousel-nav, .carousel-nav-style7 .carousel-nav, .carousel-nav-style9 .carousel-nav, .carousel-nav-style10 .carousel-nav {
	margin-top: 0;
	margin-bottom: 80px;
}

.carousel-nav-style5 .flickity-prev-next-button, .carousel-nav-style7 .flickity-prev-next-button, .carousel-nav-style9 .flickity-prev-next-button, .carousel-nav-style10 .flickity-prev-next-button,
.carousel-nav-style5 button, .carousel-nav-style7 button, .carousel-nav-style9 button, .carousel-nav-style10 button {
	height: 45px;
	width: 45px;
	line-height: 1em;
	margin: 0 3px;
	color: rgba(0, 0, 0, 0.5);
}

.carousel-nav-style6 .carousel-nav {
	margin: 0;
}

.carousel-nav-style6 .carousel-nav > .flickity-prev-next-button,
.carousel-nav-style6 .carousel-nav button {
	position: absolute;
	top: 50%;
	left: 10px;
}

.carousel-nav-style6 .carousel-nav > .container,
.carousel-nav-style6 .carousel-nav > .row {
	margin: 0;
	padding: 8px;
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
}

.carousel-nav-style6 .carousel-nav > .container [class*=col-],
.carousel-nav-style6 .carousel-nav > .row [class*=col-] {
	padding: 0;
}

.carousel-nav-style6 .carousel-nav > .container .previous,
.carousel-nav-style6 .carousel-nav > .row .previous {
	float: left;
}

.carousel-nav-style6 .carousel-nav > .container .next,
.carousel-nav-style6 .carousel-nav > .row .next {
	float: right;
}

.carousel-nav-style6 .flickity-prev-next-button,
.carousel-nav-style6 button {
	width: 50px;
	height: 50px;
	margin: 0;
	border-radius: 0;
	background-color: transparent;
	color: #fff;
	overflow: hidden;
}

.carousel-nav-style6 .flickity-prev-next-button i,
.carousel-nav-style6 button i {
	display: inline-block;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.75);
	line-height: 50px;
	-webkit-transition: all 0.15s ease-out;
	transition: all 0.15s ease-out;
}

.carousel-nav-style6 .flickity-prev-next-button.next,
.carousel-nav-style6 button.next {
	left: auto;
	right: 10px;
}

.carousel-nav-style6 .flickity-prev-next-button:hover,
.carousel-nav-style6 button:hover {
	background-color: transparent;
}

.carousel-nav-style6:hover .carousel-nav > .flickity-prev-next-button,
.carousel-nav-style6:hover .carousel-nav button {
	/* transform: translateX(0) translateY(-50%);*/
}

.carousel-nav-style6 .row .carousel-nav .previous {
	left: 15px;
}

.carousel-nav-style6 .row .carousel-nav .next {
	right: 15px;
}

.carousel-nav-style6 .row .carousel-nav .row .previous {
	left: 10px;
}

.carousel-nav-style6 .row .carousel-nav .row .next {
	right: 10px;
}

.carousel-nav-style6 [data-flickity-options*='"pageDots":true'] + .carousel-nav > .flickity-prev-next-button,
.carousel-nav-style6 [data-flickity-options*='"pageDots":true'] + .carousel-nav button,
.carousel-nav-style6 [data-flickity-options*='"pageDots":true'] + .carousel-nav > .row,
.carousel-nav-style6 [data-flickity-options*='"pageDots":true'] + .carousel-nav > .container,
.carousel-nav-style6 [data-flickity-options*='"pageDots": true'] + .carousel-nav > .flickity-prev-next-button,
.carousel-nav-style6 [data-flickity-options*='"pageDots": true'] + .carousel-nav button,
.carousel-nav-style6 [data-flickity-options*='"pageDots": true'] + .carousel-nav > .row,
.carousel-nav-style6 [data-flickity-options*='"pageDots": true'] + .carousel-nav > .container {
	top: calc(50% - 33px);
}

.carousel-nav-style6.is-moving .flickity-prev-next-button,
.carousel-nav-style6.is-moving button {
	opacity: 0;
	visibility: hidden;
}

.carousel-nav-style6.is-moving .previous i {
	transform: translateX(-100%) !important;
}

.carousel-nav-style6.is-moving .next i {
	transform: translateX(100%) !important;
}

.carousel-nav-style7, .carousel-nav-style9 {
	overflow: visible;
}

.carousel-nav-style7 .carousel-nav, .carousel-nav-style9 .carousel-nav {
	position: absolute;
	top: 50%;
	right: 0;
	left: 0;
}

.carousel-nav-style7 .carousel-nav .previous, .carousel-nav-style9 .carousel-nav .previous {
	position: absolute;
	left: 0;
	transform: translateX(calc(-100% - 60px));
}

.carousel-nav-style7 .carousel-nav .next, .carousel-nav-style9 .carousel-nav .next {
	position: absolute;
	right: 0;
	transform: translateX(calc(100% + 60px));
}

.carousel-nav-style8 {
	padding-bottom: 3.21429em;
	overflow: visible;
}

.carousel-nav-style8 .carousel-nav {
	display: inline-block;
	width: 100%;
	height: 3.21429em;
	border-top: 1px solid #ededed;
	position: absolute;
	bottom: 0;
	left: 0;
	margin: 0;
}

.carousel-nav-style8 .carousel-nav:before, .carousel-nav-style8 .carousel-nav:after {
	content: "";
	display: table;
}

.carousel-nav-style8 .carousel-nav:after {
	clear: both;
}

.carousel-nav-style8 .flickity-prev-next-button,
.carousel-nav-style8 button {
	float: left;
	width: 50%;
	height: 100%;
	margin: 0;
	border-radius: 0;
	background-color: transparent;
	font-size: 1.14286em;
	color: #b2b2b2;
}

.carousel-nav-style8 .flickity-prev-next-button + .flickity-prev-next-button,
.carousel-nav-style8 .flickity-prev-next-button + button,
.carousel-nav-style8 button + .flickity-prev-next-button,
.carousel-nav-style8 button + button {
	border-left: 1px solid #ededed;
}

.carousel-nav-style8 .flickity-prev-next-button:hover,
.carousel-nav-style8 button:hover {
	color: #000;
	background-color: rgba(0, 0, 0, 0.04);
}

.carousel-nav-style8 .flickity-page-dots {
	bottom: -80px;
}

.carousel-nav-style8.carousel-pagedots {
	margin-bottom: 80px;
}

.carousel-nav-style8.twitter-carousel .carousel-nav {
	border-left: none;
	border-right: none;
	border-bottom: none;
}

.carousel-nav-style9 .carousel-nav .previous,
.carousel-nav-style9 .carousel-nav .next {
	border: 0;
	background: none;
	color: #000;
	font-size: 25px;
}

.carousel-nav-style10 .flickity-prev-next-button,
.carousel-nav-style10 button {
	height: 1.875em;
	width: 1.875em;
	font-size: 1.14286em;
}

.carousel-nav-style10.align-center .carousel-nav {
	text-align: left;
}

.carousel-nav-style10.align-left .carousel-nav {
	text-align: left;
}

.carousel-nav-style10.align-right .carousel-nav {
	text-align: right;
}

.carousel-device {
	position: relative;
	min-height: 720px;
	overflow: hidden;
}

.carousel-device .carousel-nav {
	margin-top: 0;
}

.carousel-device .carousel-items {
	position: absolute;
	top: 146px;
	left: calc(50% - 15px);
	width: 730px;
	height: 460px;
	overflow: hidden;
	transform: translateX(-48%);
}

.carousel-device .carousel-items .aspect-ratio-container {
	max-width: none !important;
	max-height: none !important;
}

.carousel-nav-style12 {
	margin-bottom: 5em;
}

.carousel-nav-style12 .carousel-nav {
	width: 100%;
	margin: 0;
}

.carousel-nav-style12 .flickity-prev-next-button {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	width: 64px;
	height: 66px;
	margin: 0;
	position: absolute;
	top: 50%;
	z-index: 2;
	border-radius: 0;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	background: rgba(0, 0, 0, 0.8);
	color: #fff;
	transform: translateY(-50%);
}

.carousel-nav-style12 .flickity-prev-next-button.previous {
	left: 0;
}

.carousel-nav-style12 .flickity-prev-next-button.next {
	right: 0;
}

.carousel-nav-style12 .flickity-prev-next-button:focus, .carousel-nav-style12 .flickity-prev-next-button:hover {
	background: #000;
	transform: translateY(-50%) !important;
}

.carousel-nav-style12 .flickity-page-dots {
	bottom: -50px;
}

.carousel-nav-style12 .flickity-page-dots li {
	width: 10px;
	height: 10px;
	margin: 0 8px;
	border: 3px solid transparent;
	background: rgba(0, 0, 0, 0.45);
}

.carousel-nav-style12 .flickity-page-dots li.is-selected {
	border-color: #000;
	background: transparent !important;
}

.carousel-nav-style12.nav-light .flickity-prev-next-button {
	background: rgba(255, 255, 255, 0.8);
	color: #757575;
}

.carousel-nav-style12.nav-light .flickity-prev-next-button:hover {
	background: #fff;
}

.carousel-nav-style12.nav-light .flickity-page-dots li {
	background: rgba(255, 255, 255, 0.45);
}

.carousel-nav-style12.nav-light .flickity-page-dots li.is-selected {
	border-color: #fff;
}

.carousel-device-bg {
	display: inline-block;
	width: 960px;
	position: absolute;
	top: 110px;
	left: 50%;
	z-index: 2;
	text-align: center;
	transform: translateX(-50%);
	pointer-events: none;
}

.carousel-device-bg img {
	height: auto;
	width: 100%;
}

.carousel-phone {
	display: block;
	margin: 0 auto;
	width: 100%;
	position: relative;
}

.carousel-phone .carousel {
	display: block;
	width: 100%;
	margin: 0;
	position: absolute;
	top: 0;
	bottom: 30px;
	left: 0;
	overflow: hidden;
}

.carousel-phone .carousel [class*="col-"] {
	margin: 1%;
	max-width: 365px;
}

.carousel-phone .carousel [class*="col-"] figure {
	margin: 69px 23px 0;
	position: relative;
	-webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.07);
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.07);
	-webkit-transition: -webkit-box-shadow 0.3s ease;
	transition: -webkit-box-shadow 0.3s ease;
	transition: box-shadow 0.3s ease;
	transition: box-shadow 0.3s ease, -webkit-box-shadow 0.3s ease;
}

.carousel-phone .carousel [class*="col-"] figure:before {
	content: "";
	display: inline-block;
	width: 102%;
	height: 102%;
	position: absolute;
	top: -1%;
	right: -1%;
	bottom: -1%;
	left: -1%;
	z-index: 2;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(20%, rgba(255, 255, 255, 0)), to(#f9f9f9));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 20%, #f9f9f9 100%);
	-webkit-transition: opacity 0.3s ease;
	transition: opacity 0.3s ease;
	transform: translate(0);
}

.carousel-phone .carousel [class*="col-"] .aspect-ratio-container {
	max-width: none !important;
	max-height: none !important;
}

.carousel-phone .carousel [class*="col-"].is-selected figure {
	-webkit-box-shadow: none;
	box-shadow: none;
}

.carousel-phone .carousel [class*="col-"].is-selected figure:before {
	opacity: 0;
}

.carousel-phone .carousel-phone-bg {
	display: inline-block;
	position: relative;
	max-width: 365px;
	left: 50%;
	z-index: 2;
	text-align: center;
	transform: translateX(-50%);
	pointer-events: none;
}

.carousel-phone .carousel-phone-bg img {
	height: auto;
	width: 100%;
}

.carousel-phone.mobile-mockup-2 .carousel {
	top: 110px;
	bottom: 110px;
}

.carousel-phone.mobile-mockup-2 .carousel [class*="col-"] {
	margin: 0 1%;
	max-width: 260px;
}

.carousel-phone.mobile-mockup-2 .carousel [class*="col-"] figure {
	margin: 0 auto;
}

.twitter-carousel {
	overflow: visible;
	margin-top: 1.78571em;
}

.twitter-carousel > .icon-box {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
}

.twitter-carousel > .icon-box .icon-container {
	display: inline-block;
	width: 50px;
	height: 50px;
	border: none;
	border-radius: 50em;
	font-size: 18px;
	text-align: center;
	line-height: 50px;
}

.twitter-carousel .carousel-items {
	padding-top: 3.57143em;
}

/* Carousel Swipe*/
.carousel-swipe-button {
	position: absolute;
	top: 0;
	left: 47px;
	z-index: 1;
	pointer-events: none;
	cursor: move;
}

.carousel-swipe-button span {
	display: inline-block;
	padding: 13px 15px;
	border-radius: 3px;
	position: relative;
	background: #fff;
	font-size: 0.85714em;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	line-height: 1em;
	color: #cac9c9;
}

.carousel-swipe-button span:before, .carousel-swipe-button span:after {
	content: "\f177";
	margin-right: 9px;
	position: relative;
	top: 1px;
	font-size: 1.16667em;
	font-family: 'FontAwesome';
	line-height: 1em;
	color: #cac9c9;
}

.carousel-swipe-button span:after {
	content: "\f178";
	line-height: 1em;
	margin-left: 9px;
	margin-right: 0;
}

.box-rounded {
	position: relative;
	text-align: center;
	z-index: 2;
}

.box-rounded .rounded-tooltip {
	padding-bottom: 3.21429em;
	opacity: 0;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	transform: translateY(25%);
}

.box-rounded .rounded-tooltip span {
	display: inline-block;
	padding: 0.21429em 22px;
	border-radius: 3px;
	position: relative;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	line-height: 36px;
	color: #000;
	background: #fff;
	-webkit-box-shadow: 0 15px 15px 2px rgba(0, 0, 0, 0.06);
	box-shadow: 0 15px 15px 2px rgba(0, 0, 0, 0.06);
}

.box-rounded .rounded-tooltip span:after {
	content: "";
	position: absolute;
	width: 10px;
	height: 10px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	background: #fff;
	-webkit-box-shadow: 0 15px 14px 1px rgba(0, 0, 0, 0.06);
	box-shadow: 0 15px 14px 1px rgba(0, 0, 0, 0.06);
	bottom: -5px;
	left: calc(50% - 5.6px);
}

.box-rounded:hover .rounded-tooltip {
	opacity: 1;
	transform: translate(0);
}

.box-rounded .rounded-image {
	border-radius: 5px;
	background: #fff;
	overflow: hidden;
	-webkit-transition: opacity 0.3s ease;
	transition: opacity 0.3s ease;
	-webkit-box-shadow: 0 0 73px 20px rgba(0, 0, 0, 0.075);
	box-shadow: 0 0 73px 20px rgba(0, 0, 0, 0.075);
}

.box-rounded .rounded-image img {
	width: 100%;
}

.box-rounded h3 {
	margin-top: 35px;
	font-size: 1.07143em;
	line-height: 2em;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	text-align: center;
}

.box-rounded:hover .rounded-image {
	opacity: 0.8;
}

/*Carousel 3d*/
.slider-3d {
	position: relative;
}

.slider-3d .carousel-3d {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: auto;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column wrap;
	flex-flow: column wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-perspective: 1200px;
	perspective: 1200px;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.slider-3d .carousel-3d .item-3d {
	width: 100%;
	top: 0 !important;
	left: 0;
	/* opacity: 0;*/
	margin: 0;
	transform: translateX(-10%) scale(0.9);
	-webkit-transition: opacity 0.5s linear, left 0.5s cubic-bezier(0, 0, 0.2, 1), -webkit-transform 0.5s linear, -webkit-box-shadow 0.15s linear;
	transition: opacity 0.5s linear, left 0.5s cubic-bezier(0, 0, 0.2, 1), -webkit-transform 0.5s linear, -webkit-box-shadow 0.15s linear;
	transition: opacity 0.5s linear, transform 0.5s linear, left 0.5s cubic-bezier(0, 0, 0.2, 1), box-shadow 0.15s linear;
	transition: opacity 0.5s linear, transform 0.5s linear, left 0.5s cubic-bezier(0, 0, 0.2, 1), box-shadow 0.15s linear, -webkit-transform 0.5s linear, -webkit-box-shadow 0.15s linear;
}

.slider-3d .carousel-3d .item-3d.height-full {
	height: 100%;
}

.slider-3d .carousel-3d .item-3d a {
	display: inline-block;
	width: 100%;
}

.slider-3d .carousel-3d .item-3d img {
	width: 100%;
	height: auto;
	border-radius: 5px;
	-webkit-box-flex: 0;
	-ms-flex: 0 auto;
	flex: 0 auto;
}

.slider-3d .carousel-3d .item-3d.hidden {
	opacity: 0 !important;
}

.slider-3d .carousel-3d .item-3d:nth-last-child(2) img, .slider-3d .carousel-3d .item-3d:nth-last-child(3) img {
	-webkit-box-shadow: 0 0 50px rgba(0, 0, 0, 0.05);
	box-shadow: 0 0 50px rgba(0, 0, 0, 0.05);
}

.slider-3d .carousel-3d .item-3d:last-child img {
	-webkit-box-shadow: 0 0 50px rgba(0, 0, 0, 0.1);
	box-shadow: 0 0 50px rgba(0, 0, 0, 0.1);
}

.slider-3d .carousel-3d .item-3d:last-child {
	transform: translate(0) scale(1);
}

.slider-3d .carousel-3d .item-3d.last, .slider-3d .carousel-3d .item-3d.out {
	cursor: default;
}

.slider-3d .carousel-3d .item-3d.out {
	transform: translateX(13%) scale(1);
	-webkit-transition: opacity 0.5s linear, left 0.5s linear, -webkit-transform 0.5s ease, -webkit-box-shadow 0.15s linear;
	transition: opacity 0.5s linear, left 0.5s linear, -webkit-transform 0.5s ease, -webkit-box-shadow 0.15s linear;
	transition: opacity 0.5s linear, transform 0.5s ease, left 0.5s linear, box-shadow 0.15s linear;
	transition: opacity 0.5s linear, transform 0.5s ease, left 0.5s linear, box-shadow 0.15s linear, -webkit-transform 0.5s ease, -webkit-box-shadow 0.15s linear;
	pointer-events: none;
	left: 40px;
	opacity: 0 !important;
}

.slider-3d .carousel-3d .item-3d.last {
	-webkit-transition: opacity 0.5s linear, left 0.5s linear, -webkit-transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.3s linear;
	transition: opacity 0.5s linear, left 0.5s linear, -webkit-transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.3s linear;
	transition: opacity 0.5s linear, transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), left 0.5s linear, box-shadow 0.3s linear;
	transition: opacity 0.5s linear, transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), left 0.5s linear, box-shadow 0.3s linear, -webkit-transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.3s linear;
	transform: translate(0) scale(1) !important;
}

.slider-3d .carousel-3d .item-3d:last-child, .slider-3d .carousel-3d .item-3d:nth-last-child(2) {
	opacity: 1;
}

.slider-3d .carousel-3d .item-3d:nth-last-child(2):hover {
	transform: translateX(-12%) scale(0.9);
}

.slider-3d.height-applied .carousel-3d {
	width: 100%;
	height: 100%;
}

.slider-3d.height-applied .carousel-3d .item-3d {
	position: absolute;
}

/* Gallery */
.gallery {
	position: relative;
}

.gallery .slides {
	margin-bottom: 3.21429em;
}

.gallery .slides figure {
	width: 100%;
	overflow: hidden;
}

.gallery .slides img {
	max-width: 100%;
}

.caption {
	position: absolute;
	bottom: 3.21429em;
	left: 50%;
	padding: 0.25em 1em;
	transform: translateX(-50%);
	color: #fff;
	border-radius: 3px;
	background: rgba(0, 0, 0, 0.8);
}

.caption h4 {
	margin: 0.83214em 0;
	color: inherit;
}

.caption-style2 {
	padding: 0.89286em 22px;
	bottom: 2.5em;
	left: 0;
	border-radius: 0;
	background-color: rgba(0, 0, 0, 0.5);
	font-size: 1em;
	transform: translateX(-100%);
	overflow: hidden;
	-webkit-transition: all 0.6s 0.4s cubic-bezier(0.8, 0, 0.2, 1);
	transition: all 0.6s 0.4s cubic-bezier(0.8, 0, 0.2, 1);
}

.caption-style2:before {
	content: '';
	display: inline-block;
	width: 150%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #fff;
	transform: translateX(100%);
	-webkit-transition: all 1s 0.55s cubic-bezier(0.23, 0.86, 0.27, 0.99);
	transition: all 1s 0.55s cubic-bezier(0.23, 0.86, 0.27, 0.99);
}

.caption-style2 h4 {
	font-size: 1em;
	position: relative;
	z-index: 2;
	opacity: 0;
	transform: translateX(-50%);
	-webkit-transition: all 0.8s 0.7s cubic-bezier(0.23, 0.86, 0.27, 0.99);
	transition: all 0.8s 0.7s cubic-bezier(0.23, 0.86, 0.27, 0.99);
}

.is-selected .caption-style2 {
	transform: translateX(0);
}

.is-selected .caption-style2:before {
	transform: translateX(-100%);
}

.is-selected .caption-style2 h4 {
	opacity: 1;
	transform: translateX(0);
}

/* With Thumbs
========================*/
.gallery-with-thumb .slides figure,
.gallery-with-thumb .slides img {
	width: 100%;
	height: auto;
}

.gallery-with-thumb .thumbs-wrapper {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
}

.gallery-with-thumb .thumbs-inner {
	display: flex;
	flex-direction: column;
	width: calc(100% + 13px);
	max-height: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	position: absolute;
	top: 0;
	left: 0;
}

.gallery-with-thumb .thumbs {
	opacity: 0;
	visibility: hidden;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-perspective: 1200px;
	perspective: 1200px;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.gallery-with-thumb .thumbs figure {
	display: inline-block;
	width: 100%;
	margin-top: 2px;
	margin-bottom: 2.14286em;
	position: relative;
	-webkit-transition: all 0.35s ease;
	transition: all 0.35s ease;
	cursor: pointer;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-perspective: 1200px;
	perspective: 1200px;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.gallery-with-thumb .thumbs figure .aspect-ratio-container {
	max-width: none !important;
	max-height: none !important;
}

.gallery-with-thumb .thumbs figure .aspect-ratio-fill {
	padding: 0 !important;
}

.gallery-with-thumb .thumbs figure img {
	width: 100%;
	height: auto;
	position: relative;
	z-index: 1;
}

.gallery-with-thumb .thumbs figure:after {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	content: '';
	background: #000;
	opacity: 0;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.gallery-with-thumb .thumbs .is-nav-selected figure {
	transform: translateY(-2px);
	-webkit-box-shadow: 0 13px 30px rgba(0, 0, 0, 0.2);
	box-shadow: 0 13px 30px rgba(0, 0, 0, 0.2);
}

.gallery-with-thumb .thumbs .is-nav-selected figure:after {
	opacity: 0.1;
}

.gallery-with-thumb .flickity-enabled + .thumbs {
	opacity: 1;
	visibility: visible;
}

.gallery-with-thumb .mCSB_container {
	margin: 0;
}

.gallery-with-thumb .mCSB_scrollTools {
	visibility: hidden;
	right: auto;
	left: -6px;
}

/* Gallery Style 2
========================*/
.gallery-style2 {
	margin-bottom: 0;
	min-height: 100vh;
}

.gallery-style2 .aspect-ratio-container {
	max-width: none !important;
	max-height: none !important;
}

.gallery-style2 .aspect-ratio-fill {
	padding: 0 !important;
}

.gallery-style2 .progressive__img:not(.section-parallax-img) {
	position: relative;
	top: auto;
	left: auto;
}

.gallery-style2 .portfolio-main-image,
.gallery-style2 .portfolio-main-image figure,
.gallery-style2 .portfolio-main-image > figure > img,
.gallery-style2 .portfolio-main-image .parallax-img-parent,
.gallery-style2 .portfolio-main-image .parallax-img-container,
.gallery-style2 .portfolio-main-image .aspect-ratio-container,
.gallery-style2 .portfolio-main-image .aspect-ratio-fill,
.gallery-style2 .portfolio-main-image .aspect-ratio-fill > img,
.gallery-style2 .portfolio-main-image .section-parallax-img,
.gallery-style2 .portfolio-item,
.gallery-style2 .portfolio-content {
	max-height: none !important;
}

.gallery-style2.height-applied .carousel-items,
.gallery-style2.height-applied .flickity-viewport,
.gallery-style2.height-applied .flickity-slider > div,
.gallery-style2.height-applied .portfolio-main-image,
.gallery-style2.height-applied .portfolio-main-image figure,
.gallery-style2.height-applied .portfolio-main-image > figure > img,
.gallery-style2.height-applied .portfolio-main-image .parallax-img-parent,
.gallery-style2.height-applied .portfolio-main-image .parallax-img-container,
.gallery-style2.height-applied .portfolio-main-image .aspect-ratio-container,
.gallery-style2.height-applied .portfolio-main-image .aspect-ratio-fill,
.gallery-style2.height-applied .portfolio-item,
.gallery-style2.height-applied .portfolio-content {
	height: 100% !important;
}

.gallery-style2.height-applied .portfolio-main-image .section-parallax-img {
	height: 120% !important;
}

.gallery-style2 .thumbs {
	display: block;
	width: 9.5%;
	height: 100%;
	padding-left: 1px;
	margin: 0;
	position: absolute;
	top: 0;
	right: 0;
	background-color: #000;
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	transform: translateX(100%);
}

.gallery-style2 .thumbs figure {
	width: 100%;
	height: 16.6666666%;
	padding: 0;
	margin: 0;
	position: relative;
	overflow: hidden;
	-webkit-transition: none;
	transition: none;
	-webkit-transform: scale(0);
	transform: scale(0);
}

.gallery-style2 .progress {
	display: none;
	width: 100%;
	height: 4px;
	margin: 0;
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: #000;
	transform: translateY(101%);
	-webkit-transition: all 0.2s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition: all 0.2s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.gallery-style2 .progress-inner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	-webkit-transform-origin: left center;
	transform-origin: left center;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
}

.gallery-style2 .is-nav-selected .progress {
	-webkit-transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition: all 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
	transform: translateY(0);
}

.gallery-style2 .carousel-nav {
	width: 60px;
	position: absolute;
	top: 5px;
	right: 1.9%;
	z-index: 2;
}

.gallery-style2 .carousel-nav:before, .gallery-style2 .carousel-nav:after {
	content: "";
	display: table;
}

.gallery-style2 .carousel-nav:after {
	clear: both;
}

.gallery-style2 .toggle-thumbs {
	position: relative;
}

.gallery-style2 .toggle-thumbs button {
	margin: 0;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.gallery-style2 .toggle-thumbs .toggle-thumbs-on svg {
	width: 14px;
}

.gallery-style2 .toggle-thumbs .toggle-thumbs-off {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	visibility: hidden;
}

.gallery-style2 .toggle-thumbs .toggle-thumbs-off svg {
	width: 20px;
}

.gallery-style2 .toggle-thumbs,
.gallery-style2 .toggle-thumbs button,
.gallery-style2 .flickity-prev-next-button {
	float: left;
	display: inline-block;
	width: 57px;
	height: 57px;
	border: none;
}

.gallery-style2 .toggle-thumbs svg,
.gallery-style2 .toggle-thumbs button svg,
.gallery-style2 .flickity-prev-next-button svg {
	position: absolute;
	top: 50%;
	left: 50%;
	opacity: 0.75;
	transform: translateX(-50%) translateY(-50%);
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.gallery-style2 .toggle-thumbs svg path,
.gallery-style2 .toggle-thumbs button svg path,
.gallery-style2 .flickity-prev-next-button svg path {
	fill: #fff;
}

.gallery-style2 .toggle-thumbs button,
.gallery-style2 .flickity-prev-next-button {
	border-radius: 50em;
	background-color: rgba(0, 0, 0, 0.3);
	font-size: 1.57143em;
	line-height: 60px;
	color: #fff;
	-webkit-transition: background 0.3s ease, color 0.3s ease;
	transition: background 0.3s ease, color 0.3s ease;
}

.gallery-style2 .toggle-thumbs button:hover,
.gallery-style2 .flickity-prev-next-button:hover {
	background-color: rgba(0, 0, 0, 0.8);
	outline: none;
}

.gallery-style2 .toggle-thumbs button:hover svg,
.gallery-style2 .flickity-prev-next-button:hover svg {
	transform: translateX(-50%) translateY(-50%) !important;
	opacity: 1;
}

.gallery-style2 .toggle-thumbs button.next:hover svg,
.gallery-style2 .flickity-prev-next-button.next:hover svg {
	transform: translateX(-40%) translateY(-50%) !important;
}

.gallery-style2 .toggle-thumbs button.previous:hover svg,
.gallery-style2 .flickity-prev-next-button.previous:hover svg {
	transform: translateX(-60%) translateY(-50%) !important;
}

.gallery-style2 .toggle-thumbs,
.gallery-style2 .flickity-prev-next-button {
	margin: 9px 0;
	opacity: 0;
	visibility: hidden;
	-webkit-transform: scale(0.5);
	transform: scale(0.5);
}

.gallery-style2 .flickity-prev-next-button svg {
	width: 14px;
}

.gallery-style2 .flickity-prev-next-button svg line,
.gallery-style2 .flickity-prev-next-button svg polyline {
	fill: none;
	stroke: #fff;
}

.gallery-style2 .toggle-thumbs button {
	float: left;
	line-height: 64px;
	-webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
	transition: opacity 0.3s ease, visibility 0.3s ease;
}

.gallery-style2 .toggle-thumbs.off .toggle-thumbs-off {
	opacity: 1;
	visibility: visible;
}

.gallery-style2 .toggle-thumbs.off .toggle-thumbs-on {
	opacity: 0;
	visibility: hidden;
}

.gallery-style3 .carousel-items {
	margin-bottom: 2.14286em;
}

.gallery-style3 .aspect-ratio-container {
	max-width: 100% !important;
	max-height: none !important;
}

.gallery-style3 .aspect-ratio-fill {
	padding: 0 !important;
}

.gallery-style3 .progressive__img {
	position: relative;
	top: auto;
	left: auto;
}

.gallery-style3 .thumbs figure:after {
	background-color: #fff;
}

.gallery-style3.carousel-nav-style6 .flickity-prev-next-button {
	top: calc(50% - 95px);
}

.gallery-style3.carousel-nav-style6 .flickity-prev-next-button:hover {
	transform: translateY(0);
}

.dots-pushed-left .flickity-page-dots {
	width: 50%;
}

.dots-pushed-right .flickity-page-dots {
	width: 50%;
	left: 50%;
}

.dots-sm .flickity-page-dots .dot {
	width: 7px;
	height: 7px;
	margin: 0 4px;
}

.dots-sm.carousel-nav-style3 .flickity-page-dots .dot {
	width: 25px;
	height: 2px;
}

.dots-md .flickity-page-dots .dot {
	width: 10px;
	height: 10px;
	margin: 0 5px;
}

.dots-md.carousel-nav-style3 .flickity-page-dots .dot {
	width: 40px;
	height: 2px;
}

.dots-lg .flickity-page-dots .dot {
	width: 12px;
	height: 12px;
	margin: 0 6px;
}

.dots-lg.carousel-nav-style3 .flickity-page-dots .dot {
	width: 45px;
	height: 3px;
}

/* Responsive*/
@media (max-width: 991px) {
	.dots-pushed .flickity-page-dots {
		width: 100%;
		left: auto;
	}
	.carousel-device {
		min-height: 550px;
	}
	.carousel-device .carousel-items {
		width: 530px;
		height: 370px;
		top: 136px;
	}
	.carousel-device-bg {
		width: 700px;
	}
	.carousel-swipe-button {
		top: 2.14286em;
	}
	.box-rounded h3 {
		font-size: 0.92857em;
	}
	.carousel-3d {
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
	.carousel-vertical-random-offset .flickity-slider > div {
		top: auto !important;
	}
	.gallery-style3.carousel-nav-style6 .flickity-prev-next-button {
		top: calc(50% - 80px);
	}
	.gallery-style2 .toggle-thumbs {
		display: none !important;
	}
	.carousel-nav {
		margin-top: 90px;
	}
}

@media (max-width: 768px) {
	.carousel-device {
		min-height: 490px;
	}
	.carousel-device .carousel-items {
		width: 451px;
		height: 300px;
		top: 134px;
		left: calc(50% + 6px);
	}
	.carousel-device-bg {
		width: 600px;
	}
	.flickity-slider > [class*="col-"]:not([class*="col-xs"]) {
		width: 100%;
	}
	.box-rounded h3 {
		font-size: 0.85714em;
	}
	.carousel-3d {
		width: 95%;
	}
	.carousel-nav-style7 .carousel-nav .previous, .carousel-nav-style9 .carousel-nav .previous,
	.carousel-nav-style9 .carousel-nav .previous,
	.carousel-nav-style7 .carousel-nav .next, .carousel-nav-style9 .carousel-nav .next,
	.carousel-nav-style9 .carousel-nav .next {
		transform: none;
	}
}

@media (max-width: 543px) {
	.flickity-slider > [class*="col-"]:not([class*="col-xs"]) {
		width: 100%;
	}
	.carousel-device {
		min-height: 380px;
	}
	.carousel-device .carousel-items {
		width: 312px;
		height: 200px;
		top: 125px;
		left: 50%;
		transform: translateX(-50%);
	}
	.carousel-device-bg {
		width: 400px;
	}
}

@media (max-width: 459px) {
	.flickity-slider > [class*="col-"]:not([class*="col-xs"]) {
		width: 100%;
	}
	.carousel-device {
		min-height: 300px;
	}
	.carousel-device .carousel-items {
		width: 235px;
		height: 145px;
		top: 122px;
		left: 50%;
	}
	.carousel-device-bg {
		width: 300px;
	}
}
