/* @group Fonts */

@font-face {
font-family: 'Quentin';
src: url("../fonts/quentin-webfont.woff2") format("woff2"), url("../fonts/quentin-webfont.woff") format("woff");
font-weight: 400;
font-style: normal;
}

/*@end*/

/* @group Responsive Video */

.video-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	text-align: center;
}

.video-container iframe, .video-container object, .video-container embed, .video-container video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*@end*/

/* @group Colors */



/*@end*/

body {
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: none;
	font-family: 'Lato', sans-serif;
	background: #fff;
}

h1, h2, h3, h4, h5, h6, p, ul, ol {
	margin-top: 0;
}

h1 {
	font: 700 1.875rem/2.375rem 'Lato', sans-serif;
	color: #025072;
	text-align: center;
	text-transform: uppercase;
	margin-bottom: 0.5rem;
}

h1.stroke {
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	letter-spacing: 0.1rem;
	margin-bottom: 3.750rem;
	padding-bottom: 1.625rem;
	background: url("../images/h1-bg.png") no-repeat center bottom;
}

h1.page-title {
	font: 400 3.438rem/4.125rem 'Quentin', sans-serif;
	text-transform: lowercase;
	background: url("../images/h1-bg-title.png") no-repeat center bottom;
	margin-bottom: 2.5rem;
}

h1.big-num {
	font-size: 5.875rem;
	line-height: 5.875rem;
	color: #ffb602;
	margin-bottom: 2.5rem;
}

h2 {
	font: 700 1.5rem/2.375rem 'Lato', sans-serif;
	color: #dc2c27;
	letter-spacing: 0.013rem;
	margin-bottom: 0.5rem;
}

h2 strong {
	font-weight: inherit;
	color: #dc2c27 !important;
	background: url("../images/h1-bg.png") no-repeat right bottom;
	padding: 0 4px 8px;
	margin: 0 -4px;
}

h2.big-num {
	font-size: 5.875rem;
	line-height: 5.875rem;
	color: #ffb602;
	letter-spacing: normal;
	text-align: center;
	text-transform: uppercase;
	margin-bottom: 2.5rem;
}

h3 {
	font: 400 1.125rem/1.750rem 'Oswald', sans-serif;
	color: #ffb602;
	letter-spacing: 0.013rem;
}

h4 {
	font: 700 1.25rem/1.5rem 'Lato', sans-serif;
	color: #dc2c27;
	letter-spacing: 0.013rem;
	margin-bottom: 10px;
}

h5 {
	font: 400 1rem/1.25rem 'Oswald', sans-serif;
	color: #025072;
	letter-spacing: 1px;
	text-transform: uppercase;
	margin-bottom: 20px;
}

h5 strong {
	display: block;
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 1.5rem;
	letter-spacing: 0.125rem;
	text-align: center;
	background: url("../images/divider-short.png") no-repeat center bottom;
	padding-bottom: 1rem;
}

h6 {
	font: 400 1rem/1.875rem 'Lato', sans-serif;
	color: #dc2c27;
	letter-spacing: 1px;
	text-transform: uppercase;
}

p {
	font: 400 1rem/1.875rem 'Lato', sans-serif;
	color: #231f20;
	margin-bottom: 0.625rem;
}

a {
	color: #dc2c27;
	font-weight: 700;
	text-decoration: none;
}

a:hover, a:focus, a:active {
	color: #ffb602 !important;
}

a.button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #dc2c27;
	border: 3px solid #dc2c27;
	border-radius: 1.5rem;
	font: 400 1rem/1.5rem 'Oswald', sans-serif;
	color: #fff;
	letter-spacing: 0.1rem;
	text-transform: uppercase;
	padding: 0.688rem 1.5rem;
}

a.button:hover, a.button:focus, a.button:active {
	background: #ffb602;
	border-color: #ffb602;
	color: #fff !important;
}

a.button.blue {
	border-color: #025072;
	background: #fff;
	color: #025072;
}

a.button.blue:hover, a.button.blue:focus, a.button.blue:active {
	border-color: #ffb602;
	color: #ffb602 !important;
}

a.button.white {
	border-color: #fff;
	background: transparent;
	color: #fff;
}

a.button.white:hover, a.button.white:focus, a.button.white:active {
	border-color: #ffb602;
	color: #ffb602 !important;
}

a.spark {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	background: url("../images/button-spark.png") no-repeat center center transparent;
	font: 400 1.063rem/1.5rem 'Oswald', sans-serif;
	color: #fff;
	letter-spacing: 0.1rem;
	text-transform: uppercase;
	margin: 0 auto;
	height: 204px;
}

a.spark span {
	display: flex;
	background: #dc2c27;
	margin: 0 auto;
	padding: 1.75rem 2.5rem;
}

a.spark:hover span, a.spark:focus span, a.spark:active span {
	background: #ffb602;
	color: #fff !important;
}

