/* H-Type */

/* Google Font Declaration
============================================================= */

/*

Open Sans
https://fonts.google.com/specimen/Open+Sans?selection.family=Open+Sans

Embed Code
<link href="https://fonts.googleapis.com/css?family=Open+Sans:400,400i,700,700i" rel="stylesheet">

Usage
font-family: 'Open Sans', sans-serif;

Available Styles
400
400 italic
700
700 italic

*/

/* Additional Font Declaration
============================================================= */

/*

Charis
http://software.sil.org/charis/download/

Font Package Generated at Font Squirrel
https://www.fontsquirrel.com/tools/webfont-generator

Note
The official version of the web font, found on sil.org, was too large for realistic use.
A smaller version was generated off of the official .ttf version found on sil.org, greatly reducing the size.

Italic versions of both fonts are sitting in the assets directory if italic needs to be enabled.

*/

@font-face {
    font-family: 'Charis';
    src: url('/assets/fonts/charissil-r-webfont.woff2') format('woff2'),
         url('/assets/fonts/charissil-r-webfont.woff') format('woff');
    font-weight: 400;
    font-style: normal;

}


@font-face {
    font-family: 'Charis';
    src: url('/assets/fonts/charissil-b-webfont.woff2') format('woff2'),
         url('/assets/fonts/charissil-b-webfont.woff') format('woff');
    font-weight: 700;
    font-style: normal;

}


/* H-Type Class
============================================================= */

/*

Type should generally be measured in 2/16th (1/8th) incremental changes.

2/16 = .125
4/16 = .25
6/16 = .375
8/16 = .5
10/16 = .625
12/16 = .75
14/16 = .875

--

Colors (Not comprehensive list)

Dark 1 - #242d39

Gray 1 - #6E7881
Gray 2 - #ececec
Gray 3 - #212121
Gray 4 - #caccd2

Teal 1 - #3F808A
Teal 2 - #00808b Web Accessible

Blue 1 - #005f86

See class list in site.css

---

Contrast
For more detailed information about contrast, points and pixels, see:
https://www.w3.org/TR/UNDERSTANDING-WCAG20/visual-audio-contrast-contrast.html


*/

/* Homepage Overrides
---------------------------------------------------------------- */
.page--homepage h2 {
	font-size:3rem !important;
	font-weight:800 !important;
	line-height: 3.5rem !important;
}

.page--homepage h3 {
	font-family:inherit !important;
	color:#252e3a !important;
	margin: 0 0 1rem 0 !important;
}

.page--homepage .module--header h2 {
	text-align:center;
}

.page--homepage .module--multi-column-image-and-text-block .text-block p {
	line-height:1.75rem !important;
}

.page--homepage .module--multi-column-image-and-text-block .column-container {
    padding: 0;
}

.module--multi-column-image-and-text-block .blockCTA a {
	font-weight:700;
	border-radius:2px;
}

.page--homepage .blog_list .blog_list_title p {
	font-size: 1.5rem;
    font-weight: 600;
    line-height: 2rem;
    margin-bottom: .5rem;
}

.page--homepage .blog_list .blog_list_date p {
    font-size: .875rem;
    color: #bf5604;
    margin-top: .25rem;
    font-weight: 700;
}

.page--homepage .blog_list .blog_list_body p {
    margin-top: .75rem;
    font-size: 1rem;
    line-height: 1.5rem;
}

.banner-headline {
	font-size: 3rem;
    font-weight: 800;
    line-height: 3rem;
	color:#ffffff;
	text-shadow: -5px 5px 7px rgba(0, 0, 0, 0.3);
	display: inline-block;
    margin-bottom: .875rem;
}

.banner-subheadline {
	font-size:1.25rem;
	font-weight:600;
	line-height:2rem;
	color:#ffffff;
	text-shadow: -3px 3px 7px rgba(0, 0, 0, 0.5);
	display: inline-block;
    margin-bottom: 2.25rem;
}

.banner-cta-button {
	font-size:.75rem;
	font-weight:700;
	background-color: #ffffff;
    color: #e17005;
    padding: .55rem 1rem .55rem 1rem;
	border-radius: 2rem;
	cursor: pointer;
}

.banner-cta-button:hover {
	text-decoration:underline;
}

.help-button-text {
	font-size:1.125rem;
	font-weight:700;
	color:inherit;
	line-height:1rem;
}

.help-button-text:hover {
	color:inherit;
}

@media screen and (min-width: 64em) {
	.page--homepage .main-content {
		padding: 0 2rem;
		margin: 0 auto 6rem auto;
	}
}

