/*
	This CSS resource incorporates links to font software which is the valuable copyrighted property of Monotype and/or its suppliers. You may not attempt to copy, install, redistribute, convert, modify or reverse engineer this font software. Please contact Monotype with any questions regarding Web Fonts:  http://www.fonts.com
*/
@font-face{
	font-family: "Proxima Nova W01 Regular";
	src: url("/assets/fonts/5596735/b38b8bd9-d96f-4bf9-add1-adbd2b08b802.woff2") format("woff2"), url("/assets/fonts/5596735/52ed7b2d-8a31-4b18-a1d5-8685608b0889.woff") format("woff");
}
@font-face{
	font-family: "Proxima Nova W01 Bold";
	src: url("/assets/fonts/5596920/cc85d073-4dcf-4ecd-9804-40c34e631e2b.woff2") format("woff2"), url("/assets/fonts/5596920/332136cf-33d0-43fb-97ee-49c7742489ff.woff") format("woff");
}
@font-face{
	font-family: "Proxima Nova W01 Extrabold";
	src: url("/assets/fonts/5596977/c8e0146f-ebf2-4e86-bd3d-047c9a5e5dac.woff2") format("woff2"), url("/assets/fonts/5596977/e7972ec4-f161-406c-be4c-f32e884989e7.woff") format("woff");
}
@font-face{
	font-family: "Proxima Nova W01 Medium";
	src: url("/assets/fonts/5597946/5622d11c-c6b8-476c-9d17-995348bd8400.woff2") format("woff2"), url("/assets/fonts/5597946/d8a5d085-4356-4bc9-b496-51439ecdcd04.woff") format("woff");
}
@font-face{
	font-family: "Proxima Nova W01 Extrabold It";
	src: url("/assets/fonts/5598057/d0574cac-53b4-42f6-86e9-79397dcfd06c.woff2") format("woff2"), url("/assets/fonts/5598057/8d580797-2cbe-44dd-a0db-89355b92dc10.woff") format("woff");
}
@font-face{
	font-family: "Proxima Nova W01 Semibold";
	src: url("/assets/fonts/5738932/c7dcb253-8dca-459b-aaa9-afef9131ef22.woff2") format("woff2"), url("/assets/fonts/5738932/390be235-bf11-42ee-8ba1-2dd10ca6a4ac.woff") format("woff");
}

a,
abbr,
acronym,
address,
applet,
article,
aside,
audio,
b,
big, /* deprecated, but we'll support it anyway */
blockquote,
body,
canvas,
caption,
center, /* deprecated, but we'll support it anyway */
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
p,
pre,
q,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video { /* nearly all elements - not in this list: button, hr, input, select, textarea */
	margin: 0; /* specifically useful for: addresses margins in body and form handled incorrectly in IE6/7; addresses margin for figure not present in IE6/7/8/9, S5, O11; normalizing fieldsets; addresses margins for button/input/select/textarea set differently in IE6/7, F3/4, S5, Chrome */
	padding: 0; /* specifically useful for: addresses excess padding in IE8/9 */
	border: 0; /* specifically useful for: img's inside a's; corrects color for legends not being inherited in IE6/7/8/9 */
	outline: 0; /* specifically useful for: a's [improves appearance when active or hovered in all browsers (people.opera.com/patrickl/experiments/keyboard/test)] */
	font: inherit; /* specifically useful for: td's that don't inherit like you think they should... */
	vertical-align: baseline; /* Improves appearance and consistency in all browsers - can we elaborate on this? */
}
body,
button,
input,
select,
textarea {
	font-family: inherit; /* addresses font-family inconsistency between 'textarea' and other form elements */
}
body,
form,
input,
button,
select, 
textarea {
	font-size: 100%; /* addresses text resizing limitations in IE6/7 - improves text sizing inconsistency in all browsers - known issue: text sizing unnecessary for 'form'? if this is the case, why not just move this to a declaration that's only on body/input/button/select/textarea? */
	margin: 0; /* improves margins set oddly in IE6/7 FF3/4 S5 C10 */
}
html {
	cursor: default; /* improves visual focus of mouse in all browsers */
	font-size: 100%; /* corrects text resizing oddly when font size is set using ems in IE6/7 (http://clagnut.com/blog/348/#c790) */
	overflow-y: scroll; /* corrects page centering in all browsers regardless of content height */
	-ms-overflow-style: scrollbar;
	-webkit-overflow-scrolling: touch;
	-webkit-tap-highlight-color: transparent; /* improves visual appearance of containers during a delegated click in mSaf (www.yuiblog.com/blog/2010/10/01/quick-tip-customizing-the-mobile-safari-tap-highlight-color/) */
	-webkit-text-size-adjust: 100%; /* corrects text resizing oddly after orientation change in all handhelds (www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/) */
	-ms-text-size-adjust: 100%; /* corrects text resizing oddly after orientation change in all handhelds (www.456bereastreet.com/archive/201012/controlling_text_size_in_safari_for_ios_without_disabling_user_zoom/) */
	font-size: 10px; /* such that 1rem = 10px */
	background-color: #505050;
}
body {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.4375;
	letter-spacing: normal;
	color: #333333; /* TO-DO: SET THIS TO SOMETHING HOT AND SEE WHAT DOESN'T CHANGE */
	text-rendering: optimizeLegibility;
	font-family: "Proxima Nova W01 Regular", "Proxima Nova", "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: normal;
}
#body {
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0;
}
article,
aside,
audio,
blockquote,
center,
details,
div,
dl,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
iframe,
menu,
meter,
nav,
ol,
p,
pre,
progress,
section,
svg,
table,
ul,
video {
	margin-bottom: 20px;
	margin-bottom: 2rem;
}
blockquote,
center,
dl,
figure,
ol,
ul {
	margin-left: 29px;
	margin-left: 2.9rem;
}
dd {
	margin-left: 29px;
	margin-left: 2.9rem;
}
@media screen and (min-width: 1024px) {
	blockquote,
	center,
	dl,
	figure,
	ol,
	ul {
		margin-left: 55px;
		margin-left: 5.5rem;
	}
	dd {
		margin-left: 55px;
		margin-left: 5.5rem;
	}
}
dd + dd,
dd + dt,
ol ol,
ul ul {
	margin-top: 4px;
	margin-top: 0.4rem;
}
dt,
li {
	margin-bottom: 4px;
	margin-bottom: 0.4rem;
}
figcaption {
	margin-top: 20px;
	margin-top: 2rem;
}
td,
th {
	padding-left: 20px;
	padding-left: 2rem;
	padding-right: 20px;
	padding-right: 2rem;
	padding-top: 4px;
	padding-top: 0.4rem;
	padding-bottom: 4px;
	padding-bottom: 0.4rem;
	text-align: left;
}
a {
	-moz-transition: color 0.16s linear;
	-webkit-transition: color 0.16s linear;
	-o-transition: color 0.16s linear;
	transition: color 0.16s linear;
	text-decoration: underline;
}
a:link {
	color: #233E90;
}
a:visited {
	color: purple;
	color: #233E90;
	text-decoration-color: purple;
}
a:hover {
	outline: 0; /* improves appearance when active or hovered in all browsers (people.opera.com/patrickl/experiments/keyboard/test) */
	color: #002D72;
	text-decoration-color: #0077C8;
}
a:active {
	outline: 0; /* improves appearance when active or hovered in all browsers (people.opera.com/patrickl/experiments/keyboard/test) */
}
a:focus {
	outline: 1px dotted; /* addresses outline set oddly in Chrome - perhaps this should be on a blanket :focus pseudo-class instead? that's how meyer's does it */
	outline: 0.1rem dotted;
	/* TO-DO: set the color? */
	border-color: black;
}
abbr[title],
acronym[title] {
	border-bottom: 1px dotted; /* corrects styling not present in IE7/8/9 S5 C10 */
	border-bottom: 0.1rem dotted;
	cursor: help; /* alerts the user to that their rollover has triggered the title attribute's appearance */
	border-color: #808080; /* neutral color treatment so as to not be distracting */
}
abbr {
	
}
acronym {
	
}
address {
	
}
applet {
	
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block; /* corrects block display not defined in IE6/7/8/9 & FF3 */
}
article {
	
}
aside {
	
}
audio {
	display: none; /* corrects display not defined in IE6/7/8/9 & FF3 ...is the original note that spanned a number of declarations - let's elaborate/specify */
	*zoom: 1; /* corrects display not defined in IE6/7/8/9 & FF3 ...is the original note that spanned a number of declarations - this is of course a hack - let's elaborate/specify */
	/* perhaps to do something here to account for the floating time bubble that shows up in FF outside the box? */
}
audio[controls],
canvas,
video {
	display: inline-block; /* corrects display not defined in IE6/7/8/9 & FF3 ...is the original note that spanned a number of declarations - let's elaborate/specify */
	*display: inline; /* corrects display not defined in IE6/7/8/9 & FF3 ...is the original note that spanned a number of declarations - let's elaborate/specify */
	*zoom: 1; /* does this go with the above? */
	display: block; /* ...hmmm, maybe this stuff above is wrong? ...because this line right here that conflicts with those seems to have normalized display - if we want an inline kind of behavior, let's just float it - want it centered? use margin-left/right of auto */
}
audio:not([controls]) {
	display: none; /* prevents modern browsers from displaying 'audio' without controls - does this expression for the element really work? ...and is it really necessary with the previous statements? */
}
b,
strong {
	font-weight: bold; /* corrects style set incorrectly as 'bolder' in FF3/4 S4/5 C10 */
}
b {
	
}
big { /* deprecated, but we'll support it anyway */
	font-size: 1.38em;
	line-height: 0; /* like sub/sup, keep element from interfering with surrounding line height */
}
blockquote::before,
blockquote::after,
q::before,
q::after {
	content: ""; /* addresses quote property not supported in S4 - should this be applied only to q and not blockquote? if this is Safari only why two declarations? ...not to mention I'm pretty sure it's not supported in more than just Safari */
	content: none; /* addresses quote property not supported in S4 - should this be applied only to q and not blockquote? if this is Safari only why two declarations? ...not to mention I'm pretty sure it's not supported in more than just Safari */
}
blockquote,
q {
	quotes: "" "" "" ""; /* is this the right syntax? */
	quotes: none; /* addresses CSS quotes not supported in IE6/7 - should this be applied only to q and not blockquote? */
	font-style: italic;
}
blockquote {
	/* font-family: serif; */ /* gives it that quote-y feel - not applied to q because that's usually/sometimes inline */
	font-family: inherit;
}
button,
input {
	line-height: normal; /* corrects FF3/4 setting it using !important in the UA stylesheet */
	*overflow: visible; /* corrects inner spacing displayed oddly in IE6/7 */
}
button,
input[type="button"], 
input[type="reset"], 
input[type="submit"] {
	cursor: pointer; /* improves usability and consistency of cursor style between image-type 'input' and others */
	-webkit-appearance: button; /* corrects inability to style clickable 'input' types in iOS */
	/* in the interests of making these look as much like the file type input, which pretty much cannot be styled... */
		padding-left: 10px;
		padding-left: 1rem;
		padding-right: 10px;
		padding-right: 1rem;
		/* IE7/8 still gives a tiny extra padding so give a little less */
		padding-left: 8px\9;
		padding-right: 8px\9;
		/* known issue: Safari gives still more padding, but can't target it without targeting Chrome, right? It's clearly not perfect, but it *IS* a step in the right direction, no? */
		/* ...alright, on to top and bottom, again with the idea being to make it look like the file type input */
		padding-top: 2px;
		padding-top: 0.2rem;
		padding-bottom: 1px;
		padding-bottom: 0.1rem;
	/* again, Safari alone seems to be giving a little too much padding */
}
button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0; /* corrects appearance displayed oddly in FF3/4 (www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/) */
	padding: 0; /* corrects appearance displayed oddly in FF3/4 (www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/) */
}
button,
input,
select,
textarea {
	color: black; /* necessary? why? i.e. needs an explanation */
	margin: 0;
	/* -webkit-appearance: none; this removes the drop-down indicator from a select for Chrome and Safari - suggestion was "improves appearance in all browsers"; how so? */
	border-radius: 0; /* implication in http://normalize-css.googlecode.com/svn/trunk/normalize.css is "improves appearance in all browsers" - let's get more specific; what does this do? why no -moz and/or -webkit counterpart? */
	vertical-align: baseline; /* implication in http://normalize-css.googlecode.com/svn/trunk/normalize.css is "improves appearance in all browsers" - let's get more specific; what does this do? */
	*vertical-align: middle; /* implication in http://normalize-css.googlecode.com/svn/trunk/normalize.css is "improves appearance in all browsers" - let's get more specific; what does this do? clearly here this is targeting IE7 and below */
	font: inherit;
}
button {
	
}
@media all and (-webkit-min-device-pixel-ratio:10000), not all and (-webkit-min-device-pixel-ratio:0) {
	/* ...so dumb, but target Opera only to move button's 1px south so they'll align with submit/reset/etc. - at certain zoom levels the button's get just slightly taller, but this is as close as we can get within reason */
	button {
		position: relative;
		top: 1px;
	}
}
caption {
	
}
canvas {
	
}
caption {
	
}
center { /* deprecated, but we'll support it anyway */
	text-align: center; /* is this necessary? */
}
cite {
	font-style: italic;
}
code,
kbd,
pre,
samp {
	font-family: monospace; /* corrects font family displayed oddly in IE6 S5 C10 (en.wikipedia.org/wiki/User:Davidgothberg/Test59) */
	font-size: 1em; /* corrects font family displayed oddly in IE6 S5 C10 (en.wikipedia.org/wiki/User:Davidgothberg/Test59) */
}
code,
kbd {
	line-height: 0; /* corrects inconsistent line height when these are used as inline tags, i.e. this rule presumes code and kbd are inline ...and by inference, samp and pre are not */
}
code {
	
}
command {
	/* italic to convey "let's go"? */
}
dd {
	
}
del {
	text-decoration: line-through; /* is this actually necessary or do all browsers already do this? at least meyer's suggests this is necessary */
}
details {
	
}
dfn {
	font-style: italic; /* corrects styling not present in S5 C10 */
}
div {
	
}
dl {
	
}
dt {
	font-weight: bold; /* look at a dictionary - terms are almost always bold */
}
em {
	font-style: italic;
}
fieldset {
	line-height: 2; /* this I feel may be a real piece of brilliance - trying to put the right spacing between legend's and fieldset's was proving to be a real nightmare, as was the way a "normal" line height interacted with the adjacent form elements; set a nice tall line-height like this and both issues are solved in one line */
}
figcaption {
	/* text treatment? */
}
figure {
	padding: 24px;
	padding: 2.4rem;
	border: 1px solid #808080;
	border: 0.1rem solid #808080;
	text-align: center;
}
footer {
	padding: 28px;
	padding: 2.8rem;
	padding-top: 58px;
	padding-top: 5.8rem;
	padding-bottom: 58px;
	padding-bottom: 5.8rem;
	color: white;
	font-size: 15px;
	font-size: 1.5rem;
	background-color: #505050;
	margin: 0;
	line-height: 1.7333333333333333333333333333333;
}
footer a:link,
footer a:visited,
footer a:hover,
footer a:active {
	color: white;
	text-decoration-color: white;
}
form {
	
}
h1,
h2,
h3,
h4,
h5,
h6 {
	/* font-weight: bold; */
	font-family: "Proxima Nova W01 Bold";
	font-weight: normal;
}
h1 {
	font-size: 32px;
	font-size: 3.2rem;
	color: #212121;
	/* font-weight: 800; */
	font-family: "Proxima Nova W01 Extrabold";
	font-weight: normal;
	line-height: 1.125;
	letter-spacing: 0.0059375em;
}
h1 em {
	font-family: "Proxima Nova W01 Extrabold It";
	font-style: normal;
}
h2 {
	font-size: 25px;
	font-size: 2.5rem;
	color: #212121;
	line-height: 1.2;
}
h3 {
	font-size: 21px;
	font-size: 2.1rem;
	color: #002D72;
}
h4 {
	font-size: 20px;
	font-size: 2.0rem;
}
h5 {
	font-size: 1em;
	color: #002D72;
	text-transform: uppercase;
}
h6 {
	font-size: 1em;
	text-transform: uppercase;
}
header {
	background-color: #233E90;
	margin-bottom: 0;
	padding-left: 26px;
	padding-left: 2.6rem;
	padding-right: 26px;
	padding-right: 2.6rem;
	padding-top: 31px;
	padding-top: 3.1rem;
	padding-bottom: 31px;
	padding-bottom: 3.1rem;
}
header a:link,
header a:visited,
header a:hover,
header a:active {
	color: white;
}
header > hgroup {
	margin-bottom: 0;
}
hgroup {
	
}
hgroup h1,
hgroup h2,
hgroup h3,
hgroup h4,
hgroup h5,
hgroup h6 {
	margin-bottom: 0; /* headings in a heading group are stacked with purpose, so no excessive visual separation */
}
hr {
	/* suggested in html5boilerplate.com's distribution that display: block; is necessary, but not quantified - should we enable this? */
	overflow: hidden; /* makes sure that with what will presumably be a fixed height it doesn't get any taller than that */
	border: 0; /* for whatever reason hr didn't get blanket reset elsewhere here, so... */
	margin: 0; /* for whatever reason hr didn't get blanket reset elsewhere here, so... */
	padding: 0; /* for whatever reason hr didn't get blanket reset elsewhere here, so... */
	margin-bottom: 20px;
	margin-bottom: 2rem; /* not part of the grouped spacing because the above settings would override it - let's get this sorted out */
	height: 1px;
	height: 0.1rem;
	color: #808080; /* must set both of these to get the same color across browsers - let's clarify which does which */
	background-color: #808080; /* must set both of these to get the same color across browsers - let's clarify which does which */
}
i {
	font-style: italic; /* is this actually necessary */
}
iframe {
	display: block; /* this has a profound effect, eliminating inconsistencies between browsers that for all but IE7 create space(s) around the iframe that even removing the line-height (though it had some effect) failed to resolve */
}
img {
	vertical-align: bottom; /* fixes the problem with extra space inside anchors around images in all but IE7, where the border is still visible */
	/* TO-DO: FIX THE ABOVE MENTIONED PROBLEM WITH IE7 - THE JQUERY SCRIPT COMMENTED OUT CURRENTLY COULD FIX IT, BUT LET'S TRY TO USE CSS */
	-ms-interpolation-mode: bicubic; /* improves visual appearance when scaled in IE7 (code.flickr.com/blog/2008/11/12/on-ui-quality-the-little-things-client-side-image-resizing/) */
	width: 100%;
	max-width: 100%;
	height: auto;
}
input,
select,
textarea {
	font: inherit;
	*font-size: 100%; /* WHAT'S THIS FOR? */
}
input:valid,
textarea:valid {
	/* you can set a background color here, but it's going to appear an any not-invalid input, not necessarily valid, so for instance a textarea's going to fill with that color, so...*/
}
input:invalid,
textarea:invalid {
	/* background-color: lightCoral; */
}
input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box; /* addresses box sizing forced to border-box in IE6/7 */
}
input[type="image"] {
	vertical-align: top; /* much like with a textarea, this allows the label to show up at the top next to the input */
	cursor: crosshair; /* indicates the normal behavior of this control, which is to submit coordinates */
	/* note: this doesn't look right if you're expecting an image type to behave like a submit and it shouldn't; that's not what it's for so that's not semantically correct */
}
input[type="search"] {
	-webkit-appearance: textfield; /* addresses appearance set to searchfield in S5, Chrome */
	-moz-box-sizing: content-box; /* addresses sizing set oddly to searchfield in S5 iOS C10 - known issue: -moz included to future-proof */
	-webkit-box-sizing: content-box; /* addresses box sizing set to border-box in S5, Chrome */
	box-sizing: content-box; /* addresses sizing set oddly to searchfield in S5 iOS C10 */
}
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none; /* addresses inner padding displayed oddly in S5 C10 on OSX */
}
input {
	
}
ins {
	text-decoration: none; /* html5boilerplate.com and meyer's suggested this was necessary - can we confirm why? At least some browsers will underline, so what, we're preventing/normalizing? The ideal treatment for ins (IMHO) is to push it up to the superscript's baseline and put a karat before it, but before/after doesn't work for IE7 and we're still supporting it, so... */
	line-height: 0; /* keeps what follows from messing with the line height of surrounding content */
	position: relative; /* sets up for the following... */
	bottom: 0.333em; /* places it above the baseline */
}
kbd {
	
}
label {
	display: inline-block;
	/* ideally we would set a width here, but that would cascade into labels (like for instance one you'd have on a radio button) that wouldn't want this treatment, so it'll have to be a site-specific thing for now */
}
label[for] {
	cursor: pointer; /* indicates to the user they can click on it and something will happen */
}
legend {
	display: block; /* can this be removed with the below width declaration? maybe it's redundant already? */
	width: 100%; /* the last coffin nail in the default treatment of forms with regards to fieldsets and legends */
	color: black; /* can't remember which browser it is, but one of them doesn't provide for these to end up the right color... */
	*margin-left: -7px; /* corrects alignment displayed oddly in IE6/7 */
	*margin-right: -7px; /* counters where it then juts right based on that correction */
}
li {
	
}
mark {
	background-color: yellow; /* corrects styling not present in IE6/7/8/9 */
	color: black; /* corrects styling not present in IE6/7/8/9 */
}
menu {
	
}
meter {
	display: block;
}
nav {
	margin-bottom: 0;
	/* font-weight: 600; */
	font-family: "Proxima Nova W01 Semibold";
	font-weight: normal;
}
nav ul {
	list-style: none; /* no bullets */
	margin: 0; /* no margins around the list, except the following to indent */
}
nav ul li {
	margin: 0; /* no margins around the list items */
	display: block; /* blows the line items up to the height of the nav - still necessary? should be inline-block? */
	float: left; /* runs the list items from left to right */
	line-height: inherit; /* ???? */
}
nav ul li a,
nav ul li span {
	display: block;
	padding-left: 20px;
	padding-left: 2rem;
	padding-right: 20px;
	padding-right: 2rem;
}
nav ul li a:link,
nav ul li a:visited,
nav ul li a:hover,
nav ul li a:active {
	border: none; /* removes the standard underline treatment for links */
}
nav ul li a:link {
	
}
nav ul li a:visited {
	
}
nav ul li a:hover {
	
}
nav ul li a:active {
	
}
nav ul li a.current:link {
	
}
nav ul li a.current:visited {
	
}
nav ul li a.current:hover {
	
}
nav ul li a.current:active {
	
}
noscript {
	
}
object {
	
}
ol,
ul {
	list-style-position: outside;
}
ol {
	list-style-type: decimal;
}
ol ol {
	margin-bottom: 0;
	margin-right: 0;
}
option {
	font-size: inherit; /* fixes where this doesn't happen like you'd expect it to for at least IE8, which can actually truncate the options as a result */
}
p {
	
}
picture {
	display: block;
}
pre {
	white-space: pre; /* improves readability of pre-formatted text in all browsers */
	white-space: pre-wrap; /* improves readability of pre-formatted text in all browsers */
	word-wrap: break-word; /* improves readability of pre-formatted text in all browsers */
}
progress {
	display: block;
}
q {
	
}
s {
	
}
samp {
	
}
section {
	
}
select {
	line-height: 2;
	padding-bottom: 6px;
	padding-bottom: 0.6rem;
	padding-top: 6px;
	padding-top: 0.6rem;
}
small {
	/* font-size: 0.62em; */ /* improves appearance in all browsers (gist.github.com/413930) - let's quantify this explanation further; setting it to get consistent, picking the number to be an appropriate size? note golden ratio? */
	/* picked a different sizing once employed, i.e. in the About section at the end of press release posts */
	font-size: 0.75em;
}
span {
	
}
strike {
	/* add strikethrough? what is this tag? */
}
strong {
	
}
sub,
sup {
	font-size: 0.62em; /* improves appearance in all browsers (gist.github.com/413930) - let's quantify this explanation further; setting it to get consistent, picking the number to be an appropriate size? note golden ratio? */
	line-height: 0; /* prevents line height being disturbed by these tags (credit to gist.github.com/413930?) */
	position: relative; /* sets up relative positioning that gets defined for each element respectively */
	vertical-align: baseline; /* improves appearance in all browsers (gist.github.com/413930) */ 
}
sub {
	bottom: -0.25em; /* places subscript 25% below baseline */
}
summary {
	
}
sup {
	top: -0.5em; /* places superscript 50% above baseline */
}
svg {
	display: block; /* makes display consistent across browsers */
}
svg:not(:root) { /* SVG not supported in IE7/8 or Safari or Opera, so this is sort of pointless, but... */
	overflow: hidden; /* corrects overflow displayed oddly in IE9 */
}
table {
	border-collapse: collapse; /* improves visual appearance in all browsers - can we get more specific about this? */
	border-spacing: 0; /* improves visual appearance in all browsers - can we get more specific about this? */
	width: 100%;
	font-size: 13.5px;
	font-size: 1.35rem;
}
table button,
table input {
	*overflow: auto; /* corrects overlap and whitespace issue for buttons and inputs in IE6/7 - known issue: reintroduces inner spacing */
}
tbody {
	
}
td {
	border-left: 2px solid #979797;
	border-left: 0.2rem solid #979797;
}
td:last-of-type {
	border-right: 2px solid #979797;
	border-right: 0.2rem solid #979797;
}
textarea {
	width: 30em; /* roughly 50 characters per line */
	height: 5em; /* 5 lines high @ above constant - MAKE SURE TO CHANGE WHEN THAT LINE-HEIGHT GETS SET TO SOMETHING INTELLIGENT */
	overflow: auto; /* corrects scrollbar displayed oddly in IE6/7/8/9 */
	vertical-align: top; /* improves readability and alignment in all browsers - can we get more specific about this? This means the label shows up at the top of the textarea, right? */
	/* TO-DO: SET THIS DIFFERENTLY FOR OPERA WHERE THE TEXT IS RIGHT AT THE TOP OF THE LINE */
}
tfoot {
	
}
th {
	/* font-weight: bold; */
	font-family: "Proxima Nova W01 Bold";
	font-weight: normal;
	background-color: #4A4949;
	color: white;
}
thead th {
	border-left: 2px solid #4A4949;
	border-right: 2px solid white;
	border-bottom: 2px solid white;
	vertical-align: bottom;
	/* text-align: center; */
}
thead th:last-of-type {
	border-right: 2px solid #4A4949;
	border-right: 0.2rem solid #4A4949;
}
th[scope=row] {
	background-color: inherit;
	color: inherit;
	border-left: 2px solid #979797;
	border-left: 0.2rem solid #4A4949;
}
thead {
	
}
time {
	
}
tr {
	background-color: #DBDBDB;
}
tr:nth-of-type(even) {
	background-color: transparent;
}
tr:last-of-type {
	border-bottom: 2px solid #979797;
	border-bottom: 0.2rem solid #979797;
}
tt {
	
}
u {
	text-decoration: none;
	border-bottom: 1px solid;
	border-bottom: 0.1rem solid;
}
ul {
	list-style-type: disc;
}
ul ul {
	margin-bottom: 0;
	margin-right: 0;
}
var {
	/* should this get a monospace face? */
	font-style: italic;
}
video {
	/* doesn't need the same control-dependent display as audio to get that effect? */
	background-color: #CCCCCC; /* mattes the video on a color so you can see what area is occupied by it */
}