a.spark.rounded {
	display: inline-flex;
	font: 400 1rem/1.5rem 'Oswald', sans-serif;
	background-size: 150px;
	height: 150px;
}

a.spark.rounded span {
	padding: 0.688rem 1.5rem;
	border-radius: 1.5rem;
}

.addthis_toolbox {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	border: 3px solid #025072;
	border-radius: 1.5rem;
	font: 400 1rem/1.5rem 'Oswald', sans-serif;
	color: #025072;
	letter-spacing: 0.1rem;
	text-transform: uppercase;
	padding: 0.688rem 1.5rem;
}

.addthis_toolbox a {
	color: #025072;
	padding: 0 0 0 0.625rem;
}

.addthis_toolbox a > div {
	display: none;
	visibility: hidden;
}

blockquote {
	background: url("../images/blockquote-vert.png") no-repeat center top;
	padding-top: 78px;
	font: 400 1rem/2.25rem;
	color: #025072;
	text-align: center;
	margin-bottom: 1.875rem;
}

blockquote p {
	font: 400 1rem/2.25rem;
	color: #025072;
	margin-bottom: 1.875rem;
}

blockquote.horizontal {
	min-height: 155px;
	background: url("../images/blockquote-horz.png") no-repeat left top;
	padding: 0 0 0 78px;
	text-align: left;
}

ul.checkmark, ol.checkmark, ul.arrow, ol.arrow {
	list-style: none;
	margin: 0 auto;
	display: table;
}

ul, ol {
	font: 700 1rem/1.625rem 'Lato', sans-serif;
	color: #025072;
	margin-bottom: 0.625rem;
	margin-left: 1.25rem;
}

ul li, ol li {
	margin-bottom: 0.625rem;
}

ul.grey, ul.gray, ol.grey, ol.gray {
	font-weight: 400;
}

ul.checkmark.two-column, ul.checkmark.three-column, ol.checkmark.two-column, ol.checkmark.three-column {
	display: block;
}

ul.checkmark li, ol.checkmark li {
	background: url("../images/bullet-check.png") no-repeat left top;
	padding: 10px 0 0 46px;
	margin-bottom: 2.75rem;
}

ul.arrow.two-col, ul.arrow.two-column, ul.arrow.two-columns, ul.arrow.three-col, ul.arrow.three-column, ul.arrow.three-columns, ol.arrow.two-col, ol.arrow.two-column, ol.arrow.two-columns, ol.arrow.three-col, ol.arrow.three-column, ol.arrow.three-columns {
	display: block;
}

ul.arrow li, ol.arrow li {
	background: url("../images/bullet-arrow.png") no-repeat left center;
	padding: 0 0 0 50px;
	margin-bottom: 2.75rem;
}

.two-col, .two-column, .two-columns {
	display: block;
	columns: 2;
	-webkit-columns: 2;
	-moz-columns: 2;
	column-count: 2;
	-webkit-column-count: 2;
	-moz-column-count: 2;
	column-gap: 2.5rem;
	-webkit-column-gap: 2.5rem;
	-moz-column-gap: 2.5rem;
}

.three-col, .three-column, .three-columns {
	display: block;
	columns: 3;
	-webkit-columns: 3;
	-moz-columns: 3;
	column-count: 3;
	-webkit-column-count: 3;
	-moz-column-count: 3;
	column-gap: 2.5rem;
	-webkit-column-gap: 2.5rem;
	-moz-column-gap: 2.5rem;
}

label {
	font: 700 1rem/1.25rem 'Lato', sans-serif;
	color: #dc2c27;
	letter-spacing: 0.063rem;
	text-transform: uppercase;
	margin-bottom: 10px;
}

input, textarea, select {
	border: 1px solid #d6d8d9;
	border-radius: 0.75rem;
	background: #fff;
	padding: 0 10px;
	font: 400 13px/32px 'Lato', sans-serif;
	color: #025072;
	width: 100%;
	margin-bottom: 10px;
}

input, select {
	height: 32px !important;
}

input[type="checkbox"], input[type="radio"] {
	height: auto !important;
	margin-bottom: 0;
	line-height: 1.25rem;
	margin-right: 0.25rem;
}

textarea {
	resize: none;
	padding: 10px;
}

input[type="submit"], input[type="button"], button {
	width: auto;
	border-radius: 1rem;
	border: 2px solid #dc2c27;
	background: #dc2c27;
	font: 400 0.875rem/1.875rem 'Oswald', sans-serif;
	color: #fff;
	letter-spacing: 0.1rem;
	text-transform: uppercase;
	padding: 0 1.25rem;
	cursor: pointer;
}

input[type="submit"]:hover, input[type="submit"]:focus, input[type="submit"]:active, input[type="button"]:hover, input[type="button"]:focus, input[type="button"]:active, button:hover, button:focus, button:active {
	background: #ffb602;
	border-color: #ffb602;
	color: #fff;
}

input#query {
	max-width: 84%;
	display: inline-block;
	margin-bottom: 0;
}

