@charset "UTF-8";
/* Web Solutions 4.0 Compatible */

:root {
	--blue: #0072B3;
	--light-blue: #57C4D9;

	--purple: #AC0E8B;

	--red: #C00031;
	--light-red: #F04446;

	--turquoise: #006A85;
	--light-turquoise: #1398B0;
	--dark-turquoise: #134E5D;

	--dark: #373030;
	--light: #E9F0F2;

	--border: #D9E0E1;
	--light-gray: #CAC7C7;
	--dark-gray: #4A4A4A;
	--gray: #5A5A5A;

	--ws-gutter: 1.5em;
}

/* TYPE FACES ----------------------------- */
@font-face {
	font-family: 'Raleway Regular';
	src: url('/fonts/Raleway-Regular.woff2') format('woff2'), url('/fonts/Raleway-Regular.ttf') format('ttf');
}

@font-face {
	font-family: 'Raleway Regular Italic';
	src: url('/fonts/Raleway-Italic.woff2') format('woff2'), url('/fonts/Raleway-Italic.ttf') format('ttf');
}

@font-face {
	font-family: 'Raleway Medium';
	src: url('/fonts/Raleway-Medium.woff2') format('woff2'), url('/fonts/Raleway-Medium.ttf') format('ttf');
}

@font-face {
	font-family: 'Raleway SemiBold';
	src: url('/fonts/Raleway-SemiBold.woff2') format('woff2'), url('/fonts/Raleway-SemiBold.ttf') format('ttf');
}

@font-face {
	font-family: 'Raleway Bold';
	src: url('/fonts/Raleway-Bold.woff2') format('woff2'), url('/fonts/Raleway-Bold.ttf') format('ttf');
}

@font-face {
	font-family: 'Bitter Regular';
	src: url('/fonts/Bitter-Regular.woff2') format('woff2'), url('/fonts/Bitter-Regular.ttf') format('ttf');
}

@font-face {
	font-family: 'Bitter SemiBold';
	src: url('/fonts/Bitter-SemiBold.woff2') format('woff2'), url('/fonts/Bitter-SemiBold.ttf') format('ttf');
}

@font-face {
	font-family: 'Bitter SemiBold Italic';
	src: url('/fonts/Bitter-SemiBoldItalic.woff2') format('woff2'), url('/fonts/Bitter-SemiBoldItalic.ttf') format('ttf');
}

@font-face {
	font-family: 'Bitter Bold';
	src: url('/fonts/Bitter-Bold.woff2') format('woff2'), url('/fonts/Bitter-Bold.ttf') format('ttf');
}

@font-face {
	font-family: 'Bitter Bold Italic';
	src: url('/fonts/Bitter-BoldItalic.woff2') format('woff2'), url('/fonts/Bitter-BoldItalic.ttf') format('ttf');
}

html { -webkit-box-sizing: border-box; box-sizing: border-box; }
*, *:before, *:after { -webkit-box-sizing: inherit; box-sizing: inherit; }
body {margin:0;padding:0;-webkit-text-size-adjust:none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}

img{border: 0}
ul{padding-left: 0}
ul li{list-style:none}

html, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address,
big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl,
dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, hr {
	font-family:inherit;
	font-size:inherit;
	font-style:inherit;
	font-weight:inherit;
}

table {border-collapse:collapse}
td, th {empty-cells:show;vertical-align: middle;text-align:left;}
body {background: #FFF;overflow-x: hidden;}
body>header>aside { position: absolute; }
#skipNavigation{background:#fff;color:#000;padding:.5em;position:absolute;left:0;top:-1000px;z-index:10}
#skipNavigation:focus,#skipNavigation:active{top:0;}
iframe[src="/management/login/persistSession.aspx"] {display: none}
/*page widths*/
body>header, #mainnav, main, body>footer, #alertApp{clear: both;width:100%;display:block;}

.wrap, body>footer>.fatFooter, #alertApp>* {
	width:100%;
	max-width: calc(66.75em + 2 * var(--ws-gutter));
	margin-left:auto;
	margin-right:auto;
	padding-left: var(--ws-gutter);
	padding-right: var(--ws-gutter);
	position:relative;
}

main.interior>.wrap {background: #FFF;margin: -1px auto 0;max-width: calc(58.75em + 2 * var(--ws-gutter));}

.fullWidth main.interior .wrap { max-width: calc(50em + 2 * var(--ws-gutter)); }

.text-center { text-align: center; }


/* TYPOGRAPHY ----------------------------- */
body, .text, input, button, select, textarea {
	font-family: 'Raleway Regular', sans-serif;
	line-height: 1.55;
	color: var(--gray);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-feature-settings: "lnum";
	-moz-font-feature-settings: "lnum";
	font-feature-settings: "lnum";
}


/* Raleway Regular */
#sidenav li li a, blockquote footer, blockquote cite {
	font-family: 'Raleway Regular', sans-serif;
	font-style: normal !important;
	font-weight: 400;
}

/* Raleway Regular Italic */
figcaption, #content ul.image-block figcaption {
	font-family: 'Raleway Regular Italic', sans-serif;
	font-style: normal;
}

/* Raleway Medium */
body>header #mainnav a, #programs.landing .includes li, body>header #mobilenav a, #mobilenav span, #programs.landing .includes li a {
	font-family: 'Raleway Medium', sans-serif;
	font-style: normal;
}

/* Raleway SemiBold */
h1, #sidenav li a, #interior-cta .textbox h2, #callouts h3, #news-events h2, #callouts h2, #support h2  {
	font-family: 'Raleway SemiBold', sans-serif;
	font-weight: 400;
}

/* Raleway Bold */
h2, h3, h4, h5, h6, body>header #mainnav>ul>li:last-child>a, body>footer strong, .more-info a, .contact-info a, strong, b {
	font-family: 'Raleway Bold', sans-serif;
	font-style: normal;
	font-weight: 400 !important;
}

