@charset "UTF-8";

/*	BAREBONES RESPONSIVE GRID FRAMEWORK (Mobile First)
	Version 3.1
	April 2018
	www.dawgeatdawg.com
*/


/* @group --- COLOR SCHEME ---*/
/*---

	Main Text			=	hsl(220, 1%, 43%)
	Accent				=	hsl(30, 80%, 50%)
	Highlight			=	hsl(45, 100%, 56%)
	Background			=	white

	.MRG_DarkGray		=	hsl(220, 1%, 43%)
	.MRG_MediumGray		=	hsl(200, 2%, 66%)
	.MRG_LightGray		=	hsl(238, 1%, 83%)
	.MRG_PaleYellow		=	hsl(45, 100%, 79%)
	.MRG_Yellow			=	hsl(45, 100%, 56%)
	.MRG_Orange			=	hsl(33, 94%, 58%)
	.MRG_DarkOrange		=	hsl(30, 80%, 50%)

---*/
/* @end */



/* @group --- PRE-STUFF ---*/

a, textarea, input, select, img, section:focus { outline: none; }

strong, strong * { font-weight: bold; }

em, em * { font-style: italic; }

html { box-sizing: border-box; }
	*, *:before, *:after { box-sizing: inherit; }

svg { fill: currentColor; }

/* @end */



/* @group --- FONTS ---*/
	
@font-face {
	font-family: 'Arial Narrow';
	font-weight: normal;
	font-style: normal;
	src: url('fonts/arial_narrow-webfont.woff2') format('woff2'),
		url('fonts/arial_narrow-webfont.woff') format('woff');
}

@font-face {
	font-family: 'Arial Narrow';
	font-weight: normal;
	font-style: italic;
	src: url('fonts/arial_narrow_italic-webfont.woff2') format('woff2'),
		url('fonts/arial_narrow_italic-webfont.woff') format('woff');
}

@font-face {
	font-family: 'Arial Narrow';
	font-weight: bold;
	font-style: normal;
	src: url('fonts/arial_narrow_bold-webfont.woff2') format('woff2'),
		url('fonts/arial_narrow_bold-webfont.woff') format('woff');
}

@font-face {
	font-family: 'Arial Narrow';
	font-weight: bold;
	font-style: italic;
	src: url('fonts/arial_narrow_bold_italic-webfont.woff2') format('woff2'),
		url('fonts/arial_narrow_bold_italic-webfont.woff') format('woff');
}

/* @end */



/* @group --- HTML TAG DEFINITIONS ---*/
	
html { font-size: 100%; }

body {
	color: hsl(220, 1%, 43%);
	font-family: 'Arial Narrow', Arial, Helvetica, sans-serif;
	font-size: 0.8rem;
	font-weight: normal;
	font-style: normal;
	line-height: 1.4em;
	letter-spacing: 0.02em;
	word-spacing: 0.1em;
}

p {
	margin: 0 0 1.2em;
/* 	font-size: 1.0rem; */
/* 	line-height: 1.4em; */
	text-align: left;
}

h1, h2, h3 {
	color: hsl(220, 1%, 43%);
	font-weight: normal;
	line-height: 1.2em;
/* 	letter-spacing: 0.05em; */
	text-transform: none;
	text-align: center;
}

	h1 {
		margin: 0 0 0.8em;
		font-size: 1.2rem;
	}
	
	h2 {
		margin: 0 0 0.8em;
		font-size: 1.0rem;
	}
	
	h3 {
		margin: 0 0 0.8em;
		font-size: 0.8rem;
	}

hr {
	clear: both;
	width: 100%;
	height: 0;
	margin: 0 auto 0.6em;
	background: transparent;
	border: none;
	border-top: 1px solid hsl(220, 1%, 43%);
}

a:link {
	color: currentColor;
	color: hsl(220, 1%, 43%);
	text-decoration: none;
}

	a:visited {
		color: hsl(220, 1%, 43%);
		color: currentColor;
	}

		a:focus,
		a:hover {
			color: hsl(30, 80%, 50%);
		}
		
			a:active { color: hsl(45, 100%, 56%); }

img {
	display: block;
	width: 100%;
	height: auto;
	border: none;
	border-radius: 0.4rem;
}

