/* Color palette */
@font-face {
  font-family: 'bolditalic';
  src: url("../fonts/Archivo-ExtraBoldItalic.woff") format("woff"); }
  
@font-face {
  font-family: 'bold';
  src: url("../fonts/Archivo-Bold.woff") format("woff"); }

@font-face {
  font-family: 'medium';
  src: url("../fonts/Archivo-Medium.woff") format("woff"); }

@font-face {
  font-family: 'averia';
  src: url("../fonts/AveriaSansLibre-Bold.woff") format("woff"); }

@font-face {
  font-family: 'crushky';
  src: url("../fonts/Crushky-Brush.woff") format("woff"); }
 
  
@-ms-viewport {
  width: device-width; }
  
body, html {
  margin: 0;
  padding: 0;
  font-family: 'medium';
  color: #4f4f51; }
  
section, div, p, span, h1, h2, h3, h4, h5, h6, a {
  position: relative; }
  
p, li{
	 color: #FDE2D3;
	 font-size: 18px;
	 line-height: 1.4;
}

h1{
	font-family: 'crushky'; 
	font-size: 100px; 
	padding: 0px; 
	color: #FDE2D3; 
	letter-spacing: 1.5px;
	text-shadow: -1px 1px 20px rgba(0,0,0,0.3);
}

h2{
	font-family: 'crushky'; 
	font-size: 63px; 
	padding: 0px; 
	color: #f16a3d;
	line-height: 0.7;	
	letter-spacing: 1.5px;
	margin-top: 0px;
}

h3{
	font-family: 'medium'; 
	font-size: 26px; 
	margin-top: 25px; 
	letter-spacing: 0.44px; 
	color: #FDE2D3;
	text-shadow: -1px 1px 20px rgba(0,0,0,0.8);
}

h2 + p{
	margin-top: 40px;
}

p + a.button, p + p{
	margin-top: 30px;
}

a.button{
	display: inline-block;
	padding: 5px 15px;
	background: #f16a3d;
	font-family: 'averia';
	text-transform: uppercase;
	font-size: 18px;
	color: #FDE2D3;
	border: solid 1px rgba(0,0,0,0);
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5;
  transition:  all 0.5s;
}

a.button:hover{
	background: #422510;
	color: #FDE2D3;
	border: solid 1px #FDE2D3
}

ul{
	padding-left: 15px;
}

section{
	position: relative;
	padding: 120px 0px 120px;
	margin-top: -30px;
}





.navbar-default{
	background: url('../img/header.png') center bottom no-repeat;
	border: 0px; 
	box-shadow: none;
	padding-bottom: 10px;
}

.navbar-default .navbar-brand{
	height: 88px;
	padding: 0px;
	margin: 15px 0px 0px !important;
	z-index: 10;
}

.navbar-default .navbar-collapse{
	border: 0px;
	overflow-x: hidden !important;
}

.navbar-default .navbar-brand img{
	height: 80px;	
	margin-right: 40px;
}

.navbar-default .navbar-brand:first-of-type:before{
	content: '';
	display: block;
	width: 1px;
	height: 60px;
	background: #FDE2D3;
	position: absolute;
	left: 145px;
	top: 10px;
}

.navbar-default .navbar-toggle{
	background: #422510;
	margin-top: 30px;
	border-color: #FDE2D3;
	cursor: pointer;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5;
  transition:  all 0.5s;
}

.navbar-default .navbar-toggle .icon-bar{
	background: #FDE2D3;
}

.navbar-default .navbar-toggle:hover{
	background: #f16a3d;
}

.navbar-default .navbar-toggle .icon-bar{
	background: #fff;
}

.navbar-default .navbar-nav > li > a{
	font-family: 'crushky'; 
	font-size: 42px; 
	color: #FDE2D3; 
	padding: 43px 40px 53px;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5;
  transition:  all 0.5s;
}

.navbar-default .navbar-nav > li > a:hover{
	color: #422510;
}




#mainbanner{
	background: url('../img/bg_mainbanner.png') center top; 
	background-size: cover; 
	margin-top: 50px;
}
 
