@charset "utf-8";
/* CSS Document */
/* Default Latrobe College Desktop CSS */
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1.2;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

/* Begin Styles */

/* Set Box Model */
*, *:before, *:after {
  -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
 }
*:focus {
	outline:none;
}
/*************************** Begin general document styles ***************************/
/*html { margin-left: calc(100vw - 100%); }
html { overflow-y: scroll; }*/

html,body {
	font-size:0.825vw;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-text-size-adjust: none;
	-webkit-touch-callout: none;
}

body {
	background:#000;
	font-family: "CentraNo2-Book";
	text-align:left;
	background-color:#f0f0f0;
	color:#fff;
	/*overflow-x:hidden;
	overflow:hidden;*/
	padding:0;
}
body.smooth-scroll {
	scroll-behavior: smooth;
}
img {
	width:100%;
	height:auto;
	margin:0px;
	padding:0px;
}
strong {
	font-family: "CentraNo2-Medium";
}
em {
	font-family: "CentraNo2-BookItalic";
}
h1 {
	font-size:6rem;
	line-height:1;
}
h2 {
	font-size:2rem;
	line-height:1.13;
}

h3 {
	font-family: "CentraNo2-Medium";
	font-size:1.75rem;
	line-height:1.14;
}
h4 {
	font-family: "CentraNo2-Medium";
	font-size:1.25rem;
	line-height:1.2;
}

p {
	font-family: "CentraNo2-Book";
	font-size:2rem;
	line-height:1.13;
	letter-spacing:1px;
	margin-bottom:3.125rem;
}
/*p:last-of-type {
	margin-bottom:0;
}*/

.body1 {
	font-family: "CentraNo2-Book";
	font-size:2rem;
	line-height:1.13;
}
.body1 p {
	font-family: "CentraNo2-Book";
	font-size:2rem;
	line-height:1.13;
}
.body2 {
	font-family: "CentraNo2-Book";
	font-size:1.75rem;
	line-height:1.29;
}
.body2 p {
	font-family: "CentraNo2-Book";
	font-size:1.75rem;
	line-height:1.29;
}
.body3 {
	font-family: "CentraNo2-Book";
	font-size:1.25rem;
	line-height:1.2;
}
.body3 p {
	font-family: "CentraNo2-Book";
	font-size:1.25rem;
	line-height:1.2;
}

label {
	font-family: "CentraNo2-Book";
	font-size:1rem;
	/*letter-spacing:1px;*/
	line-height:1;
}
.imagecaption, .imagecaption p {
	font-family: "CentraNo2-Book";
	font-size:1rem;
	letter-spacing:1px;
	line-height:1.25;
}
.footerlist {
	font-family: "CentraNo2-Book";
	font-size:1rem;
	letter-spacing:1px;
	line-height:2;
}


.menu1 {
	font-family: "CentraNo2-Book";
	font-size:1.5rem;
	line-height:1.17;
}

.menu2 {
	font-family: "CentraNo2-Book";
	font-size:1.25rem;
	line-height:1.2;
}

.menu3 {
	font-family: "CentraNo2-Book";
	font-size:0.875rem;
	line-height:2;
}

.menu4 {
	font-family: "CentraNo2-Light";
	font-size:0.875rem;
	line-height:2;
}

.menu4 a:hover {
	border:1px solid #fff;
	border-width:0 0 1px 0;
}

.menu4 a.selected {
	border:1px solid #fff;
	border-width:0 0 1px 0;
}

.cta {
	font-family: "CentraNo2-Book";
	font-size:1.25rem;
	line-height:1;	
}

.cta {
	position:relative;
	font-family: "CentraNo2-Book";
	font-size:1.25rem;
	letter-spacing:1px;
	line-height:1.25;
	/*border:1px solid #000;
	border-width:0 0 2px 0;*/
	padding:0 2rem .5rem 0;
	/*background:url(CTA_Plus.svg) right top .45rem no-repeat;
	background-size: .75rem .75rem;*/
	opacity:1;
	transition:opacity .3s;
}
.cta:hover {
	opacity:.5;
}
.cta:before {
	content:'';
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	height:2px;
	background-color:#000;
	transition: width .5s , opacity .3s;
	opacity:1;
}
.cta.errorstate:before {
	background-color:#ff0000;
}
.cta:hover:before {
	left:auto;
	right:0;
	width:0;
	opacity:.5;
}

.cta:after {
	content:'';
	position:absolute;
	right:0;
	top:.45rem;
	width:.75rem;
	height:.75rem;
	outline:1px none red;
	background:url(CTA_Plus.svg) center center no-repeat;
	background-size:cover;
}

.cta.book:after {
	background:url(CTA_Book_Visit.svg) center center no-repeat;	
}

.cta.arrow:after {
	background:url(CTA_Contact_Arrow.svg) center center no-repeat;	
}

.dark .cta {
	color:#fff;
}

.dark .cta:hover {
	opacity:.5;
}
.dark .cta:before {
	content:'';
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
	height:2px;
	background-color:#fff;
	transition: width .5s , opacity .3s;
	opacity:1;
}
.dark .cta:hover:before {
	left:auto;
	right:0;
	width:0;
	opacity:.5;
}

.dark .cta:after {
	content:'';
	position:absolute;
	right:0;
	top:.45rem;
	width:.75rem;
	height:.75rem;
	outline:1px none red;
	background:url(CTA_Plus_Reverse.svg) center center no-repeat;
	background-size:cover;
}

.dark .cta.book:after {
	background:url(CTA_Book_Visit_Reverse.svg) center center no-repeat;
}

.dark .cta.arrow:after {
	background:url(CTA_Contact_Arrow_Reverse.svg) center center no-repeat;
}


a {
	text-decoration:none;
	color:inherit;
	border:none;
}

blockquote {
	font-size:1.3rem;
	width:50%;
	margin: 1.1875rem 0 4.1875rem 0;
	color:#fff;
	text-transform:uppercase;
	line-height:1.4;
}

ul {
	list-style-type: none;
	/*list-style-image:url(list-style-image.png);
	font-size:1.88rem;*/
	margin-bottom:3.125rem;
}

/*ul li::before {
  content: "\200B";
}*/

ul > li {
	position:relative;
	margin-left:.5rem;
	display:list-item;
	line-height:1.2;
	padding-right:0;
	padding-left:2rem;
	outline:1px none red;
	margin-bottom:.5rem;
	background:url(LCAD_Circle.svg) left top 1rem no-repeat;
	background-size: 0.375rem 0.375rem
}

ol {
	list-style-type: decimal;
	list-style-position: outside;
	margin-left:2.25rem;
	/*font-size:1.88rem;*/
	margin-bottom:3.125rem;
}
ol li {
	position:relative;
	line-height:1.2;
	display:list-item;
	padding-left:.5rem;
	margin-bottom:.5rem;
}

hr {
	width:100%;
	margin-bottom:1rem;
}

.seo {
	position:absolute;
	left:-10000px;
}

.full-width2 {
	grid-column: span 2;
}

.full-width3 {
	grid-column: span 3;
}

.no-top-padding {
	padding-top:0;
}

/*************************** End general document styles ***************************/


/*************************** begin structural styles ***************************/

/* begin global ticker */

.global-ticker {
	position:fixed;
	top:0;
	right:0;
	width:3.875rem;
	height:100vh;
	background-color:#f0f0f0;
	z-index:1001;
	outline:1px none red;
	line-height:1.75rem;
	overflow:hidden;
}

.ticker-content {
	position:relative;
	/*top:20px;*/
	white-space: nowrap;
	transform-origin:center;
	transform:rotate(90deg);
	line-height:1.75rem;
	outline:1px none red;
	color:#000;
	padding-top:0;
	padding-left:0;
	font-size:1.75rem;
	text-transform:uppercase;
}

/* begin from https://stackoverflow.com/questions/45847392/pure-css-continuous-horizontal-text-scroll-without-break */
.marquee {
	margin: 0 auto;
	white-space: nowrap;
	overflow: hidden;
	position: absolute;
	bottom:-1.25rem;
	font-size:0;
}

.marquee span {
	position:relative;
	font-size:2rem;
	display: inline-block;
	padding-left: 100%;
	animation: marquee 120s linear infinite;
	animation-delay: -60s;
	border:1px none red;
	z-index:2;
	
}

.marquee2 span {
	font-size:2rem;
	animation-delay: 0s;
	border:1px none blue;
	z-index:1;
}

@keyframes marquee {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-100%, 0);
  }
}

.global-ticker:hover .marquee span {
	animation-play-state: paused;
}
/* end from https://stackoverflow.com/questions/45847392/pure-css-continuous-horizontal-text-scroll-without-break */

a.ticker-link {
	padding-right:2rem;
	margin-right:1rem;
	background:url(CTA_Contact_Arrow.svg) center right no-repeat;
	background-size: .75rem 0.6875rem;
	outline:1px none red;
	z-index:200;
}

/* end global ticker */

/* begin global menu */

.global-menu {
	position:fixed;
	top:0;
	right:calc(-100% + 11.625rem);
	width:100%;
	height:100vh;
	z-index:1000;
	padding:0;
	background-color:#f0f0f0;
}

.global-menu.open {
	right:0;
	right:.25rem;
	width:100%;
	transition: right 1s ease-in-out;
}

.global-menu.close {
	transition: right 1s ease-in-out;
}

.global-menu-bar {
	position:absolute;
	left:0;
	top:0;
	width:7.75rem;
	height:100vh;
	background-color:#2C2B29;
	color:#fff;
	padding-top:3.125rem;
	transition: background-color 1s;
	z-index:2000;
}

.global-menu-bar.light {
	position:absolute;
	left:0;
	top:0;
	width:7.75rem;
	height:100vh;
	background-color:#f0f0f0;
	color:#000;
	padding-top:3.125rem;
	transition: background-color 1s;
	z-index:2000;
}

.global-menu-bar.blue {
	position:absolute;
	left:0;
	top:0;
	width:7.75rem;
	height:100vh;
	background-color:#B6E8FA;
	color:#000;
	padding-top:3.125rem;
	transition: background-color 1s;
	z-index:2000;
}

.global-menu-bar.yellow {
	position:absolute;
	left:0;
	top:0;
	width:7.75rem;
	height:100vh;
	background-color:#FFE1B5;
	color:#000;
	padding-top:3.125rem;
	transition: background-color 1s;
	z-index:2000;
}


.global-menu-bar #burger {
	position:relative;
	display:block;
	width: 2.5rem;
	height: 2.5rem;
	border: 1px solid #fff;
	border-width:2px 0 2px 0;
	cursor:pointer;
	opacity:1;
	transition:opacity .5s;
	margin:auto;
	margin-bottom:2.5rem;
}
.global-menu-bar #burger:hover {
	opacity:.41;
}
.global-menu-bar #burger:before {
	content:'';
	position:absolute;
	width:100%;
	height:2px;
	background-color:#fff;
	top:50%;
	left:0;
}

.global-menu-bar #search {
	position:relative;
	display:block;
	width: 2.5rem;
	height: 2.5rem;
	cursor:pointer;
	opacity:1;
	transition:opacity .5s;
	background:url(Search_Icon.svg) center center no-repeat;
	background-size:cover;
	margin:auto;
}

.global-menu-bar #search:hover {
	opacity:.41;
}

.global-menu-bar.light #search {
	background:url(Search_Icon_Negative.svg) center center no-repeat;
	background-size:cover;
}

.global-menu-bar #menuclose {
	position:relative;
	display:block;
	width: 2.5rem;
	height: 2.5rem;
	cursor:pointer;
	opacity:1;
	transition:opacity .5s;
	background:url(Menu_X_Positive.svg) center center no-repeat;
	background-size:cover;
	margin:auto;
	margin-bottom:2.5rem;
}

.global-menu-bar #menuclose:hover {
	opacity:.41;	
}

.global-menu-bar.light #menuclose {
	background:url(Menu_X_Negative.svg) center center no-repeat;
	background-size:cover;	
}

.global-menu-bar.blue #menuclose {
	background:url(Menu_X_Negative.svg) center center no-repeat;
	background-size:cover;	
}

.global-menu-bar.yellow #menuclose {
	background:url(Menu_X_Negative.svg) center center no-repeat;
	background-size:cover;	
}

.global-menu-bar #searchclose {
	position:relative;
	display:block;
	width: 2.5rem;
	height: 2.5rem;
	cursor:pointer;
	opacity:1;
	transition:opacity .5s;
	background:url(Menu_X_Positive.svg) center center no-repeat;
	background-size:cover;
	margin:auto;
	margin-bottom:2.5rem;
}

.global-menu-bar #searchclose:hover {
	opacity:.41;	
}

.global-menu-panel {
	position:absolute;
	right:0;
	top:0;
	width:calc(100% - 7.75rem);
	height:100vh;
	background-color:#2C2B29;
	padding:3.125rem 3.5rem 3.125rem 3.5rem;
}

