/* CSS Ease */
/* --------------------------------------------------------
 * Utility mixins and place holders. Only generic ones that
 * could be argued as something CSS 'should provide'.
 * ------------------------------------------------------- */
/*
 * Mixin to easily make any property responsive. Do include units.
 * Example:
 * 		@mixin responsive font-size, 1px, 100px, 100px, 1100px;
*/
/* --------------------------------------------------------------
	Util
-------------------------------------------------------------- */
/* --------------------------------------------------------------
	Unicode Characters
-------------------------------------------------------------- */
/* --------------------------------------------------------------
	Font Icons
-------------------------------------------------------------- */
@font-face {
	font-family: 'iconFont';
	src: url("../fonts/iconFont/fonts/iconFont.eot?20170719:1520");
	src: url("../fonts/iconFont/fonts/iconFont.eot?#iefix20170719:1520") format('embedded-opentype'),
		 url("../fonts/iconFont/fonts/iconFont.woff?20170719:1520") format('woff'),
		 url("../fonts/iconFont/fonts/iconFont.ttf?20170719:1520") format('truetype'),
		 url("../fonts/iconFont/fonts/iconFont.svg?20170719:1520#iconFont") format('svg');
	font-weight: normal;
	font-style: normal;
}
/* latin */
@font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 300;
	src: url("../fonts/Lato/Lato-Light.ttf") format('truetype');
}
@font-face {
	font-family: 'Lato';
	font-style: italic;
	font-weight: 300;
	src: url("../fonts/Lato/Lato-LightItalic.ttf") format('truetype');
}
@font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 400;
	src: url("../fonts/Lato/Lato-Regular.ttf") format('truetype');
}
@font-face {
	font-family: 'Lato';
	font-style: italic;
	font-weight: 400;
	src: url("../fonts/Lato/Lato-Italic.ttf") format('truetype');
}
/* @font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 700;
	src: local('Lato Bold'),
		 local('Lato-Bold'),
		 url("../fonts/Lato/Lato-Bold.ttf") format('truetype');
		 url(https://fonts.gstatic.com/s/lato/v15/S6u9w4BMUTPHh6UVSwiPGQ.woff2) format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
} */
/* latin-ext
@font-face {
	font-family: 'Lato';
	font-style: italic;
	font-weight: 300;
	src: local('Lato Light Italic'),
		 local('Lato-LightItalic'),
		 url(https://fonts.gstatic.com/s/lato/v15/S6u_w4BMUTPHjxsI9w2_FQft1dw.woff2) format('woff2');
	unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 300;
	src: local('Lato Light'),
		 local('Lato-Light'),
		 url(https://fonts.gstatic.com/s/lato/v15/S6u9w4BMUTPHh7USSwaPGR_p.woff2) format('woff2');
	unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 400;
	src: local('Lato Regular'),
		 local('Lato-Regular'),
		 url(https://fonts.gstatic.com/s/lato/v15/S6uyw4BMUTPHjxAwXjeu.woff2) format('woff2');
	unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: 'Lato';
	font-style: italic;
	font-weight: 400;
	src: local('Lato Italic'),
		 local('Lato-Italic'),
		 url(https://fonts.gstatic.com/s/lato/v15/S6u8w4BMUTPHjxsAUi-qJCY.woff2) format('woff2');
	unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
	font-family: 'Lato';
	font-style: normal;
	font-weight: 700;
	src: local('Lato Bold'),
		 local('Lato-Bold'),
		 url(https://fonts.gstatic.com/s/lato/v15/S6u9w4BMUTPHh6UVSwaPGR_p.woff2) format('woff2');
	unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
*/
/* --------------------------------------------------------
 * Reset
 * -------------------------------------------------------- */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 line-height: 1.15;
 */
html {
	-webkit-text-size-adjust: 100%;/* 2 */
}
/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}
/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}
/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 h1 {
	 margin: 0.67em 0;
	 font-size: 2em;
	}