#mainbanner > .container > .row > div{
	height: 100vh; 
	display: table; 
	padding: 0px;
}
 
#mainbanner > .container > .row > div > div{
	display:table-cell; 
	vertical-align:middle
}

#mainbanner .row .row{
	max-width: 710px;
}

#mainbanner .col-md-4:nth-child(2){
	margin-left: -10px;
}

#mainbanner .col-md-4:last-child{
	text-align: right;
}

#mainbanner .col-md-4 p, #mainbanner h3{
	color: #FDE2D3;
}

#mainbanner .col-md-4 p{
	font-family: 'medium'; 
	font-size: 26px; 
	color: #FDE2D3;
}

#mainbanner .col-md-4 span{
	font-family: 'crushky'; 
	font-size: 68px; 
	color: #FDE2D3;
}




#live{
	background: url('../img/bg_live.png') center top; 
	background-size: cover; 
	z-index: 10;
	padding: 72px 0px 58px;
	margin-top: -40px;
}

#live h2, #live p{
	color: #FDE2D3;
}

#live p{
	padding-left: 40px;
}

#live a{
	float: right;
	margin-top: 4px;
	margin-right: 20px;
}




#about{
	background: url('../img/bg_about.png') center bottom; 
	background-size: cover; 
}

#about img{
	max-width: 100%;
}

#about p{
	color: #422510;
	max-width: 510px;
}

#about .row{
	display: table;
}

#about .row > div{
	display: table-cell;
	vertical-align: middle;
	float: none;
}






#route{
	background: url('../img/bg_routes.png') center top; 
	background-size: cover; 
}

#route .col-md-12{
	text-align: center;
}

#route img{
	max-width: 90%;
	margin: 50px 0px;
}

#route-info{
	background: url('../img/bg_routes_info.png') center top; 
	background-size: cover; 
	z-index: 10;
	padding: 70px 0px;
	margin-top: -50px
}

#route-info .container{
	text-align: center;
	color: #fff;
}

#route-info p{
	max-width: 1380px;
	display: inline-block;
}



#categories{
	background: url('../img/bg_categories_full.png') center top; 
	background-size: cover; 
	margin-top: -100px;
	padding: 200px 0px 180px;
}

#categories h2{
	color: #FDE2D3;
}

#categories a.button{
	background: #422510;
}

#categories a.button:hover{
	background: #f16a3d;
}

#categories img{
	display: none;
	width: 100%;
	margin-top: 140px;
}





#instagram{
	background: url('../img/bg_instagram.png') center top; 
	background-size: cover;
	padding: 120px 0px 150px;	
}

#instagram h2{
	margin-bottom: 50px;
}

#instagram .col-md-12{
	text-align: center; 
}

#instagram img{
	width: 100%;
	max-width: 1070px;
}

.widget-wrapper{
	margin-bottom: 30px;
	width: 100%;
	max-width: 1000px;
	margin: auto;
}





#registration{
	background: url('../img/bg_registration_full.png') center top; 
	background-size: cover; 
	margin-top: 0px;
	padding: 200px 0px 150px;
}

#registration h2{
	color: #FDE2D3;
}

#registration a.button{
	background: #f16a3d;
}

#registration a.button:hover{
	background: #422510;
}

#registration img{
	display: none;
	width: 100%;
	margin-top:  120px;
}


#rules{
	background: url('../img/bg_rules.png') center top; 
	background-size: cover;
	padding: 120px 0px 150px;	

}
#rules.racerules{
	background: none; 	
	padding-bottom: 40px;
}

#rules .col-md-6{
	margin-top: 30px;
}
#rules p{
	color: #422510;
}

#rules .col-md-6 p{
	color: #422510;
	margin-bottom: 30px;
	padding-left: 28px;
	padding-right: 15px;
	text-indent: -28px;
}

#rules span{
	display: inline-block;
	padding-left: 28px;
}

#previous{
	background: url('../img/bg_previous.png') center top; 
	background-size: cover; 
	margin-top: 50px;
}
 
#previous > .container > .row > div{
	height: 680px; 
	display: table; 
	padding: 0px;
	width: 100%;
}
 
