/*          YORK SCHOOL          */
/*       (SCHOOL TEMPLATE H)     */
/* ========== Main CSS ========= */

/************* FONTS *************/
/*
	font-family: 'Jost', sans-serif;
	font-family: 'Bodoni Moda', serif;
	font-family: 'Source Sans Pro', sans-serif;
*/

/*********** VARIABLES ***********/

:root {
	--primary-color:#A10A19; 
	--secondary-color: #83000D; 
	--default-text-color: #595959;
	--alternate-text-color: #333333;
	--default-font-size: 18px;
}

/*********************************/

body,
html {
	height: 100%;
}
 
body {
	background: #fff;
	box-sizing: border-box;
	color: var(--default-text-color);
	display: flex;
	flex-direction: column;
	font-family: 'Roboto', sans-serif;
	font-size: var(--default-font-size);
	font-weight: 400;
	margin: 0;
	padding: 100px 0 0 0;
}

a {
	color: var(--primary-color);
	text-decoration: none;
}
.red-text {
	color: #a10a19
}

.dark-background a {
	color: #fff;
	text-decoration: underline;
}

a:hover {
	color: var(--secondary-color);
	text-decoration: underline;
}

h1, h2, h3, h4, h5, h6 {
	color: var(--primary-color);
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 500;
	line-height: 130%;
	margin: 0 0 15px;
	padding: 0;
}

h1 {
	font-size: 38px;
	letter-spacing: 9.88px;
	text-transform: uppercase;
}

h1.alt {
	font-family: 'Bodoni Moda', serif;
	font-size: 110px;
	font-style: italic;
	letter-spacing: 2.2px;
}

h2 {
	font-size: 36px;
	letter-spacing: 1px;
	text-transform: uppercase;
}

h2.alt {
	font-family: 'Roboto', serif;
	font-size: 30px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
}

h3 {
	font-size: 28px;
	letter-spacing: 3px;
	text-transform: uppercase;
}

h4 {
	font-size: 16px;
	letter-spacing: 2px;
	text-transform: uppercase;
}

h5 {
	font-family: 'Source Sans Pro', sans-serif;
	font-size: 20px;
	font-weight: 700;
}

h6 {
	font-family: 'Source Sans Pro', sans-serif;
	font-size: var(--default-font-size);
	font-weight: 700;
}

p {
	margin: 0 0 20px 0;
	padding: 0;
}

p,
.ss-content-block li {
	line-height: 175%;
}

p:last-child {
	margin-bottom: 0;
}

iframe {
	max-width: 100%;
}

cite {
	border-left: 3px solid #CCC;
	display: block;
	font-size: var(--default-font-size);
	font-style: normal;
	line-height: 130%;
	margin-top: 15px;
	padding: 5px 0 0 10px;	
}

.hr {
	margin-bottom: 20px;
}

@media (max-width: 1024px) {
	body {
		font-size: 16px;
	}

	h1 {
		font-size: 30px;
		letter-spacing: 4px;
	}
	
	h1.alt {
		font-size: 70px;
		letter-spacing: 1px;
	}
	
	h2 {
		font-size: 24px;
		letter-spacing: 1px;
	}
	
	h2.alt {
		font-size: 30px;
		letter-spacing: 0.6px;
	}
	
	h3 {
		font-size: var(--default-font-size);
		letter-spacing: 1px;
	}
	
	h4 {
		font-size: 15px;
		letter-spacing: 1px;
		text-transform: uppercase;
	}
	
	h5 {
		font-size: var(--default-font-size);
	}
	
	h6 {
		font-size: 16px;
	}
	
	p {
		line-height: 150%;
	}
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Global Content Box Overrides ----------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */



/* ---------------------------------------------------------------------------------------------------------- */
/* Header --------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.header {
	background: #fff;
	box-shadow: 0 10px 20px rgba(0,0,0,0.16);
	height: 100px;	
	left: 0;
	overflow-x: hidden;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 100;
}

@media (max-width: 1500px) {
	.header {
		overflow-y: hidden;
	}
}

/* -------------------------------------- */
/* Header Logo -------------------------- */
/* -------------------------------------- */
.header .logo {
	height: auto;
	max-height: 70px;
	max-width: 120px;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: opacity 0.2s linear;
	width: calc(100dvh - 200px);
}

body.show-nav .header .logo {
	opacity: 0.3;
}

.header .logo img,
.header .logo svg {
	display: block;
	height: 100%;
	max-height: 100%;
	position: relative;
	transition: transform 0.2s ease;
	width: auto;
}

.header .logo:hover img {
	transform: scale(1.05);
}

/* -------------------------------------- */
/* Header Quick Links / Search ---------- */
/* -------------------------------------- */
.header-quick-links {
	left: 80px;
	max-width: calc(50% - 100px);
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: opacity 0.2s linear, visibility 0.2s linear;
}

body.show-nav .header > .header-quick-links {
	opacity: 0;
	visibility: hidden;
}

.header-quick-links ul {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: center;
}

.header-quick-links ul li {
	display: inline-block;
	position: relative;
	padding: 0 20px;
}

.header-quick-links ul li:first-child {
	padding-left: 0;
}

.header-quick-links ul li:after {
	background: #CCC;
	content: '';
	height: 20px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
}

.header-quick-links ul li:last-child:after {
	display: none;
}

.header-quick-links ul li a {
	border: 1px solid transparent;
	display: block;
	font-family: 'Jost', sans-serif;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 1.68px;
	padding-bottom: 2px;
	text-decoration: none;
	text-transform: uppercase;
	transition: border 0.2s ease;
}

.header-quick-links ul li a:hover {
	border-bottom: 1px solid var(--primary-color);
}

.header-quick-links ul ul {
	display: none;	
}

.header .header-search-form {
	border-right: 1px solid #CCC;
	padding-right: 10px;
	position: absolute;
	right: 150px;
	top: 50%;
	min-width: 40px;
	transform: translateY(-50%);
}

.header .header-search-form .header-search-text-input {
	background: transparent;
	border: 1px solid transparent;
	border-radius: 20px;
	max-width: 0;
	height: 40px;
	line-height: 40px;
	padding: 5px 0;
	transition: max-width 0.2s ease, box-shadow 0.2s ease;
}

body.show-search .header .header-search-form .header-search-text-input,
body.show-nav .header .header-search-form .header-search-text-input {
	background-color: #fff;
	border-color: rgba(255,255,255,0.75);
	padding: 5px 40px 5px 20px;
	max-width: 260px;
}

body.show-nav .header .header-search-form .header-search-text-input::placeholder {
	color: #fff;
}

.header .header-search-form .header-search-text-input:focus {
	box-shadow: 0 3px 10px rgba(0,0,0,0.2);
}

.header .header-search-form .submit {
	background: url(/images/icons/search-icon.svg) 50% 50% no-repeat;
	border: 0;
	cursor: pointer;
	height: 40px;
	position: absolute;
	right: 10px;
	transition: opacity 0.2s linear;
	width: 40px;
	z-index: 1;
}

.header .header-search-form .submit:hover {
	opacity: 0.7;
}

body.show-nav .header .header-search-form {
	border: 0;
	left: 56px;
	right: auto;
	top: 30px;
	transform: none;
}

@media (min-width: 961px) {
	body.single-level-nav.show-nav .header .header-search-form {
		left: 30px;
	}
}

body.show-nav .header .header-search-form .header-search-text-input {
	background: transparent;
	border-color: rgba(255,255,255,0.75);
	border-radius: 8px;
	color: #fff;
}

body.show-nav .header .header-search-form .submit {
	background-image: url(/images/icons/search-icon-white.svg);
}


/* -------------------------------------- */
/* Nav Toggle --------------------------- */
/* -------------------------------------- */
.nav-toggle {
	height: 24px;
	position: absolute;
	right: 80px;
	top: 50%;
	transform: translateY(-50%);
	width: 40px;
	z-index: 2;
}

.nav-toggle span,
.nav-toggle:before,
.nav-toggle:after {
	background: var(--primary-color);
	border-radius: 4px;
	content: '';
	height: 4px;
	left: 0;
	position: absolute;
	top: 0;
	transition: background-color 0.2s ease, top 0.2s ease, transform 0.2s ease;
	width: 100%;
}

@media (min-width: 961px) {
	body.single-level-nav.show-nav .nav-toggle {
		right: 40px;
	}

	body.single-level-nav.show-nav .nav-toggle span,
	body.single-level-nav.show-nav .nav-toggle:before,
	body.single-level-nav.show-nav .nav-toggle:after {
		background: var(--primary-color);
	}
	body.nav-style-hamburger.show-nav.nav-style-horizontal-original .nav-toggle span,
	body.nav-style-hamburger.show-nav.nav-style-horizontal-original .nav-toggle:before,
	body.nav-style-hamburger.show-nav.nav-style-horizontal-original .nav-toggle:after {
		background-color: #fff;
	}
}

@media (min-width: 961px) and (max-width: 1500px) {
	body.nav-style-hamburger.show-nav:not(.nav-style-horizontal-original) .nav-toggle span,
	body.nav-style-hamburger.show-nav:not(.nav-style-horizontal-original) .nav-toggle:before,
	body.nav-style-hamburger.show-nav:not(.nav-style-horizontal-original) .nav-toggle:after {
		background-color: var(--primary-color);
	}
}

.nav-toggle span {
	color: transparent;
	font-size: 0;
	text-indent: -9999px;
	top: 0;
}

.nav-toggle:before {
	top: 10px;
	transition: opacity 0.2s ease;
	width: 34px;
}

.nav-toggle:after {
	top: 20px;
}

body.show-nav .nav-toggle span {
	transform: rotate(45deg);
	top: 11px;
}

body.show-nav .nav-toggle:before {
	opacity: 0;
}

body.show-nav .nav-toggle:after {
	transform: rotate(-45deg);
	top: 11px;
}

@media (max-width: 1575px) {
	.header-quick-links {
		left: 40px;
	}

	.header .header-search-form {
		right: 110px;
	}

	.nav-toggle {
		right: 40px;
	}
}

@media (max-width: 1350px) {
	body.nav-style-hamburger .header > .header-quick-links {
		display: none;
	}
}

@media (max-width: 1150px) {
	.header .logo {
		left: 40px;
		transform: translateY(-50%);
	}
}

@media (max-width: 1500px) {
	body.show-nav .nav-toggle span,
	body.show-nav .nav-toggle:before,
	body.show-nav .nav-toggle:after {
		background: #fff;
	}
}

body.do-mobile-mode-nav .header-quick-links {
	margin: 100px auto 0 auto;
	max-width: none;
	position: static;
}

body.nav-style-horizontal-original.do-mobile-mode-nav:not(.show-nav) .header-quick-links {
	position: relative;
	top: -50px;
}
body.nav-style-horizontal-original.do-mobile-mode-nav:not(.show-nav) .header-quick-links a {
	color: var(--primary-color);
}

body.do-mobile-mode-nav .header-quick-links ul li a {
	color: #fff;
}

@media (max-width: 600px) {
	body {
		padding-top: 75px;
	}

	.header {
		height: 75px;
	}

	.header .logo {
		left: 25px;
	}

	.header > .header-search-form {
		display: none;
	}

	body.show-nav .header .header-search-form {
		top: 19px;
	}

	.nav-toggle {
		right: 25px;
	}

	.header-quick-links {
		margin-top: 90px;
	}
}

@media (max-width: 500px) {
	.header .logo {
		left: 25px;
		max-width: calc(100% - 120px);
		width: 80px;
	}

	body.show-nav .header .header-search-form {
		left: 25px;
	}

	.header-quick-links {
		margin-left: 25px;
	}
}

@media (max-width: 375px) {
	body.show-search .header .header-search-form .header-search-text-input, 
	body.show-nav .header .header-search-form .header-search-text-input {
		max-width: 205px;
	}

	.header-quick-links ul li {
		padding: 0 10px;
	}
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Cloned Quick Links (Inside of Primary Nav Container) ----------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.cloned-quick-links {
	left: auto;
	right: 135px;
	top: 25px;
	transform: none;
}

.cloned-quick-links ul {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 0;
	justify-content: center;
	padding: 0;
}
.cloned-quick-links ul li a {
	letter-spacing: 0;
	text-transform: none;
}

@media (min-width: 961px) {
	.cloned-quick-links {
		max-width: calc(50% - 100px);
	}
	body.single-level-nav.show-nav .cloned-quick-links {
		left: auto;
		padding: 90px 20px 0 30px;
		position: static;
		right: auto;
	}

	body.single-level-nav.show-nav .cloned-quick-links a {
		color: #fff;
	}

	body.single-level-nav.show-nav .cloned-quick-links a:hover {
		border-bottom: 1px solid #fff;
	}
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Primary Nav - Hamburger Style ---------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
body.nav-style-hamburger .primary-nav-wrap {
	background: #fff;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;) 100% 100%
	no-repeat;
	bottom: 0;
	display: flex;
	flex-direction: column;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	position: fixed;
	right: -930px;
	top: 0;
	transition: right 0.2s ease, box-shadow 0.2s ease;
	width: 930px;
	z-index: 1;
}

@media (min-width: 961px) {
	body.nav-style-hamburger.single-level-nav .primary-nav-wrap {
		width: 400px;
	}
}

body.nav-style-hamburger.show-nav {
	overflow: hidden;
}

body.nav-style-hamburger.show-nav .primary-nav-wrap,
body.do-mobile-mode-nav.nav-style-hamburger.show-nav .primary-nav-wrap {
	box-shadow: -15px 0 30px rgba(0,0,0,0.16);
	right: 0;
}

body.nav-style-hamburger .primary-nav-wrap:before {
	background: var(--primary-color);
	bottom: 0;
	content: '';
	height: 100vh;
	position: absolute;
	top: 0;
	width: 400px;
}

body.nav-style-hamburger .primary-nav-wrap ul {
	list-style: none;
	margin: 0;
	padding: 0px;
}
body.nav-style-hamburger .cloned-quick-links ul {
	padding: 0 30px;
}

body.nav-style-hamburger .primary-nav-wrap ul a {
	display: block;
	font-family: 'Jost', sans-serif;
	text-decoration: none;
	transition: background-color 0.2s ease;
}

/* -------------------------------------- */
/* Primary ------------------------------ */
/* -------------------------------------- */
body.nav-style-hamburger .primary-nav-wrap > ul {
	background: #94141C;
	flex: 1;
	margin-top: 142px;
	padding-bottom: 50px;
	width: 400px;
	z-index: 1;
}

@media (min-width: 961px) {
	body.single-level-nav.nav-style-hamburger .primary-nav-wrap > ul {
		margin-top: 32px;
	}
}

body.nav-style-hamburger .primary-nav-wrap > ul > li {
	border-bottom: 1px solid rgba(255,255,255,0.2);
}

body.nav-style-hamburger .primary-nav-wrap > ul > li:first-child {
	border-top: 1px solid rgba(255,255,255,0.2);
}
body.nav-style-hamburger .primary-nav-wrap > ul li.sub.selected > ul {
	display: block;
}

body.nav-style-hamburger .primary-nav-wrap > ul > li > a {
	color: #fff;
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 3.2px;
	padding: 20px 60px;
	text-transform: uppercase;
}

@media (min-width: 961px) {
	body.single-level-nav.nav-style-hamburger .primary-nav-wrap > ul > li > a {
		padding: 20px 30px;
	}
}

body.nav-style-hamburger .primary-nav-wrap > ul > li.hovered > a,
body.nav-style-hamburger .primary-nav-wrap > ul > li:hover > a,
body.nav-style-hamburger .primary-nav-wrap > ul > li.selected > a {
	background: #0000004D;
}

/* -------------------------------------- */
/* Secondary ---------------------------- */
/* -------------------------------------- */
body.nav-style-hamburger .primary-nav-wrap > ul > li > ul {
	background: #fff;
	display: none;
}

@media (min-width: 961px) {
	body.nav-style-hamburger .primary-nav-wrap > ul > li > ul {
		background: none;
		bottom: 0;
		display: block;
		left: 460px;
		opacity: 0;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		padding: 0 60px 30px 0;
		position: absolute;
		right: 0;
		top: 100px;
		transition: opacity 0.2s linear, visibility 0.2s linear;
		visibility: hidden;
	}
	
	body.nav-style-horizontal-original.nav-style-hamburger .primary-nav-wrap > ul > li > ul {
		background: #fff;
		display: none;
		opacity: 1;
		padding: 0;
		position: static;
		visibility: visible;
	}

	body.nav-style-hamburger .primary-nav-wrap > ul > li.hovered > ul {
		opacity: 1;
		visibility: visible;
		z-index: 1;
	}
}

body.nav-style-hamburger .primary-nav-wrap > ul > li ul li {
	border-bottom: 1px solid #dfdfdf;
}

body.nav-style-hamburger .primary-nav-wrap > ul > li > ul li a {
	padding: 18px 32px;
}

body.nav-style-hamburger .primary-nav-wrap > ul > li > ul li:hover > a,
body.nav-style-hamburger .primary-nav-wrap > ul > li > ul li.selected > a {
	background: #EEE;
}

/* -------------------------------------- */
/* Tertiary & Beyond -------------------- */
/* -------------------------------------- */
body.nav-style-hamburger .primary-nav-wrap > ul > li > ul li.sub > a {
	padding-right: 42px;
	position: relative;
}

body.nav-style-hamburger .primary-nav-wrap > ul > li > ul li.sub > a:after {
	content: '+';
	font-weight: 700;
	position: absolute;
	right: 20px;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
	width: 20px;
}

body.nav-style-hamburger .primary-nav-wrap > ul > li > ul li.sub > a.clicked-once:after {
	content: '-';
}

body.nav-style-hamburger .primary-nav-wrap > ul > li > ul > li ul {
	display: none;
}

@media (min-width: 961px) {
	body.nav-style-hamburger .primary-nav-wrap > ul > li > ul > li ul {
		padding: 0 0 0 20px;
	}
}

body.nav-style-hamburger .primary-nav-wrap > ul > li > ul > li ul li a {
	padding: 10px 25px;
}

#mobile-check-element {
	display: none;
	opacity: 0;
	position: absolute;
	visibility: hidden;
}

@media (max-width: 960px) {
	#mobile-check-element {
		display: block;
	}
}

body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap {
	background: var(--primary-color);
	overflow: hidden;
	right: -100%;
	width: 100%;
}

body.do-mobile-mode-nav.show-nav.nav-style-hamburger .primary-nav-wrap {
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;		
}

body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap:before {
	background: url(/images/template/nav-background.svg) 100% 100% no-repeat;
	bottom: 0;
	display: none;
	height: 100%;
	opacity: 0.15;
	position: fixed;
	right: 0;
	width: 100%;
}

body.do-mobile-mode-nav.show-nav.nav-style-hamburger .primary-nav-wrap:before {
	display: block;
}

body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul {
	margin-top: 32px;
	width: 100%;
}

body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul > li.sub > a {
	position: relative;
}

body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul > li.sub > a:after {
	content: '+';
	font-weight: 700;
	position: absolute;
	right: 30px;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
	width: 20px;
}

body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul > li.sub.selected > a:after,
body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul > li.sub > a.clicked-once:after {
	content:'-';
}

body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul > li > ul li a {
	padding: 18px 58px;
}

body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul > li > ul > li ul li a {
	padding-left: 78px;
}

body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul > li > ul > li ul ul li a {
	padding-left: 98px;
}
	
body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul > li > ul > li ul ul ul li a {
	padding-left: 118px;
}

@media (max-width: 500px) {
	body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul > li > a {
		padding: 20px 25px;
	}

	body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul > li > ul li a,
	body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul > li > ul > li ul li a {
		padding: 20px 25px;
	}

	body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul > li > ul > li ul li a {
		padding-left: 45px;
	}
	
	body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul > li > ul > li ul ul li a {
		padding-left: 65px;
	}
		
	body.do-mobile-mode-nav.nav-style-hamburger .primary-nav-wrap > ul > li > ul > li ul ul ul li a {
		padding-left: 85px;
	}
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Primary Nav - Horizontal Style --------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
#nav-horizontal-mode-switch-element {
	display: none;
}

@media (max-width: 1500px) {
	body.nav-style-horizontal-original #mobile-check-element {
		display: block;
	}

	#nav-horizontal-mode-switch-element {
		display: block;
		opacity: 0;
		position: fixed;
		visibility: hidden;
		z-index: -1;
	}
}

