/* set up variables */
:root {
	--baseFont: 'Open Sans';
	--headlineFont: 'Open Sans';
	--black: #000;
	--white: #fff;
	--gray: #909090;
	--lightGray: #eeeeee;
	--firebrick: #cc3333;
	--paleGreen: #dff2bf;
	
	--linkColor: #006837;
	--linkHoverColor: #000;
	--hxColors: #006837; /* h1-h4 color */
	--navColor: #006837;
	--navHoverColor: #cccccc;
	
	--buttonColor: #006837;
	--buttonBgColor: #fecd00;
	
	/* site specific colors*/
	--nero: #222222;
	--yellow: #fecd00;
	--orange: #EC552A;
	--sapphire: #002662;
	--darkGreen: #006837;
}

.black { color: var(--black);}
.white { color: var(--white);}

.darkColor { color: var(--gray); } 
.lightColor { color: var(--lightGray) } 

.bgWhite { background-color: var(--white);}
.bgBlack { background-color:var(--black);}

.bgDarkColor { background-color: var(--gray);}
.bgLightColor { background-color: var(--lightGray);}

/***** CSS Reset *****/
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, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    font-size:100%;
    font:inherit;
    vertical-align:baseline;
	background:transparent;
}

/***** HTML5 display-role reset for older browsers *****/
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {display: block;}
body {line-height:1;-webkit-text-size-adjust:100%;}
ul {list-style:none;}
ol li {
	padding-bottom: 20px;
    line-height: normal;
    margin-left: 20px;
    padding-left: 5px;    
}
blockquote, q {quotes:none;}
blockquote:before, blockquote:after, q:before, q:after {content:'';content:none;}
table {border-collapse:collapse;border-spacing:0;}
.tableCell { display: table-cell; }

/*************************/
html {font-size:62.5%;}
body {
    color: var(--nero);
    font-size:16px;
    font-size:1.6rem;
    font-weight:normal;
    font-family: var(--baseFont), san-serif;
    background: var(--white);
}
body>iframe {display:none;} /* This kills the empty iframe from captcha that causes a white block at the bottom of the contact page. */

/***** Defaults *****/
strong {font-weight:bold;}
p {line-height:1.7;margin-bottom:20px;}
.grayLine {margin:30px 0;border-top:1px solid var(--gray);}
.center {text-align:center;}
.right {text-align:right;}
.relative {position:relative;}
.noMargin {margin:0;}
.noBMargin { margin-bottom: 0; }
.section.nestedSection {padding:0;}
.col.noTopMargin {margin-top:0;}
.col.noTopBotMargin {margin-top:0;margin-bottom:0;}
.imgResponsive {display:block;max-width:100%;}
.imgResponsive.center {margin:0 auto;}

/***** Default Headers *****/
h1, h2, h3, h4, h5 {
    display:block;
	color: var(--hxColors);
    font-size:44px;
	font-size:4.4rem;
	font-family: var(--headlineFont), san-serif;
	line-height:1;
	margin-bottom:40px;
}
h1 {padding-top:20px;font-weight:bold;}
h2 {font-size:38px;font-size:3.8rem;margin-bottom:20px;font-weight: bold;}
h3 {font-size:30px;font-size:3rem;margin-bottom:20px;}
h4 {font-size:24px;font-size:2.4rem;margin-bottom:20px;}
h5 {font-size:18px;font-size:1.8rem;margin-bottom:20px;}

/***** Default Links *****/
a, a:active, a:visited {color:var(--linkColor);text-decoration:none;} 
a:hover {color:var(--linkHoverColor);text-decoration:none;}

/***** Default Container Classes *****/
.inner, footer, .section.group.inner {
    max-width:1200px;
    position:relative;
    margin:0 auto;
}

/* header */
.socialIcon { width: 16px;padding-left:20px;  transition: 0.3s; }
.socialIcon:hover { opacity: 0.6; }

#topBar { text-align: center; padding:10px 0; }

.header {
  overflow: hidden;
  background-color: var(--lightGray);
  padding: 20px 10px;	
}

