html, body, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

article, aside, figure, footer, header, hgroup, nav, section {
  display: block; }
  
body {
  margin: 0;
  padding: 0;
  width: 100%;
  background-color: transparent;
  font-family: Palatino, "Times New Roman", Times, serif;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5em;
  color: #473f3f; }
  

  
@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;
}

@font-face {
    font-family: 'BebasNeueRegular';
    src: url('fonts/BebasNeue-webfont.eot');
    src: url('fonts/BebasNeue-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/BebasNeue-webfont.woff') format('woff'),
         url('fonts/BebasNeue-webfont.ttf') format('truetype'),
         url('fonts/BebasNeue-webfont.svg#BebasNeueRegular') format('svg');
    font-weight: normal;
    font-style: normal;
}

#ribbon {width:100%; height:80px; position: absolute; top:2em; background: rgba(7,55,122,0.95);}
.main, .container {position: relative; margin: 0 auto; max-width:1200px;}

.headlines {position: relative; width:100%;}

h1, h2, h3, h4, h5, h6 {
  margin: 0;
  font-family: 'BebasNeueRegular', "arialNarrow", sans-serif;
  font-weight:normal;
  font-style: normal;
  color: #fff;
  text-rendering: optimizelegibility; }
  h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
    font-weight: normal;
    line-height: 1;
    color: #8a7b7b; }

#h1,#h2,#h3,#h4 {
  width:100%;
  font-size: 92px;
  font-size: 9.2rem;
  line-height: 1;
  margin: 0.4em auto 0.6em;
  position: absolute;
  visibility: hidden;
  text-shadow:0 2px #000;
  text-align: center }
  

/* 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');
	};
}

.backstretch:after {content:''; background:transparent url(../images/pattern.png) repeat top left; width:100%; height:100%; position: fixed; }

.logo { margin:0 auto;margin-top: 1em; background: url(../images/logo.png)0 0 no-repeat; width:320px; height:131px; background-size: contain;}

.icon-cogs, .icon-compass, .icon-bubble, .icon-ticket, .icon-facebook, .icon-twitter, .icon-blog, .icon-mail, .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-cogs, .icon-compass, .icon-bubbles, .icon-ticket {font-size:24px; font-size:2.4rem;}

.icon-cogs:before {
	content: "\e000";
}
.icon-compass:before {
	content: "\e001";
}
.icon-bubble:before {
	content: "\e002";
}
.icon-ticket:before {
	content: "\e003";
}
.icon-facebook:before {
	content: "\e004";
}
.icon-twitter:before {
	content: "\e005";
}
.icon-blog:before {
	content: "\e006";
}
.icon-mail:before {
	content: "\e007";
}
.icon-menu:before {
	content: "\e008";
}

a, li {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}




.nav ul {
	width: 96%;
	list-style: none;
	font-weight: 300;
	margin:9em 2% 0;
	
}

.nav ul li {-webkit-box-sizing:border-box;}

.nav li span {
	display: block;
}

.nav a {
font-family: 'BebasNeueRegular';
	display: block;
	color: rgba(249, 249, 249, .9);
	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;
}

.nav i{
	/* 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);
}

.nav i.icon-cogs, .nav i.icon-compass, .nav i.icon-bubble, .nav i.icon-ticket {font-size:40px; font-size: 4rem; margin-bottom:0;}
/* Remove the blue Webkit background when element is tapped */

a, button {
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}



/* Adding some background color to the different menu items */

.nav li:nth-child(8n+1) {
	background: rgba(172, 62, 48,.95);
}

.nav li:nth-child(8n+2) {
	background: rgba(222, 183, 53,.95);
}

.nav li:nth-child(8n+3) {
	background: rgba(207, 123, 48,.95);
}

.nav li:nth-child(8n+4) {
	background: rgba(105, 167, 125,.95);
}

.nav li:nth-child(8n+5) {
	background: rgba(43, 76, 123,.95);
}

.nav li:nth-child(8n+6) {
	background: rgba(102, 141, 192,.95);
}

.nav li:nth-child(8n+7) {
	background: rgba(60, 60, 60,.95);
}

.nav li:nth-child(8n+8) {
	background: rgba(100, 100, 100,.95);
}