/* Bitter Regular */
h1>span, h2>span, #programs .textbox p {
	font-family: 'Bitter Regular', serif;
	font-style: normal;
	font-weight: 400;
}

/* Bitter SemiBold */
#hero h1>span, #callouts h2>span, #support h2>span, #tagline h2>span, #welcome.programs h1>span,
#welcome.programs .intro, #programs .textbox p, #interior-cta .textbox h2>span, .intro, .intro p {
	font-family: 'Bitter SemiBold', serif;
}

/* Bitter SemiBold Italic */
blockquote, blockquote p {
	font-family: 'Bitter SemiBold Italic', serif;
	font-style: normal !important;
}

/* Bitter Bold */
blockquote p::before, blockquote p::after,
button, .button, input[type="button"], input[type="submit"], input[type="reset"],
#callouts li span, #programs h2, #programs span, #programs.landing a,
#programs.landing h3 {
	font-family: 'Bitter Bold', serif;
}

/* Bitter Bold Italic */
.highlight h1, .highlight h2 {
	font-family: 'Bitter Bold Italic', serif;
}


h1 { color: #FFF; }
h2 { color: var(--turquoise); }
h3 { color: var(--gray); }
h4 { color: var(--blue); }
h5{ color: var(--turquoise); }
h6 { color: var(--gray); }

.intro, .intro p {color: var(--dark);line-height: 1.4;}
p, time { color: var(--dark-gray); }
p.intro, .intro p:last-of-type { margin: 0 0 1.5em;}

p>b, p>strong { color: var(--dark); }

.text{font-size: 1rem}

a { color: var(--light-red); text-decoration:none; }
a:hover, a:active { color:var(--blue); }

h1 {margin: 0 0 .5rem;}
p, h2, h3,h4, h5, h6, hr,#content ul,.contentEditor ul,blockquote,dd,ol{margin-top:0;margin-bottom:1rem}
h1, h2, h3, h4, h5, h6, th { line-height: 120%;}

p + h2, p + h3, p + h4, p + h5, p + h6,
ul + h2, ul + h3, ul + h4,
ol + h2, ol + h3, ol + h4,
blockquote + h2, blockquote + h3 { margin-top: 2em; }

.textColor, th, dt { color: var(--dark-gray) }

em, i, q, cite, .italic{font-style:italic}
#content b, #content strong { color: var(--dark); }
u{text-decoration:none}
hr{border:0;border-top:1px solid rgba(0,0,0,.15);margin: 1.75em 0;padding-top:1px;}
p {font-size:1em}

sup, sub {font-size:.6em; line-height:.6em;vertical-align:baseline;position:relative}
sup {bottom:1ex}
sub {top:.5ex}

blockquote {
	color: var(--turquoise);
	float: right;
	font-size: 1.25em;
	line-height: 1.3;
	margin: 1em 0 1.5em var(--ws-gutter);
	max-width: 50%;
	text-align: right;
	width: 15em;
}

blockquote p {
	color: var(--turquoise);
	font-size: 1em;
}

blockquote p:last-of-type {
	margin: 0 0 .5em;
}

blockquote footer, blockquote cite {
	color: var(--dark-gray);
	font-size: .875rem;
}

blockquote footer::before, blockquote cite::before {
	content: '- ';
}

blockquote p { quotes: '\201c' '\201d'; }
blockquote p::before {color: var(--dark-turquoise); content: open-quote;margin: 0 0 0 -.25em;position: relative;left: -.125em;}
blockquote p::after  { color: var(--dark-turquoise); content: close-quote; margin: 0 0 0 .125em; }

/* MAIN ------------------------------ */
img {max-width: 100%;height: auto;}
.menu{cursor: pointer}
main, .mceContentBody{background:#fff}
.contentEditor{background:#fff;min-width:100%;}

/* sidenav */
#sidenav{width:100%;overflow:hidden;margin: 0 0 3em;}
#sidenav ul{padding: 0}
#sidenav li a{border-radius: .1875rem;color: var(--dark-turquoise);padding: .375em .5em;line-height:1.1em;display:block;}
#sidenav li a:hover, #sidenav li a:active, #sidenav>ul>li.on>a:hover {
	background-color: var(--light-blue);
	color: #FFF;
}
#sidenav li.on>a{color: var(--light-turquoise);}

#sidenav>ul>li.on>a {
	background-image: url('/images/icons/arrow-circle-down.svg');
	background-repeat: no-repeat;
	background-position: right 1em top .625em;
	background-size: .8125em .8125em;
	padding: .375em 2.25em .375em .5em;
}

/* t2 */
#sidenav li.on ul{
	background: var(--light);
	border-radius: .3125rem;
	padding: .125em .5625em .125em .125em;
}

#sidenav li.on ul li a{
	color: var(--dark);
	font-size: .9375em;
	padding: .3125em .5em .3125em .5em;
}

#sidenav li ul li a:active,
#sidenav li ul li.on>a{color: var(--blue);background: #FFF;}

#sidenav li ul li:not(.on) a:hover,
#sidenav li ul li:not(.on) a:focus {background: var(--light-blue);color: #FFF;}

/* t3 */
#sidenav li ul li.on ul{background: #FFF;border-radius: 0;padding-bottom:.5em;border:0;}
#sidenav li ul li.on ul li{border:0}
#sidenav li ul li.on ul li a{padding-left:1rem;font-size:.8em;color:#666}
#sidenav li ul li ul li a:hover,
#sidenav li ul li ul li a:active,
#sidenav li ul li ul li.on>a{color: var(--dark);background: var(--light);}