:focus {
	/* the problem with the following is that in some browsers you'll see focus on things like the body or div's or whatever - we want focus to only be on interactive elements, so that's anchors, buttons, selects, textareas, inputs, what else? let's (i.e. TO-DO!!!) set focus to have no treatment, i.e. do a reset, then build it up for the elements that should get it */
	/* outline: thin dotted black; */
}
::-moz-selection { /* which browsers does this target? */
	background-color: slateblue; /* sets the color of the highlight */
	color: white; /* must constrast with the above color; i.e. don't set it to white if the background color is yellow */
	text-shadow: none; /* makes sure no text shadow in selection */
}
::selection { /* this must be declared separately even though it's exactly the same as the one above - which browsers is this targeting? */
	background: slateblue; /* sets the color of the highlight */
	color: white; /* must constrast with the above color; i.e. don't set it to white if the background color is yellow */
	text-shadow: none; /* makes sure no text shadow in selection */
}
[hidden] { /* any element with the boolean attribute (i.e. presence is true, does not get a value) of hidden (works like "checked" or "selected") */
	display: none; /* addresses styling for 'hidden' attribute not present in IE7/8/9, FF3, S4 - known issue: no IE6 support */
	visibility: hidden; /* hides it also from screen readers? (css-discuss.incutio.com/wiki/Screenreader_Visibility) - should this get applied to other hidings? */
}
::-webkit-input-placeholder	{ /* apparently must be declared separately from equivalents to work */
	color: #6B6B6B; /* 50% grey */
}
input:-moz-placeholder { /* apparently must be declared separately from equivalents to work */
	color: #6B6B6B; /* 50% grey */
}
input:-ms-placeholder { /* apparently must be declared separately from equivalents to work */
	color: #6B6B6B; /* 50% grey */
}
::-ms-input-placeholder	{ /* apparently must be declared separately from equivalents to work */
	color: #6B6B6B; /* 50% grey */
}
:-ms-input-placeholder { /* apparently must be declared separately from equivalents to work */
	color: #6B6B6B; /* 50% grey */
}
@media print {
	* { /* sigh, really? is this really smart to start introducing wildcard here? */
		background: transparent !important;
		color: black !important; /* black prints faster (sanbeiji.com/archives/953) */
		text-shadow: none !important;
		filter: none !important;
		-ms-filter: none !important;
	}
	a,
	a:visited {
		color: #444 !important;
		text-decoration: underline;
	}
	a[href]:after {
		content: " (" attr(href) ")";
	}
	abbr[title]:after {
		content: " (" attr(title) ")";
	}
	/* for image replacement class not being used in this sheet - .ir a:after, */
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content: ""; /* don't show links for images, or javascript/internal links */
	}
	pre,
	blockquote {
		border: 1px solid #999;
		border: 0.1rem solid #999;
		page-break-inside: avoid;
	}
	thead {
		display: table-header-group; /* css-discuss.incutio.com/wiki/Printing_Tables */
	}
	tr,
	img {
		page-break-inside: avoid;
	}
	img {
		max-width: 100% !important;
	}
	@page {
		margin: 0.5cm;
	}
	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}
	h2,
	h3 {
		page-break-after: avoid;
	}
}









/*
	UTILITY CLASSES
*/
.clearfix:before,
.clearfix:after {
	content: ""; /* contain floats (nicolasgallagher.com/micro-clearfix-hack/) */
	display: table; /* contain floats (nicolasgallagher.com/micro-clearfix-hack/) */
}
.clearfix:after {
	clear: both; /* contain floats (nicolasgallagher.com/micro-clearfix-hack/) */
}
.clearfix {
	zoom: 1; /* contain floats (nicolasgallagher.com/micro-clearfix-hack/) */
}
.embed-container {
	overflow: hidden;
	padding-top: 56.25%; /* 16:9 */
	position: relative;
}
.embed-container.four-by-three {
	padding-top: 75%;
}
.embed-container iframe {
	border: 0;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}
.error {
	color: maroon;
}
.hidden {
	display: none;
}
.warning {
	color: orangeRed;
}