#previous > .container > .row > div > div{
	display:table-cell; 
	vertical-align: middle;
	text-align: center;
	width: 100%;
}

#previous h2, #previous h3{
	text-align: center;
	color: #FDE2D3;
}

#list{
	background: url('../img/bg_list.png') center top; 
	background-size: cover;
	padding: 120px 0px 150px;	
}

#list .row{
	margin-bottom: 50px;
}

#list .col-md-6:last-child{
	padding-left: 30px;
	margin-bottom: 20px;
}

#list img{
	width: 100%; 
	margin-bottom: 40px;
}

#list h2{
	margin-top: 5px;
}

#list p, #list h4{
	color: #422510;
}

#list h4{
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 20px;
	margin-top: 0px;
}

#list h2 + p{
	margin-top: 0px;
}

#list a{
	margin-top: 50px;
}


.footer{
	padding: 48px 0px 22px;
	background: url('../img/footer.png') center top; 
	background-size: cover; 
	margin-top: -30px;
}

.footer .container{
	text-align: center;
}

.footer .container div{
	display: inline-block;
}

.footer img{
	float: left;
	margin-right: 15px;
	margin-top: 3px;
}

.footer p{
	display: inline;
}

.footer span{
	float: left;
	margin: 13px 20px;
	font-size: 18px;
	color: #FDE2D3;
}

.footer span:last-child{
	padding-right: 50px;
	border-right: solid 1px #FDE2D3;
}







a.scroll{
    display: none;
    background: url('../img/arrow-white.png') center center no-repeat;
    background-size:contain;
    /*animation: MoveUpDown 1s linear infinite;*/
	position: absolute; margin: auto; left: 0; right: 0; bottom: -70px; z-index: 10; width: 60px; height: 40px;
}

a.scroll:hover{
    background: url('../img/arrow.png') center center no-repeat;
    background-size:contain;
}

a:hover{
     text-decoration: none;
     color: #F16A3D;
}

a:hover p{
     color: #F16A3D;
     text-decoration: none;
}

@keyframes MoveUpDown {
  0%, 100% {
    bottom: -70px;
  }
  50% {
    bottom: -90px;
  }
}

@media (min-width: 1500px) {
	.container{
		width: 1440px;
		padding: 0px;
	} 
}



@media (max-width: 1400px) {
	.col-md-4 span {
		font-size: 38px;
		letter-spacing: 1px;
	}
}



@media (max-width: 1200px) {
	.navbar-default .navbar-nav > li > a{
		font-size: 36px;
		padding: 43px 28px 53px;
	}
	#mainbanner .row .row{
		margin: 0px 0px 0px -15px;
	}
	#mainbanner .col-md-4 span{
		font-size: 48px;
	}
	#previous > .container > .row > div{
		height: 420px;
	}
	h1{
		font-size: 80px;
	}
	h2{
		font-size: 50px;
	}
	h3, #mainbanner .col-md-4 p{
		font-size: 22px;
	}
}



