/*--------------------------------------------------------------------------
   


	LESS-based responsive grid system

	0. YUI Library is used for CSS reset (http://yuilibrary.com/yui/docs/cssreset/)
	1. Body
	2. Typography
	3. Pages
		3.0. Common Elements
		3.1. Navigation
		3.2. Header
		3.3. Home
		3.4. About
		3.5. Works
		3.6. Shop
		3.7. Archive (Blog)
		3.8. Contact
		3.9. Footer
	4. jQuery Plugins
		4.1. iosSlider
		4.2. Flexslider


--------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------
	1. Body
--------------------------------------------------------------------------*/

body {
	color: #111;
	font-family: Arial, sans-serif;
	font-size: 14px;
	line-height: 28px;
	-webkit-font-smoothing: antialiased;
	/* Fix for webkit rendering */
	-webkit-text-size-adjust: 100%;
	margin:0;
}

@media screen and (max-width: 767px) { 
	body {
		font-size: 12px;
		line-height: 23px;
	}
}


/*temporary solution*/
/*
.topbar {
	display: none !important;
}

#menu-mobile-wrapper {
	display: none !important;
}
*/


/*--------------------------------------------------------------------------
	2. Typography
--------------------------------------------------------------------------*/

/* Headings */
h1,
h2,
h3,
h4,
h5,
h6 { font-weight: bold; font-family: 'Yantramanav', sans-serif;}


/* Links */
a,
a:visited {
	color:#1d607d;
	text-decoration: none;
	outline: 0;
}

