
#carousel-holder {
	width:100%;
	height:100%;
	position:fixed;
	opacity:0;
	z-index:1;		
}

#carousel-slider {
	position: relative;
	width: 100%;
	margin:0 auto;
	height:calc(100vh - 240px);
	top:120px;
}

.swiper-wrapper { display: flex; }

.swiper-slide { display: table; }

#carousel-slider .swiper-slide {
	width: auto;
	height: 100%;
	position: relative;
	overflow: hidden; 
	display: flex;
}

@media only screen and (min-width: 768px) {
	#carousel-slider .swiper-slide {
		width: auto!important;
	}
}

#carousel-slider .swiper-slide:first-child {
	opacity:0;
}

#carousel-slider .img-mask {	
	width:auto;
	height:100%;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:0 auto;
	display: block;
	position:relative;
	box-sizing:border-box;
	z-index:2;
}

#carousel-slider .img-mask img {
	height:100%;
	width:auto;
	max-width:none;
}

.swiper-sliders .swiper-slide .img-mask img {
	opacity:0;
	-webkit-transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out, transform 0.3s ease-in-out;
}

#carousel-slider .img-caption {
	position:absolute;
	width:100%;
	height:auto;
	padding:100px 40px 40px 83px;
	box-sizing:border-box;
	left:0;
	bottom:0;
	font-size:12px;
	color:#fff;
	background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 100%);
	background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.5) 100%);
}



.swiper-ball-pagination {
	position:absolute;
	height:100%;
	width:100%;
	z-index:10;
	top:0;
	cursor:none;
}

.no-cursor .swiper-ball-pagination {
	cursor:default;
}

.swiper-ball-prev {
	position:absolute;
	height:100%;
	width:35%;
	left:0;
}

.no-cursor .swiper-ball-prev {
	cursor:w-resize;
}

.swiper-ball-all {
	position:absolute;
	height:100%;
	width:30%;
	left:0;
	right:0;
	margin:0 auto;
	cursor:none;
}

.no-cursor .swiper-ball-all {
	display:none;
}

.swiper-ball-next {
	position:absolute;
	height:100%;
	width:35%;
	right:0;
}

.no-cursor .swiper-ball-next {
	cursor:e-resize;
}


#project-info {
	position: fixed;
	bottom: 0;
	height: 120px;
	width: 100%;
	padding: 40px 80px;
	box-sizing: border-box;
	z-index: 12;
	visibility:hidden;
	height:0;
	overflow:hidden;
}

.project-date {
	float:left;
	line-height: 40px;
	height:40px;
	width:auto;
	margin-left:40px;
	font-size: 12px;
	position:relative;
	z-index:1;
	opacity:0;
}

.project-date:before {
	width: 100%;
	height: 40px;
	width:20px;
	position: absolute;
	font-size: 18px;
	font-family:'FontAwesome';
	content: "\f017";
	color:#000;
	left: -40px;
	top:0;
	-webkit-transition: opacity 0.2s ease-in-out 0.2s;
	transition: opacity 0.2s ease-in-out 0.2s;
}

.light-content .project-date:before {
	color:#fff;
}

.project-name {
	line-height: 40px;
	font-weight: 700;
	font-family: 'Oswald', sans-serif;
	text-transform: uppercase;
	font-size: 16px;
	color: #000;
	width: 100%;
	z-index:0;
	position: absolute;
	display: table;
	margin: 0 auto;
	left: 0;
	right: 0;
	opacity:0;
	text-align:center;
}

.light-content .project-name {
	color:#fff;
}

.project-share {
	display:block;
	position: relative;
	z-index:1;
	opacity:0;
	float:right;
}

#share {
	display:block;		
	position: relative;
}

#share::before {
	content: attr(data-text);
	font-size: 12px;
	width: 60px;
	height: 40px;
	line-height: 40px;
	position: absolute;
	top: 0;
	opacity: 1;
	left: -70px;
}

#share:after {
	width: 100%;
	height: 1px;
	position: absolute;
	content: "";
	background-color: rgba(0,0,0,1);
	left: 0px;
	bottom: 19px;
	-webkit-transition: opacity 0.2s ease-in-out 0.2s;
	transition: opacity 0.2s ease-in-out 0.2s;
}

