/* GENERAL */
html {
	height: 100%;
	background:#333333;
}
body {
	height: 100%;
	font-family: 'Open Sans', sans-serif;
	font-weight: 300;
    font-size: 15px;
	color:#333333;
	background-color: #ffffff;
	overflow:auto;
	left:0;
	transition:left 1s;
    position: relative;
}

body.pushed{	
    left: -240px;
    overflow: hidden;
}

.sidebar{
	position:fixed;
	top:0;
	width:240px;
	right: -260px;
	bottom:0;
	background:#333333;
	padding-top:60px;
    z-index: 999;
	transition:right 1s;
	overflow-y:auto;
}

	.pushed .sidebar{
		right:0;
	}
	
	.sidebar h2{
		color:#fafafa;
		font-size:1.2em;
		text-transform:uppercase;
		margin:2em 20px 1em;
		text-align:left;
		font-weight:600;
	}
	
	.sidebar li{
		display:block;
		text-align:left;
		font-family: 'Didact Gothic', sans-serif;
		font-size:1.1em;
	}	
	
		.sidebar li a{
			display:block;
			color:#ffffff;
			padding:0.8em 20px;
			transition:all 1s ease-in-out;
			max-height: 110px;
		}	
				
			.sidebar li a:active,
			.sidebar li a:focus{
				background:transparent;
			}	
			
		
		
			.sidebar li a:hover{
				color:#ffffff;
				background-color:#009ddb;
			}		
				.sidebar li a.indie:hover{
					background-color:#da4756;		
				}
				.sidebar li a.mojito:hover {
					background-color:#aed744;		
				}
				.sidebar li a.ondemand:hover {
					background-color:#ff7300;		
				}
				.sidebar li a.business:hover {
					background-color:#ffa500;		
				}
				.sidebar li a.commercial:hover {
					background-color:#ff9224;		
				}
		
ol {
    counter-reset: li; /* Initiate a counter */
    list-style: none; /* Remove default numbering */
    *list-style: decimal; /* Keep using default numbering for IE6/7 */
	font-size:1.2em;
	font-weight:400;
    padding: 0;
    margin: 3em 1.5em 4em;
}

	.rounded-list li{
		position: relative;
		display: block;
		padding: .4em .4em .4em 3em;
		margin: 2em 0;
		background: rgba(240,240,240,0.5);
		text-decoration: none;
		border-radius: .3em;
		transition: all .3s ease-out;   
	}

		.rounded-list li:before{
			content: counter(li);
			counter-increment: li;
			position: absolute; 
			left: -0.7em;
			top: 50%;
			margin-top: -1em;
			background:	#005ca8;
			color: white;
			height: 2em;
			width: 2em;
			line-height: 1.8em;
			border: .15em solid #fff;
			text-align: center;
			font-weight: bold;
			font-size:2em;
			border-radius: 2em;
			transition: all .3s ease-out;
		}
		
		.rounded-list li:hover:before{			
			left: -1em;
			background:#009ddb;
		}

	
	
header {
	z-index: 1000;
}
section {
	position: relative;
	background:#fff;
}
.wrapper{
	width:100%;
	height:100%;
	padding:6em 0;
	margin:0;
}
	.wrapper.p1{
		background:url('../img/parallax-p1.png') top left no-repeat;
		background-size: auto 50%;
		padding:0 !important;
	}
	.wrapper.p2{
		background:url('../img/parallax-p2.png') bottom right no-repeat;
		background-size: auto 50%;
	}
	.wrapper.p3{
		background:url('../img/parallax-p3.png')  50% 100% no-repeat;
		background-size: auto 30%;
		border-bottom:40px solid #e8e8e8;
	}
	.bridge{
		background:url('../img/bridge.jpg') center center no-repeat;
		background-size: cover;
	}

	.wrapper.contacts{
		background:url('../img/contacts.jpg') center center no-repeat;
		background-size: cover;
	}


