:root {
  --text-color: #343434;
  --primary-color: #2F57A4;
  --secondary-color:#79AEDF;	
  --tertiary-color:#C8E1F8;
  --white-color:#fff;
  --bgcolor-0: #fff;
  --bgcolor-1: #EBEBEB;
  --bgcolor-2: #2F57A4;
  --bgcolor-3: #79AEDF;
  --bgcolor-4:#C8E1F8;	
  --light-grey: #EBEBEB;
  --darker-light-grey: #f2f4f5;	
}

/*
 * general.css
 */
*
{
	box-sizing:border-box;
	word-break:break-word;
}


@font-face {
	font-family: 'Geomanist Black';
	src: url('../Fonts/geomanist/hinted-Geomanist-Black.eot');
	src: url('../Fonts/geomanist/hinted-Geomanist-Black.eot?#iefix') format('embedded-opentype'),
		url('../Fonts/geomanist/hinted-Geomanist-Black.woff2') format('woff2'),
		url('../Fonts/geomanist/hinted-Geomanist-Black.woff') format('woff'),
		url('../Fonts/geomanist/hinted-Geomanist-Black.ttf') format('truetype'),
		url('../Fonts/geomanist/hinted-Geomanist-Black.svg#Geomanist-Black') format('svg');
	font-weight: 900;
	font-style: normal;
}


@font-face {
	font-family: 'Geomanist Light';
	src: url('../Fonts/geomanist/hinted-Geomanist-Light.eot');
	src: url('../Fonts/geomanist/hinted-Geomanist-Light.eot?#iefix') format('embedded-opentype'),
		url('../Fonts/geomanist/hinted-Geomanist-Light.woff2') format('woff2'),
		url('../Fonts/geomanist/hinted-Geomanist-Light.woff') format('woff'),
		url('../Fonts/geomanist/hinted-Geomanist-Light.ttf') format('truetype'),
		url('../Fonts/geomanist/hinted-Geomanist-Light.svg#Geomanist-Light') format('svg');
	font-weight: 300;
	font-style: normal;
}

@font-face {
	font-family: 'Geomanist';
	src: url('../Fonts/geomanist/hinted-Geomanist-Regular.eot');
	src: url('../Fonts/geomanist/hinted-Geomanist-Regular.eot?#iefix') format('embedded-opentype'),
		url('../Fonts/geomanist/hinted-Geomanist-Regular.woff2') format('woff2'),
		url('../Fonts/geomanist/hinted-Geomanist-Regular.woff') format('woff'),
		url('../Fonts/geomanist/hinted-Geomanist-Regular.ttf') format('truetype'),
		url('../Fonts/geomanist/hinted-Geomanist-Regular.svg#Geomanist-Regular') format('svg');
	font-weight: normal;
	font-style: normal;
}



@font-face {
	font-family: 'Geomanist Bold';
	src: url('../Fonts/geomanist/hinted-Geomanist-Bold.eot');
	src: url('../Fonts/geomanist/hinted-Geomanist-Bold.eot?#iefix') format('embedded-opentype'),
		url('../Fonts/geomanist/hinted-Geomanist-Bold.woff2') format('woff2'),
		url('../Fonts/geomanist/hinted-Geomanist-Bold.woff') format('woff'),
		url('../Fonts/geomanist/hinted-Geomanist-Bold.ttf') format('truetype'),
		url('../Fonts/geomanist/hinted-Geomanist-Bold.svg#Geomanist-Bold') format('svg');
	font-weight: bold;
	font-style: normal;
}



html.menuopen
{
	height:100% !important;
    overflow:hidden !important;
	font-size: 100%;
}

body{
	 background-color: var(--bgcolor-0);
	font-family: "canada-type-gibson", sans-serif;
	font-weight: 400;
	font-style: normal;
  	color:var(--text-color);
	letter-spacing:0.2px;
	font-size:1rem;
	line-height:21px;
}

a
{
    transition:all 0.3s ease-in-out;
	color: var(--primary-color);
	text-decoration:none;
}
a:hover{color: var(--secondary-color);}

h1{
font-family: 'Geomanist', sans-serif;
font-size: 2.4rem; 
font-weight: normal;
font-style: normal;
line-height: 3.0rem; 
margin-bottom:20px;
color: var(--primary-color);	
}

h2{
font-family: 'Geomanist', sans-serif;
font-size:1.8rem;	
font-weight: normal;
font-style: normal;
line-height: 2.2rem;	
margin-bottom:15px;
color: var(--secondary-color);	
}