a:hover,
a:focus { color: #1d607d;}
p a,
p a:visited { color: #1d607d; line-height: inherit; }


/* Visibility */
.hide { display: none !important; }


/* Selection Highlighted Text */
::selection {
	background: #1d607d;
	color: white;
	text-shadow: none;
}

::-moz-selection {
	background: #1d607d;
	color: white;
	text-shadow: none;
}


/* Formatting */
em,
i,
.italic { font-style: italic; }
b, strong { font-weight: bold; }

.underline {
	display: inline-block;
	padding-bottom: 4px;
	border-bottom: 1px solid #999;
}


/* Colors */
.font-color-primary { color: #1d607d; }
.background-color-primary { background: #1d607d; }

.font-color-secondary { color: #a33; }
.font-color-black { color: black; }
.font-color-white { color: white; }
.background-color-white { background: white; }
.mt-0 {margin-top:0 !important;}
.mt-10  {margin-top:10px !important;}
.mb-30 {margin-bottom:30px !important;;}
.pl-15 {padding-left:15px !important; }
.img-border {border:1px solid #1d607d;}

/*--------------- Devices --------------*/

.browser {
  background: url(../images/device-browser.svg) no-repeat;
  background-size: 100% auto; }
  .browser .inside {
    padding: 7% 6% 6% 1.6%; }

.browser,
.newbrowser {
  width: 100%;
  height: auto; }
  .browser .inside,
  .newbrowser .inside {
    width: 100%;
    height: auto; }

.newbrowser > div {
  border-top: 3em solid rgba(230, 230, 230, 0.7);
  box-shadow: 0 0.1em 1em 0 rgba(0, 0, 0, 0.4);
  position: relative;
  border-radius: 8px 8px 0 0;
  background-color: #fff; }
  .newbrowser > div:before, .newbrowser > div:after {
    display: block;
    position: absolute;
    content: ''; }
  .newbrowser > div:before {
    top: -1.75em;
    left: 1em;
    width: 0.5em;
    height: 0.5em;
    border-radius: 50%;
    background-color: #fff;
    box-shadow: 0 0 0 2px #fff, 1em 0 0 2px #fff, 2em 0 0 2px #fff; }
  .newbrowser > div:after {
    top: -2.4em;
    left: 7.5em;
    width: calc(100% - 12em);
    height: 1.8em;
    border-radius: 2px;
    background-color: white; }
  .newbrowser > div > figure {
  	margin:0;
    display: block; }
    .newbrowser > div > figure:before, .newbrowser > div > figure:after {
      display: block;
      position: absolute;
      content: ''; }
    .newbrowser > div > figure:before {
      top: -2.15em;
      right: .5em;
      width: 1.5em;
      height: 0.3em;
      border-radius: .5em;
      background-color: #fff;
      box-shadow: 0 0 0 0 #fff, 0 .5em 0 0 #fff, 0 1em 0 0 #fff; }

.ipad {
  background: url(../images/device-ipad.svg) no-repeat;
  background-size: 100% auto; }
  .ipad .inside {
    padding: 8% 10.5%; }

.ipad,
.newipad {
  width: 100%;
  height: auto; }
  .ipad .inside,
  .newipad .inside {
    width: 100%;
    height: auto; }

.newipad > div {
  box-shadow: 0 0.1em 1em 0 rgba(0, 0, 0, 0.4);
  border-radius: 15px;
  background-color: #f2f2f2;
  position: relative;
  padding: 3.5em 4.5em; }
  .newipad > div:before, .newipad > div:after {
    display: block;
    position: absolute;
    content: ''; }
  .newipad > div:before {
    top: calc(50% - .1em - 2px);
    left: 2em;
    width: .2em;
    height: .2em;
    border-radius: 50%;
    background-color: #b3b3b3;
    border: 2px solid #e0e0e0; }
  .newipad > div:after {
    top: calc(50% - 1em - 1px);
    right: 1.3em;
    width: 2em;
    height: 2em;
    border-radius: 1em;
    border: 1px solid white;
    background: #e5e5e5;
    background: linear-gradient(to bottom, #e5e5e5 0%, #f2f2f2 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e5e5e5', endColorstr='#f2f2f2',GradientType=0 ); }
  .newipad > div > figure {
    display: block;
    border: 1px solid black; }

.iphone {
  background: url(../images/device-iphone.svg) no-repeat;
  background-size: 100% auto; }
  .iphone .inside {
    padding: 27.9% 11% 0% 11%; }

.iphone,
.newiphone {
  width: 100%;
  height: auto; }
  .iphone .inside,
  .newiphone .inside {
    width: 100%;
    height: auto; }

.newiphone > div {
  box-shadow: 0 0.1em 1em 0 rgba(0, 0, 0, 0.4);
  border-radius: 25px;
  background-color: #f2f2f2;
  position: relative;
  padding: 4em .8em;
  }
  .newiphone > div:before, .newiphone > div:after {
    display: block;
    position: absolute;
    content: ''; }
  .newiphone > div:before {
    background-color: #b3b3b3;
    border: 2px solid #e0e0e0; }
  .newiphone > div:before {
    top: 1.2em;
    left: calc(50% - .15em - 2px);
    width: .3em;
    height: .3em;
    border-radius: 50%; }
  .newiphone > div:after {
    bottom: .8em;
    left: calc(50% - .95em - 1px);
    width: 1.9em;
    height: 1.9em;
    border-radius: 1em;
    border: 1px solid white;
    background: #e5e5e5;
    background: linear-gradient(to bottom, #e5e5e5 0%, #f2f2f2 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e5e5e5', endColorstr='#f2f2f2',GradientType=0 ); }
  .newiphone > div > figure {
    display: block;
    border: 0px solid black;
	margin:0;}
    .newiphone > div > figure:before, .newiphone > div > figure:after {
      display: block;
      position: absolute;
      content: ''; }
    .newiphone > div > figure:before {
      top: 2.2em;
      left: calc(50% - 1.3em - 2px);
      width: 2.6em;
      height: .3em;
      background-color: #b3b3b3;
      border: 3px solid #e0e0e0;
      border-radius: .5em; }
    .newiphone > div > figure:after {
      top: 4em;
      left: -.2em;
      width: .1em;
      height: 2em;
      background-color: #f2f2f2;
      box-shadow: 0 0 0 0 #f2f2f2, 0 3em 0 0 #f2f2f2, 0 6em 0 0 #f2f2f2; }

.watch {
  background: url(../images/device-iwatch.svg) no-repeat;
  width: 100%;
  height: auto;
  background-size: 100% auto; }
  .watch .inside {
    padding: 39% 8%;
    width: 100%;
    height: auto;
    border-radius: 30px; }

.desktop {
  background: url(../images/device-imac.svg) no-repeat;
  width: 100%;
  height: auto;
  background-size: 100% auto;
}

.desktop .inside {
    width: 100%;
    height: auto;
    padding: 2.5% .8% 5.5% 1%;
}


/* Global parrameters and sizes for devices */
.newiphone {
    width: 234px;
    height: 482px;
    position: absolute;
    right: 0px;
    top: 0;
}

/* HeroShots */ 

.image_with_perspective {
    -o-transform: perspective(500px) rotateY(10deg);
    -ms-transform: perspective(500px) rotateY(10deg);
    -moz-transform: perspective(500px) rotateY(10deg);
    -webkit-transform: perspective(500px) rotateY(10deg);
    transform: perspective(500px) rotateY(10deg);
    height: 500px;
    position: absolute;
    left: 90px;
    top: 0;
    box-shadow: -5px 5px 20px rgba(0,0,0,0.33);
}

/*--- Label near Device ---*/
.landing_all_devices {
	width: 1024px;
	position: relative;
	margin: 0 auto;
}

.landing_all_devices .blue-bar {
    position: absolute;
    right: 0px;
    background: #fff;
    color: #1a1a1a;
    font-size: 16px;
    top: 75px;
    font-family: 'Yantramanav', sans-serif;
    text-transform: uppercase;
    padding: 15px 10px;
    font-weight: bold;
    line-height: 22px;
    box-shadow: 1px 0px 5px rgba(0,0,0,0.25);
}

.landing_all_devices a {
	display: block;
}

.landing_all_devices .blue-bar strong {
	display:block;
	text-transform: initial;
	color: #1d607d;
}

.landing_all_devices a img{
  	transition: all .5s ease-in-out;
}

.landing_all_devices a:hover img{
  	transform: scale(1.025); 
}

/*-- Section With All Devices --*/
.landing_all_devices .ipad {
    width: 452px;
    height: 345px;
    position: absolute;
    right: 0px;
    bottom: 0px;
}

.landing_all_devices .desktop {
    width: 679px;
    height: 564px;
    position: relative;
}

.landing_all_devices .desktop .blue-bar {
    width: 270px;
    right: -270px;
    font-size:18px;
    line-height: 24px;
}

.landing_all_devices .desktop .blue-bar strong {
	font-size: 21px;
}

.landing_all_devices .iphone {
    width: 132px;
    height: 262px;
    position: absolute;
    right: 65px;
    bottom: -20px;
}

.landing_all_devices .iphone .blue-bar {
    width: 160px;
    right: -155px;
    font-size:16px;
    top: 100px;
}

.landing_all_devices .iphone .inside {
    padding-top: 28.2%;
}

.landing_all_devices .watch {
    width: 85px;
    height: 161px;
    position: absolute;
    left: 70px;
    bottom: -25px;
}

.landing_all_devices .watch .blue-bar {
	width: 150px;
    left: -148px;
    font-size: 16px;
    top: 100px;
    padding: 10px 10px;
    text-align: right;
    top: 46px;
}

.landing_all_devices .watch .blue-bar strong {
    font-size: 15px;
}

.landing_all_devices * {
	box-sizing: border-box;
    position: relative;
}

.landing_all_devices .watch .inside {
	padding: 41% 5%;
    width: 94%;
    height: auto;
    border-radius: 30px;
    padding-right: 3%;
}

.all_services .one_service {
	text-align: center;
	font-size: 16px;
	font-family: 'Yantramanav', sans-serif;
}

.all_services .one_service i {
	font-size: 46px;	
}

.all_services .one_service strong {
	text-transform: uppercase;
	font-size: 18px;
	display: block;
}

/*--------------------------------------------------------------------------
	3. Pages
--------------------------------------------------------------------------*/

	/*---------------------------------------------------
			3.0 Common Elements
	---------------------------------------------------*/

	/* Responsive images */
	img { max-width: 100%; }


	/* Used to remove whitespace below an image */
	.remove-line-height { line-height: 0; }


	/* Vertical spacing */
	.padding-vertical { 
		padding-top: 50px; 
		padding-bottom: 50px;  
	}


	/* Used frequently to apply a light border on top */
	.border-top {
		border-top: 1px solid #f5f5f5;
		padding-top: 30px;
		margin-top:0;
	}


	/* Featured image */
	.post img.featured { margin-bottom: 50px; }


	/* Buttons */
	button,
	.button,
	a.button {
		color: white;
		background: #1d607d;
		font-size: 14px; 
		font-weight: bold; 
		text-align: center;
		padding: 20px 25px 18px 25px;
		border-bottom: 2px solid #11ddcc; 
		cursor: pointer;
		display: inline-block;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-border-radius: 4px;
		-moz-border-radius: 4px;
		-ms-border-radius: 4px;
		-o-border-radius: 4px;
		border-radius: 4px;
	}

		button.small,
		.button.small,
		a.button.small {
			font-size: 14px;
			line-height: 24px;
			padding: 16px 24px;
			-webkit-border-radius: 3px;
			-moz-border-radius: 3px;
			-ms-border-radius: 3px;
			-o-border-radius: 3px;
			border-radius: 3px;
		}

		button.full,
		.button.full,
		a.button.full {
			display: block;
			width: 100%;
			-webkit-border-radius: 5px;
			-moz-border-radius: 5px;
			-ms-border-radius: 5px;
			-o-border-radius: 5px;
			border-radius: 5px;
			padding: 30px 40px 26px 40px;
			border-bottom: 4px solid #11ddcc; 
		}

			button:hover,
			.button:hover,
			a.button:hover { background: #12e5d3; }

			button.black,
			.button.black,
			a.button.black {
				color: white;
				background: #000; 
				border-color: #111; 
			}

			button.black:hover,
			.button.black:hover,
			a.button.black:hover {
				color: #1d607d;
				background: #111;
			}


	/* Forms */
	form p,
	label,
	legend {
		font-size: 15px;
		line-height: 24px;
	}

	label {
		display: block;
		color: #111;
		font-size: 13px;
		line-height: 23px;
		margin: 20px 0;
	}

	input[type=text],
	input[type=url],
	input[type=tel],
	input[type=number],
	input[type=color],
	input[type=email], 
	input[type=password], 
	textarea,
	select {
		width: 100%;
		padding: 20px 25px;
		color: #111;
		margin: 0 0 15px 0;
		border: 1px solid #ccc;
		outline: none;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

		input[type=text]:focus,
		input[type=url]:focus,
		input[type=tel]:focus,
		input[type=number]:focus,
		input[type=color]:focus,
		input[type=email]:focus, 
		input[type=password]:focus, 
		textarea:focus,
		select:focus {
			color: #1d607d;
			border: 1px solid #1d607d;
		}


	/* Placeholder */
	::-webkit-input-placeholder { color: #999; }
	::-moz-placeholder { color: #999; }
	:-ms-input-placeholder { color: #999; }
	input:-moz-placeholder { color: #999; }


	/* Input - submit */
	input[type=submit] {
		border: none; 
	}


	/* Required */
	span.required { color: #1d607d; }


	/* Page elements */
	.page p.title-desc {
		color: #999;
		font-weight: bold;
		margin-top: 0;
	}

	.page h4 {
		text-transform: uppercase;
	}

	.page h4 {
		text-transform: uppercase;
	}

	.page p.page-desc {
		color: #222;
	    font-size: 21px;
	    line-height: 28px;
	    font-weight: 300;
	    margin-top: 0;
	    margin-bottom: 50px;
	}

		@media screen and (max-width: 767px) { 
			.page p.page-desc {
				font-size: 24px;
				line-height: 42px;
			}
		}

		@media screen and (max-width: 479px) { 
			.page p.page-desc {
				font-size: 20px;
				line-height: 36px;
			}
		}

	.page p { margin-top: 30px; }

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

	.page .element_preview:after {
		display:block;
		clear: both;
		content: "";
	}

	.page .element_preview img{
		display:block;
	}

	.page .video_prot_prev {
		padding: 0;
		margin-bottom: 0;
		background: #f2f2f2;
		float: left;
		-webkit-box-shadow: 0px 0px 25px 0px rgba(21, 179, 241, 0.2);
		-moz-box-shadow: 0px 0px 25px 0px rgba(21, 179, 241, 0.2);
		box-shadow: 0px 0px 25px 0px rgba(21, 179, 241, 0.2);
		border: 1px solid #7ed5f7;
		border-radius: 5px;
	}

	.page .video_prot_prev img{
		display:block;
	}

	.page .video_prot_prev video {
		display: block;
		margin: 0 auto;
		max-width: 100%;
		height: auto;
		overflow: hidden;
		margin-top: 0px;
		width: 285px;
		min-height:510px;
	}

	.page .video_prot_prev.big video {
		display: block;
		margin: 0 auto;
		max-width: 100%;
		height: auto;
		overflow: hidden;
		margin-top: 0px;
		width: 100%;
		min-height: 600px;
		min-width: 100%;
	}

	/* Sidebar (sticky) */
	.sidebar { padding-bottom: 20px; }

		.sidebar.sticked {
			background: white; 
			display: none;
			padding: 0 20px 20px 20px;
		}

			.sidebar.sticked h3.border-top { border-top: 0; }


	/* Page Navigation */
	.nav-pages {
		font-size: 11px;
		margin-top: 30px;
	}

		.nav-pages a.link-prev,
		.nav-pages a.link-next {
			color: #555;
			text-transform: uppercase;
			letter-spacing: 2px;
			text-align: center;
			padding: 25px 0;
			display: block;
			width: 50%;
			float: left;
			-webkit-box-sizing: border-box;
			-moz-box-sizing: border-box;
			box-sizing: border-box;
		}

			.nav-pages a.link-prev span,
			.nav-pages a.link-next span {
				display: inline-block;
				padding-bottom: 4px;
				border-bottom: 1px solid #555555;
			}

			.nav-pages a.link-prev div { padding-right: 33.33333333%; }
			
			@media screen and (min-width: 1300px) { 
				.nav-pages a.link-prev div { padding-right: 50%; }
			}

			@media screen and (max-width: 959px) { 
				.nav-pages a.link-prev div { padding-right: 0%; }
			}

			.nav-pages a.link-next div { padding-left: 33.33333333%; }

			@media screen and (min-width: 1300px) { 
				.nav-pages a.link-next div { padding-left: 50%; }
			}

			@media screen and (max-width: 959px) { 
				.nav-pages a.link-next div { padding-left: 0%; }
			}

			.nav-pages a:hover { color: #1d607d; }

				.nav-pages a:hover span { border-bottom-color: #1d607d; }

			.container .nav-pages a.link-prev,
			.container .nav-pages a.link-next { padding: 20px 0; }
			.container .nav-pages a.link-prev { text-align: left; }
			.container .nav-pages a.link-next { text-align: right; }


	/*---------------------------------------------------
			3.1 Navigation
	---------------------------------------------------*/

	ul#nav {
		font-size: 12px;
		line-height: 21px;
		font-weight: bold;
		overflow: visible;
		padding:0;
	}

	@media screen and (min-width: 768px) and (max-width: 959px) { 
		ul#nav {
			font-size: 11px;
			line-height: 21px;
		}
	}

	@media screen and (max-width: 767px) { 
		ul#nav { display: none; }
	}

	ul#nav li { position: relative; }

		ul#nav li ul a {
			color: #555;
			padding: 25px 0;
			border-bottom: 1px solid #222;
		}

	ul#nav > li {
		zoom: 1;
		width: 33%;
		display: inline;
		float: left;
	}

		ul#nav > li a {
			color: #777;
			display: block;
			padding: 19px 15px 15px 15px;
			margin: 0;
		}

			ul#nav > li a span.count {
				color: #999;
				display: block;
				font-size: 12px;
			}

		ul#nav > li a:hover {
			color: white;
			border-bottom: none;
		}

			ul#nav > li a:hover span.count { color: white; }

	ul#nav > li:hover,
	ul#nav > li.hover {
		background: #111;
		margin: 0;
	}

		ul#nav > li:hover a,
		ul#nav > li.hover a {
			color: white;
			border-bottom: none;
		}

			ul#nav > li:hover a span.count,
			ul#nav > li.hover a span.count { color: white; }

		ul#nav > li:hover ul li:last-child > a,
		ul#nav > li.hover ul li:last-child > a,
		ul#nav > li:hover ul li.last-child > a,
		ul#nav > li.hover ul li.last-child > a { border-bottom: none; }

	ul#nav > li.hasChild:hover a,
	ul#nav > li.hasChild.hover a { border-bottom: 1px solid #222; }

	ul#nav li ul {
		background: #111;
		width: 100%;
		visibility: hidden;
		position: absolute;
		z-index: 10;
		top: 100%;
		left: 0px;
	}

		ul#nav li:hover > ul,
		ul#nav li.hover > ul {
			visibility: visible;
		}
		
		ul#nav li ul a:hover,
		ul#nav li ul a:focus {
			color: #1d607d;
			border-bottom: 1px solid #222;
		}

		ul#nav li ul li:last-child > a,
		ul#nav li ul li.last-child > a { border-bottom: none; }

	ul#nav > li ul ul {
		position: absolute;
		top: 0;
		left: 100%;
	}


	/* Mobile Menu */
	#menu-mobile-wrapper { display: none; }

	@media screen and (max-width: 767px) { 
		#menu-mobile-wrapper { display: block; }
	}

	#menu-mobile-wrapper #toggle-menu {
		cursor: pointer;
		color: #222;
		display: block;
		font-size: 15px;
		line-height: 25px;
		padding: 20px 0 20px 30px;
		background: url('../images/menu_open.png') no-repeat left center;
		border-bottom: 1px solid #f5f5f5;
	}

	#menu-mobile-wrapper.toggle-open #toggle-menu { background-image: url('../images/menu_closed.png'); }
	#menu-mobile-wrapper ul#menu-mobile {
		display: none;
		margin-bottom: 15px;
		overflow: hidden;
	}

		#menu-mobile-wrapper ul#menu-mobile li {
			font-size: 12px;
			line-height: 21px;
			display: block;
		}

			#menu-mobile-wrapper ul#menu-mobile li a {
				color: #444;
				display: block;
				padding: 12px 0;
				border-bottom: 1px solid #f5f5f5;
			}

			#menu-mobile-wrapper ul#menu-mobile li a:hover { color: #1d607d; }


	/*---------------------------------------------------
			3.2 Header
	---------------------------------------------------*/
	
	#header .logo-wrap {
		padding: 0 0 0 0;
		border-top: 1px solid #f5f5f5;
	}

	#header h1 {
		font-size: 24px;
		line-height: 34px;
		font-weight: bold;
		margin: 0;
		float: left;
		margin-right: 20px;
	}

	#header h1 a {
		font-size: 106px;
		line-height: 84px;
		float: left;
		margin-right: 20px;
		color: #1a1a1a;
	}

	#header p.site-desc {
		color: #777;
		font-size: 24px;
		line-height: 28px;
		margin: 0;
		float: left;
		font-weight: normal;
	}

	#header p.site-desc:after {
		clear: right;
		content: "";
	}

	#works-p #header .logo-wrap .container {
		padding: 60px 0;
		background: url("../images/banners/works-banner.svg") no-repeat right center;
	}

	#about-p #header .logo-wrap .container {
		padding: 60px 0;
		background: url("../images/banners/about-banner.svg") no-repeat right center;
	}

	#contact-p #header .logo-wrap .container {
		padding: 60px 0;
		background: url("../images/banners/contacts-banner.svg") no-repeat right center;
	}

	#project-p #header .logo-wrap .container{
		padding: 60px 0;
	}

	#project-p #header p.site-desc strong{
		color: #23EEDE;
		font-weight:100;
	}

	#project-p #header .logo-wrap .container {
	    padding: 20px 0 15px 0;
	}

	#project-p #header h1 {
	    font-size: 24px;
	    line-height: 34px;
	    font-weight: bold;
	    margin: 0;
	    float: left;
	    margin-right: 20px;
	}

	#project-p #header h1 a {
	    font-size: 63px;
	    line-height: 54px;
	    float: left;
	    margin-right: 20px;
	    color: #1a1a1a;
	}

	#project-p #header p.site-desc {
	    color: #999;
	    font-size: 16px;
	    line-height: 17px;
	    margin: 0;
	    float: left;
	    font-weight: normal;
	}


	/*---------------------------------------------------
			3.3 Home
	---------------------------------------------------*/
	
	/* Recent Posts */
	.box-recent h3 {
		font-size: 16px;
		line-height: 26px;
		padding: 30px 0 20px 0;
	}

		.box-recent h3 a { color: #999; }

	.box-recent a.permalink {
		display: block;
		border-top: 1px solid #eee;
	}

		.box-recent a.permalink h4 {
			color: #444; 
			font-size: 22px;
			line-height: 36px;
			font-weight: normal;
			margin-bottom: 5px;
		}

			.box-recent a.permalink:hover h4 {
				color: #1d607d; 
			}

		.box-recent a.permalink p.meta { color: #1d607d; }

			.box-recent a.permalink p.meta span { color: #999; }

	.box-recent a.permalink:hover {
		color: #1d607d;
		border-top: 1px solid #1d607d;
	}

		.box-recent a.permalink:hover p.meta span { color: #1d607d; }
	
	.box-recent .item { padding: 20px 0; }
	
	@media screen and (max-width: 767px) { 
		.box-recent a.permalink h4 {
			font-size: 16px;
			line-height: 26px;
		}
	}
	


	/* About box */
	.box-about { 
		margin-top: 30px; 
	}

		.box-about h3 { margin-bottom: 50px; }

		.box-about p.tagline {
			font-family: 'Roboto Slab', Georgia, serif;
			font-size: 24px;
			line-height: 44px;
			font-weight: 300; 
			margin-top: 30px;
			margin-bottom: 30px;
		}

	@media screen and (max-width: 767px) { 
		.box-about p.tagline {
			font-size: 20px;
			line-height: 36px;
		}
	}


	/*---------------------------------------------------
			3.4 About
	---------------------------------------------------*/

	#about h2 { padding-top: 30px; }

	#about .services h3 {
		font-size: 32px;
		line-height: 42px;
	}

	#about .services .item { padding: 30px 0; }

	#about .services h4 {
		font-size: 16px;
		line-height: 26px;
		display: inline-block;
		padding-bottom: 5px;
		border-bottom: 1px solid #111;
	}

	#about .services p {
		font-size: 15px;
		line-height: 28px;
		margin-top: 20px;
	}

	@media screen and (max-width: 767px) {
		#about .services h4 {
			margin-top: 40px; 
		}

		#about .services p {
			font-size: 12px; 
			line-height: 24px; 
		}
	}


	/*---------------------------------------------------
			3.5 Works
	---------------------------------------------------*/
	
	#works .item { margin-bottom: 40px;

	}

	#works .item img {
		-webkit-filter: grayscale(80%);
		-webkit-transition: .25s ease-in-out;
		-moz-filter: grayscale(80%);
		-moz-transition: .25s ease-in-out;
		-o-filter: grayscale(80%);
		-o-transition: .25s ease-in-out;
		filter: grayscale(80%);
	}

	#works .item:hover img {
		-webkit-filter: grayscale(0%);
		-webkit-transition: .25s ease-in-out;
		-moz-filter: grayscale(0%);
		-moz-transition: .25s ease-in-out;
		-o-filter: grayscale(0%);
		-o-transition: .25s ease-in-out;
		filter: grayscale(0%);
	}


		#works .item h3 {
		color: #555;
	    font-size: 16px;
	    line-height: 22px;
	    font-weight: bold;
	    text-align: center;
	    margin-bottom: 5px;
	    text-transform: uppercase;
		}

		#works a.permalink:hover h3 { color: #111; }

	#works .item span.category {
    color: #777;
    display: block;
    font-size: 12px;
    line-height: 18px;
    margin-bottom: 10px;
    text-align: center;
	}

		#works a.permalink:hover span.category { color: #1d607d; }

	#works .item p.excerpt {
		font-size: 13px;
		line-height: 18px;
		margin-top: 10px;
	}

	/* Stackgrid */
	#works.stackgrid .item {
		width: 25%;
		float: left;
		margin-bottom: 0;
		position: relative;
	}

		#works.stackgrid .item img {
			width: 100%; 
		}

	@media screen and (min-width: 1600px) { 
		#works.stackgrid .item { width: 20%; }
	}

	@media screen and (min-width: 960px) and (max-width: 1599px) { 
		#works.stackgrid .item { width: 25%; }
	}

	@media screen and (min-width: 768px) and (max-width: 959px) { 
		#works.stackgrid .item { width: 33.333333%; }
	}

	@media screen and (min-width: 480px) and (max-width: 767px) { 
		#works.stackgrid .item { width: 50%; }
	}

	@media screen and (max-width: 479px) { 
		#works.stackgrid .item { width: 100%; }
	}

	#works.stackgrid .item .box-desc {
		padding: 15px 30px;
		text-align: center;
	}

	#works.stackgrid.images-only {
		/* Navigation */
		margin-top: 0;
	}

		#works.stackgrid.images-only .item .box-desc {
			display: none;
			text-align: left;
			padding: 25px 30px;
			background: url('../images/alpha/bg_alpha60.png');
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			-webkit-box-sizing: border-box;
			-moz-box-sizing: border-box;
			box-sizing: border-box;
		}
			
			#works.stackgrid.images-only .item .box-desc h3 { color: white; }

		#works.stackgrid.images-only .nav-pages { margin-top: 0; }

			#works.stackgrid.images-only .nav-pages a.link-prev,
			#works.stackgrid.images-only .nav-pages a.link-next { border-top: none; }

		#works.stackgrid.images-only a.link-prev,
		#works.stackgrid.images-only a.link-next { border-top: none; }

			#works.stackgrid .item .box-desc span.category {
				margin-bottom: 2px;
			}


	
	/* Single */
	#works.single {

	}

		
		#works.single .box-info {
			margin-bottom: 20px;
			font-size: 14px;
			line-height: 25px;
		}
			
			#works.single .box-info p.project-desc {
				color: #999; 
				font-weight: bold; 
				margin-top: 0; 
			}

			#works.single .box-info h4 {
				font-size: 11px; 
				line-height: 21px; 
				text-transform: uppercase; 
				letter-spacing: 3px; 
			}

				#works.single .box-info h4.border-top {
					padding-top: 20px;
				}

			#works.single .box-info p {
				margin-top: 15px; 
			}

			@media screen and (max-width: 767px) {
				#works.single .box-info p {
					font-size: 12px; 
					line-height: 24px; 
				}

				#header .logo-wrap {
					border-top:0;
				}

				#works .item {
					text-align: center;
				}
			}


	/*---------------------------------------------------
			3.6 Shop
	---------------------------------------------------*/
	

	/* Shop */
	#shop h2 {
		font-size: 16px; 
		line-height: 26px; 
		margin-bottom: 30px;
	}

		#shop .shop-info p {
			color: #111; 
			font-size: 13px; 
			line-height: 26px; 
			margin-top: 20px; 
		}

	
	@media screen and (min-width: 960px) {
		#shop .shop-info h2 {
			margin-bottom: 40px; 
		}

		#shop .shop-info p {
			margin-top: 40px; 
		}
	}


	#shop .cart-item {
		font-size: 12px;
		line-height: 22px;
		margin-bottom: 40px; 
	}

	#shop .cart-item .item-info {
		margin-top: 15px; 
	}

		#shop .cart-item .item-name {
			width: 55%;
			float: left; 
		}

			#shop .cart-item .item-name h4 {
				color: #aaa;
				font-weight: bold;
			}

			#shop .cart-item .item-name span.category {
				color: #999;
			}

		#shop .cart-item .item-price {
			color: #222;
			width: 30%;
			float: right;
			text-align: right;
			border-left: 1px solid #f5f5f5;
		}

			#shop .cart-item .item-price span.markdown {
				color: #aaa;
				text-decoration: line-through;
				display: block;
			}

			#shop .cart-item .item-price span.item_price {
				color: #f54;
				display: block;
			}

		#shop .cart-item a:hover .item-name h4 { 
			color: #222; 
		}

		#shop .cart-item a:hover .item-name span.category { 
			color: #999; 
		}

		#shop .cart-item a:hover .item-price { 
			border-color: #999;
		}


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

		#shop .cart-item {
			font-size: 11px;
			line-height: 21px;
		}

			#shop .cart-item .item-info {
				margin-top: 10px; 
			}

				#shop .cart-item .item-name {
					width: 100%;
					float: none;
				}

				#shop .cart-item .item-price {
					width: 100%;
					float: none;
					text-align: left;
					border-left: none;
				}
	}

	form#item-selection {
		margin-top: 30px;
		margin-bottom: 10px; 
	}

	h2.item-name {
		position: relative; 
	}

		h2.item-name span.item-price {
			color: #ff5544;
			float: right; 
		}

	#shop .sidecart {
		padding-bottom: 20px; 
	}

	#shop .sidecart span.simpleCart_quantity {
		font-weight: bold; 
	}

	#shop .sidecart h2 a:hover {
		color: #1d607d; 
	}
	
	#shop .sidecart h4 {
		color: #aaa; 
	}

		#shop .sidecart h4 a {
			display: block;
		}

		#shop .sidecart p.desc {
			color: #aaa; 
			margin-top: 20px; 
		}

	section#cart h3 { padding: 30px 0; }

		section#cart h3 a { color: #333; }

	section#cart .sidebar p.title-desc { margin-bottom: 20px; }

	#shop p.vertical-divider,
	#cart p.vertical-divider {
		color: #999;
		font-size: 16px;
		font-style: italic;
		font-weight: bold;
		text-align: center;
		padding: 15px 0;
	}
	
	/* Cart */
	.table-cart {

	}

	.cart-header {
		font-weight: bold; 
	}

		.cart-header > div {
			padding: 20px 0; 
			border-top: 1px solid #f5f5f5; 
			border-bottom: 1px solid #f5f5f5;
		}

	.product-item {
		margin-top: 20px; 
	}

		.product-item:after {
			content: "."; 
			visibility: hidden; 
			display: block; 
			height: 0; 
			clear: both;
		}

	/* Cart - for a width of 660px */
	.product-thumbnail,
	.product-name,
	.product-price,
	.product-quantity,
	.product-subtotal,
	.product-remove {
		float: left; 
	}

	.product-thumbnail {
		width: 100px; 
	}

	.product-name {
		width: 200px; 
		margin-left: 20px; 
	}

	.product-price {
		width: 80px; 
		margin-left: 20px; 
	}

	.product-quantity {
		width: 60px; 
		margin-left: 20px; 
	}

	.product-subtotal {
		width: 80px; 
		margin-left: 20px; 
	}

	.product-remove {
		width: 60px;
		margin-left: 20px; 
	}


	@media screen and (min-width: 1300px) {
		.product-name {
			width: 260px; 
		}

		.product-price {
			width: 100px; 
		}

		.product-quantity {
			width: 100px; 
		}

		.product-subtotal {
			width: 100px; 
		}

		.product-remove {
			width: 100px;
		}

	}


	#checkout {

	}

	#checkout label {
		display: block;
		color: #111;
		font-size: 13px;
		line-height: 23px;
		margin: 10px 0 6px 0;
	}

	#checkout input[type=text],
	#checkout input[type=url],
	#checkout input[type=tel],
	#checkout input[type=number],
	#checkout input[type=color],
	#checkout input[type=email], 
	#checkout input[type=password], 
	#checkout textarea,
	#checkout select {
		width: 100%;
		color: #111;
		background: #f5f5f5; 
		padding: 20px 25px;
		margin: 0 0 12px 0;
		border: 1px solid #ccc;
		outline: none;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

		#checkout input[type=text]:focus,
		#checkout input[type=url]:focus,
		#checkout input[type=tel]:focus,
		#checkout input[type=number]:focus,
		#checkout input[type=color]:focus,
		#checkout input[type=email]:focus, 
		#checkout input[type=password]:focus, 
		#checkout textarea:focus,
		#checkout select:focus {
			color: #1d607d;
			background: white; 
			border: 1px solid #1d607d;
		}


	/* Placeholder */
	#checkout ::-webkit-input-placeholder { color: #999; }
	#checkout ::-moz-placeholder { color: #999; }
	#checkout :-ms-input-placeholder { color: #999; }
	#checkout input:-moz-placeholder { color: #999; }


	/* Input - submit */
	#checkout input[type=submit] {
		border: none; 
	}


	/*---------------------------------------------------
			3.7 Archive (Blog)
	---------------------------------------------------*/
	
	#archive .entry { margin-bottom: 80px; }
	#archive .entry .box-content { padding-top: 30px; }
	


	/* Meta */
	#archive .box-meta {
		padding-top: 30px; 
	}

		#archive .box-meta span.category,
		#archive .box-meta span.date {
			color: #999;
			font-size: 12px;
			line-height: 22px;
		}
		
		#archive .box-meta span.category {
			color: #333;
			font-weight: bold;
		}

	

	/* Tags */
	#archive .entry .box-tags {
		margin-top: 30px; 
	}

	#archive .entry h4 {
		font-family: 'Roboto Slab', Georgia, serif;
		font-size: 26px;
		line-height: 40px;
		font-weight: 300; 
		margin-bottom: 28px;
	}

	#archive .entry p {
		color: #111;
		margin-top: 40px;
		font-size: 16px;
		line-height: 32px;
	}

		#archive .entry a:hover h4 { 
			color: #1d607d; 
		}

		#archive .entry a:hover p { 
			color: #111; 
		}

	#archive .entry .box-tags h5 {
	}

	#archive .entry p.tags {
		font-size: 12px; 
		line-height: 22px; 
		margin-top: 0; 
	}

		#archive .entry p.tags a {
			color: #111; 
			display: inline-block; 
			padding-bottom: 3px; 
			border-bottom: 1px solid #111; 
			margin-right: 5px; 
		}

			#archive .entry p.tags a:hover {
				color: #1d607d; 
				border-bottom: 1px solid #1d607d; 
			}

	@media screen and (max-width: 959px) { 
		#archive .entry p {
			font-size: 13px;
			line-height: 25px;
		}

		#archive .entry .box-content { border-top: none; }
	}


	/* BLockquote */
	#archive .entry blockquote {
		margin-bottom: 15px; 
	}

		#archive .entry blockquote p {
			font-family: 'Roboto Slab', Georgia, serif;
			font-size: 36px;
			line-height: 60px;
			font-style: italic; 
			font-weight: 300;
			margin-bottom: 10px;
		}

		#archive .entry blockquote footer { 
			color: #1d607d;  
			font-size: 12px; 
			line-height: 22px; 
			font-style: italic; 
			display: inline-block; 
			margin-top: 10px; 
			padding-top: 4px; 
			border-top: 1px solid #1d607d; 
		}

	@media screen and (max-width: 959px) { 
		#archive .entry blockquote p {
			font-size: 22px;
			line-height: 40px;
		}
	}


	/*---------------------------------------------------
			3.8 Contact
	---------------------------------------------------*/

	section#contact { /* Register Form */:  }

		section#contact p.title-desc { margin-bottom: 40px; }

		section#contact form { margin-bottom: 40px; }

		section#contact #contact-warning {
			color: white;
			background: #ee3a22;
			padding: 20px 25px;
			margin-bottom: 30px;
		}

		section#contact #contact-success {
			color: #1d607d;
			background: #111;
			padding: 20px 25px;
			margin-bottom: 30px;
		}

		section#contact .box-contact {
			font-size: 14px;
			line-height: 28px;
			background-size: cover;
		}

		section#contact .desc.introduce {
			font-size: 15px;
			line-height: 28px;
			background-size: cover;
		}


			section#contact .box-contact h3 {
				color: #999999;
				font-size: 14px;
				line-height: 24px;
				font-weight: normal;
				margin-bottom: 15px;
			}


			section#contact .box-contact p { margin-top: 0; }

		
		@media screen and (max-width: 767px) { 
			section#contact .box-contact {
				font-size: 12px; 
				line-height: 24px; 
				margin-bottom: 30px; 
			}
		}

		@media screen and (max-width: 479px) { 
			section#contact .box-contact {
				font-size: 11px; 
				line-height: 22px; 
			}
		}
		


		/* Map */
		section#contact #map {
			height: 350px;
			margin-bottom: 30px;
			background: url("../images/banners/map-lines-exp.svg") top center no-repeat #def9ff;
		}


	/*---------------------------------------------------
			3.9 Footer
	---------------------------------------------------*/

	#footer {
		font-size: 13px;
		line-height: 24px;
		padding: 30px 0;
		border-top:1px solid #f5f5f5;
	}

		#footer p { margin-top: 30px; }

			#footer p a { color: #1d607d; }

		#footer ul#social li {
			display: inline-block;
			float: left;
		}

			#footer ul#social li a {
				display: block;
				padding: 30px 40px 30px 0;
			}

		@media screen and (max-width: 767px) { 
			#footer ul#social {
				margin-top: 30px; 
			}
			#footer ul#social li {
				display: block;
				float: none;
			}

				#footer ul#social li a {
					display: block;
					padding: 20px 0; 
					border-top: 1px solid #eee; 
				}
		}


