/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* Reset CSS End */

/* Helper Classes */

.alignLeft {
	float: left;
}

.alignRight {
	float: right;
}

.margin-bottom-10 {
	margin-bottom: 10px;
}

.margin-bottom-20 {
	margin-bottom: 20px;
}

.margin-bottom-30 {
	margin-bottom: 30px;
}

.margin-bottom-40 {
	margin-bottom: 40px;
}

strong, b {
	font-weight: 700;
}

em, i {
	font-style: italic;
}

p, ul li, ol li {
	font-size: 16px;
	line-height: 23px;
	margin-bottom: 20px;
}

/* End CSS Reset*/

/* General Rules */

@font-face {
	font-family: 'Raleway-Medium';
	src: local('Raleway-Medium.otf'),
	url('Raleway-Medium.otf') format('opentype')
}

@font-face {
	font-family: 'Raleway-Bold';
	src: local('Raleway-Bold.otf'),
	url('Raleway-Bold.otf') format('opentype')
}

@font-face {
	font-family: 'Raleway-Regular';
	src: local('Raleway-Regular.otf'),
	url('Raleway-Regular.otf') format('opentype')
}


@font-face {
	font-family: 'Raleway-Thin';
	src: local('Raleway-Thin.otf'),
	url('Raleway-Thin.otf') format('opentype')
}

@font-face {
	font-family: 'Raleway-Heavy';
	src: local('Raleway-Heavy.otf'),
	url('Raleway-Heavy.otf') format('opentype')
}

@font-face {
	font-family: 'Raleway-Light';
	src: local('Raleway-Light.otf'),
	url('Raleway-Light.otf') format('opentype')
}

@font-face {
	font-family: 'Raleway-ExtraLight';
	src: local('Raleway-ExtraLight.otf'),
	url('Raleway-ExtraLight.otf') format('opentype')
}

* {
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.container  {
	max-width: 1180px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    padding: 30px 20px;
}

body {
	font-family: 'Raleway-Regular', sans-serif;
}

.alignLeft {
	float: left;
}

.alignRight {
	float: right;
}


/* End General Styles*/

/* Hero Styles */


#hero {
	background-image: url('../img/hero-01.jpg');
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	position: relative;
}

.navbar {
	display: block;
}


.nav li {
	display: inline-block;
	font-family: 'Raleway-Thin';
	font-size: 18px;
	font-weight: 700;
	padding-top: 13px;
}

.nav li a {
	color: white;
	text-decoration: none;
	margin-left: 25px;
	padding-bottom: 3px;
	border-bottom: 4px solid white transparent;
	transition: border-bottom 0.2s, color 0.2s;
}

.nav li a:hover {
	border-bottom: 4px solid white;
	transition: border-bottom 0.2s, color 0.2s;
}

.cta {
	display: inline-block;
	width: 100%;
	text-align: center;
}

.logo-arrow {
	margin: 240px 0px 0px 0px;
	display: inline-block;
}

.cta p {
	font-size: 18px;
	line-height: 25px;
	color: white;
}

.know-more-btn {
	width: 155px;
    display: inline-block;
    border: 2px solid white;
    border-radius: 5px;
    color: white;
    cursor: pointer;
    background: transparent;
    padding: 5px 0px;
    text-decoration: none;
    font-weight: 700;
    font-size: 14px;
    margin-top: 10px;
}

.know-more-btn:hover {
	color: #354e67;
	border: 2px solid #354e67;
	transition: border 0.5s, color 0.5s;
}

.know-more-btn:active {
	
	background: rgba(255, 255, 255, 0.5);
	transition: border 0.2s, color 0.2s;
}



#scroll-text {
	font-family: 'Raleway-Light';
	text-transform: uppercase;
	margin-top: -20px;
	font-size: 14px;
	font-weight: 200;
	color: white;
}

.triangle-container {
	background: url('../img/triangles-up.png');
	background-size: cover;
	background-position: bottom;
	height: 207px;
	text-align: center;
	margin-top: 50px;
	padding-top: 85px;
	position: relative;
	top: 1px;
}


/* Our Services Section */

#services .container {
	text-align: center;
	padding: 60px 20px 0px 20px;
}

#services .container h2 {
	font-size: 24px;
	line-height: 29px;
	color: #2980b9;
	margin-bottom: 80px;
	text-transform: uppercase;
	font-weight: 800;
	font-family: 'Raleway-Bold';
}


/* css for border-bottom less than full width from https://www.steckinsights.com/shorten-length-border-bottom-pure-css/ */

