/* ## corrects possible view port issues in browsers that do not recognize the viewport meta tag ## */
/* http://timkadlec.com/2013/01/windows-phone-8-and-device-width/ */
@-webkit-viewport   { width: device-width; }
@-moz-viewport      { width: device-width; }
@-ms-viewport       { width: device-width; }
@-o-viewport        { width: device-width; }
@viewport           { width: device-width; }


/*! normalize.css v2.0.1 | MIT License | git.io/normalize */

/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */

/*
 * Corrects `block` display not defined in IE 8/9.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section,
summary {
    display: block;
}

/*
 * Corrects `inline-block` display not defined in IE 8/9.
 */

audio,
canvas,
video {
    display: inline-block;
}

/*
 * Prevents modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
    display: none;
    height: 0;
}

/*
 * Addresses styling for `hidden` attribute not present in IE 8/9.
 */

[hidden] {
    display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */

/*
 * 1. Sets default font family to sans-serif.
 * 2. Prevents iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html {
    font-family: sans-serif; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
    -ms-text-size-adjust: 100%; /* 2 */
}

/*
 * Removes default margin.
 */

body {
    margin: 0;
}

/* ==========================================================================
   Links
   ========================================================================== */

/*
 * Addresses `outline` inconsistency between Chrome and other browsers.
 */

a:focus {
    outline: thin dotted;
}

/*
 * Improves readability when focused and also mouse hovered in all browsers.
 */

a:active,
a:hover {
    outline: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */

/*
 * Addresses `h1` font sizes within `section` and `article` in Firefox 4+,
 * Safari 5, and Chrome.
 */

h1 {
    font-size: 2em;
}

/*
 * Addresses styling not present in IE 8/9, Safari 5, and Chrome.
 */

abbr[title] {
    border-bottom: 1px dotted;
}

/*
 * Addresses style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */

b,
strong {
    font-weight: bold;
}

/*
 * Addresses styling not present in Safari 5 and Chrome.
 */

dfn {
    font-style: italic;
}

/*
 * Addresses styling not present in IE 8/9.
 */

mark {
    background: #ff0;
    color: #000;
}


/*
 * Corrects font family set oddly in Safari 5 and Chrome.
 */

code,
kbd,
pre,
samp {
    font-family: monospace, serif;
    font-size: 1em;
}

/*
 * Improves readability of pre-formatted text in all browsers.
 */

pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
}

/*
 * Sets consistent quote types.
 */

q {
    quotes: "\201C" "\201D" "\2018" "\2019";
}

/*
 * Addresses inconsistent and variable font size in all browsers.
 */

small {
    font-size: 80%;
}

/*
 * Prevents `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

/* ==========================================================================
   Embedded content
   ========================================================================== */

/*
 * Removes border when inside `a` element in IE 8/9.
 */

img {
    border: 0;
}

/*
 * Corrects overflow displayed oddly in IE 9.
 */

svg:not(:root) {
    overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */

/*
 * Addresses margin not present in IE 8/9 and Safari 5.
 */

figure {
    margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */

/*
 * Define consistent border, margin, and padding.
 */

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

/*
 * 1. Corrects color not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
    border: 0; /* 1 */
    padding: 0; /* 2 */
}

/*
 * 1. Corrects font family not being inherited in all browsers.
 * 2. Corrects font size not being inherited in all browsers.
 * 3. Addresses margins set differently in Firefox 4+, Safari 5, and Chrome
 */

button,
input,
select,
textarea {
    font-family: inherit; /* 1 */
    font-size: 100%; /* 2 */
    margin: 0; /* 3 */
}

/*
 * Addresses Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

button,
input {
    line-height: normal;
}

/*
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Corrects inability to style clickable `input` types in iOS.
 * 3. Improves usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button; /* 2 */
    cursor: pointer; /* 3 */
}

/*
 * Re-set default cursor for disabled elements.
 */

button[disabled],
input[disabled] {
    cursor: default;
}

/*
 * 1. Addresses box sizing set to `content-box` in IE 8/9.
 * 2. Removes excess padding in IE 8/9.
 */

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
}

/*
 * 1. Addresses `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Addresses `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"] {
    -webkit-appearance: textfield; /* 1 */
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box; /* 2 */
    box-sizing: content-box;
}

/*
 * Removes inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

/*
 * Removes inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

/*
 * 1. Removes default vertical scrollbar in IE 8/9.
 * 2. Improves readability and alignment in all browsers.
 */

textarea {
    overflow: auto; /* 1 */
    vertical-align: top; /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */

/*
 * Remove most spacing between table cells.
 */

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* ===============  Default Adjustments  =============== */

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;}

::-moz-selection { background: #3197fc; text-shadow: none; }
::selection { background: #3197fc; text-shadow: none; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0;}
img { max-width:100%; height:auto !important; vertical-align: middle; }
fieldset {border: 0;margin: 0; padding: 0; }
textarea { resize: vertical; }
embed {max-width:100%;}
iframe{border:0;}
p { margin:0 0 1em 0; }

.ir { background-color: transparent; border: 0; overflow: hidden; *text-indent: -9999px; }
.ir:before { content: ""; display: block; width: 0; height: 100%; }
.hidden { display: none; visibility: hidden; }

.visuallyHidden, .visually-hidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyHidden.focusable:active,
.visuallyHidden.focusable:focus,
.visually-hidden.focusable:active,
.visually-hidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }

.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }

.hide       { display:none; }
.smallest   { font-size:.8em; }
.smaller    { font-size:.9em; }
.larger     { font-size:1.1em; }
.largest    { font-size:1.2em; }
.bold       { font-weight:bold; }
.italic     { font-style:italic !important; }
.strike     {text-decoration:line-through !important;}