/*--------------------------------------------------------------------------
	4. jQuery Plugins
--------------------------------------------------------------------------*/

	/*---------------------------------------------------
			4.1 iosSlider
	---------------------------------------------------*/

	.containerOuter {
		background: #111;
		height: 357px;
		overflow: hidden;
	}

	.iosContainer {
		position: relative;
		width: 100%;
		height: 357px;
		margin: 0 auto;
		overflow: visible;
	}

		.iosContainer .iosSliderContainer {
			width: 100%;
			height: 357px;
			margin: 0;
			overflow: visible;
		}

	.iosSlider {
		position: relative;
		top: 0;
		left: 0;
		overflow: visible;
		width: 100%;
		height: 357px;
	}

		.iosSlider .slider {
			width: 10000px;
			height: 100%;
		}

			.iosSlider .slider .item {
				float: left;
				width: 920px;
				height: 100%;
			}
				.iosSlider .slider .item img { width: 100%; }

	.iosThumb2Load {
		height: 93px;
		background: #111;
	}

		.iosThumb2Load .slider {
			width: 100%;
			height: 100%;
		}

		.iosThumb2Load .button-thumb {
			float: left;
			margin: 0;
			width: 240px;
			height: 93px;
			opacity: 0.5;
			-ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=(50));
			filter: alpha(opacity = (50));
		}

		.iosThumb2Load .selected {
			opacity: 1;
			-ms-filter: progid:DXImageTransform.Microsoft.Alpha(opacity=(100));
			filter: alpha(opacity = (100));
		}

	@media screen and (min-width: 1300px) { 
		.iosSlider .slider .item { width: 1160px; }
		.containerOuter,
		.iosContainer,
		.iosContainer .iosSliderContainer,
		.iosSlider { height: 450px; }
	}

	@media screen and (min-width: 768px) and (max-width: 959px) { 
		.iosSlider .slider .item { width: 660px; }
		.containerOuter,
		.iosContainer,
		.iosContainer .iosSliderContainer,
		.iosSlider { height: 256px; }
	}

	@media screen and (max-width: 767px) { 
		.iosSlider .slider .item { width: 280px; }
		.containerOuter,
		.iosContainer,
		.iosContainer .iosSliderContainer,
		.iosSlider { height: 109px; }
		.iosThumb2Load {
			visibility: hidden;
			margin: 0;
			height: 0;
		}
	}

	@media screen and (min-width: 480px) and (max-width: 767px) { 
		.iosSlider .slider .item { width: 400px; }
		.containerOuter,
		.iosContainer,
		.iosContainer .iosSliderContainer,
		.iosSlider { height: 150px; }
		.iosThumb2Load {
			visibility: hidden;
			margin: 0;
			height: 0;
		}
	}


	/*---------------------------------------------------
			4.2 FlexSlider
	---------------------------------------------------*/
	/*
	* 	jQuery FlexSlider v2.0
	* 	http://www.woothemes.com/flexslider/
	*
	* 	Copyright 2012 WooThemes
	* 	Free to use under the GPLv2 license.
	* 	http://www.gnu.org/licenses/gpl-2.0.html
	*
	* 	Contributing author: Tyler Smith (@mbmufffin)
	*/

	/* FlexSlider Necessary Styles
	*********************************/
	.flexslider .slides > div {
		display: none;
		-webkit-backface-visibility: hidden;
	}

	/* Hide the slides before the JS is loaded. Avoids image jumping */
	.flexslider .slides img {
		display: block;
		width: 100%;
	}

	.flex-pauseplay span { text-transform: capitalize; }

	/* Clearfix for the .slides element */
	.slides:after {
		content: ".";
		display: block;
		clear: both;
		visibility: hidden;
		line-height: 0;
		height: 0;
	}

	html[xmlns] .slides { display: block; }
	* html .slides { height: 1%; }
	


	/* FlexSlider for TypeFolio
	*********************************/
	.flexslider {
		background: white;
		position: relative;
		zoom: 1;
		overflow: hidden;
	}

	.flex-viewport {
		max-height: 2000px;
		-webkit-transition: all 1s ease;
		-moz-transition: all 1s ease;
		transition: all 1s ease;
	}

	.loading .flex-viewport { max-height: 300px; }

	.flexslider .slides { zoom: 1; }

	/* Direction Nav */
	.flex-direction-nav { *height: 0; }

		.flex-direction-nav a {
			width: 30px;
			height: 30px;
			margin: -20px 0 0;
			display: block;
			background: url(../images/bg_direction_nav.png) no-repeat 0 0;
			position: absolute;
			top: 50%;
			z-index: 10;
			cursor: pointer;
			text-indent: -9999px;
			opacity: 0;
			-webkit-transition: all .3s ease;
		}

		.flex-direction-nav .flex-next {
			background-position: 100% 0;
			right: -36px;
		}

		.flex-direction-nav .flex-prev { left: -36px; }

	.flexslider:hover .flex-next {
		opacity: 0.8;
		right: 5px;
	}

	.flexslider:hover .flex-prev {
		opacity: 0.8;
		left: 5px;
	}

	.flexslider:hover .flex-next:hover,
	.flexslider:hover .flex-prev:hover { 
		opacity: 1;
	}

	.flex-direction-nav .flex-disabled {
		opacity: .3!important;
		filter: alpha(opacity=30);
		cursor: default;
	}

	/* Control Nav */
	.flex-control-nav {
		width: 100%;
		position: absolute;
		bottom: -40px;
		text-align: center;
	}

		.flex-control-nav li {
			margin: 0 6px;
			display: inline-block;
			zoom: 1;
			*display: inline;
		}

	.flex-control-paging li a {
		width: 11px;
		height: 11px;
		display: block;
		background: #666;
		background: rgba(0, 0, 0, 0.5);
		cursor: pointer;
		text-indent: -9999px;
		-webkit-border-radius: 20px;
		-moz-border-radius: 20px;
		-o-border-radius: 20px;
		border-radius: 20px;
		box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
	}

	.flex-control-paging li a:hover {
		background: #333;
		background: rgba(0, 0, 0, 0.7);
	}

	.flex-control-paging li a.flex-active {
		background: black;
		background: rgba(0, 0, 0, 0.9);
		cursor: default;
	}

	.flex-control-thumbs {
		margin: 5px 0 0;
		position: static;
		overflow: hidden;
	}

		.flex-control-thumbs li {
			width: 25%;
			float: left;
			margin: 0;
		}

		.flex-control-thumbs img {
			width: 100%;
			display: block;
			opacity: .7;
			cursor: pointer;
		}

		.flex-control-thumbs img:hover { opacity: 1; }
		.flex-control-thumbs .flex-active {
			opacity: 1;
			cursor: default;
		}

	.flexslider-nav-carousel {
		background: #111;
		margin-bottom: 30px;
	}

	.item-nav {
		cursor: pointer;
		padding: 27px 0;
		border-right: 1px solid #222; 
	}

		.item-nav h4 {
			color: #444;
			font-size: 20px;
			line-height: 30px;
		}

		.item-nav span.category {
			display: inline-block;
			color: #444;
			font-size: 11px;
			line-height: 21px;
			text-transform: uppercase; 
			letter-spacing: 2px; 
			margin-top: 10px; 
			border-top: 1px solid #333; 
			padding-top: 10px; 
		}

	.item-nav.flex-active {}

	.item-nav.flex-active h4 { 
		color: white; 
	}

	.item-nav.flex-active span.category { 
		color: #777; 
		border-top: 1px solid #1d607d; 
	}

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

		.flex-direction-nav .flex-prev {
			opacity: 1;
			left: 0;
		}
		.flex-direction-nav .flex-next {
			opacity: 1;
			right: 0;
		}

	}