/* t4 */
#sidenav li ul li ul li.on ul li a{padding-left:1.5rem;font-size:.7em;color:#666}
#sidenav li ul li ul li ul li a:hover,
#sidenav li ul li ul li a:active,
#sidenav li ul li ul li ul li.on>a{color:#000; background:#f5f5f5;}

/*section callouts*/
main>div>aside section{margin:0 0 20px;padding:10px}
main>div>aside section:hover{background:#FFC}
main>div>aside section h1{margin:0;font-size:1.2em}
main>div>aside section p{margin:0}

/* breadcrumb */
.breadcrumb{margin-bottom: 1em}
.breadcrumb a:after{content: "\00A0\00A0\203A\00A0"}

/* content */
#content {word-wrap:break-word}
#content .photoright, #content .photoleft{max-width:50%;height:auto;width: 17.5em;}
#content p .photoright, #content p .photoleft {width: 15.5625em;}

#content .photoright.small, #content .photoleft.small { width: 10em; }

#content .photoright.full img {width: 100%;}
.photocenter figcaption, .photoleft figcaption { font-size: .8125rem; }
.photoright figcaption { font-size: .8125rem; text-align: right; }

.photocenter { text-align: center; }

#content .photoright img,#content .photoleft img, img.photoright {
	border: 2px solid var(--light-gray);
	border-radius: .3125em;
	max-width: 100%;
	height:auto;
	margin: 0;
}

img.photoleft { margin: 0 2.5em 0 0; }
img.photoright {margin: 0 0 1em 2.5em;}

#content .photoright img,#content .photoleft img { float: none; }

#content img.phototreatment{max-width:50%;height:auto}
#content figure.phototreatment{width: 100%;text-align: center}
#content figure.phototreatment img{max-width: 100%;width: auto;height: auto}
img.phototreatment,img.photoright,img.photoleft,.photoright img,.photoleft img {max-width: 100%;height: auto}
.photoright{float:right;clear:right}
.photoleft{float:left;clear:left}
.muted {opacity:0.5;filter:alpha(opacity=50)}
small, .textSm{font-size:.8em}
#content table{width:100%}

.highlight, #content .highlight,  #content .blue {
	background: var(--light);
	clear: both;
	padding: 1.75em var(--ws-gutter) 1.25em;
	margin: 2em 0;
}