/* Mobile @ 768 */
@media screen and (max-width: 47.9375em) {

	.wrapper.more-space {
		padding-top: 3rem !important;
	}

	.page--homepage .blog_list .blog_list_body p {
		font-size: 1.125rem;
   	 	line-height: 1.75rem;
	}

	.module--multi-column-image-and-text-block {
		/* border-bottom: 1px solid #ccc; */
    	padding-bottom: 2rem !important;
	}

	.module--multi-column-image-and-text-block .text-block p {
		display:none;
	}

	.module--multi-column-image-and-text-block .blockCTA p {
		display:inline-block;
	}

	.module--multi-column-image-and-text-block .col {
		padding-bottom: 0rem !important;
	}

	.page--homepage .body-content .module:not(:last-child), .sidebar-content .module:not(:last-child) {
		margin-bottom: 0 !important;
	}

	.page--homepage h2 {
		font-size: 2.25rem !important;
		font-weight: 800 !important;
		line-height: 2.5rem !important;
	}
}

/* Alignment
---------------------------------------------------------------- */

.h-type.left,
.h-type *.left {
	text-align: left;
}

.h-type.center,
.h-type *.center {
	text-align: center;
}

.h-type.right,
.h-type *.right {
	text-align: right;
}

/* Modifier
---------------------------------------------------------------- */

.h-type .bottom-0{
	margin-bottom: 0;
}

/* Headings
---------------------------------------------------------------- */

.h-type h1,
.h-type *.h1 {
	font-family: "Charis", serif;
	font-style: normal;
	font-weight: 400;
	font-size: 3.5rem;
	line-height: 3.5rem;
	letter-spacing: -.0125rem;
	color: currentColor;
	text-transform: none;
	display: inline-block;
	width: 100%;
	margin: 0 0 1rem 0;
}

/* Tablet @ 1024 */
@media screen and (max-width: 63.9375em) {
	.h-type h1,
	.h-type .h1 {

	}
}

/* Mobile @ 768 */
@media screen and (max-width: 47.9375em) {
	.h-type h1,
	.h-type .h1 {
		font-size: 2.375rem;
		line-height: 2.375rem;
	}
}

.h-type h2,
.h-type *.h2 {
	font-family: 'Open Sans', sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 2.25rem;
	line-height: 2.5rem;
	letter-spacing: -.02rem;
	color: currentColor;
	text-transform: none;
	display: inline-block;
	width: 100%;
	margin: 0 0 .5rem 0;
}

/* Tablet @ 1024 */
@media screen and (max-width: 63.9375em) {
	.h-type h2,
	.h-type .h2 {
		font-size: 2.125rem;
		line-height: 2.375rem;
	}
}

/* Mobile @ 768 */
@media screen and (max-width: 47.9375em) {
	.h-type h2,
	.h-type .h2 {
		font-size: 2rem;
		line-height: 2.25rem;
	}
}


.h-type h3,
.h-type *.h3 {
	font-family: "Charis", serif;
	font-style: normal;
	font-weight: 400;
	font-size: 1.75rem;
	line-height: 2.25rem;
	letter-spacing: 0rem;
	color: currentColor;
	text-transform: none;
	display: inline-block;
	width: 100%;
	margin: 0 0 .25rem 0;
}

/* Tablet @ 1024 */
@media screen and (max-width: 63.9375em) {
	.h-type h3,
	.h-type .h3 {
		font-size: 1.625rem;
		line-height: 2.125rem;
	}
}

/* Mobile @ 768 */
@media screen and (max-width: 47.9375em) {
	.h-type h3,
	.h-type .h3 {
		font-size: 1.5rem;
		line-height: 2rem;
	}
}

.h-type h4,
.h-type *.h4 {
	font-family: 'Open Sans', sans-serif;
	font-style: normal;
	font-weight: 700;
	font-size: 1.375rem;
	line-height: 1.625rem;
	letter-spacing: 0rem;
	color: #6E7881;
	text-transform: none;
	display: inline-block;
	width: 100%;
	margin: 0 0 .5rem 0;
}

.h-type h5,
.h-type *.h5 {
	font-family: 'Open Sans', sans-serif;
	font-style: normal;
	font-weight: 700;
	font-size: .875rem;
	line-height: 1.375rem;
	letter-spacing: .125rem;
	color: currentColor;
	text-transform: uppercase;
	display: inline-block;
	width: 100%;
	margin: 0 0 1rem 0;
}