/*
	SITE SPECIFIC
*/
#content a:not(.button) {
	font-family: "Proxima Nova W01 Bold";
	font-weight: normal;
}
h1 span {
	display: inline-block;
	max-width: 640px;
	max-width: 64rem;
}
@media screen and (min-width: 1024px) {
	body {
		font-size: 18px;
		font-size: 1.8rem;
		line-height: 1.4444444444444444444444444444444;
	}
	h1 {
		font-size: 39px;
		font-size: 3.9rem;
		line-height: 1.1282051282051282051282051282051;
		letter-spacing: normal;
	}
}
fieldset,
div.fieldset {
	margin-bottom: 16px;
	margin-bottom: 1.6rem;
}
input[type=text],
input[type=email] {
	background-color: white;
	border: 1px solid #717F81;
	border: 0.1rem solid #717F81;
	border-radius: 4px;
	border-radius: 0.4rem;
	width: calc(100% - 47px);
	width: calc(100% - 4.7rem);
	font-size: 18px;
	font-size: 1.8rem;
	padding-top: 16px;
	padding-top: 1.6rem;
	padding-bottom: 16px;
	padding-bottom: 1.6rem;
	padding-left: 23.5px;
	padding-left: 2.35rem;
	padding-right: 23.5px;
	padding-right: 2.35rem;
	line-height: 1;
	letter-spacing: 0.00222222222222222222222222222222em;
}
select {
	background-color: white;
	border: 1px solid #717F81;
	border: 0.1rem solid #717F81;
	border-radius: 4px;
	border-radius: 0.4rem;
	width: 100%; /* note that this doesn't require an offset for the padding */
	font-size: 18px;
	font-size: 1.8rem;
	padding-top: 16px;
	padding-top: 1.6rem;
	padding-bottom: 16px;
	padding-bottom: 1.6rem;
	padding-left: 23.5px;
	padding-left: 2.35rem;
	padding-right: 23.5px;
	padding-right: 2.35rem;
	padding-right: 47px;
	padding-right: 4.7rem;
	line-height: 1.161803398874;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
	cursor: pointer;
	position: relative;
	background-image: url('/assets/icon_select_32x.png');
	background-repeat: no-repeat;
	background-size: auto 1em;
	background-position: right 23.5px bottom 50%;
	background-position: right 2.35rem bottom 50%;
}
input[type="text"]:focus,
input[type="email"]:focus,
select:focus {
	border-color: #0077C8;
}
select::after {
	content: "\f0d7";
	font-family: "Font Awesome\ 5 Free";
	font-weight: 900;
	position: absolute;
	top: 0;
	right: 0;
}
input.invalid,
textarea.invalid {
	border: 3px solid #CC0000;
	border: 0.3rem solid #CC0000;
	position: relative;
	top: -2px;
	top: -0.2rem;
	left: -2px;
	left: -0.2rem;
}
input + .validation-feedback,
textarea + .validation-feedback {
	display: none;
	color: #CC0000;
	margin-bottom: 20px;
	margin-bottom: 2rem;
	margin-top: 20px;
	margin-top: 2rem;
	line-height: 1.375;
	line-height: 1.3333333333333333333333333333333;
	font-size: 15px;
	font-size: 1.5rem;
	letter-spacing: 0.002em;
}
input.invalid + .validation-feedback,
textarea.invalid + .validation-feedback {
	display: block;
}
label {
	
}
progress {
	width: 100%;
	background-color: #F3F2F2;
	height: 14px;
	height: 1.4rem;
	border-radius: 7px;
	border-radius: 0.7rem;
	border: none;
	color: #002D72;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
progress::-webkit-progress-bar {
	background-color: #F3F3F2;
	border-radius: 7px;
	border-radius: 0.7rem;
	height: 14px;
	height: 1.4rem;
}
progress::-webkit-progress-value {
	background-color: #002D72;
	border-radius: 7px;
	border-radius: 0.7rem;
}
progress::-moz-progress-bar {
	background-color: #002D72;
	border-radius: 7px;
	border-radius: 0.7rem;
}
input[type=submit][disabled],
input[type=submit][disabled]:hover,
input[type=submit][disabled]:focus,
button[type=submit][disabled],
button[type=submit][disabled]:hover,
button[type=submit][disabled]:focus  {
	background-color: #505050;
	background-color: #767676;
	/* opacity: 0.25; */
	border-color: #505050;
	border-color: #767676;
	cursor: not-allowed;
}
a.external::after {
	content: "\f35d";
	font-family: "Font Awesome\ 5 Free";
	font-weight: 900;
	margin-left: 0.38461538461538461538461538461538em;
}
a.question {
	text-transform: uppercase;
	text-decoration: none;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.4166666666666666666666666666667;
	letter-spacing: 0.0008333333333em;
	font-family: "Proxima Nova W01 Semibold" !important; /* TO-DO: make the selector more specific so as to avoid the !important? */
	font-weight: normal;
}
a.question:link,
a.question:visited {
	color: #0077C8;
}
a.question:hover,
a.question:active,
a.question:focus {
	color: #233E90;
}
a.question::before {
	content: "\f059";
	font-family: "Font Awesome\ 5 Free";
	font-weight: 500;
	margin-right: 0.38461538461538461538461538461538em;
}
#modal {
	position: fixed;
	background-color: white;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border-top: 17px solid #002D72;
	border-top: 1.7rem solid #002D72;
	margin: 0;
	display: none;
	overflow: auto;
	max-width: 546px;
	max-width: 54.6rem;
	margin-left: auto;
	margin-right: auto;
	box-shadow: 0 2px 25px 0 rgba(0,0,0,0.5);
	box-shadow: 0 0.2rem 2.5rem 0 rgba(0,0,0,0.5);
}
#modal section {
	margin: 0;
	background-color: white;
}
#modal section:first-of-type {
	background-color: #F3F2F2;
}
#modal section:nth-of-type(2) {
	
}
#modal-question {
	font-size: 25px;
	font-size: 2.5rem;
	/* font-weight: 800; */
	font-family: "Proxima Nova W01 Extrabold";
	font-weight: normal;
	line-height: 1.2;
	letter-spacing: 0.008em;
}
#modal-x {
	position: absolute;
	top: 18px;
	top: 1.8rem;
	right: 26px;
	right: 2.6rem;
	height: 24px;
	height: 2.43rem;
	text-decoration: none;
}
#modal-x:link,
#modal-x:visited {
	color: black;
}
#modal-x:hover,
#modal-x:active,
#modal-x:focus {
	color: #505050;
}
#modal-x::before {
	content: "\f00d";
	font-family: "Font Awesome\ 5 Free";
	font-weight: 900;
	font-size: 24px;
	font-size: 2.4rem;
	line-height: 1;
	display: block;
}
#modal-question::before {
	content: "\f059";
	font-family: "Font Awesome\ 5 Free";
	font-weight: 500;
	color: #0B5584;
	width: 35px;
	width: 3.5rem;
	height: 35px;
	height: 3.5rem;
	display: block;
	font-size: 35px;
	font-size: 3.5rem;
	line-height: 1;
	margin-bottom: 14px;
	margin-bottom: 1.4rem;
}
@media screen and (min-width: 720px) {
	#modal {
		top: 47px;
		top: 4.7rem;
		bottom: auto;
	}
}
#hamburger-underlay,
#menu-underlay,
#modal-underlay {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: 0;
	background-color: transparent;
	display: none;
}
.constraint {
	max-width: 1040px;
	max-width: 104rem;
	margin: 0;
	margin-left: auto;
	margin-right: auto;
}
button,
.button,
.button:link,
.button:visited,
input[type="button"], 
input[type="reset"], 
input[type="submit"] {
	border-radius: 5px;
	border-radius: 0.5rem;
	line-height: 1.2142857142857142857142857142857;
	letter-spacing: 0.035em;
	text-align: left;
	color: #F3F2F2;
	color: white; /* updated for contrast/accessibility */
	text-transform: uppercase;
	/* font-weight: bold; */
	font-family: "Proxima Nova W01 Bold";
	font-weight: normal;
	background-color: #0077C8;
	font-size: 14px;
	font-size: 1.4rem;
	border: 2px solid #0077C8;
	border: 0.2rem solid #0077C8;
	padding-top: 14px;
	padding-top: 1.4rem;
	padding-bottom: 14px;
	padding-bottom: 1.4rem;
	padding-left: 16px;
	padding-left: 1.6rem;
	padding-right: 16px;
	padding-right: 1.6rem;
	text-decoration: none;
	display: inline-block;
}
button:hover,
button:active,
button:focus,
.button:hover,
.button:active,
.button:focus,
input[type="button"]:hover,
input[type="button"]:active,
input[type="button"]:focus, 
input[type="reset"]:hover,
input[type="reset"]:active,
input[type="reset"]:focus, 
input[type="submit"]:hover,
input[type="submit"]:active,
input[type="submit"]:focus {
	background-color: #002D72;
	border-color: #002D72;
	color: #F3F2F2;
}
button.arrow::after,
.button.arrow::after {
	content: "\23F5"; /* right arrow */
	content: "\f0da";
	font-family: "Font Awesome\ 5 Free";
	font-weight: 900;
	width: 1em;
	display: inline-block;
	text-align: right;
}
button.secondary,
.button.secondary,
.button.secondary:link,
.button.secondary:visited,
input.secondary[type="button"], 
input.secondary[type="reset"], 
input.secondary[type="submit"] {
	color: #0077C8;
	background-color: transparent;
	background-color: white; /* for contrast/accessibility */
	border-color: #0077C8;
}
button.secondary:hover,
button.secondary:active,
button.secondary:focus,
.button.secondary:hover,
.button.secondary:active,
.button.secondary:focus,
input.secondary[type="button"]:hover,
input.secondary[type="button"]:active,
input.secondary[type="button"]:focus,
input.secondary[type="reset"]:hover,
input.secondary[type="reset"]:active,
input.secondary[type="reset"]:focus,
input.secondary[type="submit"]:hover,
input.secondary[type="submit"]:active,
input.secondary[type="submit"]:focus {
	color: #233E90;
	background-color: white;
	border-color: #233E90;
}

header a:hover,
footer a:hover {
	/* opacity: 0.77; */
}
footer a:link,
footer a:visited,
footer a:hover,
footer a:active {
	display: inline-block;
}
footer .constraint {
	max-width: 960px;
	max-width: 96rem;
}
footer .constraint > div {
	margin-bottom: 63px;
	margin-bottom: 6.3rem;
}
footer .constraint > div:first-of-type > div:nth-of-type(2) > span {
	display: inline-block;
	width: 1px;
	width: 0.1rem;
	height: 19px;
	height: 1.9rem;
	background-color: #979797;
	vertical-align: text-top;
	margin-left: 23px;
	margin-left: 2.3rem;
	margin-right: 23px;
	margin-right: 2.3rem;
}
footer .constraint > div:last-of-type {
	/* line-height: 2.1333333333333333333333333333333; */
	margin-bottom: 0;
}
footer .constraint > div > div {
	margin-bottom: 35px;
	margin-bottom: 3.5rem;
}
footer .constraint > div:last-of-type > div {
	margin-bottom: 0;
}
footer .constraint > div > div:first-of-type/* ,
footer .constraint > div:last-of-type > div */ {
	/* font-weight: 600; */
	font-family: "Proxima Nova W01 Semibold";
	font-weight: normal;
	font-size: 19px;
	font-size: 1.9rem;
	line-height: 1.2105263157894736842105263157895;
	padding-bottom: 23px;
	padding-bottom: 2.3rem;
	border-bottom: 1px solid #979797;
	border-bottom: 0.1rem solid #979797;
	margin-bottom: 31px;
	margin-bottom: 3.1rem;
}
footer .constraint > div:last-of-type > div {
	border-bottom: 0;
}
footer .constraint > div:last-of-type > div > div:last-of-type {
	margin-bottom: 35px;
	margin-bottom: 3.5rem;
}
footer .constraint > div:last-of-type > div:last-of-type {
	font-family: "Proxima Nova W01 Semibold";
	font-weight: normal;
	font-size: 19px;
	font-size: 1.9rem;
	line-height: 1.2105263157894736842105263157895;
}
footer .constraint > div > div:last-of-type {
	margin-bottom: 0;
}
footer .constraint > div > div > div {
	margin-bottom: 0;
}
@media screen and (min-width: 720px) {
	footer {
		padding-top: 89.5px;
		padding-top: 8.95rem;
		padding-bottom: 89.5px;
		padding-bottom: 8.95rem;
		padding-left: 68px;
		padding-left: 6.8rem;
		padding-right: 68px;
		padding-right: 6.8rem;
	}
	footer .constraint > div {
		float: left;
		width: 36.6666666666666666666666666666667%;
		width: 27%;
		padding-right: 6%;
		/* width: 20%;
		padding-right: 5%; */
		margin-bottom: 0;
	}
}
header a {
	display: block;
}
header .constraint {
	max-width: 1160px;
	max-width: 116rem;
}
header .hamburger.button {
	text-decoration: none;
	display: block;
	position: absolute;
	right: 26px;
	right: 2.6rem;
	background-color: transparent;
	border-width: 1px;
	border-width: 0.1rem;
	/* font-weight: 600 !important; */
	font-family: "Proxima Nova W01 Semibold";
	font-weight: normal;
	line-height: 17px;
	line-height: 1.7rem;
	padding-top: 12.5px;
	padding-top: 1.25rem;
	padding-bottom: 12.5px;
	padding-bottom: 1.25rem;
	border-radius: 8px;
	border-radius: 0.8rem;
}
header .hamburger:link,
header .hamburger:visited {
	background-color: transparent;
	border-color: white;
	color: white;
}
header .hamburger:hover,
header .hamburger:active,
header .hamburger:focus {
	background-color: white;
	border-color: white;
	color: #233E90;
}
header .hamburger:focus {
outline: none;
}
header .hamburger.active {
	background-color: white;
}
header .hamburger.active:link,
header .hamburger.active:visited {
	color: #233E90;
}
header .hamburger.active:hover,
header .hamburger.active:active {
	color: #002D72;
}
header .hamburger::before {
	content: "\f0c9";
	font-family: "Font Awesome\ 5 Free";
	font-weight: 900;
}
header .hamburger span {
	display: none;
}
@media screen and (min-width: 375px) {
	header .hamburger span {
		display: inline;
	}
}
header #logo {
	height: 43px;
	height: 4.3rem;
	display: inline-block;
}
header #not-the-logo {
	display: inline-block;
	text-decoration: none;
	font-family: "Proxima Nova W01 Extrabold";
	font-weight: normal;
	font-size: 33px;
	font-size: 3.3rem;
	max-width: 75%;
	line-height: 1;
	margin-top: 5.4px;
	margin-top: .54rem;
	letter-spacing: -0.010em;
}
header #not-the-logo:hover {
	text-decoration: underline;
}
header #logo svg,
header #logo img {
	height: 100%;
	width: auto;
}
header nav {
	display: none;
	position: absolute;
	/* top: 111.566666666666666666666666666666667px;
	top: 11.1566666666666666666666666666666667rem; */
	top: 105px;
	top: 10.5rem;
	right: 0;
	left: 0;
	background-color: white;
	z-index: 99999999;
	padding-top: 11px;
	padding-top: 1.1rem;
	padding-bottom: 41px;
	padding-bottom: 4.1rem;
	background-color: #F9F9F9;
	box-shadow: 0 2px 10px 0 rgba(0,0,0,0.5);
	box-shadow: 0 0.2rem 1rem 0 rgba(0,0,0,0.5);
	font-size: 18px;
	font-size: 1.8rem;
	letter-spacing: 0.000555555555555555555555555555556em;
}
header nav ul {
	text-align: center;
}
header nav ul li {
	display: block;
	float: none;
}
header nav ul li.active {
	background-color: white;
}
header nav ul li a {
	text-decoration: none;
	line-height: 1;
	padding-top: 21px;
	padding-top: 2.1rem;
	padding-bottom: 21px;
	padding-bottom: 2.1rem;
	padding-left: 0;
	padding-right: 0;
}
header nav ul li a:link,
header nav ul li a:visited {
	color: #333333;
}
header nav ul li a:hover,
header nav ul li a:active {
	color: #233E90;
}
/* header nav ul li a:hover {
	opacity: 1;
} */
header nav ul li a:focus {
	outline: none;
}
header nav ul li a:focus {
	text-decoration: underline;
}
header nav ul li a.parent::after {
	content: "\23F5"; /* right arrow */
	content: "\f0da";
	font-family: "Font Awesome\ 5 Free";
	font-weight: 900;
	width: 1em;
	display: inline-block;
	text-align: right;
}
header nav ul li a.parent.active::after {
	content: "\23F7"; /* down arrow */
	content: "\f0d7";
}
header .find-a-contractor.button {
	/* font-weight: bold; */
	font-family: "Proxima Nova W01 Bold";
	font-weight: normal;
	font-size: 14px;
	font-size: 1.4rem;
	letter-spacing: 0.03571428571428571428571428571429em;
	display: inline-block;
	margin-top: 27px;
	margin-top: 2.7rem;
}
header .find-a-contractor.button:link,
header .find-a-contractor.button:visited {
	color: #F3F2F2;
	background-color: #233E90;
	border-color: #233E90;
}
header .find-a-contractor.button:hover,
header .find-a-contractor.button:active,
header .find-a-contractor.button:focus {
	background-color: #0077C8;
	border-color: #0077C8;
}
header .find-a-contractor.button::after {
	content: "\23F5"; /* right arrow */
	content: "\f0da";
	font-family: "Font Awesome\ 5 Free";
	font-weight: 900;
	text-align: right;
}
header nav ul li ul {
	display: none;
	font-size: 17px;
	font-size: 1.7rem;
	/* font-weight: 500; */
	font-family: "Proxima Nova W01 Medium";
	font-weight: normal;
	padding-bottom: 20px;
	padding-bottom: 2rem;
}
header nav ul li ul li a {
	padding-top: 14px;
	padding-top: 1.4rem;
	padding-bottom: 14px;
	padding-bottom: 1.4rem;
}
header nav ul::before {
	content: " ";
	display: block;
	width: 0;
	height: 0;
	border: 11px solid #F9F9F9;
	border: 1.1rem solid #F9F9F9;
	border-left-color: transparent;
	border-right-color: transparent;
	border-top-color: transparent;
	position: absolute;
	top: -2.2rem; /* should be right, but... */
	top: -21.75px;
	top: -2.175rem;
	right: 34px;
	right: 3.4rem;
}
@media screen and (min-width: 1024px) {
	header #logo {
		height: 64px;
		height: 6.4rem;
		margin-right: 30px;
		margin-right: 3rem;
	}
	header #not-the-logo {
		margin-right: 30px;
		margin-right: 3rem;
		margin-top: 12.5px;
		margin-top: 1.25rem;
	}
	header .hamburger,
	#hamburger-underlay {
		display: none !important;
	}
	header nav {
		position: static;
		display: block !important;
		float: right;
		top: auto;
		right: auto;
		background-color: transparent;
		z-index: auto;
		width: auto;
		box-shadow: none;
		padding-top: 0;
		padding-bottom: 0;
		font-size: 16px;
		font-size: 1.6rem;
		letter-spacing: 0.014375em;
	}
	header nav ul::before {
		display: none;
	}
	header nav ul li {
		display: inline-block; /* blows the line items up to the height of the nav - still necessary? should be inline-block? */
		text-align: left;
		position: relative; /* staging */
	}
	header nav ul li a:focus {
		text-decoration: none;
	}
	header nav ul li ul li a:focus {
		text-decoration: underline;
	}
	header nav ul li a.parent:focus {
		background: linear-gradient(180deg, #0077C8 10%, transparent 10%);
	}
	header nav ul li a.parent::after {
		opacity: 0.0;
	}
	header nav ul li.active {
		background-color: transparent;
	}
	header nav ul li a.parent.active::after,
	header nav ul li a.parent:focus::after {
		opacity: 1.0;
	}
	header nav ul li a {
		white-space: nowrap;
		font-family: "Proxima Nova W01 Regular";
		font-weight: normal;
		text-transform: uppercase;
		margin-right: 32px;
		margin-right: 3.2rem;
	}
	header nav ul li a:link,
	header nav ul li a:visited,
	header nav ul li a:hover,
	header nav ul li a:active {
		color: #F3F2F2;
	}
	header nav > ul > li:last-of-type > a {
		margin-right: 0;
	}
	header nav ul li ul {
		display: none;
		position: absolute;
		background-color: white;
		top: 58px;
		top: 5.8rem;
		z-index: 99999999;
		width: auto;
		padding-top: 7.5px;
		padding-top: 0.75rem;
		padding-bottom: 8.5px;
		padding-bottom: 0.85rem;
		padding-left: 27px;
		padding-left: 2.7rem;
		padding-right: 27px;
		padding-right: 2.7rem;
		border-radius: 0 0 9px 9px;
		border-radius: 0 0 0.9rem 0.9rem;
		box-shadow: 0 2px 10px 0 rgba(0,0,0,0.21);
		box-shadow: 0 0.2rem 1rem 0 rgba(0,0,0,0.21);
	}
	header nav ul li:nth-of-type(2) ul {
		right: 48px;
		right: 4.8rem;
		/* in the absence of a button in the right-most spot */
		right: 26px;
		right: 2.6px;
	}
	header nav > ul > li:hover > a::after {
		opacity: 1.0;
		content: "\23F7"; /* down arrow */
		content: "\f0d7";
	}
	header nav > ul > li:hover > ul {
		display: block !important;
	}
	header nav ul li ul li {
		display: block;
	}
	header nav ul li ul li a {
		text-transform: none;
		margin-left: 0;
		margin-right: 0;
		font-size: 15px;
		font-size: 1.5rem;
		letter-spacing: 0.0006666666667em;
		padding-top: 11.5px;
		padding-top: 1.15rem;
		padding-bottom: 11.5px;
		padding-bottom: 1.15rem;
		/* font-weight: 500; */
		font-family: "Proxima Nova W01 Medium";
		font-weight: normal;
	}
	header nav ul li ul li a:link,
	header nav ul li ul li a:visited {
		color: #333333;
	}
	header nav ul li ul li a:hover,
	header nav ul li ul li a:active {
		color: #233E90;
	}


	header nav > ul > li > a:focus {
		outline: none;
	}
	header .find-a-contractor.button {
		font-size: 13px;
		font-size: 1.3rem;
		margin-top: 0;
		letter-spacing: 0.03538461538461538461538461538462em;
	}
	header .find-a-contractor.button:link,
	header .find-a-contractor.button:visited {
		background-color: #F3F2F2;
		color: #233E90;
		border-color: #F3F2F2;
	}
	header .find-a-contractor.button:hover,
	header .find-a-contractor.button:active,
	header .find-a-contractor.button:focus {
		background-color: #002D72;
		color: #F3F3F2;
		border-color: #F3F3F2;
	}
}
@media screen and (max-width: 1023px) {
	#menu-underlay {
		display: none !important;
	}
}
#content {
	background-color: white;
	margin-bottom: 0;
}