.shareIcons{display:inline-block;position:relative;overflow:auto}
.shareIcons a{display:block;float:left;margin:0 .5em 1em 0;height:20px;width:20px;background-position:center center; background-repeat:no-repeat;background-size:contain;border-radius:.2em;-webkit-box-shadow: inset 0px -2px 0px 0px rgba(0, 0, 0, .2);box-shadow: inset 0px -2px 0px 0px rgba(0, 0, 0, .2)}
.shareIcons a:hover{background-color:#F03C5E}
.shareFacebook{background-color:#3b5998; background-image:url(../../images/icons/64x64/facebook.png)}
.shareTwitter{background-color:#00aced; background-image:url(../../images/icons/64x64/twitter.png)}
.shareLinkedin{background-color:#007bb6; background-image:url(../../images/icons/64x64/linkedin.png)}
.shareGoogle{background-color:#dd4b39; background-image:url(../../images/icons/64x64/google-plus.png)}

.anchor {
	position: relative;
	top: -8em;
}

/* list */
#content ol { margin: 1.5em 0 1em 1.875em; }

#content ol li { font-size: 1.125em; margin: 0 0 1em; }
#content ol ol li {list-style: lower-alpha}

#content ul { margin: 1.25em 0; }

#content ul::after {
	display: block;
	content: '';
	clear:both;
}
#content ul li {
	font-size: 1.125em;
	margin: 0 0 .5em;
	position: relative;
	padding-left: 1.875em;
}

#content ul li li, #content ol li li { font-size: 1em; }

#content ul li:before{
	background: url('/images/icons/arrow-right.svg') no-repeat center / cover;
	content: '';
	height: .5625em;
	left: .875em;
	position: absolute;
	top: .5em;
	width: .625em;
}

#content ul li ul li:before{opacity: .5}

#content ul ul,
#content ol ol {
	margin-top: 1em;
}

/* Image block */
#content ul.image-block { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 2em 0; }
#content ul.image-block li { padding: 0; }
#content ul.image-block li::before { display: none; }

#content ul.image-block figure { margin: 0;text-align: center;}
#content ul.image-block figure img{max-width:100%;max-height: 100%;height: auto;}
#content ul.image-block figcaption { font-size: .875rem; text-align: center; }

#content ul.two { margin: 2em -.75em; }
#content ul.two li { padding: 0 .75em; width: 50%; }


/* addon classes */
.clearFloats{clear:both}
.nobr{white-space: nowrap}
.twoCol, .threeCol, .resCol{
	-webkit-column-rule:0;
	column-rule:0;
	-webkit-column-gap:2em;
	column-gap:2em;
}
.twoCol *, .threeCol *, .resCol * {
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	break-inside: avoid;
}
.threeCol {margin-bottom: 2rem;}
.req{color:#c00}
.textIcon{background:#999; background-color:rgba(0,0,0,.2);font-size:.8em;line-height:1em;display:inline-block;padding:.2em .4em;border-radius: .5em;color:#fff}
.textIcon:hover{background:#666; background-color:rgba(0,0,0,.4);color:#fff}
.clearfix:after{content: "";display: table;clear: both;}

.videoContainer {margin: 2em 0 2.5em;width: 100%;height:0;line-height:0;position: relative;padding-top:56.25%; /* 16:9 */}
.videoContainer.ratio-4-3 {padding-top:75%; /* 4:3 full-frame */}
.videoContainer iframe {position:absolute;left:0;top:0;right:0;bottom:0;width:100%;height:100%;border:0}

/* forms */
input, button, select, textarea {font-size:1rem;line-height: 1.2em}

input[type="text"], input[type="password"], input[type="tel"], input[type="number"],
input[type="email"], input[type="url"], input[type="search"], input[type="button"],
input[type="submit"], input[type="reset"] textarea, select {
	border-radius:0;
	outline: none;
	-webkit-appearance:none;
	font-size: 1rem
}

input[type="text"], input[type="password"], input[type="tel"], input[type="number"],
input[type="email"], input[type="url"], input[type="search"], textarea, select{
	border: 1px solid rgba(0,0,0,.1);
	background-color:rgba(0,0,0,.02);
	padding: .5em .75em;
	width: 100%;
}

input[type="text"]:focus, input[type="password"]:focus, input[type="tel"]:focus,
input[type="number"]:focus, input[type="email"]:focus, input[type="url"]:focus,
input[type="search"]:focus, textarea:focus, select:focus{ background-color:#FFF }

textarea{display:block;}

select::-ms-expand { display: none; }
select {
	background-image: url('/images/icons/select-arrows.svg');
	background-repeat: no-repeat;
	background-position: calc(100% - .875em) calc(50% + .125rem);
	max-width: 100%;
	padding-right: 2.15rem;
	width: auto;
	-webkit-appearance: none;
	-moz-appearance: none;
}

select option {
	padding: 0 .2em;
	-moz-white-space: pre-wrap;
	-o-white-space: pre-wrap;
	white-space: pre-wrap;
}

input::-moz-focus-inner {border:0;padding:0;}

button,.button,input[type="button"],
input[type="submit"], input[type="reset"] {
	background: var(--purple);
	border: 0;
	border-radius: 1.25em;
	color: #FFF;
	display: inline-block;
	font-size: 1em;
	margin: 0 .375em .75em 0;
	text-align: center;
	padding: .75em 1.625em;
	line-height: 1;
	cursor: pointer;
}

p>.button { font-size: .889em; }

.button.light-red {
	background: var(--light-red);
}

.button.turquoise {
	background: var(--turquoise);
}

.button.blue {
	background: var(--blue);
}

.button.dark-red {
	background: var(--red);
}

button:hover,.button.hover,input[type="button"]:hover,
input[type="submit"]:hover,input[type="reset"]:hover,
.button:hover,.button:focus,input[type="button"]:focus,
input[type="submit"]:focus,input[type="reset"]:focus{
	background-color: var(--dark-turquoise);
	color: #FFF;
}

h2 + .button, h3 + .button, h4 + .button, h5 + .button, h6 + .button { margin-top: 1em; }

button img{height:1em;width:auto;vertical-align:top}
input.bulky, .bulky {padding:.4em .6em;font-size:1.2em}
.formTable, .formTable table{width:100%}
.formTable input[type="text"], .formTable input[type="password"], .formTable input[type="tel"], .formTable input[type="number"], .formTable input[type="email"], .formTable input[type="url"], .formTable input[type="search"], .formTable textarea{width:100%}
.formTable table td,.formTable table td:first-child{padding-bottom:0}
.formTable.right td:first-child{text-align:right;width:1%}
.formTable.right td{width:auto}
.subjClass{display:none !important;}
#Captcha label{padding-left:0}
td.right, th.right{text-align:right}
.wsNew{display:inline-block;font-size:.7em;line-height:1.5em;height:1.5em;padding:0 .3em;margin:.3em 0;background-color:#FFC700;overflow:visible;vertical-align:top;color:#fff;font-style:italic}
.formEdit select, .formBuilder select { width:40%; }

/* pagination */
.pagination{font-size:.95em;text-align:right}

/* page header */
.pageHeader{width:100%;height:auto;margin-bottom:2em}

/* alert */
#alertApp {background: var(--blue);cursor: pointer;font-size: 1rem;position: relative;width: 100%;padding: .75rem var(--ws-gutter);z-index: 1;}
#alertApp:not(.alertStatic):hover, #alertApp.expand {background: var(--orange);}
#alertApp.alertStatic {pointer-events: none;}
#alertApp h1 {color: #000;font-size: 1.25em;line-height: 1.25rem;margin: 0 auto;padding: .1875rem 0;text-align: center;}
#alertApp:hover h1,#alertApp.expand h1 {color: #FFF;}
#alertApp #alertDesc {height: 0;overflow: hidden;}
#alertApp p {color: #FFF;font-size: .9375rem;line-height: 1.5;margin: 0;padding: .5rem 0 .75rem;position: relative;text-align: center; z-index: 1;}

/* management overrides */
#wysiwygBody{background:#fff}
#tinymce .contact-info { clear: both }
#tinymce ul li {
	list-style: disc;
	list-style-position: inside;
	padding-left: 1em;
}

#tinymce img.photoleft, #tinymce img.photoright {
	height: auto;
	max-width: 50%;
  }

table.manage img {max-width: none;}

/* management table */
hr+.manage{margin-top:-1em}
.manage{ width:100%;line-height:1.3em; margin-bottom: 1rem; }
.manage th{border-bottom:1px solid rgba(0,0,0,.2);text-align:left}
.manage th.right{text-align:right}
.manage th.sort{cursor:pointer}
.manage th.sort img{margin-left:5px}
.manage th img {position:relative;bottom:-2px}
.manage td,.manage th{padding:5px 5px 5px 0}
.manage td:first-child{padding-left:.8em}
.manage img.preload{display:none;position:absolute;z-index:9900;top:0;border:solid 1px #fff}
.manage td.icons img{margin-left:5px;position:relative;bottom:-2px}
.manage td:first-child.icons img{margin-left:0}
.manage td:first-child.icons{padding-left:3px;padding-right:3px}
.manage td:nth-child(2) {overflow-wrap: break-word;word-wrap: break-word;-ms-word-break: break-all;word-break: break-all;word-break: break-word;-ms-hyphens: auto;-webkit-hyphens: auto;hyphens: auto;}
.manage td.icons a:first-child img{margin-left:0}
.manage td.icons input{position:relative;bottom:2px;margin-left:5px}
.manage .hidden{font-style:italic;color:#900}
.manageButton{text-align:right;padding:10px 0}
.alternate tbody tr:nth-child(even), .even{background:#fff}
.alternate tbody tr:nth-child(odd), .odd {background:rgba(0,0,0,.06)}
.manage+hr, .manage+.manageLinks+hr{margin-top:50px}
.manageLinks{margin-top:10px}
.manageLinks select { max-width: 20em; }
.manageLinks a{white-space:nowrap}
.manageLinks a img{position:relative;bottom:-2px}
.manageLinks button{margin-left:5px}
.manageButtons{text-align: right;padding:10px 0}
.wsReturnToButton {float:right;margin-top: -2.5em;}
.manage.rightFirstChild td:first-child{text-align:right}
.sortRow th{cursor:pointer}
.manageEllipsis{ width:12.5em; overflow: hidden; text-overflow: ellipsis; white-space:nowrap; display:inline-block; }


/* FOOTER ------------------------------ */
body>footer {
	background: #0B2D36;
	padding: 2.5em 0 0;
	color: rgba(255,255,255,.7);
	clear: both;
}

body>footer a { color: #FFF; }
body>footer a:hover, footer a:active {color: var(--light-blue);}

body>footer a.on, footer .on>a{
	text-decoration: none;
	color: #FFF;
}

body>footer .copyright nav a { white-space: nowrap; }

body>footer strong {
	color: #FFF;
	display: block;
	font-size: 1rem;
	margin: 0 0 1em;
	text-transform: uppercase;
}

body>footer .fatFooter {
	margin-bottom: 3em;
}

body>footer address,
body>footer .locations {
	font-size: .875rem;
}

body>footer .locations ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

body>footer .locations li {
	margin: 0 0 1em;
	width: 50%;
}

body>footer .social li, body>footer .social a { display: inline-block; }
body>footer .social svg { height: 1.25em; opacity: .5; width: auto; }
body>footer .social a:hover svg, body>footer .social a:focus svg { opacity: 1; }

body>footer img {
	border-radius: .3125rem;
	height: auto;
	width: 9.375em;
	display: block;
}
body>footer a:hover img {opacity: .75;}

body>footer .footer-bottom {
	background: var(--turquoise);
	color: #FFF;
	padding: 1em 0;
}

body>footer .copyright {font-size: .875rem; line-height: 1.875; }

body>footer nav ul { margin: 0; }
body>footer nav ul li { display: inline-block; }
body>footer nav span::before {content: '.'; padding: 0 .5em; }
body>footer nav li:last-of-type span { display: none; }

body>footer .footer-bottom a:hover, body>footer .footer-bottom a:focus { color: rgba(255,255,255,.75); }

/* TRANSITIONS ------------------------------ */
a, a::before, a::after, button, .button, input[type="button"], input[type="submit"],
.rsFullscreenBtn, #alertApp, #alertApp span, #alertDesc, #navContainer li, .hamburger,
#mobilenav span, #mobilenav span svg path {
	-webkit-transition: all .3s ease;
	transition: all .3s ease
}

input:focus, select:focus, textarea:focus{
	-webkit-transition: background-color .3s ease;
	transition: background-color .3s ease
}


/* FORM ERROR ------------------------------ */
.formError { background-color: black; border:0; padding: 5px 10px; color: #FFF; display: none; margin:0 0 2px; z-index:9999; border-radius: 10px; -moz-box-shadow:0 2px 2px #333; -webkit-box-shadow: 0 2px 2px #333; }
.formError p {margin:0; font-size:.9em; }
.formError em { border:10px solid;  border-color:Black transparent transparent; bottom:-17px; display:block; height:0; left:40px; position:absolute; width:0; }


/* ANIMATIONS ------------------------------ */
.stop-transitions * {
	-webkit-transition: none !important;
	-o-transition: none !important;
	transition: none !important;
}

.fade-in,
.translate-left, .translate-right, .translate-down, .translate-up {
	opacity: 0;
	position: relative;
	-webkit-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
}

.translate-left { transform: translate(3rem,0); }
.translate-right { transform: translate(-3rem,0); }
.translate-up { transform: translate(0,3rem); }
.translate-down { transform: translate(0,-3rem); }


.animated {opacity: 1;}

.translate-left.animated, .translate-right.animated,
.translate-up.animated, .translate-down.animated { transform: translate(0,0); }


/* PAGEHEADER ------------------------------ */
.pageheader {
	background: var(--turquoise);
	overflow: hidden;
	padding: 3em var(--ws-gutter) 5em;
	position: relative;
	text-align: center;
	z-index: 0;
}


.pageheader.programs {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	max-height: 30em;
	padding: 0;
	position: relative;
}

.pageheader.programs::after {
	content: '';
	display: block;
	padding: 0 0 28.5%;
}

.pageheader.programs .curved-bottom {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.pageheader p {
	color: #FFF;
}


/* SHARED ------------------------------ */
#hero h1,
#callouts h2,
#support h2,
#tagline h2,
#welcome.programs h1 {
	color: var(--turquoise);
	font-size: 2.0625em;
	line-height: 1.2;
	text-transform: uppercase;
}

#hero h1>span,
#callouts h2>span,
#support h2>span,
#tagline h2>span,
#welcome.programs h1>span {
	color: var(--light-turquoise);
	display: block;
	font-size: .6em;
	text-transform: none;
}

.curved-bottom {
	overflow: hidden;
	position: relative;
	z-index: 0;
}

.curved-bottom::before {
	background: linear-gradient(90deg, var(--turquoise) 0%, rgba(54,157,176,1) 100%);
	border-radius: 50%;
	content: '';
	height: 50em;
	left: 50%;
	min-width: 85em;
	position: absolute;
	transform: translateX(-50%);
	top: calc(100% - 2.75em);
	width: 250%;
	z-index: 1;
}

.curved-bottom::after {
	background: #FFF;
	border-radius: 50%;
	content: '';
	height: 50em;
	left: 50%;
	min-width: 85em;
	position: absolute;
	transform: translateX(-50%);
	top: calc(100% - 2.125em);
	width: 250%;
	z-index: 2;
}

/* INTERIOR CTA ------------------------------ */
#interior-cta {
	text-align: center;
}

#interior-cta .textbox {
	background: var(--turquoise);
	grid-area: textbox;
	padding: 3.5em 0 2.75em;
	position: relative;
	z-index: 0;
}

#interior-cta .textbox::before {
	background: url('/images/logo-watermark.svg') no-repeat center / 27.3125em 20.875em;
	content: '';
	height: 100%;
	left: 0;
	opacity: .05;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
}

#interior-cta .wrap { max-width: 25em; }

#interior-cta .textbox h2 { color: #FFF; font-size: 2.0625em; text-transform: uppercase;}
#interior-cta .textbox h2>span {color: var(--light-blue);display: block;font-size: .6em;font-style: normal;text-transform: none;}
#interior-cta .textbox p { color: #FFF; font-size: 1.25em; }

#interior-cta .button { margin: 0; }

/* Programs page overrides ----- */
#interior-cta.light .textbox::before { background-image: url('/images/logo-watermark-white.svg'); opacity: .35; }
#interior-cta.light .textbox { background: var(--light); }
#interior-cta.light .textbox h2 { color: var(--turquoise); }
#interior-cta.light .textbox p { color: var(--gray) }


/* HERO ------------------------------ */
#hero {
	overflow: hidden;
	position: relative;
}

#hero h1 { margin: 0 0 1rem}

.slideContainer, .slide-inner, .slide, .slick-slide, .slick-list, .slick-track {
	max-height: 70vh;
}

/* CALLOUTS ------------------------------ */
#callouts {
	background: var(--light);
	padding: 2em 0 6em;
}

#callouts.curved-bottom::after {
	background: var(--turquoise);
}

#callouts li>a>div {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border: .125rem solid var(--light-gray);
	border-radius: .3125rem;
	margin: 0 0 1em;
	padding: 0 0 66%;
}