@media (max-width: 991px) {
	nav .container{
		margin: 0px;
		width: 100%;
		text-align: center;
		background: url('../img/header.png') center -12px no-repeat;
	}
	.navbar-collapse{
		margin: -15px -15px 0px !important;
	}
	.navbar-collapse.collapse {
        display: none !important;
		max-height: none;
		border: none;
    }
    .navbar-collapse.collapse.in {
        display: block !important;
    }
    .navbar-header .collapse, .navbar-toggle {
        display:block !important;
    }
    .navbar-header {
        float: none;
		width: 750px;
		display: inline-block;
    }
	.navbar-default .navbar-brand:first-of-type:before{
		left: 148px;
	}
	.navbar ul{
		background: #f16a3d;
		margin-top: 0;
		padding-bottom: 10px;
		margin-bottom: 15px;
		float: none !important;
	}
	.navbar-nav > li{
		float: none;
	}
	.navbar-default .navbar-nav > li > a {
		padding: 20px;
		display: block;
		width: 100%;
	}
	
	
	#mainbanner{
		padding: 70px 0px;
	}
	#mainbanner img{
		width: 160px;
		margin-top: 60px;
	}
	
	#mainbanner > .container > .row > div{
		height: auto;
		display: block;
	}
	
	#mainbanner > .container > .row > div > div{
		display: block;
		text-align: center;
	}
	
	#mainbanner .col-md-4:last-child{
		text-align: center;
		margin-bottom: 50px;
	}
	
	#live{
		margin-top: -60px;
	}
	
	#live p{
		padding-left: 0px;
	}
	
	#live a{
		float: left;
		margin-bottom: 20px;
	}
	
	#about .row > div{
		display: block;
	}
	
	#about p{
		max-width: 100%;
	}
	
	#about img{
		margin-top: 50px;
	}
	
	#route img{
		max-width: 100%;
	}
	
	#categories{
		background: url('../img/bg_categories_left.png') center top;
		padding-bottom: 0px;
	}
	
	#categories img{
		display: block;
	}
	
	#instagram, #rules{
		margin-top: -10px;
	}
	
	#registration{
		background: url('../img/bg_registration_left.png') center top;
		padding-bottom: 0px;
	}
	
	#registration img{
		display: block;
	}
	
	#previous{
		margin-top: 90px;
	}
	
	#list img{
		margin-bottom: 20px;
	}
	
	#list p + p{
		margin-top: 20px;
	}
	
	#list a{
		margin-top: 10px;
	}

	.footer p{
		display: block;
		text-align: center;
	}
	
	.footer img, .footer span{
		float: none;
	}

	.footer span:last-child{
		padding-right: 0px;
		border-right: 0px;
		margin-right: 0px;
	}
	
	.footer p + p{
		margin-top: 0px;
	}
}

@media (max-width: 767px) {
    .navbar-header {
		width: 100%;
		display: inline-block;
    }
}

@media (max-width: 580px) {

	h1{
		font-size: 60px;
	}
	
	#list{
		padding: 80px 0px;
	}
	
	#list h4{
		font-size: 20px;
	}
}

@media (max-width: 480px) {
	nav .container{
		background: url('../img/header.png') center -22px no-repeat;
	}
	.navbar-default .navbar-brand{
		height:78px;
	}
	.navbar-default .navbar-brand img{
		height: 70px;
		margin-top: 0px;
	}
	.navbar-default .navbar-toggle{
		margin-top: 28px;
	}
	
	.navbar-default .navbar-brand:first-of-type:before{
		left: 130px;
		top: 5px;
	}
	
	#previous > .container > .row > div{
		height: 350px;
	}
	
	h3, #mainbanner .col-md-4 p{
		font-size: 18px;
	}
	
	h1{
		font-size: 48px;
	}
	
	h2, #mainbanner .col-md-4 span{
		font-size: 40px;
	}
	
	p, li, a.button{
		font-size: 16px;
	} 
	
	.footer{
		padding: 50px 0px 0px;
	}
	
	.footer span{
		font-size: 15px;
	}
	
	.footer span:last-child{
		display: block;
		margin-left: 0px;
		margin-top: 20px;
	}
	
	.footer img{
		height: 38px;
	}
	
	#about, #route, #instagram, #rules{
		padding: 60px 0px 80px;
	}
	
	#categories{
		padding-top: 150px;
	} 
	
	#registration{
		padding-top: 170px;
	}
	
	#categories img, #registration img{
		margin-top: 60px
	}
}

@media (max-width: 400px) {
	nav .container{
		background: url('../img/header.png') center -31px no-repeat;
	}
	.navbar-default{
		padding-bottom: 0px;
	}
	.navbar-default .navbar-brand{
		height:78px;
	}
	.navbar-default .navbar-brand img{
		height: 60px;
		margin-right: 30px !important;
		margin-top: 0px;
	}
	.navbar-default .navbar-brand:first-of-type:before{
		height: 50px;
		left: 110px;
		top: 5px;
	}
	.navbar-default .navbar-toggle{
		margin-top: 25px;
	}
	.navbar-default .navbar-collapse{
		margin-top: -25px !important;
	}
}