*/
/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	-webkit-box-sizing: content-box;
	        box-sizing: content-box;/* 1 */
	height: 0;/* 1 */
	overflow: visible;/* 2 */
}
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-size: 1em;/* 1 */
	font-family: monospace, monospace;/* 2 */
}
/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}
/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;/* 1 */
	text-decoration: underline;/* 2 */
	-webkit-text-decoration: underline dotted;
	        text-decoration: underline dotted;/* 2 */
}
/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b, strong {
	font-weight: bolder;
}
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code, kbd, samp {
	/* 1 */
	font-size: 1em;
	font-family: monospace, monospace;/* 2 */
}
/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}
/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub, sup {
	position: relative;
	vertical-align: baseline;
	font-size: 75%;
	line-height: 0;
}
sub {
	bottom: -0.25em;
}
sup {
	top: -0.5em;
}
/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}
/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button, input, optgroup, select, textarea {
	/* 1 */
	margin: 0;/* 1 */
	font-size: 100%;
	font-family: inherit;/* 1 */
	line-height: 1.15;/* 2 */
}
/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button, input {
	/* 1 */
	overflow: visible;
}
/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button, select {
	/* 1 */
	text-transform: none;
}
/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button, [type="button"], [type="reset"], [type="submit"] {
	-webkit-appearance: button;
}
/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
	padding: 0;
	border-style: none;
}
/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}
/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}
/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;/* 2 */
	display: table;/* 1 */
	max-width: 100%;/* 1 */
	padding: 0;/* 1 */
	color: inherit;/* 3 */
	white-space: normal;/* 1 */
}
/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}
/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}
/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"], [type="radio"] {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;/* 1 */
	padding: 0;/* 2 */
}
/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
	height: auto;
}
/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	/* 1 */
	outline-offset: -2px;
	-webkit-appearance: textfield;/* 2 */
}
/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}
/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	/* 1 */
	font: inherit;
	-webkit-appearance: button;/* 2 */
}
/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}
/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}
/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}
/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}
html { -webkit-box-sizing: border-box; box-sizing: border-box; }
*, *:before, *:after { -webkit-box-sizing: inherit; box-sizing: inherit; }
sup, sub { line-height: 0; }
dfn { font-style: italic; }
del { color: #666; }
pre { white-space: pre; }
pre, code, tt { font: 1em/1.5 'andale mono', 'lucida console', monospace; }
strong { font-weight: 700; }
em { font-style: italic; }
small { font-size: 0.833em; }
html {
	overflow-x: hidden;
	overflow-y: scroll;
	font: 300 0.9375em/1.5 sans-serif;
}
/* html { @mixin responsive font-size, 16px, 20px, $screen_linear, $screen_tablet; } */
::-moz-selection {
	background: #4173a6;
	color: #fff;
}
::selection {
	background: #4173a6;
	color: #fff;
}
p {
	margin: 0 0 20px;
}
br + br {
    line-height: 1;
}
a {
	background-color: transparent;
	color: #4173a6;
	text-decoration: underline;
}
a[href^="tel:"] {
		color: inherit;
		text-decoration: none;
	}
a:focus, a:hover {
		color: #231F20;
	}
a:active {
		color: #4173a6;
	}
h1 {border-bottom: 2px solid #4173a6; font: 300 50px/1.2 sans-serif; }
h2 { font: 700 40px/1.2 sans-serif; }
h3 { font: 700 30px/1.2 sans-serif; }
h4 { font: 700 24px/1.2 sans-serif; }
h5 { font: 700 20px/1.2 sans-serif; }
h6 { font: 700 16px/1.2 sans-serif; }
h1, h2, h3, h4, h5, h6 {
	margin: 0 0 20px;
}
h1 a, h1 a:focus, h1 a:hover, h2 a, h2 a:focus, h2 a:hover, h3 a, h3 a:focus, h3 a:hover, h4 a, h4 a:focus, h4 a:hover, h5 a, h5 a:focus, h5 a:hover, h6 a, h6 a:focus, h6 a:hover {
		color: inherit;
		text-decoration: none;
	}
h1 {
	font-size: 32px;
	font-size: calc(32px + 18*(100vw - 460px)/308);
}
@media (min-width: 769px) {
h1 {
    	font-size: 50px;
}
	}
@media (max-width: 460px) {
h1 {
	    font-size: 32px;
}
	}
h2 {
	font-size: 26px;
	font-size: calc(26px + 14*(100vw - 460px)/308);
}
@media (min-width: 769px) {
h2 {
    	font-size: 40px;
}
	}
@media (max-width: 460px) {
h2 {
	    font-size: 26px;
}
	}
h3 {
	font-size: 21px;
	font-size: calc(21px + 9*(100vw - 460px)/308);
}
@media (min-width: 769px) {
h3 {
    	font-size: 30px;
}
	}
@media (max-width: 460px) {
h3 {
	    font-size: 21px;
}
	}
img {
	display: inline-block;
	max-width: 100%;
	margin:5px;
	/* height: auto; */
	border-width: 2px;   border-color: #707070;   border-style: solid
}
hr {
	position: relative;
	display: block;
	height: 1px;
	margin: 20px 0;
	border: 0;
	border-top: 1px solid;
	/* $color_text */
}
hr::after {
	content: '';
	top: 50%;
	left: 50%;
	position: absolute;
	display: block;
	width: 9px;
	height: 9px;
	margin-top: -2px;
	border-radius: 9px;
	background: currentColor;
	opacity: 1.2;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}
ol, ul {
	margin: 20px 0;
	padding-left: 2em;
}
ol ol, ol ul, ul ol, ul ul {
	margin: 0;
	padding-left: 1.5em;
}
ol li, ul li {
	margin: 0 0 0.3em;
}
/* ===============================================================
 * Overlay
 * =============================================================== */
.pageOverlay {
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	position: fixed;
	max-height: 0;
	background: #000;
	opacity: 0;
	-webkit-transition: opacity 300ms ease-in 0ms;
	transition: opacity 300ms ease-in 0ms;
}
@media (prefers-color-scheme: light) {
	html {
		background: #fff;
		color: #000;
	}
}
@media (prefers-color-scheme: dark) {
	html {
		background: #000;
		color: #fff;
	}
	img {
		opacity: .75;
		-webkit-transition: opacity .5s ease-in-out;
		transition: opacity .5s ease-in-out;
	}
	img:hover {
		opacity: 1;
	}
}
/*
@define-mixin button-icons {
	& > *::before {
		@mixin iconFont;
		display: inline;
		padding-right: 10px;
		vertical-align: top;
		color: inherit;
		font-weight: 700;
		font-size: 14px;
		pointer-events: none;
		z-index: 10;
	}
	&[href~=".doc"] > *,
	&[href*=".gif"] > *,
	&[href*=".jpg"] > *,
	&[href*=".pdf"] > *,
	&[href*=".png"] > *,
	&[href*=".ppt"] > *,
	&[href*=".svg"] > *,
	&[href*=".xls"] > * { display: flex;align-items: center; }

	&[href*=".doc"] > *::before { content: $icon-file-word-o; }
	&[href*=".pdf"] > *::before { content: $icon-file-pdf-o; }
	&[href*=".ppt"] > *::before { content: $icon-file-powerpoint-o; }
	&[href*=".xls"] > *::before { content: $icon-file-excel-o; }
	&[href*=".svg"] > *::before,
	&[href*=".gif"] > *::before,
	&[href*=".png"] > *::before,
	&[href*=".jpg"] > *::before { content: $icon-file-image-o; }
}
*/
.btn {
		position: relative;
		display: inline-block;
		padding: 0;
		outline: none;
		cursor: pointer;
		vertical-align: middle;
		text-align: center;
		text-decoration: none;
		z-index: 1;
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
.btn > * {
		position: relative;
		display: block;
		height: inherit;
		margin: 0;
		border: none;
		border-radius: 0;
		background: none;
		cursor: inherit;
		color: inherit;
		font: inherit !important;
		letter-spacing: inherit !important;
		text-transform: inherit;
		text-decoration: inherit;
		text-shadow: inherit;
		-webkit-appearance: none;
		   -moz-appearance: none;
		        appearance: none;
		z-index: 1;
	}
.btn {
		position: relative;
		overflow: hidden;
		text-transform: uppercase;
		font: 400 0.875em/1 'Lato', sans-serif;
	}
.btn > * {

		padding:  0.9643em 1.4286em 0.8929em 1.4286em;
		overflow: hidden;
	}
.btn:hover::after {
		-webkit-transform: translate(100%, -50%);
		        transform: translate(100%, -50%);
	}
.btn {
		/* box-shadow: 0 0 1em #F9C449 inset; */
		background: #FFFFFF;
		color: #231F20;
		text-decoration: none;
		-webkit-transition: 200ms ease-out;
		transition: 200ms ease-out;
		border: 1px solid;
	}
.btn > * {
		-webkit-box-shadow: inherit;
		        box-shadow: inherit;
		background: inherit;
		color: inherit;
		text-decoration: inherit;
	}
.btn:focus, .btn:hover, .btn:active {
		-webkit-box-shadow: 0 0 0 currentColor inset;
		        box-shadow: 0 0 0 currentColor inset;
		background: #231F20;
		color: #FFFFFF;
		text-decoration: none;
		-webkit-transition-timing-function: ease-in;
		        transition-timing-function: ease-in;
	}
.btn > *:focus, .btn > *:active {
		-webkit-box-shadow: 0 0 0 currentColor inset;
		        box-shadow: 0 0 0 currentColor inset;
		background: #231F20;
		color: #FFFFFF;
		text-decoration: none;
		-webkit-transition-timing-function: ease-in;
		        transition-timing-function: ease-in;
	}
.btn[class*="--isDisabled"] {
		-webkit-box-shadow: none;
		        box-shadow: none;
		background: #CCCCCC !important;
		cursor: not-allowed;
		color: #FFFFFF;
	}
.btn[class*="--isDisabled"] > * {
			padding-right: 1.1111em;
		}
.btn[class*="--isDisabled"]::after {
			display: none;
		}
.btn + .btn {
	margin-left: 10px;
}
/* 4. Wait component
-------------------------------------------------------- */
.btn {
	overflow: hidden;
}
@-webkit-keyframes spin {
	0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
	100% { -webkit-transform: rotate(359deg); transform: rotate(359deg); }
}
@keyframes spin {
	0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
	100% { -webkit-transform: rotate(359deg); transform: rotate(359deg); }
}
.btn__waitingIndicator {
	position: absolute;
	-webkit-transform: translateY(100%);
	        transform: translateY(100%);
	-webkit-transition: -webkit-transform 250ms ease;
	transition: -webkit-transform 250ms ease;
	transition: transform 250ms ease;
	transition: transform 250ms ease, -webkit-transform 250ms ease;
}
.btn__waitingIndicator::before {
		content: '';
		top: 50%;
		right: 0;
		bottom: 0;
		left: 50%;
		position: absolute;
		width: 1em;
		height: 1em;
		margin: -.5em 0 0 -.5em;
		padding: 0;
		background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><g fill='%230D447B'><path opacity='.0833' d='M22.5 2c.8.5.9 2 .1 3.3l-.7 1.2c-.8 1.3-2.1 2-2.9 1.6s-.9-2-.1-3.3l.7-1.2c.8-1.4 2.1-2 2.9-1.6z'> </path><path opacity='.1666' d='M28 7.5c.5.8-.2 2.1-1.6 2.9l-1.2.7c-1.3.8-2.8.7-3.3-.1-.5-.8.2-2.1 1.6-2.9l1.2-.7c1.4-.8 2.8-.7 3.3.1z'> </path><path opacity='.2500' d='M30 15c0 1-1.2 1.7-2.8 1.7h-1.4c-1.6 0-2.8-.8-2.8-1.7s1.2-1.7 2.8-1.7h1.4c1.6 0 2.8.7 2.8 1.7z'> </path><path opacity='.3233' d='M28 22.5c-.5.8-2 .9-3.3.1l-1.2-.7c-1.3-.8-2-2.1-1.6-2.9s2-.9 3.3-.1l1.2.7c1.4.8 2 2.1 1.6 2.9z'> </path><path opacity='.4166' d='M22.5 28c-.8.5-2.1-.2-2.9-1.6l-.7-1.2c-.8-1.3-.7-2.8.1-3.3.8-.5 2.1.2 2.9 1.6l.7 1.2c.8 1.4.7 2.8-.1 3.3z'> </path><path opacity='.5000' d='M15 30c-1 0-1.7-1.2-1.7-2.8v-1.4c0-1.6.7-2.8 1.7-2.8s1.7 1.2 1.7 2.8v1.4c0 1.6-.7 2.8-1.7 2.8z'> </path><path opacity='.5833' d='M7.5 28c-.8-.5-.9-2-.1-3.3l.7-1.2c.7-1.3 2.1-2 2.9-1.6s.9 2 .1 3.3l-.7 1.3c-.8 1.3-2.1 1.9-2.9 1.5z'> </path><path opacity='.6666' d='M2 22.5c-.5-.8.2-2.1 1.6-2.9l1.2-.7c1.3-.8 2.8-.7 3.3.1.5.8-.2 2.1-1.6 2.9l-1.2.7c-1.4.8-2.8.7-3.3-.1z'> </path><path opacity='.7500' d='M0 15c0-1 1.2-1.7 2.8-1.7h1.4C5.8 13.3 7 14 7 15s-1.2 1.7-2.8 1.7H2.8C1.2 16.7 0 16 0 15z'> </path><path opacity='.8333' d='M2 7.5c.5-.8 2-.9 3.3-.1l1.2.7c1.3.7 2 2.1 1.6 2.9-.5.8-2 .9-3.3.1l-1.3-.7C2.2 9.6 1.6 8.3 2 7.5z'> </path><path opacity='.9166' d='M7.5 2c.8-.5 2.1.2 2.9 1.6l.7 1.2c.8 1.3.7 2.8-.1 3.3-.8.5-2.1-.2-2.9-1.6l-.7-1.2c-.8-1.4-.7-2.8.1-3.3z'> </path><path opacity='1.000' d='M15 0c1 0 1.7 1.2 1.7 2.8v1.4c0 1.6-.8 2.8-1.7 2.8s-1.7-1.2-1.7-2.8V2.8C13.3 1.2 14 0 15 0z'> </path></g></svg>") no-repeat;
		font-size: 1.2em;
	}
.btn__waitingIndicator::after {
		-webkit-transform: translateY(0px);
		        transform: translateY(0px);
		-webkit-transition: none;
		transition: none;
	}
.btn--isWaiting > .btn__waitingIndicator {
		-webkit-transform: translateY(0px);
		        transform: translateY(0px);
	}
.btn--isWaiting > .btn__waitingIndicator::before {
		-webkit-animation: spin 1s infinite linear;
		        animation: spin 1s infinite linear;
	}
.btn--isWaiting > .btn__waitingIndicator, .btn--isWaiting:hover > .btn__waitingIndicator {
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		position: absolute;
		background: inherit;
		cursor: wait;
		text-align: center;
		z-index: 11;
	}
.btn--isWaiting:focus > .btn__waitingIndicator::before, .btn--isWaiting:hover > .btn__waitingIndicator::before {
			background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><g fill='%23FFFFFF'><path opacity='.0833' d='M22.5 2c.8.5.9 2 .1 3.3l-.7 1.2c-.8 1.3-2.1 2-2.9 1.6s-.9-2-.1-3.3l.7-1.2c.8-1.4 2.1-2 2.9-1.6z'> </path><path opacity='.1666' d='M28 7.5c.5.8-.2 2.1-1.6 2.9l-1.2.7c-1.3.8-2.8.7-3.3-.1-.5-.8.2-2.1 1.6-2.9l1.2-.7c1.4-.8 2.8-.7 3.3.1z'> </path><path opacity='.2500' d='M30 15c0 1-1.2 1.7-2.8 1.7h-1.4c-1.6 0-2.8-.8-2.8-1.7s1.2-1.7 2.8-1.7h1.4c1.6 0 2.8.7 2.8 1.7z'> </path><path opacity='.3233' d='M28 22.5c-.5.8-2 .9-3.3.1l-1.2-.7c-1.3-.8-2-2.1-1.6-2.9s2-.9 3.3-.1l1.2.7c1.4.8 2 2.1 1.6 2.9z'> </path><path opacity='.4166' d='M22.5 28c-.8.5-2.1-.2-2.9-1.6l-.7-1.2c-.8-1.3-.7-2.8.1-3.3.8-.5 2.1.2 2.9 1.6l.7 1.2c.8 1.4.7 2.8-.1 3.3z'> </path><path opacity='.5000' d='M15 30c-1 0-1.7-1.2-1.7-2.8v-1.4c0-1.6.7-2.8 1.7-2.8s1.7 1.2 1.7 2.8v1.4c0 1.6-.7 2.8-1.7 2.8z'> </path><path opacity='.5833' d='M7.5 28c-.8-.5-.9-2-.1-3.3l.7-1.2c.7-1.3 2.1-2 2.9-1.6s.9 2 .1 3.3l-.7 1.3c-.8 1.3-2.1 1.9-2.9 1.5z'> </path><path opacity='.6666' d='M2 22.5c-.5-.8.2-2.1 1.6-2.9l1.2-.7c1.3-.8 2.8-.7 3.3.1.5.8-.2 2.1-1.6 2.9l-1.2.7c-1.4.8-2.8.7-3.3-.1z'> </path><path opacity='.7500' d='M0 15c0-1 1.2-1.7 2.8-1.7h1.4C5.8 13.3 7 14 7 15s-1.2 1.7-2.8 1.7H2.8C1.2 16.7 0 16 0 15z'> </path><path opacity='.8333' d='M2 7.5c.5-.8 2-.9 3.3-.1l1.2.7c1.3.7 2 2.1 1.6 2.9-.5.8-2 .9-3.3.1l-1.3-.7C2.2 9.6 1.6 8.3 2 7.5z'> </path><path opacity='.9166' d='M7.5 2c.8-.5 2.1.2 2.9 1.6l.7 1.2c.8 1.3.7 2.8-.1 3.3-.8.5-2.1-.2-2.9-1.6l-.7-1.2c-.8-1.4-.7-2.8.1-3.3z'> </path><path opacity='1.000' d='M15 0c1 0 1.7 1.2 1.7 2.8v1.4c0 1.6-.8 2.8-1.7 2.8s-1.7-1.2-1.7-2.8V2.8C13.3 1.2 14 0 15 0z'> </path></g></svg>");
		}
.image {
	display: inline-block;
	overflow: hidden;
	background-repeat: no-repeat;
	background-size: cover;
}
.image--center 		{ background-position: 50% 50%; }
.image--north 		{ background-position: 50% 0%; }
.image--east 		{ background-position: 100% 50%; }
.image--south 		{ background-position: 50% 100%; }
.image--west 		{ background-position: 0% 50%; }
.image--northwest 	{ background-position: 0% 0%; }
.image--northeast 	{ background-position: 100% 0%; }
.image--southeast 	{ background-position: 100% 100%; }
.image--southwest 	{ background-position: 0% 100%; }
.image img {
		display: block;
	}
.image[style*=".svg"] {
		background-size: contain;
	}
.image[imagestyle=contain] {
		background-size: contain;
	}
@media screen {
		.image img {
			display: block;
			visibility: hidden;
		}
	}
.menu {
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;

}
.menu a {
		color: inherit;
	}
.menu ul {
		padding: 0;
		list-style: none;
	}
.menu li {
		margin-bottom: 0;
		padding: 0;
		background: transparent;
	}
.menuTriggerWrap {
	display: none;
}
@media (min-width: 769px) {
	.menu {
		z-index: 100;
	}
	.nav {
		display: block;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		margin: 0;
		-webkit-box-pack: end;
		    -ms-flex-pack: end;
		        justify-content: flex-end;
		-webkit-box-align: end;
		    -ms-flex-align: end;
		        align-items: flex-end;
	}

		.nav a {
			text-decoration: none;
			white-space: nowrap;
		}
		.nav .childWrap {
			display: none;
		}
	.nav--primary {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: 980px;
		max-width: 100%;
		margin: 0 auto;
		padding: 0 10px;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		-webkit-box-pack: space-evenly;
		    -ms-flex-pack: space-evenly;
		        justify-content: space-evenly;
		-webkit-box-align: end;
		    -ms-flex-align: end;
		        align-items: flex-end;
		color: #231F20;
		font-size: 0.8667rem;
		letter-spacing: 0.03em;
		text-transform: uppercase;
	}

		.nav--primary > li {
			margin: .25em .75em;
		}
		.nav--primary > li > a {
			-webkit-transition: color 120ms ease-out;
			transition: color 120ms ease-out;
		}
		.nav--primary > li:hover > a {
			color: #4173a6;
			-webkit-transition: color 100ms ease;
			transition: color 100ms ease;
		}
		.nav--primary > li.node--active a {
			color: #231F20;
		}
		.nav--primary > li > a {
			position: relative;
		}
		.nav--primary > li > a:after {
			content: "";
			right: 50.5%;
			bottom: -3px;
			left: 50.5%;
			position: absolute;
			height: 1px;
			background: currentColor;
			background-clip: padding-box;
			-webkit-transition: left 200ms ease, right 200ms ease;
			transition: left 200ms ease, right 200ms ease;
		}
		.nav--primary > li.active a:after, .nav--primary > li:hover > a:after {
			right: 0;
			left: 0;
		}
}
@media (max-width: 768px) {
	.menuTriggerWrap {
		top: 0;
		right: 0;
		bottom: 0;
		position: absolute;
		display: block;
		color: #231F20;
	}
	.menuTriggerWrap:hover {
		color: red;
	}
	.menuTrigger {
		top: 50%;
		right: 0;
		position: absolute;
		display: block;
		padding: 10px;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
		-webkit-transition: opacity 200ms ease;
		transition: opacity 200ms ease;
	}

		.menuTrigger .label {
			position: absolute !important;
			clip: rect(1px, 1px, 1px, 1px);
			padding: 0 !important;
			border: 0 !important;
			height: 1px !important;
			width: 1px !important;
			overflow: hidden;
		}
		.menuTrigger svg {
			fill: currentColor;
		}
		.menuTrigger, .menuTrigger:hover {
			color: inherit;
		}
		#menu:target .menuTrigger--open, .hasMenuOpen .menuTrigger--open, .menuTrigger--close {
			opacity: 0;
			-webkit-transition-delay: 0ms;
			        transition-delay: 0ms;
			z-index: 0;
		}
		#menu:target .menuTrigger--close, .hasMenuOpen .menuTrigger--close, .menuTrigger--open {
			opacity: 1;
			-webkit-transition-delay: 200ms;
			        transition-delay: 200ms;
			z-index: 1;
		}
	.menu {
		position: fixed;
		top: 84px;
		right: 0;
		left: 0;
		height: auto;
		overflow: hidden;
		z-index: 9;
	}
	.menu__inner {
		height: 100%;
		margin: 0 auto;
		padding: 0 16px;
		overflow-x: hidden;
		overflow-y: auto;
		background: #fff;
		color: #72777a;
		font-size: 15px;
		line-height: 1.2;
		text-transform: uppercase;
	}
	.menu .nav {
		position: relative;
		margin: 0 0 40px;
		padding: 0;
	}
	.menu li li {
		padding-left: 16px;
	}
	.menu li a {
		display: block;
		padding: .75em 0;
		text-decoration: none;
	}
	.menu li a.active, .menu li a:active, .menu li a:focus, .menu li a:hover {
		text-decoration: none;
	}
	.menu .node--hasChild > a {
		position: relative;
	}
	.menu .node--hasChild > a:before {
		content: "\f105";
		position: absolute;
		top: 50%;
		right: 0;
		font: 400 17px/0 iconFont;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
		-webkit-transform-origin: 50% 50%;
		        transform-origin: 50% 50%;
		-webkit-transition: -webkit-transform 200ms;
		transition: -webkit-transform 200ms;
		transition: transform 200ms;
		transition: transform 200ms, -webkit-transform 200ms;
	}
	.menu .node--hasChild.isOpen > a:before {
		-webkit-transform: translateY(-50%) rotate(90deg);
		        transform: translateY(-50%) rotate(90deg);
	}

	/* Animation
	------------------------------------ */

	.menu {
		-webkit-transform: translateY(-100%);
		        transform: translateY(-100%);
		-webkit-transition: -webkit-transform 900ms cubic-bezier(0.075, 0.820, 0.165, 1.000) 450ms;
		transition: -webkit-transform 900ms cubic-bezier(0.075, 0.820, 0.165, 1.000) 450ms;
		transition: transform 900ms cubic-bezier(0.075, 0.820, 0.165, 1.000) 450ms;
		transition: transform 900ms cubic-bezier(0.075, 0.820, 0.165, 1.000) 450ms, -webkit-transform 900ms cubic-bezier(0.075, 0.820, 0.165, 1.000) 450ms;
	}

		.menu .nav > li {
			opacity: 0;
			-webkit-transform: translateY(-40px);
			        transform: translateY(-40px);
			-webkit-transition: opacity 400ms cubic-bezier(0.075, 0.820, 0.165, 1.000), -webkit-transform 400ms cubic-bezier(0.075, 0.820, 0.165, 1.000);
			transition: opacity 400ms cubic-bezier(0.075, 0.820, 0.165, 1.000), -webkit-transform 400ms cubic-bezier(0.075, 0.820, 0.165, 1.000);
			transition: opacity 400ms cubic-bezier(0.075, 0.820, 0.165, 1.000), transform 400ms cubic-bezier(0.075, 0.820, 0.165, 1.000);
			transition: opacity 400ms cubic-bezier(0.075, 0.820, 0.165, 1.000), transform 400ms cubic-bezier(0.075, 0.820, 0.165, 1.000), -webkit-transform 400ms cubic-bezier(0.075, 0.820, 0.165, 1.000);
		}
			.menu .nav--primary > li:nth-child(8n+1) {
				-webkit-transition-delay: 480ms;
				        transition-delay: 480ms;
			}
			.menu .nav--primary > li:nth-child(8n+2) {
				-webkit-transition-delay: 420ms;
				        transition-delay: 420ms;
			}
			.menu .nav--primary > li:nth-child(8n+3) {
				-webkit-transition-delay: 360ms;
				        transition-delay: 360ms;
			}
			.menu .nav--primary > li:nth-child(8n+4) {
				-webkit-transition-delay: 300ms;
				        transition-delay: 300ms;
			}
			.menu .nav--primary > li:nth-child(8n+5) {
				-webkit-transition-delay: 240ms;
				        transition-delay: 240ms;
			}
			.menu .nav--primary > li:nth-child(8n+6) {
				-webkit-transition-delay: 180ms;
				        transition-delay: 180ms;
			}
			.menu .nav--primary > li:nth-child(8n+7) {
				-webkit-transition-delay: 120ms;
				        transition-delay: 120ms;
			}
			.menu .nav--primary > li:nth-child(8n+8) {
				-webkit-transition-delay: 60ms;
				        transition-delay: 60ms;
			}
		#menu:target .pageOverlay, .hasMenuOpen .pageOverlay {
		max-height: 100vh;
		opacity: 0.5;
		-webkit-transition-property: opacity;
		transition-property: opacity;
	}

		#menu:target .menu, .hasMenuOpen .menu {
			-webkit-transform: translateY(0);
			        transform: translateY(0);
			-webkit-transition-delay: 0ms;
			        transition-delay: 0ms;
		}

			#menu:target .menu .nav > li, .hasMenuOpen .menu .nav > li {
				opacity: 1;
				-webkit-transform: translateY(0);
				        transform: translateY(0);
			}
				#menu:target .menu .nav--primary > li:nth-child(8n+1), .hasMenuOpen .menu .nav--primary > li:nth-child(8n+1) {
					-webkit-transition-delay: 450ms;
					        transition-delay: 450ms;
				}
				#menu:target .menu .nav--primary > li:nth-child(8n+2), .hasMenuOpen .menu .nav--primary > li:nth-child(8n+2) {
					-webkit-transition-delay: 510ms;
					        transition-delay: 510ms;
				}
				#menu:target .menu .nav--primary > li:nth-child(8n+3), .hasMenuOpen .menu .nav--primary > li:nth-child(8n+3) {
					-webkit-transition-delay: 570ms;
					        transition-delay: 570ms;
				}
				#menu:target .menu .nav--primary > li:nth-child(8n+4), .hasMenuOpen .menu .nav--primary > li:nth-child(8n+4) {
					-webkit-transition-delay: 630ms;
					        transition-delay: 630ms;
				}
				#menu:target .menu .nav--primary > li:nth-child(8n+5), .hasMenuOpen .menu .nav--primary > li:nth-child(8n+5) {
					-webkit-transition-delay: 690ms;
					        transition-delay: 690ms;
				}
				#menu:target .menu .nav--primary > li:nth-child(8n+6), .hasMenuOpen .menu .nav--primary > li:nth-child(8n+6) {
					-webkit-transition-delay: 750ms;
					        transition-delay: 750ms;
				}
				#menu:target .menu .nav--primary > li:nth-child(8n+7), .hasMenuOpen .menu .nav--primary > li:nth-child(8n+7) {
					-webkit-transition-delay: 810ms;
					        transition-delay: 810ms;
				}
				#menu:target .menu .nav--primary > li:nth-child(8n+8), .hasMenuOpen .menu .nav--primary > li:nth-child(8n+8) {
					-webkit-transition-delay: 870ms;
					        transition-delay: 870ms;
				}
	.no-js .menu .node--overview {
		display: none;
	}
}
::-webkit-input-placeholder {
	color: #CCC;
}
::-moz-placeholder {
	color: #CCC;
}
:-ms-input-placeholder {
	color: #CCC;
}
::-ms-input-placeholder {
	color: #CCC;
}
::placeholder {
	color: #CCC;
}
fieldset {
	margin: 0;
	padding: 0;
	border: none;
}
legend {
	font: inherit;
	font-weight: 700;
	margin-top: 10px;
	margin-bottom: 10px;
	text-transform: uppercase;
}
label {
	display: block;
	white-space: nowrap;
}
input {
	outline: none;
}
label, option {
	padding: 5px;
}
form[id] {
	max-width: 640px;
	border: 1px solid #ccc;
	background: #fff;
	font-size: .8em/* 16 / 20 */;
}
@media (max-width: 640px){
form[id] {
		margin-left: 20px;
		margin-right: 20px
}
	}