#search-submit {
	width: 1.875rem;
	height: 1.875rem;
	font-size: 1rem;
	line-height: 0.875rem;
	padding: 0;
	display: inline-block;
	border-radius: 50%;
	border: 0 none;
}

.nf-field-container.spark {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	background: url("../images/button-spark.png") no-repeat center center transparent;
	font: 400 1.063rem/1.5rem 'Oswald', sans-serif;
	color: #fff;
	letter-spacing: 0.1rem;
	text-transform: uppercase;
	margin: 0 auto;
	height: 204px;
}

input.spark-button {
	display: flex;
	background: #dc2c27;
	height: auto !important;
	margin: 0 auto;
	padding: 0.688rem 1.5rem;
	font: 400 1.063rem/1.5rem 'Oswald', sans-serif;
	color: #fff;
	letter-spacing: 0.1rem;
	text-transform: uppercase;
	border-radius: 1.5rem;
}

.alignleft {
	float: left;
}

.alignright {
	float: right;
}

.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.orange {
	color: #ffb602;
}

.red {
	color: #dc2c27;
}

.blue {
	color: #025072;
}

.light-blue {
	color: #1e83ad;
}

.green {
	color: #5d8f71;
}

.grey, .gray {
	color: #6d6e71;
}

.white {
	color: #fff;
}

.divider, hr {
	margin: 2.5rem auto;
	width: 100%;
	min-height: 4px;
	background: url("../images/divider-yellow.png") repeat-x center center;
	text-align: center;
	border: 0 none;
	clear: both;
}

.divider.full, hr.full {
	width: 100vw;
	left: 50%;
	margin: 2.5rem -50vw;
	position: relative;
}

.divider.dash, hr.dash {
	min-height: 6px;
	background: url("../images/divider-dash.png") repeat-x center center;
}

.divider.mountains, hr.mountains {
	min-height: 30px;
	background: url("../images/divider-mountains.png") no-repeat center center;
}

.divider.triangles, hr.triangles {
	min-height: 42px;
	background: url("../images/divider-triangles.png") no-repeat center center;
}

.divider a, hr a {
	margin: 0 1rem;
}

.divider .addthis_toolbox, hr .addthis_toolbox {
	margin: 0 1rem;
}

.divider .addthis_toolbox a, hr .addthis_toolbox a {
	margin: 0;
}

.full-width {
	width: 100vw;
	left: 50%;
	margin: 2.5rem -50vw;
	position: relative;
}

.full-width .row {
	width: 90%;
	max-width: 1050px;
	margin: 0 auto;
	position: relative;
}

.full-width.grey, .full-width.gray {
	background: #f0f0f1;
	background: -moz-linear-gradient(top, #f0f0f1 0%, white 25%);
	background: -webkit-linear-gradient(top, #f0f0f1 0%, white 25%);
	background: linear-gradient(to bottom, #f0f0f1 0%, white 25%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f0f0f1', endColorstr='#ffffff',GradientType=0 );
}

.full-width.grey .row, .full-width.gray .row {
	background: url("../images/box-triangles.png") no-repeat center top;
	margin: -10px auto 0;
	padding: 110px 0 0;
}

.full-width.photo {
	background-size: cover;
	margin: 3.75rem -50vw 6.25rem;
}

.full-width.photo .row {
	min-height: 500px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.full-width.promise {
	background: white;
	background: -moz-linear-gradient(top, white 60%, #ffdd69 100%);
	background: -webkit-linear-gradient(top, white 60%, #ffdd69 100%);
	background: linear-gradient(to bottom, white 60%, #ffdd69 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffdd69',GradientType=0 );
	margin-bottom: 0;
	padding: 30px 0 80px;
	position: relative;
}

.full-photo {
	width: 100vw;
	left: 50%;
	margin: 3.75rem -50vw 6.25rem;
	position: relative;
	background-size: cover;
}

.full-photo .row {
	min-height: 500px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.box {
	margin: 0 auto;
}

.box.submenu {
	text-align: center;
	margin: 0 auto 3.5rem;
}

.box.submenu p {
	color: #58595b;
}

.box.submenu a {
	font-weight: 400;
	color: #025072;
	padding: 0 1rem;
}

.dark-grey, .dark-gray {
	background: #6d6e71;
	padding: 40px;
}

.dark-grey h2, .dark-grey h4, .dark-grey h5, .dark-gray h2, .dark-gray h4, .dark-gray h5 {
	color: #ffb602;
	column-span: all;
}

.dark-grey p, .dark-gray p {
	color: #fff;
}

.dark-grey strong, .dark-gray strong {
	color: #ffb602;
}

.dark-grey a, .dark-gray a {
	color: #ffb602;
}

.dark-grey a:hover, .dark-grey a:focus, .dark-grey a:active, .dark-gray a:hover, .dark-gray a:focus, .dark-gray a:active {
	color: #cfd1d2 !important;
}

.dark-grey ul.checkmark li, .dark-grey ul.checkmark li, .dark-gray ul.checkmark li, .dark-gray ul.checkmark li {
	background: url("../images/bullet-check-dark.png") no-repeat left top;
	color: #fff;
}

.gallery {
	display: flex;
	flex-flow: wrap;
	align-items: center;
	justify-content: center;
}

.gallery img {
	border: 0 none !important;
}

/* Site */

.mobilemenu {
	display: none;
	visibility: hidden;
}

#top-bar {
	width: 100%;
	margin: 0 auto 3px;
	background: #dc2c27;
	font: 700 1rem/1.25rem 'Lato', sans-serif;
	color: #fff;
	padding: 8px 0;
}

#top-bar-inner {
	width: 96%;
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#top-bar-inner a {
	color: #fff;
	font-size: 1.125rem;
	margin-left: 20px;
}

#top-bar-inner #top-right {
	text-align: right;
}

header.campfire {
	width: 100%;
	margin: 0 auto 80px;
}

header#small {
	height: 150px;
	background: url("../images/header-small.jpg") no-repeat center top;
	background-size: cover;
	margin-bottom: 70px;
}

header#large {
	min-height: 588px;
	background: url("../images/header-large.jpg") no-repeat center top;
	background-size: cover;
	margin-bottom: 0;
}

#header-inner {
	width: 96%;
	max-width: 1200px;
	min-height: 176px;
	margin: 0 auto;
	padding-bottom: 40px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

header#large #header-inner {
	min-height: 196px;
	padding-bottom: 60px;
}

#header-menu {
	margin: 0 20px;
	position: relative;
}

ul#top-menu {
	list-style: none;
	margin: 0;
	padding: 0;
	font: 400 1.25rem/2.215rem 'Lato', sans-serif;
	color: #fff;
	text-align: center;
	position: relative;
}

