/*!
 * Start Bootstrap - Grayscale Bootstrap Theme (http://startbootstrap.com)
 * Code licensed under the Apache License v2.0.
 * For details, see http://www.apache.org/licenses/LICENSE-2.0.
 */

body {
    width: 100%;
    height: 100%;
    font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
    color: #fff;
    background-color: #000;
}

html {
    width: 100%;
    height: 100%;
}
h1, h2, h3, h4, h5, h6 {
    text-transform: uppercase;
    font-family: Montserrat,"Helvetica Neue",Helvetica,Arial,sans-serif;
    font-weight: 700;
    letter-spacing: 1px;
}
/* GLOBAL */

a{
	color: #fff;
	transition: 0.3s;
	font-weight: 600;
}
a:hover, a:focus{
    color: #fff;
    text-decoration: none;
}
p{
    margin: 0 0 1em;
    font-size: 1.1em;
    line-height: 1.5;
}
body{
	background: #0e0e0e;
}
.content-section{
    padding-top: 5rem;
    padding-bottom: 5rem;
    width: 100%;
}
.content-section h2{
	font-size: 3rem;
    margin-top: 2rem;
	margin-bottom: 1rem;
	text-align: center;
}
.content-section h3{
    font-size: 2.25rem;
    margin-top: 3rem;
	margin-bottom: 1rem;
	text-align: center;
}
.content-section p{
    font-size: 1.75rem;
    margin-top: 2rem;
    margin-bottom: 0;
}
.content-section ul{
    margin-top: 2rem;
    text-align: left;
}
.content-section ul li{
    font-size: 1.5rem;
    margin-bottom: 1rem;
}
a.submit-button{
    background: #fff;
    border: 2px solid #fff;
    border-radius: 1rem;
    color: #0e0e0e;
    display: inline-block;
    font-size: 2.75rem;
    margin-top: 2.5rem;
    padding: 1rem 2.5rem;
    transition: 0.3s;
}
a.submit-button:hover{
    background: transparent;
    color: #fff;
    text-decoration: none;
}
/* HEADER */

.navbar{
    padding: 1.5rem 0;
    border-bottom: 0;
    background: 0 0;
    -webkit-transition: background .5s ease-in-out,padding .5s ease-in-out;
    -moz-transition: background .5s ease-in-out,padding .5s ease-in-out;
    transition: background .5s ease-in-out,padding .5s ease-in-out;
}
.navbar.top-nav-collapse {
    background: #000;
    box-shadow: 0 1px 2px 0px rgba(51, 51, 51, 0.25);
}
.navbar .navbar-header{
	float: none;
	text-align: center;
}
.navbar .navbar-header .navbar-brand{
	float: none;
	height: 0;
	line-height: 1;
	margin: 0;
	padding: 0;
}
.navbar.top-nav-collapse .navbar-header .navbar-brand{
	padding: 1.5rem;
}
.navbar .navbar-brand img{
	display: unset;
	transition: 0.3s;
	width: 100%;
	max-width: 0px;
}
.navbar.top-nav-collapse .navbar-brand img{
	transition: 0.3s;
	max-width: 200px;
}
.navbar ul.nav{
	float: none;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-top: 1.5rem;
}
.navbar ul.nav li{
	margin: 0 0.25em;
}
.navbar ul.nav li a{
    border-radius: 3rem;
    color: #0e0e0e;
    font-size: 1.25rem;
    line-height: 1;
    padding: 0.75rem 1.25rem;
    text-transform: uppercase;
	transition: 0.3s;
}
.navbar ul.nav li a:hover{
	background: #0e0e0e;
	box-shadow: 0 1px 2px 0px rgba(51, 51, 51, 0.5);
	color: #fff;
	outline: 0;
}
.navbar.top-nav-collapse ul.nav li a{
    color: #fff;
}
.navbar.top-nav-collapse ul.nav li a:hover{
    background: #fff;
    color: #0e0e0e;
}
.navbar.top-nav-collapse ul.nav li a:focus{
	background: transparent;
	color: #fff;
}
.navbar.top-nav-collapse ul.nav li.active a, .navbar.top-nav-collapse ul.nav li.active a:hover, .navbar.top-nav-collapse ul.nav li.active a:focus{
    background: #fff;
    box-shadow: 0 1px 2px 0px rgba(51, 51, 51, 0.5);
    color: #0e0e0e;
}
/* SIDE PHOTOS */

#page-top{
	display: flex;
}
#page-top .sidebar-photos{
	width: 15%;
}
#page-top .sidebar-photos img{
	border: 5px solid #0e0e0e;
	width: 100%;
}
#page-top .sidebar-photos img.borderless{
	border: 0;
}
#page-top .center-mass{
	width: 70%;
}
/* FRONT */

.intro{
    padding: 13rem 0 5rem;
    text-align: center;
    background: #fff;
    height: auto;
    width: 100%;
}
.intro .intro-body .container{
	width: 100%;
}
.main-logo{
	max-width: 525px; 
	width: 100%; 
	background: #fff; 
	padding: 25px; 
	border-radius: 30px;
}
.social-box{
	margin: 10px auto; 
	max-width: 350px;
	width: 100%;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.social-box > div{
	margin: 0.5em;
}
/* EARLY SUBMIT */

#early-submit .icon{
    background: #fff;
    border-radius: 5rem;
    display: inline-block;
    width: 100px;
    height: 100px;
}
#early-submit .icon i{
    color: #0e0e0e;
    font-size: 7rem;
    line-height: 10rem;
}
#early-submit .date{
    font-size: 2rem;
}
/* OVERVIEW */