.light-content #share:after {
	background-color: rgba(255,255,255,1);
}

.jssocials-shares {
	display: table;
	margin: 0 auto!important;
}

.jssocials-share {
	margin: 0 6px !important;
	position: relative;
	background-color: #fff;
	z-index: 1;
	-webkit-transition: background 0.4s ease-in-out 0s;
	transition: background 0.4s ease-in-out 0s;
}

.light-content .jssocials-share {
	background-color: #181818;
}

.jssocials-shares div:first-child {
	margin-left:0px!important;
}

.jssocials-shares div:last-child {
	margin-right:0px!important;
}

.jssocials-shares:hover .jssocials-share-link {
	opacity:0.3;
}

.jssocials-shares .jssocials-share-link:hover {
	color:#000!important;
	opacity:1;
}

.light-content .jssocials-shares .jssocials-share-link:hover {
	color:#fff!important;
	opacity:1;
}

.jssocials-share-link {
	font-size: 14px;
	color: #000;
	position: relative;
	display: flex;
	position: relative;
	justify-content: center;
	align-items: center;
	height: 40px!important;
	width: 40px!important;
	text-align: center!important;
	line-height: 40px!important;
	-webkit-transition: opacity 0.2s ease-in-out;
	transition: opacity 0.2s ease-in-out;
}

.light-content .jssocials-share-link {
	color:#fff;
}

#project-footer {
	width:100%;
	z-index: 10;
	position: fixed;
	overflow: visible;
	bottom: 0;
	box-sizing: border-box;
	padding: 0 45px;
	padding-bottom:20px;
	pointer-events:none;
	opacity:1;
}

.load-carousel-page .timeline-element {
	position:relative;
	opacity:0;
}

.button-wrap {
	position:relative;
	cursor:pointer;
	pointer-events:initial;		
}

.button-wrap.left {
	float:left;	
}

.button-wrap.right {
	float:right;
}

.icon-wrap {
	width: 80px;
	height: 80px;
	display: flex;
	position: relative;
	justify-content: center;
	align-items: center;		
}

.button-wrap.left .icon-wrap {
	float:left;
}

.button-wrap.right .icon-wrap {
	float:right;
}

.button-icon {
	height: 22px;
	width: 14px;
	color: #000;
	text-align: center;
	line-height: 22px;
	font-size: 22px;
}

.light-content .button-icon {
	color:#fff;
}

#ball.bl {
	transform:scale(2) translate(-9px, -9px);
	border: 1px solid #fff;
	left:0;		
}

.button-text {
	font-weight: 700;
	font-family: 'Oswald', sans-serif;
	text-transform:uppercase;
	font-size: 14px;
	line-height:30px;
	margin:25px 0;
	overflow: hidden;
	width:140px;
	color:#000;		
}

.light-content .button-text {
	color:#fff;
}

.button-wrap.left .button-text {
	text-align:left;
	float: left;
}

.button-wrap.right .button-text {
	text-align:right;
	float: right;
}

.button-text span {
	position: relative;
	display: inline-block;
	-webkit-transition: -webkit-transform 0.2s;
	transition: transform 0.2s;
	width:140px;
	text-align:center;
	transform-origin: 100% 0%;;
}

.button-wrap.left .button-text span {
	text-align:left;
}

.button-wrap.right .button-text span {
	text-align:right;
}

.button-text span::before {
	position: absolute;
	width:140px;
	top: 100%;
	left:0;
	content: attr(data-hover);
}

.button-wrap:hover .button-text span {
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
	transform-origin: 0% 0%;;
}

.transition-element {
	opacity:0;
	display:block;
	position:relative;
}

.swiper-scrollbar { 
	position: absolute;
	text-align: center;
	-webkit-transition: .3s opacity;
	-o-transition: .3s opacity;
	transition: .3s opacity;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
	z-index: 10;
	width: 150px;
	height: 1px;
	background: rgba(0,0,0,0.2) !important;
	left: 0;
	right: 0;
	margin: 0 auto;
	top: 40px;
}

.light-content .swiper-scrollbar {
	background: rgba(255,255,255,0.2)!important;
}

