/*@import url('https://fonts.googleapis.com/css?family=Poppins:400,700|Roboto:300,300i,400,400i,700,700i&display=swap');*/

body, input, button, table, textarea, select, option {
	font-family: 'Roboto', sans-serif;
	font-size: 24px;
	line-height: 1.6;
	font-weight: 300;
}

body {
	margin: 0;
	padding: 0;
	background: #fff;
	color: #000;
	max-width: 1920px;
	margin: 0 auto;
	position: relative;
}

.novis {
	width: 0;
	height: 0;
	overflow: hidden;
	position: absolute;
}

img { max-width: 100%; height: auto; }
iframe { max-width: 100%; }

strong { font-weight: bold; }
.allcaps { text-transform: uppercase; }
.align-left { text-align: left; }
.align-center { text-align: center; }
.align-right { text-align: right; }

a, input[type=submit] {
	transition: color .3s, background-color .3s;
}
a {
	text-decoration: none;
	color: #706591;
}
a:hover {
	color: #9185be;
}
a.button, input[type=submit] {
	text-transform: uppercase;
	display: inline-block;
	padding: .8em 2.5em;
	color: #fff;
	background: #313756;
	font-size: 16px;
	margin-right: 20px;
	min-width: 70px;
	text-align: center;
	border: none;
	font-weight: normal;
}
a.button:last-child {
	margin-right: 0;
}
a.button:hover, input[type=submit]:hover {
	background: #9185be;
	color: #fff;
}

hr {
	border: none;
	border-top: 1px solid #bcc1c2;
}

h1 em, h2 em, h3 em, h4 em, h5 em, h6 em {
	font-style: normal;
	color: #9185be;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
	line-height: 1.5;
	margin: .6em 0 .8em;
}
h1 { font-size: 32px; }
h2 { font-size: 22px; }
h3 { font-size: 18px; }
h4,h5,h6 { font-size: 16px; text-transform: uppercase; }
h5,h6 { color: #9185be; }

.slider h1, .background-image h1, .background-pattern h1, .background-black h1 { font-weight: bold; }

p { margin: .6em 0 1em; }

ul {
	list-style-type: none;
	margin: 1em 0;
	padding: 0 0 0 1em;
	font-size: 14px;
}
li {
	margin: .4em 0;
	padding: 0;
}
li:before {
	content: "•";
	color: #9185be;
	display: inline-block;
	font-size: 24px;
	width: 16px;
	margin-left: -16px;
	line-height: 16px;
	vertical-align: middle;
}

table {
	border-collapse: collapse;
	font-size: 12px;
	margin: 1.5em 0;
}
th, td {
	border: 1px solid #9185be;
	padding: .2em 1em;
	text-align: left;
}

.note { font-size: 12px; font-style: italic; }

.slider h1 { font-size: 40px; }

div.outer {
	padding: 0 32px;
	background-position: top;
	/*background-size: cover;*/
	background-repeat: no-repeat;
}
div.inner {
	margin: 0 auto;
	max-width: 1150px;
	padding: 1px 0; /*prevent margin collapse*/
	position: relative;
}

#main {
	background: #fff;
}

#main > div:first-child .outer {
	/* create space for header */
	padding-top: 130px;
}

#header {
	line-height: 87px;
	top: 0;
	left: 0;
	right: 0;
	z-index: 9999;
	margin-top: 30px;
	position: absolute;
	/*
	position: sticky;
	margin-bottom: -125px;
	*/
}
#header .outer {
	background: #fff;
	border-bottom: 5px solid #dedfe0;
}
#header .inner {
	position: relative;
	padding: 0;
	z-index: 1000;
}

