@font-face {
	font-family: 'icomoon';
	src: url('../fonts/icomoon.eot');
	src: url('../fonts/icomoon.eot?#iefix') format('embedded-opentype'),
		url('../fonts/icomoon.woff') format('woff'),
		url('../fonts/icomoon.ttf') format('truetype'),
		url('../fonts/icomoon.svg#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}

/* Windows Chrome ugly fix http://stackoverflow.com/questions/13674808/chrome-svg-font-rendering-breaks-layout/14345363#14345363 */
@media screen and (-webkit-min-device-pixel-ratio:0) {
	@font-face {
		font-family: 'icomoon';
		src: url('../fonts/icomoon.svg#icomoon') format('svg');
	};
}

.icon-team, .icon-blog, .icon-home, .icon-portfolio, .icon-services, .icon-contact, .icon-menu {
	font-family: 'icomoon';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
}

.icon-team:before {
	content: "\e000";
}

.icon-blog:before {
	content: "\e001";
}

.icon-home:before {
	content: "\e002";
}

.icon-portfolio:before {
	content: "\e003";
}

.icon-services:before {
	content: "\e004";
}

.icon-contact:before {
	content: "\e005";
}

.icon-menu:before {
	content: "\f0c9";
}

a, li {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}


/* Global CSS that are applied for all screen sizes */

.main-nav .nav ul {
	max-width: 1240px;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 1em;
	font-weight: 300;
}

.main-nav .nav li span {
	display: block;
}

.main-nav .nav a {
	display: block;
	color: #666;
	text-decoration: none;
	-webkit-transition: color .5s, background .5s, height .5s;
	-moz-transition: color .5s, background .5s, height .5s;
	-o-transition: color .5s, background .5s, height .5s;
	-ms-transition: color .5s, background .5s, height .5s;
	transition: color .5s, background .5s, height .5s;
}

.main-nav .nav i{
	color: #bb141a;
	/* Make the font smoother for Chrome */
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

/* Remove the blue Webkit background when element is tapped */

a, button {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

/* Hover effect for the whole navigation to make the hovered item stand out */

.no-touch .main-nav .nav ul:hover a {
	color: #999;
}

.no-touch .main-nav .nav ul:hover a:hover {
	color: #FFF;
}

/* Adding some background color to the different menu items */

.main-nav .nav li:nth-child(6n+1), .main-nav .nav li:nth-child(6n+2), .main-nav .nav li:nth-child(6n+3), .main-nav .nav li:nth-child(6n+4), .main-nav .nav li:nth-child(6n+5), .main-nav .nav li:nth-child(6n+6){
	background: #FFF;
}

.main-nav .nav li:nth-child(6n+1):hover, .main-nav .nav li:nth-child(6n+2):hover, .main-nav .nav li:nth-child(6n+3):hover, .main-nav .nav li:nth-child(6n+4):hover, .main-nav .nav li:nth-child(6n+5):hover, .main-nav .nav li:nth-child(6n+6):hover {
	background: #c93228;
}

/* service boxes */

.box {
	width: 270px;
	height: 271px;
	position: relative;
	background: #333;
	text-align: center;
	display: inline-block;
	outline: none !important;
	margin: 15px;
	cursor: pointer;
	color: #999;
	box-shadow: inset 0 0 0 3px #333;
	-webkit-transition: background 0.4s 0.5s;
	transition: background 0.4s 0.5s;
}

.box:hover {
	background: rgba(255,255,255,0);
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
}

.box h3 {
	width: 270px;
	height: 271px;
	margin: 0px auto;
}
.box h3.creative-service{
	background: url(../img/services/cs.jpg) no-repeat;
}
.box h3.web-service{
	background: url(../img/services/av.jpg) no-repeat;
}
.box h3.print-service{
	background: url(../img/services/op.jpg) no-repeat;
}
.box h3.gift-service{
	background: url(../img/services/ps.jpg) no-repeat;
}
.box h3.graphics-service{
	background: url(../img/services/dfp.jpg) no-repeat;
}
.box h3.ad-service{
	background: url(../img/services/wos.jpg) no-repeat;
}
.box h3.video-service{
	background: url(../img/services/gg.jpg) no-repeat;
}
.box h3.audio-service{
	background: url(../img/services/ec.jpg) no-repeat;
}
.box h3.promotion-service{
	background: url(../img/services/sp.jpg) no-repeat;
}
.box:hover h3.creative-service{
	background: url(../img/services/cs.jpg) no-repeat;
}
.box:hover h3.web-service{
	background: url(../img/services/av.jpg) no-repeat;
}
.box:hover h3.print-service{
	background: url(../img/services/op.jpg) no-repeat;
}
.box:hover h3.gift-service{
	background: url(../img/services/ps.jpg) no-repeat;
}
.box:hover h3.graphics-service{
	background: url(../img/services/dfp.jpg) no-repeat;
}
.box:hover h3.ad-service{
	background: url(../img/services/wos.jpg) no-repeat;
}
.box:hover h3.video-service{
	background: url(../img/services/gg.jpg) no-repeat;
}
.box:hover h3.audio-service{
	background: url(../img/services/ec.jpg) no-repeat;
}
.box:hover h3.promotion-service{
	background: url(../img/services/sp.jpg) no-repeat;
}



.box span {
	display: block;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-size: 13px;
	padding: 5px;
	height: 271px;
	width: 100%;
	float: left;
}

.box h3,
.box span {
	-webkit-transition: color 0.4s 0.5s;
	transition: color 0.4s 0.5s;
	color: #FFF;
}

.box:hover h3,
.box:hover span {
	color: #fff;
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
}

.box svg {
	position: absolute;
	top: 0;
	left: 0;
}

.box svg line {
	stroke-width: 3;
	stroke: #333;
	fill: none;
	-webkit-transition: all .8s ease-in-out;
	transition: all .8s ease-in-out;
}

.box:hover svg line {
	-webkit-transition-delay: 0.1s;
	transition-delay: 0.1s;
}

.box svg line.top,
.box svg line.bottom {
	stroke-dasharray: 330 240; 
}

.box svg line.left,
.box svg line.right {
	stroke-dasharray: 490 400;
}

.box:hover svg line.top {
	-webkit-transform: translateX(-600px);
	transform: translateX(-600px);
}

.box:hover svg line.bottom {
	-webkit-transform: translateX(600px);
	transform: translateX(600px);
}

.box:hover svg line.left {
	-webkit-transform: translateY(920px);
	transform: translateY(920px);
}

.box:hover svg line.right {
	-webkit-transform: translateY(-920px);
	transform: translateY(-920px);
}

/* Alternatives */

/* Color */
.demo-2 .box {
	box-shadow: inset 0 0 0 10px #FFF;
}

.demo-2 .box:hover h3,
.demo-2 .box:hover span {
	color: #C9342A;
}

.demo-2 .box svg line {
	stroke-width: 8;
}

.demo-2 .box:hover svg line {
	stroke: #C9342A;
}
section {
	padding: 4em 2em;
	text-align: center;
}

/* For screen bigger than 800px */
@media (min-width: 50em) {

	/* Transforms the list into a horizontal navigation */
	.main-nav .nav li {
		float: left;
		width: 16.66666666666667%;
		text-align: center;
		-webkit-transition: border .5s;
		-moz-transition: border .5s;
		-o-transition: border .5s;
		-ms-transition: border .5s;
		transition: border .5s;
	}

	.main-nav .nav a {
		display: block;
		width: auto;
	}

	/* hover, focused and active effects that add a little colored border to the different items */
	.no-touch .main-nav .nav li:nth-child(6n+1) a:hover,
	.no-touch .main-nav .nav li:nth-child(6n+1) a.active,
	.no-touch .main-nav .nav li:nth-child(6n+1) a:focus,
	.no-touch .main-nav .nav li:nth-child(6n+2) a:hover,
	.no-touch .main-nav .nav li:nth-child(6n+2) a.active,
	.no-touch .main-nav .nav li:nth-child(6n+2) a:focus,
	.no-touch .main-nav .nav li:nth-child(6n+3) a:hover,
	.no-touch .main-nav .nav li:nth-child(6n+3) a.active,
	.no-touch .main-nav .nav li:nth-child(6n+3) a:focus,
	.no-touch .main-nav .nav li:nth-child(6n+4) a:hover,
	.no-touch .main-nav .nav li:nth-child(6n+4) a.active,
	.no-touch .main-nav .nav li:nth-child(6n+4) a:focus,
	.no-touch .main-nav .nav li:nth-child(6n+5) a:hover,
	.no-touch .main-nav .nav li:nth-child(6n+5) a.active,
	.no-touch .main-nav .nav li:nth-child(6n+5) a:focus,
	.no-touch .main-nav .nav li:nth-child(6n+6) a:hover,
	.no-touch .main-nav .nav li:nth-child(6n+6) a.active,
	.no-touch .main-nav .nav li:nth-child(6n+6) a:focus {
		border-bottom: 4px solid #ba141a;
		background: #c93228;
		color: #FFF;
	}


	/* Placing the icon */
	
	.icon {
		padding-top: 1.4em;
	}

	.icon + span {
		margin-top: .8em;
		-webkit-transition: margin .5s;
		-moz-transition: margin .5s;
		-o-transition: margin .5s;
		-ms-transition: margin .5s;
		transition: margin .5s;
	}

	/* Animating the height of the element*/
	.main-nav .nav a {
		height: 8em;
	}


	/* Making the text follow the height animation */
	.no-touch .main-nav .nav a:hover .icon + span {
		margin-top: 1.4em;
		-webkit-transition: margin .5s;
		-moz-transition: margin .5s;
		-o-transition: margin .5s;
		-ms-transition: margin .5s;
		transition: margin .5s;
	}

	/* Positioning the icons and preparing for the animation*/
	.main-nav .nav i {
		position: relative;
		display: inline-block;
		margin: 0 auto;
		padding: 0.4em;
		border-radius: 50%;
		font-size: 1.8em;
		box-shadow: 0 0 0 30px transparent;
		background: rgba(204,204,204,.5);
		-webkit-transform: translate3d(0, 0, 0);
		-moz-transform: translate3d(0, 0, 0);
		-o-transform: translate3d(0, 0, 0);
		-ms-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
		-webkit-transition: box-shadow .6s ease-in-out;
		-moz-transition: box-shadow .6s ease-in-out;
		-o-transition: box-shadow .6s ease-in-out;
		-ms-transition: box-shadow .6s ease-in-out;
		transition: box-shadow .6s ease-in-out;
	}	
	
	/* Animate the box-shadow to create the effect */
	.no-touch .main-nav .nav a:hover i,
	.no-touch .main-nav .nav a:active i,
	.no-touch .main-nav .nav a:focus i {		
		box-shadow: 0 0 0 0 rgba(255,255,255,0.2);
		-webkit-transition: box-shadow .4s ease-in-out;
		-moz-transition: box-shadow .4s ease-in-out;
		-o-transition: box-shadow .4s ease-in-out;
		-ms-transition: box-shadow .4s ease-in-out;
		transition: box-shadow .4s ease-in-out;
	}
		
}


/* The "tablet" and "mobile" version */

@media (max-width: 49.938em) {		
	
	/* Instead of adding a border, we transition the background color */
	.no-touch .main-nav .nav li:nth-child(6n+1) a:hover,
	.no-touch .main-nav .nav li:nth-child(6n+1) a.active,
	.no-touch .main-nav .nav li:nth-child(6n+1) a:focus,
	.no-touch .main-nav .nav li:nth-child(6n+2) a:hover,
	.no-touch .main-nav .nav li:nth-child(6n+2) a.active,
	.no-touch .main-nav .nav li:nth-child(6n+2) a:focus,
	.no-touch .main-nav .nav li:nth-child(6n+3) a:hover,
	.no-touch .main-nav .nav li:nth-child(6n+3) a.active,
	.no-touch .main-nav .nav li:nth-child(6n+3) a:focus,
	.no-touch .main-nav .nav li:nth-child(6n+4) a:hover,
	.no-touch .main-nav .nav li:nth-child(6n+4) a.active,
	.no-touch .main-nav .nav li:nth-child(6n+4) a:focus,
	.no-touch .main-nav .nav li:nth-child(6n+5) a:hover,
	.no-touch .main-nav .nav li:nth-child(6n+5) a.active,
	.no-touch .main-nav .nav li:nth-child(6n+5) a:focus,
	.no-touch .main-nav .nav li:nth-child(6n+6) a:hover,
	.no-touch .main-nav .nav li:nth-child(6n+6) a.active,
	.no-touch .main-nav .nav li:nth-child(6n+6) a:focus {
		background: #c93228;
		color: #FFF;
	}

	.nav ul li {
		-webkit-transition: background 0.5s;
		-moz-transition: background 0.5s;
		-o-transition: background 0.5s;
		-ms-transition: background 0.5s;
		transition: background 0.5s;
	}	

}

/* CSS specific to the 2x3 columns version */
@media (min-width:32.5em) and (max-width: 49.938em) {
	
	/* Creating the 2 column layout using floating elements once again */
	.main-nav .nav li {
		display: block;
		float: left;
		width: 50%;
	}
	
	/* Adding some padding to make the elements look nicer*/
	.main-nav .nav a {
		padding: 0.8em;		
	}

	/* Displaying the icons on the left, and the text on the right side using inlin-block*/
	.main-nav .nav li span, 
	.main-nav .nav li span.icon {
		display: inline-block;
	}

	.main-nav .nav li span.icon {
		width: 50%;
	}

	.main-nav .nav li .icon + span {
		font-size: 1em;
	}

	.icon + span {
		position: relative;
		top: -0.2em;
	}

	/* Adaptating to the icons to animate the size and border of the rounded background in a more discreet way */
	.main-nav .nav li i {
		display: inline-block;
		padding: 4% 5%;
		border: 4px solid transparent;
		border-radius: 50%;
		font-size: 1.2em;
		background: rgba(204,204,204,0.2);
		-webkit-transition: border .5s;
		-moz-transition: border .5s;
		-o-transition: border .5s;
		-ms-transition: border .5s;
		transition: border .5s;
	}

	/* Transition effect on the border color */
	.no-touch .main-nav .nav li:hover i,
	.no-touch .main-nav .nav li:active i,
	.no-touch .main-nav .nav li:focus i {
		border: 4px solid rgba(255,255,255,0.1);
	}
	
}

/* Adapting the font size and width for smaller screns*/
@media (min-width: 32.5em) and (max-width: 38.688em) {
	
	.main-nav .nav li span.icon {
		width: 50%;
	}

	.main-nav .nav li .icon + span {
		font-size: 0.9em;
	}
}

/* Styling the toggle menu link and hiding it */
.main-nav .nav .navtoogle{
	display: none;	
	width: 100%;
	padding: 0.5em 0.5em 0.8em;
	font-family: 'Lato',Calibri,Arial,sans-serif;
	font-weight: normal;
	text-align: left;
	color: rgb(7, 16, 15);
	font-size: 1.2em;
	background: none;	
	border: none;
	border-bottom: 4px solid rgb(221, 221, 221);
	cursor: pointer;
}

.icon-menu {
	position: relative;
	top: 3px;
	line-height: 0;
	font-size: 1.6em;
}

@media (max-width: 32.438em) {

	/* Unhiding the styled menu link */
	.main-nav .nav .navtoogle{
		margin: 0;
		display: block;
	}
	
	/* Animating the height of the navigation when the button is clicked */
	
	/* When JavaScript is disabled, we hide the menu */
	.no-js .main-nav .nav ul {
		max-height: 30em;
		overflow: hidden;
	}
	
	/* When JavaScript is enabled, we hide the menu */
	.js .main-nav .nav ul {
		max-height: 0em;
		overflow: hidden;
	}
	
	/* Displaying the menu when the user has clicked on the button*/
	.js .main-nav .nav .active + ul {		
		max-height: 30em;
		overflow: hidden;
		-webkit-transition: max-height .4s;
		-moz-transition: max-height .4s;
		-o-transition: max-height .4s;
		-ms-transition: max-height .4s;
		transition: max-height .4s;
	}

	/* Adapting the layout of the menu for smaller screens : icon on the left and text on the right*/
	
	.main-nav .nav li span {
		display: inline-block;
		height: 100%;
	}

	.main-nav .nav a {
		padding: 0.5em;		
	}
	
	.icon + span {
		margin-left: 1em;
		font-size: 1em;
	}
	.main-nav .nav li a.active i, .main-nav .nav li a:hover i{
	    color: #FFF;
	}
	
	/* Adding a left border of 8 px with a different color for each menu item*/
	.main-nav .nav li:nth-child(6n+1) {
		border-left: 8px solid #4f060a;
	}

	.main-nav .nav li:nth-child(6n+2) {
		border-left: 8px solid #740a0f;
	}

	.main-nav .nav li:nth-child(6n+3) {
		border-left: 8px solid #930f15;
	}

	.main-nav .nav li:nth-child(6n+4) {
		border-left: 8px solid #b51318;
	}

	.main-nav .nav li:nth-child(6n+5) {
		border-left: 8px solid #cc3333;
	}

	.main-nav .nav li:nth-child(6n+6) {
		border-left: 8px solid #e04f56;
	}

	/* make the nav bigger on touch screens */
	.touch .main-nav .nav a {
		padding: 0.8em;
	}
}