#services .container h2:after {
    content: ""; /* This is necessary for the pseudo element to work. */ 
    display: block; /* This will put the pseudo element on its own line. */
    margin: 0 auto; /* This will center the border. */
    width: 30px; /* Change this to whatever width you want. */
    padding-top: 10px; /* This creates some space between the element and the border. */
    border-bottom: 5px solid #2980b9; /* This creates the border. Replace black with whatever color you want. */
}

.col-4-app {
	width: 33.33%;
	float: left;
	padding: 0px 110px;
}

.col-4-app p {
	font-size: 12px;
	line-height: 16px;
	color: #646464;
}

.col-4-app img {
	margin-bottom: 16px;
}

.col-4-app h3 {
	font-size: 18px;
	color: #616161;
	margin-bottom: 20px;
	font-weight: 800;
	font-family: 'Raleway-Bold';
}

/* End Services */

/* Start Portfolio Section */

#portfolio {
    background-image: url('../img/portfolio-bg-less-op.png');
	background-size: cover;
	background-position: center;
	position: relative;
	z-index: 1;
}

#portfolio .container {
	text-align: center;
	padding: 60px 20px 40px 20px;
}

.downward-triangle-container {
	background: url('../img/downward-triangle.png');
	background-size: cover;
	background-position: bottom;
	height: 211px;
	text-align: center;
	padding-top: 60px;
	position: relative;
	top: -1px;
}



#portfolio .container h2 {
	font-size: 26px;
	line-height: 31px;
	color: #ffffff;
	margin-bottom: 65px;
	text-transform: uppercase;
	font-weight: 800;
	font-family: 'Raleway-Bold';
}


/* css for border-bottom less than full width from https://www.steckinsights.com/shorten-length-border-bottom-pure-css/ */

#portfolio .container h2:after {
    content: ""; /* This is necessary for the pseudo element to work. */ 
    display: block; /* This will put the pseudo element on its own line. */
    margin: 0 auto; /* This will center the border. */
    width: 30px; /* Change this to whatever width you want. */
    padding-top: 10px; /* This creates some space between the element and the border. */
    border-bottom: 5px solid #ffffff; /* This creates the border. Replace black with whatever color you want. */
}
 
.iphone-design {
	width: 100%;
	display: flex;
	align-content: flex-start;
	flex-wrap: wrap;
}

.project-1 {
	background-image: url('../img/project-1.png');
	width: 375px;
	height: 200px;
	background-size: cover;
	background-position: center;
	padding: 20px;
	position: relative;
	z-index: 1;
	cursor: pointer;
}
.project-2 {
	background-image: url('../img/project-2.png');
	width: 375px;
	height: 200px;
	background-size: cover;
	background-position: center;
	padding-top: 50px;
	text-align: center;
	padding: 20px;
	position: relative;
	z-index: 1;
	cursor: pointer;
}
.project-3 {
	background-image: url('../img/project-3.png');
	width: 375px;
	height: 200px;
	background-size: cover;
	background-position: center;
	padding: 20px;
	position: relative;
	z-index: 1;
	cursor: pointer;
}
.project-4 {
	background-image: url('../img/project-4.png');
	width: 375px;
	height: 200px;
	background-size: cover;
	background-position: center;
	padding: 20px;
	position: relative;
	z-index: 1;
	cursor: pointer;
}
.project-5 {
	background-image: url('../img/project-5.png');
	width: 375px;
	height: 200px;
	background-size: cover;
	background-position: center;
	padding: 20px;
	position: relative;
	z-index: 1;
	cursor: pointer;
}
.project-6 {
	background-image: url('../img/project-6.png');
	width: 375px;
	height: 200px;
	background-size: cover;
	background-position: center;
	padding: 20px;
	position: relative;
	z-index: 1;
	cursor: pointer;
}

.iphone-design h3 {
	font-size: 25px;
	color: white;
	font-family: 'Raleway-Medium';
}

.iphone-circle-btn {
	height: 60px;
	display: inline-block;
	border-radius: 50%;
	background-color: #fff;
	font-size: 50px;
	padding-top: 5px;
	width: 60px;
	text-decoration: none;
	color: #000;
	margin: 20px auto 0px auto;
}

.triangle-container-second {
	background: url('../img/triangles-up-test.png');
	background-size: cover;
	background-position: bottom;
	height: 207px;
	text-align: center;
	padding-top: 70px;
	position: relative;
	top: 15px;
}