.header a.logo {
  font-size: 25px;
  font-weight: bold;
}

.header a.menuLink {
  float: left;
  color: var(--navColor);
  text-align: center;
  padding: 12px;
  font-size: 18px; 
  line-height: 25px;
}

.header a:hover {
  color: var(--navHoverColor);
}

.header a.active {
  color: var(--navHoverColor);
}

.headerLinks {
  float: right;
}

#headerPhone {
    margin: 20px 0;
    text-align: right;
    padding-right: 12px;	
}

a.mobileMenuLink {
    float: none;
    text-align: right;
}	

/***** Navigation Menu *****/
nav {
	font-family: var(--baseFont), san-serif; 
	font-weight: 600;
}

/* slider */
#sliderContainer {     
/* 	max-width: 1200px; */
    position: relative;
    margin: 0 auto;
    overflow: hidden;
}

/***** Slider *****/
#slides {
    height: 430px;
    width: 100%;
	max-height: 500px;
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;	
}

#slides_mobile {
    min-height: 440px;
    width: 100%;
    display: none;
}

.sliderLearnMoreButton:hover { cursor: pointer; }

/* mobile menu */
#mobileMenuDiv { overflow: hidden; } /* not always used */
.mobileMenuLink { text-align: right;clear:right;margin: 10px 20px 10px 0;}
.mobileMenuLink:hover {cursor:pointer;}

.mobileMenu {
    z-index: 10;
    position: relative;
    margin-top: -2px;
}
    
.mobileMenu li {width:100%;}
.mobileMenu li a {display:block;margin:0;font-size:18px;font-size:1.8rem;padding:15px 0 15px 10%;
    background: var(--black);
    padding: 15px 0 15px 10%;
    border-top: 1px solid var(--black);
    color: var(--white);
}
.mobileMenu a:hover, .mobileMenu li a.active {color:var(--black);background:var(--gray);cursor:pointer;}
.mobileMenu ul ul {display:none;background:var(--lightGray);}
.mobileMenu li li {text-align:left;}
.mobileMenu li li a {font-size:16px;font-size:1.6rem;padding-left:15%;}
.mobileMenu a.lastSub {border:0;}
.mobileMenuLink img { width:50px; }

.mobileMenuLink, .mobileMenu, .mobileOnly, .col.mobileOnly {display:none;overflow: hidden;}

#headerInterior {
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;
}

/*
.headerInterior, .headerInterior_mobile {
    font-size: 0;
    height: 240px;
*/
    
#headerInteriorTitle { 
    font-family: var(--headlineFont), san-serif;
    width: 100%;
	font-weight: bold;
    text-align: center;
    color: rgba(255, 255, 255, 0.80);
    font-size: 45px;
    font-size: 4.5rem;
    padding: 4% 0;
    margin-bottom: 0;
}  

#cmsContainer { padding-bottom: 4%; }

#socialContainer {
    padding: 5%;
    clear: both;
    width:100%;
}

/*
#footer { 
	padding: 2% 4% 0 4%;
	margin:0 auto;
}

#footer h2 {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    color: var(--white);
}

#footer ul { 
  margin: 1% 0 0 0;
  padding: 0;
  text-align: center;
  overflow: hidden;
}

#footer li {
    display: inline-block;
    margin: 0 15px;
	/* float: left;
	padding-right: 5%; */
}
/*
#footer li:first-child {
	margin-left: 0;
}

#footer li:last-child {
	margin-right: 0;
}

#footer li a {
  display: block;
  color: var(--white);
  text-align: center;
  text-decoration: none;
  font-size: 18px;
  font-size: 1.8rem;
  text-transform: uppercase;
}   

#footer li a:hover {
  color: var(--black);
}	
	

#footer span {
    display: block;
    font-size: 15px;
    font-size: 1.5rem;
    padding: 0;
    margin: 12px 0;
    color: var(--white);
    font-weight: 400;
}   

#footer a { color: var(--white); }

#footer a:hover, #footer a.active { color: var(--black); }
*/
#logoFooter { width:auto;height:175px; }