#callouts h3 {color: var(--turquoise);font-size: 1.375em;line-height: 1;}
#callouts p { color: var(--gray); }

#callouts li span {
	background: url('/images/icons/arrow-circle-right.svg') no-repeat right center / auto 1em;
	color: var(--dark);
	padding: 0 1.5em 0 0;
	text-transform: uppercase;
}

#callouts a:hover h3,
#callouts a:hover span {
	color: var(--light-red);
}

/* PROGRAMS (Home) ------------------------------ */
#programs {
	background: var(--turquoise);
	text-align: center;
}

#programs.home { padding: 5em 0; }

.interior #programs:not(.landing) { background:#fff; margin:4em 0 2em 0; }

#programs.home ul, .interior #content #programs ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 -1em;
}
.interior #content #programs ul {margin: 0;}

#programs.home li {
	margin: 0 0 5em;
	padding: 0 1em;
	width: 25%;
}

#programs.home li>a, #programs.landing li>div, .interior #content #programs li>a {
	background: #FFF;
	border-radius: .3125em;
	display: block;
	height: 100%;
	position: relative;
}
.interior #content #programs li>a {background: var(--light);}

#programs.home li>a, .interior #content #programs li>a { padding: 3em 1em 2em; }

#programs li:nth-child(even)>a { background: var(--light);}