body.nav-style-horizontal {
	padding-top: 110px;
}

body.nav-style-horizontal .cloned-quick-links {
	display: none;
}

body.nav-style-horizontal .header {
	align-items: center;
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	height: 110px;
	justify-content: flex-end;
	overflow: initial;
	padding-top: 10px;
}

body.nav-style-horizontal .header .logo {
	order: 2;
	left: 30px;
	transform: translateY(-50%);
}

body.nav-style-horizontal .header-quick-links {
	margin-right: 15px;
	order: 1;
	position: static;
	text-align: right;
	transform: none;
}

body.nav-style-horizontal .header-quick-links ul li:nth-child(n+2) {
	padding: 0 15px;
}

body.nav-style-horizontal .header-quick-links ul li a {
	font-size: 12px;
	color: var(--primary-color);
}

body.show-search.nav-style-horizontal .header .header-search-form .header-search-text-input, 
body.show-nav.nav-style-horizontal .header .header-search-form .header-search-text-input {
	padding: 5px 35px 5px 15px;
}

body.nav-style-horizontal .header .header-search-form {
	border: 0;
	margin-right: 20px;
	position: relative;
	right: auto;
	top: auto;
	transform: none;
}

body.nav-style-horizontal .header .header-search-form:after {
	background: #CCC;
	content: '';
	height: 20px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
}

body.nav-style-horizontal .header .header-search-form .header-search-text-input {
	height: 33px;
	line-height: 33px;
}

body.nav-style-horizontal .header .header-search-form .submit {
	height: 33px;
}

body.nav-style-horizontal .nav-toggle {
	display: none;
}

body.nav-style-horizontal .primary-nav-wrap {
	font-family: 'Jost', sans-serif;
	align-self: flex-end;
	margin-right: 30px;
	order: 3;
	width: calc(100% - 400px);
}

body.nav-style-horizontal .primary-nav-wrap ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

body.nav-style-horizontal .primary-nav-wrap > ul {
	display: flex;
	justify-content: flex-end;
}

/* Top Level */
body.nav-style-horizontal .primary-nav-wrap > ul > li {
	display: inline-block;
	margin-left: 30px;
	position: relative;
}