.contacts_line {
	margin: 0px 0 30px 0;
	text-align: center;
}

.contacts_line .contacts_cell {
	margin:0 10px;
}

.services .item .contacts_line {
	text-align: left;
}

.services .item .contacts_line .contacts_cell {
	text-align: left;
	margin: 0 20px 0 0;
}

.contacts_line.va {
	text-align: left;
}

.contacts_line.va .contacts_cell {
	margin: 0 0 20px 0;
	display: block;
}

.contacts_line.va .contacts_cell:after {
	content:"";
	display: block;
	clear:both;
	float:none;
}

.contacts_line.va .contacts_cell span {
	display: block;
	font-weight:bold;
}

@media screen and (max-width:1300px){
	#header h1 a {
		font-size: 74px;
		line-height: 54px;
		margin-right:10px;
	}

	#header p.site-desc {
		font-size: 18px;
		line-height: 20px;
	}

	#works-p #header .logo-wrap .container {
		 padding: 40px 0;
		 background: url(../images/banners/works-banner.svg) no-repeat right center;
		 background-size: auto 90%;
	 }

	#about-p #header .logo-wrap .container {
		padding: 40px 0;
		background: url(../images/banners/about-banner.svg) no-repeat right center;
		background-size: auto 90%;
	}

	#contact-p #header .logo-wrap .container{
		padding: 40px 0;
		background: url(../images/banners/about-banner.svg) no-repeat right center;
		background-size: auto 90%;
	}
}