section {
	padding: 33px;
	padding: 3.3rem;
	margin: 0;
	/* padding-top: 49px;
	padding-top: 4.9rem;
	padding-bottom: 49px;
	padding-bottom: 4.9rem; */
}
section:nth-of-type(even) {
	background-color: #F3F2F2;
}
section.secondary {
	padding-top: 49px;
	padding-top: 4.9rem;
	padding-bottom: 80px;
	padding-bottom: 8rem;
}
section.secondary .constraint {
	max-width: 1060px;
	max-width: 106rem;
}
section.secondary h1 {
	margin-bottom: 54px;
	margin-bottom: 5.4rem;
}
section.secondary button,
section.secondary .button,
section.secondary .button:link,
section.secondary .button:visited,
section.secondary input[type="button"], 
section.secondary input[type="reset"], 
section.secondary input[type="submit"] {
	background-color: transparent;
	color: #0077C8;
}
section.secondary button:hover,
section.secondary button:active,
section.secondary button:focus,
section.secondary .button:hover,
section.secondary .button:active,
section.secondary .button:focus,
section.secondary input[type="button"]:hover,
section.secondary input[type="button"]:active,
section.secondary input[type="button"]:focus, 
section.secondary input[type="reset"]:hover,
section.secondary input[type="reset"]:active,
section.secondary input[type="reset"]:focus, 
section.secondary input[type="submit"]:hover,
section.secondary input[type="submit"]:active,
section.secondary input[type="submit"]:focus {
	color: #002D72;
	border-color: #002D72;
}



section.secondary button.primary,
section.secondary .button.primary,
section.secondary .button.primary:link,
section.secondary .button.primary:visited,
section.secondary input.primary[type="button"], 
section.secondary input.primary[type="reset"], 
section.secondary input.primary[type="submit"]  {
	color: white;
	background-color: #0077C8;
	border-color: #0077C8;
	border-color: #0077C8;
}
section.secondary button.primary:hover,
section.secondary button.primary:active,
section.secondary button.primary:focus,
section.secondary .button.primary:hover,
section.secondary .button.primary:active,
section.secondary .button.primary:focus,
section.secondary input.primary[type="button"]:hover,
section.secondary input.primary[type="button"]:active,
section.secondary input.primary[type="button"]:focus, 
section.secondary input.primary[type="reset"]:hover,
section.secondary input.primary[type="reset"]:active,
section.secondary input.primary[type="reset"]:focus, 
section.secondary input.primary[type="submit"]:hover,
section.secondary input.primary[type="submit"]:active,
section.secondary input.primary[type="submit"]:focus {
	background-color: #002D72;
	border-color: #002D72;
	color: #F3F2F2;
}





section.secondary input[type=submit][disabled],
section.secondary input[type=submit][disabled]:hover,
section.secondary input[type=submit][disabled]:focus,
section.secondary button[type=submit][disabled],
section.secondary button[type=submit][disabled]:hover,
section.secondary button[type=submit][disabled]:focus  {
	background-color: #767676;
	border-color: #767676;
	color: white;
}
section.secondary .columns {
	margin: 0;
}
section.secondary .columns > div {
	margin-bottom: 40px;
	margin-bottom: 4rem;
}
section.secondary .columns.asymmetrical {
	margin-bottom: 35px;
	margin-bottom: 3.5rem;
}
section.secondary .columns.asymmetrical:last-of-type {
	margin-bottom: 0;
}
section.secondary .columns > div {
	
}
/* TO-DO: move this upwards */
.intro {
	font-size: 19px;
	font-size: 1.9rem;
	line-height: 1.4736842105263157894736842105263;
	color: #242424;
}
section.secondary p.intro {
	line-height: 1.4210526315789473684210526315789;
}
section.secondary h3 {
	color: #0B5584;
}
section.secondary .column {

}
section.secondary div + .column,
section.secondary hr + .column {
	margin-top: 40px;
	margin-top: 4rem;
}
@media screen and (min-width: 1024px) {
	section.secondary hr {
		margin-bottom: 48px;
		margin-bottom: 4.8rem;
		margin-top: 48px;
		margin-top: 4.8rem;
	}
	section.secondary .columns.asymmetrical {
		margin-bottom: 0;
	}
	section.secondary p.intro {
		font-size: 19px;
		font-size: 1.9rem;
		line-height: 1.5263157894736842105263157894737;
	}
	section.secondary h2 {
		font-size: 26px;
		font-size: 2.6rem;
		line-height: 1.1923076923076923076923076923077;
	}
	section.secondary h3 {
		font-size: 23px;
		font-size: 2.3rem;
		line-height: 1.2173913043478260869565217391304;
	}
	section.secondary .columns > div {
		width: 37.74%;
		float: left;
		padding-right: 9.43%
	}
	section.secondary .columns > div {
		margin-bottom: 0;
	}
	section.secondary .columns > div:first-of-type {
		
	}
	section.secondary .columns.asymmetrical > div {
		width: 52.92%;
		padding-right: 0;
	}
	section.secondary .columns.asymmetrical > div:first-of-type {
		width: 34.15%;
		float: right;
	}
	section.secondary .columns.asymmetrical.alternative > div:first-of-type {
		width: 52.92%;
		float: left;
	}
	section.secondary .columns.asymmetrical.alternative > div:last-of-type {
		width: 34.15%;
		float: right;
	}

	section.secondary .column {

	}
	section.secondary .column > div {
		max-width: 75%;
	}
}
section.secondary .columns.asymmetrical > div:first-of-type > picture {
	width: calc(100% + 66px);
	width: calc(100% + 6.6rem);
	max-width: none;
	margin-left: -33px;
	margin-left: -3.3rem;
}
@media screen and (min-width: 1024px) {
	section.secondary .columns.asymmetrical > div:first-of-type > picture {
		width: 100%;
		max-width: 100%;
		margin-left: 0;
	}
}
/* TO-DO: move this upwards */
hr {
	height: 1px;
	height: 0.1rem;
	background-color: #F3F2F2;
	line-height: 1px;
	line-height: 0.1rem;
}
section.secondary ul {
	list-style-type: none;
	margin-left: 0;
}
section.secondary ul li {
	position: relative;
	padding-left: 26px;
	padding-left: 2.6rem;
}
section.secondary ul li::before {
	content: " ";
	width: 7px;
	width: 0.7rem;
	height: 7px;
	height: 0.7rem;
	background-color: #0077C8;
	border-radius: 2px;
	border-radius: 0.2rem;
	display: inline-block;
	position: absolute;
	top: 8.05835px;
	top: 0.805835rem;
	left: 0;
}
section.secondary .centered {
	text-align: center;
	margin-top: 40px;
	margin-top: 4rem;
	margin-bottom: 40px;
	margin-bottom: 4rem;
}
section.secondary .centered > div {
	max-width: 560px;
	max-width: 56rem;
	margin-left: auto;
	margin-right: auto;
}
section.secondary .columns.asymmetrical > div h2 {
	margin-top: 48px;
	margin-top: 4.8rem;
}
section.secondary .columns.asymmetrical:not(.alternative) > div:first-of-type h2 {
	/* font-weight: bold; */ /* necessary? */
	font-family: "Proxima Nova W01 Bold"; /* again, necessary? */
	font-weight: normal;
	font-size: 17px;
	font-size: 1.7rem;
	line-height: 1.1764705882352941176470588235294;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: #0B5584;
	margin-top: 0;
}
section.secondary p + h3 {
	margin-top: 37px;
	margin-top: 3.7rem;
}
section.secondary ul.nav.section {
	border-radius: 4px;
	border-radius: 0.4rem;
	background-color: #F9F9F9;
	border: 1px solid rgba(151,151,151,0.38);
	border: 0.1rem solid rgba(151,151,151,0.38);
	box-shadow: 0 2px 4px 0 rgba(222,222,222,0.5);
	box-shadow: 0 0.2rem 0.4rem 0 rgba(222,222,222,0.5);
	font-size: 15px;
	font-size: 1.5rem;
	letter-spacing: 0.000666666666666666666666666666667em;
	margin-bottom: 49px;
	margin-bottom: 4.9rem;
}
section.secondary ul.nav.section li {
	padding-left: 0;
	display: none;
	margin: 0;
}
section.secondary ul.nav.section li::before {
	content: none;
}
section.secondary ul.nav.section li.current { /* :first-of-type */
	display: block;
}
section.secondary ul.nav.section li a {
	display: block;
	position: relative;
	padding-top: 11.44px;
	padding-top: 1.144rem;
	padding-bottom: 11.44px;
	padding-bottom: 1.144rem;
	padding-left: 18px;
	padding-left: 1.8rem;
	padding-right: 18px;
	padding-right: 1.8rem;
	text-decoration: none;
	font-family: "Proxima Nova W01 Regular" !important;
	font-weight: normal;
}
section.secondary ul.nav.section li.current a::before {
	font-family: "Font Awesome\ 5 Free";
	font-weight: 900;
	width: 1em;
	display: inline-block;
	position: absolute;
	top: 11.44px;
	top: 1.144rem;
	right: 18px;
	right: 1.8rem;
	content: "\f0d7"; /* down arrow */
	color: #006BA6;
	text-align: right;
}
section.secondary ul.nav.section li a:link,
section.secondary ul.nav.section li a:visited {
	color: #333333;
}
section.secondary ul.nav.section li a:hover,
section.secondary ul.nav.section li a:active,
section.secondary ul.nav.section li a:focus {
	color: #233E90;
	/* opacity: 0.77; */
}
section.secondary ul.nav.section li a:focus {
	outline: none;
	text-decoration: underline;
}
@media screen and (min-width: 1024px) {
	section.secondary .centered {
		margin-top: 60px;
		margin-top: 6rem;
		margin-bottom: 60px;
		margin-bottom: 6rem;
	}
	section.secondary .columns.asymmetrical > div h2 {
		margin-top: 0;
	}
	section.secondary ul.nav.section {
		border: none;
		box-shadow: none;
		background-color: transparent;
		font-size: 16px;
		font-size: 1.6rem;
		letter-spacing: 0.0025em;
		/* font-weight: 500; */
		font-family: "Proxima Nova W01 Medium";
		font-weight: normal;
		margin-bottom: 0;
	}
	section.secondary ul.nav.section li {
		display: block !important;
		border-bottom: 1px solid #006BA6;
		border-bottom: 0.1rem solid #006BA6;
	}
	section.secondary ul.nav.section li:last-of-type {
		border-bottom: none;
	}
	section.secondary ul.nav.section li a {
		padding-left: 0;
		padding-right: 0;
	}
	section.secondary ul.nav.section li.current a::before {
		content: none;
	}
	section.secondary ul.nav.section li a:link,
	section.secondary ul.nav.section li a:visited {
		color: #0B5584;
	}
	section.secondary ul.nav.section li a:hover,
	section.secondary ul.nav.section li a:active,
	section.secondary ul.nav.section li a:focus {
		color: #002D72;
	}
}

#body.index section:first-of-type,
#body.heat-pump-planner section:first-of-type {
	padding: 0;
}
#body.index section:first-of-type .constraint,
#body.heat-pump-planner .constraint {
	margin-bottom: 0;
}
#body.index section:first-of-type .constraint > div,
#body.heat-pump-planner section:first-of-type .constraint > div {
	padding: 33px;
	padding: 3.3rem;
	padding-top: 62px;
	padding-top: 6.2rem;
	padding-bottom: 66px;
	padding-bottom: 6.6rem;
	margin-bottom: 0;
}


/* TO-DO: move this upwards */
h1::after {
	content: "";
	height: 8px;
	height: 0.8rem;
	width: 44px;
	width: 4.4rem;
	display: block;
	background-color: #0077C8;
	margin-top: 28px;
	margin-top: 2.8rem;
}
#body.index section:first-of-type .constraint > div h1,
#body.heat-pump-planner section:first-of-type .constraint > div h1 {
	margin-bottom: 30px;
	margin-bottom: 3rem;
}
#body.find-available-rebates .finder h1::after,
#body.heat-pump-planner-questions .finder h1::after,
#body[class*="pattern"] h1::after {
	content: none;
}
#body.find-available-rebates .finder.results h1::after {
	content: "";
}
#body.heat-pump-planner-questions .finder h1 {
	text-align: center;
}
#body.heat-pump-planner-questions .finder.results h1 {
	text-align: left;
}
@media screen and (min-width: 1024px) {
	#body.heat-pump-planner-questions .finder h1 {
		text-align: left;
	}
}


