/* @import url(/includes/css/grid-flex.css); */
@charset "UTF-8";
/* Web Solutions 4.0 Compatible */
html {box-sizing:border-box;}
*, *:before, *:after {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:top;text-align:left}
body {background:#e9e8ed;}
#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{width:100%;float:left;clear:left;display:block;}
body>*:not(footer)>.wrap,body>footer>.wrap, body>footer>.fatFooter,#alertApp>*,.home .wrap{width:100%;max-width:62.5rem;margin-left:auto;margin-right:auto;position:relative;z-index: 2;overflow:auto; padding-left: 2rem; padding-right: 2rem;}
body>footer>.fatFooter,body>footer>.wrap,body.home>footer>.wrap {max-width: 78.0625rem}
body.home main .wrap {
	max-width: 78rem;
}
body.home > main {overflow: hidden;}

.sr-only {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}


/* text */
body, .text, input, button, select, textarea {font-family:'Signika', sans-serif;line-height:1.5;color:#666;-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}
#brand, .hero-section h1, .registration h2, .classes-list ul li a {font-family:'Signika Negative', sans-serif;font-weight: 400;}
.text{font-size: 1rem}
a, a *{color:#D73E0F;text-decoration:none; font-weight: 400;}
a:hover, a:active, a:hover *, a:active *{color:#191D4B;}
p,h1,h2,h3,h4,hr,.content ul,.contentEditor ul,blockquote,dd,ol{margin-top:0;margin-bottom:1rem}
h1, h2, h3, h4, h5, h6, h7, h8, h9, th{font-weight:400; line-height: 120%;}
p + h2, p + h3, p + h4, p + h5, p + h6,
ul + h2, ul + h3, ul + h4, ul + h5, ul + h6,
ol + h2, ol + h3, ol + h4, ol + h5, ol + h6 {margin-top:2em;}
.textColor, h1, h2, h3, h4, h5, h6, h7, h8, h9, th, dt{color:#31659b}
em, i, q, cite, .italic{font-style:italic}
b, strong{font-weight:700}
u{text-decoration:none}
hr{border:0;border-top:1px solid rgba(0,0,0,.15);margin:1em 0;padding-top:1px}
body {font-weight: 300;}
p {font-size:1em;}
p.intro {
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1.4;
}
h1 {
	font-size: 2.25rem;
	font-weight: 700;
	color: #191d4b;
}
h2 {
	color: #f05727;
	font-size: 1.875rem;
	font-weight: 600;
}
h3 {
	color: #191d4b;
	font-size: 1.5rem;
	font-weight: 600;
}
h4, th{
	color: rgba(25,29,75,0.7);
	font-size: 1.25rem;
	font-weight: 600;
}
h5 {color: #f05727;}
h6 {}
.intro {}
sup, sub {font-size:.6em; line-height:.6em;vertical-align:baseline;position:relative}
sup {bottom:1ex}
sub {top:.5ex}
#brand {font-size: 2rem; color: #191D4B; z-index: 3;}
#brand > span {
	font-weight: 700;
	position: relative;
	color: #191D4B;
}
#brand > span:before, #brand > span:after {
	content: "|";
	display: inline-block;
	color: #CCD62A;
	font-weight: 300;
}
#brand > span:before {padding-right: .5rem;}
#brand > span:after {padding: 0 0 0 .5rem;}

/* MAIN ------------------------------ */
.menu{cursor: pointer}
main, .mceContentBody{background-color: #fff;position: relative;}
body:not(.home) main:before {
	content: "";
	left: 0;
	right: 0;
	height: 21.875rem;
	max-height: 100%;
	position: absolute;
	background-image: -webkit-gradient(linear, left bottom, left top, from(#FFFFFF), to(#191d4b));
	background-image: linear-gradient(0deg, #FFFFFF, #191d4b);
	background-color: #FFF;
	opacity: .1;
}
.contentEditor{background:#fff;min-width:100%;}

/* sidenav */
#sidenav{width:100%;overflow:hidden;margin:0 0 3rem}
#sidenav ul{padding: 0}
#sidenav li{height:1%;overflow:hidden}
#sidenav li a{padding:.5em .75rem;line-height:1.1em;display:block; color: #666;}
#sidenav > ul > li > a {font-weight: 600;}
#sidenav li a:hover, #sidenav li a:active{background:#e5e5e5}
#sidenav > ul > li.on>a{color:#fff; background: #D73E0F; border-radius: 3px 3px 0 0;}
	/* t2 */
	/* #sidenav li.on ul{border-top:1px solid rgba(0,0,0,.15)}
	#sidenav li.on ul li{border-bottom:1px solid rgba(0,0,0,.15)} */
	#sidenav li.on ul li a{padding:.3em .1rem .3em .5rem;font-size:0.875rem;color:#666; background:#eeeef2;}
	#sidenav li ul li a:hover,
	#sidenav li ul li a:active,
	#sidenav li ul li.on>a{color:#fff; background:#191d4b;}
		/* t3 */
		#sidenav li ul li.on ul{border:0}
		#sidenav li ul li.on ul li{border:0}
		#sidenav li ul li.on ul li a{padding-left:1.25rem;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:#fff; background:#191d4b;}
			/* 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:#fff; background:#191d4b;}

/*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}
figcaption {
	color: #4a4a4a;
	font-size: 0.8125rem;
	text-align: right;
}
.content .photoright, .content .photoleft{max-width:50%;height:auto}
.content .photoright img,.content .photoleft img {max-width:100%;height:auto;margin: 0;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)}
.highlight, .content .highlight{background:rgba(25, 29, 75, 0.1);padding:2.25rem 1.3125rem;margin:2rem 0;position: relative;font-weight: 400;}
.highlight h1, .highlight h2 {
	color: #191d4b;
	font-size: 1.5625rem;
	font-weight: 600;
}
.highlight:before {
	content: "";
	position: absolute;
	display: block;
	left: 0;
	right: 0;
	top: 0;
	background-image: url(../../images/highlight-border.svg);
	background-size: contain;
	background-repeat: repeat;
	background-position: center;
	height: 0.8rem;
}
.highlight > *:last-child {margin-bottom: 0;}
small, .textSm{font-size:.8em}
.content table{width:100%}

.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;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)}

/* list */
.content ol{margin-left:2em}
.content ol ol li {list-style: lower-alpha}
.content ul li{padding-left:1.875em;position: relative;}
.content ul li:before{
	content: "";
	position: absolute;
	left: 1em;
	top: .39em;
	width: 0.5rem;
    height: 0.65rem;
	text-align: center;
	text-indent:0;
	background-image: url(../../images/angle-right-thick.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.content ul li ul li:before{opacity: .5}

/* addon classes */
.clearFloats{clear:both}
.nobr{white-space: nowrap}
.twoCol, .threeCol, .resCol{
-webkit-column-rule:0;
        -moz-column-rule:0;
     column-rule:0;
-webkit-column-gap:2em;
        -moz-column-gap:2em;
     column-gap:2em;
}
.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 {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"], textarea, select, input[type="button"], input[type="submit"], input[type="reset"]{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{background-color:rgba(25,29,75,0.05);padding:.5rem;border: 1px solid rgba(25, 29, 75, 0.4); color: #191D4B;border-radius: 4px;}
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;}
@media screen and (-webkit-min-device-pixel-ratio:0) {
    select{background-image:url(/images/icons/16x16/select.png);background-repeat:no-repeat;background-position:right center;padding-right: 18px}
	input[type="search"]::-webkit-search-decoration {-webkit-appearance:none}
	input[type="search"]{padding-right:0}
}
select option{padding:0 .2em}
button,.button,input[type="button"], input[type="submit"], input[type="reset"]{background: #ccd62a;display: inline-block; color:#191d4b;border:0;padding: .75em 1.35em;line-height:1em;cursor:pointer;font-weight: 700;border-radius: 4px;}
input::-moz-focus-inner {border:0;padding:0;}
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:#191d4b;color:#fff}
.button.alt {background: #191d4b; color: #fff}
.button.alt:hover {background: #ccd62a; color: #191d4b;}
.button{display: inline-block}
.button.white {
	background: #fff;
	color: #191d4b;
	border: 1px solid rgba(25, 29, 75, 0.4);
}
.button.white:hover {
	color: #fff;
	background: #191d4b;
}
button img{height:1em;width:auto;vertical-align:top}
input.bulky, .bulky {padding:.4em .6em;font-size:1.2em}
.formTable,
:where(.formTable, .form-flex) :where(input:where([type="text"], [type="password"], [type="tel"], [type="number"], [type="email"], [type="url"], [type="search"]), table, textarea, select) {
	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}

/* Forms - without tables ----- */
form.narrow .form-flex,
.narrow.form-flex {
	max-width: 18.75em;
}

.form-flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.form-flex fieldset {
	border: 0;
	margin: 0;
	padding: 0;
	width: 100%;
}

.form-flex fieldset legend {
	float: left;
	width: 100%;
}

.form-flex>div {
	margin: 0 0 .75em;
}

.form-flex .full {
	width: 100%;
}

.form-flex>div>label:first-of-type {
	display: block;
}

/* Checkboxes, radios */
.form-flex>div>fieldset>label {
	display: inline-block;
}


.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: #D73E0F;cursor: pointer;position: relative;width: 100%;padding: .5rem 2.5rem;z-index: 1;}
#alertApp:hover { background:#191d4b}
#alertApp.alertStatic { cursor: default;}
#alertApp h1 {color: #FFF;font-size: .9375rem;line-height: 1.25rem;margin: 0 auto;padding: .1875rem .3125rem;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}

/* management table */
hr+.manage{margin-top:-1em}
.manage{border-bottom:1px solid rgba(0,0,0,.2);width:100%;line-height:1.3em}
.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 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:-3.5em}
.manage.rightFirstChild td:first-child{text-align:right}
.sortRow th{cursor:pointer}
.manageEllipsis{width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}

/* HOME -------------------------------- */
.hero-section {position: relative; line-height: 0;}
.hero-section h1 {
	text-shadow: 4px 4px 4px rgba(0,0,0,0.5);
	color: #ffffff;
	font-weight: 700;
	text-align: center;
	position: absolute;
	z-index: 2;
	margin: 0;
	top: 50%;
	right: 50%;
	-webkit-transform: translate(50%, -50%);
	        transform: translate(50%, -50%);
	width: 100%;
	text-align: center;
	padding: 0 2rem;
}
.hero-section + .classes-list:before {
	content: "";
	background-image: url(../../images/hero-bottom-grey-thick.svg);
	background-repeat: repeat;
	left: 0;
	right: 0;
	position: absolute;
	top: -11px;
	height: 0.8rem;
}
.registration:before {
	content: "";
	background-image: url(../../images/hero-bottom-white-thick.svg);
	background-repeat: repeat;
	left: 0;
	right: 0;
	position: absolute;
	top: -11px;
	height: 0.8rem;
}
.registration {
	position: relative;
	padding-bottom: 1rem;
}
.registration ul {
	margin: 0;
	display: -webkit-box;
	display: flex;
	padding: 1rem 0;
}
.registration ul li {
	color: #191d4b;
	font-weight: 600;
	line-height: 1.0625em;
}
.registration ul li .button {font-size: 0.875rem;display: table;}


button.pause-toggle {
	position: absolute;
	bottom: 2rem;
	left: 1rem;
	width: 2.5rem;
	height: 2.5rem;
	padding: 0;
	background: #ccd62a;
}
.pause-toggle:before,
.pause-toggle:after {
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transition: ease all 200ms;
    width: 100%;
}

.pause-toggle:before {background: url(../../images/icons/misc/rotator-pause.svg) no-repeat center; background-size: 35%;}
.pause-toggle.on:before {opacity: 0;}
.pause-toggle:after {background: url(../../images/icons/misc/rotator-play.svg) no-repeat center; background-size: 35%; opacity: 0;}
.pause-toggle.on:after {opacity: 1;}

/* CLASSES ----------------------------- */
.home .classes-list {
	background-color: #fff;
	padding: 3rem 0;
	position: relative;
}
.content .classes-list li:before {content: none;}
.classes-list > .wrap {overflow: visible;}
.classes-list ul {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.classes-list ul li {
	position: relative;
}
.home .classes-list ul li:nth-of-type(3n+1) {margin-left: 0;}
.classes-list h2 {
	font-size: 1.75rem;
	font-weight: 600;
	line-height: 1.8125rem;
	color: #191d4b;
	position: relative;
	display: table;
	padding-bottom: .25rem;
	margin-bottom: 2rem;
}
.classes-list h2:after {
	content: "";
	left: 0;
	right: 0;
	height: 4px;
	position: absolute;
	bottom: 0;
}
.classes-list > .wrap > section:nth-of-type(odd)  h2:after {background: #ccd62a;}
.classes-list > .wrap > section:nth-of-type(even) h2:after {background: #f05727;}
.classes-list ul > li > a > div {
	padding-bottom: 100%;
    background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	position: relative;
	margin-bottom: .25rem;
	background-color: rgba(214, 212, 222, 0.5);
	line-height: 0;
	font-size: 0;
}
.classes-list ul > li > a > div:after {
	content: "";
	position: absolute;
	width: 100%;
	background-size: 200%;
	background-repeat: repeat-x;
	bottom: -1px;
	-webkit-animation: borderAnimate 2s linear infinite;
	        animation: borderAnimate 2s linear infinite;
	-webkit-animation-play-state: paused;
	        animation-play-state: paused;
}
.classes-list ul > li > a:hover > div:after {-webkit-animation-play-state: running;animation-play-state: running;}

.kids.classes ul > li:nth-of-type(odd) a div:after, .adult.classes ul > li:nth-of-type(even) a div:after {
	background-image: url(../../images/callout-green-thick.svg);
}
.kids.classes ul > li:nth-of-type(even) a div:after, .adult.classes ul > li:nth-of-type(odd) a div:after  {
	background-image: url(../../images/callout-red-thick.svg);
}

.classes-list ul li a {
	font-weight: 600;
	line-height: 1;
	display: block;
	position: relative;
	color: #191D4B;
}
.classes-list ul li a:hover {color: #f05727;}
.classes-list ul li.view-all p {
	position: absolute;
	top: 50%;
	right: 50%;
	-webkit-transform: translate(50%, -50%);
	        transform: translate(50%, -50%);
	width: 100%;
	text-align: center;
	margin-bottom: 0;
	padding: 0 .25rem;
}
.classes-list ul li.view-all p span {
	text-transform: uppercase;
	display: block;
	color: #fff;
}
.classes-list ul li.view-all a div {background: #f05727;}
.classes-list ul li.view-all a p {color: #fff}

.welcome-message {
	background: #191d4b;
	position: relative;
}
.welcome-message:before, .past-classes:before {
	content: "";
	background-image: url(../../images/welcome-border.svg);
	background-repeat: repeat;
    left: 0;
    right: 0;
    position: absolute;
    top: -0.625rem;
    height: 0.75rem;
}
.welcome-message .wrap {overflow: visible;}
.welcome-message h2 {
	display: inline-block;
	width: 48%;
	color: #f05727;
	vertical-align: top;
	position: relative;
}
.welcome-message h2 span {
	font-size: .8em;
	font-weight: 400;
	display: block;
	color: #fff;
}
.welcome-message p {
	font-size: 1.25rem;
	color: #fff;
	display: inline-block;
	width: 42%;
	position: relative;
}

/*  ADULT CLASSES PAGE -----------------
h1 > span {
	font-size: .833em;
    font-weight: 600;
    display: block;
    color: #F05727;
}*/
.classes-list.interior {padding-top: 3em;}

/* SPORTS CLASSES PAGE ----------------- */

.category-class-list {
	margin: 2rem 0;
}
.category-class-list dt {
	font-size: 1.25rem;
	font-weight: 700;
	color: #191D4B;
}
.category-class-list dt > span {
	color: #CCD62A;
}
.category-class-list dt > span:before {
	content: "|";
	color: #191D4B;
	display: inline-block;
	margin: 0 .4rem 0 0;
}
.category-class-list dd {
	padding: 1.125rem 1.25rem;
	margin: 0;
	position: relative;
	background: rgba(25, 29, 75, 0.05);
}
.category-class-list div:nth-of-type(odd) dd {background: rgba(25, 29, 75, 0.05);}
.category-class-list div:nth-of-type(even) dd {background: #EAEAEF;}
.category-class-list div + div {margin-top: 2.5rem;}
.category-class-list dd + dd:before {
	content: "";
	position: absolute;
	top: 0;
	left: 1.25rem;
	right: 1.25rem;
	height: 1px;
	background: rgba(151, 151, 151, 0.4);
}
.category-class-list ul {margin-bottom: 0;}


.category-class-list dd ul li {
	padding-left: 0;
	font-weight: 400;
	line-height: 1.375em;
}
.category-class-list dd ul li a:not(.button) {
	text-decoration: underline;
	color: #D73E0F;
	font-weight: 700;
}
.category-class-list dd ul li span {
	color: #D73E0F;
	font-weight: 700;
}
.category-class-list dd ul li a:not(.button):hover {color: #191D4B;}
.category-class-list dd ul li:before { content: none; }
.category-class-list .class-time {
	font-weight: 700;
	color: #D73E0F;
}
.category-class-list i {font-weight: 300;}
.button.register {
	padding: .375em .45em;
	position: relative;
	margin-top: .6em;
}
.button.register:after {
	content: "\203A";
	display: inline-block;
	margin-left: .25rem;
}
/* past classes */
.past-classes {
	background: #191d4b;
	position: relative;
	margin-top: 4.75rem;
}
.past-classes *:not(h2) {color: #FFF;}
.past-classes a:hover {color: #CCD62A;}
.past-classes ul li:before {background-image: url(../../images/angle-right-green-thick.svg);top:.25em;}
.past-classes ul li {font-weight: 600;line-height: 1.25em;}
.past-classes ul li + li {margin-top: 0.5rem;}

/* CUSTOM CHECKBOXES */
input[type="checkbox"].custom-checkbox-input {
	height: 14px;
    left: 0;
    opacity: 0;
    position: absolute;
    width: 14px;
}
input[type="checkbox"] + .custom-checkbox {
	display: block;
	position: relative;
	padding: 0 1.4rem;
}
input[type='checkbox'] + .custom-checkbox:before {
	content: '';
	position: absolute;
	left: 4px;
	top: 5px;
	border: 1px solid #191d4b;
	border-radius: 2px;
	width: 14px;
	height: 14px;
	background: white;
}
input[type='checkbox']:checked + .custom-checkbox:before {
	background: #191d4b;
}
input[type='checkbox'] + .custom-checkbox:after {
    content: "";
	background-image: url(../../images/check.svg);
    height: 10px;
    width: 10px;
    left: 6px;
    top: 7px;
	position: absolute;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	opacity: 0;
}
input[type='checkbox']:checked + .custom-checkbox:after {opacity: 1;}

/* CUSTOM radio */
input[type="radio"].custom-radio-input {
	height: 14px;
    left: 0;
    opacity: 0;
    position: absolute;
    width: 14px;
}
input[type="radio"] + .custom-radio {
	display: inline-block;
	position: relative;
	padding: 0 1.4rem;
}
input[type="radio"] + .custom-radio:before {
	content: '';
	position: absolute;
	left: 4px;
	top: 5px;
	border: 1px solid #191d4b;
	border-radius: 50%;
	width: 14px;
	height: 14px;
	background: white;
}
input[type="radio"]:checked + .custom-radio:before {
	background: #191d4b;
}
input[type="radio"] + .custom-radio:after {
    content: "";
	background-image: url(../../images/circle.svg);
    height: 4px;
    width: 4px;
    left: 9px;
    top: 10px;
	position: absolute;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	opacity: 0;
}
input[type="radio"]:checked + .custom-radio:after {opacity: 1;}
/* ENRICHMENT STYLES ---- NEED TO BE MOVED TO ENRICHMENT STYLES ONCE THAT IS INSTALLED ------------------------------ */
/* Class List View, Shared Styles*/
.new {
	color: #CCD62A;
}
.new:before {
	content: "|";
	color: #191D4B;
	display: inline-block;
	margin: 0 .4rem 0 0;
}
.class-view h4 {margin-top: 1em;margin-bottom: .5em}
.enrichment-class{width: 100%;display: block;display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-content: stretch; -ms-flex-line-pack: stretch; align-content: stretch; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch;}
.enrichment-class section{background-color: rgba(102,102,102,.1); width: 48%; float: left;margin: 1% 1%;line-height: 1.2;padding-bottom: 1em}
.enrichment-class section em{color: red}
.enrichment-class h1{margin-bottom:0;line-height: 1.2; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; -webkit-align-content: stretch; -ms-flex-line-pack: stretch; align-content: stretch; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch;border-bottom: solid 4px #fff}
.enrichment-class h1 span {letter-spacing:0;float:right;background-color:#191D4B;color:#fff;font-size:1rem;padding:0 .25em; display: inline-block;margin: 0 0 0 .25em}
.enrichment-class h1 a{font-weight: 600;background-color:#666; margin-bottom: 0;font-size: 1.1rem;padding:.5em .45em;color:#fff;overflow: auto;}

.content .enrichment-class div {float: left;width: 50%;padding:.5em 1em 0 1em;}
.content .enrichment-class div strong {font-size: 1rem; margin-top: 0.75rem;font-weight: normal;}
.content .enrichment-class ul{margin: 0 0 .5rem 0;padding-left: 0}
/*****MAY NEED AFTER, WAS CONFLICTING WITH DALLAS STYLES FOR NOW*****.content .enrichment-class ul li{margin-top: 0;line-height: 1.2;font-size: 1.125em;padding-left: 2em; position: relative;font-weight: 500;}*/
.content .enrichment-class div p {margin-bottom: .5rem;font-weight: 500}
.content .enrichment-class section > p { margin:1em .75em 0 .75em }
.content .enrichment-class h1 a strong{background-color:#fff;color:#666;font-size:.9rem;padding:0 .25em; font-weight: 500;}
.content .enrichment-class h1 a:hover strong {color: #fff;background-color:#666}
.content .enrichment-class .button {clear: both;float: left;margin-left: 1em;background-color: #fff;color: #666;padding: .5em 1em;border:solid 2px #666;margin-top: 1rem}
.content .enrichment-class .class-block {width:100%; position: relative; background:none; margin: 0.5em 0; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-content: stretch; -ms-flex-line-pack: stretch; align-content: stretch; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch;}
.content .enrichment-class .class-block h2 {width:100%;  font-weight: 600;background-color: #666;margin-bottom: 0.25rem;font-size: 1.25rem;padding: .5em .75em; color: #fff;overflow: auto; text-transform: uppercase; letter-spacing: 2px;}
.content .enrichment-class .class-block h2 span {font-style: italic; font-weight:400; font-size: 0.875rem; letter-spacing: 0; text-transform: none;}
.content .enrichment-class .class-block .classes {padding:0; float:none; width: 100%; display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-content: stretch; -ms-flex-line-pack: stretch; align-content: stretch; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch;}
.content .enrichment-class .class-block .classes .class {width: calc(33.3333333% - 0.25rem); line-height:1.125em; font-size: 1.125rem;font-weight: 500;float: none;padding: 1.5em;margin: 0 0.35rem 0.35rem 0;background: rgba(102,102,102,.1);}
.content .enrichment-class .class-block .classes .class:nth-child(3n + 3) {margin-right: 0}
.content .enrichment-class .class-block .classes .class span {display: block}
.content .enrichment-class .class-block .classes .class .title {background-color: #191D4B; display: inline-block; font-weight:600; color: #fff;font-size: 1.125rem;padding: 0.25em 0.5em;}
.content .enrichment-class .class-block .classes .class .title:hover {background: #333}
.content .enrichment-class .class-block .classes .class .small {font-size:1rem; margin-top:0.75rem; font-weight: normal}
.content .enrichment-class .class-block .classes .class ul li {padding-left: 1em;}
.content .enrichment-class .class-block .classes .class ul li:before {left:0.25em;}
.content .enrichment-class .class-block .classes .class .button {font-size:1.125rem; margin:0.75rem 0 0}
.content .enrichment-class .class-block h2 strong {float: right;background-color: rgba(255,255,255,0.3);font-size: .9rem; padding-left: .3rem;padding-right: .3rem}
.enrichment-class .button:hover {background-color:#666;color:#fff;border:solid 2px #666}
/* Class View*/
.class-view .enrichment-class h1 {font-weight: 700;background-color: #191D4B;margin-bottom: 0;font-size: 1.2rem;line-height: 1;padding:.5em .45em .5em .75em;color:#fff;display: block}

/*.class-view, .enrichment-left, .enrichment-right{float: left}*/

.grid { display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; -webkit-align-content: stretch; -ms-flex-line-pack: stretch; align-content: stretch; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch;}
.grid-wrap {-webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;}
.class-view .grid {width: 100%;float: left;clear: both;}
.enrichment-left{width: calc(100% - 22em);padding-right: 3%;border-right: 1px solid rgba(151, 151, 151, 0.4)}
/*****MAY NEED AFTER, WAS CONFLICTING WITH DALLAS STYLES FOR NOW*****.content .enrichment-left ul li {padding-left: 2em;font-size: 1.125rem;}*/
.enrichment-left .share {width: 100%;padding: .5rem .5rem;vertical-align: middle;}
.enrichment-left .share h3 {display: inline-block;margin-bottom: 0;}
.enrichment-left .share-fb,.enrichment-left .share-email {float: right;}
.enrichment-left .share-fb:before, .enrichment-left .share-email:before {content: "";width:1.5rem;height:1.5rem;background-position: center center;background-repeat: no-repeat;display: inline-block;background-size: contain;}
.enrichment-left .share-fb:before {background-image: url(../../images/share-facebook.svg);}
.enrichment-left .share-email:before {background-image: url(../../images/envelope-solid.svg);}
.enrichment-left .share-fb {margin-right: 1rem;fill: red!important;
	height: 1.25rem;}
.enrichment-left .share-fb:hover svg path {
    fill: hsl(235, 50%, 50%);
}
.enrichment-left .share-fb:hover, .enrichment-left .share-email:hover {opacity: .5;}
.enrichment-class .category-class-list {margin-top: 0;width: 100%;}
.enrichment-right {width: 22em;padding-left: 3%;padding-right: 3%}
#content .enrichment-right .class-cart{top:0;width: 100%;margin: 0;position: sticky;-webkit-position: sticky;}
.enrichment-right .class-cart .button {display: block;width: 100%;font-size: 1rem;margin-top: 1em}
.enrichment-right form label {display: block; font-weight: 600;}
.enrichment-right form label label:first-of-type {margin-top: .5em;}
.enrichment-right form label label {font-weight: normal; margin-bottom: .5em;}
.enrichment-right .participants{display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-direction: row; -ms-flex-direction: row; flex-direction: row; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-content: stretch; -ms-flex-line-pack: stretch; align-content: stretch; -webkit-align-items: stretch; -ms-flex-align: stretch; align-items: stretch;}
.enrichment-right form input[type="number"]{width: 6em;float: right}
.enrichment-right .options select,.enrichment-right .options textarea,.enrichment-right .options input[type="text"]{display: block;width: 100%;margin-bottom: .5em}
.enrichment-right .options h2 {color: #191D4B;font-size: 1rem}
.enrichment-right .options h2 em {color:#666;font-weight: normal;font-size: .9em}
#content ul.enrichment-days>li {padding-left: 0;text-indent: 0}
#content ul.enrichment-days>li:before {background: none;}

.enrichment-smClass-detail {font-weight: normal;font-size: 1.25rem;margin: 0;display: block;color: #666;line-height: 1}
.class-view .enrichment-class section{width: 100%;margin: 1% 0 2em 0}
.class-view .related {margin-top: 2em}
.class-view section h2 {color:#f05727}
.enrichment-seats {display: block;margin-bottom: 1em}
.enrichment-seats strong {color:#191D4B}

.content .enrichment-right .fees {background-color: #EAEAEF;display:block;width:100%;margin:0 0 2em 0;}
.content .enrichment-right .fees h1 { font-size: 1em;border-bottom: solid 1px rgba(151, 151, 151, 0.4);margin:0 1em;padding-top: .5em;padding-bottom: .5em;color: #666;font-weight: 600}
.content .enrichment-right .fees span {color:#666;font-weight: 600;letter-spacing: .02rem}
.content .class-view .enrichment-right ul li:before, .class-view .twoCol li:before  {display: none}
.content .enrichment-left .related ul li:before {display: inline-block}
.content .enrichment-right .fees ul {padding: .5em 0 .5em .5em;margin: 0;}
.content .enrichment-right .fees strong{background-color:#191D4B;display: block; width: 100%;padding: .2rem 1rem;color: #fff;font-size: 1.125rem;}
.content .enrichment-right input[type="number"] {border: 1px solid #EAEAEF}

.formTable select[name="timeStart"], .formTable select[name="timeEnd"] {width: calc(50% - 15px);}
.formTable select {width: 100%;}

@media only screen and (max-width: 950px) {
    .enrichment-class section{width: 100%; float: left;margin: 2% 0;}
    .enrichment-right, .enrichment-left {width: 100%;float: none;padding: 0}
    .enrichment-right {-webkit-order: 1;-ms-flex-order: 1;order: 1;margin-bottom: 2em}
    .enrichment-left {-webkit-order: 2;-ms-flex-order: 2;order: 2;border-right:none;}
    .grid {-webkit-flex-direction: column; -ms-flex-direction: column;flex-direction: column;padding-right: 4%}
    .enrichment-right .fees ul{margin: 0}
}


/* FOOTER ------------------------------ */
body>footer{padding:3rem 0 0.875rem;color:#666;font-size: 14px;position: relative;}
body>footer a.on, footer .on>a{text-decoration:none;color:#fff}
body>footer .fatFooter{margin-bottom:3em;overflow: hidden;}
body>footer>.wrap{overflow:visible; clear:both}
body>footer>.wrap nav{display:inline}
body>footer .fatFooter {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	        justify-content: space-between;
}
footer .social-links svg{
	fill: #191d4b;
	height: 1.25rem;
}
footer .social-links a:last-of-type svg {width: 1.25rem;}
footer .social-links a:hover svg path {fill: hsl(235, 50%, 50%);}
footer nav ul li a:hover, footer .footer-logos a:last-of-type:hover, footer > .wrap #web-solutions a:hover {text-decoration: underline;}
footer a:hover img {opacity: .7;}
footer .footer-logos img {max-width: 100%;}
footer .fatFooter .catalog img {max-width: 100%;margin-bottom: 0.625rem;margin-top: .125em;}
footer .footer-signup a + a {margin-left: 0.625rem;}
footer strong, .fatFooter a:not(.button) {
	font-weight: 600;
	font-size: 1rem;
	color: #191d4b;
}
footer strong {display: block; line-height: 1.125em;margin-bottom: .5em;}
.fatFooter nav {max-width: 19rem; width: 100%;}
.fatFooter nav ul {-webkit-columns: 2;-moz-columns: 2;columns: 2; line-height: 1.25em; column-gap: 3em;}
.fatFooter nav ul li {break-inside: avoid;}
.fatFooter nav ul li:not(:last-of-type) {margin-bottom: .55em;}
.fatFooter .button {padding: .572em .5em;}
.fatFooter .phone-numbers-social {
	margin-top: 1rem;
	display: inline-block;
}
.fatFooter .social-links {
	text-align: center;
	margin-top: .75rem;
}
.fatFooter .social-links a + a {margin-left: 1.5rem;}
footer > .wrap {display: -webkit-box;display: flex; -webkit-box-align: center; align-items: center; -webkit-box-pack: justify; justify-content: space-between;}
footer > .wrap .copyright {display: -webkit-box;display: flex; -webkit-box-align: center; align-items: center;-webkit-box-ordinal-group: 2;order: 1;}
footer > .wrap #web-solutions {-webkit-box-ordinal-group: 3;order: 2;}
footer > .wrap .copyright a {display: block; line-height: 0;}
footer > .wrap .copyright img {max-width: 100%;width: 15.625rem;}
footer > .wrap #web-solutions a {color: #666;}
footer:before {
	content: "";
	background-image: url(../../images/footer-green.svg);
	height:2.25rem;
	background-size: contain;
	background-repeat: repeat-x;
	position: absolute;
	top: -1.125rem;
	position: absolute;
}

/* TRANSITIONS ------------------------------ */
a, a *,button,.button,input[type="button"],input[type="submit"],.rsFullscreenBtn,#alertApp,#alertApp span,#alertDesc,#navContainer li,.hamburger{-webkit-transition: all 200ms ease;transition: all 200ms ease}
input:focus, select:focus, textarea:focus{-webkit-transition: background-color 150ms ease;transition: background-color 150ms 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 ------------------------------ */
@-webkit-keyframes borderAnimate {
	from {background-position: 0 100%;}
	to {background-position: 100% 100%;}
}
@keyframes borderAnimate {
	from {background-position: 0 100%;}
	to {background-position: 100% 100%;}
}


.no-glide {
	-webkit-transition-delay: 0s !important;
	transition-delay: 0s !important;
	-webkit-transition: none !important;
	transition: none !important;
  }

  .fade-in,
  .animate-left, .animate-right, .animate-down, .animate-up,
  .animate-up-left .animate-up-right, .animate-down-left, .animate-down-right {
	opacity: 0;
	-webkit-transition: all .75s ease;
	transition: all .75s ease;
  }

  .animate-left { left: 4.75rem; top: 0; }
  .animate-right { right: 4.75rem; top: 0; }
  .animate-up { top: 4.75rem; }
  .animate-down { top: -4.75rem; }

  .animate-down-left { left: 4.75rem; top: -4.75rem; }
  .animate-down-right { right: 4.75rem; top: -4.75rem; }
  .animate-up-left { left: 4.75rem; top: 4.75rem; }
  .animate-up-right { right: 4.75rem; top: 4.75rem;  }

  .animate-left.animated { left: 0; top: 0; }
  .animate-right.animated { right: 0; top: 0; }
  .animate-up.animated { top: 0; }
  .animate-down.animated { top: 0; }

  .animate-up-left.animated { left: 0; top: 0; }
  .animate-up-right.animated { right: 0; top: 0; }
  .animate-down-left.animated { left: 0; top: 0; }
  .animate-down-right.animated { right: 0; top: 0; }

  .animated {opacity: 1;}

	/* @media only screen
	and (min-device-width : 768px)
	and (max-device-width : 1024px)  {
		.fade-in,
		.animate-left, .animate-right, .animate-down, .animate-up,
		.animate-up-left .animate-up-right, .animate-down-left, .animate-down-right {
			opacity: 1;
			transform: none;
		}
	} */

  .animated,
  .delay-1 {-webkit-transition-delay:.15s; transition-delay:.15s;}


  .stop-animations * { -webkit-animation: none !important; animation: none !important; -webkit-transition: none !important; transition: none !important; }