.gray {
	background-color: #f4f4f4;
}

.border-bottom{
	max-width:1600px;
	margin:0 auto;
	border-bottom:1px solid #eeeeee;	
}

.nobr{
	white-space:nowrap;
}

/* INTRO */

.wrapper.p2 {
	padding-bottom:120px;
}

.box {
	position: relative;
	width: 100%;
	height: 100%;
	min-height: 600px;
	text-align: center;
	overflow:hidden;
}

	.box.dark{
		background:#333333;
	}
					
		.box .teaser{
			font-size: 1.5em;
			margin:1em 0;
			text-align:center;
			font-weight:300;
			line-height:1.8;			
		}	
	
	.background {
		position: absolute;
		top: 50%;
		left: 50%;
		min-width: 100%;
		min-height: 100%;
		width: auto;
		height: auto;
		-webkit-transform: translateX(-50%) translateY(-50%);
		transform: translateX(-50%) translateY(-50%);
		background-size: cover;
	}
	
		.box.video-background {
			padding:0 15px;
		}
		
		.box.video-background .overlay {
			display: block;
			position: absolute;
			left: 0;
			top: 0;
			width: 100%;
			height: 100%;
			z-index: 2;
			background: #000000;
			opacity: 0.6;
			filter: alpha(opacity=60);
		}
		
		
		.box.video-background.blue .overlay {
			background: #005ca8;
		}
		
	.box .content {
		position: relative;
		width: 100%;
		z-index: 3;
	}
	
	.box.vertical{
		height: 100%;
	}
	
		.box.vertical .content{
			position: relative;
			width: 100%;
			top: 50%;
			-webkit-transform: translate(0, -50%);
			-ms-transform: translate(0, -50%);
			transform: translate(0, -50%);
		}
	
	.box .bottom{
	    position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		font-size: 1.2em;
		text-transform: uppercase;
		min-height: 100px;
		font-weight: 500;
		color: #d6d6d6;
		text-decoration:none !important;
		z-index:5;
	}
	
		.box.dark .bottom{
			color: #fff;			
		}
	
	.box .icon {
		position: absolute;
		bottom: 20px;
		left: 50%;
		margin-left: -20px;
		width: 40px;
		height: 40px;
		line-height: 36px;
		border: solid 2px #f1f1f1;
		border-radius: 20px;
		z-index: 3;
		color: #f1f1f1;
	}
/*
	.box a,
	.box a:hover,
	.box a:focus {
		color: #f1f1f1;
	}
*/
	.logo{
		display:block;
		margin:0 auto;
		width:100%;
		max-width:500px;
	}

/* OUR TEAM */

#team{
	height:auto;
}

	#team .wrapper{
		padding-bottom:2em;
	}

.horizontal{
	text-align:center;
}

	.horizontal .person{
		display:block;
		margin:0 auto 5em ;
		text-align:center;
		max-width:300px;
	}
	
		
	.photo img {
		width:200px;
		height:200px;
		border-radius: 50%;
		object-fit: cover;
		filter: grayscale(50%);
	}
	
	.person:hover img{		
		filter: grayscale(0%);
	}
	
	
	.photo{
		display:inline-block;
		  position: relative;
	}
		.photo:before {
		  position: absolute;
		  left: 0;
		  right: 0;
		  top: 0;
		  bottom: 0;
		  content: '';
		  pointer-events: none;
		  border: 3px solid #e8e8e8;
		  border-radius: 50%;
		  margin: -2px;
		}	
					
			.photo:before {
			  -moz-transition: all 0.3s ease-in-out;
			  -o-transition: all 0.3s ease-in-out;
			  -webkit-transition: all 0.3s ease-in-out;
			  transition: all 0.3s ease-in-out;
			  opacity: 1;
			  -moz-transform: scale(1);
			  -ms-transform: scale(1);
			  -webkit-transform: scale(1);
			  transform: scale(1);
			}
			
				.photo:hover:before {
				  -moz-transform: scale(1.2);
				  -ms-transform: scale(1.2);
				  -webkit-transform: scale(1.2);
				  transform: scale(1.2);
				  opacity: 0;
				}
				
		.horizontal .jobtitle {
			font-weight: 600; 
			margin:1em 0 2em;
		}
		
		.horizontal .epithet {
			font-weight: 300; 
			color:#666;
			font-style:italic;
		}
		
