:root{
	--max-page-width:1100px;
    --primary-colour:#2980b9;
	--secondary-colour:#0555a4;
	--primary-glow-colour:rgba(67,147,183,.2);
	--main-background-colour:var(--white);
	--main-padding:32px;
}
body{
	background-color:#fff;
	font-family:Roboto,Arial,Helvetica;
}
h1,h2,h3,h4,h5{
	color:#0555a4;
}
a,
a:link,
a:visited{
	color:#2980b9;
}
a:hover,
a:active,
a:focus{
	color:#0555a4;
}

header{
	background:#f9f9f9;
}
header .banner{
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding:0 24px;
	position:relative;
	display:flex;
	box-sizing:border-box;
}
header .logo{
	width:auto;
	height:80px;
	margin:0;
	padding:32px 32px 32px 0;
	box-sizing:content-box;
	flex-shrink:0;
}
header .logo a{
	display:block;
}
header .logo a img{
	width:auto;
	max-width:none;
	height:80px;
	display:block;
}
header .topRight{
	width:100%;
	height:48px;
	margin:0;
	padding:56px 0 40px 0;
	box-sizing:content-box;
	float:none;
	font-size:0;
}
header #miniCart{
	width:auto;
	height:36px;
	top:unset;
	margin:0;
	padding:6px 12px;
	border:none;
	border-radius:4px;
	transition:all .2s ease;
	
	line-height:36px;
	color:#000;
	font-size:14px;
}
header #miniCart:hover{
	background:rgba(12,12,13,.12);
}
header #miniCart a{
	color:#000;
}
header .socialMedia{
	width:48px;
	height:48px;
	margin:0 0 0 8px;
	padding:0;
	position:relative;
	display:inline-block;
	vertical-align:top;
}
header .socialMedia a{
	width:24px;
	height:24px;
	margin:0;
	padding:12px;
	display:block;
	border-radius:4px;
	transition:all .2s ease;
}
header .socialMedia a:hover{
	background:rgba(12,12,13,.12);
}
header .phone{
	display:none;
}

header .feature{
	display:none;
}

nav{
	background-color:#2980b9;
}
nav .topmenu{
	background:transparent;
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding:0 24px;
	box-sizing:border-box;
	border-bottom:none;
}
nav .topmenu ul li a{
	transition:all .2s ease;
}
nav .topmenu ul li a:hover{
	background:rgba(12,12,13,.12);
	color:#fff;
}
nav .topmenu ul li > ul{
	display:none;
}

.slideshowContainer{
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding-top:2px;
}
.slideshow{
	width:100%;
}
.rui-gb{
	padding:0;
}
/**
.rui-gb--header{
	padding:16px var(--main-padding);
}
.header__logo{
}
.header__link a{
	font-size:17px;
	text-transform:uppercase;
}

.article__paragraph.centered p,
.article__paragraph.centered li{
	margin-top:24px;
	color:var(--primary-colour);
	text-align:center;
}

.rui-gm{
	padding:56px 0;
}
.rui-gm:nth-child(2n+2){
	background:var(--main-background-colour);
}
.rui-gm.rui-gm-pt{
	background:var(--primary-colour);
	padding:0;
}
.rui-gm.rui-gm--splash{
	height:400px;
}
.rui-gm.rui-gm--map{
	background:var(--primary-colour);
	padding:0;
	border-top:20px solid var(--primary-colour);
}
.rui-gm__background img{
	filter:unset;
}
.rui-gm.rui-gm--map .rui-gm__background img{
	filter:grayscale(100%);
}

.rui-gb.rui-gb--300{
	height:300px;
}
.rui-gb.rui-pt{
	padding:12px calc(2 * var(--main-padding));
}
.rui-gb.rui-pt .title{
	padding:0;
}

.rui-gm.rui-gm--footer{
	background:var(--primary-colour);
	padding:0;
}
.rui-gb.rui-gb--footer{
	height:40px;
	padding:8px var(--main-padding);
	
	line-height:24px;
	color:var(--white);
	font-size:13px;
}
.rui-gb.rui-gb--footer .rui-col.rui-c2{
	text-align:center;
}
.rui-gb.rui-gb--footer a.link{
	color:var(--white);
	text-decoration:underline;
}

/** Articles **
.article__title{
	padding:0;
	line-height:24px;
	color:var(--secondary-colour);
	font-size:20px;
}
.article__paragraph{
	margin:0;
}
.article__paragraph p{
	margin:0;
	
	text-align:justify;
}
.article__action{
	padding:16px 0 0 0;
}
*/