#copyright { 
	font-size: 12px;
	font-size: 1.2rem;
    padding: 2% 2% 0 0;
    color: var(--white);
}

#copyright a {
    color: var(--white);
	text-decoration: none;
}

#copyright a:hover {
    text-decoration: underline;
}

#designedBy {
	text-align: right;
    color: var(--white);
    padding: 0 0 1% 2%;
	font-size: 12px;
	font-size: 1.2rem;
}

#designedBy a { color: var(--white); }
#designedBy a:hover { color: var(--black); }

#pageContent {
    padding-top: 3%;
    padding-bottom: 3%;}
}

/***** WYSIWYG Content *****/
.wysiwyg {min-height:400px;}
.wysiwyg h1 {padding-top:20px;font-weight:bold;}
.wysiwyg h2 {font-weight:bold;font-size:30px;font-size:3rem;line-height:1.2;margin-bottom:10px;}
.wysiwyg h3 {font-weight:bold;font-size:24px;font-size:2.4rem;line-height:1.2;margin-bottom:10px;}
.wysiwyg p {font-size:inherit;line-height:1.7;}
.wysiwyg p+ul {margin-top:-10px;}
.wysiwyg li+ul {list-style:circle;margin-bottom:0;}
.wysiwyg span {font-size:inherit !important;line-height:inherit !important;}
.wysiwyg img {max-width:100%;height:auto;}
.imageLeft {float:left;margin:0 40px 40px 0;}
.imageRight {float:right;margin:0 0 40px 40px;}
.imageCenter {display:block;margin:0 auto;}
.imageFull { width: 100%; }

.wysiwyg a, .wysiwyg a:active, .wysiwyg a:visited {
	font-weight: bold;
}

/***** Contact Section *****/
.contactInfo {line-height:1.5;}
.contactInfo span {display:block;}
#googleMap {height:375px;width:100%;margin-bottom: 40px;}

/***** Contact Form Table *****/
label { margin: 15px 0 10px;display: inline-block;line-height: normal;}

input, textarea {width:100%;font-family:var(--baseFont);font-size:16px;font-size:1.6rem;padding:15px 0;text-indent:10px;margin-bottom:10px;border:none;}
textarea {width:98%;padding-left:10px;text-indent:0;}

select {
  background-color: white;
  border: 1px solid var(--gray);;
  border-radius: 0px;
  display: inline-block;
  font: inherit;
  line-height: 1.5em;
  padding: 0.5em 3.5em 0.5em 1em;
  /* reset */
  margin: 0 0 10px 0;      
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24"><path d="M7 10l5 5 5-5z"/><path d="M0 0h24v24H0z" fill="none"/></svg>') 100% 50% no-repeat #fff; }
}

select.minimal {
  background-image:
    linear-gradient(45deg, transparent 50%, gray 50%),
    linear-gradient(135deg, gray 50%, transparent 50%),
    linear-gradient(to right, var(--gray), var(--gray));
  background-position:
    calc(100% - 20px) calc(1em + 2px),
    calc(100% - 15px) calc(1em + 2px),
    calc(100% - 2.5em) 0.5em;
  background-size:
    5px 5px,
    5px 5px,
    1px 1.5em;
  background-repeat: no-repeat;
  width: 100%;
}

select.minimal:focus {
  background-image:
    linear-gradient(45deg, green 50%, transparent 50%),
    linear-gradient(135deg, transparent 50%, green 50%),
    linear-gradient(to right, var(--gray), var(--gray));
  background-position:
    calc(100% - 15px) 1em,
    calc(100% - 20px) 1em,
    calc(100% - 2.5em) 0.5em;
  background-size:
    5px 5px,
    5px 5px,
    1px 1.5em;
  background-repeat: no-repeat;
  outline: 0;
}