input,
textarea,
select {
	margin: 0;
	padding: 0;
	border: none;
	font-size: 1.0rem;
}

/* @end */



/* @group --- STICKY FOOTER + WRAPPERS + RESPONSIVE TYPE ---*/

html {
	position: relative;
	min-height: 100%;
	background: white;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
}

/*  font-size: calc( min_size + (max_size - min_size) * ((100vw - min_viewport) / (max_viewport - min_viewport))); */

	@media screen and (min-width: 320px) {
		html { font-size: calc(18px + (32 - 18) * ((100vw - 320px) / (1400 - 320))); }
	}
	@media screen and (min-width: 1400px) {
		html { font-size: 32px;
/* 			background: hsla(300, 80%, 50%, 0.2); */
			 }
	}

body { min-height: 100%;
/* 			background: hsla(220, 10%, 80%, 0.05); */
}

main {
	display: block;
	padding-bottom: 12rem;
/* 			background: hsla(300, 80%, 50%, 0.2); */
}

div#wrapHeader {
/* 	border-bottom: 1px solid hsl(220, 1%, 43%); */
/* 			background: hsla(100, 30%, 50%, 0.2); */
}

div#wrapFooter {
	position: absolute;
	overflow: hidden;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 12rem;
/* 			background: hsla(200, 30%, 50%, 0.2); */
}

header,
nav#menuTop,
section,
footer {
	display: block;
	position: relative;
	max-width: 1400px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
/* 			background: hsla(220, 100%, 50%, 0.1); */
}

section { max-width: none;
/* 			background: hsla(120, 100%, 50%, 0.1); */
}

/* @end */



/* @group --- HEADER ---*/

/* #headerSlides { display: none; } */

#headerSlidesTint {
/* 	display: none; */
			background: hsla(20, 50%, 50%, 0.2);
}

header {
	display: flex;
	flex-flow: row wrap;
/* 	justify-content: center; */
	align-items: center;
	align-content: center;
	padding-top: 1.0rem;
	padding-bottom: 0.9rem;
	color: hsl(260, 2%, 20%);
	text-align: center;
/* 			background: hsla(20, 50%, 50%, 0.2); */
}

	header #logo {
		box-sizing: content-box;
		position: relative;
/* 				background: hsla(90, 50%, 50%, 0.2); */
	}

		header #logo > a {
			display: block;
			width: 100%;
			margin: 0 auto 1.0rem;
			color: hsl(220, 1%, 43%);
	/* 				background: hsla(90, 50%, 50%, 0.2); */
		}
		
			header #logo > a > svg {
				overflow: visible;
				width: 100%;
				height: 1px;
				margin: 0;
	/* 					background: hsla(150, 50%, 50%, 0.2); */
			}
			
				header #logo:hover > a {
					color: hsl(30, 80%, 50%);
					opacity: 0.7;
					transform: scale(1.07);
	/* 						background: hsla(150, 50%, 50%, 0.2); */
				}
			
					header #logo:active > a {
						color: hsl(45, 100%, 56%);
						opacity: 0.8;
						transform: scale(1.04);
					}
		
	header #tagline {
		color: hsl(220, 1%, 43%);
		font-size: 0.7rem;
		font-weight: normal;
/* 			font-style: italic; */
/* 			letter-spacing: 0.08em; */
		text-align: left;
/* 					background: hsla(150, 50%, 50%, 0.2); */
	}
	
	header #statement { display: none; }
	
	
/*--- #Home ---*/
body#home #wrapHeader { position: relative; }

	body#home #headerSlidesTint,
	body#home #headerSlides {
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
/* 			filter: blur(1px) opacity(15%) ; */
/* 			filter: contrast(12%) brightness(192%); */
/* 					background: hsla(20, 100%, 50%, 0.5); */
	}

		body#home #headerSlides {
			z-index: 5;
			background: url('/img/header/phot-Mackinac_Bridge_MI.jpg') bottom center;
			background-size: cover;
		}

		body#home #headerSlidesTint {
			z-index: 5;
			background: linear-gradient(180deg, hsla(200, 0%, 100%, 0.75), hsla(200, 0%, 100%, 0.75) 85%, hsla(200, 0%, 100%, 1.0));
		}

	body#home header {
		z-index: 10;