.mlddm ul{
	background:#2980b9;
}
.mlddm li a, .mlddm li a#buttonnohover{
	border-left:none;
	border-right:none;
}

.middle,
.middleHome{
	background:transparent;
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding:32px 24px;
	box-sizing:border-box;
}
.middle.middle--title{
	background:#2980b9;
	max-width:none;
	height:106px;
	min-height:unset;
	padding:0;
	border-top:2px solid #fff;
}
.middle.middle--title .title{
	background:transparent;
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding:24px;
	box-sizing:border-box;
}
.middle.middle--title h1,
.middle.middle--title h1 a{
	margin:0;
	
	color:#fff;
	line-height:56px;
	font-size:36px;
	font-weight:500;
	text-decoration:none;
}
.middleHome .middle{
	padding:0;
}

.article.article--homepage{
	max-width:900px;
	margin:16px auto 56px;
}
.article.article--homepage p{
	line-height:24px;
	color:#2980b9;
	font-size:17px;
	text-align:center;
}
.article.article--homepage.article--card{
	background:var(--primary-glow-colour);
	max-width:unset;
	padding:24px 16px 16px 16px;
	border-radius:8px;
	
}
.article.article--homepage.article--card h2{
	margin:0 0 24px 0;
	
	line-height:26px;
	color:#0555a4;
	font-size:18px;
	text-align:center;
}
.article.article--homepage.article--card a{
	color:#2980b9;
	font-size:17px;
}

.leftAlignImageArticle,
.rightAlignImageArticle{
	margin:16px auto 48px auto;
}
.wobject:last-child .leftAlignImageArticle,
.wobject:last-child .rightAlignImageArticle{
	margin:16px auto;
}

/** Team page **/
.card{
}
.card.card--profile{
	background:none;
	padding:var(--main-padding);
	display:grid;
	box-shadow:none;
	border:none;
	border-radius:8px;
	
	text-align:center;
}
.card.card--profile .photo{
	width:100%;
	max-width:180px;
	height:auto;
	max-height:180px;
	margin:0 auto 16px;
	position:relative;
	border:1px solid var(--card-border-colour);
	border-radius:50%;
	overflow:hidden;
}
.card.card--profile .photo img{
	width:100%;
	height:100%;
	display:block;
}
.card.card--profile .name{
	line-height:24px;
	color:#0555a4;
	font-size:18px;
	font-weight:500;
}
.card.card--profile .title{
	padding-top:8px;
	line-height:18px;
	color:var(--primary-colour);
	font-size:13px;
	font-weight:500;
}
.card.card--profile .title p{
	margin:0;
	line-height:18px;
	color:var(--primary-colour);
	font-size:13px;

	font-weight:500;
}
.card.card--profile .certification{
	background:var(--white);
	width:100%;
	max-width:180px;
	height:unset;
	margin:16px auto 0;
	padding:6px;
	position:relative;
	box-sizing:border-box;
	border:1px solid var(--caption-background-colour);
	border-radius:4px;
	overflow:hidden;
}
.card.card--profile .certification img{
	width:100%;
	height:100%;
	display:block;
}
.card.card--profile .about{
	padding-top:0;
}
.card.card--profile .about p{
	margin:0;
	padding:0;
	
	line-height:24px;
	color:var(--default-text-colour);
	font-size:16px;
}

.card.card--profile.card--featured{
	background:var(--primary-glow-colour);
	grid-template-columns:repeat(4,1fr);
	grid-gap:var(--main-padding);
	margin-bottom:16px;
}
.card.card--profile.card--featured .left{
}
.card.card--profile.card--featured .photo{
	max-width:200px;
	max-height:200px;
}
.card.card--profile.card--featured .right{
	grid-column:span 3;
	
	text-align:left;
}
.card.card--profile.card--featured .title{
	padding:8px 0 12px 0;
	line-height:18px;
	color:var(--primary-colour);
	font-size:13px;
	font-weight:500;
}
.card.card--profile.card--featured .title p{
	margin:0;
	line-height:18px;
	color:var(--primary-colour);
	font-size:13px;
	font-weight:500;
}