ul#top-menu li {
	display: inline;
	margin: 0 12px;
	white-space: nowrap;
	position: relative;
}

ul#top-menu li.current-menu-item > a {
	background: url("../images/menu-hover.png") no-repeat right bottom;
	color: #fff !important;
}

ul#top-menu a {
	font-weight: 400;
	color: #fff;
	padding: 12px 0;
}

ul#top-menu a:hover, ul#top-menu a:focus, ul#top-menu a:active {
	background: url("../images/menu-hover.png") no-repeat right bottom;
	color: #fff !important;
}

ul#top-menu i {
	display: inline;
	font-size: 0.875rem;
	padding-left: 4px;
	position: relative;
	top: -2px;
}

ul#top-menu ul.sub-menu {
	display: none;
	visibility: hidden;
	position: absolute;
	padding: 20px 30px;
	top: 30px;
	right: -10px;
	background: rgba(2, 80, 114, 0.6);
	border-radius: 24px;
	z-index: 999;
	text-align: left;
}

ul#top-menu ul.sub-menu li {
	display: block;
	margin: 0;
	line-height: 2rem;
}

ul#top-menu ul.sub-menu li a:hover, ul#top-menu ul.sub-menu li a:focus, ul#top-menu ul.sub-menu li a:active {
	background: none;
	color: #dc2c27 !important;
}

ul#top-menu ul.sub-menu li.current-menu-item > a {
	background: none;
	color: #dc2c27 !important;
	font-weight: 700;
}

ul#top-menu ul.sub-menu li.menu-item-has-children > a::after {
	content: "";
	display: none;
}

ul#top-menu ul.sub-menu ul {
	display: block;
	visibility: visible;
	position: relative;
	padding: 0 0 0 20px;
	margin: 0;
	top: auto;
	right: auto;
	background: none;
	border-radius: 0;
}

ul#top-menu li.menu-item-has-children:hover > ul.sub-menu, ul#top-menu li.menu-item-has-children:focus > ul.sub-menu {
	display: block;
	visibility: visible;
}

#search-support {
	white-space: nowrap;
}

#header-search {
	display: inline-flex;
	margin-left: 26px;
	position: relative;
}

#header-search form {
	display: none;
	visibility: hidden;
	position: absolute;
	width: 278px;
	padding: 30px;
	right: -10px;
	top: 30px;
	background: rgba(2, 80, 114, 0.6);
	border-radius: 24px;
	z-index: 999;
}

#header-search span {
	display: inline-block;
	font-size: 1.375rem;
	color: #fff;
}

#header-search:hover > form, #header-search:focus > form {
	display: block;
	visibility: visible;
}

#header-after {
	width: 100%;
	background: url("../images/header-dash.png") repeat-x left 52px;
	margin: -70px auto 0;
	position: relative;
	z-index: 10;
}

#header-campfire {
	width: 68px;
	height: 78px;
	background: url("../images/header-fire.png") no-repeat center center;
	margin: 0 auto;
}

#index-info {
	text-align: center;
	margin: 0 auto 16px;
}