.fieldArea {
	margin-bottom: 1em;
}
.fieldArea label {
		display: block;
		margin-bottom: .5em;
	}
.fieldArea [name] {
		border: 1px solid #ccc;
		background: #fff;
		display: block;
		padding: .5em;
		margin: 5px;
		font-size: 1em;
		width: calc(100% - 10px);
	}
.fieldArea textarea[name] {
		height: 7.9em;
	}
.submitWrapper {
	text-align: right;
}
.recaptchaWrapper {
	margin: 10px 0;
}
.recaptchaWrapper.containsError > * > * {
	border: 1px solid #ED2D2D;
}
/* --------------------------------------------------------
	These are not just used on forms, but most often are.
-------------------------------------------------------- */
[class*='message'][class*='success']::before  { content: url('../images/design/icon-info-circle.svg'); }
[class*='message'][class*='error']::before { content: url('../images/design/icon-exclamation-triangle.svg'); }
/* Block Message */
.messages {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 0 24px;
	border: 1px solid;
}
.messages__inner {
		/* min-height: calc(2.2em + 40px); */
		padding: 20px;
		color: #231F20;
	}
.messages p:last-of-type {
		margin-bottom: 15px;
	}
.messages p + ul {
		margin-top: 0;
	}
.messages ul {
		padding-left: 1.3em;
	}