.global-menu-panel.menu {
	z-index:2;
	opacity:1;
	transition:opacity .5s;
}

.global-menu-panel.search {
	background-color:#f0f0f0;
	color:#000;
	z-index:1;
	opacity:1;
	transition:opacity .5s;
	overflow-x:none;
	overflow-y:auto;
}
.global-menu-panel.search .search-container {
	width:calc(100% - 7.75rem);
	max-width:1512px;
}
.global-menu-panel.search .search-field {
	width:40rem;
	outline:1px none red;
	color:#fff;
	padding:0;
	font-size:2rem;
	height:2.5rem;
	color:#000;
	border:none;
	/*border:1px solid #000;
	border-width:0 0 0 2px;*/
}
.global-menu-panel.search h2 {
	padding-bottom:3rem;
	margin-bottom:3rem;
	border:1px solid #000;
	border-width:0 0 2px 0;
	background:url(LCAD_Logo.svg) right top no-repeat;
	background-size:7.75rem 1.9375rem;
	letter-spacing:2px;
}

.global-menu-panel.search .searchresults {
	margin-top:5rem;
	position:relative;
	border:1px none red;
	color:#000;
	display:grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-column-gap:1.5rem;
	padding:0;
}


.global-menu-panel.search .searchresults .grid-item {
	margin-bottom:5rem;
	outline:1px none blue
}

.global-menu-panel.search .searchresults .grid-item h3 {
	font-size:2rem;
	line-height:1.13;
	height:7rem;
	outline:1px none red;
}

.global-menu-panel.search .searchresults .short-description {
	outline:1px solid red;
	height:18.5rem;
	height:8.875rem;
	padding-right:5rem;
	/*margin-bottom:3rem;*/
	outline:1px none red;
}

.global-menu-panel.search .searchresults .cta-container {
	height:5rem;
	outline:1px none red;
}

.global-menu-panel.search .searchresults p {
	margin-bottom:3rem;
}

.global-menu-bar .apply-now {
	width:7.75rem;
	height:7.75rem;
	background-color:#B6E8FA;
	color:#000;
	position:absolute;
	left:0;
	bottom:0;
	display:grid;
	align-items:center;
	justify-content:center;
	font-family: "CentraNo2-Book";
	font-size:1.25rem;
	line-height:1.2;
	cursor:pointer;
	user-select: none;
	text-align:center;
}

.global-menu-bar .apply-now.blue {
	background-color:#B6E8FA;
}

.global-menu-bar .apply-now.yellow {
	background-color:#FFE1B5;
}

.global-menu-bar .bottom-close {
	width:7.75rem;
	height:7.75rem;
	background-color:transparent;
	color:#fff;
	position:absolute;
	left:0;
	bottom:0;
	display:grid;
	align-items:center;
	justify-content:center;
	font-family: "CentraNo2-Book";
	font-size:1.25rem;
	line-height:1.2;
	cursor:pointer;
	user-select: none;
	transition:opacity .5s;
}

.global-menu-bar.light .bottom-close {
	color:#000;
}

.global-menu-bar.blue .bottom-close {
	color:#000;
}

.global-menu-bar.yellow .bottom-close {
	color:#000;
}

.global-menu-bar .bottom-close:hover {
	opacity:.41;
}

.global-menu-bar .bottom-close  span {
	transform-origin:center;
	transform:rotate(-90deg);
}

.global-menu-panel.application {
	background-color:#fff;
	color:#000;
	z-index:1;
	opacity:1;
	transition:opacity .3s;
	overflow-y:auto;
	padding-bottom:7rem;
}

.global-menu-panel.application h2 {
	padding-bottom:3rem;
	margin-bottom:4.5rem;
	border:1px solid #000;
	border-width:0 0 2px 0;
	background:url(LCAD_Logo.svg) right top no-repeat;
	background-size:7.75rem 1.9375rem;
	letter-spacing:2px;
}

.global-menu-panel.application .application-form-container {
	width:calc(100% - 7.75rem);
	max-width:1512px;
}

.global-menu-panel.application .introduction {
	display:grid;
	grid-template-columns: 34rem 1fr;
	grid-column-gap: 6rem;
	outline:1px none red;
	margin-bottom:7rem;
}

.global-menu-panel.application .introduction h2 {
	padding:0;
	border:none;
	background:none;
	margin-bottom:3rem;
}
.global-menu-panel.application .introduction p {
	margin-bottom:3rem;
}

.global-menu-panel.application .introduction p:last-of-type {
	margin-bottom:0;
}

.global-menu-panel.application .form-group {
	display:grid;
	grid-template-columns: 32.25rem 1fr;
	outline:1px none red;
	margin-bottom:4rem;
}

.global-menu-panel.application .form-group-label {
	
}

.global-menu-panel.application .field-group {
	display:grid;
	grid-template-columns: 1fr 1fr;	
	grid-column-gap: 18px;
}

.global-menu-panel.application .field-group p {
	outline:1px none blue;
	letter-spacing:0;
}

.global-menu-panel.application .accordion-item-content {
	padding-top:2.6875rem
}

/*************************** begin capbilities module ***************************/

.main-menu-container {
	display:grid;
	grid-template-columns:1fr 16rem;
	width:calc(100% - 16.8125rem);
	width:calc(100% - 7.75rem);
	/*width:100%;*/
	max-width:1512px;
	min-width:1140px;
	outline:1px none red;
}

.main-menu-container .logo {
	/*position:absolute;
	left:86.75rem;
	top:3.25rem;
	width:7.75rem;
	height:1.9375rem;
	background:url(LCAD_Logo_Negative.svg) center center no-repeat;
	background-size:cover;*/
	width:16rem;
	outline:1px none red;
	text-align:right;
}

.main-menu-container .logo img {
	width:7.75rem;
	height:auto;
	justify-self:end;
}

.capabilities-module {
	position:relative;
	outline:1px none green;
	height:92vh;
	/*display:grid;
	grid-template-columns:1fr;*/
	/*max-width:1256px;*/
	overflow:hidden;
}

.capabilities-module .menu {
	display:grid;
	/*grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr;
	grid-auto-flow: column;*/
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;	
	grid-column-gap: 1.5rem;
	margin-bottom:4.5rem;
}

.capabilities-module .menu-item {
	position:relative;
	outline:1px none red;
	text-align:left;	
	/*border:2px solid #fff;
	border-width:0 0 1px 0;*/
	cursor:pointer;
	color:#fff;
	opacity:.2;
	transition: border-color .5s, color .5s, opacity .5s;
	padding-bottom:3rem;
	align-self:end;
}
.capabilities-module .menu-item:after {
	content:'';
	position:absolute;
	left:0;
	bottom:0;
	height:1px;
	width:100%;
	background-color:#fff;
}
.capabilities-module .menu-item.selected {
	opacity:1;
}
.capabilities-module .menu-item.selected:after {
	height:3px;
}
.capabilities-module .menu-item:hover {
	opacity:1;
}
.capabilities-module .menu-item:hover:after {
	height:3px;
}
.capabilities-module .content-container {
	position:relative;
	color:#fff;
	outline:1px none blue;
}
.capabilities-module .content-box {
	position:relative;
	display:grid;
	grid-template-rows: 1fr;
	left:0;
	top:0;
	width:100%;
	height:0;
	opacity:0;
	transition:opacity 0s;
	outline:1px none blue;
	color:#fff;
}
.capabilities-module .content-box.selected {
	opacity:1;
	height:auto;
	
	height:44rem;
	
	height:100%;
	min-height:75vh;
	transition:opacity 1s;
}

.capabilities-module .content-box .supporting-images {
	outline:1px none red;
	align-self:end;
	display:flex;
	align-items:flex-end;
}

.capabilities-module .content-box .supporting-images img {
	width:14.5rem;
	height:auto;
	margin-right:1.5rem;
}

.capabilities-module .content-box .text {
	display:grid;
	grid-template-columns:1fr 1fr 1fr 1fr 1fr;	
	grid-column-gap: 1.5rem;
}

.capabilities-module .content-box .text .text-column {
	outline:1px none red;
}

.capabilities-module .content-box .text .text-column .menu-heading {
	padding-bottom:1.5rem;
	height:3.75rem;
}

.capabilities-module .content-box .text .text-column .menu-links {
	padding-top:1.5rem;
	border:2px solid #ccc;
	border-width:2px 0 0 0;
}

.capabilities-module .content-box .text .text-column .menu-links .multi-column {
	display:grid;
	grid-template-columns:1fr 1fr 1fr;	
}

.social-media-icon {
	display:inline-block;
	width:2.5rem;
	height:2.5rem;
	margin-right:1.25rem;
	opacity:1;
	transition:opacity .5s;
	text-decoration:none !important;
}
.social-media-icon:after {
	height:0;
}

.social-media-icon:hover {
	opacity:.41;
	border:none !important;
}
.social-media-icon.vimeo {
	background:url(SM_Vimeo_Static.svg) center center no-repeat;
	background-size:cover;
}
.social-media-icon.facebook {
	background:url(SM_Facebook_Static.svg) center center no-repeat;
	background-size:cover;
}
.social-media-icon.instagram {
	background:url(SM_Instagram_Static.svg) center center no-repeat;
	background-size:cover;
}
.social-media-icon.linkedin {
	background:url(SM_LinkedIn_Static.svg) center center no-repeat;
	background-size:cover;
}


/*************************** end capbilities module ***************************/

/* end global menu */

/* wrapper to set minimum width */

#site-background {
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:100vh;
	display:grid;
	grid-template-columns: 60.75rem 1fr;
}

#site-background .background-left {
	height:100vh;
	background-color:#f0f0f0;
}
#site-background .background-right {
	height:100vh
}
#site-background.peach .background-right {
	background-color:#FFD7CC;
}
#site-background.peach-tint .background-right {
	background-color:#ffe6df;
}
#site-background.yellow .background-right {
	background-color:#FFE1B5;
}
#site-background.yellow-tint .background-right {
	background-color:#FFEBCE;
}
#site-background.green .background-right {
	background-color:#C0F0DC;
}
#site-background.green-tint .background-right {
	background-color:#D8F0E6;
}
#site-background.blue .background-right {
	background-color:#B6E8FA;
}
#site-background.blue-tint .background-right {
	background-color:#CDEEFA;
}

#wrapper {
	position:relative;
	min-height:100vh;
	background:transparent;
	color:#000;
	z-index:2;
	min-width:1140px;
	max-width:100%;
	margin:auto;
	outline:1px none red;
	overflow:hidden;
}

/*#wrapper > div:not(:first-child):not(.masthead):not(.footer) {
	transform:translateY(9.375rem);
	opacity:0;
	transition:transform 1s ease, opacity 2s linear;
}
#wrapper > div.loaded:not(:first-child):not(.masthead):not(.footer) {
	transform:translateY(0);
	opacity:1;
}

#wrapper > div.loaded.notransition:not(:first-child):not(.masthead):not(.footer) {
	transform:none !important;
	transition:none !important;
}*/


/* begin footer */

.footer {
	width:100%;
	position:relative;
	padding: 6rem 5.25rem 7.125rem 5.25rem;
	background-color:#2C2B29;
	color:#fff;
	font-size:1rem;
	line-height:1.25;
}
.footer .contents {
	display:grid;
	grid-template-columns: 16.875rem 16.875rem 16.875rem 16.875rem 1fr;
	grid-column-gap:1.5rem;
	max-width:calc(1920px - 11.625rem);
	outline:1px none red;
}

.footer a, .footer span {
	line-height:2;
	/*margin-bottom:1rem;*/
	display:inline-block;
	position:relative;
	transition:color .3s, opacity .5s;
}

.footer span {
	letter-spacing:1px;
}

.footer .column a:not(.social-media-icon):hover {
	color:#7c7c7c;
}

.footer .column a:not(.social-media-icon):before {
	content:'';
	position:absolute;
	left:0;
	bottom:.25rem;
	width:100%;
	height:1px;
	background-color:transparent;
	transition:background-color .3s;
}

.footer .column a:not(.social-media-icon):hover:before {
	content:'';
	position:absolute;
	left:0;
	bottom:.25rem;
	width:100%;
	height:1px;
	background-color:#7c7c7c;
}

.footer .contents .column {
	border: 1px solid #fff;
	border-width:1px 0 0 0;
	margin-bottom:7rem;
	padding-top:.5rem;
}

.footer .logo-image {
	width:10.125rem;
	height:auto;
}
.footer .logo-container {
	justify-self:center;
}

.footer .acknowlegement {
	grid-column: span 3;
	outline:1px none red;
	
}
/*.footer .acknowlegement p {
	line-height:1.25;
}*/
.footer p {
	font-size:1rem;
	margin-bottom:1rem;
	width:95%;
}
.footer .copyright {
	grid-column: span 2;
	outline:1px none red;
}