#logo {
	position: absolute;
	top: 0;
	left: 0;
}
#logo img {
	height: 46px;
	vertical-align: middle;
	padding: 22px 27px;
	margin-top: -3px;
	margin-left: -27px;
	max-width: none;
}
#search {
	transition: width .6s;
	position: absolute;
	top: 0;
	right: 0;
	overflow: hidden;
	width: 25px;
	height: 87px;
	line-height: 87px;
}
#search form {
	height: 87px;
	position: absolute;
	right: 0;
	top: 0;
	text-align: right;
}
#search form, #search:hover {
	width: 500px;
}
#search input[type=text] {
	width: 400px;
	border: 1px solid #000;
	background: #fff;
	margin-right: 6px;
	padding: 6px;
	line-height: 1;
}
#search input[type=submit] {
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9InllcyI/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmVyc2lvbj0iMS4xIiB2aWV3Qm94PSIwIDAgMTUgMTUiIHN0cm9rZT0iIzAwMCIgZmlsbD0ibm9uZSI+CjxwYXRoIHN0cm9rZS13aWR0aD0iMS4yIiBkPSJNIDYsMSBBIDUsNSAwIDEgMSA2LDExIEEgNSw1IDAgMSAxIDYsMSIgLz4KPHBhdGggc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Utd2lkdGg9IjEuNyIgZD0iTSAxMy41LDEzLjUgbCAtMiwtMiIgLz4KPC9zdmc+) no-repeat;
	background-position: right;
	background-size: 22px 22px;
	width: 0;
	min-width: 0;
	height: 22px;
	border: none;
	padding: 0 0 0 22px;
	overflow: hidden;
	margin: 0;
}

#menu a {
	text-decoration: none;
	color: inherit;
}
#menu li:before { display: none; }
#menu > ul > li > a, #menu > ul > li > span {
	text-transform: uppercase;
	display: inline-block;
	height: 87px;
	padding: 0 21px;
}
#menu {
	user-select: none;
	color: #000;
	text-align: right;
	padding-right: 65px;
	font-size: 14px;
	min-height: 87px;
	font-weight: normal;
}
#menu ul, #menu li {
	font-size: 14px;
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#menu li {
	position: relative;
}
#menu li ul {
	transition: opacity .3s;
	opacity: 0;
	pointer-events: none;
	line-height: 1em;
	min-width: 210px;
	display: block;
	position: absolute;
	top: 92px;
	left: 50%;
	margin-left: -105px;
	background: #fff;
	padding: 10px 0;
}
#menu > ul > li {
	display: inline-block;
	text-align: left;
	/* border to connect li to dropdown and prevent hover discontinuity */
	border-bottom: 5px solid #dedfe0;
	margin-bottom: -5px;
}
#menu li:hover > a, #menu li:hover > span {
	color: #9185be;
}
#menu > ul > li:hover > a:after, #menu > ul > li:hover > span:after, #menu > ul > li.hover > a:after, #menu > ul > li.hover > span:after {
	content: '';
	display: block;
	margin: 0 auto;
	height: 5px;
	width: 35px;
	background: #9185be;
}
#menu li:hover ul, #menu li.hover ul {
	opacity: 1;
	pointer-events: auto;
}
#menu ul ul li {
	line-height: 30px;
	border-bottom: 1px solid #eee;
	margin: 0 21px;
}
#menu ul ul li:last-child {
	border-bottom: none;
}



