/* IE/Edge Responsive Viewport */

@-ms-viewport {
	width: device-width;
}

/* Offer Expired Resets */

.offer-expired {
	background: url(/_img/toolbox/icons/icon_important-60.png) no-repeat center 15px, linear-gradient(#d00, #800);
	border-radius: 0;
	padding: 80px 1em 1em;
	text-align: center;
	width: auto;
	min-height: 0;
}

/* General Rules */

body {
	background-color: #fff;
	color: #333;
	font-family: 'Nunito Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 100%;
	line-height: 1.36;
}

h1,
h2,
h3,
.h1,
.h2,
.h3 {
	color: #003166;
	font-family: 'Archivo Black', 'Arial Black', 'Arial Bold', Arial, Gadget, sans-serif;
	line-height: 1.09;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
} 

.fa-ul li {
	list-style: none;
}

.fa-li {
	color: #376996;
}

.content svg {
	display: block;
}

img {
	height: auto;
	max-width: 100%;
}

@media (min-width: 30em) {
	body {
		font-size: 110%;
	}
}

@media (min-width: 48em) {
	body {
		font-size: 115%;
	}
}

@media (min-width: 62em) {
	body {
		font-size: 120%;
	}
}

/* General Layout Rules */

.content {
	background-color: #fff;
	padding: 0
}

.wrap,
.inner-wrap {
	margin: 0 auto;
	max-width: 35em;
	padding: 1px 1em;
}

/* Header Rules */

.eyebrow {
	background-color: #003166;
	color: #fff;
	padding: 1.2em 1em 0;
}

.eyebrow p {
	font-size: 1.25em;
	margin: 0.25em auto;
}

.eyebrow svg {
	/* filter: drop-shadow(4px 4px 2px rgba(0, 0, 0, 0.33)); */
	margin: 2em -1em 0;
	transform: rotate(180deg);
}

header .wrap {
	max-width: 47em;
}

header h1,
header .h1 {
	line-height: 1.15;
	margin: 0.2em auto 0;
}

header .sub-line {
	color: #4380B2;
	font-size: 1.6em;
	margin: 0.67em auto;
}

header .deck {
	background: #62a138;
	border-radius: 1rem;
	color: #fff;
	font-size: 1.25em;
	margin: 1.4em auto;
	padding: 1px 1rem;
	width: 80%;
}

@media (min-width: 33em) {
	header h1,
	header .h1 {
		font-size: 4em;
	}

	header .sub-line {
		font-size: 2em;
	}
}

/* Sepcial Sections */

.cutout-section .cutout-section-background {
	background-color: #f2f2f2;
}

.cutout-section.-blue .cutout-section-background,
.callout-section {
	background-color: #e3f2fd;
}

.cutout-section svg {
	filter: drop-shadow(-3px -3px 2px rgba(0, 0, 0, 0.1));
}

.cutout-section svg:last-of-type {
	filter: drop-shadow(4px 4px 3px rgba(0, 0, 0, 0.15));
}

.callout-section {
	margin: 1em auto;
}

.callout-section .wrap {
	max-width: 72em;
	padding: 1px 2em;
}

.multi-column-section {
	margin: 0 -2em;

    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

/* Portraits */

.portrait {
	margin: 1.4em auto;
	text-align: center;
}

.portrait img {
	border-radius: 50%;
}

.portrait strong {
	color: #00448c;
	font-size: 1.25em;
	font-weight: 800;
}

@media (min-width: 27.5em) {
	.portrait-right {
		float: right;
		margin: 0 0 1.4em 1.4em;
	}

	.portrait-right figcaption {
		text-align: left;
	}

	.cutout-section .portrait-right {
		margin: 1.4em 0 1.4em 1.4em;
	}
}

/* Inline Quotes */

.inline-quote {
	margin: 2em auto;

    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.inline-quote .inline-quote-markers {
	padding-right: 1em;

    -webkit-flex: 0 0 auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
}

.inline-quote .inline-quote-copy {
	color: #00448C;
	font-weight: 80
	0;
    -webkit-flex: 1 1 15em;
    -ms-flex: 1 1 15em;
    flex: 1 1 15em;
}

.inline-quote .inline-quote-copy :first-child {
	margin-top: 0;
}

.inline-quote .inline-quote-copy :last-child {
	margin-bottom: 0;
}

/* Cards */

.card_with-image .card-image {
	display: block;
	margin: 0 auto;
	text-align: center;
}

.card_alt {
	color: #00448c;
	font-weight: 700;
}

.card_alt .cited {
	color: #003166;
	font-style: normal;
	font-weight: 800;
	text-align: left;
}

.card_with_border + .card_with_border {
	border-top: 1px solid #00448c;
	padding-top: 2em;
}

.card_with-image_vertical {
	margin: 2em;

	-webkit-flex: 0 1 18em;
    -ms-flex: 0 1 18em;
    flex: 0 1 18em;
}

.card_with-image_vertical .card_with-image_image .portrait {
	margin-top: 0;
}

.card_with-image_vertical .card_with-image_copy :last-child {
	margin-bottom: 0;
}

.card_with-image_horizontal-wide .card_with-image_image figure,
.card_with-image_horizontal-wide .card_with-image_image img {
	display: block;
	margin: 0 auto;
}

@media (min-width: 35em) {
	.card_with-image_horizontal {
		margin: 2.2em auto;

		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.card_with-image_horizontal .card_with-image_image {
		padding: 0 1em;

		-webkit-flex: 0 0 auto;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
	}

	.card_with-image_horizontal .card_with-image_image .portrait {
		margin: 0;
	}

	.card_with-image_horizontal .card_with-image_copy :first-child {
		margin-top: 0;
	}
	
	.card_with-image_horizontal .card_with-image_copy :last-child {
		margin-bottom: 0;
	}	
}

@media (min-width: 37.5em) {
	.card_with-image_horizontal-wide {
		margin: 2.2em auto;

		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.card_with-image_horizontal-wide .card_with-image_image {
		padding: 0 1em;
		max-width: 250px;

		-webkit-flex: 0 0 auto;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		-webkit-order: 1;
		-ms-flex-order: 1;
		order: 1;
	}

	.card_with-image_horizontal-wide .card_with-image_image .portrait {
		margin: 0;
	}

	.card_with-image_horizontal-wide .card_with-image_copy :first-child {
		margin-top: 0;
	}
	
	.card_with-image_horizontal-wide .card_with-image_copy :last-child {
		margin-bottom: 0;
	}	
}

/* Table Section */

.cutout-section table {
	border: 0 none;
	margin: 1.4em auto;
	width: 100%;
}

.cutout-section caption {
	color: #003166;
	font-size: 1.25em;
	font-weight: 800;
	line-height: 1.09;
	margin: 0 auto 0.8em;
}

.cutout-section td {
	border: 0 none;
	margin: 1.5em 0;
	padding: 0.5em 2px;
}

.cutout-section tr + tr {
	border-top: 1px solid #ddd;
}

.cutout-section tr td:last-child {
	color: #003166;
	font-weight: 800;
	padding-left: 0.5em;
	text-align: right;
}

/* Stand Alone Images */

.centered-image {
	margin: 1.4em auto;
}

.centered-image img {
	display: block;
	margin: 0 auto;
}

@media (min-width: 37.5em) {
	.right-image {
		float: right;
		margin: 0 0 1.4em 1.4em;
		max-width: 340px;
	}
}

/* Long Quote Blocks */

.quote_with_image {
	background: #e4ffd3;
	padding: 1px 1em;
	margin: 1.4em auto;
	border-radius: 1.25em;
}

@media (min-width: 26em) {
	.quote_with_image .portrait {
		float: left;
		margin: 1.4em 1.4em 0 0;
	}
}

/* Buttons */

a.order-button {
	background: #f06b1b;
	border-radius: 0.8em;
	box-sizing: border-box;
	color: #fff;
	display: inline-block;
	font-family: 'Archivo Black', 'Arial Black', 'Arial Bold', Arial, Gadget, sans-serif;
	font-size: 1.25em;
	line-height: 1.09;
	margin: 0.5em auto;
	max-width: 20em;
	padding: 0.75em 1em 0.85em;
	width: 100%;
}

a.order-button:hover, 
a.order-button:focus, 
a.order-button:active {
	color:#ff3;
}

a.order-button:active {
	background: #d36b18;
}

/* Utility Classes */

.underline { text-decoration: underline; }

.name-color {
	color: #00448c;
	font-weight: 800;
}

.hidden-a11y {
	position: absolute;
	left: -10000px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.slab-font { font-family: 'Roboto Slab', serif; }