/*.footer .copyright p {
	line-height:1.25;
}*/

.footer .copyright a:hover {
	color:#7c7c7c;
}

.footer .copyright a:before {
	content:'';
	position:absolute;
	left:0;
	bottom:.25rem;
	width:100%;
	height:1px;
	background-color:transparent;
	transition:background-color .3s;
}

.footer .copyright a:hover:before {
	content:'';
	position:absolute;
	left:0;
	bottom:.25rem;
	width:100%;
	height:1px;
	background-color:#7c7c7c;
}

.footer .stay-in-touch {
	margin-top:2rem;
	border: 1px solid #fff;
	border-width:1px 0 0 0;	
	padding-top:.5rem;
}
.footer .stay-in-touch span {
	margin-bottom:.5rem;
}

/* end footer */

/*************************** end structural styles ***************************/

/*************************** begin component styles ***************************/

/* begin slider / carousel component */

/* begin global slick slider styles */

.carousel {
	position:relative;
	margin-bottom:0;
}
.carousel-image {
	position:relative;
	display:block;
}

/* Slider */
.slick-slider { position: relative; display: block; box-sizing: border-box; -moz-box-sizing: border-box; -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }

.slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-loading .slick-list { background: white url("./ajax-loader.gif") center center no-repeat; }
.slick-list.dragging { cursor: pointer; cursor: hand; }

.slick-slider .slick-list, .slick-track, .slick-slide, .slick-slide img { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

.slick-track { position: relative; left: 0; top: 0; display: block; zoom: 1; }
.slick-track:before, .slick-track:after { content: ""; display: table; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }

.slick-slide { float: left; height: 100%; min-height: 1px; display: none; }
.slick-slide img { display: block; width:100%; height:auto; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }

/* Icons */
@font-face { font-family: "slick"; src: url("./fonts/slick.eot"); src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg"); font-weight: normal; font-style: normal; }
/* Arrows */
/*.slick-prev, .slick-next { position: absolute; display: block; height: 3.125rem; width: 3.375rem; opacity: 1; line-height: 0; font-size: 0; cursor: pointer; background: transparent; color: transparent; top: 50%; transform:translateY(calc(-50% - 2rem)); padding: 0; border: none; outline: none; z-index: 1000000; }*/
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus { outline: none; opacity: 0.5; color: transparent; }
.slick-prev:hover:before, .slick-next:hover:before { opacity: 0.95; }
.slick-prev:focus:before, .slick-next:focus:before { opacity: 0.95; }
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before { opacity: 0.5; }

.slick-prev:before, .slick-next:before { font-family: "slick"; font-size: 20px; line-height: 1; color: white; opacity: 0.5; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.slick-prev { left: -7.5rem; background-image: url('Left_Arrow_Off.svg'); background-size:100%; }
/*.slick-prev:before { content: url('L_Arrow.png'); }*/

.slick-next { right: -7.5rem; background-image: url('Right_Arrow_Off.svg'); background-size:100%; }
/*.slick-next:before { content: url('R_Arrow.png'); }*/

.main-header-carousel .slick-prev { left: 7.5rem; background-image: url('MHC_Left_Arrow.svg'); background-size:100%; }
.main-header-carousel .slick-next { right: 7.5rem; background-image: url('MHC_Right_Arrow.svg'); background-size:100%; }

/* Dots */
.slick-slider { margin-bottom: 30px; }

.slick-dots { position: relative; list-style: none; display: block; text-align: center; padding: 0; width: 100%; padding-top:2rem; }
.slick-dots li { position: relative; display: inline-block; height: 20px; width: 20px; margin: 0 10px; padding: 0; cursor: pointer; outline:1px none red; font-size:1.2rem; }
.slick-dots li button { border: 0; background: transparent; display: block; height: 20px; width: 20px; outline: none; line-height: 0; font-size: 0; color: transparent; padding: 5px; cursor: pointer; }
.slick-dots li button:hover, .slick-dots li button:focus { outline: none; }
.slick-dots li button:hover:before, .slick-dots li button:focus:before { opacity: 1; }
.slick-dots li button:before { position: absolute; top: 0; left: 0; content: "\2022"; width: 20px; height: 20px; font-family: "slick"; font-size: 6px; line-height: 20px; text-align: center; color: black; opacity: 0.25; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.slick-dots li.slick-active button:before { color: black; opacity: 0.75; }


.slick-dots li a {
	color:#86888b;
	font-weight:normal;
}
.slick-dots li.slick-active a {
	color:#000;
	/*text-decoration:underline;*/
	border:1px solid #000;
	border-width:0 0 1px 0;
}
.slick-dots li:hover a {
	color:#000;
	/*text-decoration:underline;*/
	border:1px solid #000;
	border-width:0 0 1px 0;
}


[dir="rtl"] .slick-next {right: auto;left: -25px;}
[dir="rtl"] .slick-next:before {content: "\2190";}
[dir="rtl"] .slick-prev {right: -25px;left: auto;}
[dir="rtl"] .slick-prev:before {content: "\2192";}
[dir="rtl"] .slick-slide {float: right;}

/* end global slick slider styles */

/*************************** begin content objects ***************************/

.content-object {
	position:relative;
	width:100%;
}

.content-object .content-object-background {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	display:grid;
	grid-template-columns: 60.75rem 1fr;
	/*max-width:1920px;*/
	outline:1px none blue;
	/*max-width:calc(1920px - 16.8125rem);*/
}

.content-object .content-object-background .background-left {
	height:100%;
	outline:1px none red;
}

.content-object .content-object-background .background-right {
	height:100%;
	outline:1px none red;
}
.content-object.abstract-blue .content-object-background .background-right {
	background:url(Abstract_Blue.svg) left top no-repeat;
	background-size:cover;	
}
.content-object.abstract-green .content-object-background .background-right {
	background:url(Abstract_Green.svg) left top no-repeat;
	background-size:cover;	
}
.content-object.abstract-pink .content-object-background .background-right {
	background:url(Abstract_Pink.svg) left top no-repeat;
	background-size:cover;	
}
.content-object.abstract-white .content-object-background .background-right {
	background:url(Abstract_White.svg) left top no-repeat;
	background-size:cover;	
}
.content-object.abstract-white-long .content-object-background .background-right {
	background:url(Abstract_White_Long.svg) left top no-repeat;
	background-size:cover;	
}
.content-object.abstract-yellow .content-object-background .background-right {
	background:url(Abstract_Yellow.svg) left top no-repeat;
	background-size:cover;	
}
.content-object.line-circle .content-object-background .background-right {
	background:url(Line_Circle.svg) left top no-repeat;
	background-size:cover;	
}
.content-object.line-circles .content-object-background .background-right {
	background:url(Line_Circles.svg) left top no-repeat;
	background-size:cover;	
}
.content-object.line-triangle-landscape .content-object-background .background-right {
	background:url(Line_Triangle_Landscape.svg) left top no-repeat;
	background-size:cover;	
}
.content-object.line-triangle-portrait .content-object-background .background-right {
	background-image:url(Line_Triangle_Portrait.svg);
	background-repeat:no-repeat;
	background-size:1334px 2054px;	
	background-position:bottom;
	/*background-attachment:fixed;*/
}
.content-object.line-triangle-short .content-object-background .background-right {
	background:url(Line_Triangle_Short.svg) left top no-repeat;
	background-size:cover;	
}

.content-object .content {
	position:relative;
	width:100%;
	max-width:calc(1920px - 11.625rem);
	outline:1px none green;
}

.content-object .content .content-left {
	
}

.content-object .content .content-right {
	
}


/*************************** begin hero carousel ***************************/

.hero-carousel {
	width:100%;
	outline:1px none red;
}
.hero-carousel .content {
	display:grid;
	grid-template-columns: 72.5rem 1fr;
}
.hero-carousel .hero-left {
	position:relative;
	outline:1px none red;
	color:#000;
}

.hero-carousel .hero-left .text-content {
	display:grid;
	grid-template-columns: 1fr;
	align-items:end;
	padding:0 5.25rem 0 5.25rem;
	width:60.75rem;
	height:27rem;
	outline:1px none green;
}

.hero-carousel .hero-left .text-content h1 {
	align-self:end;
	margin-bottom:1.5rem;
}

.hero-carousel .hero-left .text-content p {
	width:80%;
}

.hero-carousel .hero-right {
	position:relative;
	outline:1px none red;
}

.hero-carousel .hero-right .menu {
	position:relative;
	top:26.25rem;
	outline:1px none red;
	color:#2C2B29;
	line-height:1.9;
	padding:0 0 0 7rem;
	vertical-align:top;
}
.hero-carousel .hero-right .menu a {
	position:relative;
	color:#2C2B29;
	padding:0;
	transition: color .3s;
}

.hero-carousel .hero-right .menu a:after {
	content:'';
	position:absolute;
	left:0;
	bottom:-.25rem;
	width:100%;
	height:2px;
	background-color:transparent;
	transition: background-color .3s;
}

.hero-carousel .hero-right .menu a:hover {
	color:#7C7C7C;
	
}
.hero-carousel .hero-right .menu a:hover:after {
	content:'';
	position:absolute;
	left:0;
	bottom:-.25rem;
	width:100%;
	height:2px;
	background-color:#7C7C7C;
}

.hero-carousel .controls {
    width: 100%;
	height:auto;
	text-align:right;
	outline:1px none blue;
	padding-top:1.5rem;
	z-index:100;
}
.hero-carousel .controls .prevbutton, .hero-carousel .controls .nextbutton {
	display:inline-block;
	width:2rem;
	height:2rem;
	outline:1px none red;
	margin-left:1rem;
	cursor:pointer;
}
.hero-carousel .controls .prevbutton {
	background:url(Carousel_Arrow_Left_Static.svg) center center no-repeat;
	background-size:cover;
}
.hero-carousel .controls .nextbutton {
	background:url(Carousel_Arrow_Right_Static.svg) center center no-repeat;
	background-size:cover;
}

.hero-carousel .carousel {
	margin-bottom:0;
	background-color:#f0f0f0;
}

.hero-carousel .logo-image {
	position:absolute;
	left:17.375rem;
	bottom:8rem;
	width:10.125rem;
	height:auto;
}

/*************************** end hero carousel ***************************/

/*************************** begin text content object ***************************/

.text-content-object {
	padding-top:5rem;
}

.text-content-object .content {
	display:grid;
	grid-template-columns: 72.5rem 1fr;
}

.text-content-object .content-left {
	position:relative;
	outline:1px none red;
	color:#000;
}

.text-content-object .content-left .text-content {
	width:60.75rem;
	padding:5.25rem;
}

.text-content-object .content-right {
	position:relative;
	outline:1px none red;
}

.text-content-object.contact .content {
	grid-template-columns: 60.75rem 1fr;
}

.text-content-object.contact .content-right .text-content {
	padding:5.25rem 5.25rem 5.25rem 6.5rem;
}

.text-content-object.contact .content-right .text-content p {
	margin-bottom:1.5rem;
}

.text-content-object.contact .content-right .text-content a {
	position:relative;
	color:#000;
	padding:0;
	transition: color .3s;
}

.text-content-object.contact .content-right .text-content a:after {
	content:'';
	position:absolute;
	left:0;
	bottom:-.25rem;
	width:100%;
	height:2px;
	background-color:transparent;
	transition: background-color .3s;
}

.text-content-object.contact .content-right .text-content a:hover {
	color:#7C7C7C;
	
}
.text-content-object.contact .content-right .text-content a:hover:after {
	content:'';
	position:absolute;
	left:0;
	bottom:-.25rem;
	width:100%;
	height:2px;
	background-color:#7C7C7C;
}

/*************************** end text content object ***************************/

/*************************** begin course search module ***************************/

.course-search-module {
	background-color:#fff;
	outline:1px none red;
	height:auto;
	width:60.75rem;
	color:#000;
	display:grid;
	align-items:start;
}

.course-search-module .text-content {
	display:grid;
	grid-template-columns: 2fr 1fr;
	width:100%;
	outline:1px none red;
    padding: 3.5rem 1.5rem 3.5rem 5.25rem;
	align-items:start;
	
}

.course-search-module .text-content p {
	margin-bottom:0;
	padding-top:.5rem;
}
.course-search-module .pseudoselect {
	border-width:0 0 2px 0;
	outline:none;
}

.course-search-module .psselections {
	border-width:0 0 2px 0;
}


/*************************** end course search module ***************************/

/*************************** begin contact link module ***************************/

.contact-link-module {
	background-color:#C0F0DC;
	outline:1px none red;
	height:10.25rem;
	width:60.75rem;
	color:#000;
	display:grid;
	align-items:center;
}

.contact-link-module .text-content {
	display:grid;
	grid-template-columns: 2fr 1fr;
	width:100%;
	outline:1px none red;
    padding: 0 1.5rem 0 5.25rem;
	align-items:center;
	
}

.contact-link-module .text-content p {
	margin-bottom:0;
	
}

.contact-link-module .text-content p a {
	display:block;
	width:100%;
	font-size:1.25rem;
	border:2px solid #000;
	border-width:0 0 2px 0;
	background:url(CTA_Contact_Arrow.svg) right center no-repeat;
	background-size: 0.875rem 0.875rem;
	height:2.5rem;
	line-height:2.5rem;
}

/*************************** end contact link module ***************************/

/*************************** begin video module ***************************/
.video-module {
	padding: 7rem 1.5rem 7rem 5.25rem;
}
.video-module.dark {
	background-color:#2C2B29;
	color:#fff;
}

.video-module h1 {
	margin-bottom:3rem;
}

.video-module .video-content {
	position:relative;
	width:98.0625rem;
	height:61.875rem;
	outline:1px none red;
}
.video-module .video-content #play-video {
	position:absolute;
	left:-.75rem;
	bottom:-2rem;
	transform-origin: top left;
	transform:rotate(-90deg);
	outline:1px none red;
	vertical-align:top;
	padding:0;
}
.video-module.reverse .video-content #play-video {
	position:absolute;
	left:91.5rem;
	bottom:-2.5rem;
	transform-origin: top left;
	transform:rotate(-90deg);
	outline:1px none red;
	vertical-align:top;
	padding:0;
	outline:1px none red;
	width:9rem;
}
.video-module .video-box {
	outline:1px none blue;
	z-index:1;
	opacity:.5;
	transition:opacity .5s;
}
.video-module .video-box.selected {
	opacity:1;
	z-index:2;
}
.video-module #video-container1 {
	position:absolute;
	left:0;
	top:0;
	width:90.5rem;
	height:50.625rem;
	
}
.video-module #video-container2 {
	position:absolute;
	left:7.75rem;
	top:11.125rem;
	width:90.5rem;
	height:50.625rem;
}