@media screen and (max-width:960px){
	#header h1 a {
		font-size: 64px;
		line-height: 50px;
		margin-right: 10px;
	}

	#header p.site-desc {
		font-size: 15px;
		line-height: 17px;
	}

	#works-p #header .logo-wrap .container {
		padding: 20px 0;
		background: url(../images/banners/works-banner.svg) no-repeat right center;
		background-size: auto 90%;
	}

	#project-p #header .logo-wrap .container {
		padding: 20px 0;
	}

	#about-p #header .logo-wrap .container {
		padding: 20px 0;
		background: url(../images/banners/about-banner.svg) no-repeat right center;
		background-size: auto 90%;
	}

	#contact-p #header .logo-wrap .container {
		padding: 20px 0;
		background: url(../images/banners/about-banner.svg) no-repeat right center;
		background-size: auto 90%;
	}
}

@media screen and (max-width:768px){
	#header h1 a {
		font-size: 42px;
		line-height: 35px;
		margin-right: 10px;
	}

	#header p.site-desc {
		font-size: 11px;
		line-height: 12px;
	}

	#works-p #header .logo-wrap .container {
		padding: 20px 0;
		background-image: none;
	}

	#about-p #header .logo-wrap .container {
		padding: 20px 0;
		background-image: none;
	}

	#contact-p #header .logo-wrap .container {
		padding: 20px 0;
		background-image: none;
	}

	#project-p #header .logo-wrap .container {
		padding: 20px 0;
	}

	#project-p #header .logo-wrap .container {
		padding: 20px 0 10px 0;
	}

}

