/*! Flickity v1.2.1
http://flickity.metafizzy.co
---------------------------------------------- */
#flickity-slider{
	background: none;
	position: relative;
	height: 100%;
}

.flickity-loading #flickity-slider{
	background: url(../img/ajax-loader.gif) no-repeat center;
}

#flickity-slider .wrap{
	height: 100%;
}

#flickity-slider .wrap .carousel-cell{
	min-width: 340px;
}

#flickity-slider .wrap .carousel-cell.portrait{ min-width: 28.75%; }
#flickity-slider .wrap .carousel-cell.square{ min-width: 40.38%; }
#flickity-slider .wrap .carousel-cell.landscape{ min-width: 63.72%; }

#flickity-slider .wrap img{
	margin: 0 25px 0 0;
    max-height: 100%;
	height: 100%;
    width: auto;
	opacity: 0;
}
#flickity-slider .wrap img.carousel-cell.flickity-lazyloaded{
	min-width: 0;
	opacity: 1;
}
#flickity-slider .wrap .freespace{
	display: block;
	width: 150px;
	height: 100%;
}

#flickity-slider .wrap img:last-child{
	margin-right: 120px;
}

.flickity-controls .flickity-button{
	background: rgba(0, 0, 0, 0);
    position: absolute;
    height: 100%;
    width: 50%;
    top: 0;
	
	text-indent: -999px;
	color: transparent;
	font-size: 0;
}

.flickity-controls .flickity-down-arrow{
	display: none;
}

.flickity-controls .flickity-button.disable{
	opacity: 0;
}

.flickity-controls .flickity-button.prev{
	cursor: url(../img/hero-left-controls.png) 0 18, auto;
	left: 0;
}

.flickity-controls .flickity-button.next{
	cursor: url(../img/hero-right-controls.png) 21 18, auto;
	right: 0;
}

.touch .flickity-controls .flickity-button{
	height: 36px;
	width: 21px;
	top: 50%;
	
	transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.touch .flickity-controls .flickity-button.prev{
	background: url(../img/hero-left-controls.png) no-repeat top left;
	cursor: pointer;
	left: 25px;
}

.touch .flickity-controls .flickity-button.next{
	background: url(../img/hero-right-controls.png) no-repeat top left;
	cursor: pointer;
	right: 25px;
}

#flickity-slider .project-info {
    height: 100%;
}

.flickity-enabled {
  position: relative;
}

.flickity-enabled:focus { outline: none; }

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
	position: absolute;
	width: 100%;
	height: 100%;
	
	-webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/* draggable */

.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
          tap-highlight-color: transparent;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
	height: 100% !important;
	cursor: move;
	cursor: -webkit-grab;
	cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* ---- previous/next buttons ---- */

.flickity-prev-next-button {
  position: absolute;
  top: 50%;
  width: 44px;
  height: 44px;
  border: none;
  border-radius: 50%;
  background: white;
  background: hsla(0, 0%, 100%, 0.75);
  cursor: pointer;
  /* vertically center */
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}

.flickity-prev-next-button:hover { background: white; }

.flickity-prev-next-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #09F;
}

.flickity-prev-next-button:active {
  filter: alpha(opacity=60); /* IE8 */
  opacity: 0.6;
}

.flickity-prev-next-button.previous { left: 10px; }
.flickity-prev-next-button.next { right: 10px; }
/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}
.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}

.flickity-prev-next-button:disabled {
  filter: alpha(opacity=30); /* IE8 */
  opacity: 0.3;
  cursor: auto;
}

.flickity-prev-next-button svg {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

.flickity-prev-next-button .arrow {
  fill: #333;
}

/* color & size if no SVG - IE8 and Android 2.3 */
.flickity-prev-next-button.no-svg {
  color: #333;
  font-size: 26px;
}

/* ---- page dots ---- */

.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-rtl .flickity-page-dots { direction: rtl; }

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  filter: alpha(opacity=25); /* IE8 */
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
  filter: alpha(opacity=100); /* IE8 */
  opacity: 1;
}

@media only screen and (max-width: 1366px){
	#flickity-slider, #flickity-slider .wrap{ height: auto; }
	.flickity-enabled.is-draggable .flickity-viewport{ height: auto !important; }
	.flickity-controls .flickity-button, .touch .flickity-controls .flickity-button{ display: none; }
	.flickity-controls .flickity-down-arrow{
		position: fixed;
		display: block;
		height: 14px;
		width: 23px;
		bottom: 20px;
		right: 30px;
		
		text-indent: -999px;
		color: transparent;
		font-size: 0;
	}
	.flickity-controls .flickity-down-arrow:before{
		background-image: url(../img/slidearrow.png);
		background-position: bottom left;
		background-size: 23px 28px;
		display: block;
		height: 14px;
		width: 23px;
		content: '';
		
		text-indent: 0;
		color: #fff;
	}
	.flickity-slider{ position: relative; }
	#flickity-slider .wrap img {
		position: relative !important;
		margin: 0 auto 20px;
		max-height: none;
		display: block;
		height: auto;
		width: 100%;
	}
	#flickity-slider .wrap .freespace{ display: none; }
}
@media only screen and (max-width: 667px){
	.flickity-controls .flickity-down-arrow{
		height: 11px;
		width: 18px;
	}
	.flickity-controls .flickity-down-arrow:before{
		background-size: 18px 22px;
		height: 11px;
		width: 18px;
	}
}
@media only screen and (max-width: 420px){
	#flickity-slider .wrap img {
		position: relative !important;
		margin: 0 auto 20px;
		max-height: none;
		display: block;
		height: auto;
		width: auto;
		opacity: 0;
		
		/*left: 50%;
		
		transform: translateX(-50%);
		-o-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		-moz-transform: translateX(-50%);
		-webkit-transform: translateX(-50%);*/
		
		transition: opacity 300ms ease-in-out;
		-o-transition: opacity 300ms ease-in-out;
		-ms-transition: opacity 300ms ease-in-out;
		-moz-transition: opacity 300ms ease-in-out;
		-webkit-transition: opacity 300ms ease-in-out;
	}
	#flickity-slider .wrap img.carousel-cell.flickity-lazyloaded{
		max-width: 100%;
		opacity: 1;
	}
}