.video-module.reverse #video-container1 {
	position:absolute;
	left:0;
	top:0;
	top:11.125rem;
	width:90.5rem;
	height:50.625rem;
	
}
.video-module.reverse #video-container2 {
	position:absolute;
	left:7.75rem;
	top:11.125rem;
	top:0;
	width:90.5rem;
	height:50.625rem;
	
}

.boxcanvas {
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	background-color:transparent;
}

.video-control {
    position: absolute;
    left: calc(50% - 3rem);
    top: calc(50% - 3rem);
    width: 6rem;
    height: 6rem;
	transform-origin:center;
    transform: scale(1);
    opacity: 1;
    transition: opacity .5s, transform .5s;
	background:url(Video_Play_Button.svg) center center no-repeat;
	background-size:cover;
	cursor:pointer;
}
.video-control:hover {
	opacity:.41;
	transform: scale(1.1);
}

.video-control.playing {
	opacity:0;
}

.standard_video_carousel {
  object-fit: cover;
  width: 100.5%;
  height: 100.5%;
  position: absolute;
  top: 0;
  left: 0;
  opacity:0;
  transition: opacity 1s;
}
.standard_video_carousel.shown {
	opacity:1;
}


/*************************** end video module ***************************/


/*************************** begin two column text and landscape image object ***************************/

.two-column-text-landscape-image {

}

.two-column-text-landscape-image.dark {
	background-color:#2C2B29;
	color:#fff;
}

.two-column-text-landscape-image .content {
	display:grid;
	grid-template-columns: 60.75rem 1fr;
	width:100%;
	max-width:100%;
	outline:1px none green;
}

.two-column-text-landscape-image .content-left {
	position:relative;
	outline:1px none red;
	color:#000;
}

.two-column-text-landscape-image .content-left a:not(.cta) {
	text-decoration:underline;
}

.two-column-text-landscape-image.dark .content-left {
	color:#fff;
}

.two-column-text-landscape-image .content-left .text-content {
	position:relative;
	width:60.75rem;
	padding:5.25rem;
	
}

.two-column-text-landscape-image.no-top-padding .content-left .text-content {
	padding-top:0;
}

.two-column-text-landscape-image .content-left .text-content .cta {
	position:absolute;
	right:-6rem;
	bottom:7.5rem;
	transform-origin: top left;
	transform:rotate(-90deg);
	/*border:1px solid #000;
	border-width:0 0 2px 0;*/
	padding:0 2rem .5rem 0;
	/*background:url(CTA_Plus.svg) right top .45rem no-repeat;
	background-size: .75rem .75rem;*/
}

.two-column-text-landscape-image .content-left .text-content h1 {
	margin-bottom:7rem;
}

.two-column-text-landscape-image .content-left .text-content p {
	width:95%;
}

.two-column-text-landscape-image .content-left .text-content p:last-of-type {
	
}

.two-column-text-landscape-image .content-right {
	position:relative;
	outline:1px none blue;
	overflow:visible;
}
.two-column-text-landscape-image .carousel-container {
	position:relative;
	width:37.5rem;
	margin-left:1.5rem;
	top:50%;
	transform:translateY(-50%);
}

.two-column-text-landscape-image .carousel-container .carousel {
	width:34rem;
	margin-bottom:0;
}

.two-column-text-landscape-image .carousel-container .carousel .slide-text {
	display:none;
}

.two-column-text-landscape-image .carousel-container .description-text {
	width:45%;
	height: 5rem;
	padding-top:1.5rem;
	outline:1px none red;
	color:#000;
}

.two-column-text-landscape-image .carousel-container .controls {
	position:absolute;
	right:0;
	bottom:4.5rem;
	outline:1px none red;
}

.two-column-text-landscape-image .carousel-container .controls .prevbutton, .two-column-text-landscape-image .carousel-container .controls .nextbutton{
	display:inline-block;
	width:2.75rem;
	height:2.75rem;
	cursor:pointer;
	outline:1px none red;
}
.two-column-text-landscape-image .carousel-container .controls .prevbutton {
	background:url(Carousel_Arrow_Left_Static.svg) center center no-repeat;
	background-size:2rem 2rem;
}
.two-column-text-landscape-image .carousel-container .controls .nextbutton {
	background:url(Carousel_Arrow_Right_Static.svg) center center no-repeat;
	background-size:2rem 2rem;
}

.two-column-text-landscape-image .content-left .text-content .accordion-item-content .cta {
	position:absolute;
	right:-3.75rem;
	bottom:4rem;
	transform-origin: center;
	transform:rotate(-90deg);
	/*border:1px solid #000;
	border-width:0 0 2px 0;*/
	padding:0 2rem .5rem 0;
	/*background:url(CTA_Book_Visit.svg) right top .45rem no-repeat;
	background-size: .75rem .75rem;*/
}

/*.two-column-text-landscape-image .content-left .text-content .accordion-item-content .cta:after {
	content:'';
	position:absolute;
	right:0;
	top:.45rem;
	width:.75rem;
	height:.75rem;
	outline:1px none red;	
	background:url(CTA_Book_Visit.svg) center center no-repeat;
	background-size:cover;
	transform:rotate(90deg);
}
.two-column-text-landscape-image .content-left .text-content .accordion-item-content .cta.plus:after {
	background:url(CTA_Plus.svg) center center no-repeat;
}*/

/*************************** end two column text and landscape image object ***************************/

/*************************** begin accordion control ***************************/

.accordion {
	outline:1px none blue;
	min-height:200px;
	position:relative;
	/*width:60.75rem;
	padding:0 1.5rem 5.25rem 5.25rem;
	*/
}
.accordion-item {
	border:1px solid #000;
	border-width:2px 0 0 0;
	margin-bottom:1.5rem;
}
.accordion-item:last-of-type {
	border:1px solid #000;
	border-width:2px 0 2px 0;
	padding-bottom:1.5rem;
}

.dark .accordion-item {
	border:1px solid #fff;
	border-width:2px 0 0 0;
	margin-bottom:1.5rem;
}
.dark .accordion-item:last-of-type {
	border:1px solid #fff;
	border-width:2px 0 2px 0;
	padding-bottom:1.5rem;
}

.accordion-item-title {
	font-size:2rem;
	background:url(Accordion_Collapse.svg) right top 1.5rem no-repeat;
	background-size:2rem 2rem;
	padding-top:1.35rem;
	cursor:pointer;
}
.accordion-item-title.selected {
	background:url(Accordion_Expanded.svg) right top 1.5rem no-repeat;
	background-size:2rem 2rem;	
}

.dark .accordion-item-title {
	font-size:2rem;
	background:url(Accordion_Collapse_Reverse.svg) right top 1.5rem no-repeat;
	background-size:2rem 2rem;
	padding-top:1.35rem;
	cursor:pointer;
}
.dark .accordion-item-title.selected {
	background:url(Accordion_Expanded_Reverse.svg) right top 1.5rem no-repeat;
	background-size:2rem 2rem;	
}

.accordion-item-content {
	position:relative;
	padding-top:1.875rem;
	padding-right:5.25rem;
	outline:1px none red;
	opacity:0;
	transition: opacity .5s;
}

.accordion-item-content a:not(.cta) {
	text-decoration:underline;
}

.accordion-item-content.selected {
	opacity:1;
	transition: opacity 2s;
}
.accordion-item-content img {
	display:block;
	margin-bottom:1.5rem;
}
.accordion-item-content p {
	margin-bottom:2rem;
}

/*************************** end accordion control ***************************/

/*************************** begin horizontal carousel ***************************/
.horizontal-carousel {
	padding: 7rem 1.5rem 7rem 5.25rem;	
	border:1px none red;
	width:100%;
	max-width:100%;
}

.horizontal-carousel.top-padding-xtra {
	padding-top:14rem;
}

.horizontal-carousel.no-top-padding {
	padding-top:0;
}

.horizontal-carousel h1 {
	margin-bottom:7rem;
}

.horizontal-carousel.dark {
	background-color:#2C2B29;
	color:#fff;
}

.extended-carousel {
	position:relative;
	width:98rem;
	width:115.5rem;
	border:1px none red;
	display:grid;
	grid-auto-flow: column;
	grid-column-gap: 1.5rem;
	overflow:hidden;
}

.extended-carousel .controls {
	position:absolute;
	left:51.25rem;
	bottom:1.5rem;
	width:auto;
	height:auto;
	outline:1px none red;
}

.extended-carousel .controls .prevbutton, .extended-carousel .controls .nextbutton{
	display:inline-block;
	width:2rem;
	height:2rem;
	cursor:pointer;
	opacity:1;
	transition:opacity .5s;
}
.extended-carousel .controls .prevbutton:hover, .extended-carousel .controls .nextbutton:hover{
	opacity:.41;
}
.extended-carousel .controls .prevbutton.disabled {
	opacity:.41;
}

.extended-carousel .controls .prevbutton {
	background:url(Carousel_Arrow_Left_Static.svg) center center no-repeat;
	background-size:cover;
	margin-right:1.75rem;
}
.extended-carousel .controls .nextbutton {
	background:url(Carousel_Arrow_Right_Static.svg) center center no-repeat;
	background-size:cover;
}
.dark .extended-carousel .controls .prevbutton {
	background:url(Carousel_Arrow_Left_Static_Reverse.svg) center center no-repeat;
	background-size:cover;
	margin-right:1.75rem;
}
.dark .extended-carousel .controls .nextbutton {
	background:url(Carousel_Arrow_Right_Static_Reverse.svg) center center no-repeat;
	background-size:cover;
}

.extended-carousel .carousel-item {
	display:inline-block;
	position:relative;
	width:57.5rem;
	outline:1px none blue;
	/*transform: translateX(0);*/
	transition: transform 1s;
	/*margin-right:1.5rem;*/
	overflow:hidden;
	
}

.dark .extended-carousel .carousel-item {
	background-color:#2C2B29;
}

.extended-carousel .carousel-item img {
	display:block;
	width:99%;
	height:auto;
	margin:auto;
}

.extended-carousel .carousel-item .description-text {
	width:30%;
	height: 5rem;
	color:#fff;
	padding-top:1.5rem;
	padding-left:.25rem;					
	outline:1px none red;
	background-color:#f0f0f0;	
	color:#000;
	overflow:hidden;
	opacity:0;
	transition:opacity .5s;
	transition-delay:0s;
}

.dark .extended-carousel .carousel-item .description-text {
	background-color:#2C2B29;
	color:#fff;
}

.extended-carousel .carousel-item.description-shown .description-text {
	opacity:1;
	transition:opacity 1s;
	transition-delay:.25s;
}




/*************************** end horizontal carousel ***************************/

/*************************** begin horizontal ticker ***************************/

.horizontal-ticker {
	background-color:#fff;
	padding: 14rem 0 7rem 0;
	color:#000;
	outline:1px none blue;
}

.horizontal-ticker.dark {
	background-color:#2C2B29;
	color:#fff;
}