.messages::before {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: 100px;
		padding: 30px 13px;
		background: currentColor;
	}
.messages.errors { color: #ED2D2D; }
.messages.success { color: #759773; }
.messages:only-child {
		margin-bottom: 0;
	}
/* Inline Message */
.message {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: -1px;
	border: 1px solid #ED2D2D;
	background: #FFFFFF;
	z-index: 100;
}
.message::before {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: 32px;
		max-width: 32px;
		padding: 5px;
		-webkit-box-flex: 1;
		    -ms-flex: 1 0 auto;
		        flex: 1 0 auto;
	}
.message__label {
		padding: .25em .5em;
		-ms-flex-item-align: center;
		    align-self: center;
	}
.message.error::before { background: #ED2D2D; }
/* --------------------------------------------------------
	Form Columns

	NOTE:
		[20161020 CROST]
		DO NOT add formColumns--x directly to <FIELDSET> as webkit browsers have a bug and do not render correctly.
		http://stackoverflow.com/questions/27369754/css-flexbox-in-a-form#27369876
		https://bugs.chromium.org/p/chromium/issues/detail?id=375693
		https://bugs.chromium.org/p/chromium/issues/detail?id=262679
-------------------------------------------------------- */
[class*='formColumns--'] {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 -10px;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
[class*='formColumns--']::after, [class*='formColumns--']::before {
	content: '';
	display: table;
	width: 100% /* safari */;
}
[class*='formColumns--']::after {
	clear: both;
}
[class*='formColumns--'] > * {
	float: left;
	margin-left: 10px;
	margin-right: 10px;
}
[class*='formColumns--2'] > * { width: calc(50% - 20px); }
[class*='formColumns--3'] > * { width: calc(33.3333% - 20px); }
@media (max-width: 460px) {
	[class*='formColumns--'] {
		display: block;
	}
	[class*='formColumns--2'] > * {
		float: none;
		width: 100%;
	}
}
/*	City State Zip
-------------------------------------------------------- */
.formColumns--CSZ .fieldArea {
	display: block;
	border: none;
}
.formColumns--CSZ .cityFieldArea 	{ width: calc(50% - 20px); }
.formColumns--CSZ .stateFieldArea 	{ width: calc(30% - 20px); }
.formColumns--CSZ .zipCodeFieldArea { width: calc(20% - 20px); }
.formColumns--CSZ .htmlInput [name], .formColumns--CSZ .htmlSelectOneMenu [name] {
	overflow: hidden;
}
@media (max-width: 530px) {
	.formColumns--CSZ > *, .formColumns--CSZ > *:last-child, .formColumns--CSZ .fieldArea {
		float: none;
		width: 100%;
	}
}
.intro {
	position: relative;
	max-width: 46em;
	margin: 0 auto;
	padding: 10px 20px;
	text-align: center;
}
.intro__linkContainer > * {
	display: inline-block;
	margin-top: 20px;
	margin-right: 20px;
	vertical-align: middle;
}
.feature {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 auto;
	padding: 20px;
	-ms-flex-pack: distribute;
	    justify-content: space-around;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	background: #231F20 url(../images/design/chaulkboard.jpg) no-repeat 50% 0%;
	background-size: cover;
	color: #fff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.feature a:not(.btn) {
		text-decoration: none;
		color: inherit;
	}
.feature > * {
		margin: 20px;
		-webkit-box-flex: 1;
		    -ms-flex: 1 0 auto;
		        flex: 1 0 auto;
	}
.feature__image {
		max-height: 60vh;
		background-size: contain;
	}
.feature__image img {
		display: block;
		max-width: 100%;
		height: auto;
		max-height: 100%;
		margin: 0 auto;
	}
.feature__image img .pan {
		max-width: 600px !important;
	}
.pan
{
	width: 550px !important;
}

@media (min-width: 769px) {
		.feature {
			-webkit-box-orient: horizontal;
			-webkit-box-direction: normal;
			    -ms-flex-direction: row;
			        flex-direction: row;
		}
		.feature > * {
			max-width: calc(50% - 40px);
		}
	}
@media (max-width: 768px) {
		.feature {
			-webkit-box-orient:vertical;
			-webkit-box-direction:normal;
			    -ms-flex-direction:column;
			        flex-direction:column;
		}
		.feature .feature__image {
			max-width: 100%;
			-webkit-box-ordinal-group: 2;
			    -ms-flex-order: 1;
			        order: 1;
		}
	}
.image--center 		{ background-position: 50% 50%; }
.image--north 		{ background-position: 50% 0%; }
.image--northeast 	{ background-position: 100% 0%; }
.image--east 		{ background-position: 100% 50%; }
.image--southeast 	{ background-position: 100% 100%; }
.image--south 		{ background-position: 50% 100%; }
.image--southwest 	{ background-position: 0% 100%; }
.image--west 		{ background-position: 0% 50%; }
.image--northwest 	{ background-position: 0% 0%; }
.gallery {
	position: relative;
	padding: 20px 40px;
}
.gallery .image {
		display: block;
		margin: 0;
		padding: 0;
	}
.gallery__control {
	position: absolute;
	display: inline-block;
	border: none;
	background: transparent;
	cursor: pointer;
	color: #000;
	font-size: 20px;
	font-family: iconFont;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	-webkit-transition: all 250ms ease-in-out;
	transition: all 250ms ease-in-out;
}
.gallery__control span {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		padding: 0 !important;
		overflow: hidden;
		border: 0 !important;
		clip: rect(1px, 1px, 1px, 1px);
	}
.gallery__control.control--prev {
		left: 0;
		-webkit-transform: translate(-50%, -50%);
		        transform: translate(-50%, -50%);
	}
.gallery__control.control--next {
		right: 0;
		-webkit-transform: translate(50%, -50%);
		        transform: translate(50%, -50%);
	}
.gallery__control:before {
		display: block;
		width: 1em;
		height: 1em;
		font-size: 2em;
		line-height: 1;
	}
.gallery__control.control--prev:before {
		content: "\f104";
	}
.gallery__control.control--next:before {
		content: "\f105";
	}
.gallery__control:focus, .gallery__control:hover {
		color: #4173a6;
	}
.gallery__controls {
	top: 50%;
	right: -20px;
	left: -20px;
	position: absolute;
	max-width: 1100px;
	margin: 0 auto;
	z-index: 4;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}
.gallery__thumb {
	display: inline-block;
	width: 20%;
	max-width: 115px;
}
.gallery__thumb .image {
		position: relative;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: auto;
		padding: 6px;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		border: none;
		background: none !important;
		-webkit-transition-duration: 100ms;
		        transition-duration: 100ms;
	}
.gallery__thumb .image > img {
		visibility: visible;
	}
.gallery__thumb[status="active"] .image img {
		-webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .5);
		        box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .5);
	}
.gallery__thumbs {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	max-width: 1500px;
	margin: 6px auto 0;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.gallery__view {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	margin: 0 auto 40px;
}
.gallery__view::before {
		content: '';
		display: block;
		width: 0;
		height: 60vh;
		max-height: 60vh;
	}
.gallery__view::after {
		content: "Loading...";
		position: absolute;
		top: 50%;
		left: 50%;
		opacity: .5;
		color: #000;
		font-size: 20px;
		z-index: 0;
		-webkit-transform: translate(-50%, -50%);
		        transform: translate(-50%, -50%);
	}
.gallery__view .image {
		top: 0;
		right: 0;
		left: 0;
		position: absolute;
		width: 100%;
		max-width: 1024px;
		height: 100%;
		max-height: 60vh;
		margin: 0 auto;
		overflow: hidden;
		background-repeat: no-repeat;
		background-size: contain;
		z-index: 1;
		-webkit-transition: opacity 400ms ease;
		transition: opacity 400ms ease;
	}
.gallery__view .image::before {
		content: ' ';
		display: block;
		width: 1px;
		padding-bottom: 50%;
	}
.gallery__view .image img {
		display: block;
	}
@media screen {
.gallery__view .image img {
			visibility: hidden
	}
		}
.gallery__view .image[style*=".svg"] {
		background-size: contain;
	}
.gallery__view .image[imagestyle="contain"] {
		background-size: contain;
	}
.gallery__view .image + .image {
		opacity: 0;
		z-index: 0;
	}
.gallery__view[status="loading"] .image {
		opacity: 0;
		-webkit-transition-duration: 600ms ease-in;
		        transition-duration: 600ms ease-in;
	}
@media (min-width: 769px) {
		.gallery__view::before {
			min-height: 250px;
		}
}
@media (max-width: 768px) {
	.gallery__view {
		margin-bottom: 10px;
	}
}
.textContent {
	position: relative;
	max-width: 910px;
	margin: 0 auto;
	padding: 10px 20px;
}
.richContent {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	max-width: 1200px;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	clear: both;
	padding: 0;
}
.richContent > * {
		padding: 20px;
	}
.richContent__gallery {
		padding: 0;
	}
.richContent__image {
		display: block;
		width: 550px;
		max-width: 100%;
		height: 0;
		padding-bottom: 60%
	}
.richContent__link > * {
		display: inline-block;
		margin-top: 20px;
		margin-right: 20px;
		vertical-align: middle;
	}
.richContent > *:not(..richContent__content) {
		-ms-flex-item-align: start;
		    align-self: flex-start;
	}
.richContent p + .richContent__link {
		margin-top: -20px;
	}
@media (min-width: 769px) {
		.richContent > * {
			width: 50%;
		}
		.richContent > :only-child {
			margin: 0 auto;
			-webkit-box-pack: center;
			    -ms-flex-pack: center;
			        justify-content: center;
			text-align: center;
		}
		.richContent__content > * {
			max-width: 36.25rem;
		}
		.richContent__gallery .gallery__thumb {
			width: 25%;
		}
		.richContent__media {
			display: -webkit-box;
			display: -ms-flexbox;
			display: flex;
		}
		.richContent__media:first-child {
			-webkit-box-pack: start;
			    -ms-flex-pack: start;
			        justify-content: flex-start;
		}
		.richContent__media:last-child {
			-webkit-box-pack: end;
			    -ms-flex-pack: end;
			        justify-content: flex-end;
		}
	}
@media (max-width: 768px) {
		.richContent {
			padding-top: 40px;
			padding-bottom: 40px;
			-webkit-box-orient: vertical;
			-webkit-box-direction: normal;
			    -ms-flex-direction: column;
			        flex-direction: column;
		}
		.richContent > * {
			margin-bottom: 20px;
		}
		.richContent__image {
			width: 100%;
			height: 0;
			padding-bottom: 50%;
			background-size: contain;
		}
		.richContent__image > img {
			display: none;
		}
		.richContent__media {
			width: 100%;
			max-width: 640px;
		}
		.richContent__content + .richContent__media {
			-webkit-box-ordinal-group: 0;
			    -ms-flex-order: -1;
			        order: -1;
		}
	}
.collection {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
.collection > * {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 25%;
	max-width: 25%;
	padding: 10px;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.collection__thumb img {
	visibility: visible;
}
.pageHeader {
	z-index: 10;
}
.pageHeader__inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		z-index: -1;
		padding: 10px;
		border-top: 4px solid #4173a6;
	}
@media (min-width: 769px) {
		.pageHeader {
			position: relative;
		}
		.pageHeader__inner {
			margin: 0 auto;
			padding: 10px 20px;
		}
	}
@media (max-width: 768px) {
.pageHeader {
		/* TODO: Mobile styling is needed */
}
		.pageHeader {
			top: 0;
			right: 0;
			left: 0;
			position: -webkit-sticky;
			position: sticky;
			height: 84px;
			-webkit-transition:
				-webkit-transform 500ms ease-out 0ms,
				-webkit-box-shadow 200ms ease-out 300ms;
			transition:
				-webkit-transform 500ms ease-out 0ms,
				-webkit-box-shadow 200ms ease-out 300ms;
			transition:
				transform 500ms ease-out 0ms,
				box-shadow 200ms ease-out 300ms;
			transition:
				transform 500ms ease-out 0ms,
				box-shadow 200ms ease-out 300ms,
				-webkit-transform 500ms ease-out 0ms,
				-webkit-box-shadow 200ms ease-out 300ms;
			background: #fff;
			border-bottom: 1px solid #DDDDDD;
		}
		.pageHeader__inner {
			height: 100%;
			padding: 10px;
			-webkit-box-pack: justify;
			    -ms-flex-pack: justify;
			        justify-content: space-between;
		}
		.pageHeader__inner > .menuTriggerWrap {
			-ms-flex-negative: 0;
			    flex-shrink: 0;
		}
		.pageHeader__inner > .logo, .pageHeader__inner > .menuTriggerWrap {
			position: static;
			z-index: 1;
		}
		.hasScrolledDistance:not(.hasMenuOpen) .pageHeader {
			-webkit-transform: translateY(-100%);
			        transform: translateY(-100%);
			-webkit-transition-timing-function: ease-in;
			        transition-timing-function: ease-in;
		}
	}
/*
Page Footer is typically <footer> but named so for css consistency since there can be multiple footer on a page
*/
.pageFooter {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 20px 0;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	background: #4173a6;
	color: #fff;
}
.pageFooter svg {
		margin-bottom: .5rem;
	}
.pageFooter svg path { fill: #fff; }
.pageFooter a {
		color: #fff;
		text-decoration: none;
	}
@media print {
		.pageFooter { display: none; }
	}
/* ------------------------
Page Content is typically <main> but named so for css consistency
------------------------ */
/* TODO */
.pageContent .section ul { list-style: none; }
.pageContent .section ul > li, .pageContent .section ul ul > li { position: relative; }
.pageContent .section ul > li::before, .pageContent .section ul ul > li::before {
		content: "\2022";
		position: absolute;
		left: -1em;
		color: inherit;
		font-size: 1em;
		font-family: sans-serif;
		line-height: 1.0667;
	}
.pageContent .section ul ul > li::before { content: "\25E6"; }
.pageContent .section ul ul ul > li::before { content: "\2022"; }
.pageContent .section ul ul ul ul > li::before { content: "\25E6"; }
.pageContent .section__heading {
		position: relative;
		max-width: 910px;
		margin: 0 auto;
		padding: 10px 20px;
	}
/* ------------------------
skipToContent -
Available for accessability purposes
------------------------ */
.skipToContent {
	top: auto;
	left: -10000px;
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	text-align: left;
}
.skipToContent.active, .skipToContent:active, .skipToContent:focus, .skipToContent:hover {
	left: auto;
	width: auto;
	height: auto;
	padding: 10px;
	border: 1px dotted #000;
	background-color: #ff3;
	text-decoration: none;
	z-index: 1000;
}
hr {
	max-width: 910px;
	padding: 0;
	border-top: 1px solid #ddd;
}
article	{
	max-width: 980px;
	margin: 0 auto 4em;
	padding: 0 10px;
}
nav {
	top: 0;
	position: -webkit-sticky;
	position: sticky;
	display: block;
	border: 0 solid #DDDDDD;
	border-width: 1px 0;
	background: #fff;
	z-index: 100;
	padding: 10px;
	font-weight: 700;
}
/*
[data-bgcolor] { position: relative; }
[data-bgcolor]:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	width: 101vw;
	z-index: -1;
	transform: translateX(-50.5%)
}
[data-bgcolor=grey]:before { background-color: #ddd; }
[data-bgcolor=charcoal] { color: #fff; }
[data-bgcolor=charcoal]:before { background-color: $color_text; }
[data-bgcolor=white]:before { background-color: #fff; }

.text {
	position: relative;
	max-width: 910px;
	margin: 0 auto;
	padding: 10px 20px;
}
.text__columnar { column-gap: 20px; }
.text__columnar p { margin-top: 0; }
.text__columnar li { page-break-inside: avoid; }
.text__columnar[columns="2"] { column-count: 2; }
.text__columnar[columns="3"] { column-count: 3; }
.text__columnar[columns="4"] { column-count: 4; }
*/
.logo {
	position: relative;
	z-index: 100;
	margin-right: 20px;
}
.logo a {
		position: relative;
		display: block;
		max-width: 100%;
		height: 100%
	}
.logo img, .logo svg {
		display: block;
		max-width: 100%;
		max-height: 100%
	}
.logo svg .logoMark {
		fill: currentColor;
	}
@media (max-width: 768px) {
.logo {
		max-width: calc(100% - 140px);
		max-height: 40px
}
	}
.masthead, .masthead2 {
	position: relative;
}

.masthead, .masthead2 a {
	display: block;
}

.masthead, .masthead2 figure {
	display: block;
}
.masthead::before {
	}
.masthead img {
		display: block;
		width: 100%;
		max-width: 1600px;
		max-height: 33.3333vw;
		margin: 0 auto 30px;
		-o-object-fit: cover;
		   object-fit: cover;
		-o-object-position: center center;
		   object-position: center center;
	}
	
.masthead2 img
{
		display: block;
		width: 100%;
		max-width: 1600px;
		max-height: 40.3333vw;
		margin: 0 auto 30px;
		-o-object-fit: cover;
		   object-fit: cover;
		-o-object-position: top center;
		   object-position: top center;
	}
	
.masthead3 img
{
		display: block;
		width: 100%;
		max-width: 1600px;
		max-height: 50.33333vw;
		margin: 0 auto 30px;
		-o-object-fit: cover;
		   object-fit: cover;
		-o-object-position: bottom center;
		   object-position: bottom center;
	}
.social {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.social > * {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: 2em;
		height: 2em;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		text-decoration: none;
	}
.social a + a {
		margin-left: .5em;
	}
.social .share-btn {
		border: 2px solid;
		border-radius: 50%;
	}
	
.social2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.social2 > * {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width: 2em;
		height: 2em;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		text-decoration: none;
	}
.social2 a + a {
		margin-left: .5em;
	}
.social2 .share-btn {
		border: 2px solid;
		border-radius: 50%;
	}
@media (max-width: 768px) {
.social {
		display: none
}
	}
/*# sourceMappingURL=bundle.max.css.map */
