@charset "UTF-8";

* {
	margin: 0px;
	padding: 0px;
	font-family: 'Lato', sans-serif;
}

body {
	background-color: #4f9ecb;
}

a {
	color: #007fc7;
}

img {
	max-width: 100%;
}

.wrapper {
	max-width: 1200px;
	padding: 0px 40px;
	margin: 0px auto;
}

#header {
	background-color: rgba(0,0,0,0.95);
	height: 84px;
}

#contact {
	background-color: #efefef;
	border-bottom: 1px #ccc solid;
	overflow: auto;
	padding: 10px 0px;
}

#contact-left {
	float: left;
	font-size: 20px;
	font-weight: 300;
	color: #666;
	line-height: 30px;
}

#contact-right {
	float: right;
}

#banner {
	background-color: white;
}

#touts {
	overflow: auto;
	background-color: white;
	background-image: url(img/green-angle.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: top center;
	text-align: center;
	padding-top: 40px;
}

.tout {
	width: calc(30% - 40px);
	display: inline-block;
	background-color: rgba(104,118,125,0.8);
	padding: 20px;
	color: white;
	text-decoration: none;
}

.tout a {
	color: white;
	text-decoration: none;
}

.tout:nth-child(1) {
	float: left;
}

.tout:nth-child(2) {
	float: right;
}

#touts h2 {
	font-weight: 300;
	font-size: 40px;
}

#touts p {
	margin-top: 10px;
}

#banner {
	overflow: auto;
	border-bottom: 8px #256f99 solid;
}

#mobiletoggle {
	display: none;
	color: white;
	font-size: 22px;
	font-weight: 600;
	height: 84px;
	float: right;
}



.mobiletoggleswitch {
	float: left; line-height: 84px;
}

.mobilemenu {
	list-style-type: none;
}

.mobilemenu li {
	border-bottom: 1px rgba(255,255,255,0.2) solid;
}
.mobilemenu li a {
	display: block;
	padding: 12px 0px 12px 8px;
	color: white;
	text-decoration: none;
	font-size: 16px;
	font-weight: normal;
	border-left: 4px rgba(0,0,0,0) solid;
}

.mobilemenu li a:active {
	background-color: rgba(255,255,255,0.05);
	border-left-color: #37a3d7;
}

.mobilemenu li ul li {
	border-top: 1px rgba(255,255,255,0.2) solid;
	border-bottom: none;
}

.mobilemenu li ul li a {
	font-size: 12px;
	padding-left: 28px;
}

#content {
	padding: 40px 0px;
	background-color: white;
	overflow: auto;
}

#content hr {
	margin-bottom: 2rem !important;
	margin-top: 2rem !important;
}

#content h1 {
	font-size: 48px;
	font-weight: 300;
}

#content h2 {
	font-size: 30px;
	font-weight: 300;
	margin-top: 40px;
}

#content p {
	font-size: 18px;
	font-weight: 300;
	margin-top: 20px;
}

#content ul, #content ol {
	font-size: 18px;
	font-weight: 300;
	margin-top: 20px;
	padding-left: 60px;
}

#content ul li:not(:first-child), #content ol li:not(:first-child) {
	margin-top: 10px;
}

#footer {
	color: white;
	background-color: white;
	background-image: url(img/green-angle-footer.png);
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: top center;
	text-align: center;
	padding-top: 160px;
	padding-bottom: 40px;
}

#footer a {
	color: white;
	text-decoration: none;
}

#sitemap {
	float: left;
}

#sitemap ul {
	list-style-type: none;
}

#sitemap ul li:not(:first-child) {
	margin-top: 6px;
}

#sitemap ul a {
	font-size: 14px;
	color: white;
}

#footercontact {
	float: right;
	text-align: right;
}

#copyright {
	font-size: 10px;
	clear: both;
	padding-top: 40px;
}

#copyright a {
	color: white;
}

#footer .social {
		text-align: center;
		float: none;
	}

.picture-right, .mapframe {
	float: right;
	border: 1px #ccc dotted;
	border-radius: 3px;
	padding: 8px;
	margin: 20px 0px 20px 20px;
	text-align: center;
	max-width: 50%;
	overflow: auto;
}

.mapframe {
	width: 50%;
}

.mapframe iframe {
	width: 100%;
}

.headerbutton {
	display: inline-block;
	
	
	background-color: #4f9ecb;
	
	
	
	
	
	font-size: 12px;
	
	
	
	color: white !important;
	text-decoration: none !important;
	
	padding: 0px 14px;
	line-height: 30px;
	text-transform: uppercase;
}

	.cluemobileappointment {
		display: none;
	}
	
	
	.hours {
	font-size: 12px;
	border-spacing: 0px;
	margin-top: 20px;
	color: #666;
}

.hours td {
	padding: 8px 12px;
}

.hours tr:not(:last-child) td {
	border-bottom: 1px rgba(255,255,255,0.5) solid;
}

.hours td:first-child {
	background-color: #6c8390;
	color: white;
	text-align: right;
	font-weight: bold;
	text-transform: uppercase;
}

.hours td:last-child {
	background-color: rgba(0,0,0,0.05);
}

.hours .officeclosed {
	color: red;
}

.staff {
	background-color: #f8f8f8;
	margin-top: 20px;
	padding: 20px;
	overflow: auto;
}

.staff h2 {
	margin-top: 0px !important;
}

.staff .picture-right {
	background-color: white;
}


@media (max-width: 959px) {
	
	#mobiletoggle {
		display: block !important;
	}
	#desktopmenu {
		display: none;
	}
	
	#sitemap {
		float: none;
		
		text-align: center;
	}
	
	#footercontact {
		float: none;
		text-align: center;
		margin-top: 20px;
	}
	
	#footer {
		text-align: center;
		padding-top: 80px;
	}
	
	#copyright {
		text-align: center;
	}
	
	#footer .social {
		text-align: center;
		float: none;
	}
	
	#touts h2 {
		font-size: 30px;
	}
	
	.cluedesktopappointment {
		display: none !important;
	}
	.cluemobileappointment {
		display: inline-block;
	}
}

@media (max-width: 800px) {
	#touts h2 {
		font-size: 20px;
	}
	#banner {
		display: none;
	}
	#contact-left, #contact-right {
		float: none;
		text-align: center;
		padding: 10px 0px;
	}
	#contact-left {
		font-size: 26px;
		line-height: normal;
	}
	.wrapper {
		padding: 0px 20px;
	}
}

@media (max-width: 600px) {
	.tout {
		width: auto;
		display: block;
		background-color: rgba(91,93,95,0.9);
		float: none !important;
	}
	.tout:not(:first-child) {
		margin-top: 20px;
	}
	
	.picture-right, .mapframe {
		float: none;
		margin: 20px 0px;
		max-width: none;
		width: auto;
	}
	.headerbutton {
		display: block;
	}
	.headerbutton:last-child {
		margin-top: 10px;
	}
}