#footer {
	background: #313756;
	color: #fff;
	font-weight: 300;
	font-size: 14px;
	line-height: 1.6;
	padding: 60px 0 90px;
	border-top: 10px solid #9185be;
}
#footer .footer-column {
	width: 150px;
	display: inline-block;
	vertical-align: top;
	margin-right: 10px;
}
#footer .footer-column:first-child {
	width: 256px;
}
#footer .footer-column:last-child {
	width: 196px;
	margin-right: 0;
}
#footer ul, #footer li {
	list-style-type: none;
	margin: 0;
	padding: 0;
	font-size: inherit;
}
#footer li:before { display: none; }
#footer a {
	font-weight: inherit;
	color: #fff;
}
#footer a:hover {
	color: #9185be;
}
#footer-columns p img { vertical-align: middle; }
#footer h5, #footer h6 {
	text-transform: none;
	color: #fff;
	font-size: 14px;
}
#footer h5 {
	line-height: 50px;
	height: 30px;
	margin-bottom: 22px;
}
#footer h6 {
	margin: 25px 0 0;
	text-transform: uppercase;
	font-size: 12px;
}
#footer .inner { position: relative; }
#footer-social, #footer-links, #footer-copyright {
	color: #fff;
	font-size: 12px;
	position: absolute;
	line-height: 70px;
	height: 70px;
}
#footer-social a, #footer-links a, #footer-copyright a {
	color: #fff;
}
#footer-social { left: 0; right: 0; text-align: center; }
#footer-social img { margin: 0 .1em; }
#footer p img { filter: grayscale(100%) brightness(190%); }
#footer-copyright { left: 0; }
#footer-links { left: 922px; }


#main div.slider {
	position: relative;
	border-bottom: 10px solid #9185be;
}
.slider, .slider-slide {
	background: #313756;
	color: #fff;
	font-size: 20px;
	overflow: hidden;
	height: 810px;
	z-index: 1;
	text-shadow: 0 0 7px #000, 0 0 2px #000;
}
.slider-slide .inner {
	height: 680px;
	z-index: 1;
}
.slider-slide .outer {
	background-position: center;
}
.slider a.button {
	color: #9185be;
	background: #fff;
	position: absolute;
	bottom: 200px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
	text-shadow: none;
}
.slider a.button:hover {
	background: #9185be;
	color: #fff;
}
.slider .slider-slide {
	position: absolute;
	left: 0;
	height: 100%;
	width: 100%;
	background: #313756;
}
.slider .selector {
	position: absolute;
	bottom: 100px;
	left: 0;
	right: 0;
	text-align: center;
	z-index: 2;
}
.slider .selector a {
	display: inline-block;
	margin: 0 4px;
	width: 14px;
	height: 6px;
	background: #000;
	border: 1px solid #fff;
}
.slider .selector a.active {
	background: #9185be;
}
.slider-text {
	width: 53%;
	margin-left: 8%;
	padding-top: 40px;
}
.slider-text h1 {
	display: inline;
	/*background: #313756;
	box-shadow: 10px 0 0 #313756, -10px 0 0 #313756;
	box-decoration-break: clone;*/
	line-height: 1.3;
}
.slider-image-left {
	position: absolute;
	left: 0;
	bottom: 5%;
	z-index: -1;
}
.slider-image-right {
	position: absolute;
	right: 0;
	top: 12%;
	z-index: -1;
}

