/* -------------------------------- 
PRIMARY STYLES
-------------------------------- */
*, *::after, *::before { box-sizing: border-box; }
body { font-family: sans-serif; font-weight: 400; line-height: 1; color: black; }

h1, h2, h3, h4 { 
	font-family: 'DIN Condensed', sans-serif;
	line-height: .8;
	font-style: normal;
	text-transform: uppercase;
}
h1 { font-size: 50px; }
h2 { font-size: 32px; }
h3 { 
	font-family: 'Saturday Script', sans-serif;
	font-size: 24px;
	line-height: 1;
	text-transform: none;
	margin-bottom: .3em;
}
h4 { font-size: 16px; }

table { width: 100%; }
th, td { font-size: 16px; line-height: 1; }

ul, p { font-family: 'Open Sans', sans-serif; font-size: 16px; font-weight: 300; line-height: 1.5; color: white; }

a { text-decoration: none; }
a:hover { }

b, strong { font-weight: bold; }
i, em { font-style: italic; }

/* -------------------------------- 
EFFECTS
-------------------------------- */
.txt-shadow { text-shadow: 10px 10px 50px black; }
.bx-shadow {
	-webkit-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.2);
	-moz-box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.2);
	box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.2);
}

/* -------------------------------- 
UC
-------------------------------- */
.overlay { 
	z-index: 99;
	position: fixed;
	width: 100%;
	height: 100%;
	/*background: rgba(0,0,0,.5);*/
}
.overlay .uc {
	position: absolute;
    top: calc(50% - 30vw);
    left: calc(50% - 30vw);
    width: 60vw;
	text-align: center;
	display: block;
	border-radius: 50%;
	overflow: hidden;
	background: #6e9ed4;
}
.overlay .uc:after { content: ""; display: block; padding-bottom: 100%; }
.overlay .uc-inner { position: absolute; width: 100%; height: 100%; }
.overlay .uc h2 { color: white; }
.overlay .uc h3 { color: #005caa; }
.overlay .uc h3 { 
	-ms-transform: rotate(-6deg);
    -webkit-transform: rotate(-6deg);
    transform: rotate(-6deg);
    margin: .5em 0;
}
.overlay .uc h2 { 
	-ms-transform: rotate(-3deg);
    -webkit-transform: rotate(-3deg);
    transform: rotate(-3deg);
}

/* -------------------------------- 
NAV
-------------------------------- */
nav {
	z-index: 3;
	position: relative;
	width: 100%;
	background: #000013;
	padding: 1em 0;
}
nav ul {
	z-index: 3;
	position: absolute;
	top: 3em;
	left: 0;
	width: 100%;
	background: #000013;
	padding: 2em;
}
nav ul li { margin: 1em 0; }
nav ul li a { 
	font-family: 'DIN Condensed', sans-serif;
	font-size: 20px;
	text-transform: uppercase;
	color: white;
	margin: 0 .5em;
}
nav ul li a:hover,
nav ul li.current-menu-item a { color: #005caa; }

nav .logo-container { z-index: 2; position: relative; }
nav .logo { 
	position: absolute;
    top: -2em;
    left: 1em;
    width: 100%;
	text-align: center;
	display: block;
	border-radius: 50%;
	overflow: hidden;
	background: #000013;
	background: -moz-linear-gradient(top,  #000013 40%, #005ca9 100%);
	background: -webkit-linear-gradient(top,  #000013 40%,#005ca9 100%);
	background: linear-gradient(to bottom,  #000013 40%,#005ca9 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000013', endColorstr='#005ca9',GradientType=0 );
	box-shadow: 0 0 50px 0 #000013;
	-webkit-transition: all .2s ease-in-out;
}
nav .logo:hover { -webkit-transform: scale(1.1); }
nav .logo:after { content: ""; display: block; padding-bottom: 100%; }
nav .logo-inner { position: absolute; width: 100%; height: 100%; }
nav .logo-inner a img { margin: -3em 1em 0; }

.nav-toggle {
	-webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    cursor: pointer;
    position: relative;
    width: 2rem;
    height: 2rem;
    float: right;
    margin: 0 1em;
    padding: 1em 0;
}
.nav-toggle:hover { opacity: .5; }

.nav-toggle .nav-toggle-bar,
.nav-toggle .nav-toggle-bar::after,
.nav-toggle .nav-toggle-bar::before {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-ms-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
	background: white;
	content: '';
	height: 0.2rem;
	width: 100%;
}
.nav-toggle .nav-toggle-bar { margin-top: 0; }
.nav-toggle .nav-toggle-bar::after { margin-top: 0.6rem; }
.nav-toggle .nav-toggle-bar::before { margin-top: -0.6rem; }

.nav-toggle.expanded .nav-toggle-bar { background: transparent; }
.nav-toggle.expanded .nav-toggle-bar::after,
.nav-toggle.expanded .nav-toggle-bar::before { background: white; margin-top: 0; }
.nav-toggle.expanded .nav-toggle-bar::after {
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.nav-toggle.expanded .nav-toggle-bar::before {
	-ms-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/* -------------------------------- 
BUTTONS
-------------------------------- */
.btns { cursor: pointer; }

#backtotop { 
	display: none;
	z-index: 999;
	position: fixed;
	bottom: 2em;
	right: 2em;
	color: white;
	background: #005caa;
	width: 3em;
	height: 3em;
	text-align: center;
	line-height: 3em;
	border-radius: 50%;
}

/* -------------------------------- 
FORMS
-------------------------------- */
form { position: relative; margin-bottom: 6em; }
form label,
form .input-text,
form select,
form textarea {
	font-size: 16px;
	font-weight: bold;
	width: 100%;
	padding: 2%;
	margin-bottom: 10px;
	background: transparent;
	border: 1px solid rgba(255,255,255,.4);
	color: #d6bc76;
}
form label { 
	color: white;
	display: block;
	border: none;
	line-height: 1.5;
	font-weight: normal;
}
form select { height: 44px; }
form textarea { height: 120px; }
form .input-submit {
}
form .input-submit:hover {}

/* -------------------------------- 
HEADER
-------------------------------- */
header { 
	position: relative;
	width: 100%;
	background: url(img/bg.jpg) no-repeat top center;
	background-size: 100vw auto;
	margin-bottom: 5em;
}

/* -------------------------------- 
ARTICLE & SECTIONS
-------------------------------- */
article { }
section { position: relative; width: 100%; }
section ul,
section p { line-height: 1.5; margin-bottom: 2em; }
section img { margin: auto; }

.container { margin: 0 auto; position: relative; }
.inner { padding: 0 1.5em; }

.desktop-hide { height: 100%; }
.desktop-show { display: none; }

.last { margin-bottom: 0; }

.table-align { display: table; width: 100%; height: 100%; }
.table-cell-align { display: table-cell; vertical-align: middle; }
.table-cell-align.bottom { vertical-align: bottom; }

section.intro {}

/* -------------------------------- 
FOOTER
-------------------------------- */
footer {
    width: 100%;
    padding: 5em 0;
	background: #000013;
	background: -moz-linear-gradient(top,  #000013 0%, #005ca9 100%);
	background: -webkit-linear-gradient(top,  #000013 0%,#005ca9 100%);
	background: linear-gradient(to bottom,  #000013 0%,#005ca9 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000013', endColorstr='#005ca9',GradientType=0 );
}
footer h4 { color: #6e9ed4; margin-bottom: .5em; }
footer p { color: white; margin-bottom: 2em; }
footer p a { color: white; }

footer .clickable { position: relative; z-index: 99; }

/* -------------------------------- 
MEDIA QUERIES
-------------------------------- */
@media screen and (min-width: 35.5em) {
	.container { width: 568px; }

	.overlay .uc { top: calc(50% - 125px);  left: calc(50% - 125px); width: 250px; }
}
@media screen and (min-width: 48em) {
	.container { width: 768px; }
}
@media screen and (min-width: 64em) {
	.container { width: 1024px; }
	.inner { padding: 0 2em; }

	.desktop-hide { display: none !important; }
	.desktop-show { display: inline !important; }

	.overlay .uc { top: calc(50% - 200px); left: calc(50% - 200px); width: 400px; }

	h1 { font-size: 100px; }
	h2 { font-size: 80px; }
	h3 { font-size: 46px; }
	h4 { font-size: 28px; }

	th, td,
	ul, p,
	form label,
	form .input-text,
	form select,
	form textarea { font-size: 18px; }

	nav ul { 
		position: relative;
		float: right;
		top: auto;
		left: auto;
		right: 0;
		width: auto;
		background: none;
		padding: 0;
	}
	nav ul li { display: inline; }
	nav ul li a { font-size: 32px; }
}
@media screen and (min-width: 80em) {
	.container { width: 1200px; }
}

/* IE11 
@media all and (-ms-high-contrast:none) {
	*::-ms-backdrop,
	[data-aos^=fade][data-aos^=fade],
	[data-aos^=zoom][data-aos^=zoom] { opacity: 1; }
}*/