.red, .red:visited          { color:#f00 !important; }
.green, .green:visited      { color:#390 !important; }
.lgreen, .lgreen:visited    { color:#97937d !important; }

.bgYellow { background:yellow; }
.bgGreen { background:lime; }
.vtop { vertical-align:top; }
.vmid { vertical-align:middle; }
.center { text-align:center; }
.left { text-align:left; }
.right { text-align:right; }
.floatLeft { float:left; }
.floatRight { float:right; }
.imgLeft { float:left; margin-right:5px; padding:5px; border:1px solid #c4c4c4; }
.imgRight { float:right; margin-left:5px; padding:5px; border:1px solid #c4c4c4; }
.nowrap { white-space:nowrap; }
.borderless { border:0; border-collapse:collapse; }
.breakforprint { page-break-after:always; }
.clear { overflow:hidden; clear:both; height:0; margin:0; font-size:1px; line-height:0; }
.skip { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.important { color:red; font-weight:bold; text-transform:uppercase; }

.click-user *:focus, .click-user *:active {outline:0;}


.cellspace0{border-spacing: 0px; border-collapse: separate;}
.cellspace1{border-spacing: 1px; border-collapse: separate;}
.cellspace2{border-spacing: 2px; border-collapse: separate;}
.cellspace3{border-spacing: 3px; border-collapse: separate;}
.cellspace4{border-spacing: 4px; border-collapse: separate;}
.cellspace5{border-spacing: 5px; border-collapse: separate;}
.cellspace6{border-spacing: 6px; border-collapse: separate;}
.cellspace7{border-spacing: 7px; border-collapse: separate;}
.cellspace8{border-spacing: 8px; border-collapse: separate;}
.cellspace9{border-spacing: 9px; border-collapse: separate;}
.cellspace10{border-spacing: 10px; border-collapse: separate;}
.border0{border:0;}


.cellpad0 td{ padding: 0px; }
.cellpad1 td{ padding: 1px }
.cellpad2 td{ padding: 2px }
.cellpad3 td{ padding: 3px; }
.cellpad4 td{ padding: 4px; }
.cellpad5 td{ padding: 5px; }
.cellpad6 td{ padding: 6px; }
.cellpad7 td{ padding: 7px; }
.cellpad8 td{ padding: 8px; }
.cellpad9 td{ padding: 9px; }
.cellpad10 td{ padding: 10px; }


/* ## Base List styles ## */
ul, ol { margin:0 0 1em; }
.noBullet { padding:0 0 0 1em; list-style-type:none; }
.noIndent { padding:0; list-style-type:none; }
.bulletSquare { list-style-type:square; }

/* ## Note/hint text or link ## */
.note { margin:0 7px; font-size:.8em; color:#4e4e4e; }
.note a, .note a:link, .note a:visited { text-decoration:underline; }


/* ================================================================
   PRIMARY LAYOUT STYLES
   ================================================================ */

/* Enter unique styles for site here */

/* ## Disabled Form Fields ## */
input[disabled=true]    { background-color: #F0F0F0; }
textarea[disabled=true] { background-color: #F0F0F0; }
select[disabled=true]   { background-color: #F0F0F0; }
input[readonly=true]    { background-color: #F0F0F0; }
textarea[readonly=true] { background-color: #F0F0F0; }
select[readonly=true]   { background-color: #F0F0F0; }

h1 {font-size: 1.875em;}
h2 {font-size: 1.4rem;}
h3 {font-size: 1rem;}
h4 {font-size: 1rem;}
h5 {font-size: 1rem;}
h6 {font-size: .9rem;}
 
h1, h2, h3, h4, h5 {line-height:normal; margin:0 0 0.7em 0;}


/* Removed :link from the list to help cut down on writing time and prevent the need for extra specificity for classes */
a, a:visited { color:#cb2b19; text-decoration:underline; }
a:hover, a:active, a:focus { color:#2c3e50; text-decoration:none; }


/* ## Focus Overlay - Advanced Focus States - It is still important to add basic css focus states for when no JS is active ## */
#focus-overlay {
    display: none;
    position: relative;
    border-radius: 2px;
    box-shadow: 0 0 3px 2px #78aeda;
    transition: all 0.2s cubic-bezier(0, 1, 0, 1);
}

#focus-overlay::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    box-shadow: 0 0 2px 1px #008cff, 0 0 2px #008cff inset;
    transition: all 0.1s ease-out;
}

#focus-overlay.focus-overlay-active {
    display: block;
}

#focus-overlay.focus-overlay-animating::after {
    opacity: 1;
}

.focus-overlay-target {
    outline: none;
}

.btnText { margin:0; padding:0; color:#6D6D6D; text-decoration:underline; border:0; background:none; }
.btnText:hover { color:#6D6D6D; text-decoration:none; }

.svg-legend {
    height: 0;
    position: absolute;
    top: -999em;
    width: 0;
}

/* ## Link Modifiers ## */
a .text { text-decoration:underline; }
a:hover .text, a:active .text, a:focus .text { text-decoration:none; }
a [class^="icon-"] { text-decoration:none; }
a.removeLink { color:#f00; font-size:0.9em; }


/* ## Link Lists ## */
/* We use '<ul class="linkList">' when setting a list of organized links. */
ul.linkList {margin:0 0 15px 0; padding:0; list-style-type:none;}
ul.linkList li {margin-bottom:8px;}
ul.linkList a,
ul.linkList a:link,
ul.linkList a:visited { text-decoration:none;}
ul.linkList a:hover,
ul.linkList a:active {text-decoration:underline;}


/* ## Start Up Layout - Use, modify, or delete as need be ## */
body {
	background:#fff; 
	color:#222;
	font-family: 'Open Sans';
	line-height:1.6;
}

.site-header {
	border-top:5px solid #2980b9;
	position:fixed;
	width:100%;
	background:#fff;
	text-align:left;
	height:80px;
	z-index:100;
}

.site-header p {
	margin:0;
}

.location-finder {
	margin-top:80px;
	position:fixed;
	width:100%;	
}

.main-content {
	padding-top:80px;
	display:block;
}

.home .main-content {
	padding-bottom:0;
}

.location-finder + .main-content {
	padding-top:188px;
}

@media only screen and (min-width:48em){
	.location-finder + .main-content {
		padding-top:153px;
	}	
}

 
.header-top {
	background:#333;
	padding:10px 0;
	display:none;
}

.extra-nav ul {
	padding:0;
	margin:0;
	list-style-type:none;
}

.extra-nav ul li {
	display:inline-block;
}

.extra-nav ul li a {
	color:#fff;
	display:block;
	padding:0 10px;
}

@media only screen and (min-width:48em){
	.header-top {
		display:block;
	}
	.extra-nav {
		float:right;
	}
}

.header-bottom {
	background:#ececec;
	padding:20px 0;
}

.site-logo {
	display:inline-block;
	margin:5px;
	width:90px;
	position:absolute;
}

@media only screen and (min-width:48em){
	.site-logo {
		width:auto;
		margin:20px 0 0 10px;
	}
}

.main-content {
	padding-bottom:2rem;
}

.page-heading {
	position: relative;
	overflow:hidden;
	height: 150px;
	margin:0 0 1rem 0;
}

.page-heading .page-heading-bg-image {
    position: absolute;
    display: block;
	width:1920px;
	height: 150px;
    left: 50%;
    right: 0;
    top: 0;
    bottom: 0;
    transform: translateX(-50%);
}

.page-heading .page-heading-bg-image p {
	margin:0;
}

.page-heading .page-heading-text {
    position: relative;
	margin: 0px auto;
	max-width: 80em;
    z-index: 2;
    display: block;
    top: 50%;
    transform: translateY(-50%);
	color:#fff;
	padding:0 10px;
}

.page-heading .page-heading-text h1 {
	color:#fff;
	margin:0;
}

@media only screen and (min-width:48em){
	.page-heading,
	.page-heading .page-heading-bg-image {
		height: 200px;
	}
}

.site-footer {
	background:#1B567E;
	padding:30px 0;
	text-align:center;
	color:#fff;
	line-height:1.6;
}

.site-footer a {
	color:#fff;
}

.site-footer .footer-boxes,
.site-footer .copyright,
.site-footer .call  {
	font-size:14px;
}

.site-footer ul {
	margin:0;
	padding:0;
	list-style-type:none;
}

@media only screen and (min-width:48em){
	.site-footer {
		text-align:left;
		padding:30px 0;
	}
	
	.site-footer .footer-boxes {
		display:table;
		width:100%;
	}
	
	.site-footer .footer-boxes > div {
		display:table-cell;
	}

	.site-footer .footer-boxes > div:last-child {
		text-align:right;
	}	
	
}

.flex > div {
	margin:0 0 1rem 0;
}

@media only screen and (min-width:30em){
	
	.flex {
		display: -webkit-box;
		display: -moz-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		flex-wrap: wrap;
		-ms-flex-wrap:wrap;
		width: 100%;
	}
	
	.flex > div {
		width:49%;
		margin:0 1% 1.5rem 1%;
	}	
	
	.flex.flex-4 > div,
	.flex.flex-5 > div	{
		width:49%;
	}

	.flex.flex-4 > div:nth-child(2n+1),
	.flex.flex-5 > div:nth-child(2n+1)	{
		margin-left:0;
	}

	.flex.flex-4 > div:nth-child(2n),
	.flex.flex-5 > div:nth-child(2n)	{
		margin-right:0;
	}
	
}

@media only screen and (min-width:48em){

	.flex.flex-2 > div {
		width:49%;
	}

	.flex.flex-2 > div:nth-child(2n+1) {
		margin-left:0;
	}

	.flex.flex-2 > div:nth-child(2n) {
		margin-right:0;
	}

	.flex.flex-3 > div {
		width:32%;
	}

	.flex.flex-3 > div:nth-child(3n+1) {
		margin-left:0;
	}

	.flex.flex-3 > div:nth-child(3n) {
		margin-right:0;
	}	

	.flex.flex-4 > div,
	.flex.flex-5 > div	{
		width:23.5%;
	}
	
	.flex.flex-4 > div:nth-child(2n+1),
	.flex.flex-5 > div:nth-child(2n+1) {
		margin-left:1%;
	}

	.flex.flex-4 > div:nth-child(2n),
	.flex.flex-5 > div:nth-child(2n) {
		margin-right:1%;
	}	

	.flex.flex-4 > div:nth-child(4n+1),
	.flex.flex-5 > div:nth-child(4n+1) {
		margin-left:0;
	}

	.flex.flex-4 > div:nth-child(4n),
	.flex.flex-5 > div:nth-child(4n) {
		margin-right:0;
	}
	
}

@media only screen and (min-width:80em){
	.flex.flex-5 > div	{
		width:18.2%;
	}	
	
	.flex.flex-5 > div:nth-child(4n) {
		margin-right:1%;
	}

	.flex.flex-5 > div:nth-child(4n+1) {
		margin-left:1%;
		margin-right:0;
	}	

	.flex.flex-5 > div:nth-child(5n+1) {
		margin-left:0;
		margin-right:1%;
	}	
	
}


/* ## Disabled Form Fields ## */

.site-search {
	padding:20px;
	background:#ecf0f1;
	margin:0 0 20px 0;
}

.site-search input[type="text"] {
	width:calc(100% - 56px) !important;
	margin:0 !important;
	padding:12px 10px !important;
	float:left;
}

.site-search  input.btn {
    background: url(/cms/images/icon/check.jpg) no-repeat;
    width: 44px;
    height: 45px;
    border: none;
    cursor: pointer;
    border-radius: 0 2px 2px 0;
    font-size: 0;
    text-indent: -9999px;
	float:left;
}

/* ==========================================================================
   Global Modules
   ========================================================================== */

.mod { position: relative; margin:0 0 1em; }
.more-link {text-align:right;}
.more-link a {text-decoration:none;}
.more-link a:after {
	content:'\3e';
	font-family: 'Basic-Icons';
	font-size:12px;
	font-weight:bold;
}
.more-link a:hover,
.more-link a:focus {text-decoration:none; color:#000;}

.back-link a:before {
	content:'\3c';
	font-family: 'Basic-Icons';
	font-size:12px;
	font-weight:bold;
}

.title { position: relative; margin: 0 0 1em; }
.titleAlt { margin:0 0 0.1em; font-size:1.2em; }
.titleAlt2 {  }

.title .more {
	position: absolute;
	top:0;
	right: 0;
	font-size: 0.6em;
}

.modContent{
	padding: 15px;
}

/* Item Lists Content
   ========================================================================== */

.itemList {
	margin:0;
	padding:0;
	list-style:none;
}

.item {
	display: table;
	padding: 1.5em 0;
	width: 100%;
	border-top: 1px solid #ccc;
}
.item:first-child { border-top:0; padding-top:0; }
.item:last-child { padding-bottom: 0; }

.item > .content {
	display: table-cell;
	width: 100%;
	vertical-align: top;
}

.item .contentExtra {
	display: table-cell;
	vertical-align: top;
}

.content .title { margin:0; }
.itemList .content p { margin: 0; }
.content .date,
.dateStamp { color:#666;}


/* Item Media
   ========================================================================== */

.aside {
	display: table-cell;
	padding: 0 15px 0 0;
	text-align: center;
}

.caption {
	display: block;
	font-size: 0.8em;
	line-height: 1.2em;
}


/* Media Queries for Item Lists
  ========================================================================== */


@media (max-width : 400px) {

	.item { display: block; }
	.item > .content { display: block;}
	.item > .aside { display: block;}

}


/* News
   ========================================================================== */

.article > .aside {
	float:right;
	margin: 1em;
}

@media only screen and (min-width:48em){
	.article > .aside {
		max-width:50%;
	}
}

.meta{
	margin:0.5em 0;
}

.meta > div {
	float: left;
}

.meta .social-tools{
	float: right;
}


/* ==========================================================================
   Filters
   ========================================================================== */

.filter{
	padding: 1em;
	background: #cccccc;
}

.filter-options{
	float: left;
}

.filter-actions{
	float: right;
}

/* Pagination
   ========================================================================== */

.paging {
	padding: 1em;
}

.paging-results {
	float: left;
}

.paging-list {
	float: right;
}

.paging-list ul {
	display: block;
	padding: 0;
	margin: 0;
}

.paging-list li{
	display: block;
	padding: 0;
	margin: 0;
	border: 1px solid #002B40;
	border-left-width: 0;
	float: left;
}

.paging-list li:first-child{
	border-left-width: 1px;
}

.paging-list li a,
.paging-list li span {
	display: block;
	min-width: 30px;
	padding: 2px 5px;
	text-align: center;
}

.paging-list li a {
	/* Link State */
}

.paging-list li span {
	/* Current Page State */
}

.paging-list li.disabled {
	display: none;
}

.paging-list li.disabled+li {
	border-left-width: 1px;
}

.paging-list li.disabled+.all {
	border-left-width: 0;
}


/* pagination and filters */

.filters {float:left; display:inline; margin:0 0 5px 0;}
.filters .filterList {float:left; display:inline; margin-bottom:5px;}
.filters label { display:inline; margin:0 5px 0 0; font-weight:bold; font-size:0.8em; }
.filters .sortList {float:left; display:inline;  padding:3px 10px 0;}
.filters .sortList label {margin:0 5px 0 0;}
.filters select {margin-right:10px;}


.filters .sortList .last {border-right:0;}
.filters .sortItem {display:inline; margin:0; padding:2px 4px; font-size:0.8em; border-right:1px solid #999999;}
.filters .sortItem a, .filters .sortItem a:link, .filters .sortItem a:visited {padding-right:12px; text-decoration:none; background:url(/cms/images/layout/arrow_sortorder.gif) no-repeat 100% 2px;}
.filters .sortItem a.down, .filters .sortItem a.down:link, .filters .sortItem a.down:visited {font-weight:bold; background-position:100% -18px;}
.filters .sortItem a.up, .filters .sortItem a.up:link, .filters .sortItem a.up:visited {font-weight:bold; background-position:100% -38px;}

.pagination {float:right; width:400px; margin:0 0 10px 0; text-align:right;}
.pagination .view {float:right; display:inline; padding:0 0 0 10px;}
.pagination .view a,.pagination .view a:link, .pagination .view a:visited { display:inline-block; text-decoration:none; padding:2px 6px;}
.pagination .paging {float:right; display:inline; padding:0 10px; border-right:1px solid #999999;}
.pagination .paging a,.pagination .paging a:link,.pagination .paging a:visited {float:left; display:inline; margin:0 3px; padding:2px 6px; text-align:center; text-decoration:none; }
.pagination .paging .active {float:left; display:inline; margin:0 4px; padding:2px 6px; text-align:center; color:#000; background-color:#d2d2d2; text-decoration:none; border:1px solid #969696;}
.pagination .paging .total { float:left; display:block; padding-top:2px; color:#999999;}
.pagination a.arrowRight,.pagination a.arrowRight:link,.pagination a.arrowRight:visited {float:left; display:inline; background:url(/cms/images/layout/arrow_right_gray.gif) no-repeat 50% 50%; text-indent:-9999em;}
.pagination a.arrowLeft,.pagination a.arrowLeft:link,.pagination a.arrowLeft:visited {float:left; display:inline; background:url(/cms/images/layout/arrow_left_gray.gif) no-repeat 50% 50%; text-indent:-9999em;}



/* ==============================================================
   GLOBAL STYLES
   ============================================================== */
.alert {
	overflow:hidden;
	border: 1px solid #ff6666;
	margin: 1em 0;
	padding: 10px;
	min-height: 50px;
	color: #fff;
	background-color: #ff0000;}
.alertSign {float:left;}
.alertItem {padding:10px 0; margin:0 0 0 50px;}
.alert a, .alert .date {color:#fff;}

.bdr        { border:1px solid #ccc; padding:1px; }
.bdrTop     { border-top:1px solid #999; }
.bdrRight   { border-right:1px solid #999; }
.bdrBottom  { border-bottom:1px solid #999; }
.bdrLeft    { border-left:1px solid #999; }

.bdrDash        { border:1px dashed #555244; }
.bdrDashTop     { border-top:1px dashed #999; margin-top:20px;}
.bdrDashRight   { border-right:1px dashed #999; }
.bdrDashBottom  { border-bottom:1px dashed #999; }
.bdrDashLeft    { border-left:1px dashed #999; }

.alternate	{background-color: rgba(0,0,0,0.03);}
.row		{background-color: #ffffff;}


/* ##  Error Markers  ## */

.fieldlbl {padding:4px 2px 0 0; text-align:right;}
.field {padding-left:2px;}
.fieldpad {padding-bottom:2px;}

.fieldtext {color:#000000;}
.fielderror {color:#cc0000;}
.fieldnorm {width:16px; height:20px;}
.fieldreq {width:16px; height:20px; background:transparent url(/cms/images/global/field-req.gif) no-repeat center right;}
 span.fieldreq {padding:0 6px; background-position:center center;}
 span.fieldnorm {padding:0 6px; background-position:center center;}
.fieldred {width:16px; height:20px; background:transparent url(/cms/images/global/field-error.gif) no-repeat center right;}
 span.fieldred {padding:0 6px; background-position:center center;}


/* ##  Tooltip Classes  ## */

.toolTipWrpr {display:none;width:340px;z-index:99;}
.toolTipShadow {background: url(/cms/images/core/tooltipbacktop.png) no-repeat top left;padding: 10px 13px 1px 13px;color:#666666;}
.toolTopShadowBottom {background: url(/cms/images/core/tooltipbackbottom.png) no-repeat top left;width:340px;height:16px;}
.toolTipDate {font-size:11px;color:#999999;font-weight:bold;}
.toolTipName {font-size:14px;color:#666666;font-weight:bold;margin-bottom:14px;}


/* ##  Generic Pager  ## */

.sortStatus {float:left;}
.genericPager {float:right;}
.genericPager ul {list-style-type: none; margin:0; padding:0;}
.genericPager li {float:left; display:block; margin:0 5px 5px 0;}
.genericPager li a {float:left; padding:4px 11px; background:#ecf0f1; text-decoration:none; }
.genericPager li a:hover, .genericPager li a:focus { background-color:#CFCFCF; text-decoration:none; }
.genericPager li.nolink {padding:4px 11px;}
.genericPager li.active {padding:4px 11px; background-color:#CFCFCF;}


/* ##  Smart Bug  ## */

.smartbug ul { list-style-type:none; background-color:#ccc; font-size:10px; border-left:1px solid #000; border-right:1px solid #000; border-top:1px solid #000; padding:0px; }
.smartbug li { border-bottom:1px solid #000; }
.smartbug a, .smartbug a:link, .smartbug a:visited { text-decoration:none; display:block; color:#000; padding:5px; }
.smartbug a:hover { background-color:#999; text-decoration:underline; }


/* ##  Master Overlay Styles ## */

.siteOverlay {
    display:none;
    position:relative;
    width:550px;
    max-width:95%;
    min-height:1px;
    background-color:#fff;
    z-index:1000;
    -webkit-border-radius:5px;
       -moz-border-radius:5px;
            border-radius:5px;
    -webkit-box-shadow:0 0 15px #333;
       -moz-box-shadow:0 0 15px #333;
            box-shadow:0 0 15px #333;
}
.siteOverlay .overlayBar {position:relative; padding:7px 10px; text-align:right; border-bottom:1px solid #e6e6e6;}
.siteOverlay .overlayClose {display:inline-block; cursor:pointer; z-index:5;}
.siteOverlay .overlayContent {padding:15px;}


/* =================================================================
                           MODULE STYLES
===================================================================*/

.bar {margin-bottom:10px;}

/* ##  Breadcrumb  ## */

.breadcrumbs a, .breadcrumbs a:visited { text-decoration:none; }
.breadcrumbs a:hover, .breadcrumbs a:focus, .breadcrumbs a:active { text-decoration:underline; }
.breadcrumbs span { margin:0 2px; font-weight:normal; }


/* ##  PAGE TOOLS  ## */
/* Print and Email icons and wrapper */

.pageToolsWrapper {float:right; display:inline; text-align:right;}

.pageTool { margin:0 10px 0; font-size:0.938em; color:#686868; font-weight:normal; text-decoration:none; cursor:pointer; }

.pageToolsWrapper a {display:inline; margin-left:10px; text-decoration:none;}
.pageToolsWrapper a:hover,
.pageToolsWrapper a:active {color:#1C4E87; text-decoration:none;}

.pageToolsWrapper a.bookmark,
.pageToolsWrapper a.bookmark:link,
.pageToolsWrapper a.bookmark:visited {padding:0 0 0 18px; margin-left:7px; background-position:0 -39px;}
.pageToolsWrapper a.bookmark:hover,
.pageToolsWrapper a.bookmark:active {background-position:0 -119px;}

.pageToolsWrapper .addthis_toolbox { float:right; display:inline; }
.pageToolsWrapper .addthis_toolbox a,
.pageToolsWrapper .addthis_toolbox a:link,
.pageToolsWrapper .addthis_toolbox a:visited {background:none; padding:0; margin:0 0 0 5px; }

.addthis_toolbox { display:inline; }

@media only screen and (max-width:47.9em){
	.pageToolsWrapper {display:none;}
}

/* ## Email a Friend ## */

.emailFriendWrapper {}
.emailFriendWrapper .inner { padding:10px; }
.emailFriendWrapper .emailFriendSender { margin:10px 0 20px; border-bottom:1px dashed #ccc; }
.emailFriendWrapper .emailFriendAdditional { margin:10px 0 0; padding:20px 0 0; border-top:1px dashed #ccc; }

/* =================================================================
                        PRINT STYLES
===================================================================*/

.hd  {padding:10px; border-bottom:3px solid #ccc; margin:0 0 10px 0;}
.ftr {padding:10px; border-top:3px solid #ccc; font-size:11px; text-align:center;}

.printBody {margin:0; padding:0; color:#333; background:#fff; width:100%;}
.printWrpr {width:660px; text-align:left; margin:0 auto; z-index:1;}

.emailBody {margin:0; padding:0; background:#fff; width:100%;}
.emailWrpr {width:680px; text-align:left; margin:0 auto; z-index:1;}

@media print {
	* { background: transparent !important; color: #000 !important; box-shadow:none !important; text-shadow: none !important; }
	a, a:visited { text-decoration: underline; }
	abbr[title]:after { content: " (" attr(title) ")"; }
	.ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }
	pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
	thead { display: table-header-group; }
	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; }
}

/* ## Button Styles ## */
/*
    <span class="btnWrapper"><input class="btn" value="Submit" /></span>
	or
	<a href="#" class="btnWrapper"><span class="btn">Submit</a></a>
*/

.btnWrapper { display:inline-block; text-decoration:none !important; }
.btn, a.btn {
	display:inline-block; 
	margin:0;
	padding:7px 26px; 
	font-weight:normal; 
	color:#fff; 
	background-color:#af392d;
	border-style:none;
	text-align:center; 
	text-decoration:none;
	cursor:pointer;
	overflow:visible; 
	border-radius:5px;
	font-weight:700;
}
.btn:hover, .btn:focus {background-color:#1a5379;}

.btnAlt .btn {color:#000000; background-color:#cccccc; border:1px solid #fff; text-align:center; text-decoration:none; cursor:pointer;}
.btnAlt:hover, .btnAlt:hover .btn { background-color:#E3E3E3; }

.btnLarge .btn {padding:5px 10px; font-size:1.4em;}

.btnFullWidth {display:block;}
.btnFullWidth .btn {display:block; padding-left:0; padding-right:0; }
.btnFullWidth input.btn { width:100%; }

/* ## modifier for icon fonts (IcoMoon) embedded within button wrapper ## */

.btnWrapper [class^="icon-"] { margin:0 3px; font-size:0.7em; }

/* ## truncate styling ## */

.truncateLink {}
.truncateLink a, .truncateLink a:link, .truncateLink a:visited { margin-left:5px; }
.truncateLink a.truncateMore, .truncateLink a.truncateMore:link, .truncateLink a.truncateMore:visited {}
.truncateLink a.truncateLess, .truncateLink a.truncateLess:link, .truncateLink a.truncateLess:visited {}

/* ## Footer Email Signup ## */

.emailSignup {margin:0 0 15px;}
.emailSignup p { margin:0 0 2px 0; }
.emailSignup .imgLabel {float:left; margin:5px 7px 0 0;}
.emailSignup .text {float:left; width:165px; margin:0 5px 0 0;}


/* ## Footer Social Follow ## */
.social-icons {margin:0 auto; text-align:center;}
.social-icons li {}
.social-icons a {font-size:2em; text-decoration:none; display:inline-block; display:inline-block; margin:0 15px 15px 0;}
.social-icons a:hover,
.social-icons a:focus {color:#000; text-decoration:none; }

#dialog-confirm{display: none;}
@media only screen and (min-width:48em){
	.social-icons {text-align:right;}
	.social-icons li {
		display: inline-block;
		margin: 0 0 15px 15px;
	}
}

/* ## Table Wrapper to allow for overflow/scroll on smaller screens ## */
.table-wrapper {overflow:auto; }
.data-table {
	widtH:100%;
	display: table;
	border-collapse:collapse;
	margin-bottom:20px;
}
.data-table tr:nth-child(odd) {background:#e6e6e6;}
.data-table th {background:#415161; padding:6px 15px; font-size:1em; border:1px solid #616E7C; border-bottom:2px solid #e84c3d; color:#fff;}
.data-table th a {color:#fff; text-decoration:underline;}
.data-table td {vertical-align:top; padding:6px 15px; border:1px solid #E1E1E1;}
.data-table td td {border-style:none;}

@media only screen and (max-width:47.9em){

	.responsive-table,
	.responsive-table thead,
	.responsive-table tbody,
	.responsive-table tr,
	.responsive-table td {
		display:block;
		width:100%;
	}

	.responsive-table tr {border:1px solid #E1E1E1;}
	.responsive-table th {display:none;}
	.responsive-table td {border-style:none;}

}

/* ## NEW Limit Text Box ## */

.limitTextBox {}
.limitTextBox span { display:none; }
.limitTextBoxBar { width:100%; margin:0px 0 15px 0; }
.limitTextBoxBarWrpr {
	width:100%;
	border:0px solid #000;
	overflow:hidden;
	font-size:9px;
	color:#000;
	white-space:nowrap;
	height:5px;
	background-color:#FDFBBE;}
.limitTextBoxBarInner { width:0%; background-color:#FF0000; }
.limitTextBoxInputWrpr { display:table-cell; width:100%; vertical-align:top; }
.limitTextBoxInputWrpr textarea { box-sizing:border-box; vertical-align:top; }
.limitTextBoxSpellWrpr { display:table-cell; padding-left:5px; vertical-align:top; }
.limitTextBoxSpellWrpr img { max-width:16px !important; cursor: pointer; }

.vd {padding:0 5px;}
.topOfPage {text-align:right;}
.topOfPage a {background:transparent url(/cms/images/arrow.gif) no-repeat 100% 50%; padding-right:13px;}

.figure-right {display:table; max-width:100%; float:right; margin:0 0 15px 20px;  border-top:3px solid #000; border-bottom:3px solid #000; padding:5px 0; max-width:50%;}
.figure-left  {display:table; max-width:100%; float:left; margin:0 20px 15px 0; border-top:3px solid #000; border-bottom:3px solid #000; padding:5px 0; max-width:50%;}
.figure-right figcaption,
.figure-left figcaption {margin-top:5px; display:table-caption; caption-side:bottom; font-size:0.9em;}

.figure-right img,
.figure-left img {
    display: block;
    width: 100%;}

@media only screen and (max-width:29.9rem){
	.figure-right,
	.figure-left {
		float:none;
		margin:0 auto 1rem auto;
		max-width:100%;
		text-align:center;
	}
}

.hidden-info, a.hidden-info { color:#fff; background:#000; -webkit-transition: all 0s; transition: all 0s; }
.hidden-info:focus { display:block; padding:10px; width:100%; text-align:center;  }

/* =================================================================
                        Media Queries
===================================================================*/

/* 16px baseline (768px +) */
@media only screen and (min-width:48em){

}


/* =================================================================
                       ADMIN buttons fix , module with no height
===================================================================*/

.modulePanel a, .modulePanel a:link, .modulePanel a:visited {
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
    box-sizing: content-box;
}

.overlayModulesWrprBrdr div.modulePanel {
	margin-right:7px;
}

.portlet-content-overlay {min-height:40px;}

.container [class*="grid_"] {
	font-size:14px;
}

.btn-location,
.btn-appointment {
	padding:30px 10px;
	background:#1B567E;
	color:#fff !important;
	font-weight:700;
	margin:0 0 20px 0;
	width:100%; 
	display:block;
	text-transform:uppercase;
	text-decoration:none;
	font-size:16px;
	text-align:center;
}

.btn-location:before {
	content:'\3e';
	font-family: 'Basic-Icons';
	font-size:20px;
	font-weight:bold;
	color:#e74c3c;
	margin-right:10px;
	position:relative;
	top:2px;
}

.btn-location span {
	color:#fff;
}

.btn-location:hover,
.btn-location:focus,
.btn-appointment:hover,
.btn-appointment:focus {background-color:#415161;}

.btn-appointment {
	background: #1B567E url(/cms/images/icon/check.png) 90% center no-repeat;
	padding-right:50px;
} 

.btn-explore {
	font-size:14px;
	padding:20px 25px 20px 10px;
	background: #1B567E url(/cms/images/icon/check.png) 98% center no-repeat;
	background-size:18px auto;
}

.location-finder {
	background:#415161;
	padding:14px 0;
	z-index:99;
	text-align:center;
}

a.quick-garage,
.find-location {
	margin:0 auto;
	width:280px;
} 

a.quick-garage {
    display: block;
    height: 45px;
    color: #fff;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 700;
    background: url(/cms/images/icon/garage.jpg) no-repeat left center #3498db;
    padding: 12px 30px 0 55px;
    border-radius: 3px;
    box-sizing: border-box;
	text-decoration:none;
	margin-top:5px;
} 

.find-location label {
	color:#fff !important;
	font-weight:bold !important;
	text-transform:uppercase;
	display:inline-block !important;
	margin:0 0 5px;
}

.find-location input[type="text"] {
	font-size:14px;
	font-weight:bold;
	float:left;
	width:calc(100% - 44px) !important;
	min-width:220px;
	margin:0 !important;
	padding:13px 10px 10px 10px !important;
}

.find-location input.btn {
    background: url(/cms/images/icon/check.jpg) no-repeat;
    width: 44px;
    height: 45px;
    border: none;
    cursor: pointer;
    border-radius: 0 3px 3px 0;
	float:left;
	text-indent:-9999em;
	padding:0;
}

@media only screen and (min-width:48em){
	.find-location {
		float:left;
		width:auto;
		margin-left:180px;
	}
	.find-location label {
		float:left;
		margin:10px 10px 0 0 !important;
	}	
	.find-location input[type="text"] {
		width:auto !important;
	}
	#locations .find-location input[type="text"] {
		width:265px !important;
	}	
	a.quick-garage {
		float:right;
		margin:12px 10px 0 0;
		width:auto;
	}
}

@media only screen and (min-width:64em){
	.find-location {
		margin-top:0px;
	}	
	 
	a.quick-garage {
		margin:0px 10px 0 0;
		padding:12px 30px 0 75px;
	}	
}
	



.footer-menu a {
	text-transform:uppercase;
	text-decoration:none;
	display:block;
	margin:5px 0;
}

.footer-menu a:hover,
.footer-menu a:focus {
	text-decoration:underline;
}

@media only screen and (min-width:48em){
	.footer-menu {
		max-width:635px;
	}
	.footer-menu {
		-webkit-columns: 3;
		-moz-columns: 3;
        columns: 3;
	}
	.footer-menu li {
		display: inline-block;
		width: 100%;
		padding-right:20px;
	}
}

.footer-boxes {
	margin:0 0 20px 0;
}

.footer-boxes h3 {
	text-transform:uppercase;
	margin:0 0 20px 0;
	font-size:18px;
}

.footer-box {
	padding:20px 0 20px 0;
}

.call {font-weight:bold;}

.copyright a {margin:0 3px;display:inline-block;}

@media only screen and (min-width:48em){

	.copyright {float:left;}
	.call {float:right;}
}

.hero {
	position:relative;
	background:#415161;
}

.hero p {
	margin:0;
}

#locations .find-location {
	margin:0 auto;
}

#locations .find-location label {
	display:block !important;
	float:none;
}

#locations {
	padding-bottom:20px;
	margin-bottom:20px;
}

#locations .container {
	position:static !important;
}

#locations h1 {
	color:#fff;
	text-shadow:#000 1px 1px 2px;
	text-transform:uppercase;
	padding:0 20px;
}

#locations .find-location {
	float:none;
	text-align:center;
}

#locations .locations-list {
	margin:0;
	padding:0;
	list-style-type:none;
	text-align:center;
}

.locations-list > div {
	padding:10px 20px;
	border:10px solid #f0f0f0;
}

#locations .locations-list a {
	color:#fff;
	font-weight:bold;
	text-transform:uppercase;
	text-shadow:#000 1px 1px 2px;
	text-decoration:none;
}
	#locations .locations-list {
		-webkit-columns: 2;
		-moz-columns: 2;
        columns: 2;
		font-size:14px;
	}
@media only screen and (min-width:30em){
	#locations .locations-list {
		/* -webkit-columns: 2;
		-moz-columns: 2;
        columns: 2; */
		font-size:16px;
	}
}

@media only screen and (min-width:48em){
	
	#locations .table-col:last-child {
		width:340px;
		padding-left:20px;
		vertical-align:middle;
	}
}

@media only screen and (min-width:80em){
	#locations {
		position:absolute; 
		top:80px;
		margin-left: auto;
		margin-right: auto;
		left: 0;
		right: 0;		
	}
	
	#locations .locations-list {
		-webkit-columns: 4;
		-moz-columns: 4;
        columns: 4;
	}
	
	#locations .find-location {
		text-align:left;
	}
}

#locations .find-location input[type="text"] {
	padding:9px 10px 10px 10px !important;
}
@media only screen and (max-width:47.938em){
	#locations .find-location input[type="text"] {
		font-size:14px;
		padding: 13px 10px 10px 10px !important;
	}
}

.locations-map + #locations {
	position:relative;
	background:#415161;
	top:0;
	padding:30px 0 40px 0;
}

.locations-map > div {
	width:100% !important;
}

.hero #locations {
	margin-bottom:0;
}

.text-content  {
	padding-top:2rem !important;
}

.rail-content {
	padding-top:2rem !important;
}

.box {
	background: #ecf0f1;
	margin: 0 0 20px 0;
	padding: 20px;
	position:relative;
}

.box h3 {
	font-size:1.1rem;
	margin-bottom:1rem;
}

.box h3:nth-of-type(2) {
	margin-top:30px;
}

.box p {
	margin-bottom:5px;
}

.directions {
	font-weight:bold;
	display:block;
}

.section-amenities img {margin:0 5px 5px 0;}

.list-columns {
	list-style-position: inside;
}
.list-columns li {
	padding-left: 1em;
    text-indent: -1em;
}

@media only screen and (min-width:48em){
	.list-columns {
		-webkit-columns: 2;
		-moz-columns: 2;
		columns: 2;	
	}
	
	.list-columns li {
		padding-right:40px;
	}
}

.iframe-box {
	position: relative;
	padding-bottom: 55%; // This is the aspect ratio
	height: 0;
	overflow: hidden;
	margin-bottom:1em;
}

.iframe-box iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
} 

.banner-list {
	margin:0;
	padding:0;
	list-style-type:none;
	text-align:center;
}

.banner-list li {
	margin:1rem 1%;
	padding:0 0 3rem 0;
	position:relative;
}

.banner-list li:after {
	content:"";
	display:block;
	position:absolute; 
	bottom:0;
	border-bottom:1px solid #ccc;
	width:70%;
	left:15%;
}

.banner-list li img {
	margin:0 0 1rem 0;
}

.banner-list li h3 {
    font-size: 22px;
	margin:0;
}

.banner-list li p {
	color: #555555;
	margin:0;
}

.banner-list li a {
    font-size: 18px;
    font-weight: 700;
    display: block;
	text-decoration:none;
	white-space:nowrap;
		position:absolute;
		bottom:1rem;
		width: 100%;
}

.banner-list li a:after {
	content:'\3e';
	font-family: 'Basic-Icons';
	font-weight: bold;
	font-size: 17px;
	vertical-align: middle;
	display: inline-block;
	margin-top: -3px;
}

@media only screen and (min-width:600px){
	.banner-list {
		display: -webkit-box;
		display: -moz-box;   
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		flex-wrap: wrap;
		-ms-flex-wrap:wrap;
		width: 100%;	
		justify-content: center; 
	}
	
	.banner-list li {
		width:48%;
	}
	
	.rail-content .banner-list li {
		width:100%;
	}
}

@media only screen and (min-width:48em){
	.banner-list li {
		width:31%;
	}	
}

.location-rail .banner-list,
.banner-list.mobile {
	margin-bottom:3rem;
}

.location-rail .banner-list li {
	width:100%;
}

#home_legend {
    position: relative;
	background:#f3f4f8;
}

#home_legend > img {
    width: 150% !important;
	max-width:150%;
    margin-left: -50%;
}

@media only screen and (min-width:48em){
	#home_legend img#home-legend-image {
		display: block;
		width: 100%;
		max-width:100%;
		height: auto;
		margin:0;
	}
}
.home-legend-feature {
    position: absolute;
    z-index: 999;
}

#home_legend .plus_button {
    cursor: pointer;
    width: 45px;
    height: 45px;
}

.bubble {
    position: absolute;
    z-index: 50;
    left: -60px;
    top: -98px;
    width: 260px;
    height: 100px;
    color: #fff;
    padding: 15px 15px 0 15px;
    font-size: 12px;
    font-weight: 500;
    line-height: 140%;
}

.bubble.hover {
	display:block !important;
	opacity:1 !important;
}

.bubble-text {
    position: relative;
    z-index: 11;
}

.bubble-text a {
    color: #222;
}

.bubble-bg {
    background: url(/cms/images/bg_popup_bubble.png) no-repeat center bottom;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 10px;
    z-index: 10;
    background-size: cover;
}

#home_legend > br {
    display: none;
}

.legend {
	position:relative;
	background:#f3f4f8;
}

.legend .home-legend-content {
    padding: 20px;
    width: 100%;
	font-size:14px;
}

@media only screen and (min-width:48em){
	.home-legend-content {
		position: absolute;
		top: 0%;
		left: 0;
		transition: all 0.5s ease-in;
	}
	.home-legend-content h1, .home-legend-content p {
		width: 250px;
	}
}
@media only screen and (min-width:48em) and (max-width:59.9em) {
	.legend .home-legend-content {
		padding: 15px;
		font-size:13px;
	}
}


@media only screen and (min-width:60em){
	.home-legend-content {
		top: 30%;
	}	
	.home-legend-content h1, .home-legend-content p {
		width: 300px;
	}	
}

@media only screen and (max-width:47.9em){
	
	#home_legend .plus_button {
		width:30px;
		height:30px;
	}
	.home-legend-feature:nth-of-type(1) {
		left: 5.88% !important;
	}	
	.home-legend-feature:nth-of-type(2) {
		left: 58% !important;
	}		
	.home-legend-feature:nth-of-type(3) {
		left:23% !important;
	}
	.home-legend-feature:nth-of-type(4) {
		left:53% !important;
	}	
	.home-legend-feature:nth-of-type(5) {
		left:2% !important;
	}		
	.home-legend-feature:nth-of-type(6) {
		left:27% !important;
	}	
	.home-legend-feature:nth-of-type(7) {
		left:71% !important;
	}	
}

.wrapper {
    margin: 0 auto;
    max-width: 80em;
}

img.alignleft {
	float:left;
	margin:0 20px 0 0;
}

.sitemap table {
    width: 100%;
	background:#415161;
	table-layout:fixed;
}

.sitemap table td {
    border: 10px solid #fff;
    display: block;
    padding: 30px;
    vertical-align: top;
}

.sitemap table a {color:#fff;}

@media only screen and (min-width:60em){
	.sitemap table td {
		display: table-cell;
	}
}

.coupons-list {
	text-align:center;
}

.coupons-list > div {
	margin-bottom:3rem;
}

.coupon {
	border: 2px dashed #666;
	padding: 0 10px;
	margin-bottom: 20px;
	text-align: center;
}

.coupon-price {
	height: 125px;
	font-size: 55px;
	margin: 20px auto;
	position: relative;
}

.coupon .price {
	font-weight:bold;
    position: absolute;
    top: 30px;
    left: 0;
    right: 0;
}

.coupon .off {
    position: absolute;
    right: 14px;
    bottom: -10px;
    font-size: 25px;
    text-transform: uppercase;
	font-weight:bold;
}

.coupon h2 {margin: 0; line-height:1.2;}
.coupon h2 span { /* font-weight:normal; */ display:block; }
.coupon .coupon-top h2 + p {font-size: 1.4rem; font-weight: bold; } 	

.coupon .valid-at {
    overflow: hidden;
    text-align: center;
}

.coupon .valid-at img {
    float: left;
    margin: 0 15px;
	width:70px;
    display: inline-block;
    vertical-align: middle;
    padding-bottom: 15px;
}

.coupon .valid-at .text {
    overflow: hidden;
    text-align: left;
}

.coupon .valid-at .text .header {
	font-weight:bold;
}

.coupon  hr {
    margin: 15px auto;
    width: 80%;
}

.coupon .disclaimer {
	font-size: 12px;
	text-align: left;
}

.coupon .disclaimer .bottom {
	text-align:right;
}

.link-popup {
	font-weight:bold;
}

.coupon-popup {
	position: relative;
	background: #FFF;
	padding: 20px;
	width: auto;
	max-width:800px;
	margin: 20px auto;
	text-align:center;
}

.coupon-popup .table-col {
	padding:20px;
	vertical-align:middle;
}

.coupon-popup .share {
	margin:2rem 0;
}

.coupon-popup .coupon{
	margin-bottom:0;
}

.coupon-popup .btn {
	padding:20px 50px;
	text-transform:uppercase;
}

@media print {
	.hide-for-print .site-header,
	.hide-for-print .location-finder,
	.hide-for-print .main-content,
	.hide-for-print .site-footer,
	.hide-for-print .share-col {
		display:none;
	}
}

@media only screen and (min-width:48em){
	.coupons-list > div {position:relative; padding-bottom:30px;}
	.coupons-list .link-popup {
		position:absolute; 
		bottom:0px;
		right:20px;
		left:20px;
	}
}

.coupons-list.home {
	padding:20px 10px;
}

@media only screen and (min-width:30em){
	.coupons-list.home > div {
		 margin:0 auto;
	}
}
 
.mobile {}
.desktop {display:none;}

@media only screen and (min-width:48em){
	.mobile  {display:none;}
	.desktop {display:block;}
}

@media only screen and (max-width:60em){
	.location-main,
	.location-rail {width:100% !important;}
}
@media only screen and (min-width:48em){
	.nc-area {padding-left: 0 !important; padding-right: 0 !important;}
	.nc-area > div > p {display:none;}
	
	.nc-area .coupons-list {
		float:left;
		width:50%;
		padding:0 10px
	}
	.nc-area .coupons-list:nth-child(2n) {clear:left;}
}

#car-lights{
	margin-bottom:20px;
}

#car-lights tr {
	border-top:1px solid #E1E1E1;
	border-bottom:1px solid #E1E1E1;
}

#car-lights td {vertical-align:top; padding:20px 20px 20px 0;}
#car-lights td:first-child {width:250px;}
.careersMainWrpr{width: 100%;}
.careers-listing-table{width: 100%; overflow-y: scroll;}
.careersMainTopMargin{width: 100%; overflow-y: scroll;}
@media only screen and (max-width:47.9em){
	#car-lights tr {border-left:0; border-right:0;}
	#car-lights td:first-child {width:100%; padding-bottom:0;}
}

.section-details {
	margin:0 0 2rem 0;
}

.section-details h2 {
	background:#ecf0f1;
	text-transform:uppercase;
	padding:10px;
	font-size:1.1rem;
}

.section-certifications img {
	margin:0 30px 10px 0;
	max-width: 160px !important;
	max-height: 160px !important;
}

.popup-gallery .gallery-item {
	display:inline-block;
	text-decoration:none;
	margin:0 1% 20px;
	width:100%;
	vertical-align:top;
	text-align:center;
}

.popup-gallery .gallery-item img {
	padding:2px;
}

@media only screen and (min-width:30em){
	
	.popup-gallery .gallery-item {
		margin:0 1% 20px;
		width:47.5%;
	}
}

@media only screen and (min-width:60em){
	.popup-gallery .gallery-item {
		margin:0 1% 20px;
		width:22.5%;
	}	
}

.popup-gallery .caption {
	font-size:14px; 
	margin-top:5px;
	color:#000;
	text-decoration:none;
	max-width:100%;
}

.region-title {
	background:#3498db;
	color:#fff;
	padding:10px;
	font-weight:bold;
	text-transform:uppercase;	
}

.location-group {
	padding:10px 10px;
	background:#ececec;
	border-bottom:1px solid #000;
}

.location-group-title {
	font-weight:bold;
	text-transform:uppercase;
	text-decoration:none;
	color:#000 !important;
	display:block;
	position:relative;
	padding-right:15px;
	
}

.location-group-title:after {
	content:'+';
	font-family: 'Basic-Icons';
	font-size:12px;
	font-weight:normal;
	position:absolute;
	right:0px;
	top:1px;
}

.active .location-group-title:after {
	content:"-";
}

.location-info {
	display:none;
	background:#ececec;
	font-size:12px;
	padding:10px 0 0 0;
}

.active .location-info {
	display:block;
}

.location-group h5,
.location-group p {
	margin:0;
}

.warranty {
	text-align:center;
	margin-top:20px;
}

.warranty-icon {
	/*
	bottom:20px;
	right:20px;
	position:absolute;
	width:100px;
	*/
	margin-top:10px;
}

.mobile .warranty {
	margin-bottom:20px;
}


.location-rail {
	margin-top:1rem;
}

@media only screen and (min-width:60em){
	.location-rail {
		margin-top:0rem;
	}
}

.newsletter-box {
	text-align:center;
}

.faq-anchor {
	padding-top: 180px;
	margin-top: -180px;
}

@media only screen and (min-width:64em){
	.faq-anchor {
		padding-top: 150px;
		margin-top: -150px;
	}	
}

.form-box .btnWrapper,
.form-box .btnWrapper .btn {
	width:100%;
	display:block;
}

.form-box .btnWrapper {
	margin:0 10px;
}


.special-offers {
	position:absolute;
	right:72px;
	top:20px;
}

.special-offers a {
	font-size: 14px;
	padding: 7px 10px;
	background: url(/cms/images/icon/scissors.png) no-repeat 90% center #e74c3c;
	background-size:0px auto;
	color: #fff;
	box-sizing: border-box;
	display: block;
	font-weight: 700;
	text-transform: uppercase;
	text-align: center;
	transition: all 0.5s ease-in;
	text-decoration:none;
}

@media only screen and (min-width:30em){
	.special-offers a {
		padding: 7px 35px 7px 10px;
		background: url(/cms/images/icon/scissors.png) no-repeat 95% center #e74c3c;
		background-size:20px auto;
	}
}

@media only screen and (min-width:48em){
	.special-offers {
		right:10px;
		top:93px;
	}
}

@media only screen and (min-width:1700px){
	.special-offers {
		right:0;
		top:0;
	}
	
	.special-offers a {
		padding: 25px 46px 24px 0;
		width: 230px;
		font-size: 16px;
		background-size:auto auto;
	}
	
}

.area-bar {
	color:#fff;
}

.area-bar h1 {
	color:#fff;
	margin:2px 0 1px 0;
	text-transform:uppercase;
}

.area-full-width p {
	margin:0;
}
	
.service-title {
	background:#415161;
	color:#fff;
	text-align:center;
	padding:5px 10px;
}

.service-title h2 {
	color:#fff;
	margin:0;
	text-transform:uppercase;
}

.area-listing {
	background: #ececec;
	color: #000;
	padding:2rem 0;
}

.coupon.theme1 h2 {
	background: #f44242;
	color: #fff;
	padding:10px;
	margin:0 0 0.7em 0;
}

.one-column .text-content .find-location  {
	float: none;
	width: auto;
	margin-left: 0;
	margin-bottom:1rem;
}

.one-column .text-content .find-location label {
    color: #222 !important;
}

.one-column .text-content .find-location input[type="text"] {
	font-size:14px;
}

.follow img {margin:0 7px 0 0;}

.follow .g-map img {margin:-3px 7px 0 -3px;}

.infoWindowContent {
	font-size:14px;
	color: #222;
	font-family: 'Open Sans';
	line-height: 1.6;
	letter-spacing:0.2px;
}

.infoWindowContent .btn {
	margin-top:10px;
	margin-right:10px;
}



/* Ticket #487365 - Snap Finance Image Size Error */

.section-easypay.snap a img {
	width: 100px;
	margin-bottom: 10px;
	height: 130px;
	display: block;
}

.section-easypay.snap {
	height: 160px;
}

/* Ticket #548960 - Microsite Header Fonts and Styles Have Changed */
.section-credit > p:first-child,
.section-easypay > p:first-child,
.section-easypay > p:first-child,
.section-services > p:first-child,
.section-gallery > p:first-child,
.section-reviews > p:first-child,
.section-fleet > p:first-child,
.coupon-top p {
	font-size: 14pt;
	font-family: Arial;
	color: rgb(67, 67, 67);
	font-variant-numeric: normal;
	font-variant-east-asian: normal;
	vertical-align: baseline;
	white-space: pre-wrap;
	font-weight: bold
}

/* Ticket #577787 - Coupon Text */
.grid_12.text-content .coupon .off {
	right: 0;
	left: 0;
	padding-left: 160px;
}