.videoWrapper,
.videoWrapper43{
	margin-bottom:0;
}

footer{
	background:#2980b9;
}
footer .footer{
	background:transparent;
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding:0 24px;
}
footer .footerBase{
	padding:16px 0;
}
footer a,
footer a:link,
footer a:visited,
footer a:hover,
footer a:active,
footer a:focus{
	color:#fff;
}

@media screen and (max-width:900px){
	.card.card--profile{
		padding:16px;
	}
	.card.card--profile.card--featured{
		padding:24px 16px;
	}
}
@media screen and (max-width:800px){
	header .logo{
		height:56px;
		padding:16px 24px 16px 0;
	}
	header .logo a img{
		height:56px;
	}
	header .topRight{
		top:unset;
		right:unset;
		padding:20px 16px;
		position:relative;
		float:none;
	}
	#miniCart a:nth-of-type(2){
		background-color:#2980b9;
		width:18px;
		height:18px;
		top:1px;
		right:1px;
		margin:0;
		padding:0;
		position:absolute;
		border-radius:50%;
		
		line-height:18px;
		color:#fff;
		font-size:12px;
		text-align:center;
		text-decoration:none;
	}
	#miniCart a:nth-of-type(2) span{
		display:none;
	}
	#miniCart a:last-child{
		display:none;
	}
	header #headerBottom{
		max-width:64px;
		height:48px;
		margin:0;
		padding:20px 0;
		position:relative;
		display:block;
		box-sizing:content-box;
		flex-shrink:0;
	}
	header .slicknav_menu{
	}
	header .slicknav_menu a.slicknav_btn{
		background-image:url("/uploads/images/43/outline_menu_black_24dp.png");
		background-position:center center;
		background-repeat:no-repeat;
		width:24px;
		height:24px;
		top:unset;
		right:unset;
		margin:0;
		padding:12px;
		position:relative;
		display:block;
		border-radius:4px;
		float:none;
		transition:all .2s ease;
	}
	header .slicknav_menu .icon-bars::after{
		content:none;
	}
	header .slicknav_menu a.slicknav_btn:hover{
		background-color:rgba(12,12,13,.12);
	}
	header .slicknav_menu ul.slicknav_nav{
		width:100vw;
		top:88px;
		right:-16px;
		position:absolute;
	}
}
@media screen and (max-width:700px){
	header .banner{
		padding:0 16px;
	}
	header .logo{
		height:56px;
		padding:16px 24px 16px 0;
	}
	header .logo a img{
		height:56px;
	}
	.middle,
	.middleHome{
		padding:24px 16px;
	}
	.middle.middle--title{
		height:68px;
		min-height:unset;
	}
	.middle.middle--title .title{
		padding:16px;
	}
	.middle.middle--title h1,
	.middle.middle--title h1 a{
		margin:0;
		line-height:32px;
		font-size:24px;
	}
	.rui-gb{
		grid-gap:0;
	}
	.rui-c4{
		grid-column:span 12;
	}
	.card{
		margin:0;
	}
	.card.card--profile{
		padding:32px 16px;
	}
	.card.card--profile.card--featured{
		display:block;
		margin-bottom:16px;
	}
	.card.card--profile.card--featured .left{
	}
	.card.card--profile.card--featured .right{
		padding-top:24px;
	}
	
	footer .footer{
		padding:16px;
	}
}
@media screen and (max-width:550px){
	header .banner{
		padding:0 16px;
	}
	header .logo{
		width:100%;
		height:56px;
		padding:16px 24px 16px 0;
		display:block;
		flex:1;
	}
	header .logoMobile{
		display:none;
	}
	header .topRight{
		display:none;
	}
	
	.article.article--homepage.article--card{
	margin:16px auto 40px;
	}
}