#programs li>a::before, #programs.landing li>div::before, .interior #programs li>a::before {
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto 1.875em;
	border: .25rem solid #FFF;
	border-radius: 50%;
	content: '';
	height: 4.4375em;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 4.4375em;
}

#programs li.childhood>*::before { background-color: var(--red); background-image: url('/images/icons/support-1.svg'); }
#programs li.elderly>*::before { background-color: var(--purple); background-image: url('/images/icons/support-2.svg'); }
#programs li.emergency>*::before { background-color: var(--light-red); background-image: url('/images/icons/support-3.svg'); }
#programs li.employment>*::before { background-color: var(--light-blue); background-image: url('/images/icons/support-4.svg'); }
#programs li.energy>*::before { background-color: var(--light-red); background-image: url('/images/icons/support-5.svg'); }
#programs li.financial>*::before { background-color: var(--blue); background-image: url('/images/icons/support-6.svg'); }
#programs li.health>*::before { background-color: var(--red); background-image: url('/images/icons/support-7.svg'); }

.interior #content #programs li.money>*::before { background-color: var(--purple); background-image: url('/images/icons/donate-solid.svg'); }
.interior #content #programs li.time>*::before { background-color: var(--red); background-image: url('/images/icons/clock.svg'); }
.interior #content #programs li.goods>*::before { background-color: var(--blue); background-image: url('/images/icons/box-heart.svg'); }


.interior #content #programs ul li:before {display: none;}

#programs h2 {
	color: var(--dark);
	font-size: 1.125em;
}

#programs p {
	color: var(--gray);
}

#programs span,
#programs.landing .details a {
	color: var(--dark-turquoise);
	font-size: 1.0625em;
	text-transform: uppercase;
}

#programs a:hover span, #programs a:focus span,
#programs.landing li a:hover, #programs.landing li a:focus {
	color: var(--light-red);
}

#programs.home h2 {margin: 0 0 1.25rem;padding: 0 1em;}


/* PROGRAMS (Landing page overrides) ------------------------------ */
#programs.landing { padding: 3em 0 1em; }