body.nav-style-horizontal .primary-nav-wrap > ul > li > a {
	align-items: center;
	border-bottom: 5px solid transparent;
	color: var(--primary-color);
	display: flex;
	padding-bottom: 15px;
	text-decoration: none;
	transition: border-color 0.2s ease;
    font-size: var(--default-font-size);
    font-weight: 500;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

body.nav-style-horizontal .primary-nav-wrap > ul > li:hover > a {
	border-bottom: 5px solid #1d3279;
}

/* Secondary Level */
body.nav-style-horizontal .primary-nav-wrap > ul > li > ul {
    background: #fff;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    box-shadow: 0 8px 16px rgb(0 0 0 / 16%);
    max-height: calc(60vh - 130px);
    opacity: 0;
    position: absolute;
    top: 100%;
    transition: opacity 0.2s ease, visibility 0.2s ease;
    visibility: hidden;
    width: 236px;
}

body.nav-style-horizontal .primary-nav-wrap > ul > li:nth-child(n+3) > ul {
	right: 0;
}

body.nav-style-horizontal .primary-nav-wrap > ul > li > ul.scrollable {
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
}

body.nav-style-horizontal .primary-nav-wrap > ul > li > ul.scrollable::-webkit-scrollbar-thumb {
	background-color: rgba(255,255,255,0.2);
	border-radius: 8px;
	transition: background-color 0.5s ease;
}

body.nav-style-horizontal .primary-nav-wrap > ul > li > ul.scrollable:hover::-webkit-scrollbar-thumb {
	background-color: rgba(255,255,255,0.2);
}

body.nav-style-horizontal .primary-nav-wrap > ul > li > ul.scrollable::-webkit-scrollbar-track {
	background-color: rgba(255,255,255,0.2);
}


body.nav-style-horizontal .primary-nav-wrap > ul > li > ul.scrollable::-webkit-scrollbar {
	width: 8px;
}


body.nav-style-horizontal .primary-nav-wrap > ul > li:hover > ul {
	opacity: 1;
	visibility: visible;
}

body.nav-style-horizontal .primary-nav-wrap > ul > li > ul li a {
	display: block;
	font-family: 'Jost', sans-serif;
	font-size: 14px;
	padding: 10px 15px;
	position: relative;
	text-decoration: none;
	transition: background 0.2s ease;
}

body.nav-style-horizontal .primary-nav-wrap > ul > li > ul li.sub > a:after {
	content: '+';
	font-weight: 700;
	position: absolute;
	right: 10px;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
	width: 20px;
}

body.nav-style-horizontal .primary-nav-wrap > ul > li > ul li.sub > a.clicked-once:after {
	content: '-';
}

body.nav-style-horizontal .primary-nav-wrap > ul > li > ul li:hover > a {
	background: #F4F4F4;
}

body.nav-style-horizontal .primary-nav-wrap > ul > li > ul ul {
	display: none;
}


/* Third Level & Beyond */
body.nav-style-horizontal .primary-nav-wrap > ul > li > ul ul li a { padding-left: 20px; }
body.nav-style-horizontal .primary-nav-wrap > ul > li > ul ul ul li a { padding-left: 30px; }
body.nav-style-horizontal .primary-nav-wrap > ul > li > ul ul ul ul li a { padding-left: 40px; }



/* ---------------------------------------------------------------------------------------------------------- */
/* Main Content / Containers -------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.middle-area {
	margin-bottom: 100px;
	padding: 65px 0 0;
	transition: opacity 0.2s linear;
}

body.show-nav .middle-area {
	opacity: 0.3;
}

.ss-section-wrap {
	font-size: inherit;
}
.ss-section-wrap.has-inline-gallery-wrap .gallery-footer {
	margin-top: 15px;
}

.ss-section-wrap.has-background-color,
body.page-index .ss-section-wrap.has-background-color {
	box-sizing: border-box;
	margin: 0 auto 60px;
	padding: 30px;
}

.ss-section-wrap-inner {
	margin: 0 auto;
	max-width: 990px;
}

.wrapper {
	margin: 0 auto;
	max-width: 1200px;
}

.page-type-0 .wrapper {
	max-width: none;
}

.page-type-6 .wrapper {
	margin-left: auto;
	margin-right: auto;
	max-width: 990px;
}

.ss-accordion-content-wrap:last-child {
	margin-bottom: 0;
}

.scrolling-images {
	margin-bottom: 60px;
	padding: 0px 0 120px;
	position: relative;
}
body:not(.page-index) .scrolling-images {
	padding: 30px 0 0px;

}
body:not(.page-index) .scrolling-images .scrolling-image-grid-stage {
	padding-bottom: 80px;
	-webkit-mask-image: linear-gradient(90deg,transparent 0px, var(--default-text-color) 100px, var(--default-text-color) calc(100% - 100px), transparent 100%);
	-webkit-mask-position: 50%;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: cover;
}
.scrolling-images .image-slide {
	display: flex;
	height: 100%;
	padding: 0 60px;
}
.scrolling-images .image-slide .image {
	margin: auto;
	min-width: 200px;
	text-align: center;
	width: 100% !important;
}
.scrolling-images .scrolling-image-grid-stage {
	height: 100px;
	margin: 60px -45px 120px;
}
.scrolling-images .scrolling-image-grid-stage .flickity-viewport {
	min-height: 180px;
}
.scrolling-images .cb-intro,
.scrolling-images .cb-footer {
	position: relative;
	z-index: 1000;
}

.ss-section-wrap.callout-section {
	margin: 0 auto 60px;
	max-width: 960px;
	padding: 0;
}
.callout-section .ss-section-wrap-inner {
	align-items: center;
	display: flex;
	margin: 0;
}
.dark-background,
.dark-background h2,
.dark-background h3,
.dark-background h4,
.dark-background h5, 
.dark-background h6 {
	color: #fff;
}
.ss-section-wrap.callout-section:not(.has-background-color) {
	border: 1px solid var(--primary-color);
	box-shadow: 0px 15px 30px rgba(0,0,0,16%);
}
.callout-section .ss-content-block {
	flex: auto;
	margin: 0;
	padding: 30px;
}
.callout-section .ss-content-block.ss-image-block,
.callout-section .ss-content-block.has-inline-gallery-wrap {
	align-self: stretch;
	padding: 0;
}
.callout-section .ss-content-block.has-inline-gallery-wrap .inline-gallery-wrap,
.callout-section .ss-content-block.has-inline-gallery-wrap .inline-gallery-wrap .embedded-gallery,
.callout-section .ss-content-block.has-inline-gallery-wrap .inline-gallery-wrap .embedded-gallery-wrap,
.callout-section .ss-content-block.has-inline-gallery-wrap .inline-gallery-wrap .stage,
.callout-section .ss-content-block.has-inline-gallery-wrap .inline-gallery-wrap .slide,
.callout-section .ss-content-block.has-inline-gallery-wrap .inline-gallery-wrap .slide .image,
.callout-section .ss-content-block.ss-image-block p {
	height: 100%;
}
.callout-section .ss-content-block.ss-image-block img {
	display: block;
	height: 100% !important;
	object-fit: cover;
	object-position: 50%;
	width: 100% !important;
}

.ss-section-wrap.full-width {
	max-width: none !important;
	width: auto;
}

@media (max-width: 1275px) {
	body:not(.page-index,.page-type-0) .wrapper {
		margin: 0 30px;
	}
	body.page-type-6 .wrapper {
		margin-left: auto;
		margin-right: auto;
		max-width: 990px;
		width: calc(100% - 60px);
	}
}

@media (max-width: 1060px) {
	.ss-section-wrap-inner {
		margin: 0 30px;
	}
}

@media (max-width: 1024px) {
	.ss-section-wrap.callout-section {
		margin: 0 30px 30px;
	}
	.ss-section-wrap.has-background-color, body.page-index .ss-section-wrap.has-background-color {
		margin: 0 30px 30px;
		padding: 30px 0 1px;
	}
}

@media (max-width: 768px) {
	.middle-area {
		margin-bottom: 50px;
	}
	.callout-section .ss-section-wrap-inner {
		flex-direction: column;
	}
	.callout-section .ss-image-block,
	.callout-section .has-inline-gallery-wrap {
		order: -1;
	}
	.scrolling-images .scrolling-image-grid-stage {
		margin-bottom: 20px;
		margin-top: 0;
	}
	.content-box-list.events {
		margin: 0 30px;
	}
}
@media (max-width: 500px) {
	.scrolling-images .flickity-slider {
		height: 132px;
	}
	.scrolling-images .image-slide {
		padding: 0 15px;
	}
	.scrolling-images .image-slide .image {
		height: 100%;
		min-width: 132px;
		width: auto !important;
	}
	.scrolling-images .image-slide .image img {
		aspect-ratio: auto;
		height: 100% !important;
		width: auto !important;
	}
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Page Banner ---------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.page-banner {
	background-color: var(--primary-color);
	border: 20px solid #eeeeee;
	color: #fff;
	padding: 50px 30px;
	position: relative;
	text-align: center;
}

.page-banner *,
.page-banner h1 {
	color: #fff;
	position: relative;
	z-index: 3;
}

.page-banner h1 {
	margin: 0;
}

.page-banner .image {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
	bottom: 0;
	filter: grayscale(1);
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 0;
}

.page-banner:after,
.page-banner:before {
	background: #000;
	background: linear-gradient(0deg, var(--primary-color), #82000D););
	bottom: 0;
	content: '';
	left: 0;
	opacity: 0.86;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 2;
}

.page-banner:after {
	background: var(--primary-color);
	z-index: 1;
}

.middle-area .page-banner {
	display: none;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Animate In on Scroll ------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
@media (min-width: 1024px) {
	.anim-in {
		opacity: 0;
		transform: translateY(30px);
		-webkit-transition: opacity .75s ease, transform .75s ease;
		transition: opacity .75s ease, transform .75s ease;
	}
	
	.anim-in.visible {
		opacity:1;
		transform: translateY(0);
	}
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Footer --------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.footer {
	margin: auto 0 0 0;
	text-align: center;
}

.footer .upper-footer {
	margin-bottom: 100px;
	padding: 0 30px;
}

.footer .social ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer .social ul li {
	display: inline-block;
	margin: 0 10px;
}

.footer .social ul li a,
.footer .social ul li a img {
	display: block;
}

.footer .social ul li a img {
	transition: transform 0.2s ease;
}

.footer .social ul li a:hover img {
	transform: scale(1.20);
}

.footer .lower-footer {
	background: var(--primary-color);
	color: #fff;
	padding: 60px 30px 50px 30px;
}

.footer .lower-footer a {
	border-bottom: 1px solid transparent;
	color: #fff;
	transition: border 0.2s ease;
}

.footer .lower-footer a:hover {
	border-bottom: 1px solid #fff;
	text-decoration: none;
}

.footer .lower-footer .footer-info-1 {
	margin-bottom: 50px;
}

.footer .lower-footer .footer-info-2 {
	font-size: 16px;
}

.footer .lower-footer .footer-info-2 ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer .lower-footer .footer-info-2 ul li {
	border-right: 1px solid #fff;
	display: inline-block;
	margin-bottom: 5px;
	margin-right: 15px;
	padding-right: 15px;
}

.footer .lower-footer .footer-info-2 ul li:last-child {
	border-right: 0;
	margin-right: 0;
	padding-right: 0;
}

.footer .copyright {
	background: #83000d;
	color: #fff;
	font-size: 14px;
	padding: 20px 30px;
}

.footer .copyright .powered-by-logo {
	display: inline-block;
	margin-right: 20px;
	vertical-align: middle;
}

.footer .copyright .powered-by-logo img {
	display: block;
}
.footer .copyright .nav-style-switcher-link {
	color: #fff;
	margin-left: 20px;
}

@media (max-width: 768px) {
	.footer .upper-footer {
		margin-bottom: 50px;
	}

	.footer .copyright .powered-by-logo {
		display: block;
		margin: 0 auto 15px auto;
	}

	.footer .copyright .powered-by-logo img {
		margin: 0 auto;
	}
}
@media (max-width: 500px) {
	.footer .copyright {
		display: flex;
		flex-direction: column;
	}
	.footer .copyright .nav-style-switcher-link {
		margin-top: 15px;
	}
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Buttons -------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.button,
.small-action-button,
.pager,
.pager-prev,
.pager-next {
	background: var(--primary-color);
	border: 1px solid var(--primary-color);
	color: #fff;
	display: inline-block;
	font-family: 'Jost', sans-serif;
	font-size: 16px;
	font-weight: 400;
	height: auto;
	letter-spacing: 3px;
	margin: 0;
	padding: 10px 40px;
	text-align: center;
	text-transform: uppercase;
	transition: background 0.2s ease, color .2s ease;
}
.back-link.button.fr {
	padding: 2px 15px;
}

.small-action-button,
.event-items .view-event-button {
	padding: 5px 15px;
}

.event-items .view-event-button {
	font-size: 14px;
	letter-spacing: 1.5px;
}

.pager,
.pager-prev,
.pager-next {
	border: 0;
	margin: 0 2px;
	padding: 2px 8px;
	vertical-align: middle;
}

.button:hover, 
.small-action-button:hover,
.pager:hover, 
.pager-prev:hover,
.pager-next:hover, 
.pager.on {
	background: var(--secondary-color);
	color: #fff;
	opacity: 1;
}

form.category-and-window .text-search-wrap .submit,
.search-page-form-wrap .text-search-wrap .submit {
	background-color: var(--primary-color);
	background-image: url(/images/icons/search-icon-white.svg);
	border-radius: 0;
	color: #fff;
  	transition: background-color 0.2s ease;
}

.search-page-form-wrap .text-search-wrap .submit:hover,
form.category-and-window .text-search-wrap .submit:hover {
  	background-color: var(--alternate-text-color);
}

@media (max-width: 1023px) {
	.button,
	.small-action-button,
	.pager,
	.pager-prev,
	.pager-next {
		font-size: 15px;
		letter-spacing: 2px;
	}

	.button {
		margin-bottom: 15px;
		padding: 10px 30px;
	}
}
@media (max-width: 500px) {
	.event-items > li > ul > li {
		display: flex;
		flex-direction: column;
	}
	.event-items .view-event-button {
		float: none;
		margin-top: 15px;
		order: 3;
	}
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Forms ---------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
form .field-wrap input[type=text],
form .field-wrap select, 
form .field-wrap textarea,
input, 
select, 
textarea {
	box-shadow: none;
	box-sizing: border-box;
	font-family: 'Source Sans Pro', sans-serif;
	font-size: var(--default-font-size);
	max-width: 100%;
	outline: none;
	padding: 10px;
}

input#card-name,
input#card-name-2,
input#card_email,
input#card_number,
input#card_exp_year,
input#card_exp_month,
input#card_cvv {
	width: auto;
}

.form label {
	font-size: 15px;
}

@media (max-width: 400px) {
	input, select, textarea {
		padding: 7px;
	}
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Content Box Feeds ---------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.cb-intro h2 {
	margin-bottom: 25px;
}

.content-box-list li {
	margin-bottom: 30px;
}

.content-box-list li a,
.content-box-list.testimonials li {
	background: #fff;
	box-shadow: 0 10px 20px rgba(0,0,0,0.16);
	display: block;
	padding: 30px 0;
	text-align: center;
	transition: box-shadow 0.2s ease;
}

.content-box-list.testimonials li {
	padding: 30px;
	text-align: left;
}

.content-box-list li a:hover {
	box-shadow: 0 10px 25px rgba(0,0,0,0.26);
}

.content-box-list .thumbnail {
	margin-bottom: 20px;
	margin-top: -30px;
}

.content-box-list .thumbnail img {
	width: 100%;
}

.content-box-list li a .date,
.content-box-list li a .date strong {
	background: none;
	color: var(--primary-color);
	float: none;
	font-family: 'Jost', sans-serif;
	font-size: 16px;
	font-weight: 400;
	height: auto;
	letter-spacing: 2px;
	margin: 0 0 20px 0;
	padding: 0;
	text-transform: uppercase;
	width: auto;
}

.content-box-list.events li a .date {
	background: url(/images/icons/event-icon.svg) 50% 0 no-repeat;
	padding-top: 50px;

}

.content-box-list li a .date strong {
	display: inline;
	margin: 0 0 0 5px;
}

.content-box-list li a .title {
	color: var(--alternate-text-color);
	font-family: 'Jost', sans-serif;
	font-size: var(--default-font-size);	
	font-weight: 700;
	margin-bottom: 5px;
	padding: 0 20px;
}

.content-box-list li a .abstract {
	color: var(--alternate-text-color);
	display: block;
	margin-bottom: 35px;
	padding: 0 20px;
}

.content-box-list li a .see-details {
	border-bottom: 1px solid transparent;
	display: inline-block;
	padding: 0 0 5px 0;
	transition: border 0.2s ease;
}

.content-box-list.events li a .see-details {
	margin-top: 25px;
}

.content-box-list.blog li a .see-details {
	display: none;
}

.content-box-list li a .see-details,
.content-box-list.blog li a .cb:before {
	color: var(--primary-color);
	content: 'READ MORE';
	font-family: 'Jost', sans-serif;
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 2px;
	text-transform: uppercase;
	transition: border 0.2s ease;
}

.content-box-list li a .see-details:hover,
.content-box-list.blog li a .cb:hover:before {
	border-bottom: 1px solid var(--primary-color);
	padding-bottom: 5px;
}

.ss-content-block .driving-directions-wrap,
.ss-content-block .submission-form-wrap.has-driving-directions {
	float: none;
	width: auto;
}

.ss-content-block .form-section {
	margin-bottom: 20px;
}

.ss-content-block .submission-form-wrap input.button {
	width: 100%;
}

.ss-content-block.col-1 .submission-form-wrap input.button,
.ss-content-block.col-2 .submission-form-wrap input.button {
	width: auto;
}
.ss-content-block.col-1 .content-box-embed.social-stream .element-item .item-footer {
	background-color: var(--primary-color)
}

@media (min-width: 768px) {
	.ss-content-block.col-1 .content-box-list {
		display: flex;
		flex-wrap: wrap;
		padding: 60px 30px 30px 30px;
	}	

	.ss-content-block.col-1 .content-box-list li,
	.ss-content-block.col-1 .content-box-embed.social-stream .element-item {
		display: flex;
		flex: 1;
		margin: 0 30px 60px 30px;
		width: calc((100% / 3) - 60px);
	}

	.ss-content-block.col-1 .content-box-embed.social-stream .element-item {
		border: none;
		box-shadow: 0px 20px 40px rgba(0,0,0,16%);
		max-height: 500px;
	}
	.ss-content-block.col-1 .content-box-embed.social-stream .element-item .item-content {
		display: -webkit-box;
		height: 140px !important;
		overflow: hidden;
		margin: 15px 0;
		padding: 0 15px;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 8;
	}
	.ss-content-block.col-1 .content-box-embed.social-stream .element-item .photo {
		height: 250px;
		position: relative;
	}
	.ss-content-block.col-1 .content-box-embed.social-stream .element-item .photo img {
		height: 100% !important;
		position: absolute;
		width: 100% !important;
	}

	.ss-content-block.col-1 .content-box-list li a {
		display: flex;
		flex-direction: column;
		width: 100%;
	}

	.content-box-list li a .cb {
		margin-top: auto;
	}
}

@media (min-width: 768px) and (max-width: 1100px) {
	.ss-content-block.col-1 .content-box-list {
		padding: 30px 15px 15px 15px;
	}

	.ss-content-block.col-1 .content-box-list li {
		margin: 0 15px 30px 15px;
		width: calc((100% / 3) - 30px);
	}	
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Image Button Link ---------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.image-button-link {
	position: relative;
	margin-bottom: 40px;
}

.image-button-link:last-child {
	margin: 0;
}

.image-button-link .image {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
	bottom: -10px;
	box-shadow: 0 10px 20px rgba(0,0,0,0.16);
	left: 20px;
	pointer-events: none;
	position: absolute;
	top: -10px;
	transition: transform 0.2s ease;
	width: 350px;
}

.image-button-link:hover .image {
	transform: scale(1.02);
}

.image-button-link .image img {
	display: none;
}

.image-button-link a {
	background: url(/images/icons/blue-arrow-right.svg) calc(100% - 20px) 50% no-repeat;
	border: 1px solid #CCC;
	display: block;
	font-family: 'Jost', sans-serif;
	font-size: 20px;
	letter-spacing: 2px;
	padding: 50px 90px 50px 400px;
	text-decoration: none;
	text-transform: uppercase;
	transition: box-shadow 0.2s ease, background 0.2s ease, padding 0.2s ease;
}

.image-button-link a:hover {
	background-color: #F8FBFE;
	background-position: calc(100% - 30px) 50%;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
	padding-left: 410px;
}

@media (min-width: 768px) {
	.col-3 .image-button-link .image,
	.col-4 .image-button-link .image,
	.col-5 .image-button-link .image,
	.col-2-5 .image-button-link .image {
		width: 40%;
	}
	
	.col-3 .image-button-link a,
	.col-4 .image-button-link a,
	.col-5 .image-button-link a,
	.col-2-5 .image-button-link a,
	.col-3 .image-button-link a:hover,
	.col-4 .image-button-link a:hover,
	.col-5 .image-button-link a:hover,
	.col-2-5 .image-button-link a:hover {	
		padding-left: calc(40% + 40px);
	}
}

@media (max-width: 1540px) {
	.image-button-link .image {
		width: 40%;
	}
	
	.image-button-link a,
	.image-button-link a:hover {
		padding-left: calc(40% + 40px);
	}
}

@media (max-width: 660px) {
	.image-button-link {
		margin-bottom: 20px;
		overflow: hidden;
	}

	.image-button-link .image {
		bottom: 0;
		filter: grayscale(1);
		left: 0;
		right: 0;
		top: 0;
		transform: none;
		width: auto;
	}

	.image-button-link:after,
	.image-button-link:before {
		content: '';
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		background: var(--primary-color);
		opacity: 0.8;
		z-index: 1;
	}

	.image-button-link:after {
		background: rgb(0,0,0);
		background: linear-gradient(0deg rgba(0,0,0,0) 0%, rgba(0,0,0,1));
		opacity: 0.7;
	}

	.image-button-link a {
		background-image: url(/images/icons/white-arrow-right.svg);
		background-position: calc(100% - 50px) 50%;
		color: #fff;
		padding: 50px 100px 50px 50px;
		position: relative;
		z-index: 3;
	}

	.image-button-link a:hover {
		background-color: rgba(0,0,0,0.25);
		padding: 50px 100px 50px 50px;
	}	
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Quick Links/Facts Section (Shared Content Box for Quick Links) ------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.quick-links-section, .quick-facts-section {
	margin-bottom: 130px;
}
.quick-facts-section.has-background-color {
	padding: 30px 0;
	position: relative;
}
.quick-facts-section.has-background-color:after {
	border: 1px solid #fff;
	bottom: 0px;
	content: '';
	display: block;
	left: 0px;
	position: absolute;
	right: 0px;
	top: 0px;
}
body.page-type-0 .ss-section-wrap.quick-facts-section {
	margin: 0 auto 80px;
	max-width: 1400px;
}
body.page-type-0 .quick-facts-section .ss-section-wrap-inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	
}
.quick-facts-section .ss-content-block {
	border-right: 1px solid #CCC;
	box-sizing: border-box;
	margin: 0 0 30px;
	padding: 0 25px;
	text-align: center;
}
.quick-facts-section .ss-content-block.col-1,
.quick-facts-section .ss-content-block:last-child {
	border: none;
}
.quick-facts-section .ss-content-block.col-1 h2 {
	margin-bottom: 40px
}
.quick-facts-section.has-background-color.dark-background .ss-content-block {
	border-color: rgba(255,255,255,0.5)
}

.quick-links-section .cb-intro {
	margin-bottom: 70px;
}

.quick-links-section .responsive-grid-layout-row.four-column > .col {
	border-right: 1px solid #CCC;
	box-sizing: border-box;
	margin: 0;
	padding: 0 25px;
	text-align: center;
	width: 25%;
}

.quick-links-section .responsive-grid-layout-row.four-column > .col:last-child {
	border-right: 0;
}

.icon-link {
	border-radius: 20px;
	display: block;
	font-family: 'Jost', sans-serif;
	font-size: 16px;
	letter-spacing: 2px;
	padding: 15px 40px;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: box-shadow 0.2s ease;
}

.icon-link:hover {
	box-shadow: 0 5px 10px rgba(0,0,0,0.16);
	text-decoration: none;
}

.icon-link img {
	display: block;
	margin: 0 auto 20px auto;
	transition: transform 0.2s ease;
}

.icon-link:hover img {
	transform: scale(1.15);
}

.icon-link br {
	display: none;	
}

@media (max-width: 1024px) {
	.quick-links-section {
		margin-bottom: 90px;
	}
}

body.do-mobile-mode-nav .quick-links-section {
	margin-bottom: 70px;
}

body.do-mobile-mode-nav .quick-links-section .responsive-grid-layout-row.four-column > .col {
	margin-bottom: 30px;
	float: left;
	width: 50%;
}

body.do-mobile-mode-nav .quick-links-section .responsive-grid-layout-row.four-column > .col:nth-child(2n) {
	border-right: 0;
}

@media (max-width: 768px) {
	.quick-facts-section .ss-content-block.col-3,
	.quick-facts-section .ss-content-block.col-4,
	.quick-facts-section .ss-content-block.col-5 {
		width: 50%;
	}
	.quick-facts-section .ss-content-block.col-3:nth-child(2n+1),
	.quick-facts-section .ss-content-block.col-4:nth-child(2n+1),
	.quick-facts-section .ss-content-block.col-5:nth-child(2n+1) {
		border: none;
	}
}

@media (max-width: 600px) {
	.quick-links-section .cb-intro {
		margin-bottom: 35px;
	}

	.quick-links-section .responsive-grid-layout-row.four-column > .col {
		border: 0;
		float: none;
		margin: 0 0 20px 0;
		padding: 0;
		width: 100%;
	}

	.quick-links-section .responsive-grid-layout-row.four-column > .col:last-child {
		margin: 0;
	}

	.icon-link {
		box-shadow: 0 5px 10px rgba(0,0,0,0.16);
		padding: 30px;
	}
}
@media (max-width: 500px) {
	.quick-facts-section .ss-content-block.col-3,
	.quick-facts-section .ss-content-block.col-4,
	.quick-facts-section .ss-content-block.col-5 {
		border: none;
		width: 100%;
	}
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Call to Actions Section ---------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.call-to-actions .ss-section-wrap-inner {
	border-bottom: 1px solid #CCC;
	border-top: 1px solid #CCC;
	padding: 30px 0;
}

.quick-links-box-wrap {
	font-size: 16px;
	text-align: center;
}

.quick-links-box-wrap h3 {
	font-size: 16px;
	letter-spacing: 2px;
}

.quick-links-box-wrap h3 img {
	display: block;
	margin: 0 auto 15px auto;
	max-height: 100px;
	max-width: 50%;
}

.quick-links-box-wrap a:last-child {
	border-bottom: 1px solid transparent;
	display: inline-block;
	font-family: 'Jost', sans-serif;
	font-size: 12px;
	letter-spacing: 1px;
	padding-bottom: 2px;
	text-transform: uppercase;
	transition: border 0.2s ease;
}

.quick-links-box-wrap a:last-child:hover {
	border-bottom: 1px solid var(--primary-color);
	text-decoration: none;
}

@media (min-width: 768px) {
	.call-to-actions .ss-section-wrap-inner {
		display: flex;
		flex-wrap: wrap;
	}
	
	.call-to-actions .ss-content-block {
		border-right: 1px solid #CCC;
		display: flex;
		margin: 0;
		padding: 0 30px 30px 30px;
		width: calc((100% / 3) - 1px);
	}

	.quick-links-box-wrap {
		display: flex;
		flex-direction: column;
		width: 100%;
	}

	.call-to-actions .ss-content-block:last-child {
		border: 0;
	}

	.quick-links-box-wrap a:last-child {
		align-self: center;
		margin-top: auto;
	}
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Equal Heights -------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */

.equal-heights .ss-content-block {
	display: block;
	margin: 0;
	position: relative;
}
.equal-heights .ss-content-block.col-3,
.equal-heights .ss-content-block.col-4,
.equal-heights .ss-content-block.col-5 {
	display: flex;
	flex-direction: column;
}
.equal-heights .ss-content-block.col-3 {
	flex: calc(100% / 3 - 30px);
}
.equal-heights .ss-content-block.col-4 {
	flex: calc(25% - 30px);
}
.equal-heights .ss-content-block.col-5 {
	flex: calc(20% - 30px);
}
.equal-heights .ss-content-block p {
	width: 100%;
}
.equal-heights .button,
.equal-heights .small-action-button {
	box-sizing: border-box;
	display: flex;
	flex: 100%;
	flex-direction: column;
	height: 100%;
	justify-content: center;
	max-width: 100%;
	width: 100%;
}

@media (min-width: 768px) {
	.equal-heights .ss-section-wrap-inner {
		display: flex;
		flex-wrap: wrap;
		gap: 30px;
		justify-content: center;
	}

	.equal-heights .ss-section-wrap-inner .ss-content-block.col-1 {
		margin: 0;
		width: 100%;
	}

	.equal-heights .ss-section-wrap-inner .ss-content-block.col-4 {
		margin: 0;
		width: calc(25% -305px);
	}

	.equal-heights .ss-section-wrap-inner .ss-content-block.col-4 img {
		display: block;
		width: 100% !important;
	}

	.equal-heights .ss-section-wrap-inner .ss-content-block.col-4:last-child {
		margin-right: 0;
	}
}

@media (max-width: 768px) {
	.equal-heights .ss-section-wrap-inner {
		display: flex;
		flex-wrap: wrap;
		gap: 15px;
	}
	.equal-heights .ss-section-wrap-inner .ss-content-block.col-4 {
		flex: calc(50% - 30px);
	}
}

@media (max-width: 600px) {
	.equal-heights .ss-section-wrap-inner .ss-content-block.col-4 img {
		display: block;
		width: 100% !important;
	}
}
@media (max-width: 500px) {
	.equal-heights .ss-section-wrap-inner .ss-content-block.col-3,
	.equal-heights .ss-section-wrap-inner .ss-content-block.col-4,
	.equal-heights .ss-section-wrap-inner .ss-content-block.col-5 {
		flex: 100%;
	}
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Page Type Style Adjustments ------------------------------------------------------------------------------ */
/* ---------------------------------------------------------------------------------------------------------- */
h2.title {
	margin-bottom: 7px;
}

h3.date {
	font-size: 16px;
}


/* -------------------------------------- */
/* Blog --------------------------------- */
/* -------------------------------------- */

.blog-right-column p {
	margin-bottom: 30px;
	padding: 0;
}

.blog-items .blog-item .content {
	margin-bottom: 20px;
}

@media (max-width: 650px) {
	.blog-left-column,
	.blog-right-column {
		float: none;
		width: auto;
	}

	.blog-right-column {
		margin-top: 50px;
	}
}

.detail-page.blog > .hr {
	margin-bottom: 30px;
}

@media (min-width: 768px) {
	.detail-page.blog .ss-section-wrap {
		margin-left: -5px;
		margin-right: -5px;
	}
}

@media (min-width: 1024px) {
	.detail-page.blog .ss-section-wrap {
		margin-left: -15px;
		margin-right: -15px;
	}
}

.detail-page.blog .ss-section-wrap-inner {
	margin: 0;
}

/* -------------------------------------- */
/* Calendar / Events -------------------- */
/* -------------------------------------- */
.event-links-bar h3 {
	line-height: 37px;
}

.event-links-bar .button {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-top: 0;
	padding-bottom: 0;
}

form.category-and-window {
	height: 70px;
}

form.category-and-window ul.time-window-options li.selected a, 
form.category-and-window ul.time-window-options li:hover a {
	background: #1a1a1a;
}

form.category-and-window ul.display-options {
	margin-top: 0;
}

.calendar {
	font-size: 15px;
}

.calendar a.event {
	line-height: 16px;
}
.calendar a.event .description {
	display: none;
}

.event-items > li > ul > li {
	min-height: 45px;
}
.event-items > li h2.date {
	font-size: 18px;
}
.event-items > li h3.title {
	font: 600 18px 'Roboto',sans-serif;
	letter-spacing: normal;
	text-transform: none;
}
.event-items > li h4.time {
	font: 400 16px 'Roboto',sans-serif;
	letter-spacing: normal;
	text-transform: none;
}

@media screen and (max-width: 770px) {
	form.category-and-window {
		height: auto;
		text-align: center;
	}
	
	form.category-and-window select {
		float: none;
		width: auto;
	}
	
	form.category-and-window ul.display-options {
		float: none;
		margin: 10px 0; 
	}
	
	form.category-and-window ul.time-window-options {
		float: none;
		margin-bottom: 10px;
	}
	
	form.category-and-window ul.display-options li, 
	form.category-and-window ul.time-window-options li {
		display: inline-block;
		float: none;
	}
}

@media screen and (max-width: 670px) {
	table.calendar td {
		padding: 30px 10px 10px;
		padding-top: 35px;
	}
	table.calendar td .day-number {
		left: 3px;
		top: -25px;
	}
	.calendar td:not(.has-events) { 
		display: none; 
	}
	.calendar,
	.calendar tr,
	.calendar td.has-events {
		display: block;
		width: 100%;
	}
	.calendar tbody {
		display: block;
		width: 100%;
	}
}

@media screen and (max-width: 550px) {
	.event-links-bar h3 {
		font-size: 15px;
	}
	
	.event-links-bar .button {
		padding: 0 19px;
	}
  
  	.event-links-bar .button:hover {
 		background-color: #1a1a1a;
    }
	
	.event-links-bar .button .long {
		display: none;
	}
}

/* -------------------------------------- */
/* Driving Directions ------------------- */
/* -------------------------------------- */
@media (max-width: 500px) {
	table.cms-table .button {
		width: 100%;
	}
}

/* -------------------------------------- */
/* FAQs --------------------------------- */
/* -------------------------------------- */
.page-faq .list-items > li {
	border: 0;
}

/* -------------------------------------- */
/* Job Board ---------------------------- */
/* -------------------------------------- */
.job-board-filter-wrap.col-3 .filter-wrap,
.job-board-filter-wrap.col-2 .filter-wrap, 
.job-board-filter-wrap.col-1 .filter-wrap {
	min-width: 250px;
}

.job-board-items .list-item a {
	padding-right: 15px;
}

.job-board-items .list-item .view-details-icon.button {
	font-size: 14px;
	letter-spacing: 1px;
	width: 130px;
}

@media (max-width: 500px) {
	.job-board-filter-wrap.col-3 .filter-wrap, 
	.job-board-filter-wrap.col-2 .filter-wrap,
	.job-board-filter-wrap.col-1 .filter-wrap {
		float: none;
		max-width: none;
		width: 100%;
	}	
	.job-board-items .list-item > a {
		display: flex;
		flex-direction: column;
	}
	.job-board-items .list-item > a * {
		width: 100%;
	} 
	.job-board-items .list-item .view-details-icon.button {
		left: 0;
		margin: 15px 0 0;
		position: relative;
		top: 0;
		width: auto;
	}
}

/* -------------------------------------- */
/* Image Link Grid ---------------------- */
/* -------------------------------------- */
.image-grid-link-items {
	margin: 0 -12.5px;
}
.image-grid-link-items li, .image-grid-link-items .element-item, .image-grid-link-items .grid-sizer {
	opacity: 1;
}

.image-grid-link-items .grid-sizer {
	width: 50%;
}

.image-grid-link-items .gutter-sizer {
	width: 0;
}

.image-grid-link-items .list-item.image-link-grid-item {
	display: block;
	height: 100px;
	min-height: 320px;
	overflow: hidden;
	position: relative;
	-webkit-transition: all .2s ease;
	transition: all .2s ease;
}

.image-grid-link-items .list-item.image-link-grid-item .image-wrap {
	background: 50% 50% no-repeat;
	background-size: cover;
	height: 100%;
	overflow: hidden;
	padding-top: 0;
	position: absolute;
	width: 100%;
	z-index: -1;
}

.image-grid-link-items a.list-item.image-link-grid-item:after {
	background-color: hsl(354 88% 17% / 1);
	bottom: 0;
	content: '';
	display: block;
	left: 0;
	mix-blend-mode: hard-light;
	opacity: 0;
	position: absolute;
	right: 0;
	top: 0;
	transition: opacity 0.3s ease;
}
.image-grid-link-items a.list-item.image-link-grid-item:hover:after {
	opacity: 1;
}

.image-grid-link-items .list-item.image-link-grid-item .image-wrap img {
	display: none;
}

.image-grid-link-items .list-item.image-link-grid-item .title-link-wrap {
	align-items: center;
	background: none;
	bottom: 0;
	color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}
.image-grid-link-items .list-item.image-link-grid-item .title-link-wrap .title {
	color: white;
	font-size: 24px;
	margin-bottom: auto;
	margin-top: 20px;
	text-align: center;
}

.image-grid-link-items .list-item.image-link-grid-item .title-link-wrap * {
	margin-bottom: 5px;
}

.image-grid-link-items .list-item.image-link-grid-item .title-link-wrap *:last-child {
	margin-bottom: 0;
}

.image-grid-link-items .list-item.image-link-grid-item .title {
	color: var(--alternate-text-color);
    display: inline-block;
	filter: blur(10px);
	font-family: 'Jost', sans-serif;
    font-size: var(--default-font-size);
    font-weight: 700;
    height: auto;
	letter-spacing: 2px;
    line-height: 110%;
	opacity: 0;
    padding: 0;
    vertical-align: middle;
	text-align: left;
	text-transform: uppercase;
	transition: filter 0.3s ease, opacity 0.3s ease;
    width: auto;
}
.image-grid-link-items a.list-item.image-link-grid-item {
	text-decoration: none;
}
.image-grid-link-items a.list-item.image-link-grid-item:hover .title {
	filter: blur(0px);
	opacity: 1;
}

.image-grid-link-items .list-item.image-link-grid-item .content-wrap {
	align-items: center;
	color: #fff;
	display: flex;
	filter: blur(10px);
	font-size: 16px;
	font-weight: 400;
	height: 100%;
	margin: auto 30px auto;
	opacity: 0;
	overflow-x: hidden;
	overflow-y: scroll;
	position: relative;
	transition: filter 0.3s ease, opacity 0.3s ease;
	z-index: 1;
}
.image-grid-link-items a.list-item.image-link-grid-item:hover .content-wrap {
	filter: blur(0px);
	opacity: 1;
}
.image-grid-link-items .list-item.image-link-grid-item .content-wrap::-webkit-scrollbar {
	background-color: transparent;
	width: 10px;
}
.image-grid-link-items .list-item.image-link-grid-item .content-wrap::-webkit-scrollbar-thumb {
	background-color: rgba(255,255,255,0.5);
	width: 10px;
}

.image-grid-link-items a.list-item.image-link-grid-item .link.button {
	background-color: #fff;
	color: var(--primary-color);
	filter: blur(10px);
	margin-bottom: 20px;
	opacity: 0;
	position: static;
	transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease, filter 0.3s ease, opacity 0.3s ease;
}
.image-grid-link-items a.list-item.image-link-grid-item:hover .link.button {
	filter: blur(0px);
	opacity: 1;
}
.image-grid-link-items a.list-item.image-link-grid-item .link.button:hover {
	background-color: var(--primary-color);
	border-color: #fff;
	color: #fff;
}

@media screen and (min-width: 1024px) {
	.image-grid-link-items .grid-sizer {
		width: calc(100% * 1/3);
	}

	.image-grid-link-items .list-item.image-link-grid-item .title-link-wrap * {
		margin-bottom: 10px;
	}
}
@media (max-width: 1024px) {
	.image-grid-link-items.loaded .element-item {
		width: calc(50%)
	}
}
@media (max-width: 650px) {
	.image-grid-link-items.loaded .element-item {
		width: 100%;
	}
	.image-grid-link-items .list-item.image-link-grid-item {
		background-color: var(--secondary-color);
		display: flex;
		flex-direction: column;
		height: auto;
		padding-bottom: 60px;
	}
	.image-grid-link-items .list-item.image-link-grid-item .image-wrap {
		aspect-ratio: 1 / 1;
		z-index: 1;
	}
	.image-grid-link-items .list-item.image-link-grid-item .title-link-wrap,
	.image-grid-link-items .list-item.image-link-grid-item .image-wrap,
	.image-grid-link-items .list-item.image-link-grid-item .content-wrap {
		filter: blur(0);
		height: max-content;
		margin: 0;
		opacity: 1;
		position: relative;
	}
	.image-grid-link-items .list-item.image-link-grid-item .content-wrap {
		display: block;
		padding: 0 15px 15px;
	}
	.image-grid-link-items .list-item.image-link-grid-item .title-link-wrap {
		flex-direction: row;
	}
	.image-grid-link-items .list-item.image-link-grid-item .title-link-wrap .title {
		margin-top: 15px;
		padding: 10px 15px;
	}
	.image-grid-link-items .list-item.image-link-grid-item .title-link-wrap .title,
	.image-grid-link-items .list-item.image-link-grid-item .title-link-wrap .link.button {
		box-sizing: border-box;
		filter: blur(0);
		font-size: 16px;
		margin-top: 10px;
		max-width: none;
		opacity: 1;
		
		text-align: left;
		width: 100%;
	}
	.image-grid-link-items .list-item.image-link-grid-item .title-link-wrap .link.button {
		margin-right: 10px;
		order: 10;
		padding: 0px 15px;
		width: max-content;
	}
}

/* -------------------------------------- */
/* Location Finder Page ----------------- */
/* -------------------------------------- */
.page-type-22 .main-content {
	position: relative;
}

.map-locations-categories-heading-area .button.selected, 
.map-locations-categories-heading-area .button:hover, 
.map-locations-map-container-heading-area .button.selected, 
.map-locations-map-container-heading-area .button:hover {
  	background-color: #fff;
  	color: #1a1a1a;
}

.map-locations-categories-heading-area .button, .map-locations-map-container-heading-area .button {
	background-color: var(--primary-color);
	color: #fff;
	font-size: 15px;
	line-height: 24px;
	margin-right: 5px;
	padding: 0 20px;
}

.map-locations-categories-heading-area .button, .map-locations-map-container-heading-area .button:last-of-type {
	margin-right: 0;
}

.map-locations-categories-heading-area .button, .map-locations-map-container-heading-area .button:hover {
	color: var(--primary-color);
}

.map-locations-map-container {
  	float: right;
  	width: 66%;
}

.map-locations-search-wrap {
  	background-image: url(/images/icons/search-icon.svg);
  	background-size: 20px 50%;
}

.map-locations-categories {
  	left: 0;
  	width: 30%;
}

.map-locations-zip-radius-wrap {
  	margin: 10px 5px;
}

.leaflet-container a {
	color: var(--primary-color);
}

.leaflet-container a.button {
	color: #fff;
}

.list-items.map-locations-items li .read-more-wrap .button {
	text-transform: uppercase;
}

@media (max-width: 768px) {
	.map-locations-categories,
	.map-locations-map-container {
		float: none;
		width: auto;
	}
}


/* -------------------------------------- */
/* Member Directory Page ---------------- */
/* -------------------------------------- */
.member-directory-filter-wrap {
	padding-bottom: 10px;
}

.member-directory-filter-wrap:after {
	clear: both;
	content: '';
	display: table;
}

.selectBox-dropdown,
.select-filter-wrap .selectBox-dropdown,
form.category-and-window .chosen-container-multi .chosen-choices {
	background-image: url(/images/icons/dropdown.svg);
	background-position: calc(100% - 15px) 50%;
	background-repeat: no-repeat;
	background-size: 16px;
	border: 1px solid var(--blue-color);
	border-radius: 12px;
	cursor: pointer;
	font: 500 18px var(--heading-font-family);
	padding: 15px 55px 15px 15px;
	width: 100%;
}
.selectBox-dropdown {
	width: max-content;
}
form.category-and-window .chosen-container-multi .chosen-choices {
	background-size: 12px;
	padding: 5px 15px
}
.selectBox-dropdown-menu {
	background-color: #fff;
	border: 1px solid var(--blue-color);
	border-radius: 4px;
	box-shadow: 0px 10px 20px rgba(0,0,0,16%);
	cursor: pointer;
	list-style: none;
	margin: -56px 0 0;
	padding: 30px 20px;
	position: absolute;
	top: 0;
	transition: opacity 0.3s ease;
	width: max-content !important;
	z-index: 10;
}
.selectBox-dropdown-menu li {
	font: 400 var(--default-font-size) 'Source Sans Pro',sans-serif;
	margin: 0 0 15px;
}
select option {
	border: 1px solid var(--blue-color);
	color: var(--blue-color);
	font: 400 var(--default-font-size) 'Source Sans Pro',sans-serif;
	letter-spacing: 0.02em;
}

.page-type-10 .detail-page.member-directory .image-column {
	box-sizing: border-box;
	padding-right: 20px;
	width: 300px;
}

.page-type-10 .detail-page.member-directory .image-column .image {
  width: 100%;
}

.page-type-10 .detail-page.member-directory .info-column {
	width: calc(100% - 320px);
}

.page-type-10 .list-item.member-directory-item a:hover {
  color: var(--alternate-text-color);
}

.page-type-10 .member-directory-items .member-directory-item .info h2.title { 
	font-size: 20px; 
}

.page-type-10 .view-profile-link {
  margin-top: 5px;
}

.member-directory-items {
	display: flex;
	flex-wrap: wrap;
}

.member-directory-items .member-directory-item {
	display: block;
	width: 25%;
}

.member-directory-items .member-directory-item .info {
	background: none;
	display: block;
	padding: 0;
	width: 100%;
}
.member-directory-items .member-directory-item .info .categories {
	display: none;
}
.member-directory-items .member-directory-item .info .view-profile-link a {
	background-image: url(/images/icons/red-arrow-right.svg);
	background-position: calc(100% - 5px) 50%;
	background-repeat: no-repeat;
	background-size: 14px;
	padding-right: 25px;
	transition: background-position 0.2s ease;
}
.member-directory-items .member-directory-item .info .view-profile-link a:hover {
	background-position: 100% 50%;
	color: var(--primary-color);
	text-decoration: none;
}

.ss-content-block .member-directory-items .member-directory-item {
	display: flex;
	gap: 20px;
	width: 100%;
}
.ss-content-block.col-1 .member-directory-items .member-directory-item {
	flex: 50%;
	max-width: 50%;
}
.ss-content-block.col-3 .member-directory-items .member-directory-item {
	flex-direction: column;
	margin: 0 auto;
	max-width: 300px;
}
.ss-content-block.col-3 .member-directory-items .member-directory-item .image {
	aspect-ratio: 1 / 1 !important;
	flex: auto;
	height: auto;
	width: 100%;
}
.ss-content-block .member-directory-items .member-directory-item .job_title {
	font: 600 16px 'Montserrat',sans-serif;
	
}
.ss-content-block.col-1-5 .member-directory-items,
.ss-content-block.col-1-4 .member-directory-items,
.ss-content-block.col-1-3 .member-directory-items,
.ss-content-block.col-2-5 .member-directory-items,
.ss-content-block.col-2 .member-directory-items,
.ss-content-block.col-2-3 .member-directory-items {
	flex-direction: column;
}
.ss-content-block .member-directory-items .member-directory-item .image {
	aspect-ratio: 1 / 1;
	display: block;
	flex: 50%;
	width: auto;
}
.ss-content-block .member-directory-items .member-directory-item .image img {
	height: 100% !important;!i;!;
	object-fit: cover;
	object-position: 50%;
}
.ss-content-block .member-directory-items .member-directory-item .info {
	flex: 50%;
	width: auto;
}
.ss-content-block .member-directory-items .member-directory-item h2.title {
	font-size: 30px;
	font-weight: 700;
	line-height: 100%;
	margin-bottom: 5px;
}
.ss-content-block .member-directory-items .member-directory-item .categories,
.ss-content-block .member-directory-items .member-directory-item .view-profile-link {
	display: none;
}
.ss-content-block .member-directory-items .member-directory-item .email {
	margin: 0 0 -10px;
}
.ss-content-block .member-directory-items .member-directory-item .email a {
	background-image: url(/images/icons/red-arrow-right.svg);
	background-position: calc(100% - 5px);
	background-repeat: no-repeat;
	background-size: 16px;
	display: block;
	font: 600 16px 'Montserrat',sans-serif;
	line-height: 100%;
	padding-right: 25px;
	transition: background-position 0.2s ease;
	width: max-content;
}
.ss-content-block .member-directory-items .member-directory-item .email a:hover {
	background-position: 100% 50%;
	text-decoration: none;
}
.page-type-10 .member-directory-items .member-directory-item .image {
	display: block;
	height: auto;
	margin: 0 0 10px 0;
	max-width: 100%;
	width: 100%;
}

.page-type-10 .member-directory-items .member-directory-item .image img {
	display: block;
	height: auto; 
	width: 100%;
}

.page-type-10 a.fr.small-action-button {
	margin: 0 0 15px;
}


@media (max-width: 900px) {
	.member-directory-items .member-directory-item {
		width: calc(100% / 3);
	}
}

@media (max-width: 768px) {
	.member-directory-items {
		flex-direction: column;
	}
	.ss-content-block.col-1 .member-directory-items .member-directory-item {
		max-width: none;
		width: 100%;
	}
	.page-type-10 .detail-page.member-directory .image-column {
		margin: 0 auto 30px;
		width: auto;
	}

	.page-type-10 .detail-page.member-directory .info-column {
		width: auto;
	}

	.member-directory-filter-wrap form.category-and-window select,
	form.category-and-window .text-search-wrap {
		float: none;
		margin: 0;
		max-width: none;
		width: 100%;
	}

	.member-directory-filter-wrap form.category-and-window select {
		margin-bottom: 10px;
	}
}

@media (max-width: 600px) {
	.member-directory-items .member-directory-item {
		width: 50%;
	}
}

@media (max-width: 550px) {
	.member-directory-items .member-directory-item {
		width: 100%;
	}
}
@media (max-width: 500px) {
	.ss-content-block.col-1 .member-directory-items .member-directory-item {
		flex-direction: column;
	}
}


/* -------------------------------------- */
/* Porfolio Page ------------------------ */
/* -------------------------------------- */
.page-type-16 .masonry-grid {
    margin: 0;
}

.page-type-16 .masonry-grid .grid-sizer {
    width: calc(100% * 1/3);
}

.page-type-16 .masonry-item a {
	border: none;
}

.page-type-16 .masonry-grid .masonry-item {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	text-align: left;
	width: calc(100% * 1/3);
}

.page-type-16 .masonry-item a {
	display: block;
	position: relative;
}

.page-type-16 .masonry-item a .image,
.page-type-16 .inspiration-gallery-items .row .col .image {
    background: 50% 50% no-repeat;
    background-size: cover;
    height: 0;
    padding-top: 60%;
}

.page-type-16 .masonry-item a .image img,
.page-type-16 .inspiration-gallery-items .row .col .image img {
    display: none;
}

.page-type-16 .masonry-item .caption {
	display: none;
	line-height: 100%;
	opacity: 1;
	-webkit-transition: transform .3s ease, opacity .3s ease;
	transition: transform .3s ease, opacity .3s ease;
	vertical-align: middle;
	width: 100%;
}

.page-type-16 .masonry-item a:hover .caption {
	opacity: 1;
}

.page-type-16 .masonry-item a .title {
	color: #fff;
	display: block;
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	font-weight: 400;
	letter-spacing: 1.6px;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.page-type-16 .inspiration-gallery-items.quad .row .col.col-last {
	float: left;
}

.page-type-16 .inspiration-gallery-items.quad {
	margin: 0 auto;
	width: 90%;
}

.page-type-16 .detail-page.inspiration-gallery .small-action-button.negmt {
  	margin-top: 7px;
}

.page-type-16 .detail-page.inspiration-gallery .social-share-links .houzz iframe {
  	margin: 0;
  	top: 0;
}

.detail-page.inspiration-gallery .small-action-button.negmt {
  	margin-top: 7px;
}

.detail-page.inspiration-gallery .social-share-links .houzz iframe {
  	margin: 0;
  	top: 0;
}

.inspiration-gallery-items.quad .row .col.col-last {
	float: left;
}

.inspiration-gallery-items.quad {
	margin: 0 auto;
	width: 90%;
}

/* -------------------------------------- */
/* Social Media Mashup ------------------ */
/* -------------------------------------- */
.page-type-30 .intro-text {
	margin-bottom: 30px;
}

/* -------------------------------------- */
/* Resources ---------------------------- */
/* -------------------------------------- */
.list-items .list-item.resource-item h2.title {
	font-size: 38px;
}

.list-items .list-item.resource-item h3.date {
	display: none;
}

.list-items>li {
	border-bottom: none;
}

.list-items .list-item.resource-item .file-wrap {
    min-height: 0;
    background: none !important;
    padding: 0;
}
.list-items .list-item.resource-item .file-wrap:after {
    clear: both;
    content: '';
    display: table;
}

.list-items .list-item.resource-item .file-wrap .title a {
	font-size: 20px;
	letter-spacing: 3px;
	text-transform: uppercase;
}

.list-items.resource-items li {
    border-bottom: 1px solid #CCC;
    padding: 10px 0;
}

.list-items .list-item.resource-item .content {
    padding: 0;
}

.list-items.resource-items .resource-item > .hr {
    display: none;
}

.resource-item > .button.fr {
    line-height: 100%;
    padding: 7px 15px;
    min-width: 90px; 
}

.list-items .list-item.resource-item h2.title {
    font-size: 25px;
}

.resource-item p {
    margin: 0;
}

@media (max-width: 550px) {
	.list-items .list-item.resource-item {
		display: flex;
		flex-direction: column;
	}	

	.list-items .list-item.resource-item * {
		order: 2;
	}

	.list-items .list-item.resource-item .file-wrap {
		order: 1;
	}
}

/* -------------------------------------- */
/* Login Page Form ---------------------- */
/* -------------------------------------- */
.logout-wrap {
	text-align: right;
	margin: 0 0 40px 0;
}

.logout-wrap a.button {
	margin-left: 10px;
	padding: 10px 20px;
	line-height: 100%;
}

.login-page-form {
	padding: 0;
	max-width: 1300px;
	margin: 45px auto;
}

.login-page-form input[type=email],
.login-page-form input[type=text],
.login-page-form input[type=password] {
	height: auto;
	line-height: 100%;
	margin-right: 9px;
	padding: 10px;
}

.login-page-form input.button {
	border-radius: 0;
	height: auto;
	line-height: 100%;
	padding: 13px 25px;
}

.forgot-password-wrap {
	margin-top: 10px;
}

@media (max-width: 500px) {
	.login-page-form input[type=email],
	.login-page-form input[type=text],
	.login-page-form input[type=password] {
		margin: 0 0 10px 0;
		width: 100%;
	}

	.login-page-form input.button {
		width: 100%;
	}
}

/* -------------------------------------- */
/* SelectBox Filter Styles -------------- */
/* -------------------------------------- */
.select-filter-label {
	margin-left: 0;
}

a.selectBox {
	display: none !important;
}

.grid-filters-wrap,
#inspiration-gallery-filters {
	background: none;
	margin: 0;
	padding: 25px 0;
	text-align: center;
	width: 100%;
}

.inspiration-gallery-filters .select-filter-wrap {
	display: inline-block;
	float: none;
	margin: 0 0 10px;
	vertical-align: middle;
}

.select-filter-label {
	display: inline-block;
	float: none;
	font-family: 'Roboto', sans-serif;
	font-size: 14px;
	font-weight: 500;
	margin: 0 15px 10px 0;
	vertical-align: middle;
}

.select-filter-wrap select {
    -webkit-appearance: none;
	background: #fff url(/images/icons/filter-arrow.svg) 95% 50% no-repeat;
	background-size: 10px auto; 
    border: 1px solid #DEDEDE;
    box-shadow: none;
	box-sizing: border-box;
	font-family: 'Roboto', sans-serif;
	font-size: 14px;
	font-weight: 400;
	height: 32px; 
	letter-spacing: .2px;
	line-height: 32px;
	margin-right: 15px;
	min-width: 180px;
	padding: 0 0 0 15px;
    vertical-align: middle;
}

.inspiration-gallery-items {
	text-align: center;
}

.inspiration-gallery-list .grid-sizer,
.inspiration-gallery-list .gutter-sizer {
	display: none;
}
.inspiration-gallery-list .masonry-item {
	left: 0 !important;
	margin: 0;
	padding: 0;
	position: relative !important;
	top: 0 !important;
	transform: none !important;
	transition: none !important;
	width: calc(100% / 3);
}
.inspiration-gallery-list .masonry-item a {
	border: none;
	height: max-content;
	margin: 0px;
	position: relative;
}
.inspiration-gallery-list .masonry-item a .image {
	aspect-ratio: 1 / 1;
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: cover;
	display: block;
	height: auto;
	padding: 0;
	position: relative;
	width: 100%;
}
.inspiration-gallery-list .masonry-item a .image:before {
	backdrop-filter: blur(10px);
	background-color: #1d3279aa;
	bottom: 0;
	content: '';
	display: block;
	left: 0;
	opacity: 0;
	position: absolute;
	right: 0;
	top: 0;
	transition: opacity 0.3s ease;
}
.inspiration-gallery-list .masonry-item a:hover .image:before {
	opacity: 1;
}
.inspiration-gallery-list .masonry-item a .image img {
	display: none;
}
.inspiration-gallery-list .masonry-item a .title {
	box-sizing: border-box;
	bottom: auto;
	color: #fff;
	filter: blur(10px);
	font-family: 'Playfair Display', sans-serif;
	font-size: 36px;
	margin-bottom: 0;
	opacity: 0;
	position: absolute;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
	transition: filter 0.3s ease, opacity 0.3s ease;
	width: 100%;
}
.inspiration-gallery-list .masonry-item a:hover .title {
	filter: blur(0px);
	opacity: 1;
}


@media screen and (min-width: 1024px) {
	select#grid_category_id { 
		display: none; 
	}

	.inspiration-gallery-list {
		text-align: center;
	}

	.inspiration-gallery-filters {
		display: inline-block;
		opacity: 0;
		-webkit-transition: opacity .5s ease .5s;
		transition: opacity .5s ease .5s;
		vertical-align: middle;
	}

	.loaded .inspiration-gallery-filters {
		opacity: 1;
		transform: translateY(0);
	}

	
	.select-filter-label { 
		margin: -15px 15px 0 0;
	}

	a.selectBox {
		display: inline-block !important;
	}

	.selectBox-label {
		color: var(--alternate-text-color);
		border-radius: 4px;
		box-sizing: border-box;
		display: block;
		float: left;
		font: var(--default-font-size) 'Source Sans Pro', sans-serif;
		height: 32px;
		line-height: 32px;
		padding-left: 15px;
		text-align: left;
		width: calc(100% - 35px);
	}

	.selectBox-arrow {
		background: none;
		background-size: 15px auto;
		float: right;
		height: 32px;
		vertical-align: middle;
		width: 35px;
	}
	.selectBox-arrow:after {
		background-color: #000;
		clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
		content: '';
		display: block;
		height: 4px;
		position: absolute;
		right: 15px;
		top: 50%;
		transform: translateY(-50%);
		width: 8px;
	}

	.inspiration-gallery-filters .select-filter-wrap {
		display: inline-block;
		float: none;
		margin: 0 25px 5px 0;
		vertical-align: middle;
	}

	.inspiration-gallery-filters .select-filter-wrap:last-of-type {
		margin-right: 0;
	}

	/* Dropdown control */
	.inspiration-gallery-filters input, 
	.inspiration-gallery-filters textarea {
		background-color: #fff;
		border: none;
		border-radius: 4px;
		color: var(--alternate-text-color);
		cursor: pointer;
		font-size: 14px;
		font-weight: 400;
		height: 32px;
		letter-spacing: .2px;
	}

	.inspiration-gallery-filters select {
		-webkit-transition: all .3s ease;
		transition: all .3s ease;
	}

	.inspiration-gallery-filters select,
	select#grid_category_id {
		background: url(/images/icons/filter-arrow.svg) 95% 50% no-repeat;
		background-color: #fff;
		background-size: 15px auto;
		-webkit-appearance: none;
		border: 1px solid #CCC;
		border-radius: 4px;
		box-shadow: none;
		color: var(--alternate-text-color);
		cursor: pointer;
		display: none;
		font-size: 16px;
		font-weight: 400;
		float: none;
		height: 42px;
		margin: 0;
		min-width: 220px;
		outline: none;
		overflow: hidden;
		padding-left: 10px;
		position: relative;
		text-decoration: none;
		-webkit-transition: all .3s ease;
		transition: all .3s ease;
		vertical-align: middle;
	}

	.inspiration-gallery-filters select.selected,
	.inspiration-gallery-filters select:hover {
		background: none;
	}

	.selectBox-dropdown {
		border: 1px solid #CCC;
		background: #fff;
		border-radius: 4px;
		cursor: pointer;
		display: inline-block;
		float: none;
		height: 32px;
		margin: 0;
		min-width: 220px;
		outline: none;
		overflow: hidden;
		padding: 4px;
		position: relative;
		text-decoration: none;
		-webkit-transition: background .3s ease;
		transition: background .3s ease;
		vertical-align: middle;
		z-index: 5;
	}

	.selectBox-dropdown.selectBox-menuShowing {
		background: #fff;
		border: 1px solid #CCC;
		border-radius: 4px;
		padding: 4px;
	}

	/* Dropdown menu */
	.selectBox-dropdown-menu {
		background: #fff;
		border: 1px solid #CCC;
		border-top: none;
		border-bottom-left-radius: 4px;
		border-bottom-right-radius: 4px;
		box-sizing: border-box;
		cursor: pointer;
		font-family: 'Roboto', sans-serif;
		font-size: 14px;
		font-weight: 400;
		letter-spacing: .2px;
		max-height: 350px;
		min-width: 222px;
		overflow: auto;
		padding: 10px 0;
		position: absolute;
		text-transform: none;
		-webkit-transition: all .4s ease;
		transition: all .4s ease;
		z-index: 5;
	}

	/* Inline control */
	.selectBox-inline {
		background: #fff;
		border-radius: 4px;
		display: inline-block;
		outline: none;
		overflow: auto;
		width: 250px;
	}

	.selectBox-inline:focus {
		border-color: #fff;
	}


	/* Options */
	.selectBox-options {
		box-sizing: border-box;
		margin: 0;
		padding: 0;
	}

	.selectBox-options li,
	.selectBox-options li a {
		box-sizing: border-box;
		color: var(--alternate-text-color);
		font-weight: normal;
		display: block;
		list-style: none;
		padding: 0;
		margin: 0;
	}

	.selectBox-options li a {
		font: 400 var(--default-font-size) 'Source Sans Pro',sans-serif;
		letter-spacing: .2px;
		line-height: 42px;
		overflow: hidden;
		padding: 0 0 0 15px;
		text-decoration: none;
		white-space: nowrap;
	}

	.selectBox-options li:last-of-type a {
		border-bottom: none;
	}

	.selectBox-options li.selectBox-hover a {
		background: #E9EEF2;
	}

	.selectBox-options li.selectBox-disabled a {
		color: rgba(255,255,255,0.2);
		background-color: transparent;
	}

	.selectBox-options li.selectBox-selected a {
		background: #E9EEF2;
	}

	.selectBox-options .selectBox-optgroup {
		color: #000;
		background: #E9EEF2;
		line-height: 1.5;
		padding: .3em;
		white-space: nowrap;
	}


	/* Disabled state */
	.selectBox.selectBox-disabled {
		color: rgba(255,255,255,0.2) !important;
	}

	.selectBox-dropdown.selectBox-disabled .selectBox-arrow {
		opacity: .5;
		filter: alpha(opacity=50);
		border-color: rgba(255,255,255,0.2);
	}

	.selectBox-inline.selectBox-disabled {
		color: rgba(255,255,255,0.2) !important;
	}

	.selectBox-inline.selectBox-disabled .selectBox-options a {
		background-color: transparent !important;
	}
}