.grey-background {
	background: linear-gradient(to bottom, #e4e6e7 0, #fff 500px);
}
.big-title {
	background: linear-gradient(to bottom, #bcc1c2 0, #f0f0f0 500px);
}
.big-title .inner {
	padding-bottom: 100px;
}
.big-title h1 {
	color: #fff;
	font-weight: normal;
	font-size: 120px;
	text-transform: uppercase;
	text-align: center;
	margin: -.2em 0 0;
	line-height: 1;
	white-space: nowrap;
}
.big-title h1 em {
	color: inherit;
	font-weight: bold;
}
.big-title h2 { font-size: 32px; }
h1:after, h2:after {
	content: ' ';
	display: block;
	margin-top: .6em;
	background: #9185be;
	width: 50px;
	height: 5px;
}
h1.align-center:after, h2.align-center:after { margin-left: auto; margin-right: auto; }
h1.align-right:after, h2.align-right:after { margin-left: auto; }
.slider h1:after, .big-title h1:after, .block h2:after { display: none; }

.plain-content .inner {
	padding-top: 60px;
	padding-bottom: 60px;
}
.grey-border .inner {
	border-top: 1px solid #bcc1c2;
}

.line-top { border-top: 10px solid #9185be; }
.line-bottom { border-bottom: 10px solid #9185be; }
.line-left { border-left: 10px solid #9185be; }
.line-right { border-right: 10px solid #9185be; }
.line-top-left, .line-top-right, .line-bottom-left, .line-bottom-right {
	background-size: 104px 104px;
	background-image: linear-gradient(#9185be, #9185be);
	background-repeat: no-repeat;
}
.line-top-left { padding: 10px 0 0 10px; background-position: left top; }
.line-top-right { padding: 10px 10px 0 0; background-position: right top; }
.line-bottom-left { padding: 0 0 10px 10px; background-position: left bottom; }
.line-bottom-right { padding: 0 10px 10px 0; background-position: right bottom; }

.block {
	border-top: 10px solid #9185be;
	background: #fff;
	padding: 10px 30px 10px;
	margin: 50px 0 80px;
}
.block h2 {
	text-transform: uppercase;
	font-size: 22px;
	padding: 0 0 10px;
	border-bottom: 1px solid #9185be;
}

.block-button {
	text-align: center;
	margin-bottom: -2em;
	clear: both;
}
.block-button a.button {
	background: #313756;
	color: #fff;
}
.block-button a.button:hover {
	background: #9185be;
}

.column-narrow, .column-narrow-small {
	width: 840px;
	margin: 0 auto 40px;
}
.column-narrow-small {
	font-size: 18px;
}
.column-75, .column-66, .column-50, .column-33, .column-25 {
	margin-right: 20px;
	display: inline-block;
	vertical-align: top;
	font-size: 18px;
}
.column-75 { width: 837px; }
.column-66 { width: 742px; }
.column-50 { width: 540px; margin-right: 30px; }
.column-33 { width: 358px; }
.column-25 { width: 262px; }
.column-50 .column-25 { width: 240px; }

#main > div.background-image:first-child .outer { padding-top: 0; }
#main > div.background-image:first-child .inner { padding: 230px 0 140px; }
#main > div.background-overhang:first-child .inner { padding: 260px 0 200px; }
.background-image .outer { background-position: center; }
.background-image.background-top .outer { background-position: top; }
.background-image.background-bottom .outer { background-position: bottom; }
.background-image.background-overhang .outer { background-position: bottom; }
.background-image {
	border-bottom: 6px solid #fff;
	color: #fff;
	background: #313756;
}
.background-image .inner {
	padding: 200px 0;
}
.background-image h1 {
	text-align: center;
	text-shadow: 0 0 7px #000, 0 0 2px #000;
}
.background-image h1:after { display: none; }

.background-pattern {
	background-image: url(/files/aa7dd4ebaebc912dbb967952dcf5bcb512a1043bdccbc0f86aed38e75d627cb4?sig=8z_V50h1L4R-X6fq);
	background-repeat: repeat-x;
	background-size: 20px auto;
	background-position: bottom;
	padding-bottom: 59px;
}
.background-pattern .outer {
	background: #313756;
	color: #fff;
}
.background-pattern h1:after { display: none; }

.background-black {
	background: #313756;
	color: #fff;
}
.background-black h1 { font-size: 40px; }
.background-black h1:after { display: none; }

.icon-bottom {
	display: block;
	background: #9185be;
	width: 70px;
	height: 70px;
	border-radius: 40px;
	border: 5px solid #fff;
	text-align: center;
	line-height: 70px;
	color: #fff;
	font-size: 50px;
	font-weight: bold;
	margin: 0 auto;
	position: absolute;
	bottom: -40px;
	left: 0; right: 0;
	z-index: 1;
}

.form {
	font-size: 18px;
}
.form textarea, .form input, .form select {
	margin: .2em 0 1em;
}
textarea, input, select, option {
	font-size: 18px;
	text-indent: .4em;
}
textarea, input[type=text], input[type=email], select {
	width: 100%;
	background: #fff;
	color: #000;
	border: 1px solid #eee;
}
textarea {
	min-height: 10em;
}
select {
	padding: .2em 0;
}

.pre-header {
	text-transform: uppercase;
	color: #7a8386;
	font-weight: bold;
	font-size: 16px;
	letter-spacing: 5px;
}

.news-list-post {
	border-bottom: 1px solid #bcc1c2;
	padding: 30px 0 30px 280px;
	position: relative;
	font-size: 16px;
	min-height: 150px;
}
.news-list-post img {
	position: absolute;
	left: 0;
	top: 35px;
	max-width: 250px;
}
.news-latest-post img {
	float: right;
	margin-left: 20px;
}
.news-category, .news-date {
	display: inline;
	font-size: 18px;
	font-weight: bold;
}
.news-category { color: #9185be; text-transform: uppercase; margin: 0 0 2em; }
.news-date { color: #7a8386; font-size: 16px; }
.news-list-post a { color: inherit; }
.news-header-wrap { text-align: center; margin: 1em 0; }
.news-header { text-align: center; display: inline-block; border-bottom: 1px solid #7a8386; }
.news-post h1 { text-align: center; }
.news-post h1:after { display: none; }
.news-teaser { text-align: center; }
.news-image { text-align: center; }
.news-latest-post .news-category {
	color: inherit;
	margin: 1em 0 0;
}
.news-latest-post .news-date {
	display: block;
	font-style: italic;
	font-weight: normal;
	color: inherit;
	margin: 0 0 1em;
}
.news-latest-post h3 {
	margin: 0;
}
.event-latest-item { margin: 1.2em 0; }
.event-latest-item h3 { margin: 0; }
.event-latest-item p { margin: .2em 0; }
.event-latest-item img {
	float: right;
	clear: both;
	margin-left: 20px;
	max-width: 150px;
	max-height: 100px;
}
.news-events {
	font-size: 16px;
}

.grey-block-right {
	background: #f1f2f3;
	padding: 20px 20px 20px 50px;
	margin: 50px -20px 40px -50px;
}
.grey-block-right img { float: right; }
.grey-block-left {
	background: #f1f2f3;
	padding: 20px 20px 20px 50px;
	margin: 50px -20px 40px -50px;
}
.grey-block-left img { float: left; margin-right: 2em; }

.breadcrumb, .breadcrumb a {
	color: #7a8386;
	font-size: 14px;
}
.background-overhang + .breadcrumb {
	margin-top: -90px;
}

.carousel-item .note {
	font-size: 16px;
	font-style: normal;
}
.carousel .selector a {
	display: inline-block;
	padding: .5em .5em;
}

#newsletter-form label { font-size: 12px; display: block; }
#newsletter-form input[type=email] {
	border: none;
	background: #fff;
	color: #000;
	font-size: inherit;
	padding: 0;
	margin: 24px 0 0;
	text-indent: 12px;
	line-height: 40px;
	height: 40px;
	width: 70%;
	vertical-align: bottom;
}
#newsletter-form input[type=submit] {
	min-width: 0;
	border: none;
	background: #939699;
	color: #fff;
	padding: 0;
	margin: 0;
	text-indent: 999px;
	line-height: 40px;
	height: 40px;
	width: 28%;
	vertical-align: bottom;
	background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMiAxMCIgc3Ryb2tlPSJ3aGl0ZSIgZmlsbD0ibm9uZSI+PHBhdGggZD0ibTEgNSAxMCAwIG0tMiAtMiAyIDIgLTIgMiIvPjwvc3ZnPg==);
	background-repeat: no-repeat;
	background-size: 32px 32px;
	background-position: center;
}
#newsletter-form input[type=submit]:hover {
	background-color: #9185be;
}

.search-result h2:after { display: none; }
.search-result { margin: 1em 0; border-top: 1px solid #eee; }
.search-result a { color: inherit; }

.block-training { min-height: 18em; }
.block-training:before { content: ' '; display: block; margin: 0 2em; height: 1px; border-top: 1px solid #ddd;  }

table.partners td {
	border: none;
	border-top: 1px solid #ccc;
	vertical-align: top;
	padding: 3em 2em;
}

@media (max-width: 1198px) {

	.column-narrow { width: auto; }
	.column-75, .column-66, .column-50, .column-33, .column-25 {
		display: block;
		margin: 0 auto 2em;
	}
	
	#footer-columns {
		padding-left: 256px;
		min-height: 350px;
	}
	#footer .footer-column:first-child {
		position: absolute;
		left: 0;
	}
	#footer-copyright {
		left: 0;
		bottom: 60px;
	}
	#footer-links {
		left: 0;
		bottom: 90px;
	}
	#footer-social {
		left: 0;
		text-align: left;
		bottom: 0;
	}
	
	.slider-image-right img {
		transform-origin: bottom right;
		transform: scale(.8);
	}
	.slider-image-left img {
		transform-origin: bottom left;
		transform: scale(.6);
	}
	.slider-text {
		margin-left: 0;
		width: 80%;
	}
	.slider a.button {
		position: static;
		transform: none;
	}

	.big-title h1 { font-size: 80px; }

	#menu a:after, #menu span:after {
		display: none !important;
	}
	#menu, #menu ul, #menu li, #menu li a, #menu li span {
		position: static !important;
		margin: 0 !important;
		padding: 0 !important;
		height: auto !important;
		line-height: 1.5 !important;
	}
	#menu ul, #menu li {
		display: block !important;
		opacity: 1 !important;
		min-width: 0 !important;
		text-align: center !important;
		border: none !important;
	}
	#menu li a, #menu li span {
		display: block !important;
		padding: .5em 0 !important;
	}
	#menu > ul {
		padding-top: 80px !important;
	}
	#menu > ul > li {
		display: none !important;
		border-bottom: 4px solid #ccc !important;
	}
	#header.open #menu > ul > li {
		display: block !important;
	}
	#menu-hamburger {
		display: block;
		width: 80px;
		height: 80px;
		background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLXdpZHRoPSIzIiB2aWV3Qm94PSIwIDAgMjUgMjUiPgo8cGF0aCBkPSJNMCA1IGgyNSBNMCAxMiBoMjUgTTAgMTkgaDI1Ii8+Cjwvc3ZnPg==);
		background-size: 32px 32px;
		background-position: center;
		background-repeat: no-repeat;
		position: absolute;
		right: 0;
	}
	
	#search, #search form {
		position: static !important;
		text-align: left !important;
	}
	#search form {
		width: auto !important;
	}
	#search input[type=text] {
		width: 90% !important;
	}
	#search {
		display: none;
		width: auto !important;
	}
	#header.open #search {
		display: block;
	}
	
}

@media (max-width: 755px) {
	
	.big-title h1 { font-size: 60px; }
	
	.slider-image-left { display: none; }
	
	.column-narrow, .column-75, .column-66, .column-50, .column-33, .column-25 {
		width: auto;
	}
}

@media (max-width: 600px) {
	
	.big-title h1 { font-size: 10vw; }

	#footer-columns {
		padding-left: 0;
	}
	#footer .footer-column, #footer-copyright, #footer-links, #footer-social {
		display: block !important;
		position: static !important;
	}

}

@media (min-width: 1921px) { body { transform: scale(1.25); transform-origin: center top; } }
@media (min-width: 2401px) { body { transform: scale(1.5); } }
@media (min-width: 2881px) { body { transform: scale(2); } }
@media (min-width: 3841px) { body { transform: scale(3); } }
@media (min-width: 5761px) { body { transform: scale(4); } }
@media (min-width: 7681px) { body { transform: scale(5); } }
@media (min-width: 9601px) { body { transform: scale(6); } }