/*.horizontal-ticker-content {
	position:relative;
	width:100%;
	padding:0;
	font-size:6rem;
	white-space: nowrap;
	margin-bottom:3rem;
}

.horizontal-ticker-content .ticker-inner {
	position:relative;
	white-space: nowrap;
	overflow: hidden;
	font-size:0;
	width:100%;
	animation: ticker 60s linear infinite;	
}

.horizontal-ticker-content .ticker-inner span {
	position:relative;
	font-size:6rem;
	display: inline-block;	
}

@keyframes ticker {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

.marquee {
	margin: 0 auto;
	white-space: nowrap;
	overflow: hidden;
	position: absolute;
	bottom:-1.4rem;
	font-size:0;
}

.marquee span {
	position:relative;
	font-size:2rem;
	display: inline-block;
	padding-left: 100%;
	animation: marquee 60s linear infinite;
	animation-delay: -30s;
	border:1px none red;
	z-index:2;
	
}

.marquee2 span {
	font-size:2rem;
	animation-delay: 0s;
	border:1px none blue;
	z-index:1;
}*/
.horizontal-ticker-content {
	position:relative;
	width:100%;
	padding:0;
	font-size:6rem;
	/*white-space: nowrap;*/
	margin-bottom:0;
	outline:1px none red;
	min-height:6rem;
}

.horizontal-ticker-content .marquee {
	margin: 0 auto;
	white-space: nowrap;
	overflow: hidden;
	position: absolute;
	bottom:0;
	font-size:0;
}

.horizontal-ticker-content .marquee span {
	position:relative;
	font-size:6rem;
	display: inline-block;
	padding-left: 100%;
	/*animation: marquee 240s linear infinite;
	animation-delay: -120s;*/
	border:1px none red;
	z-index:2;
	
}

.horizontal-ticker-content .marquee2 span {
	font-size:6rem;
	animation-delay: 0s;
	border:1px none blue;
	z-index:1;
}

.horizontal-ticker .pull-quote {
	margin: 6rem 0 0 0;
	width:85.375rem;
	text-align:right;
}

/*.ticker-content {
	position:relative;
	top:20px;
	white-space: nowrap;
	transform-origin:center;
	transform:rotate(90deg);
	line-height:2rem;
	outline:1px none red;
	color:#000;
	padding-top:5rem;
	padding-left:0;
	font-size:1.75rem;
	text-transform:uppercase;
}*/

/*************************** end horizontal ticker ***************************/

/*************************** begin two column offset flexi object ***************************/

.two-column-offset-flexi {
	max-width:100%;
}

.two-column-offset-flexi.dark {
	width:100%;
	background-color:#2C2B29;
}

.two-column-offset-flexi .content {
	width:100%;
	max-width:100%;
	display:grid;
	grid-template-columns: 60.75rem 1fr;
}

.two-column-offset-flexi .content-left {
	position:relative;
	outline:1px none red;
	color:#000;
	display:grid;
	grid-template-columns: 1fr 1fr;
	padding:5.25rem 0 5.25rem 5.25rem;
	background-color:#f0f0f0;
}

.two-column-offset-flexi .content-left h1 {
	grid-column: span 2;
	margin-bottom:7rem;
}

.two-column-offset-flexi .content-left h2 {
	/*margin-bottom:3.375rem;*/
	outline:1px none red;
	height:5.375rem;
	
}

.two-column-offset-flexi .content-left .item-text-content {
	height:19.125rem;
	outline:1px none red;
}

.two-column-offset-flexi .content-left .cta-container {
	height:4.375rem;
}

.two-column-offset-flexi .content-left p {
	margin-bottom:3.375rem;
	padding-right:5.25rem
}

.two-column-offset-flexi .content-left .cta {
	display:inline-block;
	/*border:1px solid #000;
	border-width:0 0 2px 0;*/
	padding:0 2rem .5rem 0;
	/*background:url(CTA_Plus.svg) right top .45rem no-repeat;
	background-size: .75rem .75rem;*/
	margin-bottom:3rem;
	color:#000;
}

.two-column-offset-flexi .content-left .cta:before {
	background-color:#000;
}

.two-column-offset-flexi .content-left .cta:after {
	background:url(CTA_Plus.svg) center center no-repeat;
	background-size:cover;
}

.two-column-offset-flexi .content-left .text-column {
	margin-bottom:7rem;
}

.two-column-offset-flexi .content-right {
	position:relative;
	outline:1px none red;
}

/*************************** end two column offset flexi object ***************************/

/*************************** begin filter subjects module ***************************/

.filter-subjects-module {
	height:84.125rem;
}

.filter-subjects-module .content {
	display:grid;
	grid-template-columns: 72.5rem 1fr;
	
}

.filter-subjects-module .content-left {
	position:relative;
	outline:1px none red;
	color:#000;
}

.filter-subjects-module .content-left .text-content {
	width:60.75rem;
	min-height:53.25rem;
	height:auto;
	padding:5.25rem;
	padding-top:7rem;
	padding-bottom:7rem;
	background-color:#fff;
}

.filter-subjects-module .content-left .cta-container {
	height:4.375rem;
	outline:1px none red;
}

.filter-subjects-module .content-left .text-content h2 {
	margin-bottom:3rem;
}

.filter-subjects-module .form-container {
	outline:1px none red;
	width:31.25rem;
}

.filter-subjects-module .content-right {
	position:relative;
	outline:1px none red;
}

.filter-subjects-module .carousel-container {
	position:relative;
	width:48.25rem;
	top:12rem;
	transform:translateX(-45%);
}

.filter-subjects-module .carousel-container .carousel {
	width:44.75rem;
	margin-bottom:0;
}

.filter-subjects-module .carousel-container .carousel .slide-text {
	display:none;
}

.filter-subjects-module .carousel-container .description-text {
	width:45%;
	height: 5rem;
	padding-top:1.5rem;
	outline:1px none red;
	color:#000;
}

.filter-subjects-module .carousel-container .controls {
	position:absolute;
	right:0;
	bottom:4.25rem;
	outline:1px none red;
}

.filter-subjects-module .carousel-container .controls .prevbutton, .filter-subjects-module  .carousel-container .controls .nextbutton{
	display:inline-block;
	width:2.75rem;
	height:2.75rem;
	cursor:pointer;
}
.filter-subjects-module .carousel-container .controls .prevbutton {
	background:url(Carousel_Arrow_Left_Static.svg) center center no-repeat;
	background-size:2rem 2rem;
}
.filter-subjects-module .carousel-container .controls .nextbutton {
	background:url(Carousel_Arrow_Right_Static.svg) center center no-repeat;
	background-size:2rem 2rem;
}

/*************************** end filter subjects module ***************************/


/*************************** begin three column flexi object ***************************/

.three-column-flexi-object {
	background-color:#fff;
	width:100%;
	max-width:100%;
}

.three-column-flexi-object h1 {
	margin-bottom:7rem;
}

.three-column-flexi-object .grid-item {
	margin-bottom:7rem;
}

.three-column-flexi-object h2 {
	height:7rem;
	outline:1px none red;
}

.three-column-flexi-object .short-description {
	outline:1px none red;
	height:18.5rem;
	height:19.125rem;
	padding-right:5rem;
	/*margin-bottom:3rem;*/
	outline:1px none red;
}

.three-column-flexi-object .content-left .cta-container {
	height:4.375rem;
	outline:1px none red;
}

.three-column-flexi-object p {
	margin-bottom:3rem;
}

.three-column-flexi-object .content {
	display:grid;
	grid-template-columns: 103.35rem 1fr;
}

.three-column-flexi-object .content-left {
	position:relative;
	border:1px none red;
	color:#000;
	display:grid;
	grid-template-columns: 1fr 1fr 1fr;
	padding:5.25rem 0 5.25rem 5.25rem;
}

.three-column-flexi-object .content-left .text-content {
	width:60.75rem;
	padding:5.25rem;
}

.three-column-flexi-object .content-right {
	position:relative;
	outline:1px none blue;
}

/*************************** end three column flexi object ***************************/

/*************************** begin two column text and Portrait image object ***************************/

.two-column-text-portrait-image {

}

.two-column-text-portrait-image.dark {
	background-color:#2C2B29;
	color:#fff;
}

.two-column-text-portrait-image .content {
	display:grid;
	grid-template-columns: 60.75rem 1fr;
	width:100%;
	max-width:100%;
	outline:1px none green;
}

.two-column-text-portrait-image .content-left {
	position:relative;
	outline:1px none red;
	color:#000;
}

.two-column-text-portrait-image .content-left a:not(.cta) {
	text-decoration:underline;
}

.two-column-text-portrait-image.dark .content-left {
	color:#fff;
}

.two-column-text-portrait-image .content-left .text-content {
	position:relative;
	width:60.75rem;
	padding:5.25rem;
	
}

.two-column-text-portrait-image.no-top-padding .content-left .text-content {
	padding-top:0;
}

.two-column-text-portrait-image .content-left .text-content .cta {
	position:absolute;
	right:-6rem;
	bottom:7.5rem;
	transform-origin: top left;
	transform:rotate(-90deg);
	/*border:1px solid #000;
	border-width:0 0 2px 0;*/
	padding:0 2rem .5rem 0;
	/*background:url(CTA_Plus.svg) right top .45rem no-repeat;
	background-size: .75rem .75rem;*/
}

.two-column-text-portrait-image .content-left .text-content h1 {
	margin-bottom:7rem;
}

.two-column-text-portrait-image .content-left .text-content p {
	width:95%;
}

.two-column-text-portrait-image .content-left .text-content p:last-of-type {
	
}

.two-column-text-portrait-image .content-right {
	position:relative;
	outline:1px none blue;
	overflow:visible;
}
.two-column-text-portrait-image .carousel-container {
	position:relative;
	width:37.5rem;
	margin-left:1.5rem;
	top:50%;
	transform:translateY(-50%);
}

.two-column-text-portrait-image .carousel-container .carousel {
	width:34rem;
	margin-bottom:0;
}

.two-column-text-portrait-image .carousel-container .carousel .slide-text {
	display:none;
}

.two-column-text-portrait-image .carousel-container .description-text {
	width:45%;
	height: 5rem;
	padding-top:1.5rem;
	outline:1px none red;
	color:#000;
}

.two-column-text-portrait-image .carousel-container .controls {
	position:absolute;
	right:0;
	bottom:4.5rem;
	outline:1px none red;
}

.two-column-text-portrait-image .carousel-container .controls .prevbutton, .two-column-text-portrait-image .carousel-container .controls .nextbutton{
	display:inline-block;
	width:2.75rem;
	height:2.75rem;
	cursor:pointer;
	outline:1px none red;
}
.two-column-text-portrait-image .carousel-container .controls .prevbutton {
	background:url(Carousel_Arrow_Left_Static.svg) center center no-repeat;
	background-size:2rem 2rem;
}
.two-column-text-portrait-image .carousel-container .controls .nextbutton {
	background:url(Carousel_Arrow_Right_Static.svg) center center no-repeat;
	background-size:2rem 2rem;
}

.two-column-text-portrait-image .content-left .text-content .accordion-item-content .cta {
	position:absolute;
	right:-3.75rem;
	bottom:4rem;
	transform-origin: center;
	transform:rotate(-90deg);
	/*border:1px solid #000;
	border-width:0 0 2px 0;*/
	padding:0 2rem .5rem 0;
	/*background:url(CTA_Book_Visit.svg) right top .45rem no-repeat;
	background-size: .75rem .75rem;*/
}

/*.two-column-text-portrait-image .content-left .text-content .accordion-item-content .cta:after {
	content:'';
	position:absolute;
	right:0;
	top:.45rem;
	width:.75rem;
	height:.75rem;
	outline:1px none red;	
	background:url(CTA_Book_Visit.svg) center center no-repeat;
	background-size:cover;
	transform:rotate(90deg);
}
.two-column-text-portrait-image .content-left .text-content .accordion-item-content .cta.plus:after {
	background:url(CTA_Plus.svg) center center no-repeat;
}*/

/*************************** end two column text and portait image object ***************************/

/*************************** begin two column text and square image object ***************************/

.two-column-text-square-image {
	padding-bottom:7rem;
	background-color:#f0f0f0;
}

.two-column-text-square-image .content {
	display:grid;
	grid-template-columns: 60.75rem 1fr;
	width:100%;
	max-width:100%;
	outline:1px none green;
}

.two-column-text-square-image .content-left {
	position:relative;
	outline:1px none red;
	color:#000;
}

.two-column-text-square-image .content-left a:not(.cta) {
	text-decoration:underline;
}

.two-column-text-square-image .content-left .text-content {
	position:relative;
	width:60.75rem;
	padding:5.25rem;
}

.two-column-text-square-image .content-left .text-content .cta {
	position:absolute;
	right:-6rem;
	bottom:0;
	transform-origin: top left;
	transform:rotate(-90deg);
	/*border:1px solid #000;
	border-width:0 0 2px 0;*/
	padding:0 2rem .5rem 0;
	/*background:url(CTA_Plus.svg) right top .45rem no-repeat;
	background-size: .75rem .75rem;*/
}