@media screen and (max-width:480px){
	#header h1 {
		margin-right: 0;
		display: block;
		float: none;
		text-align: center;
	}

	#header h1 a {
		font-size: 42px;
		line-height: 35px;
		margin-right: 0;
		text-align: center;
		float: none;
	}

	#header p.site-desc {
		display: none;
	}

	#works-p #header .logo-wrap .container {
		padding: 20px 0;
		background-image: none;
	}

	#about-p #header .logo-wrap .container {
		padding: 20px 0;
		background-image: none;
	}

	#contact-p #header .logo-wrap .container {
		padding: 20px 0;
		background-image: none;
	}

	#project-p #header .logo-wrap .container {
		padding: 20px 0 0 0;
	}

	#works .item {
		margin-bottom: 40px;
		border: 1px solid #e5e5e5;
		padding: 10px;

	}

	#works .item img {
		-webkit-filter: grayscale(0%);
		-webkit-transition: .25s ease-in-out;
		-moz-filter: grayscale(0%);
		-moz-transition: .25s ease-in-out;
		-o-filter: grayscale(0%);
		-o-transition: .25s ease-in-out;
		filter: grayscale(0%);
	}

	#works .item h3 {
		text-align: center;
	}

	#works .item span.category {
		text-align: center;
	}

	.contacts_line .contacts_cell {
		display:block;
		margin:0 0 10px 20px;
		text-align: left;
	}
	
}