/* H6 is not available */
.h-type h6,
.h-type *.h6 {
	font-family: 'Open Sans', sans-serif;
	font-style: normal;
	font-weight: 700;
	font-size: .875rem;
	line-height: 1rem;
	letter-spacing: .125rem;
	color: currentColor;
	text-transform: uppercase;
	display: inline-block;
	width: 100%;
	margin: 0 0 1rem 0;
}

/* Non-heading elements
---------------------------------------------------------------- */

.h-type p {
	font-family: 'Open Sans', sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 1.125rem;
	line-height: 2.125rem;
	letter-spacing: 0rem;
	color: currentColor;
	text-transform: none;
	display: inline-block;
	width: 100%;
	margin: 0 0 2rem 0;
}

/* Mobile @ 768 */
@media screen and (max-width: 47.9375em) {
	.h-type p {
		font-size: 1rem;
		line-height: 1.875rem;
	}
}

.h-type p a,
.outro-content a {
	text-decoration: none;
	border-bottom: 1px solid currentColor;
}

.h-type strong,
.h-type b{
	font-weight: 700;
}

.h-type em,
.h-type i{
	font-style: italic;
}

.h-type del,
.h-type .strikethrough{
	text-decoration: line-through;
}

.h-type li {
	font-family: 'Open Sans', sans-serif;
	font-style: normal;
	font-weight: 400;
	font-size: 1.125rem;
	line-height: 1.875rem;
	letter-spacing: 0;
	color: currentColor;
	text-transform: none;
	display: inline-block;
	width: 100%;
	margin: 0 0 .5rem 0;
}

.h-type ul {
	padding-left: 1.5rem;
	margin: 0 0 2rem 0
}

.h-type ul li:before {
	content: '\2022';
	display: inline-block;
	width: 1.5rem;
	margin-left: -1.5rem;
}

.h-type ul li ul li::before {
    content: '\26AC';
}

.h-type ul ul {
	margin: 0.5rem 0 0 0;
}

.h-type ol {
	padding-left: 0rem;
	margin: 0 0 1.75rem 0;
	list-style-type: none;
	counter-reset: list;
}

.h-type ol li:before{
	content: counter(list) ".";
	margin-left: 1.5rem;
	margin-right: 1rem;
}

.h-type ol li {
	display: list-item;
	counter-increment: list;
}

.h-type li a {
	text-decoration: none;
	border-bottom: 1px solid currentColor;
}

.h-type hr {
	display: inline-block;
	position: relative;
	width: 100%;
	padding: 2rem 0 0 0;
	border: 0;
	margin: 0 0 2rem 0;
	overflow: visible;
}

.h-type hr:before {
	position: absolute;
	content: '';
	height: .0625rem;
	background-color: currentColor;
	width: 100%;
	top: 100%;
	left: 0;
}

.h-type hr:first-child{
	padding-top: 0;
}

.h-type h2 + hr,
.h-type .h2 + hr {
	padding-top: .25rem;
	margin-bottom: 2rem;
}

.h-type h3 + hr,
.h-type .h3 + hr {
	padding-top: 0;
	margin-bottom: 1rem;
}

.h-type p + hr {
	padding-top: 0rem;
}

.h-type code {
	font-family: monospace, sans-serif;
	font-size: 1rem;
	line-height: 2rem;
}