#index-info h1 {
	font: 400 4rem/4.75rem 'Quentin', sans-serif;
	color: #fff;
	letter-spacing: normal;
	text-transform: lowercase;
	margin-bottom: 1.625rem;
}

#index-info a {
	margin: 0 0.688rem;
}

#index-info a.spark {
	display: inline-flex;
}

#header-curve {
	width: 100%;
	height: 200px;
	background: url("../images/header-curve.png") no-repeat center top;
	background-size: cover;
	margin: 0 auto -90px;
}

.wrapper {
	width: 100%;
	margin: 0 auto;
	position: relative;
}

.content {
	width: 90%;
	max-width: 1050px;
	margin: 0 auto;
	position: relative;
}

.content p strong {
	font-weight: 700;
	color: #025072;
}

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

.row {
	width: 100%;
	margin: 0 auto;
	position: relative;
}

#promise {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#promise .col.photo {
	max-width: 222px;
}

#promise .col.photo img {
	border: 2px solid #fff;
	margin-bottom: 0.5rem;
	width: 100%;
	height: auto;
}

#promise .col.text {
	max-width: 474px;
}

#promise p {
	font-size: 1.313rem;
	line-height: 1.938rem;
	margin-bottom: 1.313rem;
	text-align: center;
}

#promise a.spark {
	height: 262px;
	font: 700 1.875rem/1.875rem 'Lato', sans-serif;
	letter-spacing: normal;
	text-transform: none;
	background-image: url("../images/promise-spark.png");
}

#promise a.spark span {
	padding-top: 1.375rem;
	padding-bottom: 1.375rem;
}

footer#footer {
	width: 100%;
	background: url("../images/footer-bg.jpg") repeat center center;
	padding: 40px 0;
	margin: 0 auto 10px;
}

.page-template-page-title-nopromise footer#footer, .error404 footer#footer {
	margin-top: 130px;
}

#footer-inner {
	width: 96%;
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	display: flex;
	align-items: flex-start;
	justify-content: space-around;
}

.footer-cell {
	max-width: 40%;
}

.footer-cell h2 {
	font: 700 1.25rem/1.5rem 'Lato', sans-serif;
	color: #025072;
	letter-spacing: normal;
	text-transform: none;
	margin-bottom: 0.125rem;
}

.footer-cell h3 {
	font: 700 1.063rem/1.625em 'Lato', sans-serif;
	color: #dc2c27;
	letter-spacing: 0.063rem;
	text-transform: uppercase;
	margin-bottom: 0;
}

.footer-cell p {
	font-size: 0.813rem;
	line-height: 1.375rem;
	color: #58595b;
	margin-bottom: 1.375rem;
}

.footer-cell ul.menu {
	list-style: none;
	margin: 0;
	padding: 0;
	font: 400 1rem/1.625em 'Lato', sans-serif;
	color: #414042;
}

.footer-cell ul.menu li {
	margin-bottom: 0.125rem;
}

.footer-cell ul.menu a {
	font-weight: 400;
	color: #414042;
}

.footer-cell.widget_custom_html {
	align-self: center;
}

#bottom {
	width: 100%;
	max-width: 1250px;
	margin: 0 auto;
	padding: 70px 30px;
	border-top: 1px solid #d6d8d9;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#copyright {
	font: 400 0.813rem/1.375rem 'Lato', sans-serif;
	color: #6d6e71;
}

#copyright span, #copyright a {
	display: block;
	font-weight: 400;
	color: #6d6e71;
	margin-bottom: 0.125rem;
}

ul#bottom-menu {
	list-style: none;
	margin: 0;
	padding: 0;
	font: 400 0.813rem/1.375rem 'Lato', sans-serif;
	color: #6d6e71;
	text-align: right;
	max-width: 260px;
}

ul#bottom-menu li {
	display: inline;
	margin: 0 0.125rem;
	white-space: nowrap;
}

ul#bottom-menu a {
	font-weight: 400;
	margin: 0 0.625rem;
	color: #6d6e71;
}

ul#bottom-menu .children {
	display: none;
	visibility: hidden;
}

#social {
	font-size: 1.375em;
	line-height: 2.313rem;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: justify;
	margin: 0 10px;
}

#social span {
	display: inline-flex;
	border-radius: 50%;
	border: 2px solid #ffb602;
	margin: 0 10px;
}

#social span:hover, #social span:focus, #social span:active {
	border-color: #dc2c27;
}

#social span:hover a, #social span:focus a, #social span:active a {
	background: #dc2c27;
	color: #fff !important;
}

#social a {
	display: block;
	background: #ffb602;
	width: 44px;
	height: 44px;
	color: #fff;
	border-radius: 50%;
	border: 3px solid #fff;
}

.full-width.legacy {
	background: url("../images/legacy-bg.jpg") no-repeat center center;
	background-size: cover;
	border-top: 3px solid #ffb602;
	border-bottom: 3px solid #ffb602;
	margin-top: 70px;
	margin-bottom: 70px;
}