/*Locations*/		

.location{
	display:inline-block;
	width:19%;
	font-size:1.3em;
	vertical-align:top;
}
	.location .pin{
		width:120px;
		height:120px;
		border-radius:50%;
		margin:2em auto;
		position:relative;
		overflow:hidden;
		cursor:pointer;
	}	
	
		.location .pin:after{
			content:'';
			display:block;
			position:absolute;
			top:0;
			left:0;
			right:0;
			bottom:0;
			border-radius:50%;
			background-color:rgba(0,0,0,0.5);
			background-image:url('../img/pin.png');
			background-position:center center;
			background-repeat:no-repeat;			
			transition:all 0.5s ease-out;
			opacity:0;			
		}
		
		.location:hover .pin:after{			
			opacity:0.8;	
		}
		
	
		.pin.us{
			background:url('../img/flags/us.png') center center no-repeat;
			background-size: cover;
		}

		.pin.ge{
			background:url('../img/flags/ge.png') center center no-repeat;
			background-size: cover;
		}

		.pin.si{
			background:url('../img/flags/si.png') center center no-repeat;
			background-size: cover;
		}

		.pin.au{
			background:url('../img/flags/au.png') center center no-repeat;
			background-size: cover;
		}

		.pin.uk{
			background:url('../img/flags/uk.png') center center no-repeat;
			background-size: cover;
		}


/* FONTS */

a {
  color: #005ca8;
  text-decoration: none;
}
	a:hover,
	a:focus {
	  color: #017aa9;
	  text-decoration: underline;
	  outline:none;
	}

p{
	margin:0 0 1em;
	text-align:justify;
	font-size:1.125em;
	line-height:1.5em;
}	

	p.extra{
		font-size:1.2em;
		font-weight:600;
	}

h1{
	font-size: 2.2em;
	text-transform:uppercase;
	margin:0 0 2em;
	text-align:center;
	font-weight:700;
	line-height:1.4;	
}

	#splash h1 {
		font-size: 1.6em;
		text-transform: uppercase;
		margin: 1em 0 0;
		text-align: center;
		font-weight: 700;
		line-height: 1.8;
		color: #e6e7e8;
	}

h2{
	font-family: 'Didact Gothic', sans-serif;
	font-size: 2.6em;
	margin:0 0 2em;
	text-align:center;
}

.tagline {
	text-align:center;
	margin:0;
}

	.tagline span{
		color: #005ca8;
		white-space:nowrap;
	}

/* COPYRIGHT */

footer {
	padding-top: 2em;
	padding-bottom: 2em;
	color: #cecece;
	text-align: center;
	background:#fff;
}


/* NAVBAR */

.header {
	width: 100%;
}

.navbar {
	padding:5px 0;
	border:0px;
	/*background:rgba(0,92,168,0.8);*/
	background:(0,0,0,0.5);
}

    .navbar-toggle {
        display: block;
		padding: 9px 10px !important;
		margin-right: 15px;
		border-radius: 0;
    }
		.navbar-toggle .icon-bar {
			width: 30px;
			height: 4px;
			background-color: #ffffff;
		}
		
			.pushed .navbar-toggle .icon-bar {
				background-color: #ffffff !important;
			}
			
	.navbar .logo-small {
		display:none;
		max-height:40px;
		margin:8px 0;
	}
		
	.navbar-collapse, .navbar-form{		
		overflow: hidden !important;		
	}
		.navbar-collapse.collapse {
			display: none!important;
		}		
		.navbar-collapse.collapse.in {
			display: block!important;
		}		
			
	.navbar-collapse {
		position: relative;
		max-height: inherit !important;
	}
		.navbar-collapse a {
		  -webkit-transition: all 0.2s ease-out;
		  -moz-transition: all 0.2s ease-out;
		  transition: all 0.2s ease-out;
		}
	.navbar-header {
	  float: none;
	  position: relative;
	  z-index: 500;
	}
	

	.navbar-nav:after{
		display:block;
		content:'';
		clear:both;
	}