/* 			flex-direction: column; */
/* 			padding-top: 1.0rem; */
/* 			padding-bottom: 2.0rem; */
/* 				background: hsla(120, 50%, 50%, 0.2); */
	}

		body#home header #logo {
/* 				width: 100%; */
/* 				margin-bottom: 0.5rem; */
			filter: drop-shadow(0px 0px 1px white) drop-shadow(0px 0px 2px white) drop-shadow(0px 0px 12px white);
/* 						background: hsla(120, 50%, 50%, 0.2); */
		}

		body#home header #tagline {
			text-align: center;
			filter: drop-shadow(0px 0px 1px white) drop-shadow(0px 0px 2px white) drop-shadow(0px 0px 6px white);
/* 						background: hsla(120, 50%, 50%, 0.2); */
		}

		body#home header #statement {
			display: block;
			margin: 0.8rem auto 2.0rem;
			color: hsl(220, 1%, 43%);
			filter: drop-shadow(0px 0px 1px white) drop-shadow(0px 0px 2px white) drop-shadow(0px 0px 6px white);
/* 						background: hsla(120, 50%, 50%, 0.2); */
		}

		body#home nav#menuTop ul li {
			filter: drop-shadow(0px 0px 2px white);
/* 						background: hsla(120, 50%, 50%, 0.2); */
		}

/* @end */



/* @group --- CONTENT ---*/

section {
	padding: 0;
/* 			background: hsla(100, 50%, 50%, 0.1); */
}

	section article {
		max-width: 1400px;
		margin-left: auto;
		margin-right: auto;
		padding: 0.5rem 1.0rem 0.5rem;
/* 				background: hsla(300, 100%, 50%, 0.1); */
	}
	
		section article.full {
			max-width: none;
			padding: 1.2rem 0 0.2rem;
		}
	
	section h2 span { font-size: 0.7em;	}
	
	section img { margin-bottom: 1.0rem; }

	section ul {
		list-style-position: outside;
		list-style-type: square;
		padding-left: 1.1em;
	}
	
		section ul li {
			margin-bottom: 0.6rem;
			line-height: 1.3em;
		}
	
			section ul li span {
				color: hsl(30, 80%, 50%);
				font-weight: normal;
			}
			
	section a:link {
/* 		text-decoration: underline; */
		border-bottom: 1px solid currentcolor;
	}
	
/* @end */



/* @group --- FOOTER ---*/

footer {
	padding-top: 1.5rem;
	padding-bottom: 1.0rem;
	fill: currentColor;
	font-size: 0.7rem;
	line-height: 1.2rem;
	letter-spacing: 0.08em;
	text-align: center;
/* 			background: hsla(50, 50%, 50%, 0.1); */
}

	footer .contact { margin-bottom: 0.5rem; }
	
		footer .contact .iconCircle {
			background-color: hsl(220, 1%, 43%);
			color: white;
			fill: currentColor;
		}
	
	footer .address { margin-bottom: 1.1rem; }
	
		footer .address > span {
			display: block;
			visibility: hidden;
			width: 100%;
			height: 0.0rem;
			color: hsl(30, 80%, 50%);
		}
	
	footer .copyright {
		margin-bottom: 0.6rem;
		font-size: 0.5rem;
	}
	
	footer .dawg {
		visibility: hidden;
		margin-bottom: 0;
		font-size: 0.35rem;
	}
	
	
	#ScrollTop {
		position: fixed;
		bottom: 0.7rem;
		right: 0.7rem;
		margin: 0;
		background-color: hsla(220, 1%, 43%, 0.3);
/* 		border: 1px solid hsl(220, 1%, 43%); */
		border-radius: 50%;
		color: white;
		opacity: 0.0;
		cursor: pointer;
	}

		#ScrollTop svg {
			position: absolute;
			width: 1.6rem;
			height: 1.6rem;
			top: 50%;
			left: 50%;
			margin-left: -0.8rem;
			margin-top: -0.9rem;
/* 			stroke: hsl(220, 1%, 43%); */
/* 			stroke-width: 4px; */
		}

		#ScrollTop:hover {
			opacity: 1.0 !important;
			background-color: hsla(220, 1%, 43%, 1.0);