@media (max-width: 1100px) {
	.page-type-16 .inspiration-gallery-list .masonry-item {
		top: 0 !important;
		width: calc(50%);
	}
}
@media (max-width: 1024px) {
	.page-type-16 .inspiration-gallery-list .masonry-item .title {
		background-color: transparent;
		bottom: auto;
		top: 50%;
		transform: translateY(-50%);
	}
}
@media screen and (max-width: 768px) {
	.page-type-16 .inspiration-gallery-list .masonry-item {
		top: 0 !important;
		width: calc(100%);
	}
	.page-type-16 .inspiration-gallery-list .masonry-item a .title {
		background-color: rgba(0,0,0,0.7);
		bottom: 0;
		filter: blur(0px);
		margin: 0;
		opacity: 1;
		top: auto;
		transform: none;
	}
	.inspiration-gallery-list .masonry-item a .image:before {
		display: none;
	}
}

/* -------------------------------------- */
/* Community Sign Up -------------------- */
/* -------------------------------------- */
.page-type-29 input[type="text"], 
.page-type-29 select, 
.page-type-29 textarea,
input.cellphone {
	width: auto;
}

#frontend-edit-crm-member-profile-form .button:last-child {
	display: none;
}

@media (max-width: 550px) {
	.page-type-29 .form tr td {
		display: block;
		width: 100%;
	}

	.page-type-29 .form tr td:first-child {
		border-bottom: 0;
		padding-bottom: 0;
	}
}