/** Landing Box **/
article.landing {
	padding: 100px 0;
    min-height: 670px;
}

article.landing.single .landing_heroshot {
    height: 40em;
    width: 1280px;
    margin-bottom: 2em;
    position: relative;
    margin: 0 auto;
}

article.landing .landing_heroshot iframe {
	border: 1px solid #cccccc;
    height: 680px;
    width: 100%;
}

article.landing .landing_text {
	text-align:left;
	margin-bottom:40px;
}


article.landing .landing_text.center {
	text-align: left;
    width: 465px;
    margin: 0 auto;
}

article.landing .landing_text h1 {
    padding: 0;
    margin: 0;
    font-size: 69.3px;
    line-height: 70px;
    font-weight: bold;
}

article.landing .landing_text h2 {
    padding: 0;
    margin: 0;
    font-size: 32px;
    line-height: 38px;
    font-weight: bold;
    text-transform: uppercase;
}

article.landing .landing_text h2 + p {
    font-size:24px;
    line-height:32px;
    text-transform: uppercase;
}

article.landing .landing_text small {
    padding: 0;
    margin: 0;
    font-size: 30px;
    line-height: 46px;
    display: block;
    text-transform: uppercase;
}

article.landing .landing_text p {
	padding:0;
	margin:0;
	font-size: 20px;
	font-weight: bold;
	line-height:28px;
	font-family: 'Yantramanav', sans-serif;
	margin-top: 3px;
}

