@charset "UTF-8";
/* Web Solutions 4.0 Compatible */
:root {
	--blue: #2D5C77;
	--green: #5B7F48;
}

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}
form.search {position: relative;}
table {border-collapse:collapse}
td, th {empty-cells:show;vertical-align:top;text-align:left}
body {background:#333}
#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>*>.wrap, body>footer>.fatFooter,#alertApp>*,.home .wrap{width:100%;max-width:67rem;margin-left:auto;margin-right:auto;position:relative;overflow:auto; z-index: 2;}
.home section.hero-section .wrap {overflow: visible;}
body>*>.wide-wrap{width: 100%; max-width: 75rem; margin-left: auto; margin-right:auto; position: relative;overflow: auto;}
body>main>.callouts>.wrap, body>main>.featured-gallery>.wrap, .featured-class>.wrap, .featured-trip>.wrap {overflow: hidden;}
/* text */
body, .text, input, button, select, textarea {font-family: 'Roboto', sans-serif;line-height:1.5;color:#666;-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}
.text{font-size: 1rem}
a, a *{color:#2D5C77;text-decoration:none}
a:hover, a:active, a:hover *, a:active *{color:#000}
p,h1,h2,h3,h4,hr,.content ul,.contentEditor ul,blockquote,dd,ol{margin-top:0;margin-bottom:1rem}
blockquote {
	color: #2D5C77;
	font-style: italic;
	float: right;
	width: 50%;
	margin-left: 1.5rem;
	text-align: right;
}
blockquote cite {
	font-style: normal;
	font-weight: 500;
	display: block;
}
h1, h2, h3, h4, h5, h6, th{font-weight:400; line-height: 120%;}
p + h2, p + h3, p + h4, p + h5, p + h6 {margin-top:1em;}
.textColor, h1, h2, h3, h4, h5, h6 th, dt{color:#2D5C77}
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}
p{font-size:1em; font-family: 'Roboto', sans-serif; font-weight: 300; color: #4A4A4A;}
h1{font-size:2em; font-family: 'Roboto Slab', serif; font-weight: 700; color: #2D5C77;}
.interior-callouts a {font-family: 'Roboto Slab', serif; font-weight:700;}
h2 {font-size:1.875em; font-weight: 500; color: #5B7F48;}
h3 {font-size:1.5em; font-weight: 500; color: #000;}
h4, th, #ContactForm legend{font-size:1.25em; font-weight: 500; color: #175D7A;}
h5 {font-size:1.1em}
h6 {font-size:1.0em}

sup, sub {font-size:.6em; line-height:.6em;vertical-align:baseline;position:relative}
sup {bottom:1ex}
sub {top:.5ex}
p.intro {
	font-family: 'Roboto Slab', serif;
	color: #000;
	font-weight: 400;
	font-size: 1.25em;
}

.schedule{margin:2em 0;padding: 1em 1em;background: #EBEFF4}
.schedule:nth-child(even) {background: #F9F9F8}

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

/* HEADER ------------------------------*/
body>header{background:#fff; z-index: 5;}
body>header>.wrap{height:60px}
header #brand {display:block; float: left; margin: .25rem 0 .0625rem 1.875rem; -webkit-transition: all 0s; transition: all 0s;}
aside + header #brand{margin: -.1rem 0 .8rem 1.7rem;}
/*body aside + header.sticky-header>#brand {margin: .225rem 0 0 1.7rem;}
body aside + header.sticky-header>#brand img{max-height: 4em; -webkit-transition: max-height 0s; transition: max-height 0s;}
body aside + header.sticky-header>#navContainer>#ancillary {height: 4.6rem; transition: all .2s;}
body aside + header.sticky-header>#navContainer>#ancillary a {margin: 0; transition: all .2s;} */

#brand img{max-height: 7em;width: auto;position:relative; -webkit-transition: max-height 1500ms ease; transition: max-height 1500ms ease;}
aside + header #brand:before {
	content: "";
    display: block;
    position: absolute;
    top: -.375rem;
    left: 1.1875rem;
    height: 1.25rem;
    width: 3.75rem;
    background-color: #fff;
    border-radius: 50%;
}

.anc-link svg {
	height: .875rem;
	margin-right: .4rem;
}
#navContainer > #ancillary > a:first-of-type svg {
	height: .8125rem;
}
.ancillary-btn.lock span {position: relative; padding-left: 1.55em;}
.ancillary-btn.lock span:before {content: ""; background: url(/images/icons/lock-black.svg) no-repeat 0 0 / contain; display: inline-block; height: 1.08em; left: 0; position: absolute; top: 50%; transform: translateY(-50%); width: 1.08em;}

/* MAIN ------------------------------ */
.menu{cursor: pointer}
main, .mceContentBody{background:#fff; overflow: hidden; position: relative;}
main>.wrap{padding-top:3em; z-index: 1;}
main {
	display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-direction: column;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -ms-flex-pack: start;
    -webkit-box-pack: start;
            justify-content: flex-start;
    -ms-flex-line-pack: stretch;
    align-content: stretch;

}
.contentEditor{background:#fff;min-width:100%;}
.intHeader + main>.wrap {padding: 4.5em 5vw 2em 5vw}
/* t1 */
#sidenav{width:100%;overflow:hidden;margin:0 0 3rem}
#sidenav>ul>li>a {display:none}
#sidenav ul{padding: 0}
#sidenav li{height:1%;overflow:hidden}
#sidenav li a{padding:.5em .25rem;line-height:1.1em;display:block}
#sidenav li a:hover, #sidenav li a:active{background:#e5e5e5}
#sidenav li.on>a{color:#000}
/* t2 */
#sidenav li.on ul{}
#sidenav li.on ul li{}
#sidenav li.on ul li a{padding:.556em .5rem .556em .75rem;font-size:1.125em;color:#2D5C77; font-weight: 500;}
#sidenav li ul li a:hover, #sidenav li ul li a:active{color:#fff; background:#5B7F48;}
#sidenav li ul li.on>a{color:#fff; background:#5B7F48;}
/* t3 */
#sidenav li ul li.on ul{padding-bottom:.5em;border:0}
#sidenav li ul li.on ul li{border:0}
#sidenav li ul li.on ul li a{padding:.4em .5rem .4em 1.75rem;font-size:1em;color:#5B7F48; font-weight: 400;}
#sidenav li ul li ul li a:hover, #sidenav li ul li ul li a:active{background:#F1F0EE}
#sidenav li ul li ul li.on>a{color:#000; background:#F1F0EE;}
/* t4 */
#sidenav li ul li ul li.on ul li a{padding-left:2.75rem;font-size:.7em;color:#666}
#sidenav li ul li ul li ul li a:hover, #sidenav li ul li ul li a:active{background:#fff}
#sidenav li ul li ul li ul li.on>a{color:#000; background:#F1F0EE;}
/*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; display: none;}
.breadcrumb a:after{content: "\00A0\00A0\203A\00A0"}

/* content */
.content{word-wrap:break-word}
.content a{font-weight: 400}
.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%;width: auto;height: auto}
.photoright{float:right;clear:right}
.photoleft{float:left;clear:left}
.muted {opacity:0.5;filter:alpha(opacity=50)}
.highlight, .content .highlight{background-image: -webkit-gradient(linear, left top, left bottom, from(#F9F9F8), to(#F1F0EE));background-image: linear-gradient(-180deg, #F9F9F8 0%, #F1F0EE 100%);padding:1.6125em 1.3125em 1.8125em;margin:1em 0}
.highlight h1, .highlight h2 {font-size: 1.5625em; color: #5E9A4C; font-weight: 600; margin-bottom: 1.75rem;}
small, .textSm{font-size:.8em}
.content table{width:100%}
figcaption {font-weight: 300; font-style: italic; font-size: 0.8125em; color: #888; text-align: right;}
.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)}

.nlwatermark {position: absolute; bottom: 0; left: 0; z-index: 0;}
.interior-callouts{width: 100%;display: block;margin: 2em 0}
.interior-callouts a img {width: 100%;height: auto;display: block;margin-bottom: .5em}
.interior-callouts a:hover img {transform: scale(.95)}
/* list */
.content ol{margin-left:2em}
.content ol ol li {list-style: lower-alpha}
.content ul li{padding-left:2.25em; color: #000; line-height: 1.75; position: relative; margin-bottom: .75em;}
.content ul li:before{content: "\203A";position: absolute;top: -.1em; left: 1em;display: inline-block;width: 1em;text-align: center;text-indent:0; color: #5B7F48;}
.content ul li ul li:before{opacity: .5}

/* Ed2Go */
.ed2go ul li:before {
	content: none;
	display: none;
}
.ed2go ul li {
	padding: 0;
}
.ed2go ul li a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	border-radius: 0.3125rem;
	line-height: 1.2;
	height: 9em;
	padding: 1em;
	width: 100%;
}
.ed2go:nth-child(odd) ul li:nth-of-type(odd) a, .ed2go:nth-child(even) ul li:nth-of-type(even) a {background-color: var(--blue);}
.ed2go:nth-child(odd) ul li:nth-of-type(even) a, .ed2go:nth-child(even) ul li:nth-of-type(odd) a {background-color: var(--green);}
.ed2go ul li a img {
	filter: invert(1);
	display: block;
	height: auto;
	margin-bottom: 1em;
	max-height: 3em;
	max-width: 3em;
}
.ed2go ul li a span {
	color: #fff;
	font-weight: 700;
	text-align: center;
}
.ed2go:nth-child(odd) ul li:nth-of-type(odd) :is(:hover, :active), .ed2go:nth-child(even) ul li:nth-of-type(even) :is(:hover, :active),
.ed2go:nth-child(odd) ul li:nth-of-type(even) :is(:hover, :active), .ed2go:nth-child(even) ul li:nth-of-type(odd) :is(:hover, :active) {
	opacity: 0.6;
}

/* addon classes */
.clearFloats{clear:both}
.nobr{white-space: nowrap}
.twoCol, .threeCol, .resCol{
-webkit-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{font-size:.9rem;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: .9rem}
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="date"]{padding:3px 5px;border: 1px solid rgba(102, 102, 102, 0.5);}
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:#f8f8f8;}
#ancillary .search input[type="text"]:focus, body>footer .email-signup input[type="email"]:focus {
	background-color: #fff;
}
textarea{display:block;font-size: .9rem; border:  1px solid rgba(102, 102, 102, 0.5);}
@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:#2D5C77;color:#fff;border:0;padding:.75em 1.75em;line-height:1em;cursor:pointer; font-family: 'Roboto Slab', serif;}
.button-white {color: #2D5C77; background: #fff;}
.button-green {color: #fff; background: #6F8E5F;}
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:#44727b;color:#fff}
.button-green:hover {background-color: #8BA47F;}
.button-white:hover {background-color: #5B7F48; color: #fff;}
.button{display: inline-block}
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, .formTable select, .formTable input[type="date"]{width:100%; border: 1px solid rgba(102, 102, 102, 0.5);}
.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}
.formTable .title {display: block;font-weight: 500;margin-top: .5rem;}
.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%; }

.ContactForm input[type="checkbox"], .ContactForm input[type="radio"] {margin-right: .5rem;}



/* Forms - table removed ----- */
form.narrow,
.form-flex.narrow {
	max-width: 20em;
}

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

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

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

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

.form-flex>div>fieldset {
	display: flex;
	flex-wrap: wrap;
}

.form-flex>div>fieldset>legend {
	width: 100%;
}

.form-flex>div>fieldset>label {
	display: inline-block;
	margin: .5em 0 0;
	width: 50%;
}

.form-flex>div>input:not([type="submit"], [type="button"]) {
	width: 100%;
}

fieldset.no-border,
.form-flex fieldset {
	border: 0;
	padding: 0;
}

.form-flex fieldset {
	margin: .5em 0 0;
}

#StudentInfoForm label,
fieldset.no-border legend,
.form-flex fieldset legend {
	font-weight: 700;
	padding: 0;
}

#StudentInfoForm :is(input[type="radio"], input[type="checkbox"]) + label {
	font-weight: 400;
}

.form-error {
	color: #EE0000;
}

.reverse .form-error {
	background: #EE0000;
	color: #FFFF;
	display: block;
	padding-inline: .5em;
}

.consent-error {
	width: 100%;
}


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

/* page header */
.pageHeader{width:100%;height:auto;margin-bottom:2em}
/* Interior Header */
.intHeader {width: 100%;float: left;padding-bottom: 7.1875rem;background-image: url(/images/intheader.jpg);background-size: cover;}


/* alert */
#alertApp, #alertApp.alertStatic:hover{width:100%; background:#2D5C77;padding-left: 1rem;padding-right: 1rem}
#alertApp h1{margin-bottom:0;font-size:1em;padding:.65rem;color:#fff;text-align:center; font-family: 'Roboto', sans-serif; font-weight: 500;}
#alertTitle span{float:right; opacity:.5}
#alertApp:hover #alertTitle span{opacity:1}
#alertTitle a{color:#fff;text-decoration:underline}
#alertDesc{overflow:hidden}
.alertClosed #alertDesc{height:auto;max-height:0}
.alertOpen #alertDesc{height:auto;min-height:0;max-height:250px;}
#alertDesc p{color: rgba(255,255,255,.8);}
#alertApp {cursor:pointer;}
#alertApp.alertStatic{cursor:auto}
#alertApp:hover { background:#44727B;}

/* 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}


/* FOOTER ------------------------------ */
body>footer{padding-top:3.4em;padding-bottom: 2em;color:#4A4A4A;background-color: #F1F0EE;font-size: .9375em; font-weight: 300;}
body>footer>.wrap{overflow:visible}
body>footer a{color:#4A4A4A}
body>footer a:hover {color: #5B7F48;}
body>footer address a {color: #5B7F48;}
body>footer address a:hover {color: #4A4A4A;}
body>footer a:hover, footer a:active{color:#2D5C77;}
body>footer .wide-wrap a:hover, body>footer .wide-wrap a:active {color: #5B7F48;}
body>footer a.on, footer .on>a{text-decoration:none;color:#2D5C77;}
.fatFooter{margin-bottom:2em;}
.fatFooter>nav>ul ul li{padding-left: 1rem}
/*.fatFooter>*>*:last-child{width:1%;padding-right:0;white-space:nowrap}*/
body>footer nav{display:inline}
/*body>footer .wrap nav a:before{content:"\00A0\007C\00A0\00A0"}*/
body>footer>div{min-height:18px}
#web-solutions-exposure a:hover{opacity:.8}

body>footer .wide-wrap nav a+span:before {content: "•"; margin: 0 0.5em}
body>footer .wide-wrap {font-size: .934em;}
body>footer h2 {
	font-family: 'Roboto Slab', serif;
	font-size: 1.2em;
	color: #2D5C77;
	margin-bottom: 1.2rem;
}
body>footer .email-signup h2 {
	margin-bottom: 1.4375rem;
}
body>footer>.fatFooter,body>footer>.wrap {
	max-width: 75rem;
}

body>footer section, body>footer>.fatFooter>div {
	display: inline-block;
	float: left;
	width: 25%;
	vertical-align: top;
}
body>footer>.fatFooter>div {width: auto;}
body>footer>.fatFooter>div a img {height:auto; max-width: 8em; width: 100%;}
body>footer>.fatFooter>div a:hover img {opacity: .5;}

body>footer .email-signup {
	float: right;
	width: 25%;
}
body>footer .email-signup input {
	padding: .71875rem 3.75rem .71875rem .8125rem;
	border: 0;
}
body>footer .email-signup input::-webkit-input-placeholder {
	font-style: italic;
}
body>footer .email-signup input:-ms-input-placeholder {
	font-style: italic;
}
body>footer .email-signup input::-ms-input-placeholder {
	font-style: italic;
}
body>footer .email-signup input::placeholder {
	font-style: italic;
}
body>footer .email-signup button {
	padding: .8125rem 1.069rem .6875rem;
	vertical-align: top;
	margin-left: -.1875rem;
}
body>footer .email-signup button:after {
	content: url(/images/chevron.svg); height: 1rem; font-family: fontawesome; color: #fff; display: block;
}

body>footer .email-signup img {
	margin-top: 2.5rem;
	float: right;
}

footer .social-links svg {fill: #2D5C77;height: 1.25rem;margin: .5rem .625rem 0 0;}
footer .social-links .instagram svg { height: 1.375rem; position: relative; top: .0625em}
footer .social-links a:hover svg path {fill: #5B7F48;}
/* RESPONSIVE ------------------------------
@media screen and (max-width:1200px) {
}

@media
only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (min-resolution: 192dpi),
only screen and (min-resolution: 1.5dppx) {
#brand{background:url(/images/brand@2x.png) no-repeat center center;background-size: 200px 60px;}
	#brand img{visibility:hidden;}
}*/


/* 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{background-color: #f8f8f8;-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; color: #fff;}
.formError em { border:10px solid;  border-color:Black transparent transparent; bottom:-17px; display:block; height:0; left:40px; position:absolute; width:0; }

@import url(/includes/css/grid-flex.css);

/* RIBBON 1 ---------------------------------- */

.hero-section {
	padding-top: 2.3125rem;
	padding-bottom: 4rem;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#F9F9F8), to(#F1F0EE));
	background-image: linear-gradient(-180deg, #F9F9F8 0%, #F1F0EE 100%);
	/*overflow: hidden;*/
	-webkit-box-ordinal-group: 2;
	    -ms-flex-order: 1;
	        order: 1;
}
.ribbon1-adultEd {margin-top: 1rem;border-top: solid 1px #ccc;padding-top: 1rem;}
.hero-section>.wrap {
	border: 8px solid #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.hero-section-left {
	width: 58%;
	/*overflow: hidden;*/
}

.hero-section-left > .slideContainer {
	border-right: 8px solid #fff;
}

.hero-section-left button.play-pause {
	background-color: #000;
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><path fill="%23FFFFFF" d="M272 63.1l-32 0c-26.51 0-48 21.49-48 47.1v288c0 26.51 21.49 48 48 48L272 448c26.51 0 48-21.49 48-48v-288C320 85.49 298.5 63.1 272 63.1zM80 63.1l-32 0c-26.51 0-48 21.49-48 48v288C0 426.5 21.49 448 48 448l32 0c26.51 0 48-21.49 48-48v-288C128 85.49 106.5 63.1 80 63.1z"/></svg>');
	background-position: center;
	background-repeat: no-repeat;
	background-size: clamp(0.625rem, 0.58rem + 0.23vw, 0.75rem) auto;
	border: 0;
	bottom: 1em;
	cursor: pointer;
	display: table;
	left: 1em;
	opacity: .8;
	padding: clamp(0.875rem, 0.83rem + 0.23vw, 1rem);
	position: absolute;
	z-index: 3;
}

.hero-section-left button.play-pause.paused {
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path fill="%23FFFFFF" d="M361 215C375.3 223.8 384 239.3 384 256C384 272.7 375.3 288.2 361 296.1L73.03 472.1C58.21 482 39.66 482.4 24.52 473.9C9.377 465.4 0 449.4 0 432V80C0 62.64 9.377 46.63 24.52 38.13C39.66 29.64 58.21 29.99 73.03 39.04L361 215z"/></svg>');
}


/* HERO RIGHT ------------------------------ */

.hero-section-right {
	display: flex;
	width: 42%;
	flex-direction: column;
	justify-content: space-between;
	overflow: hidden;
	background: #fff;
}

.hero-section-right>div {
	padding: clamp(1.25em, 0.795em + 2.27vw, 2.5em);
}

.hero-section-right>div:first-child {
	background: rgba(108,152,85,.2);
}

.hero-section-right>div:last-child {
	background: rgba(45,92,119,.2);
}

.hero-section-right h2 {
	color: #000;
	font-family: 'Roboto Slab', serif;
	font-size: clamp(1.25em, 1.182em + 0.34vw, 1.438em);
	font-weight: 700;
	padding-left: 1.5625em;
	position: relative;
}

.hero-section-right h2::before {
	aspect-ratio: 1;
	background: no-repeat center / contain;
	content: '';
	left: 0;
	position: absolute;
	top: -.125em;
	width: 1.3125em;
}

.hero-section-right>div:first-child h2::before { background-image: url('/images/icons/palette.svg'); }
.hero-section-right>div:last-child h2::before { background-image: url('/images/icons/clipboard.svg'); }

.hero-section-right p {
	font-size: clamp(1em, 0.955em + 0.23vw, 1.125em);
	font-weight: 400;
}

.hero-section-right .button {
	margin: .5em .25em 0 0;
	padding-inline: 1em;
}



/* CATALOG ------------------------------ */
.catalog {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-direction: row;
	        flex-direction: row;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	padding-bottom: 1.6875rem;
	padding: 2.5625rem 2.5625rem 1.6875rem;
	min-height: 66%;
}
.catalog-left {
	width: 100%;
	margin-bottom: 1.25rem;
}
.catalog .catalog-link {
	font-family: 'Roboto Slab', serif;
	font-size: 1.4375em;
	color: #000;
	margin-bottom: 1.3rem;
	display: block;
}
.catalog-left .button {margin: 0 5px 5px 0}
.catalog .catalog-link:hover, .catalog .catalog-link:active, .catalog-img a:hover, .catalog-img a:active {
	color: #2D5C77;
}

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

.catalog-img img {
	max-width: 9.25rem;
	margin-bottom: .5rem;
}
.catalog-img svg {
	width: .75rem;
	margin-right: .375rem;
	vertical-align: text-top;
}
.catalog-img a {
	color: #333;
	font-size: .875em;
	text-align: center;
	text-transform: lowercase;
	display: block;
}
.event {
	-ms-flex-line-pack: stretch;
		align-content: stretch;
	height: 100%;
	color: #EBEFF4;
	background: #44727b;
	padding: 1.9375rem 3.9375rem 1.9275rem 2.5625rem;

}
.event-text {
	float: right;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
			flex-direction: column;

}
.event svg {
	width: 2rem;
	fill: rgba(255,255,255,.2);

}
.event svg, .event {
	-webkit-transform: translateZ(0.1px) rotate(0.00001deg);
	        transform: translateZ(0.1px) rotate(0.00001deg);
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-backface-visibility: hidden;
			backface-visibility: hidden;
}
.event span {
	display: block;

}
.event .date {
	font-size: .8125em;
	line-height: 1;
	margin-bottom: .4em;
	-webkit-box-ordinal-group:2;
	    -ms-flex-order:1;
			order:1;
	color: #EBEFF4;
}
.event .title {
	-webkit-box-ordinal-group:3;
	    -ms-flex-order:2;
	        order:2;
	font-size: 1.125em;
	color: #fff;
	font-family: 'Roboto Slab', serif;
	margin-bottom: .5em;
}
.event .description {
	-webkit-box-ordinal-group:4;
	    -ms-flex-order:3;
	        order:3;
	font-size: .8725em;
	line-height: 1.3;
	color: #EBEFF4;
}
.event:hover .description,  .event:hover .title, .event:hover .date {
	opacity: .8;
}
.event:hover svg {
	fill: rgba(255,255,255,.3);
}
/* FEATURED CLASS / TRIP ---------- */
.featured-class, .featured-trip {
	background-size: cover;
	background-position: center;
	border-bottom: 6px solid #fff;
}
.featured-class {
	background-image: url(/images/featured-class.jpg);
	padding: 7.6875rem 0;
	-webkit-box-ordinal-group: 4;
	    -ms-flex-order: 3;
	        order: 3;
}
.featured-trip {
	background-image: url(/images/featured-trip.jpg);
	position: relative;
	padding: 9.375rem 0;
	-webkit-box-ordinal-group: 5;
	    -ms-flex-order: 4;
	        order: 4;
}
.featured-class-content {
	max-width: 32%;
	float: right;
	margin-right: 16%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}
.featured-trip-content {
	max-width: 35%;
	float: right;
	margin-right: 14%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
}
.featured-class time, .featured-trip time {
	font-weight: 300;
	color: #4A4A4A;
	font-size: .875em;
	-webkit-box-ordinal-group: 2;
	    -ms-flex-order: 1;
	        order: 1;
}
.featured-class h2, .featured-trip h2 {
	margin: .3rem 0 1.4rem;
	font-family: 'Roboto Slab', serif;
	color: #000;
	font-size: 1.375em;
	-webkit-box-ordinal-group: 3;
	    -ms-flex-order: 2;
	        order: 2;
}
.featured-class p, .featured-trip p {
	font-size: 1.125em;
	font-weight: 300;
	color: #4A4A4A;
	margin-bottom: 1.375rem;
	-webkit-box-ordinal-group: 4;
	    -ms-flex-order: 3;
	        order: 3;
}
.featured-buttons {-webkit-box-ordinal-group: 5;-ms-flex-order: 4;order: 4;}
.featured-class a, .featured-trip a {margin-top: .5rem;}
.featured-class a:not(:last-child), .featured-trip a:not(:last-child) {
	margin-right: .5rem;
}
.featured-class .wrap img, .featured-trip .wrap img {
	margin-left: 4rem;
	border: 7px solid #fff;
	-webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .15);
	        box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .15);
}

img.travel-stamp {
	position: absolute;
	bottom: -6em;
	right: -3em;
	height: 59%;
}

/* FEATURED GALLERY -------- */
.featured-gallery {
	padding: 4rem 0 2rem 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-ordinal-group: 6;
	    -ms-flex-order: 5;
	        order: 5;
}

.featured-gallery img {
	float: right;
	clear: both;
	max-width: 25.625rem;
	margin-left: 5.75rem;
	margin-right: 4.75rem;
	border: 7px solid #fff;
	-webkit-box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .15);
			box-shadow: 0 1px 4px 0 rgba(0, 0, 0, .15);
			margin-bottom: .2em;
}

.featured-gallery-content {
	margin-left: 4rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 100%;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-direction: column;
	        flex-direction: column;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.featured-gallery h2 {
	font-family: 'Roboto Slab', serif;
	color: #000;
	font-size: 1.5rem;
}

.featured-gallery p {
	font-size: 1.125em;
	font-weight: 300;
	color: #4A4A4A;
}

/* WELCOME MESSAGE --------- */
.welcome-message {
	clear: both;
	text-align: center;
	padding: 4rem 0 7.25rem 0;
	position: relative;
	-webkit-box-ordinal-group: 7;
	    -ms-flex-order: 6;
	        order: 6;
}
.welcome-message>.wrap {
	max-width: 73.875em;
	position: relative;
	z-index: 2;
	overflow: visible;
}
.welcome-content {
	padding: 7.5rem 4.6875rem 5.5rem;
	background-color: #2D5C77;
	max-width: 38.75rem;
	max-height: 38.75rem;
	z-index: 2;
}
.welcome-message h1 {
	color: #fff;
	font-size: 1.5em;
	font-weight: 400;
}
.welcome-message p {
	color: #fff;
	font-size: 1.125em;
	margin-bottom: 2.75rem;
	font-weight: 300;
}
.welcome-message hr {
	border-top: 2px solid rgba(255,255,255,.26);
	width: 4.4375rem;
	margin: 1.3125rem auto;
}
.welcome-message .wrap img {
	max-height: 41.875em;
	position: absolute;
	top: -2.875rem;
	right: 0;
	z-index: -1;
}

/* CALLOUTS --------------------- */
.callouts {
	padding-top: 4.3125rem;
	padding-bottom: 1.75rem;
	-webkit-box-ordinal-group: 3;
	    -ms-flex-order: 2;
	        order: 2;
}

.callouts h2 {
	margin-bottom: 2.5rem;
	font-size: 1.375rem;
	font-family: 'Roboto Slab', serif;
	color: #000;
	text-align: center;
}

.callouts a {
	position: relative;
	width: calc(33% - 3.375rem);
	vertical-align: top;
	margin: 0 1.6875rem 2.5rem;
	display: inline-block;
	text-align: center;
}

.callouts a>div {
	padding-top: 9.375rem;
	max-width: 18.75rem;
	margin: 0 auto 1.5625rem;
	background-repeat: no-repeat;
	position: relative;
	height: 0;
	background-size: contain;
}

.callouts h3 {
	font-family: 'Roboto Slab', serif;
	color: #2D5C77;
	font-size: 1.25em;
}

.callouts p {
	font-weight: 300;
	color: #4a4a4a;
}

.callouts p strong {
	font-weight: 500;
	color: #000;
}





/* ANIMATION CLASSES ------------------------------ */

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

  .fade-in, .stamp-animation, .animate-right-absolute,
  .animate-left, .animate-right, .animate-down, .animate-up,
  .animate-up-left .animate-up-right, .animate-down-left, .animate-down-right {
	opacity: 0;
	position: relative;
	-webkit-transition: all 1s ease;
	transition: all 1s ease;
  }

  .stamp-animation {
	  -webkit-transform: rotate(-45deg) scale(1.25) translateX(5rem);
	          transform: rotate(-45deg) scale(1.25) translateX(5rem);
  }

  .animate-right-absolute {
	  -webkit-transform: translateX(5rem);
	          transform: translateX(5rem);
  }

  .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; }
  .stamp-animation.animated {-webkit-transform: rotate(0deg) scale(1) translateX(0);transform: rotate(0deg) scale(1) translateX(0)}
  .animate-right-absolute.animated {-webkit-transform: translateX(0);transform: translateX(0)}
  .animated {opacity: 1;}

  .animated,
  .delay-1 {-webkit-transition-delay:.15s; transition-delay:.15s;}
  .delay-2 {-webkit-transition-delay:.3s;  transition-delay:.3s;}
  .delay-3 {-webkit-transition-delay:.45s; transition-delay:.45s;}
  .delay-4 {-webkit-transition-delay:.6s;  transition-delay:.6s;}
  .delay-5 {-webkit-transition-delay:.75s; transition-delay:.75s;}
  .delay-6 {-webkit-transition-delay:.9s;  transition-delay:.9s;}
  .delay-7 {-webkit-transition-delay:1.05s; transition-delay:1.05s;}
  .delay-8 {-webkit-transition-delay:1.2s; transition-delay:1.2s;}
  .delay-9 {-webkit-transition-delay:1.35s; transition-delay:1.35s;}
  .delay-10 {-webkit-transition-delay:1.5s; transition-delay:1.5s;}



  /* IE query */
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	.catalog {padding: 1.5rem 1rem 0;}
	.catalog-left {
		width: 58%;
		display: inline;
		float: left;
	}

	.catalog-img {
		float: right;
	}

	.catalog-img img {
		max-width: 7.25rem;
	}

	.catalog-img svg {height: 1rem; margin-right: 0;}

	.event {padding: 1.9375rem 2rem 1.9275rem 2.5rem;}
	.event svg {width: 3rem; height: 2rem;}
	.event-text {max-width: 100%; width: 100%;}

	.featured-gallery-content {
		display: inline;
	}

	body>footer section {float: left;}
	body>footer .email-signup {
		width: 20.31rem !important;
	}
}
/* Edge */
@supports (-ms-ime-align: auto) {
	body > footer .email-signup {
		width: 30.1%;
	}
	#brand img {transition: max-height 0s;}

	@media (max-width: 78.125em) {
		body > footer > .fatFooter >.email-signup {
			width: 19.5rem;
		}

	}
}