.full-width.legacy #legacy {
	width: 100%;
	max-width: 1226px;
	min-height: 512px;
	padding: 90px 36px 0;
	text-align: center;
}

.full-width.legacy #legacy::before {
	display: block;
	content: "";
	background: url("../images/divider-triangles.png") no-repeat center center;
	width: 100%;
	max-width: 1226px;
	height: 42px;
	margin: -132px -36px 90px;
}

.full-width.legacy #legacy img.alignnone {
	margin: 0 68px 80px;
}

.full-width.legacy #legacy h1.big-num, .full-width.legacy #legacy h2.big-num {
	display: inline-block;
	font-size: 9.125rem;
	line-height: 1em;
	margin-bottom: 0.863em;
	opacity: 0.4;
}

#newsletter-before {
	width: 100%;
	height: 42px;
	background: url("../images/divider-triangles.png") no-repeat center bottom;
	border-bottom: 1px solid #EAE9E9;
	margin: 70px auto 4px;
}

#newsletter-wrap {
	width: 100vw;
	left: 50%;
	margin: 0 -50vw 60px;
	position: relative;
	background: url("../images/newsletter-bg.jpg") no-repeat center center;
	background-size: cover;
}

#newsletter {
	width: 90%;
	max-width: 1130px;
	margin: 0 auto;
	padding: 36px 0;
}

#newsletter #newsletter-image {
	float: left;
	width: 144px;
	height: 182px;
	margin: 0 56px 0 0;
	background: url("../images/newsletter-fire.png") no-repeat left bottom;
}

#newsletter h3 {
	font: 400 1.5rem/1.875rem 'Oswald', sans-serif;
	color: #414042;
	letter-spacing: 0.05rem;
	text-transform: uppercase;
	margin-bottom: 1.25rem;
}

#newsletter h3 strong {
	font-weight: inherit;
	color: #dc2c27;
}

#newsletter p {
	line-height: 1.5rem;
	color: #414042;
	margin-bottom: 1.625rem;
}

#newsletter form p, #newsletter form div {
	display: inline;
}

#newsletter input {
	max-width: 30%;
	margin-right: 12px;
	border: 0 none;
}

/* Index */

#index-wrapper {
	min-height: 300px;
	background: #fff;
}

#index {
	max-width: 1140px;
}

#numbers {
	display: flex;
	max-width: 912px;
	margin: 60px auto;
	flex-wrap: wrap;
}

#numbers .numbers {
	width: 50%;
	text-align: center;
	padding: 2.875rem;
}

#numbers #green {
	border-right: 1px solid #d6d8d9;
	border-bottom: 1px solid #d6d8d9;
}

#numbers #blue {
	border-right: 1px solid #d6d8d9;
}

#numbers #red {
	border-bottom: 1px solid #d6d8d9;
}

#numbers h2 {
	margin-bottom: 0.625rem;
	flex-grow: 2;
	text-transform: uppercase;
}

#numbers h2.green {
	color: #5d8f71;
}

#numbers h2.red {
	color: #dc2c27;
}

#numbers h2.blue {
	color: #1e83ad;
}

#numbers h5 {
	color: #6d6e71;
	margin-bottom: 0;
}

.page-home h1 {
	text-transform: none;
}

.page-home .one-third img {
	margin-bottom: 40px;
}

.page-home .full-width.promise {
	background: none;
	filter: none;
	margin-top: 0;
	padding: 0 0 30px;
}

.page-home #numbers {
	margin-top: 0;
}

#stories {
	font: 400 0.938rem/1.625rem 'Lato', sans-serif !important;
	color: #414042;
	height: auto;
	margin: 80px auto 140px;
}

#stories .story {
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 980px;
	margin: 40px auto;
}

#stories .story img {
	float: left;
	border-radius: 50%;
	padding: 8px;
	border: 1px solid #ffb602;
	box-sizing: border-box;
	max-width: 256px;
	height: auto;
	margin-right: 44px;
}

#stories .story h2 {
	line-height: 2rem;
	margin-bottom: 2rem;
}

#stories .story h6 {
	font: 700 1.063rem/2rem 'Lato', sans-serif;
	font-style: italic;
	color: #414042;
	margin-top: 1.375rem;
}

.arrow-gold {
	display: table;
	margin: 0 auto;
	padding: 5px 0 5px 134px;
	background: url("../images/arrow-gold.png") no-repeat left center;
}

/* Blog stopped here on mobile */

#single .row {
	width: 70%;
}

#blog-header {
	background: url("../images/blog-header-bg.jpg") repeat-x center top #FDEFDE;
	padding: 76px 0 12px;
	margin: -80px auto 12px;
}

#blog-header h1 {
	margin-bottom: 36px;
}

#blog-header ul {
	list-style: none;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0;
	font: 400 0.875rem/2.375rem 'Oswald', sans-serif;
	color: #6d6e71;
	letter-spacing: 0.1rem;
	text-align: center;
	text-transform: uppercase;
}