/*-- Services --*/
article.services {
    padding: 40px 0;
}

article .preview_box {
	margin: 0 0 40px;
	line-height: 20px;
}

article .preview_box a {
	display: inline-block;
	font-weight:bold;
}

article .preview_box img {
	height: 32px;
	display: block;
	border:0;
	margin: 0 0 5px 0;
}

article .preview_box span {
	display: block;
}


/* --- Colors & Themes --- */

article.cdeffd {
	background-color: #cdeffd;
}

article.cdeffd .landing_text p {
	color: #1d607d;
}

article.ffffff {
	background-color: #ffffff;
}

article.ffffff .landing_text p {
	color: #777777;
}

article.ecfbdc {
	background-color: #ecfbdc;
}

article.ecfbdc .landing_text p {
	color: #366a01;
}

article.faf2ff {
	background-color: #faf2ff;
}

article.faf2ff .landing_text p {
	color: #941678;
}


}


/* -- unique styles --*/
.landing#mi_ui_and_ux {
	padding: 10em 0 8em 0;
}


.landing#mi_ui_and_ux .landing_text p {
	font-size: 20.4px;
}

.landing#mi_ui_and_ux .landing_text p::first-line {
	letter-spacing: .22px;
}

.landing#mi_ui_and_ux .newiphone {
    width: 234px;
    height: 482px;
    position: absolute;
    right: 80px;
    top: 0;
}

.landing#mi_ui_and_ux .image_with_perspective {
    -o-transform: perspective(500px) rotateY(10deg);
    -ms-transform: perspective(500px) rotateY(10deg);
    -moz-transform: perspective(500px) rotateY(10deg);
    -webkit-transform: perspective(500px) rotateY(10deg);
    transform: perspective(500px) rotateY(10deg);
    height: 500px;
    position: absolute;
    left: 140px;
    top: 0;
    box-shadow: -5px 5px 20px rgba(0,0,0,0.33);
}

.landing#mi_ui_and_ux .image_with_perspective#overlay_mi_hero {
    left: 143px;
    box-shadow: none;
    box-shadow: -5px 5px 20px rgba(0,0,0,0.13);
    top: 0px;
}

.landing#mi_ui_and_ux .landing_heroshot .image_with_perspective#mi_hero {
	transition: all .5s ease-in-out;
}

.landing#mi_ui_and_ux .landing_heroshot:hover .image_with_perspective#mi_hero {
	transition: .5s; 
  	 -o-transform: perspective(550px) rotateY(10deg);
    -ms-transform: perspective(550px) rotateY(10deg);
    -moz-transform: perspective(550px) rotateY(10deg);
    -webkit-transform: perspective(550px) rotateY(10deg);
    transform: perspective(550px) rotateY(10deg);
}

.landing#mi_ui_and_ux .landing_heroshot .image_with_perspective#overlay_mi_hero {
	transition: all .8s ease-in-out;
}

.landing#mi_ui_and_ux .landing_heroshot:hover .image_with_perspective#overlay_mi_hero {
	transition: .8s; 
  	 -o-transform: perspective(530px) rotateY(10deg);
    -ms-transform: perspective(530px) rotateY(10deg);
    -moz-transform: perspective(530px) rotateY(10deg);
    -webkit-transform: perspective(530px) rotateY(10deg);
    transform: perspective(530px) rotateY(10deg);
}

.landing#mi_ui_and_ux .landing_heroshot .newiphone {
  	transition: all .8s ease-in-out;
}

.landing#mi_ui_and_ux .landing_heroshot:hover .newiphone {
  	transform: scale(1.020); 
}

.landing#mi_all_devices {
	min-height: 570px;
}

article.landing#ux_ui_decisions .landing_text {
	padding-top:130px;
}

article.landing#mi_components .landing_text h2 + p {
    font-size: 18px;
    line-height: 24px;
    text-transform: uppercase;
}


article.landing#mob_and_watch .landing_text {
	padding-top:130px;
}

article.landing#mob_and_watch .landing_text h2 {
	font-size: 34px;
}

article.landing#mob_and_watch .landing_text h2 + p {
	font-size: 22px;
	line-height: 28px;
}

article.landing#mob_and_watch .landing_heroshot {
    position: relative;
    height: 650px;
}

article.landing#mob_and_watch .landing_heroshot .iphone {
  	left: 150px;
    width: 300px;
    height: 620px;
    bottom: -20px;
    position: absolute;
}

article.landing#mob_and_watch .landing_heroshot .iphone figure {
	margin:0;
}

article.landing#mob_and_watch .landing_heroshot .iphone figure .inside{
	margin:0;
	width:234px;
}


article.landing#mob_and_watch .landing_heroshot .watch figure {
    margin: 0;
    padding: 15px 7px 0 5px;
}

article.landing#mob_and_watch .landing_heroshot .watch {
  	right:100px;
  	height: 345px;
    width: 180px;
    bottom:0;
    position: absolute;
}

article.landing#mob_and_watch .landing_heroshot .watch .inside {
    width: 135px;
    height: auto;
}

article.landing#mob_and_watch img[src*="fj_ico.png"] {
	float:left;
	margin-right:5px;
}

article.landing#mob_and_watch img[src*="fj_ico.png"]+span {
	line-height: 32px;
}

article.landing#mob_and_watch img[src*="fj_ico.png"]+span:after {
    content: "";
    clear: both;
    display: block;
    height: 1px;
} 

article.landing#mob_and_watch img[src*="i_m_ico.png"] {
	height:40px;
}

article.landing#wireframes_and_spec .landing_text h2 + p {
    font-size: 19px;
    line-height: 26px;
}

article.landing#wireframes_and_spec .preview_box img {
	display: block;
}

article.landing#wireframes_and_spec .landing_text {
    padding-top: 120px;
}

/* Back to top button
================================================== */
.back-to-top {
	position: fixed;
	right: 30px;
	bottom: 30px;
	width: 48px;
	height: 48px;
	padding: 0;
	border: none;
	border-radius: 50%;
	background: #1d607d;
	color: #fff;
	cursor: pointer;
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease, background 0.2s ease;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.22);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 9999;
}
.back-to-top.is-visible {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.back-to-top:hover {
	background: #144860;
	transform: translateY(-2px);
}
.back-to-top:focus-visible {
	outline: 2px solid #5bbad5;
	outline-offset: 3px;
}
.back-to-top svg {
	width: 18px;
	height: 18px;
	fill: currentColor;
}
@media (max-width: 768px) {
	.back-to-top {
		right: 18px;
		bottom: 18px;
		width: 44px;
		height: 44px;
	}
}
@media (prefers-reduced-motion: reduce) {
	.back-to-top {
		transition: opacity 0.2s ease, visibility 0.2s ease;
		transform: none;
	}
	.back-to-top.is-visible,
	.back-to-top:hover {
		transform: none;
	}
}