/* Cursor
-----------------------------------------------------------------*/
.hover-this .hover-anim {
	pointer-events: none;
	-webkit-transition: -webkit-transform 0.2s linear;
	transition: -webkit-transform 0.2s linear;
	-o-transition: transform 0.2s linear;
	transition: transform 0.2s linear;
	transition: transform 0.2s linear, -webkit-transform 0.2s linear;
}

.cursor {
	pointer-events: none;
	position: fixed;
	padding: 0.3rem;
	border-radius: 50%;
	mix-blend-mode: difference;
	-webkit-transition: opacity 0.4s ease, -webkit-transform 0.3s ease;
	transition: opacity 0.4s ease, -webkit-transform 0.3s ease;
	-o-transition: transform 0.3s ease, opacity 0.4s ease;
	transition: transform 0.3s ease, opacity 0.4s ease;
	transition: transform 0.3s ease, opacity 0.4s ease, -webkit-transform 0.3s ease;
	z-index: 99999;
	background-color: #ececec;
	border: 1px solid black;

	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
}

.cursor-active {
	-webkit-transform: translate(-50%, -50%) scale(8);
	-ms-transform: translate(-50%, -50%) scale(8);
	transform: translate(-50%, -50%) scale(8);
	opacity: .1;
}


.cursor-pointer {
	cursor: pointer;
}


.full-width {
	width: 100% !important;
}

.mb-80 {
	margin-bottom: 80px !important;
}


.client-logo-wrap {
	position: relative;
	overflow: hidden;
	height: 150px;
	margin-top: 25px;
}

.client-logo {
	position: absolute;
	top: 0px;
	left: 0px;
	overflow: hidden;
	white-space: nowrap;
	display: flex;
}

.client-logo-left {
	animation: logomoveleft 15s linear infinite;
}

.client-logo-right {
	transform: translate(-100%, 0);
	animation: logomoveright 15s linear infinite;
}

.client-logo li {
	background: #FFFFFF;
	border-radius: 8px;
	padding: 20px !important;
	height: 100px;
	width: 220px;
	display: flex !important;
	align-items: center;
	justify-content: center;
	margin: 0px 5px;
}


#container {
  height:350px; 
  position:relative; 
  overflow:hidden;
}
#container:hover {
   overflow: auto;
}

#container:hover .photobanner {
   animation-play-state:paused;
}
.photobanner {
  position:absolute; 
  top:0px; 
  left:0px; 
  overflow:hidden; 
  white-space: nowrap;
  animation: bannermove 10s linear infinite;
}

.photobanner img {    
  margin: 0 0.5em 
}

@keyframes bannermove {
  0% {
      transform: translate(0, 0);
  }
  100% {
      transform: translate(-50%, 0);
  }
}

/*
.second-row{ 
  top: 150px;
}*/

@keyframes logomoveleft {
	0% {
		transform: translate(0, 0);
	}

	100% {
		transform: translate(-30%, 0);
	}
}

@keyframes logomoveright {
	0% {
		transform: translate(-100%, 0);
	}

	100% {
		transform: translate(0, 0);
	}
}


.loading {
  font-family: Montserrat, serif;
  text-transform:uppercase;
  
  width:150px;
  text-align:center;
  line-height:50px;
  
  position:absolute;
  left:0;right:0;top:50%;
  margin:auto;
  transform:translateY(-50%);
}

.loading span {
  position:relative;
  z-index:999;
  color:#fff;
}
.loading:before {
  content:'';
  background:#61bdb6;
  width:128px;
  height:36px;
  display:block;
  position:absolute;
  top:0;left:0;right:0;bottom:0;
  margin:auto;
  
  animation:2s loadingBefore infinite ease-in-out;
}

@keyframes loadingBefore {
  0%   {transform:translateX(-14px);}
  50%  {transform:translateX(14px);}
  100% {transform:translateX(-14px);}
}


.loading:after {
  content:'';
  background:#ff3600;
  width:14px;
  height:60px;
  display:block;
  position:absolute;
  top:0;left:0;right:0;bottom:0;
  margin:auto;
  opacity:.5;
  
  animation:2s loadingAfter infinite ease-in-out;
}

@keyframes loadingAfter {
  0%   {transform:translateX(-50px);}
  50%  {transform:translateX(50px);}
  100% {transform:translateX(-50px);}
}