h3{
font-family: 'Geomanist', sans-serif;
font-size:1.25rem;	
font-weight: normal;
font-style: normal;	
line-height: 1.4rem;
margin-bottom:10px;
color: var(--secondary-color);	
}

h4{
font-family: 'Geomanist', sans-serif;
line-height: 1rem;	
font-weight: bold;
font-style: normal;	
margin-bottom:10px;
color: var(--primary-color);	
	
}



h1.withbadge_grey:after{
	background: url(../Images/W_grey.svg) no-repeat;
	background-size: 100%;
	content: '';
	display: inline-block;
	height: 22px;
	margin: 0 0 0 5px;
	width: 22px;
	position:relative;
	top:-20px;
}

h1.withbadge_primary:after{
		background: url(../Images/W_primary.svg) no-repeat;
	background-size: 100%;
	content: '';
	display: inline-block;
	height: 22px;
	margin: 0 0 0 5px;
	width: 22px;
	position:relative;
	top:-20px;
}
h1.withbadge_secondary:after{
		background: url(../Images/W_secondary.svg) no-repeat;
	background-size: 100%;
	content: '';
	display: inline-block;
	height: 22px;
	margin: 0 0 0 5px;
	width: 22px;
	position:relative;
	top:-20px;
}



h2.withbadge_grey:after{
	background: url(../Images/W_grey.svg) no-repeat;
	background-size: 100%;
	content: '';
	display: inline-block;
	height: 20px;
	margin: 0 0 0 5px;
	width: 20px;
	position:relative;
	top:-20px;
}

h2.withbadge_primary:after{
		background: url(../Images/W_primary.svg) no-repeat;
	background-size: 100%;
	content: '';
	display: inline-block;
	height: 20px;
	margin: 0 0 0 5px;
	width: 20px;
	position:relative;
	top:-20px;
}
h2.withbadge_secondary:after{
		background: url(../Images/W_secondary.svg) no-repeat;
	background-size: 100%;
	content: '';
	display: inline-block;
	height: 20px;
	margin: 0 0 0 5px;
	width: 20px;
	position:relative;
	top:-18px;
}

h3.withbadge_grey:after{
	background: url(../Images/W_grey.svg) no-repeat;
	background-size: 100%;
	content: '';
	display: inline-block;
	height: 16px;
	margin: 0 0 0 5px;
	width: 16px;
	position:relative;
	top:-16px;
}

h3.withbadge_primary:after{
		background: url(../Images/W_primary.svg) no-repeat;
	background-size: 100%;
	content: '';
	display: inline-block;
	height: 16px;
	margin: 0 0 0 5px;
	width: 16px;
	position:relative;
	top:-16px;
}
h3.withbadge_secondary:after{
		background: url(../Images/W_secondary.svg) no-repeat;
	background-size: 100%;
	content: '';
	display: inline-block;
	height: 16px;
	margin: 0 0 0 5px;
	width: 16px;
	position:relative;
	top:-16px;
}


img,
picture
{
    display:block;
    height:auto;
    max-width:100%;
}

p
{
    margin:0 0 15px;
}

b, strong
{
    font-weight:bold;
}

i, em, small
{
    font-style:italic;
}

ol
{
    padding:0 0 0 16px;
    margin:0 0 15px;
}

ul
{
    padding:0 0 0 20px;
    margin:0 0 15px;
}

sub
{
    vertical-align:sub;
}

sup
{
	font-size:12px;
    vertical-align:super;
}

iframe,
video
{
	max-width:100%;
}



.button, .primarybutton
{
    cursor:pointer;
    display:inline-block;
    margin:0 auto;
    text-decoration:none;
    transition:all 0.3s ease-in-out;
    -webkit-appearance: none;
	background-color: var(--bgcolor-2);
	color:#fff;
	border-radius: 1px;
	border:1px solid var(--bgcolor-2);
	padding:10px;
	font-size:1.0rem;
	font-family: "canada-type-gibson", sans-serif;

}

input[type="submit"],
button[type="submit"]{
	cursor:pointer;
    display:inline-block;
    margin:0 auto;
    text-decoration:none;
    transition:all 0.3s ease-in-out;
    -webkit-appearance: none;
	border-radius: 1px;
	background-color: var(--bgcolor-2);	
	border:1px solid var(--bgcolor-2);
	font-size:1.0rem;
	font-family: "canada-type-gibson", sans-serif;

}