/* 			border-color: hsl(45, 100%, 56%); */
		}

			#ScrollTop:hover svg {
/* 				stroke: hsl(45, 100%, 56%); */
			}

/* @end */



/* @group --- CLASSES | Various ---*/

aside {
	min-width: 16.5em;
	max-width: 16.5em;
	margin-bottom: 1.0rem;
	border-top: 1.5rem solid transparent;
	text-align: left;
/* 			background: hsla(250, 100%, 50%, 0.1); */
}

		aside h3 { text-align: left; }


.note {
	margin-top: 1.0rem;
	color: hsl(220, 1%, 43%);
	font-size: 0.5rem;
/* 	font-style: italic; */
	text-align: center;
}


.buttonBox {
	clear: both;
	display: block;
/* 	align-items: stretch; */
}

	.buttonBox a:link { border-bottom: none; }

	.buttonIcon,
	.button {
		display: inline-block;
		margin: 1.0em auto;
		padding: 0.5em;
		background: hsl(30, 80%, 50%);
		border-bottom: none !important;
		border-radius: 5.4rem;
		color: white !important;
		font-size: 0.7rem;
		letter-spacing: 0.1em;
		line-height: 1.2rem;
		text-align: center;
		text-decoration: none !important;
		cursor: pointer;
	}
	
		.buttonIcon {
			padding: 0.3rem 2.0rem 0.3rem 0.8rem;
/* 			text-align: left; */
		}

			.buttonIcon svg {
				display: inline-block;
				float: left;
				width: 1.3rem;
				height: 1.3rem;
				margin-top: -0.1em;
				margin-right: 0.5rem;
				vertical-align: middle;
				color: currentColor;
				fill: currentColor;
			}
		
			.buttonIcon:hover,
			.button:hover {
				background-color: hsl(45, 100%, 56%);
				color: white;
				transform: scale(1.05);
			}
	
				.buttonIcon:active,
				.button:active {
					background-color: hsl(30, 80%, 50%);
					color: hsl(45, 100%, 56%) !important;
					box-shadow: inset 0px 0px 25px hsl(45, 100%, 56%);
					transform: scale(1.03);
				}

/* @end */



/* @group --- CLASSES | Section Specific ---*/

/*--- #Meeting ---*/

body#meeting dl dt {
	margin-top: 1.0rem;
	padding-left: 1.0rem;
/* 	line-height: 1.2; */
/* 				background: hsla(250, 100%, 50%, 0.1); */
}

	body#meeting dl dt a {
		border-bottom: none !important;
		text-decoration: none !important;
	}

	body#meeting dl dt svg.disclosure {
		position: absolute;
		display: inline-block;
		width: 0.5rem;
		height: 0.5rem;
		left: 0;
		margin-top: 0.3rem;
		vertical-align: middle;
		color: currentColor;
		fill: currentColor;
/* 				background: hsla(50, 100%, 50%, 0.1); */
	}

		body#meeting dl dt.tabOpen svg.disclosure { transform: rotateZ(90deg); }
		
		body#meeting dl dd {
			display: none;
			width: 92%;
			margin: 0.3rem 0 0 1.0rem;
			padding: 0.3rem 0.5rem 0.5rem;
			background: hsl(45, 20%, 95%);
			border-radius: 0.4rem;
			font-size: 0.7rem;
/* 			font-style: italic; */
/* 			line-height: 1.4; */
		}


/*--- #Testimonials ---*/

#content .quote {
	display: block;
	margin: 0.0rem auto 2.0rem !important;
	padding: 0 4% 0;
/* 			background: hsla(250, 50%, 50%, 0.1); */
}

	#content .quote > p:first-child {
		padding-top: 0.9em;
		border-top: 0.1rem solid hsl(30, 80%, 50%);
	}
	
		#content .quote > p:before,
		#content .quote > p:after {
			content: "\201C";
			padding: 0 0.1em 0 0;
			font-size: 3.0em;
/* 			font-weight: normal; */
			line-height: 0.0em;
			vertical-align: -0.4em;
			color: hsl(30, 80%, 50%);
		}
		
		#content .quote > p:after {
			content: "\201D";
			padding: 0 0 0 0.1em;
		}
	
	#content .quote > span {
		display: inline-block;
		float: right;
	/* 	margin-top: 0.5em; */
		font-size: 0.55rem;
		font-style: italic;
		line-height: 1.4em;
		text-align: right;
	}
	
		#content .quote > span:before { content: "\2014\2002" }

	#content .quote > img {
		clear: both;
		float: right;
		margin: 0;
	}
	