#our-team .container {
	text-align: center;
    position: relative;
	z-index: 500;
}



#our-team .container h2 {
    font-size: 24px;
    line-height: 29px;
    color: #2980b9;
    margin-bottom: 24px;
    text-transform: uppercase;
    font-weight: 800;
    font-family: 'Raleway-Bold';
}

/* css for border-bottom less than full width from https://www.steckinsights.com/shorten-length-border-bottom-pure-css/ */

#our-team .container h2:after {
    content: ""; /* This is necessary for the pseudo element to work. */ 
    display: block; /* This will put the pseudo element on its own line. */
    margin: 0 auto; /* This will center the border. */
    width: 30px; /* Change this to whatever width you want. */
    padding-top: 10px; /* This creates some space between the element and the border. */
    border-bottom: 5px solid  #2980b9; /* This creates the border. Replace black with whatever color you want. */
}

.our-team-text {
	font-size: 12px;
    line-height: 16px;
	color: #2980b9;
	max-width: 340px;
	display: inline-block;
	margin-bottom: 100px;
	font-family: 'Raleway-Thin';
}

.team {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
}

.team-1 {
	background-image: url('../img/team1.jpg');
	width: 280px;
	height: 326px;
	background-size: cover;
	background-position: center;
	position: relative;
	z-index: 20;
	cursor: pointer;
}

.team-2 {
	background-image: url('../img/team-2.png');
	width: 263px;
	height: 306px;
	background-size: cover;
	background-position: center;
	position: relative;
	z-index: 20;
	cursor: pointer;
}

.team-3 {
	background-image: url('../img/team-3.png');
	width: 265px;
	height: 265px;
	background-size: cover;
	background-position: center;
	position: relative;
	z-index: 20;
	cursor: pointer;
}

.team-4 {
	background-image: url('../img/team-4.png');
	width: 264px;
	height: 307px;
	background-size: cover;
	background-position: center;
	position: relative;
	z-index: 20;
	cursor: pointer;
}

.social-icons-team {
	display: flex;
	width: 100%;
	height: 60px;
	justify-content: space-around;
	margin-top: 50px;
	position: relative;
	z-index: 400;
}


.white-strip {
	height: 124px;
	width: 100%;
	position: relative;
	top: -250px;
	background-color: #ffffff;
	z-index: 10;
}

/* Our Offices */

#offices {
	background-image: url('../img/offices-bg.png');
	background-size: cover;
	background-position: center;
	position: relative;
	top: -295px;
	z-index: 1;
	height: 1288px;
	width: 100%;
	}
	
.downward-triangle-container-two {
	background: url('../img/downward-triangle.png');
	background-size: cover;
	background-position: bottom;
	height: 211px;
	position: relative;
	top: 145px;
}

#offices .container {
	text-align: center;
	position: relative;
	top: 160px;
}


#offices .container h2 {
    font-size: 24px;
    line-height: 29px;
    color: #ffffff;
    margin-bottom: 24px;
    text-transform: uppercase;
    font-weight: 800;
    font-family: 'Raleway-Bold';
}

/* css for border-bottom less than full width from https://www.steckinsights.com/shorten-length-border-bottom-pure-css/ */

#offices .container h2:after {
    content: ""; /* This is necessary for the pseudo element to work. */ 
    display: block; /* This will put the pseudo element on its own line. */
    margin: 0 auto; /* This will center the border. */
    width: 30px; /* Change this to whatever width you want. */
    padding-top: 10px; /* This creates some space between the element and the border. */
    border-bottom: 5px solid  #ffffff; /* This creates the border. Replace black with whatever color you want. */
}

.our-offices-text {
	font-size: 12px;
    line-height: 16px;
	color: #ffffff;
	max-width: 340px;
	display: inline-block;
	margin-bottom: 100px;
	font-family: 'Raleway-Thin';
}

.atlas {
	background: url('../img/world-atlas.png');
	background-position: center;
	position: relative;
	width: 100%;
	height: 400px;
}


#usa {
	background: url('../img/usa.png')  no-repeat;
	position: relative;
	top: 150px;
    right: 120px;
	width: 59px;
	height: 30px;
	display: inline-block;
}

#france {
	background: url('../img/france.png') no-repeat;
	position: relative;
	top: 125px;
    left: 30px;
	width: 87px;
	height: 30px;
	display: inline-block
}

#egypt {
	background: url('../img/egypt.png') no-repeat;
	position: relative;
	top: 175px;
    right: 20px;
	width: 76px;
	height: 30px;
	display: inline-block
}