#programs .textbox {
	margin: 0 auto 5em;
	max-width: 41.5em;
}

#programs .textbox p {
	color: #FFF;
	font-size: 1.25em;
}

#programs.landing .wrap>ul>li {
	margin: 0 0 3.5em;
	padding: 0;
	text-align: left;
	width: 100%;
}

#programs.landing .wrap>ul>li>div {
	display: flex;
	justify-content: space-between;
	padding: calc(var(--ws-gutter) / 2);
}

#programs.landing .details {
	padding: 2.5em clamp(var(--ws-gutter), 5vw, 4em);
	width: 60%;
}

#programs.landing .includes {
	border-radius: .3125rem;
	background: var(--light);
	border: 1px solid var(--border);
	padding: 2.5em var(--ws-gutter) 2em;
	max-width: 22.125em;
	width: 40%;
}

#programs.landing .includes li {
	font-size: 1.125em;
	line-height: 1.2;
	position: relative;
	padding-left: 1.875em;
}

#programs.landing .includes li a {
	color: var(--gray);

}

#programs.landing .includes li a:hover { color: var(--light-red); }
#programs.landing .includes li a::before { display: none; }

#programs.landing .includes li:not(:last-child) {margin: 0 0 .75em;}

#programs.landing .includes li::before {
	background: url('/images/icons/arrow-circle-right.svg') no-repeat center / cover;
	content: '';
	height: .75em;
	left: .75em;
	position: absolute;
	top: .1825em;
	width: .75em;
}

#programs.landing h2 { font-size: 1.5em; }
#programs.landing h3 {color: var(--dark); font-size: 1.125em; }

/* SUPPORT ------------------------------ */
#support {
	padding: 2em 0 3em;
	text-align: center;
}

#support .wrap>div {
	margin: 0 auto 2em;
	max-width: 36em;
}

#support li { margin: 0 0 1em; }

#support li>div {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border: .125rem solid var(--light-gray);
	border-radius: .3125rem;
	padding: 0 0 68%;
}

/* NEWS-EVENTS ------------------------------ */
#news-events {
	background: var(--light);
}

#news-events .events {
	background: rgba(255,255,255,.5);
}

#news-events h2 {
	background-position: .5em center;
	background-repeat: no-repeat;
	background-size: auto 1em;
	color: var(--dark);
	font-size: 2.0625em;
	padding: 0 0 0 1.875em;
	text-transform: uppercase;
}

#news-events .news h2 { background-image: url('/images/icons/newspaper.svg'); }
#news-events .events h2 { background-image: url('/images/icons/calendar.svg'); 	padding: 0 0 0 1.625em; }
#news-events .careers h2 { background-image: url('/images/icons/list.svg'); background-position: 0 center; padding: 0 0 0 1.25em; }

#news-events h3 {
	color: var(--light-turquoise);
	font-size: 1.125em;
	margin: 0 0 .375rem;
}

#news-events ul {	margin: 0 0 1.5em; }
#news-events li {	border-bottom: .0625rem solid var(--border); padding: .875em 1em; }
#news-events ul>li:first-child { padding-top: 0; }

#news-events time {	color: var(--dark); }
#news-events p { color: var(--gray); }


#news-events a:hover h3 { color: var(--light-red); }
#news-events .events a:hover h3 { color: var(--purple); }

/* TAGLINE ------------------------------ */
#tagline {
	background: url('/images/home/bg-tagline.jpg') no-repeat center / cover;
	overflow: hidden;
	padding: 8em 0 10em;
	position: relative;
	text-align: center;
	z-index: 0;
}

#tagline::before {
	background: var(--turquoise);
	content: '';
	height: 100%;
	left: 0;
	opacity: .89;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
}


#tagline .wrap {
	max-width: 50em;
}

#tagline h2, #tagline h2>span {	color: #FFF; }
#tagline h2>span { margin: 0 0 .375em; }

#tagline .curve {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

#tagline .curve::before {
	background: linear-gradient(90deg, rgba(54,157,176,1) 0%, var(--turquoise) 100%);
	border-radius: 50%;
	content: '';
	height: 50em;
	left: 50%;
	min-width: 85em;
	position: absolute;
	transform: translateX(-50%);
	top: calc(100% - 2.75em);
	width: 250%;
	z-index: 1;
}

#tagline .curve::after {
	background: #FFF;
	border-radius: 50%;
	content: '';
	height: 50em;
	left: 50%;
	min-width: 85em;
	position: absolute;
	transform: translateX(-50%);
	top: calc(100% - 2.125em);
	width: 250%;
	z-index: 2;
}

/* WELCOME ------------------------------ */
#welcome {
	overflow: hidden;
	position: relative;
	z-index: 0;
}

#welcome .wrap {
	max-width: calc(36.125em + (2 * var(--ws-gutter)));
	padding: 3em var(--ws-gutter) 5em;
	text-align: center;
}

.home #welcome .button {font-size: .889em;}
#welcome .button:first-of-type { margin-top: 1.25em; }

/* Programs page overrides */
#welcome.programs .wrap {max-width: calc(40em + (2 * var(--ws-gutter)));padding: 1em var(--ws-gutter) 7em;}
#welcome.programs::after { display: none; }
#welcome.programs::before { background: var(--turquoise); }




/* MORE INFORMATION BOX ----------------- */
.more-info {
	background: var(--light);
	border-radius: .625rem;
	color: var(--dark);
	display: flex;
	justify-content: space-between;
	margin: 3em 0;
	padding: calc(var(--ws-gutter) / 2);
}