/*.two-column-text-square-image .content-left .text-content .cta:after {
	background:url(CTA_Contact_Arrow.svg) center center no-repeat;
	background-size:cover;
}*/

.two-column-text-square-image .content-left .text-content h1 {
	margin-bottom:7rem;
}

.two-column-text-square-image .content-left .text-content p {
	width:100%;
}

.two-column-text-square-image .content-right {
	position:relative;
	outline:1px none blue;
	overflow:visible;
}
.two-column-text-square-image .carousel-container {
	position:relative;
	width:37.5rem;
	margin-left:1.5rem;
	margin-top:-11rem;
	/*transform:translateY(-50%);*/
}

.two-column-text-square-image .carousel-container .carousel {
	width:34rem;
	margin-bottom:0;
}

.two-column-text-square-image .carousel-container .carousel .slide-text {
	display:none;
}

.two-column-text-square-image .carousel-container .description-text {
	width:45%;
	height: 5rem;
	padding-top:1.5rem;
	outline:1px none red;
	color:#000;
}

.two-column-text-square-image .carousel-container .controls {
	position:absolute;
	right:0;
	bottom:4.25rem;
	outline:1px none red;
}

.two-column-text-square-image .carousel-container .controls .prevbutton, .two-column-text-square-image .carousel-container .controls .nextbutton{
	display:inline-block;
	width:2.75rem;
	height:2.75rem;
	cursor:pointer;
}
.two-column-text-square-image .carousel-container .controls .prevbutton {
	background:url(Carousel_Arrow_Left_Static.svg) center center no-repeat;
	background-size:2rem 2rem;
}
.two-column-text-square-image .carousel-container .controls .nextbutton {
	background:url(Carousel_Arrow_Right_Static.svg) center center no-repeat;
	background-size:2rem 2rem;
}

/*************************** end two column text and square image object ***************************/

/*************************** begin application form ***************************/

.application-form-module {
	padding-left:5.25rem;
	padding-bottom:7rem;
	background-color:#f0f0f0;
}

.application-form-module h2 {
	padding-bottom:3rem;
	margin-bottom:3rem;
	border:1px solid #000;
	border-width:0 0 2px 0;
	background:url(LCAD_Logo.svg) right top no-repeat;
	background-size:7.75rem 1.9375rem;
	letter-spacing:2px;
}

.application-form-module .application-form-container {
	width:calc(100% - 11.625rem);
	max-width:1594px;
	padding-right:1.5rem;
}

.application-form-module .introduction {
	display:grid;
	grid-template-columns: 34rem 1fr;
	grid-column-gap: 6rem;
	outline:1px none red;
	margin-bottom:7rem;
}

.application-form-module .introduction h2 {
	padding:0;
	border:none;
	background:none;
	margin-bottom:3rem;
}
.application-form-module .introduction p {
	margin-bottom:3rem;
}

.application-form-module .introduction p:last-of-type {
	margin-bottom:0;
}

.application-form-module .form-group {
	display:grid;
	grid-template-columns: 32.25rem 1fr;
	outline:1px none red;
	margin-bottom:4rem;
}

.application-form-module .form-group-label {
	
}

.application-form-module .field-group {
	display:grid;
	grid-template-columns: 1fr 1fr;	
	grid-column-gap: 1.5rem;
}

.application-form-module .field-group p {
	outline:1px none blue;
	letter-spacing:0;
}

.application-form-module .accordion-item-content {
	padding-top:2.6875rem
}
.application-form-module .psselections {
	background:#f0f0f0;
}

/*************************** end application form ***************************/

/*************************** begin contact forms ***************************/

.contact-forms-module {
	padding-top:7rem;
	padding-left:5.25rem;
	padding-bottom:7rem;
	background-color:#fff;
}

.contact-forms-module h2 {
	padding-bottom:3rem;
	margin-bottom:3rem;
	border:1px solid #000;
	border-width:0 0 2px 0;
	background:url(LCAD_Logo.svg) right top no-repeat;
	background-size:7.75rem 1.9375rem;
	letter-spacing:2px;
}

.contact-forms-module .application-form-container {
	width:calc(100% - 11.625rem);
	max-width:1594px;
	padding-right:1.5rem;
}

.contact-forms-module .introduction {
	display:grid;
	grid-template-columns: 34rem 1fr;
	grid-column-gap: 6rem;
	outline:1px none red;
	margin-bottom:7rem;
}

.contact-forms-module .introduction h2 {
	padding:0;
	border:none;
	background:none;
	margin-bottom:3rem;
}
.contact-forms-module .introduction p {
	margin-bottom:3rem;
}

.contact-forms-module .introduction p:last-of-type {
	margin-bottom:0;
}

.contact-forms-module .form-group {
	display:grid;
	grid-template-columns: 32.25rem 1fr;
	outline:1px none red;
	margin-bottom:4rem;
}

.contact-forms-module .form-group-label {
	
}

.contact-forms-module .field-group {
	display:grid;
	grid-template-columns: 1fr 1fr;	
	grid-column-gap: 1.5rem;
}

..contact-forms-module .field-group p {
	outline:1px none blue;
	letter-spacing:0;
}

.contact-forms-module .accordion-item-content {
	padding-top:2.6875rem
}
.contact-forms-module .psselections {
	background:#ffffff;
}

/*************************** end contact forms ***************************/

/*************************** begin course / subject details module module ***************************/

.course-subject-details-module {
	min-height:84.125rem;
	outline:1px none red;
	margin-bottom:5.25rem;
}

.course-subject-details-module .content {
	display:grid;
	grid-template-columns: 72.5rem 1fr;
	
}

.course-subject-details-module .content-left {
	position:relative;
	outline:1px none red;
	color:#000;
}

.course-subject-details-module .content-left .text-content {
	width:60.75rem;
	min-height:53.25rem;
	height:auto;
	padding:5.25rem;
	padding-top:7rem;
	padding-bottom:7rem;
	background-color:#fff;
}

.course-subject-details-module .content-left .text-content h2 {
	margin-bottom:3rem;
}

.course-subject-details-module .details-container {
	outline:1px none red;
	width:35.75rem;
	border: 2px solid #000;
	border-width:2px 0 0 0;
}

.course-subject-details-module .details-container .details-item {
	display:grid;
	grid-template-columns:48% 1fr;
	/*min-height:1.375rem;*/
	border: 2px solid #000;
	border-width:0 0 2px 0;
	outline:1px none red;
	padding:1.35rem 0 1.35rem 0;
}

.course-subject-details-module .details-container .details-item .details-item-key {
	font-family: "CentraNo2-Medium";
}

.course-subject-details-module .details-container .details-item .details-item-value {
	padding-right:2rem;
}

.course-subject-details-module .details-container .details-item .details-item-value a {
	text-decoration:underline;
	transition:color .5s;
}
.course-subject-details-module .details-container .details-item .details-item-value a:hover {
	color:#737373;
}

.course-subject-details-module .content-right {
	position:relative;
	outline:1px none red;
}

.course-subject-details-module .carousel-container {
	position:relative;
	width:48.25rem;
	top:17rem;
	transform:translateX(-45%);
}

.course-subject-details-module .carousel-container .carousel {
	width:44.75rem;
	margin-bottom:0;
}

.course-subject-details-module .carousel-container .carousel .slide-text {
	display:none;
}

.course-subject-details-module .carousel-container .description-text {
	width:45%;
	height: 5rem;
	padding-top:1.5rem;
	outline:1px none red;
	color:#000;
}

.course-subject-details-module .carousel-container .controls {
	position:absolute;
	right:0;
	bottom:4.25rem;
	outline:1px none red;
}

.course-subject-details-module .carousel-container .controls .prevbutton, .course-subject-details-module  .carousel-container .controls .nextbutton{
	display:inline-block;
	width:2.75rem;
	height:2.75rem;
	cursor:pointer;
}
.course-subject-details-module .carousel-container .controls .prevbutton {
	background:url(Carousel_Arrow_Left_Static.svg) center center no-repeat;
	background-size:2rem 2rem;
}
.course-subject-details-module .carousel-container .controls .nextbutton {
	background:url(Carousel_Arrow_Right_Static.svg) center center no-repeat;
	background-size:2rem 2rem;
}

/*************************** end course / subject details module ***************************/


/*************************** begin course details module ***************************/

.course-details-module {
	background-color:#fff;
	color:#000;
	padding-top:7rem;
	padding-left:5.25rem;
	padding-bottom:7rem;
}
.course-details-module .course-details-container {
	width:calc(100% - 11.625rem);
	max-width:1594px;
	padding-right:1.5rem;	
}

.course-details-module .course-details-container h2 {
	margin-bottom:3.5rem;
}

.course-details-module .accordion-item-content {
	padding-top:0;
}

/*************************** end course details module ***************************/

/*************************** begin fees structure ***************************/
.fees-table {
	
}
.fees-table .line-item {
	display:grid;
	grid-template-columns:38% 20% 1fr;
	border:2px solid #999;
	border-width:0 0 2px 0;
	padding:3rem 0 3rem 0;
	align-items:start;
}
.fees-table .line-item:last-of-type {
	border:none;
	padding-bottom:1.5rem;
}

.fees-table .line-item .row-split {
	padding-top:3.125rem;
}
.fees-table .line-item .row-split.with-border {
	border:1px solid #000;
	border-width:0 0 1px 0;
	padding-bottom:4.875rem;
	padding-top:0;
}
.fees-table .line-item .description {
	padding-left:1.5rem;
}

.fees-structure .line-item {
	/*grid-column: span 2;*/
}

/*************************** end fees structure ***************************/

/*************************** begin fees faq structure ***************************/
.fees-faq-table {
	
}
.fees-faq-table .line-item {
	display:grid;
	grid-template-columns:38% 20% 1fr;
	border:2px solid #999;
	border-width:0 0 2px 0;
	padding:3rem 0 3rem 0;
	align-items:start;
}
.fees-faq-table .line-item:last-of-type {
	border:none;
	padding-bottom:1.5rem;
}

.fees-faq-table .line-item .row-split {
	padding-top:3.125rem;
}
.fees-faq-table .line-item .row-split.with-border {
	border:1px solid #000;
	border-width:0 0 1px 0;
	padding-bottom:4.875rem;
	padding-top:0;
}
.fees-faq-table .line-item .description {
	padding-left:1.5rem;
}

.fees-structure .line-item {
	/*grid-column: span 2;*/
}

/*************************** end fees faq structure ***************************/

/*************************** begin timetable module ***************************/

.timetable-module {
	position:relative;
	outline:1px none green;
	height:auto;
	/*display:grid;
	grid-template-columns:1fr;*/
	/*max-width:1256px;*/
	overflow:hidden;
	background-color:#f0f0f0;
	margin-top:3rem;
}

.timetable-module .menu {
	display:grid;
	/*grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr;
	grid-auto-flow: column;*/
	grid-template-columns:1fr 1fr 1fr;	
	grid-column-gap: 0;
	margin-bottom:3rem;
}

.timetable-module .menu-item {
	position:relative;
	outline:1px none red;
	text-align:left;	
	/*border:2px solid #fff;
	border-width:0 0 1px 0;*/
	cursor:pointer;
	background-color:#2C2B29;
	color:#fff;
	opacity:1;
	transition: background-color .5s, color .5s, opacity .5s;
	padding:1.5rem 0 1.5rem 0;
	align-self:end;
	text-align:center;
}
/*.timetable-module .menu-item:after {
	content:'';
	position:absolute;
	left:0;
	bottom:0;
	height:1px;
	width:100%;
	background-color:#fff;
}*/
.timetable-module .menu-item.selected {
	opacity:1;
	background-color:#f0f0f0;
	color:#000;
}
/*.timetable-module .menu-item.selected:after {
	height:3px;
}*/
.timetable-module .menu-item:hover {
	background-color:#f0f0f0;
	color:#000;
}
/*.timetable-module .menu-item:hover:after {
	height:3px;
}*/
.timetable-module .content-container {
	position:relative;
	color:#000;
	outline:1px none blue;
}
.timetable-module .content-box {
	position:relative;
	display:grid;
	grid-template-rows: 1fr;
	left:0;
	top:0;
	width:100%;
	height:0;
	opacity:0;
	transition:opacity 0s;
	outline:1px none blue;
	color:#000;
	background-color:#f0f0f0;
	padding:0 1.5rem 0 1.5rem;
}
.timetable-module .content-box.selected {
	opacity:1;
	height:auto;
	transition:opacity 1s;
}

.timetable-module .content-box p {
	margin-bottom:1.5rem;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	width:100%;
	margin-bottom:1.5rem;
}