#blog-header ul li {
	display: inline-block;
	padding: 0 .5rem;
	margin: 0;
	vertical-align: top;
	white-space: nowrap;
}

#blog-header ul li a {
	font-weight: 400;
}

#blog-header ul li.current-cat {
	background: url("../images/divider-short.png") no-repeat center bottom;
}

#blog-header ul li.current-cat a {
	color: #414042 !important;
}

#blog-header form {
	display: inline-block;
	width: 190px;
	background: #fff;
	border-radius: 12px;
	margin: 0;
	padding: 0;
}

#blog-header form input {
	max-width: 80%;
	float: left;
	border: 0 none;
	font-family: 'Oswald', sans-serif;
	color: #6d6e71;
	letter-spacing: 0.1rem;
	margin: 0;
}

#blog-header form button {
	float: right;
	background: transparent;
	color: #025072;
	padding: 0;
	margin: 0;
}

#blog-header-after {
	width: 100%;
	height: 6px;
	max-width: 1022px;
	margin: 0 auto 60px;
	background: url("../images/header-dash.png") repeat-x center center;
}

.blog #newsletter-before, .single #newsletter-before, .archive #newsletter-before, .search #newsletter-before {
	margin-top: 0;
}

.single #newsletter-wrap, .archive #newsletter-wrap, .search #newsletter-wrap {
	margin-bottom: 50px;
}

.single footer#footer, .archive footer#footer, .search footer#footer {
	margin-top: -52px;
}

.post {
	width: 100%;
	margin: 0 auto 100px;
}

h1.post-title {
	display: table;
	margin: 0 auto 3rem;
	font: 700 2rem/2.375rem 'Lato', sans-serif;
	text-transform: none;
	margin-bottom: 3rem;
	color: #dc2c27;
	background: url("../images/arrow-gold.png") no-repeat left center, url("../images/arrow-gold-right.png") no-repeat right center;
	background-size: 58px;
	padding: 0 70px;
}

.post-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-weight: 700;
	font-size: 0.875rem;
	line-height: 1.375rem;
	color: #58595b;
	padding: 0 2.5%;
	position: relative;
	z-index: 10;
}

.post-meta a {
	color: #58595b;
}

.post-meta div {
	max-width: 210px;
}

.post-meta.top {
	margin-bottom: -1rem;
}

.post-meta .bottom {
	margin-top: -1rem;
	margin-bottom: 1rem;
	text-align: right;
}

.post-category {
	text-align: right;
}

.post-content {
	margin: 60px auto;
}

.post-content .wp-caption {
	max-width: 100%;
}

.post-content figure, .post-content img {
	margin: 0 auto 0.625rem;
	max-width: 100%;
	height: auto;
}

.post-content figcaption, .post-content p.wp-caption-text {
	font: 400 1rem/1.25rem 'Oswald', sans-serif;
	color: #025072;
	letter-spacing: 1px;
	text-transform: uppercase;
	margin-bottom: 20px;
}

.post-content img.alignright {
	margin-left: 0.625rem;
}

.post-content img.alignleft {
	margin-right: 0.625rem;
}

.post-content blockquote {
	padding: 78px 4rem 0;
}

.post-share {
	background: url("../images/divider-yellow.png") repeat-x center center;
	text-align: center;
	position: relative;
	width: 100vw;
	left: 50%;
	margin: 0 -50vw;
}

.navigation a, .navigation span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #dc2c27;
	border: 3px solid #dc2c27;
	border-radius: 24px;
	font: 400 .75rem/1rem 'Oswald', sans-serif;
	color: #fff;
	letter-spacing: 0.1rem;
	text-transform: uppercase;
	margin: 0 .5rem 1rem;
	padding: 0.5rem .75rem;
	min-width: 38px;
}

.navigation {
	width: 100%;
	margin: 80px auto 150px;
	text-align: center;
}

.navigation h2 {
	display: none;
	visibility: hidden;
}

.navigation a.next, .navigation a.prev {
	padding: 0.5rem 1rem;
}

.navigation a:hover, .navigation a:focus, .navigation a:active {
	background: #ffb602;
	border-color: #ffb602;
	color: #fff !important;
}

.navigation span.current {
	background: #ffb602;
	border-color: #ffb602;
	color: #fff !important;
}

.post-mini {
	width: 33%;
	display: inline-block;
	margin: 0 auto 100px;
	padding: 0 2%;
	text-align: left;
	vertical-align: top;
}

.post-mini .post-date {
	background: url("../images/divider-yellow.png") repeat-x center bottom;
	font: 400 1rem/1rem 'Oswald', sans-serif;
	color: #6d6e71;
	letter-spacing: 0.1rem;
	text-transform: uppercase;
	text-align: center;
	padding-bottom: 1rem;
	margin-bottom: 1rem;
}

.post-mini .post-date a {
	color: #6d6e71;
	font-weight: 400;
}