.secondarybutton{
	cursor:pointer;
    display:inline-block;
    margin:0 auto;
    text-decoration:none;
    transition:all 0.3s ease-in-out;
    -webkit-appearance: none;
	background-color: var(--bgcolor-3);
	color:#fff;
	border-radius: 3px;
	padding-left:15px;
	padding-right:15px;
	padding-top:5px;
	padding-bottom:5px;
	font-weight:normal;
	border:1px solid var(--bgcolor-3);
	font-size:1.0rem;
	font-family: "canada-type-gibson", sans-serif;

}


input[type="submit"]:hover,
button[type="submit"]:hover,
.button:hover{
    text-decoration:none;
	background: var(--bgcolor-3);
	border:1px solid var(--bgcolor-3);
	color:var(--bgcolor-1);
	font-weight:normal;
	opacity: 0.9;
}

.primarybutton:hover {
	text-decoration:none;
	background: var(--bgcolor-3);
	border:1px solid var(--bgcolor-3);
	color:var(--bgcolor-1);
	font-weight:normal;
	opacity: 0.9;
}

.secondarybutton:hover {
	text-decoration:none;
	background: none;
	border:1px solid var(--bgcolor-2);
	color:var(--bgcolor-2);
	font-weight:normal;

}





.mwformular-default,
.mwformular-textarea,
.mwformular-actions
{
    float:left;
    margin:0 30px 30px 0;
    width:calc(100% / 3 - 60px / 3);
}

.mwformular-default:nth-child(3n),
.mwformular-textarea:nth-child(3n)
{
    margin-right:0;
}

.mwformular-checkbox,
.mwformular-actions
{
    float:left;
    margin:0 0 30px;
    width:100%;
}

.mwformular-required
{
    float:left;
    width:100%;
}

input::placeholder,
textarea::placeholder
{
	color:#404143;
	font-family:canada-type-gibson, sans-serif;
    font-size:1.0rem;
    font-weight:400;
    line-height:24px;
}

input[type="checkbox"]
{
	float:left;
    margin:3px 8px 0 0;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
textarea
{
	background:#f5f5f5;
	border:0px;
	border-radius:0px;
    color:#404143;
    font-family:canada-type-gibson, sans-serif;
    font-size:1.0rem;
    font-weight:400;
    line-height:24px;
    padding:10px 13px;
    width:100%;
}



textarea
{
    height:120px;
    resize:none;
}


table
{
	margin:0 0 25px;
}

table tr:nth-child(odd)
{
	background:#f5f5f5;
}

table tr td
{
	padding:5px 15px;
}

.text-center
{
    text-align:center;
}

.text-right
{
    text-align:right;
}

.text-justify
{
    text-align:justify;
}

.ml-formular-default,
.ml-formular-textarea,
.ml-formular-submit
{
    float:left;
    margin:0 0 20px;
    width:100%;
}

.container,
.bigcontainer,
.fullwidthspacescontainer
{
	margin:0 auto;
    width:calc(100% - 60px);
    max-width:1120px;
}

.bigcontainer
{
	max-width:1540px;
}

.fullwidthspacescontainer
{
	max-width:none;
}

.fullwidthcontainer
{
	float:left;
	width:100%;
}

#exposemask
{
	background:#000;
	background:rgba(0,0,0,0.6);
	bottom:0;
	left:0;
	opacity:0;
	position:fixed;
	right:0;
	top:0;
	transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	visibility:hidden;
	z-index:1000;
}

#exposemask img
{
	background:#fff;
	max-height:calc(100% - 250px);
	margin:150px auto 0;
	padding:5px;
	max-width:90%;
	width:auto;
}

#exposemask #close,
#closegallery
{
	background:url('../Images/close-icon.png');
	cursor:pointer;
	display:block;
	height:20px;
	position:absolute;
	right:40px;
	top:40px;
	width:20px;
	z-index:5;
}

#exposemask #close:hover,
#closegallery:hover
{
	opacity:0.7;
}

#exposemask figure img
{
	margin:0 auto;
}

/* general */

@media (max-width:767px)
{
	p 
	{
		margin-bottom:20px;
	}
	
	.container,
	.bigcontainer
	{
		width:calc(100% - 30px);
	}
	
	/*
	 * general
	 */
	#exposemask img
	{
		max-height:calc(100% - 120px);
		margin-top:60px;
	}
	  
	#exposemask #close,
	#closegallery
	{
		right:20px;
		top:20px;
	}
}