/*--- #Contact ---*/

#content .offices {
	margin-top: 1.0rem;
	margin-bottom: 1.6rem;
/* 				background: hsla(200, 50%, 50%, 0.1); */
}

	#content .offices img { margin: 0 0.8em 0 0; }

	#content .offices p {
		line-height: 1.6em;
		text-align: center;
/* 	 				background: hsla(100, 50%, 50%, 0.1); */
	}

		#content .offices a,
		#content .offices .email {
			border-bottom: none;
			text-decoration: none !important;
/* 	 				background: hsla(100, 50%, 50%, 0.1); */
		}

/* @end */



/* @group --- ICONS ---*/
	
svg.icon {
	display: inline-block;
	width: 1.5rem;
	height: 1.5rem;
	margin-top: -0.5em;
	margin-right: 0.5rem;
	vertical-align: middle;
	color: currentColor;
	fill: currentColor;
}

/*
	h2 svg.icon {
		width: 1.0em;
		margin-right: 0.3em;
	}
*/
	
.iconCircleMedium:link,
.iconCircleMedium:visited,
.iconCircleMedium,
.iconCircleBig:link,
.iconCircleBig:visited,
.iconCircleBig,
.iconCircle {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-items: center;
	align-content: center;
	width: 2.0rem;
	height: 2.0rem;
	margin: 0 0.5rem 1.0rem;
	background: hsl(30, 80%, 50%);
	border: none;
	border-radius: 50%;
	color: white;
	fill: currentColor;
}

	.iconCircle {
		display: inline-block;
	}

	.iconCircleMedium:link,
	.iconCircleMedium:visited,
	.iconCircleMedium {
		float: left;
		width: 3.0rem;
		height: 3.0rem;
		margin: 0 0.8rem 0 0;
	}
	
	.iconCircleBig:link,
	.iconCircleBig:visited,
	.iconCircleBig {
		width: 5.0rem;
		height: 5.0rem;
		margin: 0 auto 1.0rem;
	}

		.iconCircle svg {
			width: 2.0rem;
			height: 2.0rem;
			padding: 0.3rem;
			vertical-align: middle;
		}
		
		.iconCircleMedium svg { padding: 0.5rem; }

		.iconCircleBig svg { padding: 0.9rem; }
					
					
			a.iconCircleMedium:hover,
			.iconCircleMedium:hover,
			a.iconCircleBig:hover,
			.iconCircleBig:hover,
			.iconCircle:hover {
				background-color: hsl(45, 100%, 56%);
				transform: scale(1.10);
			}

			.iconCircleMedium:active,
			.iconCircleBig:active,
			.iconCircle:active {
				background-color: hsl(30, 80%, 50%) !important;
				color: hsl(45, 100%, 56%) !important;
				box-shadow: inset 0px 0px 25px hsl(45, 100%, 56%) !important;
				transform: scale(1.05) !important;
			}

/* @end */



/* @group --- MODULES ---*/

.masGrid {
	margin: 0;
/* 			background: hsla(50, 50%, 50%, 0.1); */
}
	
	.masItem {
		margin-bottom: 2.0rem !important;
/* 				background: hsla(250, 50%, 50%, 0.1); */
	}
	
	
	
div.grecaptcha-badge {
/*
	position: absolute !important;
	bottom: 2px !important;
	right: -292px !important;
*/
/* 	height: 20px !important; */
	border-radius: 20px;
/* 			border: red solid 4px !important; */
}
	
	div.grecaptcha-logo {
	/*
		position: absolute !important;
		bottom: 2px !important;
		right: -292px !important;
	*/
		height: 20px !important;
	/* 			border: red solid 4px !important; */
	}
	
	div.grecaptcha-badge:hover {
/*
		position: absolute !important;
		bottom: 2px !important;
*/
/* 		right: 292px !important; */
	/* 			border: red solid 4px !important; */
	}
	
/* @end */



/* @group Clearfix (2016) */

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

/* @end */