.post-title-mini {
	font-size: 1.375rem;
	line-height: 2rem;
	background: url("../images/divider-short.png") no-repeat center bottom;
	margin-bottom: 1rem;
	padding: 0 0 .5rem;
	text-align: center;
	text-transform: none;
}

.post-meta.mini {
	margin-bottom: 1rem;
	padding: 0;
	font-size: .75rem;
}

.post-excerpt {
	margin-bottom: 2rem;
}

.post-excerpt a.read-more {
	display: inline-block;
	white-space: nowrap;
}

.post-excerpt img {
	display: block;
	margin: 0 auto 1.25rem;
}

.post-share.mini {
	width: 100%;
	left: 0;
	margin: 0 auto;
}

/* Comments */

#comments {
	margin-top: 80px;
}

#comments ol, #comments ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

#comments ol.comment-list, #comments ul.comment-list {
	margin-top: 0;
}

#comments ol.comment-list li, #comments ul.comment-list li {
	margin-bottom: 0;
	padding: 30px;
	border-bottom: 1px solid #d6d8d9;
}

#comments ol.comment-list .comment-meta, #comments ol.comment-list .commentmetadata, #comments ul.comment-list .comment-meta, #comments ul.comment-list .commentmetadata {
	font-size: 0.75rem;
	margin-bottom: 20px;
}

#comments ol.comment-list .comment-meta a, #comments ol.comment-list .commentmetadata a, #comments ul.comment-list .comment-meta a, #comments ul.comment-list .commentmetadata a {
	color: #414042;
}

#comments ol.comment-list img.avatar, #comments ul.comment-list img.avatar {
	float: left;
	margin: 0 20px 0 0;
	border-radius: 50%;
}

#comments ol.comment-list .comment-author, #comments ul.comment-list .comment-author {
	display: inline;
	font: 400 1.25rem/1.5rem 'Oswald', sans-serif;
	color: #025072;
	letter-spacing: 0.1rem;
	text-transform: uppercase;
}

#comments ol.comment-list .comment-author cite, #comments ul.comment-list .comment-author cite {
	font-style: normal !important;
}

#comments ol.comment-list span.says, #comments ul.comment-list span.says {
	display: none;
	color: #000;
}

#comments ol.comment-list .comment-body p, #comments ul.comment-list .comment-body p {
	clear: both;
}

#comments ol.comment-list .comment-edit-link, #comments ul.comment-list .comment-edit-link {
	display: none;
	visibility: hidden;
}

#comments ol.comment-list ol.children, #comments ul.comment-list ol.children {
	margin-top: 30px;
	border-top: 1px solid #d6d8d9;
}

#comments ol.comment-list .reply a, #comments ul.comment-list .reply a {
	font: 700 0.75rem/1rem 'lato', sans-serif;
	color: #414042;
	letter-spacing: 0.1rem;
	text-transform: uppercase;
}

#commentform {
	margin: 0 auto;
}

#commentform p {
	margin-bottom: 0;
}

#commentform textarea {
	max-height: 200px;
}

/* Pages */

#page img.alignleft {
	margin: 0 50px 20px 0;
}

#page img.alignright {
	margin: 0 0 20px 50px;
}

#page .video-container {
	margin-bottom: 2.5rem;
}

#page .nf-before-form-content {
	display: none;
}

#page .nf-form-cont {
	max-width: 700px;
	margin: 0 auto;
}

#page .nf-form-cont {
	font-size: 0.875rem;
}

#page .nf-error .ninja-forms-field, #page .nf-error-msg, #page .ninja-forms-req-symbol {
	color: #dc2c27;
}

#page .addthis_toolbox {
	border: 0 none;
	background: transparent;
	color: #dc2c27;
	padding: 0;
	font: 700 1rem/1.875rem 'Lato', sans-serif;
	color: #dc2c27;
	letter-spacing: normal;
	text-transform: none;
}

#page .addthis_toolbox a {
	color: #dc2c27;
	padding: 0 0 0 15px;
}

#page .addthis_toolbox span {
	display: none;
}

#page .addthis_toolbox::before {
	content: "Share the Love";
}

.horizontal blockquote {
	min-height: 155px;
	background: url("../images/blockquote-horz.png") no-repeat left top;
	padding: 0 0 0 78px;
	text-align: left;
}

.horizontal .divider, .horizontal hr {
	display: none;
	visibility: hidden;
}

.our-team {
	margin-bottom: 3.125em;
}

.our-team img {
	max-width: 312px;
	padding: 5px;
	border-radius: 50%;
	border: 2px solid #ffb602;
}

.our-team img.alignleft {
	margin: 0 2.5rem 2.5rem 0;
}

.our-team img.alignright {
	margin: 0 0 2.5rem 2.5rem;
}

.our-team .divider, .our-team hr {
	clear: both;
	visibility: hidden;
	margin: 1.563em auto;
}

.error404 #page form#search {
	max-width: 75%;
	margin-top: 1.5rem;
}