.triangle-container-third {
	background: url('../img/triangles-up-test.png');
	background-size: cover;
	background-position: bottom;
	height: 207px;
	text-align: center;
	margin-top: 50px;
	padding-top: 85px;
	position: relative;
	bottom: 45px;
}

.container-position {
	position: relative;
	bottom: 45px;
	max-width: 1180px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
	padding: 30px 20px;
	text-align: center;
}

.container-position h2 {
	font-size: 24px;
    line-height: 29px;
    color: #2980b9;
    margin-bottom: 24px;
    text-transform: uppercase;
    font-weight: 800;
	font-family: 'Raleway-Bold';
}

/* css for border-bottom less than full width from https://www.steckinsights.com/shorten-length-border-bottom-pure-css/ */

.container-position h2:after {
    content: ""; /* This is necessary for the pseudo element to work. */ 
    display: block; /* This will put the pseudo element on its own line. */
    margin: 0 auto; /* This will center the border. */
    width: 30px; /* Change this to whatever width you want. */
    padding-top: 10px; /* This creates some space between the element and the border. */
    border-bottom: 5px solid  #2980b9; /* This creates the border. Replace black with whatever color you want. */
}

.flex-container-clients {
	display: flex;
	justify-content: space-between;
	align-content: flex-start;
}
.flex-container-clients img {
	cursor: pointer;
}

hr.style-one {
    border: 0;
    height: 1px;
    background: #76a5d3;
    background-image: linear-gradient(to right, #76a5d3, #76a5d3, #76a5d3);
}

.triangle-logo:after{
	content: ""; /* This is necessary for the pseudo element to work. */ 
    display: block; /* This will put the pseudo element on its own line. */
    width: 0;
	height: 0;
	border-style: solid;
	border-width: 18px 15px 0 15px;
	border-color: #76a5d3 transparent transparent transparent;
	position: relative;
	top: 27px;
	margin: 0px auto;
}

.review-contents {
	max-width: 875px;
	margin: 40px auto 0px auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 132px;
}
.review-text {
	padding: 0px 50px;
	font-size: 20px;
	line-height: 28px;
	font-family: 'Raleway-Light';
	font-weight: 200;
}

/* Contact Us Footer */

#contact-us {
	background-image: url('../img/contact-bg.png');
	background-size: cover;
	background-position: center;
	position: relative;
	height: 770px;
	width: 100%;
	top: 30px;
}

.downward-triangle-container-three {
	background: url('../img/downward-triangle.png');
	background-size: cover;
	background-position: center;
	height: 211px;
	position: relative;
	top: 18px;
}


#contact-us .container {
	text-align: center;
	position: relative;
	top: 40px;
}


#contact-us .container h2 {
    font-size: 24px;
    line-height: 29px;
    color: #ffffff;
    margin-bottom: 24px;
    text-transform: uppercase;
    font-weight: 800;
    font-family: 'Raleway-Bold';
}

/* css for border-bottom less than full width from https://www.steckinsights.com/shorten-length-border-bottom-pure-css/ */

#contact-us .container h2:after {
    content: ""; /* This is necessary for the pseudo element to work. */ 
    display: block; /* This will put the pseudo element on its own line. */
    margin: 0 auto; /* This will center the border. */
    width: 30px; /* Change this to whatever width you want. */
    padding-top: 10px; /* This creates some space between the element and the border. */
    border-bottom: 5px solid  #ffffff; /* This creates the border. Replace black with whatever color you want. */
}

.contact-us-text {
	font-family: 'Raleway-Thin';
	font-size: 12px;
    line-height: 17px;
	color: #fafcfe;
	max-width: 340px;
	display: inline-block;
	margin-bottom: 60px;
	letter-spacing: .5px;
}

.contact-us-flex-container {
	display: flex;
	justify-content: space-between;
	align-content: flex-start;
}

.contact-us-flex-container img {
	cursor: pointer;
}

.bottom-text {
	text-align: center;
	color: white;
	margin-top: 85px;
	font-family: 'Raleway-Thin';
	font-size: 14px;
	line-height: 14px;
	letter-spacing: .5px;
	color: #fafcfe;
}

/* Animation Effects */

.js-wp-1 {
	opacity: 0;
	animation-delay: .5s;
}

.js-wp-1.animated {
	opacity: 1;
	animation-delay: .5s;
}

.js-wp-2 {
	opacity: 0;
	animation-delay: .5s;
}