.h-type > *:first-child:not(hr) {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

.h-type > *:last-child:not(hr) {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

/* Miscellaneous Typography
---------------------------------------------------------------- */

.h-type h5.small,
.h-type .h5.small,
.h-type.small h5,
.h-type.small .h5 {
	margin-bottom: .375rem;
}

.h-type p.small,
.h-type.small p {
	font-size: 1rem;
	line-height: 1.375rem;
	margin-bottom: .75rem;
	color: #212121;
}

.h-type p.small a,
.h-type.small p a {
	color: #00808b;
	font-weight: 700;
	border-bottom: 1px solid currentColor;
}

.h-type p.small strong,
.h-type.small p strong{
	font-weight: 700;
	font-size: .875rem;
}

.h-type ul.small,
.h-type.small ul{
	padding-left: .75rem;
}

.h-type ul.small li,
.h-type.small ul li{
	font-family: "Charis", serif;
	font-size: 1rem;
	line-height: 1.375rem;
	color: #626D75;
	margin-bottom: .75rem;
}

.h-type ul.small li:before,
.h-type.small ul li:before{
	margin-left: -.75rem;
	width: .75rem;
}

.h-type.small hr,
.h-type hr.small {
	margin: .75rem 0;
}

.h-type p.featured,
.h-type.featured p {
	font-size: 1.25rem;
	line-height: 1.75rem;
	color: #626D75;
}

@media screen and (min-width: 48em) {
	.h-type p.featured,
	.h-type.featured p {
		font-size: 1.5rem;
		line-height: 2rem;
	}
}

.h-type p.sidebar a,
.h-type.sidebar p a {
	font-weight: 700;
	border-bottom: 0 solid transparent;
}

.h-type blockquote {
	font-family: "Charis", serif;
	font-style: normal;
	font-weight: 400;
	font-size: 2.25rem;
	line-height: 2.875rem;
	letter-spacing: 0rem;
	color: currentColor;
	text-transform: none;
	display: inline-block;
	max-width: 100%;
	margin: 0 0 2.75rem 0;
	padding: 0 0 0 2.5rem;
	position: relative;
}

/* Mobile @ 768 */
@media screen and (max-width: 47.9375em) {
	.h-type blockquote {
		font-size: 1.75rem;
		line-height: 2.25rem;
	}
}

.h-type blockquote:before {
	content: "\201C";
	font-size: 4.25rem;
	font-weight: 700;
	line-height: 2.875rem;
	color: #626D75;
	position: absolute;
	left: 0rem;
	top: .5rem;
}

/* Mobile @ 768 */
@media screen and (max-width: 47.9375em) {
	.h-type blockquote:before {
		line-height: 2.25rem;
	}
}

.h-type blockquote:after {
	content: "\201D";
	font-size: 4.25rem;
	font-weight: 700;
	line-height: 2.875rem;
	color: #626D75;
	vertical-align: bottom;
	position: relative;
	top: .5rem;
	padding-left: .25rem;
}

/* Mobile @ 768 */
@media screen and (max-width: 47.9375em) {
	.h-type blockquote:after {
		line-height: 2.25rem;
	}
}


/* If an attribution class is found after a block quote, apply style, if not default back to p */
.h-type blockquote + p.attribution {
	font-size: 1rem;
	line-height: 1.375rem;
	margin-top: -2rem;
	margin-bottom: 2.75rem;
	padding-left: 2.5rem;
	font-style: italic;
	color: #6E7881;
}

.h-type blockquote + p.attribution:before{
	content: "\2014";
	margin-right: .25rem;
}

.h-type p.quote-no-quote,
.h-type.quote-no-quote p {
	font-family: "Charis", serif;
	font-style: normal;
	font-weight: 400;
	font-size: 2.25rem;
	line-height: 2.875rem;
	letter-spacing: 0rem;
	color: currentColor;
	text-transform: none;
	display: inline-block;
	max-width: 100%;
	position: relative;
}

/* Mobile @ 768 */
@media screen and (max-width: 47.9375em) {
	.h-type p.quote-no-quote,
	.h-type.quote-no-quote p {
		font-size: 1.75rem;
		line-height: 2.25rem;
	}
}

.h-type.overview-list ul,
.h-type ul.overview-list {
	padding-left: 0;
}

.h-type.overview-list ul li,
.h-type ul.overview-list li {
	font-weight: 700;
	padding-bottom: .5rem;
	margin-bottom: 1rem;
	border-bottom: .0625rem solid #caccd2;
	font-size: 1.25rem;
	line-height: 1.75rem;
}

@media screen and (min-width: 48em) {
	.h-type.overview-list ul li,
	.h-type ul.overview-list li {
		font-size: 1.5rem;
		line-height: 2rem;
	}
}

.h-type.overview-list ul li:before,
.h-type ul.overview-list li:before {
	content: "";
	margin-left: 0;
	width: 0;
}

.h-type.overview-list ul li a,
.h-type ul.overview-list li a {
	text-decoration: none;
	border-bottom: 0 solid transparent;
}

.h-type.overview-list h2 + ul,
.h-type h2 + ul.overview-list {
	padding-top: .5rem;
}

.h-type .h-phone-number {
	white-space: nowrap;
}

/* Caption Text, shown below assets with inherit .5rem padding-top */
.h-type p.caption,
.h-type.caption p{
	font-size: 1rem;
	line-height: 1.375rem;
	margin-bottom: .75rem;
	padding-top: .5rem !important;
	color: #6E7881;
	font-style: italic;
}

/* Typography Colors
---------------------------------------------------------------- */

/*

The default selection for all h-type is "dark-type", it is an implied class and not actually defined
but for the purpose of notation it will be referred to as "dark type"

"dark-type" is for dark color type on a light background.
The lightest background color this can be placed on and still be WCAG AA compliant is #939393 | rgb(147,147,147)


"light-type" is for light color type on a dark background.
The lightest background color this can be placed on and still be WCAG AA compliant is #767676 | rgb(118,118,118)

*/

.h-type {
	color: #242d39;
}

.h-type.light-type{
	color: #ffffff;
}

.h-type h1,
.h-type .h1 {
	color: currentColor;
}

.h-type h2,
.h-type .h2{
	color: currentColor;
}

a.h-type h2,
a.h-type .h2,
a .h-type h2,
a .h-type .h2,
.h-type h2 a,
.h-type .h2 a,
.h-type a h2,
.h-type a .h2 {
	color: #00808b;
	font-weight: 700;
}

a:hover.h-type h2,
a:hover.h-type .h2,
a:hover .h-type h2,
a:hover .h-type .h2,
.h-type h2 a:hover,
.h-type .h2 a:hover,
.h-type a:hover h2,
.h-type a:hover .h2 {
	color: #007173;
}

.h-type h3,
.h-type .h3{
	color: #626D75;
}

a.h-type h3,
a.h-type .h3,
a .h-type h3,
a .h-type .h3,
.h-type h3 a,
.h-type .h3 a,
.h-type a h3,
.h-type a .h3 {
	color: #00808b;
	font-weight: 700;
}

a:hover.h-type h3,
a:hover.h-type .h3,
a:hover .h-type h3,
a:hover .h-type .h3,
.h-type h3 a:hover,
.h-type .h3 a:hover,
.h-type a:hover h3,
.h-type a:hover .h3 {
	color: #007173;
}

.h-type.light-type h3,
.h-type.light-type .h3{
	color: #ffffff;
}

a.h-type.light-type h3,
a.h-type.light-type .h3,
a .h-type.light-type h3,
a .h-type.light-type .h3,
.h-type.light-type h3 a,
.h-type.light-type .h3 a,
.h-type.light-type a h3,
.h-type.light-type a .h3 {
	color: #ffffff;
	font-weight: 700;
	text-decoration: underline;
}

a:hover.h-type.light-type h3,
a:hover.h-type.light-type .h3,
a:hover .h-type.light-type h3,
a:hover .h-type.light-type .h3,
.h-type.light-type h3 a:hover,
.h-type.light-type .h3 a:hover,
.h-type.light-type a:hover h3,
.h-type.light-type a:hover .h3 {
	color: #ececec;
}

.h-type h4,
.h-type .h4{
	color: #6d7983;
}

a.h-type h4,
a.h-type .h4,
a .h-type h4,
a .h-type .h4,
.h-type h4 a,
.h-type .h4 a,
.h-type a h4,
.h-type a .h4 {
	color: #00808b;
	font-weight: 700;
}

a:hover.h-type h4,
a:hover.h-type .h4,
a:hover .h-type h4,
a:hover .h-type .h4,
.h-type h4 a:hover,
.h-type .h4 a:hover,
.h-type a:hover h4,
.h-type a:hover .h4 {
	color: #007173;
}

.h-type h5,
.h-type .h5{
	color: #374960;
}

a.h-type h5,
a.h-type .h5,
a .h-type h5,
a .h-type .h5,
.h-type h5 a,
.h-type .h5 a,
.h-type a h5,
.h-type a .h5 {
	color: #00808b;
	font-weight: 700;
}

a:hover.h-type h5,
a:hover.h-type .h5,
a:hover .h-type h5,
a:hover .h-type .h5,
.h-type h5 a:hover,
.h-type .h5 a:hover,
.h-type a:hover h5,
.h-type a:hover .h5 {
	color: #007173;
}

/* H6 is not currently supported */

.h-type h6,
.h-type .h6{
	color: #374960;
}

a.h-type h6,
a.h-type .h6,
a .h-type h6,
a .h-type .h6,
.h-type h6 a,
.h-type .h6 a,
.h-type a h6,
.h-type a .h6 {
	color: #00808b;
	font-weight: 700;
}

a:hover.h-type h6,
a:hover.h-type .h6,
a:hover .h-type h6,
a:hover .h-type .h6,
.h-type h6 a:hover,
.h-type .h6 a:hover,
.h-type a:hover h6,
.h-type a:hover .h6 {
	color: #007173;
}

.h-type.light-type p.featured,
.h-type.light-type.featured p{
	color: #ffffff;
}

.h-type.light-type p.featured a,
.h-type.light-type.featured p a{
	color: #ffffff;
}

.h-type hr{
	color: #caccd2;
}

.h-type p a,
.outro-content a {
	color: #00808b;
}

.h-type p a:hover,
.outro-content a:hover {
	color: #007173;
}

.h-type li a {
	color: #00808b;
}

.h-type li a:hover {
	color: #007173;
}