#body.index section:first-of-type picture::after,
#body.heat-pump-planner section:first-of-type picture::after {
	height: 17px;
	height: 1.7rem;
}
#body.index p,
#body.heat-pump-planner p {
	color: #212121;
}
#body.index p.intro,
#body.heat-pump-planner p.intro {
	line-height: 1.4210526315789473684210526315789;
	color: #212121;
}
#body.index h2,
#body.heat-pump-planner h2 {
	color: #242424;
}
@media screen and (min-width: 1024px) {
	.finder h1 {
		margin-bottom: 28px;
		margin-bottom: 2.8rem;
	}
	#body.index section:first-of-type,
	#body.heat-pump-planner section:first-of-type {
		padding-top: 107px;
		padding-top: 10.7rem;
		/* to account for addition of gTranslate widget */
		padding-top: 54px;
		padding-top: 5.4rem;
		padding-bottom: 107px;
		padding-bottom: 10.7rem;
		padding-left: 33px;
		padding-left: 3.3rem;
		padding-right: 33px;
		padding-right: 3.3rem;
	}
	#body.index section:first-of-type .constraint,
	#body.heat-pump-planner section:first-of-type .constraint {
		position: relative;
		padding-top: 63px;
		padding-top: 6.3rem;
		padding-bottom: 72px;
		padding-bottom: 7.2rem;
		max-width: 1160px;
		max-width: 116rem;
	}
	#body.index section:first-of-type picture,
	#body.heat-pump-planner section:first-of-type picture {
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		overflow: hidden;
		box-shadow: 0 2px 10px 0 rgba(0,0,0,0.14);
		box-shadow: 0 0.2rem 1rem 0 rgba(0,0,0,0.14);
	}
	#body.index section:first-of-type picture::before,
	#body.heat-pump-planner section:first-of-type picture::before {
		background: linear-gradient(270deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.16) 100%);
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		content: "";
	}
	#body.index section:first-of-type .constraint > div,
	#body.heat-pump-planner section:first-of-type .constraint > div {
		padding: 53px;
		padding: 5.3rem;
		padding-bottom: 86px;
		padding-bottom: 8.6rem;
		border-left: 25px solid #0077C8;
		border-left: 2.5rem solid #0077C8;
		-webkit-border-image: -webkit-gradient(linear, 0 0, 0 100%, from(#00AFE6), to(#0077C8)) 1 100%;
		-webkit-border-image: -webkit-linear-gradient(#00AFE6, #0077C8) 1 100%;
		-moz-border-image: -moz-linear-gradient(#00AFE6, #0077C8) 1 100%;
		-o-border-image: -o-linear-gradient(#00AFE6, #0077C8) 1 100%;
		border-image: linear-gradient(to bottom, #00AFE6, #0077C8) 1 100%;
		background-color: white;
		max-width: 370px;
		max-width: 37rem;
		position: relative;
		box-shadow: 0 2px 25px 0 rgba(0,0,0,0.34);
		box-shadow: 0 0.2rem 2.5rem 0 rgba(0,0,0,0.34);
	}
	#body.index section:first-of-type .constraint > div h1,
	#body.heat-pump-planner section:first-of-type .constraint > div h1 {
		font-size: 39px; /* no longer necessary? */
		font-size: 3.9rem;
		font-size: 35px;
		font-size: 3.5rem;
		line-height: 1.1282051282051282051282051282051;
		margin-bottom: 31px;
		margin-bottom: 3.1rem;
	}
	#body.index section:first-of-type .constraint > div p,
	#body.heat-pump-planner section:first-of-type .constraint > div p {
		font-size: 19px;
		font-size: 1.9rem;
		line-height: 1.4736842105263157894736842105263;
	}
	#body.index section:first-of-type .constraint > div .button,
	#body.heat-pump-planner section:first-of-type .constraint > div .button {
		font-size: 15px;
		font-size: 1.5rem;
	}
}


/* #body.index section:nth-of-type(2), */
#body.index section.bravo,
#body.index section.secondary,
#body.heat-pump-planner section:nth-of-type(2) {
	padding-top: 62px;
	padding-top: 6.2rem;
	padding-bottom: 0;
}
#body.index section.secondary {
	padding-bottom: 42px;
	padding-bottom: 4.2rem;
}
#body.index section.secondary.starts-with-img {
	padding-top: 0;
}
/* #body.index section:nth-of-type(2) .columns, */
#body.index section.bravo .columns,
#body.heat-pump-planner section:nth-of-type(2) .columns {
	margin: 0;
	max-width: 952px;
	max-width: 95.2rem;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 66px;
	margin-bottom: 6.6rem;
}
/* #body.index section:nth-of-type(2) .columns > div:last-of-type, */
#body.index section.bravo .columns > div:last-of-type,
#body.heat-pump-planner section:nth-of-type(2) .columns > div:last-of-type {
	margin: 0;
}
/* #body.index section:nth-of-type(2) .columns.asymmetrical > div:last-of-type > picture, */
#body.index section.bravo .columns.asymmetrical > div:last-of-type > picture,
#body.heat-pump-planner section:nth-of-type(2) .columns.asymmetrical > div:last-of-type > picture {
	width: calc(100% + 66px);
	width: calc(100% + 6.6rem);
	max-width: none;
	margin-left: -33px;
	margin-left: -3.3rem;
}
/* #body.index section:nth-of-type(2) .columns.asymmetrical > div:first-of-type, */
#body.index section.bravo .columns.asymmetrical > div:first-of-type,
#body.heat-pump-planner section:nth-of-type(2) .columns.asymmetrical > div:first-of-type {
	margin-bottom: 66px;
	margin-bottom: 6.6rem;
}
/* #body.index section:nth-of-type(2) .columns.asymmetrical:last-of-type, */
#body.index section.bravo .columns.asymmetrical:last-of-type,
#body.heat-pump-planner section:nth-of-type(2) .columns.asymmetrical:last-of-type {
	margin-bottom: 0;
}
@media screen and (min-width: 1024px) {
	#body.index section.secondary,
	#body.index section.secondary.starts-with-img {
		padding-top: 62px;
		padding-top: 6.2rem;
	}
	/* #body.index section:nth-of-type(2), */
	#body.index section.bravo,
	#body.heat-pump-planner section:nth-of-type(2) {
		padding-top: 92px;
		padding-top: 9.2rem;
		padding-bottom: 92px;
		padding-bottom: 9.2rem;
	}
	/* #body.index section:nth-of-type(2) h2, */
	#body.index section.bravo h2,
	#body.heat-pump-planner section:nth-of-type(2) h2 {
		font-size: 29px;
		font-size: 2.9rem;
		line-height: 1.2068965517241379310344827586207;
	}
	/* #body.index section:nth-of-type(2) p, */
	#body.index section.bravo p,
	#body.heat-pump-planner section:nth-of-type(2) p {
		font-size: 18px;
		font-size: 1.8rem;
		line-height: 1.3888888888888888888888888888889;
	}
	/* #body.index section:nth-of-type(2) .columns, */
	#body.index section.bravo .columns,
	/* #body.index section:nth-of-type(2) .columns:last-of-type, */
	#body.index section.bravo .columns:last-of-type,
	#body.heat-pump-planner section:nth-of-type(2) .columns,
	#body.heat-pump-planner section:nth-of-type(2) .columns:last-of-type {
		margin-bottom: 98px;
		margin-bottom: 9.8rem;
	}
	/* #body.index section:nth-of-type(2) .columns.asymmetrical > div, */
	#body.index section.bravo .columns.asymmetrical > div,
	#body.heat-pump-planner section:nth-of-type(2) .columns.asymmetrical > div {
		width: 38.03%;
		padding-right: 0;
	}
	/* #body.index section:nth-of-type(2) .columns.asymmetrical > div:first-of-type, */
	#body.index section.bravo .columns.asymmetrical > div:first-of-type,
	#body.heat-pump-planner section:nth-of-type(2) .columns.asymmetrical > div:first-of-type {
		width: 47.58%;
		float: right;
		margin-bottom: 0;
	}
	/* #body.index section:nth-of-type(2) .columns.asymmetrical:nth-of-type(even) > div, */
	#body.index section.bravo .columns.asymmetrical:nth-of-type(even) > div,
	#body.heat-pump-planner section:nth-of-type(2) .columns.asymmetrical:nth-of-type(even) > div {
		float: right;
	}
	/* #body.index section:nth-of-type(2) .columns.asymmetrical:nth-of-type(even) > div:first-of-type, */
	#body.index section.bravo .columns.asymmetrical:nth-of-type(even) > div:first-of-type,
	#body.heat-pump-planner section:nth-of-type(2) .columns.asymmetrical:nth-of-type(even) > div:first-of-type {
		float: left;
	}
	/* #body.index section:nth-of-type(2) .columns.asymmetrical > div:last-of-type > picture, */
	#body.index section.bravo .columns.asymmetrical > div:last-of-type > picture,
	#body.heat-pump-planner section:nth-of-type(2) .columns.asymmetrical > div:last-of-type > picture {
		width: 100%;
		max-width: 100%;
		margin-left: 0;
	}
}
#body.find-available-rebates #content,
#body.find-a-contractor #content,
#body.heat-pump-planner-questions #content,
#body[class*="pattern"] #content {
	background-color: #F3F2F2;
}
#body.find-available-rebates section:first-of-type,
#body.find-a-contractor section:first-of-type,
#body.heat-pump-planner-questions section:first-of-type,
#body[class*="pattern"] section:first-of-type {
	padding: 0;
}
.finder,
.pattern {
	background-color: white;
	max-width: 1007px;
	max-width: 100.7rem;
	margin: 0;
	margin-left: auto;
	margin-right: auto;
	padding: 33px;
	padding: 3.3rem;
}
.tabcordion {
	background-color: lime;
	max-width: 1073px;
	max-width: 107.3rem;
	margin: 0;
	margin-left: auto;
	margin-right: auto;
	padding: 0; /* necessary? */
	display: flex;
	justify-content: space-between;
	margin-bottom: 0;
}
.tabcordion .tabs {
	display: none;
	background-color: fuchsia;
	width: 20.6140350877193%;
	float: left;
	position: sticky;
	top: 0;
	height: 0;
	margin: 0;
}
#body.find-available-rebates button[type='button'] {
	background-color: white;
	color: #212121;
	text-transform: none;
	font-family: "Proxima Nova W01 Regular";
	font-weight: normal;
	width: 100%;
	text-align: center;
	font-size: 16px;
	font-size: 1.6rem;
	letter-spacing: normal;
	box-shadow: 0 2px 5px 0 rgba(0,0,0,0.17);
	box-shadow: 0 0.2rem 0.5rem 0 rgba(0,0,0,0.17);
}
#body.find-available-rebates button.active[type='button'] {
	box-shadow: 0 2px 10px 0 rgba(0,0,0,0.36);
	box-shadow: 0 0.2rem 1rem 0 rgba(0,0,0,0.36);
}
#body.find-available-rebates button[type='button']:hover,
#body.find-available-rebates button[type='button']:focus,
#body.find-available-rebates button.active[type='button'] {
	background-color: #0077C8;
	color: white;
	border-color: #0077C8;
}
#body.find-available-rebates .columns.asymmetrical > div:first-of-type h2 {
	font-size: 20px;
	font-size: 2rem;
	line-height: 1.2;
	letter-spacing: 0.002em;
}
#body.find-available-rebates .columns.asymmetrical > div:first-of-type p:not(.intro) {
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.4666666666666666666666666666667;
	letter-spacing: normal;
}
#body.find-available-rebates .columns.asymmetrical > div:first-of-type form {
	margin-bottom: 94px;
	margin-bottom: 9.4rem;
	margin-top: 40px;
	margin-top: 4rem;
}
#body.find-available-rebates .columns.asymmetrical > div:first-of-type form > div.fieldset:last-of-type {
	margin-top: 51px;
	margin-top: 5.1rem;
}
#body.find-available-rebates .columns.asymmetrical > div:first-of-type form[data-step="1"] > div.fieldset:last-of-type,
#body.find-a-contractor form > div.fieldset:last-of-type {
	margin-top: 39px;
	margin-top: 3.9rem;
}
#body.find-a-contractor form div.fieldset.checkboxes div.fieldset:last-of-type {
	margin-top: 0;
}
#body.find-available-rebates .columns.asymmetrical > div:first-of-type form .button + button,
#body.find-available-rebates .columns.asymmetrical > div:first-of-type form button + button {
	margin-left: 17px;
	margin-left: 1.7rem;
}
#body.find-available-rebates .columns.asymmetrical > div {
	
}
#body.find-available-rebates .columns.asymmetrical > div:last-of-type:not(.finder.results *) {
	box-shadow: 0 2px 7px 0 rgba(0,0,0,0.24);
	box-shadow: 0 0.2rem 0.7rem 0 rgba(0,0,0,0.24);
	border-radius: 6px;
	border-radius: 0.6rem;
	color: #3A4030;
	font-size: 16px;
	font-size: 1.6rem;
}
#body.find-available-rebates .columns.asymmetrical > div:last-of-type:not(.finder.results *) h2 {
	background-color: #5E9100;
	background-color: #558300; /* improved contrast */
	color: white;
	border-radius: 6px 6px 0 0;
	border-radius: 0.6rem 0.6rem 0 0;
	font-size: 15px;
	font-size: 1.5rem;
	letter-spacing: 0.05333333333333333333333333333333em;
	text-transform: uppercase;
	padding-left: 65px;
	padding-left: 6.5rem;
	padding-left: 30px;
	padding-left: 3rem;
	padding-right: 30px;
	padding-right: 3rem;
	line-height: 1;
	padding-top: 20px;
	padding-top: 2rem;
	padding-bottom: 20px;
	padding-bottom: 2rem;
	padding-top: 14px;
	padding-top: 1.4rem;
	padding-bottom: 14px;
	padding-bottom: 1.4rem;
	margin: 0;
	position: relative;
	border-bottom: 5px solid #77B800;
	border-bottom: 0.5rem solid #77B800;
}
#body.find-available-rebates .columns.asymmetrical > div:last-of-type:not(.finder.results *) h2 svg {
	position: absolute;
	top: 1.5px;
	top: 0.15rem;
	left: 18px;
	left: 1.8rem;
	margin: 0;
}
#body.find-available-rebates .columns.asymmetrical > div:last-of-type:not(.finder.results *) h2 img {
	width: auto;
	height: 27px;
	vertical-align: middle;
	margin-right: 11px;
	margin-right: 1.1rem;
}
#body.find-available-rebates .columns.asymmetrical > div:last-of-type:not(.finder.results *) > div {
	padding: 30px;
	padding: 3rem;
	padding-bottom: 10px;
	padding-bottom: 1rem;
}
#body.find-available-rebates .columns.asymmetrical > div:last-of-type:not(.finder.results *) > div a {
	text-transform: uppercase;
	font-size: 13px;
	font-size: 1.3rem;
	text-decoration: none;
}
#body.find-available-rebates .columns.asymmetrical > div:last-of-type:not(.finder.results *) > div p {
	line-height: 1.375;
}
#body.find-available-rebates .columns.asymmetrical > div:last-of-type:not(.finder.results *) > div a:link,
#body.find-available-rebates .columns.asymmetrical > div:last-of-type:not(.finder.results *) > div a:visited {
	color: #5E9100;
	/* there is no link here now, so won't bother changing it, but if it came back, maybe to go with 558300 for higher contrast */
}
#body.find-available-rebates .columns.asymmetrical > div:last-of-type:not(.finder.results *) > div a:hover,
#body.find-available-rebates .columns.asymmetrical > div:last-of-type:not(.finder.results *) > div a:active,
#body.find-available-rebates .columns.asymmetrical > div:last-of-type:not(.finder.results *) > div a:focus {
	color: #77B800;
}
#body.find-available-rebates .finder.results .columns.asymmetrical > div:last-of-type > div:first-of-type {
	text-align: right;
	font-size: 0;
	margin-bottom: 0;
}
#body.find-available-rebates .finder.results .columns.asymmetrical > div:last-of-type > div:first-of-type .button {
	margin-bottom: 20px;
	margin-bottom: 2rem;
}
#body.find-available-rebates .finder.results .columns.asymmetrical > div:last-of-type > div:first-of-type .button.secondary {
	/* margin-right: 20px;
	margin-bottom: 20px; */
	margin-bottom: 20px;
	margin-bottom: 2rem;
}
#body.find-available-rebates .finder.results .columns.asymmetrical > div:last-of-type > div:first-of-type .button:last-of-type {
	/* noW handled server-side */
	/* display: none; */
	margin-left: 20px;
	margin-left: 2.0rem;
}
#body.find-available-rebates .finder.results .columns.asymmetrical > div:last-of-type div.fieldset {
	text-align: right;
	font-size: 0;
}
#body.find-available-rebates .finder.results .columns.asymmetrical > div:last-of-type div.fieldset label {
	font-size: 11px;
	font-size: 1.1rem;
	text-transform: uppercase;
	color: #333333;
	line-height: 1.3636363636363636363636363636364;
	letter-spacing: 0.0019em;
	padding-top: 17px;
	padding-top: 1.7rem;
	padding-bottom: 17px;
	padding-bottom: 1.7rem;
	display: inline-block;
	vertical-align: bottom;
	margin-right: 20px;
	margin-right: 2rem;
	font-family: "Proxima Nova W01 Semibold";
	font-weight: normal;
}
#body.find-available-rebates .finder.results .columns.asymmetrical > div:last-of-type div.fieldset select {
	 width: 71.25%;
	 font-size: 15px;
	 font-size: 1.5rem;
 }
@media screen and (min-width: 1024px) {
	.finder,
	.pattern {
		margin-top: -88px;
		margin-top: -8.8rem;
		position: relative;
	}
	.finder::before,
	.pattern::before {
		display: block;
		content: "";
		background-color: #0077C8;
		position: absolute;
		top: -16px;
		top: -1.6rem;
		height: 16px;
		height: 1.6rem;
		top: -16px;
		top: -1.6rem;
		left: 0;
		right: 0;
		background: linear-gradient(180deg, #00AFE6 0%, #0077C8 100%);
	}
	#body.find-available-rebates .finder {
		padding-left: 100px;
		padding-left: 10rem;
		padding-right: 100px;
		padding-right: 10rem;
		max-width: 840px;
		max-width: 84rem;
		padding-top: 41px;
		padding-top: 4.1rem;
	}
	.tabcordion .tabs {
		display: block;
	}
	.tabcordion .accordions {
		width: 79.3859649122807%;
		background-color: white;
		float: left;
	}
	.tabcordion .accordions .switch {
		display: none;
	}
	#body.find-available-rebates .columns.asymmetrical > div {
		width: 400px;
		width: 40rem;
		float: left;
	}
	#body.find-available-rebates .columns.asymmetrical > div:first-of-type p:not(.intro) {
		font-size: 16px;
		font-size: 1.6rem;
		line-height: 1.375;
	}
	#body.find-available-rebates .finder.results .columns.asymmetrical > div {
		width: 462px;
		width: 46.2rem;
	}
	#body.find-available-rebates .columns.asymmetrical > div:last-of-type {
		width: 301px;
		width: 30.1rem;
		float: right;
	}
	#body.find-available-rebates .finder.results .columns.asymmetrical > div:last-of-type {
		width: 314px;
		width: 31.4rem;
	}
	#body.find-available-rebates .finder.results .columns.asymmetrical > div:last-of-type > div:first-of-type {
		margin-bottom: 100px;
		margin-bottom: 10rem;
	}
}
#body.find-a-contractor .finder {
	padding: 0;
}
#body.find-a-contractor .finder > div {
	padding: 33px;
	padding: 3.3rem;
}
#body.find-a-contractor .finder.results > div:first-of-type {
	margin-bottom: 0;
	padding-bottom: 0;
}
#body.find-a-contractor .finder.results > div:first-of-type > div:first-of-type {
	margin-bottom: 40px;
	margin-bottom: 4rem;
}
#body.find-a-contractor .finder.results > div:first-of-type > div:last-of-type {
	text-align: right;
	font-size: 0;
	margin-bottom: 0;
}
#body.find-a-contractor .finder.results > div:first-of-type > div:last-of-type .button {
	/* margin-bottom: 20px; */
}
#body.find-a-contractor .finder.results > div:first-of-type > div:last-of-type .button.secondary {
	/* margin-right: 20px; */
}
#body.find-a-contractor .finder.results > div:first-of-type > div:last-of-type .button:last-of-type {
	/* display: none; */
	margin-left: 20px;
	margin-left: 2rem;
}

#body.find-a-contractor .finder.results > div:nth-of-type(2) {
	margin-bottom: 0;
}
#body.find-a-contractor .finder.results > div:nth-of-type(2) > div.fieldset:first-of-type {
	
}
#body.find-a-contractor .finder.results > div:nth-of-type(2) > div.fieldset:last-of-type {
	
}
#body.find-a-contractor .finder.results > div:nth-of-type(2) > div.fieldset > label {
	font-size: 11px;
	font-size: 1.1rem;
	text-transform: uppercase;
	color: #333333;
	line-height: 1.3636363636363636363636363636364;
	letter-spacing: 0.01909090909090909090909090909091em;
	font-family: "Proxima Nova W01 Semibold";
	font-weight: normal;
}

#body.find-a-contractor form {
	background-color: #F3F2F2;
	padding: 33px;
	padding: 3.3rem;
	padding-top: 43px;
	padding-top: 4.3rem;
	padding-bottom: 67px;
	padding-bottom: 6.7rem;
	margin-bottom: 0;
}
#body.find-a-contractor form h2 {
	color: #0B5584;
	font-size: 21px;
	font-size: 2.1rem;
	line-height: 1.1904761904761904761904761904762;
	letter-spacing: normal;
	margin-bottom: 35px;
	margin-bottom: 3.5rem;
}
#body.find-a-contractor form h3 {
	color: #212121;
	font-family: "Proxima Nova W01 Semibold";
	font-weight: normal;
	line-height: 1.5;
	letter-spacing: 0.001875em;
	font-size: 16px;
	font-size: 1.6rem;
}
#body.find-a-contractor form div.fieldset + h3 {
	margin-top: 40px;
	margin-top: 4rem;
}
#body.find-a-contractor form div.fieldset.checkboxes {
	margin-bottom: 40px;
	margin-bottom: 4rem;
	margin-bottom: 0;
}
#body.find-a-contractor form div.fieldset.checkboxes > div.fieldset {
	font-size: 0;
	position: relative;
}
#body.find-a-contractor form div.fieldset.checkboxes > div.fieldset input[type="checkbox"] {
	position: absolute;
	left: 0;
	top: 1px;
	top: 0.1rem;
}
#body.find-a-contractor form div.fieldset.checkboxes > div.fieldset label {
	margin-left: 21px;
	margin-left: 2.1rem;
	padding-right: 31.5px;
	padding-right: 3.15rem;
	line-height: 1;
	font-size: 15px;
	font-size: 1.5rem;
	color: #212121;
}
@media screen and (min-width: 1024px) {
	#body.find-a-contractor .finder {
		padding-left: 100px;
		padding-left: 10rem;
		padding-right: 100px;
		padding-right: 10rem;
		max-width: 840px;
		max-width: 84rem;
	}
	#body.find-a-contractor form {
		padding-left: 100px;
		padding-left: 10rem;
		padding-right: 100px;
		padding-right: 10rem;
		padding-top: 56px;
		padding-top: 5.6rem;
		max-width: 639px;
		max-width: 63.9rem;
		margin-left: auto;
		margin-right: auto;
		border-radius: 11px;
		border-radius: 1.1rem;
		border: 1px solid #DADADA;
		border: 0.1rem solid #DADADA;
		margin-bottom: 120px;
		margin-bottom: 12rem;
	}
	#body.find-a-contractor .finder > div {
		text-align: center;
		max-width: 492px;
		max-width: 49.2rem;
		margin-left: auto;
		margin-right: auto;
		padding-left: 0;
		padding-right: 0;
		/* padding-bottom: 0; */
		padding-bottom: 13px;
		padding-bottom: 1.3rem;
		padding-top: 41px;
		padding-top: 4.1rem;
	}
	#body.find-a-contractor .finder > div + div {
		padding-top: 0;
	}
	#body.find-a-contractor .finder.results > div {
		text-align: left;
		max-width: none;
	}
	#body.find-a-contractor .finder.results > div:last-of-type {
		max-width: 729px;
		max-width: 72.9rem;
	}

	#body.find-a-contractor .finder.results > div:first-of-type > div:first-of-type {
		width: 397px;
		width: 39.7rem;
		float: left;
	}
	#body.find-a-contractor .finder.results > div:first-of-type > div:last-of-type {
		width: 314px;
		width: 31.4rem;
		float: right;
	}

	#body.find-a-contractor .finder.results > div:nth-of-type(2) > div.fieldset:first-of-type {
		width: 313px;
		width: 31.3rem;
		float: left;
	}
	#body.find-a-contractor .finder.results > div:nth-of-type(2) > div.fieldset:last-of-type {
		width: 313px;
		width: 31.3rem;
		float: right;
	}

	#body.find-a-contractor .finder > div h1::after {
		margin-left: auto;
		margin-right: auto;
	}
	#body.find-a-contractor .finder.results > div h1::after {
		margin-left: 0;
		margin-right: 0;
	}
	#body.find-a-contractor form div.fieldset.checkboxes > div.fieldset {
		width: 50%;
		float: left;
	}
	#body.find-a-contractor form div.fieldset.checkboxes > div.fieldset:nth-of-type(odd) {
		clear: left;
	}
}
#find-a-contractor-results,
#find-available-rebates-results {
	max-width: 760px;
	max-width: 76rem;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0;
}
#find-a-contractor-results > div,
#find-available-rebates-results > div {
	background-color: white;
	border-radius: 6px;
	border-radius: 0.6rem;
	box-shadow: 0 2px 7px 0 rgba(0,0,0,0.24);
	box-shadow: 0 0.2rem 0.7rem 0 rgba(0,0,0,0.24);
	margin-bottom: 37px;
	margin-bottom: 3.7rem;
}
#content #find-a-contractor-results > div[data-communityCampaign="0"] a {
	font-family: "Proxima Nova W01 Regular";
	font-weight: normal;
}
#find-a-contractor-results h2,
#find-available-rebates-results h2 {
	background-color: #0077C8;
	padding-left: 30px;
	padding-left: 3rem;
	padding-right: 30px;
	padding-right: 3rem;
	padding-top: 18px;
	padding-top: 1.8rem;
	padding-bottom: 17px;
	padding-bottom: 1.7rem;
	border-bottom: 5px solid #002D72;
	border-bottom: 0.5rem solid #002D72;
	border-radius: 6px 6px 0 0;
	border-radius: 0.6rem 0.6rem 0 0;
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.2;
	letter-spacing: 0.06666666666666666666666666666667em;
	text-transform: uppercase;
	color: white;
	margin-bottom: 0;
}
#find-a-contractor-results [data-communityCampaign="1"] h2,
#find-available-rebates-results h2 {
	display: flex;
	align-items: center;
	min-height: 2.4em;
	justify-content: space-between;
}
#find-a-contractor-results h2 span.contact {
	font-size: 14px;
	font-size: 1.4rem;
	line-height: 1.2142857142857142857142857142857;
	text-transform: none;
	font-family: "Proxima Nova W01 Regular";
	font-weight: normal;
	display: block;
	letter-spacing: 0.03785714285714285714285714285714em;
}
#find-available-rebates-results h2 img {
	max-width: 78px;
	max-width: 7.8rem;
	max-height: 32px;
	max-height: 3.2rem;
	max-width: 90px;
	max-width: 9rem;
	max-height: 75px;
	max-height: 7.5rem;
	float: right;
	margin-left: 20px;
	margin-left: 2rem;
	/* -webkit-filter: brightness(0) invert(1);
	filter: brightness(0) invert(1); */
	width: auto;
	height: auto;
	border-radius: 4.55px;
	border-radius: 0.455rem;
}
#find-a-contractor-results > div > div {
	margin-bottom: 0;
}
#find-a-contractor-results > div[data-communityCampaign="1"] > div,
#find-available-rebates-results > div > div {
	padding-left: 30px;
	padding-left: 3rem;
	padding-right: 30px;
	padding-right: 3rem;
	padding-top: 18px;
	padding-top: 1.8rem;
	padding-bottom: 18px;
	padding-bottom: 1.8rem;
	margin-bottom: 0;
}
#find-a-contractor-results > div > div > div {
	padding-left: 30px;
	padding-left: 3rem;
	padding-right: 30px;
	padding-right: 3rem;
	padding-top: 18px;
	padding-top: 1.8rem;
	padding-bottom: 18px;
	padding-bottom: 1.8rem;
	border-bottom: 1px solid #F3F2F2;
	border-bottom: 0.1rem solid #F3F2F2;
	margin-bottom: 0;
}
#find-a-contractor-results > div > div > div:last-of-type {
	border-bottom: none;
}
#find-a-contractor-results h3,
#find-available-rebates-results h3 {
	font-size: 12px;
	font-size: 1.2rem;
	letter-spacing: 0.0044em;
	text-transform: uppercase;
	color: #242424;
	margin-bottom: 0;
	line-height: 1.5;
}
#find-available-rebates-results h3,
#find-a-contractor-results [data-communityCampaign="1"] h3 {
	font-size: 17px;
	font-size: 1.7rem;
	margin-bottom: 18px;
	margin-bottom: 1.8rem;
}
#find-available-rebates-results p {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.4375;
	letter-spacing: normal;
	color: #242424;
}
#find-a-contractor-results [data-communityCampaign="0"] p {
	margin-bottom: 0;
	font-size: 14px;
	line-height: 1.2857142857142857142857142857143;
	letter-spacing: 0.04357142857142857142857142857143em;
	color: #242424;
	word-break: break-word;
}
#find-a-contractor-results [data-communityCampaign="1"] p {
	font-size: 16px;
	line-height: 1.4375;
	letter-spacing: normal;
	color: #242424;
}
#find-a-contractor-results [data-communityCampaign="1"] a.external,
#find-available-rebates-results a.external {
	text-transform: uppercase;
	font-size: 13px;
	font-size: 1.3rem;
	letter-spacing: 0.0018em;
	text-decoration: none;
	font-family: "Proxima Nova W01 Semibold";
	font-weight: normal;
}
#find-available-rebates-results a.external:link,
#find-available-rebates-results a.external:visited {
	color: #0077C8;
}
#find-available-rebates-results a.external {
	float: left;
	margin-bottom: 20px;
	margin-bottom: 2rem;
}
#find-available-rebates-results a.external:hover,
#find-available-rebates-results a.external:active,
#find-available-rebates-results a.external:focus {
	color: #233E90;
}
#find-available-rebates-results .button {
	float: right;
	margin-left: 20px;
	margin-left: 2rem;
	font-size: 13px;
	font-size: 1.3rem;
}
@media screen and (min-width: 1024px) {
	#find-a-contractor-results > div,
	#find-available-rebates-results > div {
		width: 47.37%;
		float: left;
		margin-right: 5.26%;
	}
	#find-a-contractor-results > div[data-communitycampaign="1"],
	#find-available-rebates-results > div[data-typeserial="1"] {
		width: 65%;
		/* margin-right: 0; */
		height: auto !important; /* !important to override the inline style via JS */
	}
	#find-a-contractor-results > div:nth-of-type(even),
	#find-available-rebates-results > div:nth-of-type(even) {
		/* float: right; */
		margin-right: 0;
	}
	#find-a-contractor-results > div[data-communitycampaign="1"] ~ div,
	#find-available-rebates-results > div[data-typeserial="1"] ~ div {
		margin-right: 5.26%;
	}
	#find-a-contractor-results > div[data-communitycampaign="1"] ~ div:nth-of-type(odd),
	#find-available-rebates-results > div[data-typeserial="1"] ~ div:nth-of-type(odd) {
		margin-right: 0;
	}
	#find-a-contractor-results .leftColumn,
	#find-available-rebates-results .leftColumn {
		margin-right: 5.26% !important;
	}
	#find-a-contractor-results .rightColumn,
	#find-available-rebates-results .rightColumn {
		margin-right: 0 !important;
	}
	#find-a-contractor-results > div.shown[data-communitycampaign="1"] ~ .leftColumn {
		margin-right: 0 !important;
	}
	#find-a-contractor-results > div.shown[data-communitycampaign="1"] ~ .rightColumn {
		margin-right: 5.26% !important;
	}
}

.partners:not(#body) {
	padding-top: 36px;
	padding-top: 3.6rem;
	padding-bottom: 36px;
	padding-bottom: 3.6rem;
	padding-left: 20px;
	padding-left: 2rem;
	padding-right: 20px;
	padding-right: 2rem;
}
.partners:not(#body) h2,
.partners:not(#body) h3 {
	text-align: center;
}
.partners:not(#body) > div {
	margin-left: auto;
	margin-right: auto;
	max-width: 1040px;
	max-width: 104rem;
	max-width: 640px;
	max-width: 64rem;
	margin-bottom: 0;
	font-size: 0;
	letter-spacing: normal;
	text-align: center;
}
.partners:not(#body) > div > div {
	text-align: center;
	/* margin-bottom: 40px;
	margin-bottom: 4rem; */
	font-size: 20px;
	font-size: 2rem;

	display: inline-block;
	width: 50%;
	margin-bottom: 0;
}
.partners:not(#body) > div:last-of-type > div {
	width: 62%;
}
.partners:not(#body) > div > div > div {
	position: relative;
	margin: 0;

	height: 0;
	padding-bottom: 37.56345177665%;
	padding-bottom: 62%;
}
.partners:not(#body) > div:last-of-type > div > div {
	padding-bottom: 25%;
}
.partners:not(#body) > div > div > div > a {
	display: block;
	border: 0;
	width: 100%;
	height: 100%;
	font-size: 0;
	text-decoration: none;
	font-size: 16px;
	font-size: 1.6rem;
	/* font-weight: bold; */
	font-family: "Proxima Nova W01 Bold";
	font-weight: normal;
	position: absolute;
}
.partners:not(#body) > div > div > div > a:hover {
	opacity: 0.77;
}
.partners:not(#body) > div > div > div > a::before {
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}
.partners:not(#body) > div > div > div > a > img {
	vertical-align: middle;
	max-width: 62%;
	width: auto;
	max-height: 62%;
	/* -webkit-filter: grayscale(100%); */ /* Safari 6.0 - 9.0 */
	/* filter: grayscale(100%); */
}
@media screen and (min-width: 480px) {
	/* .partners:not(#body) > div > div {
		display: inline-block;
		width: 50%;
		margin-bottom: 0;
	} */
	/* .partners:not(#body) > div > div > div {
		height: 0;
		padding-bottom: 37.56345177665%;
	} */
	/* .partners:not(#body) > div > div > div > a {
		position: absolute;
	} */
	/* .partners:not(#body) > div > div > div > a::before {
		content: "";
		display: inline-block;
		height: 100%;
		vertical-align: middle;
	} */
}
@media screen and (min-width: 640px) {
	.partners:not(#body) {
		padding-top: 60px;
		padding-top: 6rem;
		padding-bottom: 60px;
		padding-bottom: 6rem;
	}
}
@media screen and (min-width: 800px) {
	.partners:not(#body) > div > div {
		width: 33.333333333333333333333333333333333333333333%;
	}
}
/* @media screen and (min-width: 1160px) {
	.partners:not(#body) > div > div {
		width: 25%;
	}
} */


picture.bar {
	position: relative;
}
picture.bar::after {
	content: "";
	opacity: 0.65;
	display: block;
	background-color: #E5EEEE;
	position: absolute;
	height: 21px;
	height: 2.1rem;
	bottom: 0;
	right: 0;
	left: 0;
}
@media screen and (min-width: 1024px) {
	picture.bar {
		box-shadow: 0 2px 10px 0 rgba(0,0,0,0.14);
		box-shadow: 0 0.2rem 1rem 0 rgba(0,0,0,0.14);
	}
	picture.bar.mobile::before {
		content: "";
		background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.47) 100%);
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
	}
	picture.bar.mobile::after {
		display: none;
	}
}




#body.find-a-contractor .finder.results input[type=text] {
	background-image: url("/assets/icon_search.svg");
	background-repeat: no-repeat;
	background-size: auto 1em;
	background-position: right 23.5px bottom 50%;
	background-position: right 2.35rem bottom 50%;
}

.smallScreen {
	
}
.bigScreen {
	display: none;
}
@media screen and (min-width: 1024px) {
	.smallScreen {
		display: none;
	}
	.bigScreen {
		display: block;
	}
}

#skip-to-content {
	background: white;
	color: #233E90;
	font-family: "Proxima Nova W01 Bold";
	padding-left: 1rem;
	padding-right: 1rem;
	position: absolute;
	transform: translateY(-100%);
	text-decoration: none;
	border: 1px solid #233E90;
	border-left: none;
	border-top: none;
}
#skip-to-content:focus {
	transform: translateY(0%);
}

#gTranslateWidgetSecondary {
	display: none;
	max-width: 1160px;
	max-width: 116rem;
	margin-left: auto;
	margin-right: auto;
}
#gTranslateWidgetSecondary select {
	float: right;
	max-width: 280px;
}
@media screen and (min-width: 1024px) {
	#gTranslateWidget {
		float: right;
		margin-left: 20px;
		margin-left: 2rem;
	}
	#body.index #gTranslateWidget,
	#body.heat-pump-planner #gTranslateWidget {
		display: none;
	}
	#gTranslateWidgetSecondary {
		display: block;
	}
}

progress {
	margin-bottom: 7px;
	margin-bottom: 0.7rem;
}
progress + div {

}
progress + div > span {
	float: left;
	font-size: 12px;
	font-size: 1.2rem;
	color: #3A4030;
	line-height: 1.1666666666666666666666666666667;
	font-family: "Proxima Nova W01 Medium";
	font-weight: normal;
}
progress + div > span:last-of-type {
	float: right;
}
@media screen and (min-width: 1024px) {
	progress + div > span {
		font-size: 14px;
		line-height: 1.2142857142857142857142857142857;
	}
}
#body.heat-pump-planner-questions progress + div {
	text-align: center;
	font-size: 12px;
	font-style: italic;
	color: black;
}





#viewMoreAndCounts,
#viewMoreAndCounts p {
	text-align: center;
}
#viewMoreAndCounts > p:first-of-type {
	font-size: 14px;
	font-size: 1.4rem;
	color: #333333;
	line-height: 1.3571428571428571428571428571429;
	margin-bottom: 29px;
}
#viewMoreAndCounts > p:first-of-type span {
	font-family: "Proxima Nova W01 Bold";
}




.disclaimer {
	font-style: italic;
	font-size: 12px !important;
	font-size: 1.2rem !important;
}
#body.find-a-contractor .disclaimer {
	margin-top: 42px;
	margin-top: 4.2rem;
}




.contextual {
	margin: 0;
	padding: 0;
}




.screen-readers-only {
	position: absolute;
	left: -10000px;
	top: auto;
	width: 1px;
	height: 1px;
	overflow: hidden;
}




#modal.email-this-list #modal-question::before {
	content: "\f0e0";
}
#modal.email-this-list #modal-answer label {
	margin-bottom: 7px;
	margin-bottom: 0.7rem;
	font-size: 15px;
	font-size: 1.5rem;
	color: #212121;
}
#modal.email-this-list #modal-answer form div.fieldset:last-of-type{
	margin-top: 44px;
	margin-top: 4.4rem;
}
#body.find-a-contractor .finder hr + div:not(#find-a-contractor-results) {
	padding-top: 29px;
	padding-top: 2.9rem;
	padding-bottom: 0;
}
@media screen and (min-width: 1024px) {
	#body.find-a-contractor .finder hr + div:not(#find-a-contractor-results) {
		padding-top: 9px;
		padding-top: 0.9rem;
		padding-bottom: 21px;
		padding-bottom: 2.1rem;
	}
}





.embed-container {
	overflow: hidden;
	padding-top: 56.25%; /* 16:9 */
	position: relative;
}
.embed-container.four-by-three {
	padding-top: 75%;
}
.embed-container iframe {
	border: 0;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}
#calendar-google-embed {
	padding-top: 177.87%;
}
#calendar-google-embed iframe.desktop {
	display: none;
}
@media screen and (min-width: 1024px) {
	#calendar-google-embed {
		padding-top: 56.25%;
	}
	#calendar-google-embed iframe.desktop {
		display: block;
	}
	#calendar-google-embed iframe.mobile {
		display: none;
	}
}
#body.heat-pump-planner-questions .finder form .fieldset.options {
	background-color: fuchsia;
	font-size: 0;
	text-align: center;	
}
#body.heat-pump-planner-questions .finder form .fieldset.options > div {
	background-color: pink;
	margin: 0;
	width: calc(50% - 1px);
	display: inline-block;
	font-size: initial;
	padding-top: 16.5px;
	padding-bottom: 16.5px;
	border-right: 1px solid #979797;
	border-bottom: 1px solid #979797;
	border-color: purple;
	vertical-align: bottom;
	position: relative;
}
#body.heat-pump-planner-questions .finder form .fieldset.options > div:nth-of-type(even) {
	border-right: 0;
}
#body.heat-pump-planner-questions .finder form .fieldset.options > div:last-of-type {
	border-right: 0;
	border-bottom: 0;
}
#body.heat-pump-planner-questions .finder form .fieldset.options > div > div {
	margin: 0;
	background-color: chartreuse;
}
#body.heat-pump-planner-questions .finder form .fieldset.options > div > div.image {
	margin-bottom: 16.5px;
	width: 60%;
	margin-left: auto;
	margin-right: auto;
	padding-top: 65%;
	position: relative;
}
#body.heat-pump-planner-questions .finder form .fieldset.options > div > div.image img {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	line-height: 1;
}
#body.heat-pump-planner-questions .finder form .fieldset.options > div > div.image a {
	position: absolute;
	bottom: 0;
	right: 0;
	display: block;
	line-height: 1;
	text-decoration: none;
}
#body.heat-pump-planner-questions .finder form .fieldset.options > div > div.image a::before {
	content: "\f05a";
	font-family: "Font Awesome\ 5 Free";
	font-weight: 900;
}
#body.heat-pump-planner-questions .finder form .fieldset.options > div > button {
	margin-left: 13.5px;
	margin-right: 13.5px;
	font-size: 12px;
	text-transform: none;
	font-weight: normal;
	line-height: 1.375;
	font-family: "Proxima Nova W01 Regular", "Proxima Nova", "Montserrat", "Helvetica Neue", Helvetica, Arial, sans-serif;
	color: #212121;
	background-color: white;
	position: relative;
	padding-left: calc(16px + 1.6em);
}
#body.heat-pump-planner-questions .finder form .fieldset.options > div > button::before {
	content: "\f0c8";
	font-family: "Font Awesome\ 5 Free";
	font-weight: 400;
	position: absolute;
	left: 16px;
	top: 0;
	bottom: 0;
	line-height: 1em;
	color: #0077C8;
	margin: auto;
	height: 1em;
}
#body.heat-pump-planner-questions .finder form .fieldset.options > div > button.active {
	background: rgb(71,120,36);
	background: linear-gradient(180deg, rgba(71,120,36,1) 0%, rgba(191,215,49,1) 100%);
	color: white;
	/* box-shadow: */
}
#body.heat-pump-planner-questions .finder form .fieldset.options > div > button.active::before {
	color: white;
	content: "\f14a";
	font-weight: 900;
	background: radial-gradient(circle, rgba(0,119,200,1) 0%, rgba(0,119,200,1) 50%, rgba(0,119,200,0) 50%, rgba(0,119,200,0) 100%);
	border: none;
}
@media screen and (min-width: 1024px) {
	#body.heat-pump-planner-questions .finder form .fieldset.options > div {
		width: calc(33.3333333333333333% - 1px);
		border-right: 1px solid #979797;
		border-color: purple;
	}
	#body.heat-pump-planner-questions .finder form[data-step="2"] .fieldset.options > div {
		width: calc(50% - 1px);
	}
	#body.heat-pump-planner-questions .finder form[data-step="2"] .fieldset.options > div:nth-of-type(2) {
		border-right: 0;
	}
	#body.heat-pump-planner-questions .finder form[data-step="2"] .fieldset.options > div:nth-of-type(3) {
		width: calc(60% - 1px);
		border-right: 1px solid #979797;
		border-bottom: 0;
	}
	#body.heat-pump-planner-questions .finder form[data-step="2"] .fieldset.options > div:nth-of-type(3) .image {
		padding-top: 39.96468832891247%;
	}
	#body.heat-pump-planner-questions .finder form[data-step="2"] .fieldset.options > div:nth-of-type(4) {
		width: calc(40% - 1px);
		border-right: 0;
	}
	#body.heat-pump-planner-questions .finder form[data-step="2"] .fieldset.options > div:nth-of-type(4) .image {
		padding-top: 60%;
	} 
	#body.heat-pump-planner-questions .finder form .fieldset.options > div:nth-of-type(even) {
		border-right: 1px solid #979797;
		border-color: purple;
	}
	#body.heat-pump-planner-questions .finder form .fieldset.options > div:nth-of-type(3) {
		border-right: 0;
	}
	#body.heat-pump-planner-questions .finder form .fieldset.options > div:nth-of-type(4) {
		border-bottom: 0;
	}
}


/* TEMPORARY! */
#gTranslateWidget,
#gTranslateWidgetSecondary {
	display: none !important;
}




.icon {
	font-family: "Font Awesome\ 5 Free" !important;
	font-weight: 900 !important;
}
.icon.file-arrow-down::before {
	content: "\f56d";
}


table.desktop {
	display: none;
}
@media screen and (min-width: 1024px) {
	table.desktop {
		display: table;
	}
	table.mobile {
		display: none;
	}
}

ul.columns {
	font-size: 0;
	letter-spacing: normal; /* needed? */
}
ul.columns li {
	margin-right: 2.618rem;
	float: left;
	padding-left: 0 !important;
	font-size: initial;
	margin-bottom: 2rem;
	display: inline-block;
}
ul.columns.one-and-three li {
	width: 100%;
	margin-right: 0;
}
ul.columns.two-and-four li,
ul.columns.two-and-three li {
	width: calc((100% - 2.619rem) / 2);
}
ul.columns.two-and-four li:nth-of-type(even),
ul.columns.two-and-three li:nth-of-type(even) {
	margin-right: 0;
}
ul.columns li::before {
	display: none !important;
}
ul.columns li a {
	display: block;
	text-align: center;
}
ul.columns li img + span {
	display: block;
	text-align: center;
}
@media screen and (min-width: 1024px) {
	ul.columns.two-and-four li:nth-of-type(even),
	ul.columns.one-and-three li,
	ul.columns.two-and-three li:nth-of-type(even) {
		margin-right: 2.618rem;
	}
	ul.columns.two-and-four li {
		width: calc((100% - 7.857rem) / 4);
	}
	ul.columns.one-and-three li,
	ul.columns.two-and-three li {
		width: calc((100% - 5.238rem) / 3);
	}
	ul.columns.two-and-four li:nth-of-type(even) {
		margin-right: 2.618rem;
	}
	ul.columns.two-and-four li:nth-of-type(4n) {
		margin-right: 0;
	}
	ul.columns.one-and-three li:nth-of-type(3n),
	ul.columns.two-and-three li:nth-of-type(3n) {
		margin-right: 0;
	}
	ul.columns.two-and-three li:nth-of-type(4n) {
		clear: left;
	}
}


.utilities {
	padding-top: 36px;
	padding-top: 3.6rem;
	padding-bottom: 36px;
	padding-bottom: 3.6rem;
	padding-left: 20px;
	padding-left: 2rem;
	padding-right: 20px;
	padding-right: 2rem;
}
.utilities > div {
	margin-left: auto;
	margin-right: auto;
	max-width: 1040px;
	max-width: 104rem;
	max-width: 640px;
	max-width: 64rem;
	margin-bottom: 0;
	font-size: 0;
	letter-spacing: normal;
	text-align: center;
}
.utilities > div > div {
	text-align: center;
	/* margin-bottom: 40px;
	margin-bottom: 4rem; */
	font-size: 20px;
	font-size: 2rem;

	display: inline-block;
	width: 50%;
	margin-bottom: 0;
}
.utilities > div > div:last-of-type {
	width: 62%;
}
.utilities > div > div > div {
	position: relative;
	margin: 0;

	height: 0;
	padding-bottom: 37.56345177665%;
	padding-bottom: 62%;
}
.utilities > div > div:last-of-type > div {
	padding-bottom: 25%;
}
.utilities > div > div > div > a {
	display: block;
	border: 0;
	width: 100%;
	height: 100%;
	font-size: 0;
	text-decoration: none;
	font-size: 16px;
	font-size: 1.6rem;
	/* font-weight: bold; */
	font-family: "Proxima Nova W01 Bold";
	font-weight: normal;
	position: absolute;
}
.utilities > div > div > div > a:hover {
	opacity: 0.77;
}
.utilities > div > div > div > a::before {
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}
.utilities > div > div > div > a > img {
	vertical-align: middle;
	max-width: 62%;
	width: auto;
	max-height: 62%;
	/* -webkit-filter: grayscale(100%); */ /* Safari 6.0 - 9.0 */
	/* filter: grayscale(100%); */
}
@media screen and (min-width: 480px) {
	/* .utilities > div > div {
		display: inline-block;
		width: 50%;
		margin-bottom: 0;
	} */
	/* .utilities > div > div > div {
		height: 0;
		padding-bottom: 37.56345177665%;
	} */
	/* .utilities > div > div > div > a {
		position: absolute;
	} */
	/* .sponsors > div > div > div > a::before {
		content: "";
		display: inline-block;
		height: 100%;
		vertical-align: middle;
	} */
}
@media screen and (min-width: 640px) {
	.utilities {
		padding-top: 60px;
		padding-top: 6rem;
		padding-bottom: 60px;
		padding-bottom: 6rem;
	}
}
@media screen and (min-width: 800px) {
	.utilities > div > div {
		width: 33.333333333333333333333333333333333333333333%;
	}
}
/* @media screen and (min-width: 1160px) {
	.utilities > div > div {
		width: 25%;
	}
} */




.videos {
	margin-bottom: 20px;
}
.videos .primary {
	margin-bottom: 20px;
}
.videos .primary > div:last-of-type .scrollable-on-mobile {
	height: 8.625em; /* six lines at 1.4375 line-height */
	overflow: hidden;
	/* padding-top: 56.25%; */ /* 16:9 */
	position: relative;
	margin-bottom: 0;
}
.videos .primary > div:last-of-type .scrollable-on-mobile > div {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	overflow-y: auto;
	scrollbar-gutter: stable;
	margin-bottom: 0;
}
.videos .secondary {
	position: relative;
}
.videos .secondary > a:first-of-type,
.videos .secondary > a:last-of-type {
	height: 66px;
	height: 6.6rem;
	width: 24px;
	width: 2.4rem;
	background-color: #0077C8;
	background: linear-gradient(0deg, #0077C8 0%, #00AEE5 100%);
	position: absolute;
	top: calc(50% - 33px);
	bottom: calc(50% - 33px);
	text-align: center;
	margin-right: 0;
	z-index: 999;
}
.videos .secondary a.disabled {
	opacity: 0.77;
}
.videos .secondary[data-count="2"] > a:last-of-type {
	opacity: 0.77;
}
.videos .secondary > a:first-of-type {
	left: -33px;
	border-radius: 0 8px 8px 0;
	border-radius: 0 0.8rem 0.8rem 0;
}
.videos .secondary > a:last-of-type {
	right: -33px;
	border-radius: 8px 0 0 8px;
	border-radius: 0.8rem 0 0 0.8rem;
}
.videos .secondary > a:first-of-type::before,
.videos .secondary > a:last-of-type::before {
	font-family: "Font Awesome\ 5 Free";
	font-weight: 900;
	content: "\f104"; /* left angle */
	display: inline-block;
	color: white;
	line-height: 66px;
	line-height: 6.6rem;
}
.videos .secondary > a:last-of-type::before {
	content: "\f105"; /* right angle */
}
.videos .secondary > a:hover,
.videos .secondary > a.disabled:hover {
	opacity: 1.0 !important;
	background: #1EA9E1 !important;
}
.videos .secondary > a:hover::before,
.videos .secondary > a:focus::before {
	color: #F3DD6D;
}
.videos .secondary .scrollable {
	overflow-x: auto;
	white-space: nowrap;
	font-size: 0;
	letter-spacing: 0;
	margin-bottom: 0;
}
	/* Hide scrollbar for Chrome, Safari and Opera */
.videos .secondary .scrollable::-webkit-scrollbar {
	display: none;
}
/* Hide scrollbar for IE, Edge and Firefox */
.videos .secondary .scrollable {
	-ms-overflow-style: none;  /* IE and Edge */
	scrollbar-width: none;  /* Firefox */
}
.videos .secondary .scrollable a {
	display: inline-block;
	width: calc((100% - 20px) / 2);
	margin-right: 20px;
	/* float: left; */
	white-space: normal;
	vertical-align: text-top;
	text-decoration: none;
	font-size: 16px;
}
.videos .secondary .scrollable a:focus {
	outline: none;
	text-decoration: underline;
}
.videos .secondary .scrollable a:last-of-type {
	margin-right: 0;
}
.videos .secondary .scrollable a h4 {
	font-size: 16px;
	text-transform: none;
}
.videos .details {
	display: none;
}
@media screen and (min-width: 1024px) {
	.videos .primary {
		position: relative;
	}
	.videos .primary > div {
		margin-bottom: 0;
	}
	.videos .primary > div:first-of-type {
		width: calc((100% - 20px) * .6);
		float: left;
	}
	.videos .primary > div:first-of-type .embed-container {
		margin-bottom: 0;
	}
	.videos .primary > div:last-of-type {
		width: calc((100% - 20px) * .4);
		/* float: right; */
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		overflow-y: auto;
		scrollbar-gutter: stable;
	}
	.videos .primary > div:last-of-type .scrollable-on-mobile {
		overflow: visible;
		padding-top: 0;
		position: static;
	}
	.videos .primary > div:last-of-type .scrollable-on-mobile > div {
		height: auto;
		left: auto;
		position: static;
		top: auto;
		overflow-y: visible;
	}
	.videos .secondary > a:first-of-type {
		left: 0;
	}
	.videos .secondary > a:last-of-type {
		right: 0;
	}
	.videos .secondary[data-count="3"] > a:last-of-type,
	.videos .secondary[data-count="4"] > a:last-of-type {
		opacity: 0.77;
	}
	.videos .secondary .scrollable a {
		width: calc((100% - 60px) / 4);
	}
	.videos .secondary .scrollable a h4 {
		font-size: 17px;
	}
}




#scrollToTop {
	display: none;
	padding: 1rem;
	position: fixed;
	right: 0;
	bottom: 4.2rem;
	background: rgba(0,0,0,0.61803398874);
	cursor: pointer;
}
#scrollToTop::after {
	content: "\f35b";
	font-family: "Font Awesome\ 6 Free";
	color: white;
	font-size: 26px;
	font-size: 2.6rem;
}




#analytics-fomo {
	padding-top: 20px;
	margin: 0;
	background-color: #0077C8;
	color: white;
	text-align: center;
	font-family: "Proxima Nova W01 Bold";
	font-size: 30px;
	line-height: 1;
	color: #0077C8;
	transition: all 2.5s;
}
#analytics-fomo > div > p {
	font-size: 16px;
	color: white !important;
	padding-left: 26px;
	padding-right: 26px;
}
#analytics-fomo > div {
	max-width: 1040px;
	margin: 0;
	margin-right: 0px;
	margin-left: 0px;
	margin-left: auto;
	margin-right: auto;
}
#analytics-fomo > div > div {
	width: calc(50% - 33px - 33px);
	float: left;
	padding-left: 33px;
	padding-right: 33px;
}
/* when there's an odd number of 'columns' */
/* #analytics-fomo > div > div:last-of-type {
	margin-left: auto;
	margin-right: auto;
	float: none;
} */
#analytics-fomo > div > div > span.count {
	
}
#analytics-fomo > div > div > span:last-of-type {
	display: block;
	font-family: "Proxima Nova W01 Medium";
	font-size: 14px;
}
@media screen and (min-width: 1024px) {
	#analytics-fomo {
		font-size: 37px;
	}
	#analytics-fomo > div > div {
		/* width: calc(20% - 33px - 33px); */
		width: calc(25% - 33px - 33px);
	}
	/* #analytics-fomo > div > div:last-of-type {
		margin: 0;
		float: left;
	} */
	#analytics-fomo > div > div > span:last-of-type {
		font-size: 17px;
	}
}




/* consent dialog 20250219 */
#consent-dialog {
	background: #D5E5EB;
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
	display: none;
	position: fixed;
	bottom: 0;
	left: 5%;
	right: 5%;
	z-index: 1000;
	padding: 20px;
	box-shadow: 0px 0px 10px -1px rgba(0,0,0,0.62);
	-webkit-box-shadow: 0px 0px 10px -1px rgba(0,0,0,0.62);
	-moz-box-shadow: 0px 0px 10px -1px rgba(0,0,0,0.62);
	margin: 0;
}
#consent-dialog p {
	margin: 0;
	padding: 0;
	margin-bottom: 16px;
	font-size: 14px;
	line-height: 1.428;
}
#consent-dialog p + div {
	margin: 0;
	padding: 0;
}
#consent-dialog p a {
	color: #004DD1;
	text-decoration: underline;
}
#consent-dialog p a:hover {
	color: #154973;
}
#consent-dialog div a {
	font-weight: 700;
	/* TO-DO: adjust for weight */
	font-size: 16px;
	border-radius: 9999px;
	color: white;
	line-height: 2;
	padding-right: 20px;
	padding-left: 20px;
	background-color: #154973;
	display: inline-block;
	text-decoration: none;
}
#consent-dialog div a:hover {
	background-color: #004DD1;
}
#consent-dialog .nokay {
	display: none;
}










/* new utility styles for "improvements" project 2025 */
section.white {
	background-color: white;
}
section.yellow {
	background-color: #FACE00;
}
section.blue-light {
	background-color: #D7E8F5;
}
section.skinny {
	padding-top: 23px;
	padding-top: 2.3rem;
	padding-bottom: 23px;
	padding-bottom: 2.3rem;
}
div.cards {
	/* background-color: fuchsia; */
}
div.cards > div {
	background-color: #D7E8F5;
	border-radius: 10px;
	border-radius: 1rem;
	overflow: hidden;
	margin-bottom: 30px;
	margin-bottom: 3rem;
}
div.cards > div > .image {
	background-color: #CACACA;
	margin-bottom: 0;
}
div.cards > div > .copy {
	padding: 20px;
	margin-bottom: 0;
}
div.cards > div > .copy h3 {
	color: #0E2436;
	font-size: 24.16666666666667px;
	font-size: 2.416666666666667rem;
	line-height: 1.1;
	margin-bottom: 8.055555555555555px;
	margin-bottom: 0.8055555555555555rem;
}
div.cards > div > .copy p {
	font-size: 16.11111111111111px;
	font-size: 1.611111111111111rem;
	line-height: 1.2;
}
div.cards > div > .copy > .buttons {
	margin-bottom: 0;
}
@media screen and (min-width: 1024px) {
	div.cards {
		display: flex; /* makes the columns equal heights */
		flex-wrap: wrap;
		justify-content: center;
	}
	div.cards > div {
		width: calc((100% - (2 * 15px)) / 3);
		float: left;
		margin-right: 15px;
		margin-right: 1.5rem;
	}
	div.cards > div:nth-of-type(3n),
	div.cards > div:last-of-type {
		margin-right: 0;
	}
}
div.card {
	background-color: #0077C8;
	border-radius: 10px;
	border-radius: 1rem;
	color: white;
	padding-top: 20px;
	padding-top: 2rem;
	padding-bottom: 20px;
	padding-bottom: 2rem;
	padding-left: 6.206896551724138%;
	padding-right: 6.206896551724138%;
	color: white;
}
div.card.blue-light {
	background-color: #D7E8F5;
	color: #0E2436;
}
div.card.stacked {
	text-align: center;
}
div.card > .image {
	/* background-color: fuchsia; */
	margin-bottom: 8.055555555555555px;
	margin-bottom: 0.8055555555555555rem;
}
div.card > .image img {
	max-width: 96px;
	max-width: 9.6rem;
	margin-left: auto;
	margin-right: auto;
	display: block;
}
div.card > .copy {
	margin-bottom: 0;
	font-size: 22.55555555555555px;
	font-size: 2.255555555555555rem;
	margin-bottom: 8.055555555555555px;
	margin-bottom: 0.8055555555555555rem;
}
div.card.stacked > .copy {
	
}
div.card > .copy h2,
div.card > .copy h3 {
	color: white;
	font-size: 22.55555555555555px;
	font-size: 2.255555555555555rem;
	line-height: 1.2;
	margin-bottom: 8.055555555555555px;
	margin-bottom: 0.8055555555555555rem;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
div.card.blue-light > .copy h2,
div.card.blue-light > .copy h3 {
	color: #0E2436;
}
div.card > .copy.smaller p,
div.card > .copy.smaller ul {
	font-size: 16.11111111111111px;
	font-size: 1.611111111111111rem;
}
div.card > .copy p {
	line-height: 1.2;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
div.card > .copy ul li {
	line-height: 1.2;
}
div.card > .copy a:link,
div.card > .copy a:visited {
	color: #FACE00;
	text-decoration-color: #FACE00;
}
div.card > .copy a:hover {
	color: white;
	text-decoration: underline;
	text-decoration-color: #FACE00;
}
div.card > .copy > :last-child {
	margin-bottom: 0;
}
div.card > .copy ul {
	margin-left: 25px;
	margin-left: 2.5rem;
}
div.card > .buttons {
	margin-bottom: 0;
	text-align: center;
}
@media screen and (min-width: 1024px) {
	div.card:not(.stacked) {
		display: flex; /* makes the columns equal heights */
	}
	div.card:not(.stacked) > .image {
		display: flex;
		flex-direction: column;
		justify-content: center;
		margin-right: 6.1803398874%;
		width: 10.3448275862069%;
		min-width: 10.3448275862069%;
		margin-bottom: 0;
	}
	div.card:not(.stacked) > .copy {
		display: flex;
		flex-direction: column;
		justify-content: center;
		margin-bottom: 0;
		flex-grow: 2;
	}
	div.card:not(.stacked) > .copy h2,
	div.card:not(.stacked) > .copy h3 {
		text-align: left;
		margin-left: unset;
		margin-right: unset;
	}
	div.card:not(.stacked) > .copy p {
		text-align: left;
		margin-left: unset;
		margin-right: unset;
	}
	div.card:not(.stacked) > .buttons {
		display: flex;
		flex-direction: column;
		justify-content: center;
		margin-left: 6.1803398874%;
	}
	div.card:not(.stacked) > .buttons a {
		white-space: nowrap;
	}
}
section.callout .constraint {
	max-width: 840px;
	max-width: 84.0rem;
}
section.callout .copy {
	/* background-color: chartreuse; */
	margin-bottom: 20px;
	margin-bottom: 2.0rem;
}
section.callout .buttons {
	/* background-color: orange; */
	margin-bottom: 0;
}
section.callout h2 {
	font-size: 24.16666666666667px;
	font-size: 2.416666666666667rem;
	line-height: 1.1;
	margin-bottom: 0;
	color: black;
}
section.callout p {
	font-size: 16.11111111111111px;
	font-size: 1.611111111111111rem;
	line-height: 1.2;
	margin-bottom: 0;
	color: black;
}
@media screen and (min-width: 1024px) {
	section.callout .constraint {
		display: flex; /* makes the columns equal heights */
	}
	section.callout .copy {
		width: 70%;
		width: 60%;
		float: left;
		margin-bottom: 0;
		margin-right: 10%;
	}
	section.callout .buttons {
		width: 20.96153846153846%;
		width: 30%;
		float: right;
		text-align: right;
		display: flex;
		align-items: center;
		justify-content: flex-end;
	}
}
button.yellow,
.button.yellow,
.button.yellow:link,
.button.yellow:visited,
input.yellow[type="button"], 
input.yellow[type="reset"], 
input.yellow[type="submit"]  {
	color: #212529;
	background-color: #FACE00;
	border-color: #FACE00;
}
button.yellow:hover,
button.yellow:active,
button.yellow:focus,
.button.yellow:hover,
.button.yellow:active,
.button.yellow:focus,
input.yellow[type="button"]:hover,
input.yellow[type="button"]:active,
input.yellow[type="button"]:focus, 
input.yellow[type="reset"]:hover,
input.yellow[type="reset"]:active,
input.yellow[type="reset"]:focus, 
input.yellow[type="submit"]:hover,
input.yellow[type="submit"]:active,
input.yellow[type="submit"]:focus {
	background-color: #212529;
	border-color: #212529;
	color: white;
}
button.blue-dark,
.button.blue-dark,
.button.blue-dark:link,
.button.blue-dark:visited,
input.blue-dark[type="button"], 
input.blue-dark[type="reset"], 
input.blue-dark[type="submit"]  {
	color: white;
	background-color: #0E2436;
	border-color: #0E2436;
}
button.blue-dark:hover,
button.blue-dark:active,
button.blue-dark:focus,
.button.blue-dark:hover,
.button.blue-dark:active,
.button.blue-dark:focus,
input.blue-dark[type="button"]:hover,
input.blue-dark[type="button"]:active,
input.blue-dark[type="button"]:focus, 
input.blue-dark[type="reset"]:hover,
input.blue-dark[type="reset"]:active,
input.blue-dark[type="reset"]:focus, 
input.blue-dark[type="submit"]:hover,
input.blue-dark[type="submit"]:active,
input.blue-dark[type="submit"]:focus {
	background-color: #0077C8;
	border-color: #0077C8;
	color: white;
}
.accordion_switch {
	cursor: pointer;
	/* border-top: 1px solid grey;
	border-bottom: 1px solid #808080; */
	/* line-height: 1em; */
	padding-top: 14.5px;
	padding-top: 1.45rem;
	padding-bottom: 14.5px;
	padding-bottom: 1.45rem;
	position: relative;
	/* padding-left: calc(.8811214285732268em + 1.618rem + 1.618rem);
	padding-right: 1.618rem; */
	padding-left: 22.55555555555555px;
	padding-left: 2.255555555555555rem;
	padding-right: calc(43.12944444444444px + 24.16666666666667px + 22.55555555555555px);
	background-color: #D7E8F5;
	display: block;
	text-decoration: none;
	margin-bottom: 20px;
	margin-bottom: 2.0rem;
}
.accordion_switch h2 {
	line-height: 1.2;
	color: #154973;
	font-size: 17.72222222222222px;
	font-size: 1.772222222222222rem;
	margin-bottom: 0;
}
.accordion_switch:hover h2 {
	color: #0077C8;
}
.accordion_switch:focus {
	outline: thin dotted black;
}
.accordion_switch::after {
	position: absolute;
	/* opacity: 0.77; */
	/* top: 14.5px;
	top: 1.45rem; */
	position: absolute;
	top: 50%;
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	right: 43.12944444444444px;
	right: 4.312944444444444rem;
	font-family: "Font Awesome\ 5 Free";
	font-weight: 900;
	font-size: 24.16666666666667px;
	font-size: 2.416666666666667rem;
}
.accordion_switch.off::after {
	content: "\f055";
}
.accordion_switch.on {
	margin-bottom: 0;
}
.accordion_switch.on::after {
	content: "\f056";
}
.accordion_switch p {
	color: black;
	display: block;
	font-size: 12.88888888888889px;
	font-size: 1.288888888888889rem;
	line-height: 1.25;
	font-family: "Proxima Nova W01 Regular";
	margin-bottom: 0;
}
.accordion_bulb {
	display: none;
	margin-bottom: 2.618rem;
	padding-left: 22.55555555555555px;
	padding-left: 2.255555555555555rem;
	padding-right: 22.55555555555555px;
	padding-right: 2.255555555555555rem;
	padding-top: 52.36111111111111px;
	padding-top: 5.236111111111111rem;
	padding-bottom: 52.36111111111111px;
	padding-bottom: 5.236111111111111rem;
	background-color: #EDF1F4;
}
@media screen and (min-width: 1024px) {
	.accordion_bulb {
		padding-left: 80px;
		padding-left: 8.0rem;
		padding-right: 80px;
		padding-right: 8.0rem;
	}
}
.copy-and-image {
	/* background-color: pink; */
	max-width: 845.8333333333333px;
	max-width: 84.58333333333333rem;
	margin-left: auto;
	margin-right: auto;
}
.copy-and-image .image {
	/* background-color: orange; */
	margin-bottom: 40px;
	margin-bottom: 4.0rem;
}
.copy-and-image .copy {
	/* background-color: chartreuse; */
	font-size: 16.11111111111111px;
	font-size: 1.611111111111111rem;
	line-height: 1.2;
}
.copy-and-image .copy h2,
.copy-and-image .copy h3 {
	font-size: 24.16666666666667px;
	font-size: 2.416666666666667rem;
	color: #0E2436;
	line-height: 1.1;
	margin-bottom: 6.444444444444444px;
	margin-bottom: 0.6444444444444444rem;
}
.copy-and-image .copy p,
.copy-and-image .copy ul {
	margin-bottom: 6.444444444444444px;
	margin-bottom: 0.6444444444444444rem;
}
.copy-and-image .copy ul > li:last-of-type {
	margin-bottom: 0;
}
.copy-and-image .copy .buttons {
	margin-top: 13.69444444444444px;
	margin-top: 1.369444444444444rem;
}
.copy-and-image .copy .buttons a {
	margin-right: 16.11111111111111px;
	margin-right: 1.611111111111111rem;
	margin-bottom: 8.055555555555555px;
	margin-bottom: 0.8055555555555555rem;
}
.copy-and-image .copy .buttons a:last-of-type {
	margin-right: 0;
}
@media screen and (min-width: 1024px) {
	.copy-and-image .image {
		width: 23.80952380952381%;
		float: right;
		margin-left: 9.523809523809524%;
	}
	.accordion_bulb .copy-and-image .image {
		width: 29.375%;
		margin-left: 8.125%;
	}
}
.accordion_bulb .copy-and-image .copy h2,
.accordion_bulb .copy-and-image .copy h3 {
	margin-bottom: 6.444444444444444px;
	margin-bottom: 0.6444444444444444rem;
}
.accordion_bulb .copy-and-image .copy .buttons {
	margin-top: 31.41666666666666px;
	margin-top: 3.141666666666666rem;
}
.video-grid {
	/* background-color: purple; */
}
.video-grid > div {
	/* background-color: pink; */
}
.video-grid > div h3 {
	text-align: center;
	position: relative;
	margin-bottom: 12.08333333333333px;
	margin-bottom: 1.208333333333333rem;
	font-size: 17.72222222222222px;
	font-size: 1.772222222222222rem;
	line-height: 1.2;
}
.video-grid > div .embed-container {
	margin-bottom: 8.055555555555555px;
	margin-bottom: 0.8055555555555555rem;
}
.video-grid > div ul {
	margin-left: 0;
	list-style-type: none;
	margin-bottom: 0;
	font-size: 14px;
	font-size: 1.4rem;
}
@media screen and (min-width: 1024px) {
	.video-grid > div ul {
		font-size: 16.11111111111111px;
		font-size: 1.611111111111111rem;
	}
}
.video-grid > div ul li::before {
	font-family: "Font Awesome\ 5 Free";
	font-weight: 900;
	content: "\f35a";
}
@media screen and (min-width: 1024px) {
	.video-grid {
		display: flex; /* makes the columns equal heights */
		flex-wrap: wrap;
		justify-content: center;
	}
	.video-grid > div {
		width: 45.6140350877193%;
		margin-right: 8.064516129032258%;
	}
	.video-grid > div:nth-of-type(2n),
	.video-grid > div:last-of-type {
		margin-right: 0;
	}
	.video-grid > div h3 {
		min-height: 42.53333333333333px;
		min-height: 4.253333333333333rem;
	}
	.video-grid > div h3 span {
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
	}
}


.vignette {
	padding-top: 100%;
	overflow: hidden;
	position: relative;
	display: block;

}
.vignette img {
	min-width: 200%;
	min-height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.vignette::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	/*
		background: linear-gradient(315deg,rgba(21, 73, 115, 1) 0%, rgba(255, 255, 255, 1) 100%);
		opacity: 0.42;
	*/
	background: linear-gradient(315deg,rgba(0, 0, 0, 1) 0%, rgba(21, 73, 115, .62) 38%, rgba(255, 255, 255, 0) 100%);
	opacity: 0.38;
}

h2.preceding-intro {
	margin-bottom: 5px;
	margin-bottom: 0.5rem;
}