tr {
	background-color:#f0f0f0;
	transition: background-color 1.5s;
}
tbody tr:nth-of-type(even) {
	background-color:#fff;
}
td {
	border:1px solid #999;
	overflow:hidden;
}
th {
	padding:1.5rem;
	font-family: "CentraNo2-Medium";
}
td {
	background-color:transparent;
	padding:1.5rem;
	color:#000;
	border:1px solid #999;
	transition: color .2s, background-color .2s;
	overflow:visible;
}

td .message {
	display:grid;
	grid-template-columns:41.875rem 1fr;
}

tr.selected {
	transition: background-color 1.5s;
}

tr.selected td {
	color:#fff;
	/*cursor:pointer;*/
}
tr.selected td:last-of-type {
	background-image:url(IS_Arrow_Down.svg);
	background-position: right .5rem top .75rem;
	background-repeat: no-repeat;
	background-size:1.4375rem 1.625rem;
}

td .short-details {
	display:grid;
	grid-template-columns:60% 1fr;
	position:relative;
	border:none;
	max-height:0;
	overflow:hidden;
	transition: max-height 1s, margin-top 1s, margin-bottom 1s, opacity .5s;
	opacity:0;
	outline:1px none red;
	z-index:100;
}

td .short-details .description-text {
	position:relative;
	padding-right:2rem;
}

td .short-details .description-text .cta {
	position:absolute;
	left:0;
	bottom:0;
}

td .short-details .display-image {
	display:flex;
	justify-content:flex-end;
}

td .short-details .display-image img {
	width:47%;
	margin-top:.5rem;
}

tr.selected td .short-details {
	max-height:30rem;
	margin:2rem 0 1rem 0;
	transition: max-height 1s, margin-top 1s, margin-bottom 1s, opacity 2.5s;
	opacity:1;
}

td .short-details p {

}

td .short-details a.button {
	display:inline-block;
	text-align:center;
	border:1px solid #ededed;
	color:#ededed;
	background:transparent;
	height:2.375rem;
	line-height:2.2rem;
	width:8rem;
	transition: background-color .25s, color .25s;
}
td .short-details a.button:hover {
	color:#272727;
	background:#ededed;	
}
th .date-sort, th .location-sort, th .status-sort, th .type-sort {
	padding-left:1.4rem;
	background:url(IS_Dropdown_Filter_Slim_Arrow_Down.svg) left center no-repeat;
	background-size:0.875rem 0.9375rem;
	
}

td a.actionlink:hover {
	color:#8D8D8D;
	text-decoration:underline;
}

td .toggle-expand {
	display:inline-block;
	width:1.125rem;
	height:0.6875rem;
	background:url(SB_Subscribe_Dropdown_Static.svg) center center no-repeat;
	transform:rotate(0);
	transition:transform .5s;
}
tr.selected td .toggle-expand {
	transform:rotate(-180deg);
}

/*************************** end timetable module ***************************/

/*************************** begin standard carousel ***************************/



/*************************** end standard carousel ***************************/


/*************************** begin standard map module ***************************/


/*************************** end standard map module ***************************/


/*************************** begin table module ***************************/

table {
	border-collapse: collapse;
	border-spacing: 0;
	width:100%;
}

/*************************** end table module ***************************/

/*************************** begin contact form module ***************************/


/*************************** end contact form module ***************************/


/*************************** end content objects ***************************/

/*************************** begin form field styles ***************************/

/* begin standard pseudoselect control */
.pseudoselect-container {
	margin-bottom:3rem;
}
.dob-container {
	display:grid;
	grid-template-columns:1fr 1fr 1fr;
	grid-column-gap:1rem;
}
.pseudoselect {
	position:relative;
	display:inline-block;
	width:100%;
	padding: 0;
	height:2.9rem;
	line-height:2.9rem;
	font-size:1rem;
	color:#000;
	border: 1px solid #000;
	border-width:0 0 1px 0;
	background:transparent;
	outline:none;
	cursor:default;
	text-align:left;
}
.pseudoselect:before {
	content:'';
	position:absolute;
	right:0;
	top:1.25rem;
	width:0.875rem;
	height:.5rem;
	outline:1px none red;
	background: transparent url(Form_Dropdown_Down.svg) center center no-repeat;
	background-size: cover;
	transform:rotate(0);
	transition:transform .2s;
}
.pseudoselect.open:before {
	transform:rotate(180deg);
}

.pseudoselect.errorstate {
	border-color:#ff0000;
	color:#ff0000;	
}
	
.pseudoselect.errorstate:before {

	background: transparent url(Form_Dropdown_Down_Error.svg) center center no-repeat;
	background-size: cover;
}
.pseudoselect.no-border {
	border:none;
}
.psselections {
	position:absolute;
	max-height:300px;
	left:-0.125%;
	/*right:0;*/
	width:100.25%;
	top:2.9rem;
	margin: 0;
	padding:0;
	font-size:1rem;
	background:#fff;
	color:#000;
	border:1px solid #000;
	border-width:0 0 1px 0;
	overflow:auto;
	display:none;
	z-index:10000;
	outline:1px none red;
}
.psselections:hover label {
	color:#5C5C5C !important;
}
.psselections label {
	display:block;
	font-size:1rem;
	
	text-align:left;
	/*border: 1px solid #000;
	border-width: 0 0 1px 0;*/
	color:#000;
	height:2.5rem;
	line-height:2.5rem;
	vertical-align:middle;
	margin:0;
}
.psselections label:hover {
	color:#000;
}

.psselections input[type=radio].single-check {
	width:auto;
	margin:0;
	padding:0;
	opacity:0;
}

.psselections input[type=radio].single-check + span {
	font-size:1rem;
	color:#7c7c7c;
	text-transform:none;
}
.psselections:hover input[type=radio].single-check + span {
	color:#7c7c7c;
	
}
.psselections label:hover input[type=radio].single-check + span {
	color:#000;
}
.psselections input[type=radio].single-check:checked + span {
	color:#000 !important;
}

.selectioncount {
	font-size:.9rem;
}

/* end standard pseudoselect control */

/* begin filter pseudoselect control */

.pseudoselect.filter {
	position:relative;
	display:inline-block;
	width:100%;
	padding: 0;
	min-height:3.2rem;
	line-height:3.2rem;
	height:auto;
	font-size:1.25rem;
	color:#000;
	border: 1px solid #000;
	border-width:0 0 2px 0;
	background:transparent;
	outline:none;
	cursor:default;
	text-align:left;
	outline:1px none blue;
}
.pseudoselect.filter:before {
	content:'';
	position:absolute;
	right:0;
	top:1.35rem;
	width:0.875rem;
	height:.5rem;
	outline:1px none red;
	background: transparent url(Form_Dropdown_Down.svg) center center no-repeat;
	background-size: cover;
	transform:rotate(0);
	transition:transform .2s;
}
.pseudoselect.filter.open:before {
	transform:rotate(180deg);
}

.pseudoselect.filter.errorstate {
	border-color:#ff0000;
	color:#ff0000;	
}
	
.pseudoselect.filter.errorstate:before {

	background: transparent url(Form_Dropdown_Down_Error.svg) center center no-repeat;
	background-size: cover;
}
.pseudoselect.filter.no-border {
	border:none;
}
.pseudoselect.filter .psselections {
	position:relative;
	max-height:300px;
	left:-0.125%;
	/*right:0;*/
	width:100.25%;
	top:0;
	margin: 0;
	padding:0;
	font-size:1.25rem;
	background:#fff;
	color:#000;
	border:1px solid #000;
	border-width:0 0 2px 0;
	overflow:auto;
	display:none;
	z-index:10000;
	outline:1px none red;
	padding-bottom:.5rem;
}
.pseudoselect.filter .psselections:hover label {
	color:#5C5C5C !important;
}
.pseudoselect.filter .psselections label {
	display:block;
	font-size:1.25rem;
	
	text-align:left;
	/*border: 1px solid #000;
	border-width: 0 0 1px 0;*/
	color:#000;
	height:2.5rem;
	line-height:2.5rem;
	vertical-align:middle;
	margin:0;
}
.pseudoselect.filter .psselections label:hover {
	color:#000;
}

.pseudoselect.filter .psselections input[type=radio].single-check {
	width:auto;
	margin:0;
	padding:0;
	opacity:0;
}

.pseudoselect.filter .psselections input[type=radio].single-check + span {
	font-size:1.25rem;
	color:#7c7c7c;
	text-transform:none;
}
.pseudoselect.filter .psselections:hover input[type=radio].single-check + span {
	color:#7c7c7c;
	
}
.pseudoselect.filter .psselections label:hover input[type=radio].single-check + span {
	color:#000;
}
.pseudoselect.filter .psselections input[type=radio].single-check:checked + span {
	color:#000 !important;
}

.pseudoselect.filter .selectioncount {
	font-size:.9rem;
}

/* end filter pseudoselect control */

input[type=radio].single-check {
	width:auto;
	margin:0;
	padding:0;
	opacity:0;
}

input[type=radio].single-check + span {
	font-size:1rem;
	color:#7c7c7c;
	
}
.psselections label:hover input[type=radio].single-check + span {
	color:#2C2B29;
}
input[type=radio].single-check:checked + span {
	color:#2C2B29;
}


input, textarea, select {
	-webkit-appearance: none;
	border-radius:0;
}

label {
	font-size:1rem;
	font-family: "CentraNo2-Book";
}
label.errorstate {
	color:#ff0000;
}
/*label.select-label {
	display:block;
	margin-bottom:0;
}*/

input[type=text],input[type=email],input[type=password],input[type=number],input[type=tel],input[type=submit],textarea,select {
	font-family: "CentraNo2-Book";
	width:100%;
	padding:.75rem 0 .75rem 0;
	color:#000;
	border:1px solid #000;
	border-width:0 0 1px 0;
	background:transparent;
	outline:none;
	font-size:1rem;
	outline:1px none red;
}
input[type=text].errorstate,input[type=email].errorstate,input[type=password].errorstate,input[type=number].errorstate,input[type=tel].errorstate,input[type=submit].errorstate,textarea.errorstate,select.errorstate {
	color:#FF0000;
	border-color:#FF0000;
}
#step1.errorstate {
	color:#FF0000;
	border-color:#FF0000;	
}
#step1.errorstate:before {
	background-color:#ff0000;
}
#step1.errorstate:after {
	display:none;
}
textarea {
	font-family: "CentraNo2-Book";
	display: block;
	color:#000;
	border:1px solid #000;
	border-width:0 0 1px 0;
	font-size:1rem;
	height:2.9rem;
	padding:.75rem 0 .75rem 0;
}

.dark input {
	color:#fff;
	border-color:#fff;
}

input[type=submit] {
	font-family: "CentraNo2-Book";
	position:relative;
	width:auto;
	min-width:8rem;
	background:transparent;
	color:#fff;
	padding:.75rem;
	font-size:1.25rem;
	text-transform:uppercase;
}
input[type=submit]:hover {
	background:transparent;
	color:#fff;
}
input[type=submit].errorstate {
	width:auto;
	background:transparent;
	color:#ff0000;
	
	border:1px solid #FF0000;
	border-width: 0 0 1px 0;
	padding:.75rem;
	font-size:1.25rem
}
input[type=submit].errorstate:hover {
	color:#ff0000;
	background:transparent;
}

input[type=submit].disabled {
	opacity:0.5;
}

input[type=submit]:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:10px;
	background:red;
	z-index:100;
}

button {
	position:relative;
	font-family: "CentraNo2-Book";
	font-size:1.25rem;
	letter-spacing:1px;
	line-height:1.25;
	/*border:1px solid #000;
	border-width:0 0 2px 0;*/
	padding:0 2rem .5rem 0;
	/*background:url(CTA_Plus.svg) right top .45rem no-repeat;
	background-size: .75rem .75rem;*/
	color:#000;
	opacity:1;
	transition:opacity .5s;
	cursor:pointer;
	border:none;
	background-color:transparent;
}
button.cta:after {
	background:url(CTA_Contact_Arrow.svg) center center no-repeat;
	background-size:cover;
	outline:1px none red;	
}
button:hover {
	opacity:.41;
}
button.errorstate {
	border-color:#ff0000;
	color:#ff0000;
}
button.errorstate:hover {
	border-color:#ff0000;
	color:#ff0000;
}

button.disabled {
	opacity:0.5;
}

/*button:before {
	content:'';
	position:absolute;
	left:-1px;
	top:-1px;
	width:0;
	height:0;
	background:green;
	z-index:100;
	transition: width 4s;
}*/

/*button[type=submit] {
	position:relative;
	width:auto;
	background:#fff;
	color:#000;
	border:1px solid #000;
	/*border-width: 0 0 1px 0;*//*
	padding:.75rem;
	font-size:1.25rem;
	min-width:8rem;
}*/