.swiper-scrollbar-drag {
	background: rgba(0,0,0,1)!important;
}

.light-content .swiper-scrollbar-drag {
	background: rgba(255,255,255,1)!important;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0!important;
}

.swiper-counter {
    width: 220px;
    height: 20px;
    position: absolute;
    margin: 0 auto;
        margin-left: auto;
    display: block;
    left: 50%;
    margin-left: -110px;
	top:32px;
}

.swiper-counter:after {
	content:attr(data-total);
	width:20px;
	font-size:14px;
	font-weight: 700;
	font-family: 'Oswald', sans-serif;
	color:#000;
	width:20px;
	height: 16px;
	line-height: 16px;
	position:absolute;
	top:0px;
	right:-5px;
	opacity:1;
}

.light-content .swiper-counter:after {
	color:#fff!important;
}

.swiper-pagination-bullet {
    width: 16px !important;
    height: 16px !important;
    background: transparent !important;
	opacity:1!important;
    position: absolute;
    left: 0;
}

.swiper-pagination-bullet .counter {
    width:20px;
	font-size:14px;
	font-weight: 700;
	font-family: 'Oswald', sans-serif;
	color:#000;
	width:20px;
	height: 16px;
	line-height: 16px;
	left:0;
	opacity:0;
    -webkit-transform: translateY(20px) scale(1);
    transform: translateY(20px) scale(1);
}

.light-content .swiper-pagination-bullet .counter {
	color:#fff;
}

.swiper-pagination-bullet:first-child .counter {
	opacity: 1;
	-webkit-transform: translateY(0px) scale(1);
	transform: translateY(0px) scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next, .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
	-webkit-transform: scale(1)!important;
	transform: scale(1)!important;
	opacity:0!important;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
	opacity:1!important;
}

.swiper-pagination-bullet:after{
	content:'';
	font-size:14px;
	font-weight: 700;
	font-family: 'Oswald', sans-serif;
	color:#000;
	width:20px;
	height: 16px;
	line-height: 16px;
	position:absolute;
	top:0px;
	right:0px;
	opacity:1;
}




/*--------------------------------------------------
16. Responsive
---------------------------------------------------*/			
		


@media only screen and (max-width: 1466px) {

#carousel-slider {
	height: calc(100vh - 200px);
	top: 100px;
}

#project-info {
	padding: 40px 40px 40px 50px;
	bottom: -10px;
}

#project-footer {
	padding: 0 20px;
	padding-bottom: 10px;
}

}


@media only screen and (max-width: 1024px) {


}


@media only screen and (max-width: 767px) {


#carousel-slider .swiper-slide {
	display: table;
}

#carousel-slider .img-mask {
	display: table-cell;
	vertical-align: middle;
	height: calc(100vh - 200px);
}

#carousel-slider .img-mask img {
	height: auto;
	width: auto;
	max-width: 100%;
	max-height: 100%;
	display: block;
	margin: 0 auto;
}

#project-info {
	padding: 40px 20px 40px 30px;
	bottom: -10px;
}

.project-date {
	display: none;
}

.project-name {
	text-align: left;
	padding-left: 40px;
}

#share::before {
	left: -60px;
}

#project-footer {
	padding: 0;
	padding-bottom: 10px;
}

.button-text {
	display: none;
}

.swiper-scrollbar {
	width: 100px;
}

.swiper-counter {
    width: 170px;
    margin-left: -85px;
}


.swiper-pagination-bullets-dynamic {
	width: 170px !important;
	margin-left: -83px;
}

}


@media only screen and (max-width: 479px) {

#carousel-slider {
	height: calc(100vh - 160px);
	top: 80px;
}

#carousel-slider .img-mask {
	height: calc(100vh - 160px);
}

#project-info {
	bottom: -20px;
}

.project-name {
	padding-left: 25px;
}

#share {
	margin-top: 10px;
}

#share::before {
	left: auto;
	right: 8px;
	top: -25px;
	text-align: right;
}

.jssocials-share {
	margin: 0px !important;
}

.jssocials-share-link {
	height: 30px !important;
	width: 30px !important;
	line-height: 30px !important;
}

#project-footer {
	padding-bottom: 0px;
}

}			