.js-wp-2.animated {
	opacity: 1;
	animation-delay: .5s;
}

.js-wp-3 {
	opacity: 0;
	animation-delay: 1s;
}

.js-wp-3.animated {
	opacity: 1;
	animation-delay: 1s;
}

.project-info-hide {
	display: none;
}

.project-info-show {
	display: block;
	margin-bottom: 20px;
/*	background: linear-gradient(rgba(41,128,185, 0.6));*/
	position: relative;
	z-index: 20;
}

.overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	top: 0;
	background-color: linear-gradient(rgba(41,128,185, 0.6));
	overflow: hidden;
	width: 375px;
	height: 200px;
	padding: 60px 20px 20px 20px;
	z-index: 10;
	background: -moz-linear-gradient(top, rgba(41,128,185, 0.6), rgba(41,128,185, 0.6),rgba(41,128,185, 0.6), rgba(41,128,185, 0.6)); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(41,128,185, 0.6), rgba(41,128,185, 0.6),rgba(41,128,185, 0.6), rgba(41,128,185, 0.6)); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(41,128,185, 0.6), rgba(41,128,185, 0.6),rgba(41,128,185, 0.6), rgba(41,128,185, 0.6)); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.overlay-team {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	top: 0;
	background-color: linear-gradient(rgba(41,128,185, 0.6));
	overflow: hidden;
	width: 280px;
	height: 326px;
	padding: 60px 20px 20px 20px;
	z-index: 300;
	background: -moz-linear-gradient(top, rgba(41,128,185, 0.6), rgba(41,128,185, 0.6),rgba(41,128,185, 0.6), rgba(41,128,185, 0.6)); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(41,128,185, 0.6), rgba(41,128,185, 0.6),rgba(41,128,185, 0.6), rgba(41,128,185, 0.6)); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(41,128,185, 0.6), rgba(41,128,185, 0.6),rgba(41,128,185, 0.6), rgba(41,128,185, 0.6)); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.team-info-hide {
	display: none;
}

.team-info-show {
	display: block;
/*	background: linear-gradient(rgba(41,128,185, 0.6));*/
	position: relative;
}
  
  

/*   MEDIA QUERIES  */


@media only screen and (max-width: 1165px) {

	.iphone-design {
		justify-content: space-around;
	}

	.iphone-design div {
		margin-bottom: 20px;
	}

	.col-4-app {
		padding: 0px 50px;
	}
	
	.team {
		width: 800px;
		justify-content: space-around;
		align-items: center;
		margin: auto;
	}

}

@media only screen and (max-width: 1000px) {

	#google, #booking {
		display: none;
	}

}

@media only screen and (max-width: 780px) {	

	.team {
		width: 580px;
	}

	#dropbox  {
		display: none;
	}

	/*   NAV BAR */

	.navbar {
		overflow: hidden;
		position: absolute;
		right: 30px;
		top: 50px;
		display: block;
		z-index: 1000;
	}

	.burger-nav {
		background: url('../img/hamburger.png') no-repeat center;
		display: block;
		height: 33px;
		width: 40px;
		cursor: pointer;
		float: right;
		margin-bottom: 10px;
	}

	.container nav ul {
		height: 0;
		overflow: hidden;
		background: #282828;
		border-radius: 5px;
	}

	.container nav ul.open {
		height: auto;
		clear: both;
	}

	.container nav ul li {
		float: none;
		text-align: right; 
		width: auto;
		display: block;
		font-size: 18px;
	}

	.container nav ul li a {
		color: white;
		display: block;
		padding: 5px 10px;
	}


}

@media only screen and (max-width: 580px) { 

	.atlas {
		width: 500px;
	}
	
	.col-4-app {
		display: block;
		width: 100%;
		margin-bottom: 5px;
	}

	.team {
		width: 400px;
	}

	.review-text {
		font-size: 18px;
		line-height: 22px;
		padding: 0px 20px;
	}

}

@media only screen and (max-width: 480px) { 

	.team {
		width: 360px;
	}

	#groupon {
		display: none;
	}

	.review-text {
		font-size: 14px;
		line-height: 18px;
	}

	.review-person{
		font-size: 12px;
		line-height: 16px;
	}

	.contact-us-flex-container {
		flex-wrap: wrap;
	}

	.contact-us-flex-container img {
		margin-bottom: 20px;
	}

	.team-1 {
		margin-bottom: 20px;
	}

	.team-2 {
		margin-bottom: 20px;
	}

	.team-3 {
		margin-bottom: 20px;
	}
}