.more-info>section { padding: calc(var(--ws-gutter) / 2); width: 50%; }
.more-info>section:nth-child(1) {  }
.more-info>section:nth-child(2) {background: #FFF;border: .0625em solid var(--border);border-radius: .3125em;}

.more-info h2 {
	font-size: 1.5625em;
	text-transform: uppercase;
}

#content .more-info ul li { margin: 0 0 .375em; }


/* CONTACT AND LOCATION INFORMATION BOX ----------------- */
.contact-info {
	background: var(--light);
	border-bottom: .1875em solid var(--turquoise);
	border-radius: .625rem .625rem 0 0;
	margin: 0 0 3em;
}

.contact-info>h2 {
	background: var(--turquoise);
	border-radius: .625rem .625rem 0 0;
	color: #FFF;
	font-size: 1.5625em;
	margin: 0;
	padding: .25em 1.5rem;
	text-transform: uppercase;
}

.contact-info>section {
	display: flex;
	padding: var(--ws-gutter) 0;
	position: relative;
}

.contact-info>section { flex-wrap: wrap; }
.contact-info>section>h3 { padding: 0 1em; width: 100%; }

.contact-info>section+section::before {
	border-top: .125rem solid #CFD9DC;
	content: '';
	left: var(--ws-gutter);
	position: absolute;
	right: var(--ws-gutter);
	top: -.0625rem;
}

.contact-info section>div { padding: 0 var(--ws-gutter); width: 50%; }

.contact-info strong { color: var(--dark); }
.contact-info p { margin: 0 0 .75rem; }

/* HEADING WITH BULLETS / NO BULLETS ----------------- */
.heading-with-list {margin: 0 0 3em;}
.heading-with-list + .heading-with-list { margin-top: 3em; }

.heading-with-list h3 {
	color: var(--dark-turquoise);
	font-size: 1.125em;
	position: relative;
	z-index: 1;
}

.heading-with-list h3>span {
	background: #FFF;
	padding: 0 .375em 0 0;
}

.heading-with-list h3::before {
	background: var(--light-gray);
	content: '';
	height: .125rem;
	left: 0;
	position: absolute;
	top: .5625em;
	width: 100%;
	z-index: -1;
}

.heading-with-list ul.twoCol { column-rule: none; }
.heading-with-list ul.twoCol li { break-inside: avoid; }
.heading-with-list ul.twoCol li br + strong { margin-top: .5em; }

#content .no-bullets ul li { padding: 0; }
#content .no-bullets ul li::before { display: none; }


/* CALL-TO-ACTION ----------------- */
.cta {
	border-top: .125rem solid var(--light-gray);
	padding: 1.5em 0 0;
}

#content .cta p { line-height: 1.33; }
#content .cta strong { color: var(--dark-turquoise); }


/* TRANSITIONS ----------------- */
.scale-in, #callouts li, #programs ul.animate>li, #support li, #news-events>div>div,
#tagline h2, #welcome .wrap, #interior-cta .wrap, .highlight, .more-info, .contact-info {
	opacity: 0;
	transform: scale(.9,.9);
	transition: all 1.25s ease;
}

.scale-in.animated, #tinymce .scale-in,

#callouts li.animated, #tinymce #callouts li,
#programs ul.animate>li.animated, #tinymce #programs ul.animate>li,
#support li.animated, #tinymce #support li,
#news-events>div>div.animated, #tinymce #news-events>div>div,
#tagline h2.animated, #tinymce #tagline h2,
#welcome .wrap.animated, #tinymce #welcome .wrap,
#interior-cta .wrap.animated, #tinymce #interior-cta .wrap,
.highlight.animated, #tinymce .highlight,
.more-info.animated, #tinymce .more-info,
.contact-info.animated, #tinymce .contact-info {
	opacity: 1;
	transform: scale(1,1);
}




/* TIMELINE RIBBON ------------------------------ /
* - /timeline/
*/

.timeline {
	padding-block: clamp(3em, 2.636em + 1.82vw, 4em) clamp(3em, 2.273em + 3.64vw, 5em);
	position: relative;
}

.timeline>div {
	position: relative;
}

.timeline .timeline-blue {
	background: var(--dark-turquoise);
}

.timeline>div::before {
  content: '';
  inset: 0;
  position: absolute;
}

.timeline .timeline-white::before {
	background: url('/images/logo-watermark.svg') no-repeat center / 30.5em 23.25em;
  opacity: .65;
}

.timeline .timeline-blue::before {
	background: url('/images/logo-watermark-white.svg') no-repeat center / 30.5em 23.25em;
	opacity: .04;
}

.timeline time {
	font-size: 1.875rem;
}

.timeline .timeline-blue :is(time, p, li) {
	color: #FFF;
}

.timeline {
	text-wrap: pretty;
}


.timeline :where(p, li) {
	font-size: 1.125em;
}

.timeline ul li {
	margin: 0 0 .75em;
	padding-left: 1.5em;
	position: relative;
}

.timeline ul li::before {
	content: '\203A';
	color: #FFF;
	font-size: 1.25em;
	position: absolute;
	left: .5em;
	line-height: 1;
	top: 0;
}

.timeline .timeline-white ul li::before {
	color: #056D87;
}

.timeline ul ul li {
	font-size: 1em;
}



/* Animations ----- */
.timeline .item>div {
  opacity: 0;
  transition: all 1s ease;
 }

.timeline .item:nth-child(odd) .image,
.timeline .item:nth-child(even) .textbox {
  transform: translateX(-5em);
}

.timeline .item:nth-child(even) .image,
.timeline .item:nth-child(odd) .textbox {
  transform: translateX(5em);
}

.timeline .item:nth-child(1n).animated > div {
  opacity: 1;
  transform: translateX(0);
}





/* DESKTOP THROUGH MOBILE MEDIA QUERIES ----------------- */
@media (max-width: 1023px) {
	#programs.home ul { margin: 0 -.75em; }
	#programs.home li { padding: 0 .75em; }
}

@media (max-width: 900px) {
	#programs.home li { width: 50%; }
}



/* ************ STYLE.CSS ************ */