/* Form */

.request{
	margin-top:5em;
}

.form-control{
	padding:10px;
	margin:0 auto 25px;
	height:auto;
	max-width:400px;
}

.btn{
	display:block;
	width:100%;
	max-width:400px;
	line-height:1.2;
	padding:0.5em 0;
	border-radius:25px;
	margin:1em auto;
	font-size:1.8em;
	color:#fff;
	text-align:center;
	font-weight:300;
	background:#005ca8;
	cursor:pointer;
	transition:all 0.5s ease-in-out;
	-webkit-box-shadow: 0px 4px 15px 0px rgba(0,0,0,0.5);
	-moz-box-shadow: 0px 4px 15px 0px rgba(0,0,0,0.5);
	box-shadow: 0px 4px 15px 0px rgba(0,0,0,0.5);
	text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15);	
	white-space:inherit;
}

	.btn:hover{
		color:#fff;	
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
		text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.5);	
	}
		.btn.rounded:hover{
			border-bottom:0px;
			position:relative;
			bottom:-3px;
		}
	.btn:active{
		background:#009ddb;
	}

	.dark{
		color:#ffffff;
	}
	
/*Features*/	

	.card{
		padding:120px 40px 40px;
		font-size:1.4em;
		background:#fff;
		-webkit-box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.25);
		-moz-box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.25);
		box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.25);
		max-width:400px;
		margin:120px auto 1em;
		position:relative;
	}
	
		.card .feature{
			position:absolute;
			top:-100px;
			left:50%;
			width:200px;
			height:200px;
			margin-left:-100px;
			background-color:#005ca8;
			border-radius:50%;
			border:12px solid #f4f4f4;
			transition:all 0.3s ease-out;
				background-position:50% 50%;
				background-repeat: no-repeat;
				background-size:50% 50%;
		}
		.card:hover .feature{	
			background-color:#009ddb;
			top:-120px;
			
		}
		
			.card .feature.platform{
				background-image:url('../img/feature-platform.png');
			}
			.card .feature.volume{
				background-image:url('../img/feature-volume.png');
			}
			.card .feature.interface{
				background-image:url('../img/feature-interface.png');
			}
			.card .feature.integrate{
				background-image:url('../img/feature-integrate.png');
			}
			
	
	
/* Media */

@media (max-width:1199px){
	body{
		font-size:15px;
	}

	.live{
		margin-top:3em;
		width:640px;
	}
	
	#team{
		height:auto;
	}
	
}

@media (max-width:991px){
	body{
		font-size:14px;
	}
	
	.location{
		width:32%;
	}

}

@media (max-width:767px){
	body{
		font-size:13px;
	}

	section {
		position: relative;
	}
	
	.box .teaser{
		font-size: 1.5em;
		line-height:1.8;			
	}
		
	.navbar-nav li{
		width:100%;
	}
	
	.navbar .logo-small {
		max-height: 30px;
		margin: 12px 0 12px 15px;
	}	

	h1{
		font-size: 1.8em;
		line-height:1.8;		
	}
	
	.sub-teaser{
		font-size: 1.3em;		
	}
	
	.location{
		width:48%;
	}
}


@media (max-height:767px){
	
	.box{
		height:auto;
	}
		.box .wrapper{
			padding:5em 0;
		}

	
	#subscribe, #contact{
		height:auto;
	}
	

	#subscribe .content,
	#contact .content{
		position: static;
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
	}
	
}