input.submitButton, a.button, a.button:visited, a.donateButton, a.donateButton:visited {
	display: inline-block;
    color: var(--buttonColor);
    width:auto;
	text-indent:0;
    padding:15px 25px;
    margin:10px 0 0;
    border:0;
    border-radius:0px;
    background:var(--buttonBgColor);
    border: none; /*1px solid var(--buttonBgColor);*/
	transition-property:background;
	transition-duration:.2s;
	transition-timing-function:linear;
	-webkit-appearance:none; /* kills weird styling Apple does to the button on the phone. Dumb Apple. */
}
input.submitButton:hover, a.button:hover, a.donateButton:hover {cursor:pointer;color:var(--buttonBgColor);background:var(--buttonColor); border: none;-webkit-appearance:none; /* kills weird styling Apple does to the button on the phone */
 }

/***** Form Error Message *****/
#errorMessage, #successMessage {
    width:auto;
    color:var(--white);
    line-height:1;
    padding:20px;
    margin-bottom:20px;
    background:var(--firebrick);
}
#successMessage {color:var(--black);padding-left:70px;background:var(--paleGreen) url("/img/greenCheck.png") no-repeat 10px 50%;
}
span.errorGeneral, span.errorLine {display:block;}
span.errorLine {text-indent:15px;}

/* left menu on inside pages */
/*** Left Menu ***/
.rightMenu {width:90%; border-left: 2px solid var(--black);min-height: 200px;padding-bottom: 2%;}
h3.rightMenuHead {color:var(--black);font-size:24px;font-size:2.4rem;padding-left: 16px;}
/*
.rightMenu ul {width:100%;list-style-image:none;padding:0;margin:0;}
.rightMenu li {padding:4px 0;line-height: normal;}
*/
.rightMenu a {display:block;padding-left: 6px;}
/* .rightMenu a.active, .rightMenu a:hover {color:var(--white);background:var(--black);line-height: normal; } */

ul.list {list-style:disc;margin:0;padding-left:20px;}
.arrowList, .wysiwyg ul, .wysiwyg ol {display:inline-block;margin:0 0 20px 20px;padding-left:20px;list-style:disc;/*list-style-image:url('/img/arrow.png');*/}
.wysiwyg ol {list-style-image:none;list-style:decimal;}
.arrowList li, .wysiwyg li {padding:5px 0;line-height:1.3;}
.wysiwyg ul, .wysiwyg ol {display:inherit;}


.redButton {
	display: inline-block;
    background: var(--firebrick);
    color: var(--white);
    font-size: 16px;
    font-size: 1.6rem;
    padding: 12px 30px;
    border: 1px solid var(--firebrick);	
    margin-top: 25px;
	-webkit-appearance:none; /* kills weird styling Apple does to the button on the phone */
}

span.whiteLink {
    color: var(--white);
    border-bottom: 1px solid var(--black);
    padding: 20px 0 7px 0;
    display: inline-block;
    font-size: 20px;
    font-size: 2.0rem;
}

span.whiteLink:hover { 
    color: var(--black);
    border-bottom: 1px solid var(--white);
}

.floatLeft { float:left ; }
.floatRight { float:right; }

/* https://caniuse.com/?search=align-items */
.centerVertical {
    display: flex;
	align-items: center;
	justify-content: center;
}

.centerVH {
    display: flex;
	align-items: center;
	justify-content: center;
}

/* Back to top */
.backToTop:link, .backToTop:active, .backToTop:visited {float:right;
	display:none;
	position:fixed;
	bottom:5%;
	right:2%;
	color:#000;
	font-size:18px;
	font-size:1.8rem;
	padding:15px 10px 10px;
	text-align:center;
	background:rgba(255,222,46, 0.8);
	z-index:999;
	width:40px;
	transition: 0.3s;
}
.backToTop:hover {background-color:rgb(255,222,46);}

/* old web browser */
#oldBrowser {
	background: #ffff93;
	border-bottom: 2px solid #000;
}
#oldBrowser h1 { margin-bottom:5px; }


div#vegasSliderCaption {
    color: rgba(255,255,255, 0.9);
    font-size: 60px;
	font-size: 6.0rem;
    font-weight: bold;
    position: absolute;
    bottom: 30px;
    left: 45px;
    text-align: left;
	width: 80%; 
}
div.sliderSmallText { font-size: 30px; font-size: 3.0rem; }