/* For screen bigger than 800px */
@media (min-width: 60em) {

	/* Transforms the list into a horizontal navigation */
	.nav li, .nav li.small {
		float: left;
		width: 20%;
		text-align: center;
		-webkit-transition: border .5s;
		-moz-transition: border .5s;
		-o-transition: border .5s;
		-ms-transition: border .5s;
		transition: border .5s;
	}
	
	.nav li.small {width:10%;}
	
	.small-title {visibility: hidden;}

	.nav a {
		display: block;
		width: auto;
	}


	/* Placing the icon */
	.small	.icon {
		padding: 0.6em 0;
	}
	
	.icon {
		padding: 1.6em 1.6em 0.8em;
	}



	/* Animating the height of the element*/
	.nav a {
		height:9em;

	}
	
		.nav li.small a {
		max-height: 4.5em;
	}


	/* Positioning the icons and preparing for the animation*/
	.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(255,255,255,0.1);
		-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 .nav a:hover i,
	.no-touch .nav a:active i,
	.no-touch .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;
	}
	

		
}

@media (min-width: 50em) and (max-width: 61.250em) {

	/* Size and font adjustments to make it fit into the screen*/
	.nav ul {
		font-size: 1em;
	}
	
#h1,#h2,#h3,#h4 {
  font-size: 70px;
  font-size: 7.0rem;
 }

}


/* The "tablet" and "mobile" version */

@media (max-width: 59.938em) {		
	
	/* Instead of adding a border, we transition the background color */
	.no-touch .nav ul li:nth-child(8n+1) a:hover,
	.no-touch .nav ul li:nth-child(8n+1) a:active,
	.no-touch .nav ul li:nth-child(8n+1) a:focus {
		background: rgb(145, 9, 0);
	}

	.no-touch .nav li:nth-child(8n+2) a:hover,
	.no-touch .nav li:nth-child(8n+2) a:active,
	.no-touch .nav li:nth-child(8n+2) a:focus {
		background: rgb(206, 151, 0);
	}

	.no-touch .nav li:nth-child(8n+3) a:hover,
	.no-touch .nav li:nth-child(8n+3) a:active,
	.no-touch .nav li:nth-child(8n+3) a:focus {
		background: rgb(191, 95, 0);
	}

	.no-touch .nav li:nth-child(8n+4) a:hover,
	.no-touch .nav li:nth-child(8n+4) a:active,
	.no-touch .nav li:nth-child(8n+4) a:focus {
		background: rgb(86, 153, 0);
	}

	.no-touch .nav li:nth-child(8n+5) a:hover,
	.no-touch .nav li:nth-child(8n+5) a:active,
	.no-touch .nav li:nth-child(8n+5) a:focus {
		background: rgb(7, 55, 122);
	}

	.no-touch .nav li:nth-child(8n+6) a:hover,
	.no-touch .nav li:nth-child(8n+6) a:active,
	.no-touch .nav li:nth-child(8n+6) a:focus {
		background: rgb(43, 107, 191);
	}
	
	.no-touch .nav li:nth-child(8n+7) a:hover,
	.no-touch .nav li:nth-child(8n+7) a:active,
	.no-touch .nav li:nth-child(8n+7) a:focus {
		background: rgb(30, 30, 30);
	}
	
	.no-touch .nav li:nth-child(8n+8) a:hover,
	.no-touch .nav li:nth-child(8n+8) a:active,
	.no-touch .nav li:nth-child(8n+8) a:focus {
		background: rgb(70, 70, 70);
	}
	.nav ul {top: 0;}
	.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;
	}
	

.nav i.icon-cogs, .nav i.icon-compass, .nav i.icon-bubble, .nav i.icon-ticket, .nav i.icon-facebook, .nav i.icon-twitter, .nav i.icon-blog, .nav i.icon-mail {font-size:26px; font-size: 2.6rem;}
	


}