/* -------------------------------------- */
/* Image Link Grid ---------------------- */
/* -------------------------------------- */

@media (max-width: 500px) {
	.page-type-25 .middle-area {
		padding: 30px 0 0;
	}
	.page-type-25 .intro-text .ss-section-wrap-inner {
		margin: 0;
	}
}

/* -------------------------------------- */
/* Forums ------------------------------- */
/* -------------------------------------- */
.page-type-33 .breadcrumbs-wrap {
	margin-bottom: 10px;
}

.page-type-33 .breadcrumbs-wrap a {
	margin-left: 5px;
}

.page-type-33 .breadcrumbs-wrap a:first-child {
	margin-left: 0;
}

.page-type-33 .breadcrumbs-wrap a:last-child {
	font-weight: 700;
}

.page-type-33 .button {
	font-size: 14px;
	padding: 10px 15px;
	line-height: 100%;
}

.forum-topic-search-form {
	position: relative;
}

.forum-topic-search-form input[type=text] {
	padding-right: 65px;
}

.forum-topic-search-form input[type=submit] {
	background: url(/images/icons/search-icon.svg) 50% 50% no-repeat;
	border: 0;
	cursor: pointer;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	transition: opacity 0.2s linear;
	text-indent: -9999px;
	width: 50px;
	z-index: 1;
}