#about{
    background: #fff;
    color: #0e0e0e;
}
#about a{
    color: #0e0e0e;
    text-decoration: underline;
}
/* PRIZES */

#prizes ul{
	text-align: left;
}
#prizes ul li{
	margin-bottom: 0.5em;
}
#prizes .subtitle{
    font-weight: 600;
}
/* BENEFITS */

#benefits{
    background: #fff;
    color: #0e0e0e;
}
#benefits .social-icons{
	list-style: none;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#benefits .social-icons li{
    margin: 2.5rem 2rem;
    max-width: 175px;
    text-align: center;
}
#benefits .social-icons li .icon{
    background: #0e0e0e;
    border-radius: 5rem;
    display: inline-block;
    margin-bottom: 1.5rem;
    width: 60px;
    height: 60px;
}
#benefits .social-icons li .icon i{
    color: #fff;
	width: 100%;
    font-size: 3rem;
    line-height: 6rem;
}
#benefits .social-icons li .title{
    font-size: 1.5rem;
    font-weight: 600;
}
#benefits .social-icons li .subtitle{
    font-size: 2.25rem;
}
/* CATEGORIES */

#categories ul{
	text-align: left;
}
#categories ul li{
	margin-bottom: 1em;
}
#categories .subtitle{
    font-weight: 600;
}
/* PARTNERS */

#partners{
    background: #fff;
    color: #0e0e0e;
}
.partner-box{
	color: #3A3A3A;
	border: 0.5em solid #3A3A3A;
    border-radius: 1em;
	background-color: white;
    padding: 5em 2.5em;
}
.partner-box h3{
	margin: 1em 0 0.5em;
	font-size: 1.5em;
}
.partners-container{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}
.partners-container a img{
	margin: 1em;
	max-width: 170px;
	height: auto;
	max-height: 50px;
	-webkit-filter: grayscale(100%);
	filter: grayscale(100%);
	transition: 0.3s;
}
.partners-container a img:hover{
	-webkit-filter: grayscale(0);
    filter: grayscale(0);
}
#partners a{
	color: #333;
}
/* RULES */

#rules{
    background: #fff;
    color: #0e0e0e;
}
.official-rules{
	height: 500px;
	overflow-x: hidden;
}
.official-rules p, .official-rules ul{
	font-size: 1.5rem;
}
.official-rules ul li ul{
    margin-top: 1rem;
}
/* ERROR */

.error-body{
	text-align: center;
}
.error-message{
	max-width: 800px;
	width: 100%;
	margin: 2em auto;
	background: #6792cc;
	text-align: center;
	padding: 1em 0 2em;
}
.error-back{
	padding: 1em;
	background: #6792cc;
	text-decoration: none;
}
.error-back:hover{
	color: #fff;
}

/* THANK YOU PAGE */

.thank-you-box{
	max-width: 700px;
	width: 100%;
	border-radius: 30px;
}
.thank-you-box img{
	max-width: 500px;
	width: 100%;
}
@media all and ( max-width: 767px ){
	/* GLOBAL */
	
	.border-box{
		margin: 5em 1em;
	}
	.content-section{
		padding-top: 2.5rem;
		padding-bottom: 2.5rem;
	}
	.content-section h2{
		font-size: 1.75rem;
	}
	.content-section h3{
		font-size: 1.5rem;
	}
	.content-section p{
		font-size: 1.35rem;
	}
	.content-section ul{
		padding-left: 1rem;
	}
	.content-section ul li{
		font-size: 1.35rem;
	}
	a.submit-button{
		font-size: 2rem;
	}
	/* HEADER */
	
	.navbar{
		background: #0e0e0e;
		min-height: auto;
		padding: 0;
	}
	.navbar .navbar-header{
		display: flex;
		justify-content: space-between;
	}
	.navbar .navbar-header::before, .navbar .navbar-header::after{
		display: none;
	}
	.navbar .navbar-brand{
		margin: 0 !important;
		height: auto;
	}
	.navbar .navbar-brand img{
		max-width: 180px;
	}
	.navbar.top-nav-collapse .navbar-brand img{
		max-width: 160px;
	}
	.navbar ul.nav li{
		width: 100%;
	}
	.navbar ul.nav li a{
		border-radius: 0;
		color: #fff;
	}
	/* SIDE PHOTOS */

	#page-top{
		display: flex;
	}
	#page-top .sidebar-photos{
		display: none;
	}
	#page-top .center-mass{
		width: 100%;
	}
	/* INTRO */
	
	.intro{
		padding: 100px 0;
	}
	/* BENEFITS */
	
	#benefits .social-icons li{
		max-width: 300px;
	}
	#benefits .social-icons svg{
		font-size: 3em;
	}
	/* CATEGORIES */
	
	#categories{
		text-align: left;
	}
	#categories ul{
		padding-left: 15px;
	}
	#categories ul li{
		margin-bottom: 1em;
	}
	/* PARTNERS */
	
	.partner-box{
		margin: 5em 1em;
	}
	/* FOOTER */

	footer p{
		font-size: 1.35rem;
	}
}