html {
	color: #333333;
	font-size: 100%;
	line-height: 1.5;
}

*, *:before, *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

body {
	margin: 0;
	padding: 0;
	background: #f3f9ff;
	color: #333333;
	font-family: 'Open Sans', sans-serif;
}
article, aside, footer, header, nav, section, figcaption, figure, main {
    display: block;
}
img {
    max-width: 100%;
    border-style: none;
}
::-moz-selection {
    background: #feecba;
	color: #302D29;
    text-shadow: none;
}

::selection {
	background: #feecba;
	color: #302D29;
	text-shadow: none;
}
/* ==========================================================================
   Main Structure
   ========================================================================== */
header {
	background: #3242dc;
	color: #eefb6b;
	margin: 0;
	padding: 0;
}
.content-cols-constrained {
	max-width: 90vw;
	margin: 0 auto;
	padding-top: 2rem;
	padding-bottom: 2rem;
}
img {
	padding-bottom: 3rem;
}
footer {
	background-color: #0e0e6f;
	margin-top: 3em;
	padding: 1.5em;
	/*display: flex;
	flex-wrap: wrap;*/
	justify-content: space-around;
	color: #ffffff;
}
footer ul {
	/*max-width: 80rem;*/
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	list-style: none;
	/*padding: 1rem;*/
	margin: 0 auto;
}
ul li {
	/*display: inline-flex;*/
	font-size: 1.5rem;
}
/*----- The Basic Grid ------
 custom classes:
 .content-cols-constrained: padded gridcontainer with max width
 .content-cols-padded: padded gridcontainer
 .content-cols: 1fr = base grid (display grid)
 .col-50: 1fr 1fr
 .col-33: 1fr 1fr 1fr
 .pic-container: repeat(10, 1fr)
 ---------------------------------*/
.content-cols > * {
		width: auto;
		margin: 0;
		padding: 0;
	}
.content-cols {
		display: grid;
		grid-template-columns: 1fr;
	}
.col-50 {
		grid-template-columns: 1fr 1fr;
	}
.col-50-gap {
		grid-row-gap: 3rem;
		grid-column-gap: 3rem;
	}





/* ==========================================================================
   Typography
   ========================================================================== */
h1 {
	font-family: "Titan One", sans-serif;
	font-size: 5.063rem;
	text-align: center;
	color: #1d2bbc;
}
h2 {
	font-weight: 700;
	font-size: 3.157rem;
	line-height: 1.3;
}
h3 {
	font-weight: 700;
	font-size: 2.369rem;
	line-height: 1.3;
	margin-bottom: 1.5rem;
}
h4 {
	font-weight: 600;
	font-size: 2.25rem;
	line-height: 1.3;
	margin-bottom: 1.5rem;
}

p, ul li {
	font-size: 1.777rem;
	line-height: 1.5;
	font-weight: 400;
	/*text-align: justify;*/
}
.langselection {
	text-transform: uppercase;
}



/* ==========================================================================
   Navigation
   ========================================================================== */
.main-nav {
	width: 100%;
	height: auto;
	background-clip: padding-box;
	background: #09094e;
	border-bottom: .5em solid;
	border-color: #40637f;
}
.main-nav ul {
	max-width: 80rem;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	list-style: none;
	padding: 0 1rem 1rem 1rem;
	margin: 0 auto;
}
.main-nav ul li {
	display: inline-flex;
}
.main-nav ul li a {
	padding: 1rem 0.25rem 0.5rem 0.25rem;
	margin-right: 2rem;
	margin-left: 1rem;
	text-decoration: none;
	font-size: 2.25rem;
	line-height: 1.2;
	font-weight: 500;
	color: #fff;
	border: 0;
}
.main-nav ul li a:hover {
	color: #D5D56C;
	border: 0;
}
.main-nav ul li a.current {
	color: #cdf087;
	cursor: default;
}
 /*======================================
   TEXTLINKS
   ====================================== */
a {
	color: #0029b4;
	border-bottom: 1px dotted;
	text-decoration: none;
	outline: none;
}
a:hover {
	text-decoration: none;
	border-bottom: 1px solid;
}
footer a {
	color: #c6c9bd;
}