.forum-thread .small-action-button {
	background: none;
	border: 1px solid var(--primary-color);
	color: var(--primary-color);
	font-size: 14px;
	letter-spacing: 1px;
}

.forum-thread .small-action-button:hover {
	background: var(--primary-color);
	color: #fff;
}

.like-this-button .counter {
	line-height: 100%;
	padding: 3px 5px;
}

.edit-thread-button {
	float: right;
	margin-left: 5px;
}

.quote-this-button {
	margin-left: 5px;
}

.page-type-33 .submit-wrap .button {
	margin-right: 10px;
}

@media (max-width: 500px) {
	.forum-page-wrap .actions-bar .button {
		box-sizing: border-box;
		float: none;
		margin: 0 10px 10px 0;
		width: calc(50% - 5px);
	}

	.forum-page-wrap .actions-bar .button:nth-child(2n) {
		margin-right: 0;
	}

	.forum-page-wrap .actions-bar .upper-pager {
		clear: both;
		float: none;
	}

	.forum-thread {
		padding: 20px;
	}

	.forum-thread .thread-header .thread-title {
		margin-bottom: 10px;
	}
	
	.forum-thread .thread-header .thread-info {
		float: none;
		padding: 10px 0;
	}

	.forum-thread .thread-header .thread-info > div {
		display: inline-block;
		margin-right: 10px;
	}

	.forum-thread .thread-header .thread-author-image {
		clear: both;
		float: left;
		position: static;
		margin-right: 10px;
	}

	.forum-thread .thread-header .small-action-button {
		margin-bottom: 10px;
	}

	.forum-thread:first-child .thread-header .small-action-button {
		margin-bottom: 0;
	}

	.forum-thread .thread-header .thread-title {
		clear: both;
	}
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Toggle More ----------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.toggle-more-link {
	margin-bottom: 1px;
}

.toggle-more-link:last-child {
	margin-bottom: 20px;
}

.toggle-more-link a {
	background: var(--primary-color);
	box-sizing: border-box;
	color: #fff;
	display: block;
	font-weight: 700;
	opacity: 1;
	padding: 14px 30px 14px 20px;
	position: relative;
	text-transform: uppercase;
	transition: background-color 0.25s ease;
}

.toggle-more-link:hover a,
.toggle-more-link.selected a {
	background: var(--secondary-color);
	text-decoration: none;
}

.toggle-more-link a:after {
	color: #fff;
	content: '+';
	float: right;
	font-size: 20px;
	position: absolute;
	right: 20px;
	text-align: center;
	top: 50%;
	transform: translateY(-50%);
	width: 20px;
}

.toggle-more-link.selected a:after {
	content: '-';
}

.toggle-more-content {
	display: none;
	padding: 20px;
}

/* ----------------------------------------------------------------------------------------------------------------------- */
/* Global Site Alerts ---------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */

#global-site-alert-popup {
	top: 50% !important;
	transform: translateY(-50%);
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Homepage ------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
/* -------------------------------------- */
/* Homepage at Top ---------------------- */
/* -------------------------------------- */
@media (min-width: 961px) {
	body.page-index.nav-style-hamburger {
		padding-top: 0;
	}
	
	body.page-index.nav-style-hamburger .header {
		transition: top 0.4s ease;
	}

	body.page-index.nav-style-hamburger.at-top .header {
		background: none;
		box-shadow: none;
		height: auto;
		position: static;
		top: -100px;
		transition: none;
	}

	body.page-index.nav-style-hamburger.scrolled .header {
		top: 0;
	}

	body.page-index.nav-style-hamburger.at-top .header .logo {
		background-size: contain;
		background: url(/images/template/st-gabriel-school-logo-white.svg) 50% 50% no-repeat;
		height: 131px;
		left: 50%;
		top: 80px;
		transform: translateX(-50%);
		width: 206px;
		z-index: 50;
	}

	body.page-index.nav-style-hamburger.at-top .header .logo img {
		display: none;
	}

	body.page-index.nav-style-hamburger.at-top .header > .header-quick-links {
		left: 80px;
		top: 80px;
		transform: none;
		z-index: 50;
	}

	body.page-index.nav-style-hamburger .header-quick-links ul li a {
		transition: border 0.2s ease, color 0.2s ease;
	}

	body.page-index.nav-style-hamburger.at-top .header > .header-quick-links ul li a {
		color: #fff;
	}

	body.page-index.nav-style-hamburger.at-top .header > .header-quick-links ul li a:hover {
		border-bottom: 1px solid #fff;
	}

	body.page-index.nav-style-hamburger.at-top .header > .header-search-form {
		border-right: 1px solid #fff;
		right: 150px;
		top: 80px;
		transform: none;
		z-index: 50;
	}

	body.page-index.nav-style-hamburger.at-top .header .header-search-form .submit {
		background-image: url(/images/icons/search-icon-white.svg);
	}

	body.page-index.nav-style-hamburger.at-top.show-search .header .header-search-form .submit {
		background-image: url(/images/icons/search-icon.svg);
	}
	
	body.page-index.nav-style-hamburger.at-top .nav-toggle {
		right: 80px;
		top: 86px;
		transform: none;
		z-index: 51;
	}

	body.single-level-nav.show-nav.page-index.nav-style-hamburger.at-top .nav-toggle {
		right: 40px;
	}

	body.page-index.nav-style-hamburger.at-tip-top.loaded .nav-toggle {
		transition: top 0.2s ease;
	}

	body.page-index.nav-style-hamburger.at-tip-top.show-nav .nav-toggle {
		top: 37px;
	}

	body.page-index.nav-style-hamburger.at-top .nav-toggle span, 
	body.page-index.nav-style-hamburger.at-top .nav-toggle:before,
	body.page-index.nav-style-hamburger.at-top .nav-toggle:after {
		background-color: #fff;
	}

	body.single-level-nav.page-index.nav-style-hamburger.at-top.show-nav .nav-toggle span,
	body.single-level-nav.page-index.nav-style-hamburger.at-top.show-nav .nav-toggle:before,
	body.single-level-nav.page-index.nav-style-hamburger.at-top.show-nav .nav-toggle:after {
		background: #fff;
	}	

	body.page-index.nav-style-hamburger.at-top .primary-nav-wrap {
		z-index: 50;
	}
}

@media (min-width: 961px) {
	body.page-index.nav-style-hamburger.show-nav .nav-toggle span, 
	body.page-index.nav-style-hamburger.show-nav .nav-toggle:before,
	body.page-index.nav-style-hamburger.show-nav .nav-toggle:after {
		background-color: var(--primary-color);
	}
	body.page-index.nav-style-horizontal-original.show-nav .nav-toggle span, 
	body.page-index.nav-style-horizontal-original.show-nav .nav-toggle:before,
	body.page-index.nav-style-horizontal-original.show-nav .nav-toggle:after {
		background-color: #fff;
	}
}

body.page-index .middle-area {
	padding: 0;
}

body.page-index .ss-section-wrap {
	margin-left: 40px;
	margin-right: 40px;
}
.ss-section-wrap.scrolling-images-section {
	margin: 0 !important;
	max-width: none;
	overflow: hidden
}

body.page-index .ss-section-wrap.has-background-image {
	color: #fff;
	position: relative;
	z-index: 0;
}
body.page-index .ss-section-wrap.has-background-image h2,
body.page-index .ss-section-wrap.has-background-image h3,
body.page-index .ss-section-wrap.has-background-image h4,
body.page-index .ss-section-wrap.has-background-image h5,
body.page-index .ss-section-wrap.has-background-image h6 {
	color: #fff;
}
body.page-index .ss-section-wrap.has-background-image:after {
	background-color: var(--default-text-color);
	bottom: 0;
	content: '';
	display: block;
	left: 0;
	opacity: 0.8;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
}

body.page-index .ss-section-wrap-inner {
	max-width: none;
	margin: 0 auto;
}

body.page-index .ss-content-block.col-1 {
	margin: 0;
	width: 100%;
}

@media (max-width: 768px) {
	body.page-index .ss-section-wrap {
		margin-left: 20px;
		margin-right: 20px;
	}
}
@media (max-width: 500px) {
	body.page-index .ss-section-wrap.quick-links-section .ss-section-wrap-inner .responsive-grid-layout-row {
		display: flex;
		flex-direction: column;
	}
	body.page-index .ss-section-wrap.quick-links-section .ss-section-wrap-inner .responsive-grid-layout-row .col {
		width: auto;
	}
}
 
/* -------------------------------------- */
/* Homepage Banner ---------------------- */
/* -------------------------------------- */
.stage:not(.cycle-loaded) .slide:not(.placeholder) { display: none; }

.homepage-banner {
	background: #000;
	margin-top: 40px;
	margin-bottom: 100px;
}

.homepage-banner .slide:before {
	background: #000;
	background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1));
	bottom: 0;
	content: '';
	left: 0;
	opacity: 0.7;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}