/* CSS specific to the 2x3 columns version */
@media (min-width:32.5em) and (max-width: 59.938em) {
	
	/* Creating the 2 column layout using floating elements once again */
	.nav li {
		display: block;
		float: left;
		width: 50%;
	}
	
	/* Adding some padding to make the elements look nicer*/
	.nav a {
		padding: 0.8em ;		
	}

	/* Displaying the icons on the left, and the text on the right side using inlin-block*/
	.nav li span, 
	.nav li span.icon {
		display: inline-block;
	}

	.nav li span.icon {
		width: 25%;
	}

	.nav li .icon + span {
		font-size: 24px;
		font-size:2.4rem;
		vertical-align: middle;
	}

	.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 */
.nav li i {
		display: inline-block;
		padding: 8% 9%;
		border: 4px solid transparent;
		border-radius: 50%;
		font-size: 1.5em;
		background: rgba(255,255,255,0.1);
		-webkit-transition: border .5s;
		-moz-transition: border .5s;
		-o-transition: border .5s;
		-ms-transition: border .5s;
		transition: border .5s;
	}

.nav i.icon-cogs, .nav i.icon-compass, .nav i.icon-bubble, .nav i.icon-ticket {font-size:1.5em;}
	/* Transition effect on the border color */
	.no-touch .nav li:hover i,
	.no-touch .nav li:active i,
	.no-touch .nav li:focus i {
		border: 4px solid rgba(255,255,255,0.1);
	}

#h1,#h2,#h3,#h4 {
  font-size: 78px;
  font-size: 7.8rem;
  line-height: 1; 
  }
  
 

}


@media (min-width: 32.5em) and (max-width: 38.688em) {
	
	.nav li span.icon {
		width: 26.5%;
	}

	.nav li .icon + span {
		font-size: 20px;
		font-size: 2.0rem;
	}

}

.icon-menu {margin-left:65%;}

.nav .navtoggle{
	display: none;	
	width: 100%;
	padding: 0.5em 0.5em 0.8em;
	font-family: 'BebasNeueRegular', "arialNarrow", sans-serif;
	font-weight: normal;
	text-align: right;
	color: #fff;
	font-size: 1.2em;
	background: none;	
	border: none;
	cursor: pointer;
	position: absolute;
	top:1em;
}


.icon-menu {
	position: relative;
	line-height: 0;
	font-size: 1.5em;
}

@media (max-width: 32.438em) {

.headlines { z-index: 1; position:absolute; bottom:-3em;}

#h1,#h2,#h3,#h4 {
  font-size: 36px;
  font-size: 3.6rem;
  line-height: 1; 
  }
  
#ribbon {top:0.5em;}

#menu {width:90%; margin: 0 5%;}

	
.logo { top: -0.5em; left:.5em; width:210px; height:81px; position: absolute; z-index: 99;}
	
.nav ul {
		font-size: .6em;	}

.nav .navtoggle{
		margin: 0;
		padding:0;
		display: block;
		position: relative;
		width:72px;
		top:.4em;
		margin-bottom:18px;
		float:right;
	}

button > span {display:inline-block;  text-align: center; width:72px; font-size: 13px; font-size:1.3rem;  }



.icon-menu { display: inline-block; margin: 0 auto; width:100%;font-size: 26px; font-size:2.6rem; text-align: center;}	
	/* Animating the height of the navigation when the button is clicked */
	
	/* When JavaScript is disabled, we hide the menu */
	.no-js .nav ul {
		max-height: 40em;
		overflow: hidden;
	}
	
	/* When JavaScript is enabled, we hide the menu */
	.js .nav ul {
		max-height: 0em;
		overflow: hidden;
	}
	
	/* Displaying the menu when the user has clicked on the button*/
	.js .nav .active + ul {		
		max-height: 40em;
		overflow: hidden;
		margin-top:30px;
		-webkit-transition: max-height .4s;
		-moz-transition: max-height .4s;
		-o-transition: max-height .4s;
		-ms-transition: max-height .4s;
		transition: max-height .4s;
		z-index: 9;
	}

	/* Adapting the layout of the menu for smaller screens : icon on the left and text on the right*/
	
	.nav li span {
		display: inline-block;
		height: 100%;
	}

	.nav a {
		padding: 0.5em;		
	}
	
	.icon + span {
		margin-left: 1em;
		font-size: 1.8em;
	}


	/* make the nav bigger on touch screens */
	.touch .nav a {
		padding: 0.8em;
	}
}


/* Clearfix hack by Nicolas Gallagher: http://nicolasgallagher.com/micro-clearfix-hack/ */
.clearfix:before, .clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }