/* #Reset & Basics (Inspired by E. Meyers)
================================================== */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header,menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	quotes: none;
	content: '';
	content: none;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}

/* #Basic Styles
================================================== */

:root {
	/* Brand */
	--color-red:#bd2025;            /* primary red — header title, license, phone pill, coupon borders, headings */
	--color-red-dark:#ad1e24;       /* CTA band, content links, service pills, active nav item */
	--color-red-deep:#9b2428;       /* form submit, footer specials band, social icon circles */
	--color-navy:#07203b;           /* form box background, CTA band right half */
	--color-navy-dark:#14243e;      /* footer background */
	--color-black:#101012;          /* footer copyright bar, nav bar */
	--color-green:#34a232;          /* check-list bullets */

	/* Text + UI */
	--color-main:#000000;
	--color-white:#ffffff;
	--color-grey:#333333;
	--color-grey-light:#f5f5f5;
	--color-border:#e1e1e1;
	--color-input-border:#1a84ea;   /* light blue border on the contact form fields */
	--color-link:var(--color-red-dark);
	--color-link-hover:var(--color-red);

	/* Type — the old site declared "sans-serif" only; this stack pins what visitors already see (Helvetica on Mac, Arial on Windows) */
	--font-body:"Helvetica Neue", Helvetica, Arial, sans-serif;
	--font-heading:var(--font-body);
}

/* NOTE
html is set to 62.5% so that all the REM measurements throughout Skeleton
are based on 10px sizing. So basically 1.5rem = 15px :) */
html { font-size: 62.5%; }
body { font-size: 1.6em;font-weight: 400; font-family:var(--font-body); color:var(--color-main);-webkit-font-smoothing: antialiased;-webkit-text-size-adjust: 100%;}

/* #Typography
================================================== */
p {line-height:1.6;margin-bottom:20px;}

h1,
h2,
h3,
h4,
h5,
h6 { margin-top: 0; margin-bottom: 20px; font-family:var(--font-heading); font-weight: 400; }
h1 { font-size: 2.6rem; line-height: 1.2; font-weight: 700;}
h2 { font-size: 2.2rem; line-height: 1.25;}
h3 { font-size: 2.0rem; line-height: 1.3;}
h4 { font-size: 1.8rem; line-height: 1.35;}
h5 { font-size: 1.6rem; line-height: 1.5;}
h6 { font-size: 1.5rem; line-height: 1.6;}

@media (min-width: 1000px) {
	h1 { font-size: 3.6rem; }
	h2 { font-size: 2.8rem; }
	h3 { font-size: 2.4rem; }
	h4 { font-size: 2.0rem; }
}

em {font-style:italic;}
strong {font-weight:700;}

.entry a {font-weight:700;}
.entry ul,
.entry ol {margin:0 0 20px 20px;}
.entry ul {list-style:disc;}
.entry ol {list-style:decimal;}
.entry li {line-height:1.6;margin-bottom:10px;}

/* Utility type classes */
.text-red {color:var(--color-red);}
.text-white {color:var(--color-white);}
.text-bold {font-weight:700;}

code { padding: .2rem .5rem; margin: 0 .2rem; font-size: 90%; white-space: nowrap; background: #F1F1F1; border: 1px solid #E1E1E1; border-radius: 4px; }
pre > code { display: block; padding: 1rem 1.5rem; white-space: pre; }

hr { margin-top: 30px; margin-bottom: 35px; border-width: 0; border-top: 1px solid var(--color-border); }

sup {font-size:1.1rem;}

/* #Forms
================================================== */

input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
select { width:100%; height: 40px; padding: 6px 10px; font-family:inherit; font-size:1.5rem; background-color: var(--color-white); border: 1px solid var(--color-input-border); border-radius: 4px; box-shadow: none; box-sizing: border-box; }

/* Removes awkward default styles on some inputs for iOS */
input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"],
textarea,
button,
.button,
input[type=button],
input[type=submit] { -webkit-appearance: none; -moz-appearance: none; appearance: none; }
textarea { min-height: 100px; padding-top: 6px; padding-bottom: 6px; }
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus { border-color: var(--color-navy); outline: 2px solid var(--color-navy); outline-offset:1px; }


/* #Images
================================================== */
img {max-width: 100%;height: auto; }

/* #Misc
================================================== */
a {color:var(--color-link);text-decoration:none;transition:all 0.4s ease;}
a:hover {color:var(--color-link-hover); }
a,
a:focus {outline:none;}

.screen-reader-only {border: 0;clip: rect(0, 0, 0, 0);height: 1px;overflow: hidden;position: absolute !important;width: 1px;word-wrap: normal !important;}
.skip-links li {height: 0;list-style: none;width: 0;}

.anchor {scroll-margin-top: 100px;}

.remove-bottom { margin-bottom:0; }
.add-bottom { margin-bottom: 20px; }
.half-bottom { margin-bottom: 10px; }
.double-bottom { margin-bottom: 40px; }
.spacer {padding-top:50px;padding-bottom:50px;}
.spacer-top {padding-top:50px;}
.spacer-btm {padding-bottom:50px;}

/* Section backgrounds */
.bg-red {background:var(--color-red-dark);color:var(--color-white);}
.bg-navy {background:var(--color-navy);color:var(--color-white);}
.bg-navy-dark {background:var(--color-navy-dark);color:var(--color-white);}
.bg-red h1, .bg-red h2, .bg-red h3, .bg-red a,
.bg-navy h1, .bg-navy h2, .bg-navy h3, .bg-navy a,
.bg-navy-dark h1, .bg-navy-dark h2, .bg-navy-dark h3, .bg-navy-dark a {color:var(--color-white);}

.left {float:left;}
.right {float:right;}
.alignleft {display: inline;float: left;margin-right: 15px;}
.alignright {display: inline;float: right;margin-left: 15px;}
.aligncenter {clear: both;display: block;margin-left: auto;margin-right: auto;margin-bottom:20px;}
.nofloat {float:none !important;}

.tal {text-align:left;}
.tar {text-align:right;}
.tac {text-align:center;}
.cap {text-transform:uppercase;}

.bg-cover {background-position:center center;background-repeat:no-repeat;background-size:cover;}
@media (min-width:1000px) {
	.bg-fix {background-attachment: fixed;}
}

.frame-container {position: relative;padding-bottom: 56.25%;padding-top: 30px; height: 0; overflow: hidden;}
.frame-container iframe,
.frame-container object,
.frame-container embed,
.frame-container video {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