.homepage-banner .embedded-gallery .slide {
	overflow: hidden;
	max-height: calc(100vh - 80px);
}

.homepage-banner .embedded-gallery .slide .ss-youtube-vimeo-player {
	background-color: #000;
	bottom: 0; 
	left: 0;
	overflow: hidden;
	position: relative;
	pointer-events: none;
	min-height: calc(100vh - 80px);
	right: 0;
	top: 0; 
} 

.homepage-banner .embedded-gallery .slide .ss-youtube-vimeo-player iframe {
	left: 50%;
	max-width: none;
	min-height: calc(100vh - 80px);
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100vw;
}

@media (min-aspect-ratio: 16/9) {
	.homepage-banner .embedded-gallery .slide .ss-youtube-vimeo-player iframe { 
		/* height = 100 * (9 / 16) = 56.25 */
		min-height: 56.25vw;
	}
}

@media (max-aspect-ratio: 16/9) {
	.homepage-banner .embedded-gallery .slide .ss-youtube-vimeo-player iframe { 
		/* width = 100 / (9 / 16) = 177.777777 */
		width: 177.78vh;
	}
}

.homepage-banner .embedded-gallery .slide .caption {
	background: none;
	box-shadow: none;
	display: block !important;
	height: auto !important;
	margin: 0 !important;
	padding: 30px 30px 75px 30px !important;
	text-align: center;
	z-index: 2;
}