button[type=submit] {
	font-family: "CentraNo2-Book";
	font-size:1.25rem;
	letter-spacing:1px;
	line-height:1.25;
	border:1px solid #000;
	border-width:0 0 2px 0;
	padding:0 2rem .5rem 0;
	background:url(CTA_Plus.svg) right top .45rem no-repeat;
	background-size: .75rem .75rem;
	color:#000;
	opacity:1;
	transition:opacity .5s;
	cursor:pointer;
}

button[type=submit]:hover {
	opacity:.41;
}
button[type=submit].errorstate {
	/*border-color:#ff0000;*/
	color:#ff0000;
}

button[type=submit].disabled {
	opacity:0.5;
}

/*button[type=submit]:before {
	content:'';
	position:absolute;
	left:-1px;
	top:-1px;
	width:0;
	height:0;
	background:green;
	z-index:100;
	transition: width 4s;
}
.processing button[type=submit] {
	border-top:none;
}*/
.processing > * {
	opacity:.41;
}
.processing button[type=submit]:before {
	width:calc(100% + 1px);
	height:3px;
}
/* begin custom checkbox */

label.checkboxcontainer {
	display:flex;
	align-items:center;
	font-size:1rem;
	color:#000;
	vertical-align:baseline;
	
}
label.checkboxcontainer a {
	text-decoration:underline;
}
label.checkboxcontainer:hover {
	color:#000;
}
label.checkboxcontainer input[type=checkbox] {
	width:0px;
	height:0px;
	position:absolute;
	left:-9999px;
}
label.checkboxcontainer input[type=checkbox] + span {
	display:inline-block;
	vertical-align:baseline;
	width:1.1875rem;
	height:1.1875rem;
	padding-bottom:5px;
	margin-right:0.625rem;
	background:transparent url('Form_Checkbox.svg') center center no-repeat;
	background-size:100%;
	outline:1px none red;
}

label.checkboxcontainer input[type=checkbox]:checked  + span {
	background:transparent url('Form_Checkbox_Complete.svg') center center no-repeat;
	background-size:100%;
}
label.checkboxcontainer input[type=checkbox]:checked  + span.labeltext {
	color:#000;
}

.errorstate label.checkboxcontainer {
	color:#ff0000;
}

.errorstate label.checkboxcontainer input[type=checkbox] + span {
	/*border:1px solid #ff0000;
	background:transparent;
	border-radius:50%;*/
	background:transparent url('Form_Checkbox_Error.svg') center center no-repeat;
	
}
.errorstate label.checkboxcontainer input[type=checkbox]  + span.labeltext {
	color:#ff0000;
}

label.checkboxcontainer.errorstate {
	color:#ff0000;
}

label.checkboxcontainer.errorstate input[type=checkbox] + span {
	/*border:1px solid #ff0000;
	background:transparent;
	border-radius:50%;*/
	background:transparent url('Form_Checkbox_Error.svg') center center no-repeat;
}
label.checkboxcontainer.errorstate input[type=checkbox]  + span.labeltext {
	color:#ff0000;
}

/* end custom checkbox */

/* begin custom radio buttons */

label.radiobuttoncontainer {
	display:flex;
	align-items:center;
	font-size:1.25rem;
	color:#fff;
	vertical-align:baseline;
	
}
label.radiobuttoncontainer a {
	text-decoration:underline;
}
label.radiobuttoncontainer:hover {
	color:#fff;
}
label.radiobuttoncontainer input[type=radio] {
	width:0px;
	height:0px;
	position:absolute;
	left:-9999px;
}
label.radiobuttoncontainer input[type=radio] + span {
	display:inline-block;
	vertical-align:baseline;
	width:1.1875rem;
	height:1.1875rem;
	padding-bottom:5px;
	margin-right:0.625rem;
	background:transparent url('SB_Subscribe_Circle_Static.svg') center center no-repeat;
	background-size:100%;
	outline:1px none red;
}

label.radiobuttoncontainer input[type=radio]:checked  + span {
	background:transparent url('SB_Subscribe_Circle_Complete.svg') center center no-repeat;
	background-size:100%;
}
label.radiobuttoncontainer input[type=radio]:checked  + span.labeltext {
	color:#000;
}

.errorstate label.radiobuttoncontainer {
	color:#ff0000;
}

.errorstate label.radiobuttoncontainer input[type=radio] + span {
	border:1px solid #ff0000;
	background:transparent;
	border-radius:50%;
	
}
.errorstate label.radiobuttoncontainer input[type=radio]  + span.labeltext {
	color:#ff0000;
}

/* end custom checkbox */

/* begin custom file input control */

.custom-file-upload {
	display:inline-block;
	font-size:0;
	width:100%;
	height:auto;
	color:#000;
	border:1px solid #000;
	background:transparent;
	padding:0;
	overflow:hidden;
}

.custom-file-upload .filename-display {
	display:inline-block;
	width:64%;
	font-size:1rem;
	padding:.75rem;
}
.custom-file-upload .btn {
	position:relative;
	display:inline-block;
	width:36%;	
	background:transparent;
	color:#000;
	
	padding:.75rem;
	font-size:1rem;
	text-align:center;
	border:1px solid #000;
	border-width:0 0 0 1px;
	
}
.custom-file-upload .btn:hover {
	background:#000;
	color:#ededed;
}

.custom-file-upload.errorstate {
	color:#CE1E1E;
	border:1px solid #CE1E1E;
}

.custom-file-upload.errorstate .btn {
	border-color:#CE1E1E;
	color:#CE1E1E;
}
.custom-file-upload.errorstate .btn:hover {
	background:#CE1E1E;
	color:#ededed;
}
.custom-file-upload .btn input[type=file] {
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	opacity:0;
	
}


/* end custom file input control */

::-webkit-input-placeholder {
  
   color:#000;
}
:hover::-webkit-input-placeholder {
   color:#000;
}
:focus::-webkit-input-placeholder {
   color:#000;
}


:-moz-placeholder { /* Firefox 18- */
   color:#fff;
   opacity:1;
}
:hover:-moz-placeholder { /* Firefox 18- */
   color:#fff;
   opacity:1;
}
:focus:-moz-placeholder { /* Firefox 18- */
  color:#fff;
   opacity:1;
}

::-moz-placeholder {  /* Firefox 19+ */
	color:#fff;
   opacity:1;
}
:hover::-moz-placeholder {  /* Firefox 19+ */
   color:#fff;
      opacity:1;
}
:focus::-moz-placeholder {  /* Firefox 19+ */
   color:#000;
      opacity:1;
}

:-ms-input-placeholder {  
   color:#fff;
}
:hover:-ms-input-placeholder {  
   color:#fff;
}
:focus:-ms-input-placeholder {  
   color:#fff;
}

.errorstate::-webkit-input-placeholder {
   color:#FF0000;
}

.errorstate:-moz-placeholder { /* Firefox 18- */
  color:#FF0000;
     opacity:1;
}

.errorstate::-moz-placeholder {  /* Firefox 19+ */
   color:#FF0000;
      opacity:1;
}

.errorstate:-ms-input-placeholder {  
   color:#FF0000;
}


::placeholder {
  
   color:#000;
      opacity:1;
}
:hover::placeholder{
   color:#000;
   opacity:1;
}
:focus::placeholder {
   color:#000;
   opacity:1;
}

.errorstate::placeholder {  
   color:#FF0000;
      opacity:1;
}

/** begin form field labels extension **/

.field-separator {
	position:relative;
}
.field-separator:before {
	content:'';
	position:absolute;
	right:0;
	top:60%;
	width:auto;
	height:50%;
	background:transparent;
	opacity:0;
	transition:opacity 1s;
	padding:2px 5px 2px 5px;
	border:1px solid #ccc;
	border-width: 0;
	text-align:right;
	z-index:2;
	vertical-align:middle;
	transform:translateY(-50%);
	font-size:.75rem;
	visibility:hidden;
	color:#fff;
}

.field-separator.label-shown:before {
	content:attr(data-before);
	opacity:.41;
	visibility:visible;
}

.field-separator.field-error:before {
	color:#FF0000;
}

.field-separator.textarea-container.label-shown:before {
	content:attr(data-before);
	opacity:.41;
	visibility:visible;
	top:calc(100% - 50%);
	vertical-align:middle;
}

.field-separator.far-right.form.label-shown:before {
	content:attr(data-before);
	opacity:.41;
	visibility:visible;
	right:25%;
	top:60%;
}
/** end form field labels extension **/

/*************************** end form field styles ***************************/


.slideimage {
	width:100%;
	height:auto;
}

.dummyspacer {
	width:100%;
	height:auto;
}

.logoblocker {
	position:absolute;
	width:100%;
	height:100%;
	background:transparent;
	left:0;
	bottom:0;
}
/*** Begin Video Player Module ***/

.videocontainer {
	padding-bottom:0rem;
	outline:none;
	background:transparent;
}
.videocontainer * {
	outline:none;
}
.video-wrapper {
	position:relative;
	left:-1px;
	width:calc(100% + 1px);
	margin-bottom:0;
	background:transparent;
}

.video-container {
    position: relative;
	width:100%;
    padding-bottom: 56.25%;
    height: 0; overflow: hidden;
	background:transparent;
	outline:1px none red;
}

.video-container iframe,
.video-container object,
.video-container video,
.video-container img,
.video-container embed {
    position: absolute;
    top: 0;
    left: 0;
	width:100.2%;
	height:100.2%;
	/*background:transparent;*/
	outline:none;
	border:none;
}

.video-container iframe {
	opacity:0;
	transition:opacity 1s;
}

.video-container img {
	opacity:1;
	transition:opacity 1s;
}

.video-container.playing iframe {
	opacity:1;
}

.video-container.playing img {
	opacity:0;
}

/*** End Video Player Module ***/



/*************************** end component styles ***************************/

/*************************** begin utility styles ***************************/

.fullscreen-overlay {
	position:fixed;
	width:100%;
	height:100%;
	left:0px;
	top:0px;
	background:#000;
	background:rgba(0,0,0,.8);
	z-index:10001;
	display:none;
}

.cookies-popup {
	position:fixed;
	left:5.25rem;
	bottom:5.25rem;
	width:29.375rem;
	height:20.375rem;
	background-color:#2C2B29;
	z-index:10000;
	padding:5rem 3rem 3rem 3rem;
	display:none;
}

.cookies-popup p {
	margin-bottom:1.5rem;
	font-size:1.15rem;
	width:95%;
}

.cookies-popup .close-box {
	position:absolute;
	right:1.5rem;
	top:1.5rem;
	width:1.75rem;
	height:1.75rem;
	background:url(Cookies_X.svg) center center no-repeat;
	background-size:cover;
}

.cookies-popup .cta {
	font-size:1.15rem;
}

.subscribe-panel {
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:18.5rem;
	background-color:#2C2B29;
	color:#fff;
	z-index:100;
	padding:3.625rem 5.25rem 3.625rem 5.25rem;
	padding:3.25rem 5.25rem 3.25rem 5.25rem;
	transform:translateY(-100%);
	transition:transform 1s;
}
.subscribe-panel.shown {
	transform:translateY(0);
}

.subscribe-panel .form-container {
	position:relative;
	width:94.625rem;
	width:99.75rem;
	width:100.45rem;
	height:auto;
	min-height:3rem;
	outline:1px none red;
	display:grid;
	grid-template-columns:1fr 1fr 1fr;
	grid-column-gap:3.5rem;
	align-items:end;
}

.subscribe-panel .form-container .close-box {
	position:absolute;
	right:0;
	top:0;
	width:2.5rem;
	height:2.5rem;
	background:url(Cookies_X.svg) center center no-repeat;
	background-size:cover;
}
.subscribe-panel .cta {
	color:#fff;
}
.subscribe-panel .cta.errorstate {
	color:#ff0000;
}
.subscribe-panel .cta:before {
	background-color:#fff;
}
.subscribe-panel .cta.errorstate:before {
	background-color:#ff0000;
}
.subscribe-panel .cta:after {
	background:url(CTA_Contact_Arrow_Reverse.svg) center center no-repeat;
}
.subscribe-panel .cta.errorstate:after {
	background:none;
}

/* Begin clearfix hack */
/* For modern browsers */
.cf:before,
.cf:after {
	content:"";
	display:table;
}
.cf:after {
	clear:both;
}
/* For IE 6/7 (trigger hasLayout) */
.cf {
	zoom:1;
}
/* End clearfix hack */


@media only screen 
and (max-width : 1140px) {

	html, body {
		font-size:55%;
	}

}

@media only screen 
and (min-width : 1921px) {

	html, body {
		font-size:100%;
	}

}

/*************************** end utility styles ***************************/

/*************************** begin ie specific styles (bug fixes) ***************************/

/*@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {*/
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) { 

	.searchcontainer input {
		padding-bottom: 3px !important;
		padding-top: 3px !important;
		padding-left: 3px !important;
		padding-right: 3px !important;
	}

}

/*************************** end specific styles ***************************/

/* End Styles */