.homepage-banner .embedded-gallery .slide .caption p {
	color: #fff;
	font-family: 'Jost', sans-serif;
	font-size: 38px;
	letter-spacing: 9.88px;
	line-height: 100%;
	text-transform: uppercase;
}

.homepage-banner .embedded-gallery .slide .caption p:nth-child(2) {
	font-family: 'Bodoni Moda', serif;
	font-size: 110px;
	font-style: italic;
	letter-spacing: 2.2px;
	text-transform: none;
	line-height: 100%;
	margin-bottom: 75px;
}

.homepage-banner .embedded-gallery .slide .caption p .button {
	line-height: 100%;
	padding: 23px 50px;
}

.video-banner-section .ss-section-wrap-inner {
	position: relative;
}
.video-banner-section .col-1:first-child {
	z-index: 0;
}
.video-banner-section .col-1:first-child:after {
	background: rgba(0,0,0,0.3);
	bottom: 25px;
	content: '';
	display: block;
	left: 0;
	position: absolute;
	right: 0;
	top: 25px;
	z-index: 10;
}
.video-banner-section .col-1:last-child {
	background: none;
	bottom: 0;
	box-shadow: none;
	display: block !important;
	height: auto !important;
	margin: 0 !important;
	padding: 30px 30px 75px 30px !important;
	position: absolute;
	text-align: center;
	z-index: 10;
}

.video-banner-section .col-1:last-child p {
	color: #fff;
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 38px;
	font-weight: 500;
	letter-spacing: 2px;
	line-height: 100%;
	text-transform: uppercase;
}

.video-banner-section .col-1:last-child p:nth-child(2) {
	font-family: 'Roboto Condensed', serif;
	font-size: 110px;
	font-style: normal;
	font-weight: 500;
	letter-spacing: 0px;
	text-transform: none;
	line-height: 100%;
	margin-bottom: 75px;
}

.video-banner-section .col-1:last-child p .button {
	line-height: 100%;
	padding: 23px 50px;
}

@media (max-width: 1300px) {
	.homepage-banner .embedded-gallery .slide .caption {
		padding-bottom: 45px !important;
	}

	.homepage-banner .embedded-gallery .slide .caption p {
		font-size: 28px;
		letter-spacing: 6px;
	}

	.homepage-banner .embedded-gallery .slide .caption p:nth-child(2) {
		font-size: 88px;
		letter-spacing: 1px;
		margin-bottom: 45px;
	}

	.homepage-banner .embedded-gallery .slide .caption p .button {
		padding: 17px 30px;
	}
}

@media (max-width: 1024px) {
	.homepage-banner {
		margin-bottom: 50px;
	}

	.homepage-banner .embedded-gallery .slide .caption p,
	.video-banner-section .col-1:last-child p {
		font-size: 22px;
	}

	.homepage-banner .embedded-gallery .slide .caption p:nth-child(2),
	.video-banner-section .col-1:last-child p:nth-child(2) {
		font-size: 75px;
	}
}

@media (max-width: 960px) {
	.homepage-banner .embedded-gallery .slide {
		max-height: calc(100vh -  180px);
	}

	.homepage-banner .embedded-gallery .slide .ss-youtube-vimeo-player,
	.homepage-banner .embedded-gallery .slide .ss-youtube-vimeo-player iframe {
		min-height: calc(100vh -  180px);
	} 

	.homepage-banner .embedded-gallery .slide .caption,
	.video-banner-section .col-1:last-child {
		bottom: auto;
		padding: 30px !important;
		top: 50%;
		transform: translateY(-50%);
	}

	.homepage-banner .embedded-gallery .slide .caption p,
	.video-banner-section .col-1:last-child p {
		font-size: var(--default-font-size);
		letter-spacing: 3px;
	}

	.homepage-banner .embedded-gallery .slide .caption p:nth-child(2),
	.video-banner-section .col-1:last-child p:nth-child(2) {
		font-size: 68px;
		margin-bottom: 35px;
	}

	.homepage-banner .embedded-gallery .slide .caption p .button,
	.video-banner-section .col-1:last-child p .button {
		padding: 14px 24px;
	}
}

@media (max-width: 768px) {
	.homepage-banner .embedded-gallery .slide {
		max-height: calc(100vh -  140px);
	}

	.homepage-banner .embedded-gallery .slide .ss-youtube-vimeo-player,
	.homepage-banner .embedded-gallery .slide .ss-youtube-vimeo-player iframe {
		min-height: calc(100vh -  140px);
	} 

	.homepage-banner {
		margin-top: 20px;
	}

	.homepage-banner .embedded-gallery.static-page-inline-gallery .slide {
		min-height: 500px;
	}
	.video-banner-section .col-1:first-child:after {
		bottom: 0;
		top: 0;
	}
}

@media (max-width: 600px) {
	.homepage-banner .embedded-gallery .slide {
		max-height: calc(100vh -  115px);
	}

	.homepage-banner .embedded-gallery .slide .ss-youtube-vimeo-player,
	.homepage-banner .embedded-gallery .slide .ss-youtube-vimeo-player iframe {
		min-height: calc(100vh -  115px);
	} 
}

@media (max-width: 500px) {
	.homepage-banner .embedded-gallery .slide .caption p,
	.video-banner-section .col-1:last-child p {
		font-size: 15px;
		letter-spacing: 2px;
	}

	.homepage-banner .embedded-gallery .slide .caption p:nth-child(2),
	.video-banner-section .col-1:last-child p:nth-child(2) {
		font-size: 45px;
		margin-bottom: 25px;
	}

	.homepage-banner .embedded-gallery .slide .caption p .button,
	.video-banner-section .col-1:last-child p .button {
		padding: 14px 24px;
		font-size: 12px;
	}

	.homepage-banner .embedded-gallery.static-page-inline-gallery .slide {
		min-height: 70vh;
	}
}

/* -------------------------------------- */
/* Homepage Section #1 ------------------ */
/* -------------------------------------- */
.homepage-section-1 {
	margin-bottom: 100px;
}

@media (min-width: 769px) {
	.homepage-section-1 .ss-content-block.col-2 {
		margin: 0;
		vertical-align: middle;
		width: 50%;
	}

	.homepage-section-1 .ss-content-block:first-child {
		padding: 20px 75px 20px 50px;
	}
}

@media (min-width: 769px) and (max-width: 1024px) {
	.homepage-section-1 .ss-content-block:first-child {
		padding: 20px 50px 20px 0;
	}
}

@media (max-width: 1024px) {
	.homepage-section-1 {
		margin-bottom: 50px;
	}
}

@media (max-width: 768px) {
	.homepage-section-1 .ss-content-block.col-2 {
		display: block;
		margin-bottom: 80px;
		width: 100%;
	}

	.homepage-section-1 .ss-content-block.col-2:last-child {
		margin-bottom: 0;
	}
}

.homepage-section-1 .ss-content-block:first-child p:last-child {
	margin-top: 40px;
}

/* -------------------------------------- */
/* Homepage Section #2 ------------------ */
/* -------------------------------------- */
.homepage-section-2 {
	margin-bottom: 70px;
	padding: 45px;
}

@media (min-width: 768px) {
	.homepage-section-2 .ss-content-block.col-2 {
		margin: 0;
		vertical-align: middle;
		width: 50%;
	}

	.homepage-section-2 .ss-content-block:last-child {
		padding: 20px 50px 20px 75px;
	}
}

@media (min-width: 769px) and (max-width: 1024px) {
	.homepage-section-2 .ss-content-block:last-child {
		padding: 20px 20px 20px 50px;
	}
}

.homepage-section-2 .ss-content-block:last-child p:last-child {
	margin-top: 40px;
}

.homepage-section-2 .ss-content-block:first-child img {
	box-shadow: 0 20px 40px rgba(0,0,0,0.16);
	display: block;
	width: 100% !important;
}

@media (max-width: 660px) {
	.homepage-section-2 {
		padding: 25px;
	}
}

/* -------------------------------------- */
/* Homepage Equal Heights Boxes --------- */
/* -------------------------------------- */
body.page-index .equal-heights {
	margin-bottom: 100px;
}

@media (max-width: 660px) {
	body.page-index .equal-heights {
		margin-bottom: 50px;
	}
}

/* -------------------------------------- */
/* Homepage News Feed ------------------- */
/* -------------------------------------- */
.homepage-news-feed {
	padding: 40px 30px 30px 30px;
}

@media (min-width: 768px) {
	.homepage-news-feed {
		padding: 80px 0 0 0;
	}
}