/* ======== Providence SB ====== */
/*       (SCHOOL TEMPLATE C)     */
/* ========== Main CSS ========= */

/************* FONTS *************/
/*
	font-family: 'EB Garamond', serif;
*/

/*********** VARIABLES ***********/

:root {
    --default-font-color: #0b2343;
    --default-font-family: 'EB Garamond', serif;
    --default-font-size: 16px;
	--alt-font-family: 'EB Garamond', serif;
	--primary-color: #a41e22;
    --secondary-color: #0b2343;
	--tertiary-color: #f4c22b;
	--quartiary-color: #0b2343;
	--callout-section-primary-color: var(--quartiary-color);
	--callout-section-secondary-color: var(--tertiary-color);
}

/*********************************/

body,
html {
	height: 100%;
}
 
body {
	background: #fff;
	box-sizing: border-box;
	color: #282B2C;
	display: flex;
	flex-direction: column;
	font-family: 'Roboto',sans-serif;
	font-size: 18px;
	font-weight: 400;
	margin: 0;
	padding: 120px 0 0;
}

a {
	color: var(--primary-color);
	font-weight: 700;
	text-decoration: none;
}

a:hover {
	color: #282B2C;
	text-decoration: none;
}

h1, h2, h3, h4, h5, h6,
.h2-style, .h3-style, .h4-style, .h5-style, .h6-style {
	font-family: var(--default-font-family);
	font-weight: 500;
	margin: 0 0 15px;
	padding: 0;
}

h1 {
	color: var(--quartiary-color);
	font-size: 60px;
	margin: 0;
}

.page-index .h1-alt {
	font-family: 'Roboto',sans-serif;
	font-size: 48px;
	font-weight: 400;
}

h2, .h2-style {
	color: var(--quartiary-color);
	font-size: 36px;
}

h3, .h3-style {
	color: var(--quartiary-color);
	font-size: 22px;
}

h4, .h4-style {
	font-size: 26px;
	font-weight: 400;
}

h5, .h5-style {
	font-size: 24px;
	font-weight: 700;
}

h6, .h6-style {
	font-size: 22px;
	font-weight: 700;
}

p, 
.ss-content-block ul,
.ss-content-block ol {
	line-height: 200%;
}
.ss-content-block ul,
.ss-content-block ol {
	padding-left: 18px
}

p {
	line-height: 177%;
	margin: 0 0 20px 0;
	padding: 0;
}

.hr {
	border-bottom: 1px solid #c2c2c2;
	margin: 15px 0;
}

hr {
	display: none;
}

iframe {
	display: inline-block;
	margin: 0 0 20px 0;
	max-width: 100%;
}

cite {
	background: #fff;
	border-left: 3px solid #707070;
	display: block;
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	font-style: normal;
	line-height: 120%;
	margin-top: 15px;
	padding: 5px 0 0 10px;	
}

cite a {
	text-transform: uppercase;
}

.strong {
	font-weight: 700;
	color: var(--primary-color);
}

.arrow-link {
	padding-right: 20px;
	position: relative;
}
.arrow-link:after {
	background-color: var(--primary-color);
	content: '';
	display: block;
	height: 8px;
	-webkit-mask-image: url(/images/icons/arrow-right.svg?v=0.01);
	-webkit-mask-position: 50%;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: 8px;
	pointer-events: none;
	position: absolute;
	right: 5px;
	top: 5px;
	transition: right 0.3s ease;
	width: 8px;
}
.arrow-link:hover:after {
	right: 0;
}

/********* Alternate Nav *********/

body.alternate-header {
	padding-top: 70px;
}
@media (max-width: 1100px) {
	body.alternate-header {
		padding-top: 60px;
	}
}
@media (max-width: 1024px) {
	.page-index .h1-alt {
		font-size: 30px;
	}
}
@media (max-width: 550px) {
	.page-index .h1-alt {
		font-size: 22px;
	}
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Global Content Box Overrides ----------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.ss-section-wrap {
	font-size: inherit;
}

.ss-content-block {
	margin-bottom: 10px;
}

.inner-content-block-wrap {
	padding: 20px 40px;
}

.ss-section-wrap:first-child .inner-content-block-wrap {
	padding-bottom: 60px;
	padding-top: 60px;
}

.ss-content-block.image-block .inner-content-block-wrap {
	padding: 0;
}

.ss-content-block.image-block img {
	margin: 0 auto;
	display: block;
}

.page-type-0 .main-content { 
	padding-bottom: 35px; 
}

.ss-accordion-content-wrap:first-child:last-child {
	margin-bottom: -30px;
}
.ss-content-block:last-child .ss-accordion-content-wrap:first-child:last-child {
	margin-bottom: 0;
}
.ss-accordion-content-wrap .ss-accordion-toggle {
	background-color: var(--secondary-color);
	color: #fff;
	font-size: 21px;
	letter-spacing: 0.02em;
	text-transform: none;
}
.ss-accordion-content-wrap:hover .ss-accordion-toggle,
.ss-accordion-content-wrap.show .ss-accordion-toggle {
	background-color: var(--primary-color);
}
.ss-accordion-content-wrap .ss-accordion-toggle .ss-accordion-toggle-icon:before,
.ss-accordion-content-wrap .ss-accordion-toggle .ss-accordion-toggle-icon:after {
	background-color: #fff;
}

@media only screen and (min-width: 550px) {
	.ss-content-block.col-2-3, 
	.ss-content-block.col-3,
	.ss-content-block.col-2-5, 
	.ss-content-block.col-3-4,
	.ss-content-block.col-4,
	.ss-content-block.col-4-5, 
	.ss-content-block.col-5 {
		display: block;
		margin-left: 0;
		margin-right: 0;
		width: auto;
	}
}

@media only screen and (min-width: 980px) {
	.ss-content-block.col-2-3, 
	.ss-content-block.col-3,
	.ss-content-block.col-2-5, 
	.ss-content-block.col-3-4,
	.ss-content-block.col-4,
	.ss-content-block.col-4-5, 
	.ss-content-block.col-5 {
		display: inline-block;
		margin-left: 5px;
		margin-right: 5px;
	}
	
	.ss-content-block.col-2-3 {
		width: calc(100% * 2/3 - 10px);
	}	
	
	.ss-content-block.col-3 {
		width: calc(100% * 1/3 - 10px);
	}	

	.ss-content-block.col-5 {
		width: calc(20% - 10px);
	}

	.ss-content-block.col-2-5 {
		width: calc(40% - 10px);
	}

	.ss-content-block.col-3-5 {
		width: calc(60% - 10px);
	}

	.ss-content-block.col-4-5 {
		width: calc(80% - 10px);
	}
}

@media only screen and (min-width: 1024px) {
	.ss-content-block.col-1 {
		margin-left: 5px;
		margin-right: 5px;
		width: calc(100% - 10px);
	}
	
	.ss-content-block.col-2, 
	.ss-content-block.col-3-5 {
		display: inline-block;
		margin-left: 5px;
		margin-right: 5px;
	}
	
	.ss-content-block.col-2 {
		width: calc(50% - 10px);
	}	
	
	.ss-content-block.col-4 {
		width: calc(25% - 10px);
	}
	
	.ss-content-block.col-3-4 {
		width: calc(75% - 10px);
	}
}

.wrapper {
	margin: 0 45px;
	position: relative;
}

.middle-area .wrapper {
	max-width: 1300px;
	margin: 0 auto;
}

.page-type-0 .middle-area .wrapper {
	max-width: none;
	margin: 0;
}

.ss-section-wrap-inner {
	margin-left: 10px;
	margin-right: 10px;
}

@media screen and (min-width: 980px) {
	.ss-section-wrap-inner {
		display: flex;
		flex-wrap: wrap;
	}
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Header --------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.header {
	background: #fff;
	box-shadow: 0 3px 6px rgba(0,0,0,0.16);
	box-sizing: border-box;
	height: 120px;
	left: 0;
	padding-top: 50px;
	position: fixed;
	right: 0;
	top: 0;
	-webkit-transition: height 0.3s ease, padding-top 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
	transition: height 0.3s ease, padding-top 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease;
	z-index: 100;
}

.header,
.header a {
	color: var(--default-font-color);
}

.header a:hover {
	color: var(--primary-color);
}

@media screen and (min-width: 1000px) {
	body.scrolled-down .header {
		height: 70px;
		padding-top: 0;
	}
}

/********* Alternate Nav *********/

@media (min-width: 1100px) {
	body.alternate-header .header {
		
		height: 70px;
		padding-top: 0;
	}

	body.alternate-header.at-top.page-index .header {
		background: transparent;
		box-shadow: none;
	}
	body.alternate-header.at-top.page-index .header .nav-toggle {
		align-items: center;
		background-color: var(--primary-color);
		border-radius: 4px;
		display: flex;
		height: 44px;
		justify-content: center;
		right: 30px;
		top: 30px;
		width: 44px;
	}
	body.alternate-header.at-top.page-index.nav-active .nav-toggle {
		background-color: transparent;
		right: 0;
		top: 23px;
	}
	body.alternate-header .header .nav-toggle {
		align-items: center;
		cursor: pointer;
		display: flex;
		float: right;
		height: 44px;
		justify-content: center;
		right: 15px;
		position: fixed;
		top: 14px;
		width: 44px;
		z-index: 101;
	}
}

/* Header Quick Links ------------------------------------------------ */
.header-quick-links {
	background: var(--quartiary-color);
	box-sizing: border-box;
	box-shadow: 0 3px 6px rgba(0,0,0,0.16);
	font-family: var(--default-font-family);
	font-size: 16px;
	height: 50px;
	left: 0;
	line-height: 50px;
	padding: 0;
	position: fixed;
	right: 0;
	top: 0;
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
	z-index: 999;
}

.header-quick-links,
.header-quick-links a {
	font-size: 18px;
	font-weight: 400;
}

@media screen and (min-width: 1100px) {
	body.scrolled-down .header-quick-links {
		box-shadow: none;
		top: -50px;	
	}

	.header-quick-links,
	.header-quick-links a {
		color: #fff;
	}

	.header-quick-links .left-side {
		float: left;
		margin-left: 45px;
		width: max-content;
	}

	.header-quick-links .left-side p {
		line-height: 48px;
	}
	
	.header-quick-links .right-side {
		float: right;
		height: 50px;
	}
}

.header-quick-links ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

@media screen and (min-width: 1100px) {
	.header-quick-links ul li {
		float: left;
		height: 50px;
		padding: 0 0 0 10px;
	}

	.header-quick-links ul li:before {
		background-color: rgba(255,255,255,0.5);
		content: '';
		display: inline-block;
		height: 20px;
		margin-left: 0px;
		margin-right: 10px;
		padding-right: 0px;
		transform: translateY(3px);
		width: 1px;
	}
	.alternate-header .header-quick-links ul li:before {
		color: #ccc;
	}

	.header-quick-links ul li:first-child {
		border-left: 0;
		padding-left: 0;
	}

	.header-quick-links ul li:first-child:before,
	.header-quick-links .right-side ul li:last-child:before {
		display: none;
	}
}

.header-quick-links ul li a {
	color: #fff;
	font-family: 'Roboto',sans-serif;
	font-size: 18px;
	font-weight: 500;
	line-height: normal;
	-webkit-transition: color .2s ease, background-color .2s ease;
	transition: color .2s ease, background-color .2s ease;
}
.header-quick-links .right-side ul li:not(:last-child) a {
	display: inline-block;
	transform: translateY(1px);
}
.header-quick-links .right-side ul li:not(:last-child) a:hover {
	color: #cce0ff;
}

.header-quick-links ul li a:hover {
	color: var(--primary-color);
}

.header-quick-links .right-side ul li:last-child {
	border-left: 0;
	height: 50px;
	padding-left: 40px;
	position: relative;
}

@media screen and (min-width: 1100px) {
	body .header .header-quick-links .right-side ul li:last-child a {
		align-items: center;
		background: var(--primary-color);
		box-sizing: border-box;
		color: #fff;
		display: inline-flex;
		font-family: 'Roboto',sans-serif;
		font-weight: 500;
		height: 100%;
		padding: 8px 10px;
	}

	.header-quick-links .right-side ul li:last-child a:hover {
		background-color: #707070;
	}
}

/********* Alternate Nav *********/

@media (min-width: 1100px) {
	body.alternate-header .header-quick-links {
		box-shadow: none;
		top: 70px;
	}
	body.alternate-header .nav-toggle {
		transition: background-color 0.3s ease, right 0.3s ease, top 0.3s ease, width 0.3s ease;
	}
	body.alternate-header .nav-toggle span {
		height: 2px;
		position: absolute;
		transition: all .3s ease;
		width: 24px;
	}
	body.alternate-header .nav-toggle span {
		background-color: var(--default-font-color);
	}
	body.alternate-header.nav-active .nav-toggle {
		background-color: transparent;
		top: 23px;
		width: 35px;
	}
	body.alternate-header.page-index.at-top:not(.nav-active) .nav-toggle span {
		background-color: white;
	}
	body.alternate-header .hamburger-first {
		top: 14px;
	}
	body.alternate-header .hamburger-second {
		top: 21px;
	}
	body.alternate-header .hamburger-third {
		top: 28px;
	}
	body.alternate-header.nav-active .hamburger-first {
		top: 11px;
		transform: rotate(45deg);
	}
	body.alternate-header.nav-active .hamburger-second {
		opacity: 0;
		top: 0;
	}
	body.alternate-header.nav-active .hamburger-third {
		top: 11px;
		transform: rotate(-45deg);
	}
}

/* Header Logo ------------------------------------------------------- */
.header .logo {
	display: block;
	float: left;
	margin: 10px 0;
	max-height: 50px;
	position: relative;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	z-index: 100;
}

.header .logo img,
.header .logo svg {
	max-height: 100%;
	max-width: 100%;
	width: 260px;
}

.header .logo:hover {
	transform: scale(1.05);
}

/********* Alternate Nav *********/

@media (min-width: 1100px) {
	.page-index.at-top.alternate-header .header .logo {
		margin-top: 30px;
	}
	.page-index.at-top.alternate-header .header .logo img {
		filter: brightness(100);
	}
	.page-index.at-top.alternate-header .header .logo svg > g > g > g:last-child *, 
	.page-index.at-top.alternate-header .header .logo svg > g > g > g:nth-last-child(2) * {
		fill: #fff;
	}
	.page-index.at-top.alternate-header .header .logo svg > g > g > g > path:first-child {
		fill: rgba(255,255,255,0.9);
	}
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Primary Nav ---------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.primary-nav-wrap {
	float: right;
	position: relative;
  	z-index: 100;
}

.primary-nav-wrap ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.primary-nav-wrap ul a {
	font-size: 16px;
}

.primary-nav-wrap > ul {
	float: right;
}

.primary-nav-wrap > ul > li {
	float: left;
	z-index: 2;
}

.primary-nav-wrap > ul li {
	position: relative;
}

.primary-nav-wrap > ul > li > a {
	display: block;
	padding: 0 15px;
	height: 70px;
	line-height: 70px;
	position: relative;
	z-index: 3;
	-webkit-transition: background .1s ease, color 0.1s ease;
	transition: background .1s ease, color 0.1s ease;
}
.primary-nav-wrap > ul > li.selected > a {
	color: var(--primary-color);
}

.primary-nav-wrap > ul > li:hover > a {
	background-color: var(--primary-color);
	color: #fff;
}

.primary-nav-wrap a.selected {
 	background-color: var(--primary-color);
 	color: #fff;
}

.primary-nav-wrap > ul > li > ul {
	position: absolute;
	background: #fff;
	box-shadow: 0 3px 4px rgba(0,0,0,0.2);
	left: 0;
	min-width: 200px;
	opacity: 0;
	padding: 0;
	text-align: left;
	transform: translateY(-5px);
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
	visibility: hidden;
}

/* ---------------------------------------------------------------------------------------------------------- */
.primary-nav-wrap > ul li a {
	display: block;
	font-family: 'Roboto',sans-serif;
	font-size: 19px;
	font-weight: 500;
	position: relative;
	-webkit-transition: color 0.2s ease;
	transition: color 0.2s ease;
}

.primary-nav-wrap > ul ul li.sub > a:after {
	content: ' +';
}

.primary-nav-wrap > ul ul li:hover > a,
.primary-nav-wrap > ul ul li.selected > a {
	color: var(--primary-color);
}

.primary-nav-wrap > ul ul li.selected > a {
	font-weight: bold;
}

.primary-nav-wrap > ul ul ul {
	background: #fff;
	box-shadow: 2px 2px 5px rgba(0,0,0,0.25);
	opacity: 0;
	position: absolute;
	text-align: left;
	top: 100%;
	transform: translateY(-10px);
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
	visibility: hidden;
	width: 200px;
	z-index: 1;
}

.primary-nav-wrap > ul ul ul ul {
	left: 50%;
	transform: translateY(0) translateX(-10px);
	top: 0;
}

.primary-nav-wrap > ul ul li:hover > ul {
	opacity: 1;
	transform: translateY(0) translateX(0);
	visibility: visible;
}

.primary-nav-wrap > ul ul ul li {
	display: block;
	margin: 0;
	padding: 0;
}

.primary-nav-wrap > ul ul li a {
	padding: 5px 10px;
}


@media screen and (min-width: 1100px) {
	.primary-nav-wrap > ul > li.align-sub-right > ul {
		left: auto;
		right: 0;
	}

	.primary-nav-wrap > ul > li.two-column > ul {
		-webkit-columns: 2;
		-moz-columns: 2;
		columns: 2;
		min-width: 300px;
		padding: 10px;
	}

	.primary-nav-wrap > ul > li.three-column > ul {
		-webkit-columns: 3;
		-moz-columns: 3;
		columns: 3;
		min-width: 450px;
		padding: 10px;
	}

	.primary-nav-wrap > ul > li > ul > li {
		-webkit-column-break-inside: avoid;
		page-break-inside: avoid;
		break-inside: avoid;
	}

	.primary-nav-wrap > ul > li:hover > ul {
		visibility: visible;
		opacity: 1;
		transform: translateY(0);
	}
}

.primary-nav-wrap > ul > li > ul > li > a {
	display: block;
	font-size: 18px;
	padding: 12px 15px;
	white-space: nowrap;
}

.primary-nav-wrap > ul > li > ul > li.selected > a,
.primary-nav-wrap > ul > li > ul > li > a:hover {
	background-color: #F4F4F4;
}

/********* Alternate Nav *********/

@media (min-width: 1100px) {
	body.alternate-header .primary-nav-wrap {
		background-color: white;
		box-shadow: 0px 10px 20px rgba(0,0,0,16%);
		height: 100dvh;
		left: auto;
		margin-right: 0;
		max-width: 800px;
		padding-top: 120px;
		position: absolute;
		right: -825px;
		/* top: 100%; */
		transition: height 0.3s ease, padding-top 0.3s ease, right 0.5s ease;
		width: 100%;
	}
	body.alternate-header.nav-active .primary-nav-wrap {
		right: -25px;
	} 
	body.alternate-header .header .wrapper {
		height: 70px;
	}
	body.alternate-header .primary-nav-wrap .header-quick-links {
		background-color: #efefef;
		bottom: 0;
		display: flex;
		flex-direction: column-reverse;
		height: fit-content;
		justify-content: space-between;
		left: 0;
		position: absolute;
		top: 0;
	}
	body.alternate-header .primary-nav-wrap .header-quick-links:after {
		display: none;
	}
	body.alternate-header .primary-nav-wrap .header-quick-links .left-side,
	body.alternate-header .primary-nav-wrap .header-quick-links .right-side {
		color: #ccc;
		float: none;
		height: auto;
		line-height: normal;
	}
	body.alternate-header .primary-nav-wrap .header-quick-links .left-side {
		margin: 0px 69px 0 auto;
	}
	body.alternate-header .primary-nav-wrap .header-quick-links .right-side {
		margin: 10px 10px 0 0px;
	}
	body.alternate-header .primary-nav-wrap .header-quick-links .left-side > p {
		margin: 3px 0 8px 30px;
	}
	body.alternate-header .primary-nav-wrap .header-quick-links .right-side > ul {
		display: flex;
		justify-content: flex-end;
		padding-right: 50px;
	}
	body.alternate-header .primary-nav-wrap .header-quick-links .right-side > ul > li {
		align-items: center;
		display: flex;
		float: none;
	}
	body.alternate-header .primary-nav-wrap .header-quick-links .left-side a,
	body.alternate-header .primary-nav-wrap .header-quick-links .right-side a {
		color: var(--quartiary-color);
	}
	body.alternate-header .primary-nav-wrap > ul {
		border-right: 1px solid var(--primary-color);
		display: flex;
		flex-direction: column;
		float: none;
		height: -webkit-fill-available;
		margin: 15px auto 15px 15px;
		max-height: calc(100% - 140px);
		width: 50%;
	}
	body.alternate-header .primary-nav-wrap > ul > li > a {
		color: var(--quartiary-color);
		font-size: 21px;
		margin-right: 10px;
		transition: background-color 0.3s ease;
	}
	body.alternate-header .primary-nav-wrap > ul > li:hover > a {
		color: #fff;
	}
	body.alternate-header .primary-nav-wrap > ul ul li.sub > a:after {
		display: block;
		position: absolute;
		right: 10px;
		top: 20px;
		transition: transform 0.3s ease;
	}
	body.alternate-header .primary-nav-wrap > ul ul li.sub:hover > a:after {
		transform: rotate(45deg);
	}
	body.alternate-header .primary-nav-wrap > ul ul {
		box-shadow: none;
		display: flex;
		flex-direction: column;
		left: auto;
		max-height: calc(100% - 150px);
		max-width: 355px;
		min-width: 0;
		overflow-x: hidden;
		overflow-y: overlay;
		position: fixed;
		right: 5px;
		top: 125px;
		width: 100%;
	}
	body.alternate-header .primary-nav-wrap > ul ul ul {
		border-left: 1px solid var(--primary-color);
		display: none !important;
		height: auto !important;
		margin-left: 20px;
		max-height: none;
		overflow: visible;
		position: relative;
		right: 0;
		top: 0;
		width: auto;
	}
	body.alternate-header .primary-nav-wrap > ul ul ul ul {
		margin-left: 10px;
		position: relative;
	}
	body.alternate-header .primary-nav-wrap > ul ul > li:hover > ul {
		display: block !important;
	}
	body.alternate-header .primary-nav-wrap > ul ul > li > a {
		color: var(--quartiary-color);
		padding: 20px;
	}
	body.alternate-header .primary-nav-wrap > ul ul ul > li > a {
		padding: 20px 10px;
	}
}
@media (min-width: 1300px) {
	body.alternate-header .primary-nav-wrap {
		right: -845px;
	}
	body.alternate-header.nav-active .primary-nav-wrap {
		right: -45px;
	} 
}

@media (max-width: 1100px) {
	.primary-nav-wrap ul.level-2,
	.primary-nav-wrap ul.level-2 ul {
		display: none !important;
		height: auto !important;
		left: 0;
		position: relative;
	}
	.primary-nav-wrap li.selected > ul.level-2, 
	.primary-nav-wrap ul.level-2 li.selected > ul {
		display: block !important;
		opacity: 1 !important;
		transform: none;
		visibility: visible;
		width: auto;
	} 
	.primary-nav-wrap > ul > li.selected > a {
		color: #000;
	}
	.primary-nav-wrap > ul ul li.selected > a,
	.primary-nav-wrap > ul li:hover > a,
	.primary-nav-wrap > ul li > a:hover,
	.primary-nav-wrap > ul li > a.clicked-once,
	.primary-nav-wrap > ul li:hover > a:hover {
		background-color: var(--primary-color);
		color: #fff;
	}
}

/* Header Search Form ------------------------------------------------ */
.search-form {
	background-color: inherit;
	border: 1px solid transparent;
	float: right;
	margin: 24px 0 0 25px;
	border-radius: 5px;
	outline: none;
	position: relative;
	transition: all .5s ease;
}

.search-form .submit {
	background: url(/images/icons/search-icon.svg?v=0.01) 50% 50% no-repeat;
	background-size: 15px auto;
	border: none;
	cursor: pointer;
	height: 16px;
	margin: 0;
	outline: none;
	position: relative;
	width: 16px;
}

@media screen and (min-width: 1100px) {
	.search-form .input-wrap {
		background: #fff;
		box-shadow: 0 3px 6px rgba(0,0,0,0.16);
		padding: 10px;
		opacity: 0;
		position: absolute;
		right: 0;
		top: 15px;
		-webkit-transition: all 0.2s ease;
		transition: all 0.2s ease;
		visibility: hidden;
	}

	.search-active .search-form .input-wrap {
		opacity: 1;
		top: 40px;
		visibility: visible;
		z-index: 3;
	}

	.search-form input::placeholder {
		opacity: 1;
	}
}

.search-form input[type="text"] {
	border: 1px solid #ccc;
	border-radius: 5px;
	box-shadow: none;
	font-size: 14px;
	outline: none;
}

/********** Alternate Nav ************/

@media (min-width: 1100px) {
	body.alternate-header .header .search-form {
		background-color: transparent;
		border: none;
		float: left;
		height: 37px;
		margin-bottom: 0;
		margin-top: -52px;
		width: 235px;
	}
	body.alternate-header .header .search-form .input-wrap {
		background-color: transparent;
		box-shadow: none;
		left: 0;
		opacity: 1;
		padding: 0;
		right: 60px;
		top: 0px;
		visibility: visible;
		width: 100%;
		z-index: 999;
	}
	
	body.alternate-header .header .search-form button.submit {
		background-color: var(--primary-color);
		background-image: none;
		-webkit-mask-image: url(/images/icons/search-icon.svg);
		-webkit-mask-position: 50%;
		-webkit-mask-repeat: no-repeat;
		-webkit-mask-size: contain;
		position: absolute;
		right: 18px;
		top: 10px;
		z-index: 1000;
	}
	body.alternate-header .header .search-form input.text-input {
		background-color: rgba(0,0,0,0.1);
		border: none;
		border-radius: 40px;
		color: var(--default-font-color);
		padding: 11px 40px 9px 20px;
		width: 100%;
	}
	body.alternate-header .header .search-form input.text-input::placeholder {
		color: #666;
	}
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Main Content / Containers -------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.main-site-content-wrap {
	flex: 1 0 auto;
}

@media screen and (min-width: 980px) {
	.middle-area-inner {
		padding: 0 45px;
	}
	
	.page-type-0 .middle-area-inner {
		padding: 0;
	}
}

body:not(.page-type-0) .main-content {
	margin: 0 auto;
	max-width: 1000px;
	padding-top: 45px;
}

.main-content {
	min-height: 300px;
	padding: 0 0 45px;
}

.ss-section-wrap-inner {
	margin: 0 auto;
	max-width: 980px;
	padding-bottom: 1px;
}

.middle-area .page-banner {
	display: none;
}

.wrapper .page-banner  {
	max-width: none;
}

.page-banner {
	background-position: 50% 50%;
	background-repeat: no-repeat;
	background-size: cover;
	background-color: var(--quartiary-color);
	padding: 25px 0;
	position: relative;
	text-align: center;
}

.page-banner.has-image {
	padding: 90px 0;
}

.page-banner.has-image:before {
	bottom: 0;
	background: #000;
	content: '';
	left: 0;
	opacity: 0.5;
	position: absolute;
	right: 0;
	top: 0;
}

.page-banner h1 {
	color: #fff;
	font-size: 50px;
	font-weight: 600;
	letter-spacing: 0.02em;
	padding-left: 30px;
	padding-right: 30px;
	position: relative;
	text-align: center;
	text-transform: none;
	z-index: 1;
}

.ss-content-block p:last-of-type {
	margin: 0;
}

/* Alternate Nav ******************************/

body.page-index.alternate-header { 
	padding-top: 0;
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Secondary Navigation ------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.secondary-nav-wrap { 
	background: #F4F4F4;
	padding: 5px 20px;
	position: relative;
	z-index: 99;
}

.secondary-nav-wrap a {
	color: #333333;
	display: block;
}

.secondary-nav-wrap ul {
	margin: 0;
	list-style: none;
	padding: 0;
	text-align: center;
}

.secondary-nav-wrap ul li {
	display: inline-block;
	margin: 5px 10px;
	position: relative;
}

.secondary-nav-wrap ul li a {
	font-size: 18px;
	font-weight: 500;
	position: relative;
	-webkit-transition: color 0.2s ease;
	transition: color 0.2s ease;
}

.secondary-nav-wrap ul li.sub > a:after {
	content: ' +';
}

.secondary-nav-wrap ul li:hover a,
.secondary-nav-wrap ul li.selected a {
	color: var(--primary-color);
}

.secondary-nav-wrap ul li.selected a {
	font-weight: bold;
}

.secondary-nav-wrap ul ul {
	background: #fff;
	box-shadow: 2px 2px 5px rgba(0,0,0,0.25);
	opacity: 0;
	position: absolute;
	text-align: left;
	top: 140%;
	transform: translateY(-10px);
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
	visibility: hidden;
	width: 200px;
	z-index: 1;
}

.secondary-nav-wrap ul ul ul {
	left: 50%;
	transform: translateY(0) translateX(-10px);
	top: 0;
}

.secondary-nav-wrap ul li:hover > ul {
	opacity: 1;
	transform: translateY(0) translateX(0);
	visibility: visible;
}

.secondary-nav-wrap ul ul li {
	display: block;
	margin: 0;
	padding: 0;
}

.secondary-nav-wrap ul ul li a {
	color: #707070;
	padding: 5px 10px;
}

.secondary-nav-wrap ul ul li:hover > a,
.secondary-nav-wrap ul ul li.selected > a {
	background: var(--primary-color);
	color: #fff;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Footer --------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.footer {
	background-color: rgb(21 29 49 / 90%);
	color: #fff;
	flex-shrink: 0;
	overflow: hidden;
	position: relative;
	z-index: 2;
}

.footer .ss-section-wrap.has-background-color:first-child {
	background: none !important;
	color: var(--default-font-color);
	position: relative;
	z-index: 0;
}
.footer .ss-section-wrap.has-background-color:first-child:before {
	background-color: #f0f2f5;
	bottom: 0;
	content: '';
	display: block;
	left: 0;
	opacity: 0.9;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
}

.footer .wrapper {
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1500px;
	padding: 0 45px;
}

.footer .upper-footer:before,
.footer .lower-lower:before {
	background-color: rgb(21 29 49 / 90%);
	backdrop-filter: grayscale(1);
	bottom: 0;
	content: '';
	display: block;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 0;
}
.footer .footer-bg-image {
	z-index: -1
}
.footer .footer-bg-image,
.footer .footer-bg-image img {
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}
.footer .footer-bg-image img {
	height: 100% !important;
	object-fit: cover;
	object-position: 50%;
	width: 100% !important;
}

.footer h2, .footer h3 {
	color: unset;
}

.footer a[href^=tel]:hover {
	text-decoration: underline;
}

.footer a {
	color: #fff;
	font-size: 18px;
}
.footer .footer-contact-info p:first-child svg > g > g > g > polygon,
.footer .footer-contact-info p:first-child svg > g > g > path {
	fill: #fff;
}

.footer .upper-footer {
	padding: 30px 0 40px;
	position: relative;
}

.footer .upper-footer .footer-nav {
	-webkit-columns: 2;
	-moz-columns: 2;
	columns: 2;
	margin-top: 85px;
	max-width: 500px;
}

@media (max-width: 1300px) {
	.footer .wrapper {
		padding: 0 30px;
	}
}
@media screen and (min-width: 1100px) {
	.footer .upper-footer .footer-contact-info {
		min-width: 430px;
		width: 30%;
	}
	.footer .upper-footer .footer-contact-info .responsive-grid-layout-row.two-column .col { 
		width: max-content
	}
}

.footer .upper-footer > p > img {
	margin-top: 15px;
}

.footer .upper-footer > p {
	margin-bottom: 35px;
}

.footer .upper-footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer .upper-footer ul li {
	margin-bottom: 20px;
}

.footer .upper-footer ul li a {
	font-family: 'Roboto',sans-serif;
	font-weight: 500;
	-webkit-transition: color 0.2s ease;
	transition: color 0.2s ease;
}

.footer .upper-footer ul li:hover a {
	color: #cce0ff;
}

.footer .lower-footer {
	background-color: #0D1322;
	font-size: 16px;
	padding: 30px 0;
	position: relative;
}

.footer .lower-footer,
.footer .lower-footer a {
	color: #fff;
}

.footer .copyright {
	float: left;
}

.footer .copyright .powered-by-logo {
	margin: -5px 0;
	max-width: 100%;
	transition: all .3s ease;
	width: 150px;
}
@media (min-width: 500px) {
	.footer .copyright .powered-by-logo {
			padding-left: 10px;
	}
}

.footer .copyright .powered-by-logo:hover {
	transform: scale(1.05);
}

.footer .social {
	float: right;
}

.footer .social ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.footer .social ul li {
	display: inline-block;
	margin-left: 10px;
}

.footer .social ul li a {
	-webkit-transition: opacity .2s ease;
	transition: opacity .2s ease;
}

.footer .social ul li a svg * {
	fill: #fff;
}

.footer .social ul li a:hover {
	opacity: .7;
}

.footer .lower-footer .nav-mode-changer-link {
	color: var(--primary-color);
	margin-left: 20px;
	transition: opacity 0.3s ease;
}
.footer .lower-footer .nav-mode-changer-link:hover {
	opacity: 0.7;
}

@media screen and (max-width: 768px) {
	.footer {
		text-align: center;
	}
	.footer .lower-footer .wrapper {
		display: flex;
		flex-direction: column-reverse;
		gap: 20px;
	}
	.footer .lower-footer .social {
		margin-top: 30px;
	}
	.footer .upper-footer .footer-nav {
		margin-top: 50px;
	}
}

@media screen and (max-width: 660px) {
	.footer .upper-footer .footer-nav {
		-webkit-columns: 2;
		-moz-columns: 2;
		columns: 2;	
	}
}
@media screen and (max-width: 500px) {
	.footer .lower-footer .copyright {
		display: flex;
		flex-direction: column;
	}
	.footer .lower-footer .copyright a {
		margin: 15px auto;
	}
	.footer .lower-footer .copyright img {
		padding: 0;
	}
	.footer .lower-footer .social ul li {
		margin: 0 5px;
	}
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Content Box List Styling --------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.content-box-list > li:nth-child(n+2) {
	border-top: 1px solid #ccc;
	margin-top: 15px;
	padding-top: 15px;
}

.content-box-list li a {
	background-color: inherit;
	color: inherit;
	line-height: 20px;
}

.content-box-list li a .date {
	background-color: var(--primary-color);
	left: 0;
	margin: 0;
	position: absolute;
	top: 0;
}

.content-box-list li a .abstract {
	color: #282B2C;
	display: inline-block;
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	font-weight: 300;
	padding: 5px;
}

.content-box-list li a .para {
	font-size: 14px;
}


/* --------------------------------------- */
/* News/Blogs ---------------------------- */
/* --------------------------------------- */
.content-box-list.blog li a,
.content-box-list.events li a,
.content-box-list.news li a {
	cursor: default;
	padding-left: 80px;
	position: relative;
}

.content-box-list li a .see-details {
	color: var(--primary-color);
}

.content-box-list.news li a .title, 
.content-box-list.news li a .see-details {
	-webkit-transition: all .3s ease;
	transition: all .2s ease;
}

.content-box-list li a .see-details {
	cursor: pointer;
}

.content-box-list li a .see-details:hover {
  	color: #282B2C;
}

.content-box-list.blog li a .title,
.content-box-list.news li a .title {
	padding-top: 0;
}


/* --------------------------------------- */
/* Job Board ----------------------------- */
/* --------------------------------------- */
.content-box-list.jobs li a .title,
.content-box-list.jobs li a .abstract,
.content-box-list.jobs li a .see-details {
	padding: 0;
}

.content-box-list.jobs li a .abstract {
	margin-top: 5px;
}

.content-box-list.jobs li a .see-details {
	margin-top: 5px;
}
.job-board-items .list-item a, .job-board-items .list-item.has-job-id a {
	padding-right: 120px
}

@media (max-width: 650px) {
	.feedback-form.job-form .field-wrap,
	.job-board-filter-wrap.col-2 .filter-wrap:last-child, 
	form.job-form .field-wrap:nth-child(odd) {
		float: none;
		max-width: 400px;
		width: 100%;
	}
}
@media (max-width: 500px) {
	.job-board-filter-wrap.col-1 .filter-wrap, .job-board-filter-wrap.col-2 .filter-wrap, .job-board-filter-wrap.col-3 .filter-wrap {
		width: 100%;
	}
}

/* --------------------------------------- */
/* Testimonials -------------------------- */
/* --------------------------------------- */
.content-box-list.testimonials .author {
	margin-top: 10px;
}


/* --------------------------------------- */
/* Quick Link Icons (Shared) ------------- */
/* --------------------------------------- */
.homepage-quick-links .ss-content-block.col-1 {
	width: 100%;
}

.quick-links ul {
	list-style: none;
	margin: 0;
	padding: 0;
	text-align: center;
}

.quick-links ul li {	
	display: inline-block;
	margin: 15px 30px;
	vertical-align: middle;
}

.quick-links ul li a {
	align-items: center;
	color: var(--secondary-color);
	display: flex;
	flex-direction: column;
	font-family: 'Roboto',sans-serif;
	font-size: 21px;
	font-weight: 500;
	gap: 10px;
	-webkit-transition: 0.2s opacity ease;
	transition: color 0.3s ease, 0.2s opacity ease;
}

.quick-links ul li a:hover {
	opacity: .8;
}

.quick-links ul li a img {
	display: inline-block;
	vertical-align: middle;
	margin: 0 10px 0;
}

.quick-links ul li a svg * {
	fill: var(--secondary-color);
	transition: fill 0.3s ease;
}
.quick-links ul li a:hover {
	color: var(--primary-color)
}
.quick-links ul li a svg {
	transition: transform 0.3s ease;
}
.quick-links ul li a:hover svg {
	transform: scale(1.08);
}
.quick-links ul li a:hover svg * {
	fill: var(--primary-color);
}

.quick-links ul li a br {
	display: none;
}

.quick-links.quick-links-footer {
	box-shadow: 0 19px 38px rgba(0,0,0,0.16);
	margin: 50px 0 0;
	padding: 70px 20px;
}

@media screen and (max-width: 550px) {
	.quick-links ul li {
		margin: 15px 0;
		width: 50%;
		text-align: left;
	}

	.quick-links ul li img {
		margin-right: 8px;
		max-width: 25px;
		max-height: 25px;
	}
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Homepage (General Styling) ------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.page-index h1 {
	display: none;
}

.page-index.page-type-0 .main-content {
	padding: 0;
}

.page-index .footer .ss-section-wrap.has-background-color:last-child {
	background-color: rgb(242 242 242 / 70%) !important;
}

@media (min-width: 1100px) {
	.page-index .ss-section-wrap {
		padding-bottom: 60px;
	}
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Homepage Banner ------------------------------------------------------------------------------------------ */
/* ---------------------------------------------------------------------------------------------------------- */
.homepage-banner.ss-section-wrap {
	max-height: calc(100dvh - 120px);
	padding: 0;
}

.homepage-banner .ss-section-wrap-inner {
	max-width: 100%;
}

.homepage-banner .ss-content-block.col-1 {
	margin: 0;
	width: 100%;
}

.homepage-banner .embedded-gallery .stage {
	border: 0;
	max-height: calc(100dvh - 120px);
}

body:not(.loaded) .homepage-banner .embedded-gallery.static-page-inline-gallery .slide:not(.current) {
	opacity: 0
}
body:not(.loaded) .homepage-banner .embedded-gallery.static-page-inline-gallery .slide:nth-child(2) {
	opacity: 1;
}
.homepage-banner .embedded-gallery.static-page-inline-gallery .slide {
	min-height: 600px;
}

.homepage-banner .embedded-gallery.static-page-inline-gallery .slide:before,
.homepage-banner .embedded-gallery.static-page-inline-gallery .slide:after {
	background: rgba(0,0,0,0.29);
	bottom: 0;
	content: '';
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 50;
}

.homepage-banner .embedded-gallery.static-page-inline-gallery .slide:after {
	background: -moz-linear-gradient(left,  rgba(0,0,0,0.79) 0%, rgba(30,50,105,0) 100%);
	background: -webkit-linear-gradient(left,  rgba(0,0,0,0.79) 0%,rgba(30,50,105,0) 100%);
	background: linear-gradient(to right,  rgba(0,0,0,0.79) 0%,rgba(30,50,105,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e3269', endColorstr='#001e3269',GradientType=1 );
	height: 100%;
	top: auto;
	width: 100%;
	z-index: 51;
}

.embedded-gallery .prev-arrow,
.embedded-gallery .next-arrow {
	background-color: rgba(255,255,255,0.6);
	background-position: 50% 50%;
	background-size: 15px auto;
	height: 50px;
	left: 0;
	margin-top: -25px;
	width: 50px;
	z-index: 52;
}

.embedded-gallery .next-arrow {
	left: auto;
	right: 0;
}

.homepage-banner .embedded-gallery .slide .caption {
	background: none;
	bottom: auto;
	box-shadow: none;
	right: 0;
	left: 0;
	display: block !important;
	margin: 0 auto;
	max-width: 1720px;
	padding: 40px 80px !important;
	text-align: left;
	top: 50%;
	transform: translateY(-50%);
	height: auto !important;
	z-index: 52;
}

.homepage-banner .embedded-gallery .slide .caption,
.homepage-banner .embedded-gallery .slide .caption h2,
.homepage-banner .embedded-gallery .slide .caption h3,
.homepage-banner .embedded-gallery .slide .caption h4,
.homepage-banner .embedded-gallery .slide .caption h5,
.homepage-banner .embedded-gallery .slide .caption h6,
.homepage-banner .embedded-gallery .slide .caption p,
.video-banner-section,
.video-banner-section h2,
.video-banner-section h3,
.video-banner-section h4,
.video-banner-section h5,
.video-banner-section h6,
.video-banner-section p {
	color: #fff;
}

.homepage-banner .embedded-gallery .slide .caption h2,
.video-banner-section h2 {
	font-family: var(--default-font-family);
	font-size: 90px;
	line-height: 96%;
	font-weight: 400;
}
.homepage-banner .embedded-gallery .slide .caption h2 .h1-alt,
.video-banner-section h2 .h1-alt {
	display: block;
}

.homepage-banner .embedded-gallery .slide .caption h2 small,
.video-banner-section h2 small {
	font-family: 'Roboto', sans-serif;
	font-size: 30px;
	display: block;
	line-height: 30px;
	font-weight: 300;
}

.homepage-banner .embedded-gallery .slide .caption h2 strong,
.video-banner-section h2 strong {
	font-weight: 700;
}

.homepage-banner .embedded-gallery .slide .caption p,
.video-banner-section p {
	margin: 0;
	margin-top: 30px;
}

.homepage-banner .embedded-gallery-wrap {
	position: relative;
}

.homepage-banner .embedded-gallery-nav-wrapper {
	bottom: 105px;
	left: 0;
	margin: 0;
	padding: 0;
	position: absolute;
	right: 0;
	text-align: center;
	width: auto;
	z-index: 52;
}

.homepage-banner .embedded-gallery-nav-wrapper, 
.homepage-banner .embedded-gallery-nav, 
.homepage-banner .embedded-gallery-nav li a {
	height: auto;
}

.homepage-banner .embedded-gallery-nav {
	position: static;
}

.homepage-banner .embedded-gallery-nav li {
	display: inline-block;
	float: none;
	margin: 0 5px;
	padding: 0;
	position: static;
}

.homepage-banner .embedded-gallery-nav li a {
	background: #fff;
	box-shadow: 0 0 2px rgba(0,0,0,0.5);
	border-radius: 100%;
	float: none;
	height: 10px;
	opacity: .4;
	overflow: hidden;
	position: relative;
	-webkit-transition: opacity 0.3s linear;
	transition: opacity 0.3s linear;
	width: 10px;
}

.homepage-banner .embedded-gallery-nav li a img {
	display: none;
}

.homepage-banner .embedded-gallery-nav li a:hover,
.homepage-banner .embedded-gallery-nav li.activeSlide a {
	opacity: 0.9;
}

.video-banner-section .ss-section-wrap-inner {
	height: 600px;
	min-height: 680px;
	margin: 0;
	max-width: none;
	overflow: hidden;
	position: relative;
}
.video-banner-section .inner-content-block-wrap {
	margin: 0;
	padding: 0;
}
.video-banner-section .col-3 {
	align-items: center;
	background: -moz-linear-gradient(left,  rgba(30,50,105,1) 0%, rgba(30,50,105,0) 100%);
	background: -webkit-linear-gradient(left,  rgba(30,50,105,1) 0%,rgba(30,50,105,0) 100%);
	background: linear-gradient(to right,  rgb(28 36 56) 0%,rgb(28 36 56 / 0) 100%);
	display: flex;
	margin: 0;
	padding: 0 0px 0 100px;
	position: relative;
	width: 50%;
	z-index: 10;
}
.video-banner-section .col-3 .inner-content-block-wrap {
	position: relative;
}
.video-banner-section .col-2-3 {
	bottom: 0;
	left: 0;
	margin: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
}
.video-banner-section .col-2-3 .ss-editor-video-embed-container {
	left: 50%;
	max-width: none;
	min-width: 100vw;
	height: 100vh;
	opacity: 1 !important;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -52.5%);
	width: 190vh !important;
}
.video-banner-section .col-2-3:after {
	background: linear-gradient(0deg, rgba(0,0,0,0.8) 0%, transparent 100%);
	bottom: 0;
	content: '';
	display: block;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

@supports not (aspect-ratio) {
	.video-banner-section .col-2-3 .ss-editor-video-embed-container {
		transform: translate(-50%, -50%);
	}

	.video-banner-section .col-2-3 .ss-editor-video-embed-container iframe,
	.video-banner-section .col-2-3 .ss-editor-video-embed-container video {
		height: 100%;
		position: absolute;
	}
	.video-banner-section .col-2-3 .ss-editor-video-embed-container video {
		height: 100% !important;
		max-height: none !important;
	}
}

@media (min-aspect-ratio: 16/9) {
	.video-banner-section .col-2-3 .ss-editor-video-embed-container { 
		/* height = 100 * (9 / 16) = 56.25 */
		min-height: 56.25vw;
	}
}

@media (max-aspect-ratio: 16/9) {
	.video-banner-section .col-2-3 .ss-editor-video-embed-container { 
		/* width = 100 / (9 / 16) = 177.777777 */
		width: 177.78vh;
	}
}

@media screen and (max-width: 1100px) {
	.ss-section-wrap.video-banner-section {
		padding: 0;
	}
	.homepage-banner .embedded-gallery .slide .caption {
		padding-bottom: 0px !important
	}
}
@media screen and (max-width: 1024px) {
	.homepage-banner .embedded-gallery .slide .caption h2,
	.video-banner-section h2 {
		font-size: 56px;
	}
	
	.homepage-banner .embedded-gallery .slide .caption h2 small,
	.video-banner-section h2 small {
		font-size: 20px;
		line-height: 20px;
	}
}

@media screen and (max-width: 980px) {
	.video-banner-section .col-3 {
		height: 100%;
		width: 75%;
	}
}
@media screen and (max-width: 550px) {
	.homepage-banner .embedded-gallery .slide .caption
	.video-banner-section .col-3 {
		left: 60px;
		right: 60px;
		text-align: center;
	}
	.video-banner-section .col-3 {
		padding: 0 0 0 30px;
		width: 100%;
	}

	.homepage-banner .embedded-gallery .slide .caption h2,
	.video-banner-section h2 {
		font-size: 40px;
	}
	
	.homepage-banner .embedded-gallery .slide .caption h2 small,
	.video-banner-section h2 small {
		font-size: 20px;
		line-height: 20px;
	}
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Homepage Quick Links / Intro Section --------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.homepage-quick-links,
.homepage-intro-section {
	padding: 0 15px;
}

.homepage-quick-links .ss-section-wrap-inner,
.homepage-intro-section .ss-section-wrap-inner {
	background: #fff;
	box-shadow: 0 19px 38px rgba(0,0,0,0.16);
	-webkit-border-top-left-radius: 6px;
	-webkit-border-top-right-radius: 6px;
	border-bottom-left-radius: 6px;
	border-bottom-right-radius: 6px;
	border-top-left-radius: 6px;
	border-top-right-radius: 6px;
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	z-index: 53;
}
.homepage-intro-section .ss-section-wrap-inner {
	box-shadow: none;
	margin-bottom: 100px;
	margin-top: 200px;
}

.homepage-quick-links .ss-section-wrap-inner {
	margin: -75px auto 0;
	z-index: 54;
}

.homepage-quick-links .ss-content-block {
	margin: 0;
}

.homepage-quick-links .inner-content-block-wrap {
	padding: 20px;
}

.homepage-quick-links .quick-links ul li {
	margin: 0;
	width: 25%;
}

@media screen and (max-width: 768px) {
	.homepage-quick-links .quick-links ul li {
		margin: 15px 0;
		width: 50%;
	}
	.homepage-intro-section .ss-section-wrap-inner {
		margin-bottom: 30px;
		margin-top: 90px;
	}
}


.homepage-intro-section {
	margin-bottom: 10px;
}

.homepage-intro-section img {
	max-width: none;
	height: auto !important;
	width: 100% !important;
}

.homepage-intro-section .ss-content-block {
	flex: auto;
	margin: 0;
}

.homepage-intro-section .inline-gallery-wrap .stage {
	border: none;
	max-width: 100%;
	width: 100% !important;
}
.homepage-intro-section .inline-gallery-wrap .stage .slide {
	background-color: #fff !important;
	display: flex !important;
	flex-direction: row-reverse;
	min-height: 450px;
	opacity: 0 !important;
	position: absolute;
	transition: opacity 0.3s ease;
}
.homepage-intro-section .inline-gallery-wrap .stage .slide.current {
	opacity: 1 !important;
	position: relative !important;
}
.homepage-intro-section .inline-gallery-wrap .stage .slide .image,
.homepage-intro-section .inline-gallery-wrap .stage .slide .caption {
	display: block !important;
	flex: 50%;
	height: auto !important;
	overflow: hidden !important;
	position: relative;
}
.homepage-intro-section .inline-gallery-wrap .stage .slide .caption {
	background: none;
	border: none;
	box-shadow: none;
	height: max-content !important;
	margin: auto !important;
	padding: 30px 30px 30px 0px !important;
}
.homepage-intro-section .inline-gallery-wrap .stage .slide .caption h2 {
	font-size: 42px;
	line-height: 100%;
}
.homepage-intro-section .inline-gallery-wrap .prev-arrow {
	left: -70px;
}
.homepage-intro-section .inline-gallery-wrap .next-arrow {
	right: -70px;
}
@media (max-width: 1400px) {
	.homepage-intro-section .inline-gallery-wrap .prev-arrow {
		bottom: 0;
		left: -20px;
		top: auto;
	}
	.homepage-intro-section .inline-gallery-wrap .next-arrow {
		bottom: 0;
		left: 30px;
		right: auto;
		top: auto;
	}
}
@media (max-width: 1024px) {
	.homepage-intro-section .inline-gallery-wrap .prev-arrow {
		bottom: 60px;
		left: -15px;
		top: auto;
	}
	.homepage-intro-section .inline-gallery-wrap .next-arrow {
		bottom: 60px;
		left: auto;
		right: -15px;
		top: auto;
	}
}
@media (max-width: 1024px) {
	.homepage-intro-section .inline-gallery-wrap .stage {
		height: auto !important;
		margin-left: -10px;
		margin-right: -10px;
		max-width: none;
		width: calc(100% + 20px) !important;
	}
}

@media only screen and (min-width: 768px) {
	.homepage-quick-links .inner-content-block-wrap {
		padding: 40px 10px;
	}

	.homepage-intro-section .ss-section-wrap-inner {
		display: flex;
		flex-wrap: wrap;
		margin-top: 100px;
		padding-bottom: 0;
	}
	
	.homepage-intro-section .ss-content-block.col-2 {
		margin: 0;
		width: 50%;
	}
	
	.homepage-intro-section .ss-content-block.col-2 .inner-content-block-wrap {
		position: relative;
		top: 50%;
		transform: translateY(-50%);
	}
	
	.homepage-intro-section {
		margin-bottom: 60px;
	}
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Homepage Our School Section ------------------------------------------------------------------------------ */
/* ---------------------------------------------------------------------------------------------------------- */
.homepage-about-us.ss-section-wrap {
	color: #fff;
	padding: 0 40px;
}

.homepage-about-us .ss-section-wrap-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 75px 0;
}

.homepage-about-us .ss-content-block .inner-content-block-wrap {
	padding: 0;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Homepage Info Boxes -------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.info-boxes {
	margin-bottom: 60px;
}
.info-boxes .inner-content-block-wrap h2:first-child:last-child {
	margin-bottom: 0;
}
.info-boxes + .homepage-news-and-announcements {
	margin-top: -60px;
}
.info-boxes .ss-section-wrap-inner {
	justify-content: center;
	max-width: 1300px;
	padding: 60px 0;
}
.page-index .info-boxes .ss-section-wrap-inner {
	padding: 150px 0;
}

.info-boxes .ss-content-block:not(.col-1:first-child) {
	aspect-ratio: 1 / 1;
	border-right: 1px solid #DEDEDE;
	display: flex;
	justify-content: center;
	height: max-content;
	padding-top: 80px;
	max-width: 300px;
}
.page-index .info-boxes .ss-content-block:not(.col-1:first-child) {
	padding-top: 50px;
}

.info-boxes .ss-content-block p:last-child {
	font-family: 'Roboto', sans-serif;
	font-weight: 500;
	line-height: 155%
}
.info-boxes .ss-content-block p:last-child .h2-style {
	display: inline-block;
	margin-bottom: 10px;
}
.info-boxes .ss-content-block p svg {
	margin-bottom: -10px
}

@media screen and (max-width: 1024px) {
	.info-boxes .ss-section-wrap-inner {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		padding: 60px 0;
	}
	.page-index .info-boxes .ss-section-wrap-inner {
		padding: 30px 0;
	}
	.homepage-news-and-announcements .ss-content-block:first-child .inner-content-block-wrap {
		padding: 0 !important;
	}
	.info-boxes .ss-content-block:not(.col-1:first-child) {
		border-bottom: 1px solid #DEDEDE;
		border-right: 0;
		flex: calc(50% - 30px);
		margin: 0 auto 30px;
		max-width: 300px;
	}
	.info-boxes .ss-content-block.col-1:first-child {
		flex: 100%;
	}
}
@media (max-width: 900px) {
	.page-index .info-boxes .ss-content-block:not(.col-1:first-child) {
		padding-top: 0;
	}
	.page-index .info-boxes .ss-content-block:not(.col-1:first-child) .inner-content-block-wrap {
		padding-top: 80px;
	}
}
@media (max-width: 700px) {
	.info-boxes .ss-content-block:not(.col-1:first-child) {
		flex: 100%;
	}
}
@media (max-width: 550px) {
	.info-boxes .ss-content-block:not(.col-1:first-child) {
		padding-top: 0 !important;
	}
	.page-index .info-boxes .ss-content-block:not(.col-1:first-child) .inner-content-block-wrap {
		padding-top: 30px;
	}
}

.info-boxes .ss-content-block:last-child {
	border-bottom: 0;
	border-right: 0;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Homepage News & Announcements ---------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.homepage-news-and-announcements.ss-section-wrap {
	padding: 0 0 0 20px;
}

.homepage-news-and-announcements .ss-section-wrap-inner {
	gap: 30px;
	padding-bottom: 0px;
	max-width: 1500px;
}
.homepage-news-and-announcements .ss-content-block:first-child {
	padding-bottom: 100px
}
.homepage-news-and-announcements .ss-content-block:first-child .inner-content-block-wrap {
	padding: 100px 0;
}

.homepage-news-and-announcements .ss-content-block {
	flex: calc(50% - 15px);
	margin: 0;
}
.homepage-news-and-announcements .ss-content-block .submission-form {
	max-width: 250px;
}

.homepage-news-and-announcements .content-box-list {
	padding-left: 0;
}

@media screen and (min-width: 980px) {
	.homepage-news-and-announcements .ss-content-block.col-3 {
		width: calc(100% / 3);
	}

	.homepage-news-and-announcements .ss-content-block.col-2-3 {
		width: calc((100% / 3) * 2);
	}
}

@media screen and (max-width: 980px) {
	.homepage-news-and-announcements.ss-section-wrap {
		padding: 30px 0 0;
	}
	
	.homepage-news-and-announcements.ss-section-wrap .ss-content-block.col-2-3 {
		padding: 0 25px;
	}
}

.homepage-news-and-announcements .ss-content-block:first-child h2 {
	margin-bottom: 0;
}

.homepage-news-and-announcements .content-box-list {
	margin-top: 15px;
}

.homepage-news-and-announcements .content-box-list li {
	border: 0;
	box-sizing: border-box;
	margin: 0 0 40px 0;
	padding: 0;
	position: relative;
}

@media screen and (min-width: 768px) {
	.homepage-news-and-announcements .content-box-list li {
		float: left;
		width: calc(50% - 20px);
	}
	
	.homepage-news-and-announcements .content-box-list li:nth-child(n+2) {
		float: right;
	}
}

.homepage-news-and-announcements .content-box-list li a {
	cursor: pointer;
	position: static;
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
}

.homepage-news-and-announcements .content-box-list li a:hover {
	opacity: .8;
}

.homepage-news-and-announcements .content-box-list li:nth-child(n+2) {
	padding-left: 130px;
}

.homepage-news-and-announcements .content-box-list .thumbnail {
	margin: 0 0 10px 0;
}

.homepage-news-and-announcements .content-box-list li:nth-child(n+2) .thumbnail {
	position: absolute;
	left: 0;
	height: 100% !important;
	overflow: hidden;
	width: 120px;
}

.homepage-news-and-announcements .content-box-list .thumbnail img {
	height: 100% !important;
	object-fit: cover;
	object-position: 50% 30%;
	width: 100%;
}

.homepage-news-and-announcements .content-box-list.blog li a, 
.homepage-news-and-announcements .content-box-list.events li a, 
.homepage-news-and-announcements .content-box-list.news li a {
	padding: 0;
}

.homepage-news-and-announcements .content-box-list li a .title,
.homepage-news-and-announcements .content-box-list li a .abstract,
.homepage-news-and-announcements .content-box-list li a .see-details {
	padding: 0;
}

.homepage-news-and-announcements .content-box-list li a .date {
	background: none;
	color: #868686;
	float: none;
	font-size: 14px;
	margin: 0 0 10px 0;
	padding: 0;
	position: static;
	line-height: 100%;
	height: auto;
	text-align: left;
	text-transform: none;
	width: auto;
}

.homepage-news-and-announcements .content-box-list li a .title {
	color: var(--primary-color);
	font-size: 18px;
	font-weight: 500;
}

.homepage-news-and-announcements .content-box-list li a .abstract,
.homepage-news-and-announcements .content-box-list li a .see-details {
	display: none;
}

.homepage-news-and-announcements .ss-content-block:last-child h2 {
	color: inherit;
}

.homepage-news-and-announcements .ss-content-block:last-child .inner-content-block-wrap {
	padding: 100px 40px;
}

.homepage-news-and-announcements .ss-content-block:last-child .form-section {
	margin-bottom: 15px;
}

.homepage-news-and-announcements .ss-content-block:last-child input[type=text],
.homepage-news-and-announcements .ss-content-block:last-child input[type=email] {
	width: 100%;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Homepage Video Tour -------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.homepage-video-tour .ss-section-wrap-inner {
	padding: 100px 0;
}

.homepage-video-tour,
.homepage-video-tour h2,
.homepage-video-tour h3 {
	color: #fff;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Callout Box ---------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.callout-box {
	margin-bottom: 20px;
}

.callout-box .ss-section-wrap-inner {
	background: #F4F4F4;
	border-left: 2px solid var(--primary-color);
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Info Block ----------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.info-block,
.info-block h2,
.info-block h3 {
	color: #fff;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Community Directory Styles ------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.page-type-28 .intro-text-wrap.mt {
	margin-top: 0;
}

/* ---------------------------------------------------------------------------------------------------------- */
/* FAQ Styles ------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */

.list-item.question-item h2.title {
	font-size: 18px;
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Member Directory Page ------------------------------------------------------------------------------------ */
/* ---------------------------------------------------------------------------------------------------------- */

.detail-page.member-directory .image-column {
  	box-sizing: border-box;
  	padding: 20px;
  	width: 25%;
}

.detail-page.member-directory .image-column .image {
	width: 100%;
}

.detail-page.member-directory .info-column {
  	width: 75%;
}

.fr.small-action-button {
	margin-bottom: 15px
}

.list-items.member-directory-items {
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
}
.list-items.member-directory-items .list-item.member-directory-item {
	align-content: flex-end;
	aspect-ratio: 3 / 4;
	float: none;
	flex: calc(25% - 12px);
	height: auto;
	margin: 0;
	max-width: calc(25% - 10px);
	position: relative;
	width: calc(25% - 10px);
}
.list-items.member-directory-items .list-item.member-directory-item .image {
	bottom: 0;
	height: auto;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: -1;
}
.list-items.member-directory-items .list-item.member-directory-item .image img {
	display: block;
	height: 100% !important;
	object-fit: cover;
	object-position: 50%;
	width: 100% !important;
}
.list-items.member-directory-items .list-item.member-directory-item .image img {
	transition: transform 0.3s ease;
}
.list-items.member-directory-items .list-item.member-directory-item:hover .image img {
	transform: scale(1.1)
}
.list-items.member-directory-items .list-item.member-directory-item .info {
	background: linear-gradient(180deg, transparent, var(--secondary-color));
	color: #fff;
	float: none;
	height: auto;
	margin: 0;
	min-height: 0;
	padding-left: 15px;
	padding-right: 15px;
	padding-top: 40px;
	transition: padding 0.3s ease;
	width: auto;
}
.list-items.member-directory-items .list-item.member-directory-item .info .categories {
	display: none;
} 
.list-items.member-directory-items .list-item.member-directory-item .info .job_title {
	margin-bottom: 10px;
}
.list-items.member-directory-items .list-item.member-directory-item:hover .info {
	padding-bottom: 40px;
	padding-top: 80px;
}
.list-items.member-directory-items .list-item.member-directory-item .info .title {
	color: #fff;
	FONT: 700 28px var(--default-font-family);
	letter-spacing: normal;
	line-height: 100%;
	margin-bottom: 5px;
	text-transform: none;
}
.list-items.member-directory-items .list-item.member-directory-item .info .view-profile-link {
	margin-bottom: -20px;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease;
}
.list-items.member-directory-items .list-item.member-directory-item .info .view-profile-link a {
	background-image: url(/images/icons/arrow-right.svg?v=0.01);
	background-position: calc(100% - 10px) 50%;
	background-repeat: no-repeat;
	background-size: 5px;
	filter: brightness(0) contrast(10) invert(1);
	padding-right: 20px;
	transition: background-position 0.2s ease;
}
.list-items.member-directory-items .list-item.member-directory-item .info .view-profile-link a:hover {
	background-position: calc(100% - 5px) 50%;
}
.list-items.member-directory-items .list-item.member-directory-item:hover .info .view-profile-link {
	opacity: 1;
	pointer-events: all;
}

@media (max-width: 900px) {
	.list-items.member-directory-items .list-item.member-directory-item {
		flex: calc(100% / 3 - 10px);
		max-width: calc(100% / 3 - 10px);
		width: calc(100% / 3 - 10px);
	}
}
@media (max-width: 768px) {
	.list-items.member-directory-items .list-item.member-directory-item {
		flex: calc(50% - 8px);
		max-width: calc(50% - 8px);
		width: calc(50% - 8px);
	}
}
@media (max-width: 500px) {
	.list-items.member-directory-items .list-item.member-directory-item {
		flex: 100%;
		max-width: 100%;
		width: 100%;
	}
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Miscellaneous -------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.clear:after {
	content: '';
	clear: both;
	display: table;
}

.ss-content-block.callout-box .inner-content-block-wrap {
	padding: 20px 30px;
}

.ss-content-block.callout-box p:first-child {
	margin: -20px -30px 10px -30px;
}

.callout-section {
	box-shadow: 0px 20px 40px rgba(0,0,0,0.16);
	height: max-content;
	margin-left: auto;
	margin-right: auto;
	max-width: 1290px;
	margin-bottom: 30px;
	margin-top: 0;
	padding-bottom: 0;
}
.callout-section:first-child {
	margin-top: 60px;
}
.callout-section h2,
.callout-section h3,
.callout-section h4,
.callout-section h5 {
	color: unset;
}
.callout-section:not(.has-background-color) {
	background: radial-gradient(900px, var(--callout-section-primary-color) 0% , var(--callout-section-secondary-color) 100%);
	color: #fff;	
}
.callout-section:not(.has-background-color) h2,
.callout-section:not(.has-background-color) h3,
.callout-section:not(.has-background-color) h4,
.callout-section:not(.has-background-color) h5,
.callout-section:not(.has-background-color) h6,
.callout-section:not(.has-background-color) a:not(.button, .white-button, .small-white-button, .small-action-button) {
	color: #fff;
}
.callout-section .ss-section-wrap-inner {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	max-width: none;
	padding-bottom: 0;
	position: relative;
}
.callout-section .ss-content-block,
.callout-section .inner-content-block-wrap {
	margin: 0;
	padding: 0;
}
.callout-section .ss-content-block {
	flex: auto;
}
.callout-section .ss-content-block:not(.image-block, .slideshow-block, .embedded-video-block) {
	padding: 60px;
}
.callout-section:not(.has-background-color) .ss-content-block .arrow-link {
	filter: brightness(0) invert(1);
}
.callout-section:not(.has-background-color) .ss-content-block .arrow-link:after {
	background-color: #fff;;
}
.ss-section-wrap.callout-section .ss-content-block.image-block,
.ss-section-wrap.callout-section .ss-content-block.embedded-video-block,
.ss-section-wrap.callout-section .ss-content-block.slideshow-block {
	align-items: stretch;
	align-self: stretch;
	display: flex;
	height: auto;
	overflow: hidden;
	padding: 0;
	position: relative;
}
.callout-section .ss-content-block.embedded-video-block {
	aspect-ratio: 16 / 9;
	height: max-content;
	min-height: 100%;
}
.callout-section .ss-content-block.embedded-video-block .inner-content-block-wrap,
.callout-section .ss-content-block.slideshow-block .inner-content-block-wrap {
	display: flex;
	height: 100%;
}
.callout-section .ss-content-block.image-block .inner-content-block-wrap,
.callout-section .ss-content-block.embedded-video-block .inner-content-block-wrap,
.callout-section .ss-content-block.slideshow-block .inner-content-block-wrap {
	display: block;
	height: 100%;
	padding: 0;
	position: absolute;
	width: 100%;
}
.callout-section .embedded-video-block p,
.callout-section .image-block p,
.callout-section .slideshow-block .inline-gallery-wrap,
.callout-section .slideshow-block .inline-gallery-wrap .embedded-gallery-wrap,
.callout-section .slideshow-block .inline-gallery-wrap .embedded-gallery,
.callout-section .slideshow-block .inline-gallery-wrap .stage {
	border: none;
	display: block;
	height: 100%;
}
.callout-section .embedded-video-block .ss-editor-video-embed-container,
.callout-section .embedded-video-block .ss-editor-video-embed-container iframe,
.callout-section .embedded-video-block .ss-editor-video-embed-container video {
	aspect-ratio: auto !important;
	height: 100%;
	margin: 0;
	object-fit: cover;
	object-position: 50%;
	padding: 0;
}
.callout-section .embedded-video-block .ss-editor-video-embed-container:not(.direct-video):after {
	display: none;
}
.callout-section .embedded-video-block .ss-editor-video-embed-container:not(.direct-video) .external-video-play-link {
	background-color: rgba(0,0,0,0.35);
	display: block;
	height: 100%;
	width: 100%;
}
.callout-section .embedded-video-block .ss-editor-video-embed-container:not(.direct-video) .external-video-play-link:after {
	background-color: #fff;
	clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
	content: '';
	display: block;
	height: 50px;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: height 0.3s ease, width 0.3s ease;
	width: 50px;
}
.callout-section .embedded-video-block .ss-editor-video-embed-container:not(.direct-video) .external-video-play-link:hover:after {
	height: 55px;
	width: 55px;
}
.callout-section .image-block {
	aspect-ratio: 4 / 3;
}
.callout-section .image-block img {
	display: block;
	height: 100% !important;
	margin: 0;
	object-fit: cover;
	object-position: 50% 25%;
	width: 100% !important;
}
@media (max-width: 1024px) {
	.ss-section-wrap.callout-section {
		padding: 0;
	}
	.callout-section .ss-section-wrap-inner {
		min-height: 0;
	}
	.callout-section .ss-content-block.image-block .inner-content-block-wrap {
		position: relative;
	}
}
@media (max-width: 980px) {
	.ss-section-wrap.callout-section {
		padding: 0;
	}
	.ss-section-wrap.callout-section:first-child {
		margin-top: -10px;
	}
	.ss-section-wrap.callout-section + .ss-section-wrap.callout-section {
		margin-top: -30px;
	}
	.ss-section-wrap.callout-section:last-child {
		margin-bottom: -10px
	}
}
@media (max-width: 750px) {
	.callout-section .ss-content-block:not(.image-block, .slideshow-block, .embedded-video-block) {
		padding: 30px;
	}
	.callout-section .slideshow-block, .callout-section .embedded-video-block {
		min-height:  500px;
		order: -1;
	}
}	

/* ---------------------------------------------------------------------------------------------------------- */
/* News------------------------------------------------------------------------------------------------------ */
/* ---------------------------------------------------------------------------------------------------------- */
.list-items li .content {
  	max-width: 100%;
}

.list-items li .read-more-wrap {
	text-align: right;
  	width: 130px;
}

.list-items.news-items .small-action-button {
	margin-left:-20px;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Buttons -------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.button, 
.white-button,
.small-action-button,
.small-white-button {
	background-color: var(--primary-color);
	border-radius: 0;
	border: 0;
	color: #fff;
	display: inline-block;
	font-family: 'Roboto',sans-serif;
	font-size: 18px;
	font-weight: 400;
	height: auto;
	margin: 0;
	padding: 8px 35px;
	text-align: center;
	text-transform: none;
	-webkit-transition: background 0.2s ease, color .2s ease;
	transition: background 0.2s ease, color .2s ease;
}

.button:hover, 
.small-action-button:hover,
.pager:hover, 
.pager-prev:hover,
.pager-next:hover, 
.pager.on {
	background: var(--secondary-color);
	color: #fff;
	opacity: 1;
}

.white-button, .small-white-button {
	background-color: #fff;
	color: var(--secondary-color)
}
.white-button:hover,
.small-white-button:hover {
	background-color: #eee;
}
.small-white-button {
	padding: 2px 18px;
}

form.category-and-window .text-search-wrap .submit {
	background-color: transparent;
	border-radius: 0;
	border: 1px solid var(--secondary-color);
	color: var(--secondary-color);
  	transition: all .2s ease;
  	-webkit-transition: all .2s ease;
}

form.category-and-window .text-search-wrap .submit:hover {
  	background-color: var(--secondary-color);
  	color: #fff;
}

.search-page-form-wrap .text-search-wrap .submit {
	background-color: transparent;
	border-radius: 0;
	border: 1px solid var(--secondary-color);
	color: var(--secondary-color);
	height: 28px;
	line-height: 18px;
  	transition: all .2s ease;
  	-webkit-transition: all .2s ease;
}

.search-page-form-wrap .text-search-wrap .submit:hover {
  	background-color: var(--secondary-color);
  	color: #fff;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Forms ---------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
input, select, textarea {
	box-sizing: border-box;
	max-width: 100%;
}

form.category-and-window .text-search-wrap .submit {
 	height: 25px; 	
}
  

table.cms-table .button {
	margin: 15px 0;
}

div#dd-print-button {
	margin-bottom: 35px;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Form Builder Page ----------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.right-side.full-width .feedback-form-wrap, 
.submission-form-wrap.has-driving-directions {
	width: 31%;
}

.driving-directions-wrap {
	float: right;
	width: 63%;
}

.ss-content-block .driving-directions-wrap,
.ss-content-block .submission-form-wrap.has-driving-directions {
	float: none;
	width: auto;
}

.ss-content-block .driving-directions-wrap {
	border-top: 1px solid #ccc;
	margin-top: 30px;
	padding-top: 30px;
}

.ss-content-block .driving-directions-wrap .print-button {
	display: none;
}

.driving-directions-input-fields {
	margin: 15px 0;
}

.field-wrap input[type=text] {
	width: 100%;
}

.driving-directions-wrap > br {
	display: none;
}

.map-content-wrap {
	display: inline-block;
	margin-top: 80px;
	width: 29%;
}

.map-wrap {
	float: right;
	width: 61%;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Driving Directions Page ---------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.map-content-wrap {
	width: 34%;
}

.map-content-wrap input {
	max-width: none;
	width: 100%;
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Form Builder Page----------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.map-content-wrap {
	display: inline-block;
	margin-top: 80px;
	width: 29%;
}

.map-wrap {
	float: right;
	width: 61%;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* News ----------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */



/* ---------------------------------------------------------------------------------------------------------- */
/* Blog ----------------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.blog-left-column {
	width: 75%;
}

.blog-right-column {
	width: 20%;
}

.title a:hover {
	text-decoration: none;
}

.detail-page.blog .hr {
	margin: 25px 0;
}
	
.blog-right-column {
	margin-top: 80px;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Testimonials ------------------------------------------------------------------------------------------ */
/* ---------------------------------------------------------------------------------------------------------- */
.lower-pager {
  	margin-bottom: 45px;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Image Link Grid ------------------------------------------------------------------------------------------ */
/* ---------------------------------------------------------------------------------------------------------- */
.image-grid-link-items .list-item.image-link-grid-item .title-link-wrap {
	background: none;
}

.image-grid-link-items .list-item.image-link-grid-item .image-wrap {
	overflow: hidden;
	position: relative;
}

.image-grid-link-items a.list-item.image-link-grid-item .image-wrap img {
	-webkit-transition: transform 1s linear;
	transition: transform 1s linear;
}

.image-grid-link-items a.list-item.image-link-grid-item .image-wrap {
	-webkit-transition: box-shadow 0.2s ease;
	transition: box-shadow 0.2s ease;
}

.image-grid-link-items a.list-item.image-link-grid-item .image-wrap:after {
	bottom: 0;
	border: 2px solid #006633;
	content: '';
	left: 0;
	opacity: 0;
	position: absolute;
	right: 0;
	top: 0;
	-webkit-transition: opacity 0.2s ease;
	transition: opacity 0.2s ease;
	z-index: 2;
}

.image-grid-link-items a.list-item.image-link-grid-item:hover .image-wrap:after {
	opacity: 1;
}

.image-grid-link-items a.list-item.image-link-grid-item:hover .image-wrap {
	box-shadow: 0 0 10px rgba(0,0,0,0.5);
}

.image-grid-link-items a.list-item.image-link-grid-item:hover .image-wrap img {
	transform: scale(1.4);
	-webkit-transition: transform 20s linear;
	transition: transform 20s linear;
}

.image-grid-link-items a.list-item.image-link-grid-item .title {
	text-align: left;	
	line-height: 150%;
	padding-top: 10px;
}

.image-grid-link-items .list-item.image-link-grid-item .title {
  	color: #002B46;
	font-family: 'Crimson Text', serif;
	font-size: 29px;
	font-weight: 400;
	text-align: left;
}

.image-grid-link-items a.list-item.image-link-grid-item .link.button {
	height: 35px;
	line-height: 35px;
	margin-top: 5px;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* 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 .text-search-wrap {
	border-radius: 0;
}

form.category-and-window ul.time-window-options li.selected a, 
form.category-and-window ul.time-window-options li:hover a {
	background: #282B2C;
}

form.category-and-window ul.display-options {
	margin-top: 0;
}

@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: 550px) {
	.event-links-bar h3 {
		font-size: 15px;
	}
	
	.event-links-bar .button {
		padding: 0 19px;
	}
  
  	.event-links-bar .button:hover {
 		background-color: #282B2C;
    }
	
	.event-links-bar .button .long {
		display: none;
	}
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Porfolio Page--------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.inspiration-gallery-items .row .col {
  	width: auto;
}

.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 {
	width: auto;
}

.inspiration-gallery-items.quad .row .col.col-last {
	float: left;
}

.inspiration-gallery-items.quad {
	margin: 0 auto;
	width: 90%;
}


 

/* ---------------------------------------------------------------------------------------------------------- */
/* Location Finder Page--------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.page-type-22 .middle-area-inner > .wrapper {
	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: #282B2C;
}

.map-locations-categories-heading-area .button, .map-locations-map-container-heading-area .button {
  	background-color: var(--primary-color);
  	font-size: 15px;
  	line-height: 24px;
	padding: 2px 20px;
}

.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: 67%;
}

.map-locations-search-wrap {
  	background-image: url(/images/icons/search-icon-1.svg);
  	background-size: 20px 50%;
}

.map-locations-categories {
  	left: 30px;
  	width: 26%;
}

.map-locations-zip-radius-wrap {
  	margin: 10px 5px;
}

.map-locations-map-container-heading-area.zip-code,
.map-locations-categories-heading-area,
.map-locations-map-container-heading-area {
  	background-color: #282B2C;
}

.map-locations-now-viewing {
  	background-color: #999;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Login Page Form ------------------------------------------------------------------------------------------ */
/* ---------------------------------------------------------------------------------------------------------- */
.login-page-form,
.additional-login-page-content,
#frontend-edit-crm-member-profile-form {
	padding: 0 25px;
	max-width: 1300px;
	margin: 45px auto;
}

.additional-login-page-content,
#frontend-edit-crm-member-profile-form {
	margin: 0 auto;
}

.login-page-form input[type=email],
.login-page-form input[type=text],
.login-page-form input[type=password] {
	margin-right: 9px;
	padding: 12px 10px;
}

.login-page-form input.button {
	border-radius: 0;
	padding: 5px 25px;
}

.logout-wrap {
	padding: 20px 15px;
	text-align: right;
}

.logout-wrap a:not(:last-child) {
	margin-right: 15px; 
}

#frontend-edit-crm-member-profile-form input.button {
	margin-right: 15px;
}


/* ---------------------------------------------------------------------------------------------------------- */
/* Interactive Map Page ------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.leaflet-container.leaflet-touch-drag.leaflet-touch-drag {
  	z-index: 1;
}

/* ----------------------------------------------------------------------------------------------------------------------- */
/* Global Override - Portfolio Builder Styles (2026) --------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */

.inspiration-gallery-right-side .inspiration-gallery-items {
	margin-bottom: 15px;
}
.inspiration-gallery-right-side .inspiration-gallery-items .col {
	aspect-ratio: 1 / 1;
	width: calc(100% / 3);
}
.inspiration-gallery-right-side .inspiration-gallery-items .col a {
	border: none;
	display: flex;
	flex-direction: column;
	position: relative;
}
.inspiration-gallery-right-side .inspiration-gallery-items .col a .image {
	border: none;
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}
.inspiration-gallery-right-side .inspiration-gallery-items .col a .caption {
	background: linear-gradient(180deg, transparent 0%, #333333 100%);
	color: #fff;
	display: block;
	font: 700 21px var(--default-font-family);
	letter-spacing: 0.02em;
	margin: auto 0 0;
	padding: 90px 15px 15px;
	text-transform: uppercase;
	z-index: 1;
}
.inspiration-gallery-right-side .inspiration-gallery-items .col a .caption:after {
	background-image: url(/images/icons/arrow-right-white.svg);
	background-position: 100% 50%;
	background-repeat: no-repeat;
	background-size: 4px;
	content: 'View Project';
	display: block;
	font: 500 12px 'Roboto';
	letter-spacing: 0.04em;
	margin-bottom: -18px;
	opacity: 0;
	padding-right: 12px;
	transition: margin-bottom 0.2s ease, opacity 0.2s ease;
	width: max-content;
}
.inspiration-gallery-right-side .inspiration-gallery-items .col a:hover .caption:after {
	margin-bottom: 0;
	opacity: 1;
}

@media (max-width: 600px) {
	.inspiration-gallery-right-side .inspiration-gallery-items {
		padding-bottom: 15px;
	}
	.inspiration-gallery-right-side .inspiration-gallery-items .col {
		width: 50%;
	}
}
@media (max-width: 500px) {
	.inspiration-gallery-right-side .inspiration-gallery-items .col {
		flex: 100%;
		max-width: none;
		width: 100%;
	}
}

/* ----------------------------------------------------------------------------------------------------------------------- */
/* Global Override - New Social Media Mashup Styles ---------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */

.social-stream.isotope-grid .element-item,
.ss-content-block .content-box-embed.social-stream .element-item {
	background-color: #f2f2f2;
	border: none;
	display: flex;
	flex-direction: column;
	padding-top: 0;
}
.ss-content-block .content-box-embed.social-stream {
	gap: 20px;
}
@media (min-width: 768px) {
	.ss-content-block .content-box-embed.social-stream .element-item {
		flex: calc(100% / 3);
		max-width: calc(100% / 3 - 20px);
		width: calc(100% / 3);
	}
}
.social-stream .element-item .photo {
	background-color: var(--primary-color);
	margin: 0;
	order: 1;
}
.social-stream .element-item.facebook .photo {
	display: none
}

.social-stream .element-item .photo a {
	border: none;
}
.social-stream .element-item .photo img {
	aspect-ratio: 1 / 1 !important;
}
.social-stream .element-item .author-and-share {
	order: 2;
}
.social-stream .element-item .author-and-share .author .fa {
	display: none;
}
.social-stream .element-item .author-and-share .share {
	display: none;
}
.social-stream .element-item .author-and-share .author {
	font: 600 16px 'Arial', sans-serif;
}
.social-stream .element-item .author-and-share .author a {
	color: #000;
	font-style: normal;
	padding-left: 5px;
	text-decoration: none;
}
.social-stream .element-item .item-content {
	order: 3;
}
.social-stream .element-item .item-footer {
	order: 4;
}
.ss-content-block .content-box-embed.social-stream .element-item .item-footer {
	margin-top: auto;
}

.social-stream .element-item.facebook .item-footer .adjective {
	display: none;
}

/* Use modern color schemes from each social media platform */

.social-stream .element-item.facebook .item-footer { 
	background-color: #0866FF;
}
.social-stream .element-item.twitter .item-footer {
	background: #000; /* using X's brand color */
}
.social-stream .element-item.youtube .item-footer {
	background: #FE0034;
}
.social-stream .element-item.pinterest .item-footer {
	background: #E60023;
}
.social-stream .element-item.instagram .item-footer {
	background: linear-gradient(45deg, #fd5949 0%, #d6249f 100%);
}

/* ----------------------------------------------------------------------------------------------------------------------- */
/* Global Override - New Image Grid Link Styles (2026) ------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */

.image-grid-link-items .list-item.image-link-grid-item {
	aspect-ratio: 1 / 1;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 20px;
}
.image-grid-link-items .element-item {
	overflow: hidden;
}
.image-grid-link-items .list-item.image-link-grid-item .image-wrap {
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: cover;
	bottom: 0;
	left: 0;
	margin: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
}
.image-grid-link-items .list-item.image-link-grid-item .image-wrap img {
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: 50%;
}
.image-grid-link-items .list-item.image-link-grid-item .content-wrap {
	bottom: 0;
	left: 0;
	overflow-x: hidden;
	overflow-y: scroll;
	opacity: 0;
	position: absolute;
	right: 0;
	top: 0;
}
.image-grid-link-items .list-item.image-link-grid-item .title-link-wrap {
	align-items: flex-end;
	background: linear-gradient(180deg, transparent 0%, transparent 40%, #000 60%, #000 100%);
	background-position: 50% 42%;
	background-size: 100% 350%;
	color: #fff;
	display: flex;
	height: calc(100% + 40px);
	margin: -20px;
	padding: 20px 20px 20px;
	transition: height 0.3s ease, background-position 0.3s ease, padding 0.3s ease;
}
.image-grid-link-items .list-item.image-link-grid-item:not(.no-description):hover .title-link-wrap {
	background-position: 200% 100%;
}
.image-grid-link-items .list-item.image-link-grid-item:not(.no-description):hover .title-link-wrap .title {
	opacity: 0;
}
.image-grid-link-items .list-item.image-link-grid-item .title-link-wrap .title {
	color: #fff;
	font: 700 21px var(--default-font-family);
	text-transform: uppercase;
	transition: opacity 0.3s ease;
}
.image-grid-link-items .list-item.image-link-grid-item .content-wrap {
	color: #fff;
	margin: 10px 10px 10px 0;
	padding: 10px 20px;
	transition: opacity 0.3s ease;
}
.image-grid-link-items .list-item.image-link-grid-item .content-wrap p {
	line-height: 155%
}
.image-grid-link-items .list-item.image-link-grid-item:hover .content-wrap {
	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: #fff;
	border-radius: 10px;
}
.image-grid-link-items a.list-item.image-link-grid-item .link.button {
	background-color: #fff;
	border: 1px solid #fff;
	color: var(--primary-color);
	position: relative;
	transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
	width: 100%;
}
.image-grid-link-items a.list-item.image-link-grid-item .link.button:hover {
	background-color: var(--primary-color);
	color: #fff;
}
.image-grid-link-items a.list-item.image-link-grid-item.no-description .title-link-wrap {
	align-items: flex-start;
	flex-direction: column;
	justify-content: flex-end;
}
.image-grid-link-items a.list-item.image-link-grid-item .link.button {
	background-color: transparent;
	background-image: url(/images/icons/arrow-right.svg);
	background-position: calc(100% - 5px) 50%;
	background-repeat: no-repeat;
	background-size: 5px;
	border: none;
	color: #000;
	filter: brightness(0) invert(1);
	font: 500 14px var(--default-font-family);
	height: max-content;
	letter-spacing: 0.12em;
	line-height: 100%;
	margin-bottom: 15px;
	margin-top: 5px;
	padding: 0 20px 0 0;
	position: relative;
	text-transform: uppercase;
	transition: background-position 0.2s ease;
	width: auto;
}
.image-grid-link-items a.list-item.image-link-grid-item .link.button:hover {
	background-color: transparent;
	background-position: 100% 50%;
}
.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.2);
	border-radius: 10px;
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Embedded Mosaic Caption Styles --------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
.inspiration-gallery-items.quad .row .col a .image img {
	margin: 0 auto; 
}

.embedded-mosaic-gallery .slide .caption {
  bottom: 0;
  font-size: 13px;
}


/* ----------------------------------------------------------------------------------------------------------------------- */
/* Toggle More ----------------------------------------------------------------------------------------------------------- */
/* ----------------------------------------------------------------------------------------------------------------------- */
.toggle-more-link {
	margin-bottom: 1px;
}

.toggle-more-link:last-child {
	margin-bottom: 20px;
}

.toggle-more-link a {
	background: #114062;
	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: #2A5F86;
	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;
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Overlay Styles ------------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */

.global-site-alert .heading {
	background-color: var(--secondary-color);
	padding-right: 20px;
}
.global-site-alert .heading h3 {
	text-transform: none;
}
.global-site-alert-popup .sosimple-overlay-close {
	right: 0;
	top: -40px;
}
#global-site-alert-popup .sosimple-overlay-close {
	background: none;
	outline: none;
	right: 0;
	top: -40px;
}
#global-site-alert-popup .sosimple-overlay-close:before {
	background-color: var(--default-font-color);
	clip-path: polygon(0% 40%, 40% 40%, 40% 0%, 60% 0%, 60% 40%, 100% 40%, 100% 60%, 60% 60%, 60% 100%, 40% 100%, 40% 60%, 0% 60%);
	content: '';
	display: block;
	height: 30px;
	pointer-events: none;
	position: absolute;
	transform: rotate(45deg);
	width: 30px;
}

.sosimple-underlay {
	backdrop-filter: blur(30px);
	background-color: rgba(255,255,255,0.8);
	opacity: 1;
}
.sosimple-overlay.member-directory {
	bottom: 30px;
	max-height: 500px;
	left: 30px;
	margin: auto !important;
	max-width: 1300px;
	position: fixed;
	right: 30px !important;
	top: 30px !important;
	width: auto !important;
}
.sosimple-overlay.member-directory, .sosimple-overlay.member-directory .image-column {
	padding: 0;
}
.sosimple-overlay.member-directory .detail-page.member-directory {
	border: none;
	display: flex;
	height: 100%;
	margin: 0;
	padding: 0;
}
.sosimple-overlay.member-directory .detail-page.member-directory .image-column {
	aspect-ratio: 1 / 1;
	width: auto;
}
.sosimple-overlay.member-directory .detail-page.member-directory .image-column .image,
.sosimple-overlay.member-directory .detail-page.member-directory .image-column .image img {
	height: 100%;
}
.sosimple-overlay.member-directory .detail-page.member-directory .image-column .image {
	width: auto;
}
.sosimple-overlay.member-directory .detail-page.member-directory .image-column .image img {
	object-fit: cover;
	object-position: 50%;
}
.sosimple-overlay.member-directory .detail-page.member-directory .info-column {
	box-sizing: border-box;
	flex: auto;
	height: max-content;
	margin: auto;
	max-height: 500px;
	overflow-x: hidden;
	overflow-y: scroll;
	padding: 30px 60px;
}
.sosimple-overlay.member-directory .detail-page.member-directory .info-column .info-table:nth-child(3) {
	display: none;
}
.sosimple-overlay.member-directory .detail-page.member-directory .info-column::-webkit-scrollbar {
	background-color: transparent;
	width: 10px;
}
.sosimple-overlay.member-directory .detail-page.member-directory .info-column::-webkit-scrollbar-thumb {
	background-color: #e0e0e0;
}
.sosimple-overlay.member-directory .detail-page.member-directory .info-column h3,
.sosimple-overlay.member-directory .detail-page.member-directory .info-column tr th {
	display: none;
}
.sosimple-overlay.member-directory .detail-page.member-directory .info-column tr td {
	padding-left: 0;
	padding-right: 0;
}
.sosimple-overlay.member-directory .detail-page.member-directory .info-column .title {
	font: 700 42px 'Open Sans';
	letter-spacing: normal;
	margin-bottom: 0;
	text-transform: none;
}


.sosimple-overlay.has-video-or-iframe {
	aspect-ratio: 16 / 9;
	height: max-content !important;
	left: 50%;
	margin: 0 auto !important;
	max-width: calc(100% - 60px);
	padding: 0;
	transform: translateX(-50%) !important;
	width: 1000px !important;
}
.sosimple-overlay.has-video-or-iframe iframe {
	display: block;
	height: 100% !important;
	margin: 0;
	width: 100%;
}

@MEDIA (max-width: 1200px) {
	.sosimple-overlay.member-directory .detail-page.member-directory .image-column {
		max-width: calc(100% / 3);
	}
}
@MEDIA (max-width: 1024px) {
	.sosimple-overlay.member-directory {
		max-height: none;
		top: 60px !important;
	}
	.sosimple-overlay.member-directory .detail-page.member-directory {
		flex-direction: column;
	}
	.sosimple-overlay.member-directory .detail-page.member-directory .image-column {
		aspect-ratio: auto;
		max-height: 50dvh;
		max-width: none;
		position: relative;
		width: 100%;
	}
	.sosimple-overlay.member-directory .detail-page.member-directory .image-column .image {
		max-height: 100%;
	}
	.sosimple-overlay.member-directory .detail-page.member-directory .info-column {
		height: max-content;
		max-width: none;
		overflow-x: hidden;
		padding: 30px;
		width: auto;
	}
}

/* ---------------------------------------------------------------------------------------------------------- */
/* Responsive Styles ---------------------------------------------------------------------------------------- */
/* ---------------------------------------------------------------------------------------------------------- */
@media screen and (max-width: 1300px) {
	body {
		font-size: 15px;
	}
	
	.primary-nav-wrap ul a {
		font-size: 14px;
	}
	
	.header .wrapper {
		margin: 0 25px;
	}
	
	.header-quick-links .left-side {
		margin-left: 25px;
	}

	.inspiration-gallery-items .row .col a .image img {
		height: auto;
		max-width: 100%;
	}

	.inspiration-gallery-items.quad .row .col a .image img {
		max-width: 100%;
	}
}

@media screen and (max-width: 1055px) {
	.inspiration-gallery-items.dual .row .col.col-last {
		float: left;
		padding: 0;
	}

	.inspiration-gallery-items.dual {
		margin: 0 auto;
		width: 50%;
	}
}

@media screen and (min-width: 980px) and (max-width: 1000px) {
	.header .wrapper {
		position: relative;
	}
	
	.header .logo {
		margin: 0;
		position: absolute;
		top: 0;
	}
	.alternate-header .header .logo {
		top: 0;
	}
}

@media screen and (max-width: 1100px) {
	h2, .h2-style {
		font-size: 34px;
	}
	body {
		font-size: 16px;
		overflow-x: hidden; 
		padding-top: 60px;
	}

	body.nav-active { 
		overflow: hidden; 
	}

	.main-content {
		padding: 20px;
	}
	
	.page-type-0 .main-content {
		padding: 10px 0;
	}

	.header {
		height: 60px;
		left: 0;
		padding-left: 20px;
		padding-right: 20px;
		padding-top: 0;
		position: fixed;
		right: 0;
		top: 0;
		z-index: 101;
	}
	
	body.scrolled .header {
		height: 60px;	
	}
	
	.header .wrapper {
		margin: 0;
	}

	.header-quick-links .right-side ul li:last-child {
		padding-left: 0;
	}

	.header .logo,
	body.scrolled .header .logo {
		margin-top: 8px;
		width: 230px;
	}

	.nav-toggle {
		cursor: pointer;
		display: block;
		float: right;
		height: 25px;
		right: 15px;
		position: fixed;
		top: 17px;
		width: 26px;
		z-index: 101;
	}

	.nav-toggle span {
		background-color: #333;
		height: 2px;
		position: absolute;
		transition: all .3s ease;
		width: 26px;
	}

	.hamburger-first {
		top: 5px;
	}

	.hamburger-second {
		top: 11px;
	}

	.hamburger-third {
		top: 17px;
	}

	.nav-active .hamburger-first {
		top: 11px;
		transform: rotate(45deg);
	}

	.nav-active .hamburger-second {
		opacity: 0;
	}

	.nav-active .hamburger-third {
		top: 11px;
		transform: rotate(-45deg);
	}

	.header-quick-links {
		background: #efefef;
		box-shadow: none;
		float: none;
		height: auto;
		line-height: 100%;
		padding: 50px 0 10px;
		position: static;
	}
	
	.header-quick-links .left-side,
	.header-quick-links .right-side {
		float: none;
		margin: 0;
	}
	
	.header-quick-links .left-side {
		margin-left: 20px;
	}
	.header-quick-links .left-side ul li {
		margin: 0 0 8px;
	}
	.header-quick-links .left-side ul li:last-child {
		margin: 0 0 15px
	}
	
	.header-quick-links img {
		margin: 2px 5px 0 0;
	}

	.header-quick-links .right-side ul {
		-webkit-columns: 2;
		-moz-columns: 2;
		columns: 2;
	}

	.header-quick-links ul li {
		border-right: none;
		float: none;
		margin: 0 20px 11px;
		padding: 0;
	}
	
	.header-quick-links ul li:before {
		display: none;
	}

	.header-quick-links ul li a {
		color: var(--quartiary-color);
		font-size: 18px;
	}

	.header-quick-links ul li a:hover {
		color: #282B2C;
	}

	.header-quick-links input[type="text"], 
	.search-active .header-quick-links input[type="text"] {
		color: #282B2C;
	}

	.search-form {
		background: #efefef;
		border-radius: 0;
		margin: 0 0 20px;
		padding: 0 20px 15px;
		float: none;
		clear: both;
	}
	
	.search-form .input-wrap {
		background-color: transparent;
		float: left;
		position: static;
		opacity: 1;
		visibility: visible;
	}

	.search-form input[type="text"] {
		background: rgba(0,0,0,0.1);
		border: 0;
		color: var(--default-font-color);
		width: 200px;
	}
	.search-form input[type="text"]::placeholder {
		color: var(--default-font-color);
	}

	.search-form .submit {
		background-color: var(--primary-color);
		background-image: none;
		-webkit-mask-image: url(/images/icons/search-icon.svg);
		-webkit-mask-position: 50%;
		-webkit-mask-repeat: no-repeat;
		-webkit-mask-size: contain;
		float: right;
		margin: 5px 0 0 5px;
	}

	.wrapper .main-content {
		margin: 0 auto;
	}

	.primary-nav-wrap {
		background-color: rgba(255,255,255,1);
		bottom: 0;
		float: none;
		margin: 0;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		padding: 0 0 15px 0;
		position: fixed;
		right: -295px;
		top: 0;
		width: 295px;
		transition: all .5s ease;
		z-index: 100;
	}

	.nav-active .primary-nav-wrap {
		box-shadow: -5px 0 20px 1px rgba(0,0,0,.25);
		right: 0;	
	}

	.primary-nav-wrap .level-0 {
		border-top: 1px solid rgba(0,0,0,0.05);
		float: none;
		margin-top: 20px;
	}

	.primary-nav-wrap > ul > li {
		border-bottom: 1px solid rgba(0,0,0,0.05);
		float: none;
	}

	.primary-nav-wrap > ul > li > a {
		color: #282B2C;
		padding: 10px 20px;
		height: auto;
		line-height: 18px;
		font-size: 16px;
	}

	.primary-nav-wrap > ul li a:focus {
		background-color: var(--primary-color);
		color: #fff;
	}

	.primary-nav-wrap > ul li a:hover {
		background-color: var(--primary-color);
		color: #fff;
	}

	.primary-nav-wrap > ul > li > ul {
		background: #282B2C;
		overflow: hidden;
		max-height: 0;
		opacity: 0;
		padding: 0;
		position: static;
		transform: none;
		-webkit-transition: opacity 0.2s ease, visibility 0.2s ease;
		transition: opacity 0.2s ease, visibility 0.2s ease;
		visibility: visible;
	}

	.primary-nav-wrap > ul > li.selected > ul {
		opacity: 1;
		max-height: 2000px;
		padding: 15px;
	}

	/* .primary-nav-wrap > ul > li.sub > a:after,
	.primary-nav-wrap ul.level-1 > li.sub > a:after {
		background: url(/images/icons/plus-dark.svg) 50% 50% no-repeat;
		background-size: 100% auto;
		content: '';
		display: block;
		float: right;
		height: 11px;
		margin-top: 3px;
		width: 11px;
	}

	.primary-nav-wrap ul.level-1 > li.sub > a:after {
		background-image: url(/images/icons/plus-white.svg);
		height: 8px;
		width: 8px;
	}

	.primary-nav-wrap ul.level-1 > li.sub:hover > a:after {
		background-image: url(/images/icons/plus-dark.svg);
	}

	.primary-nav-wrap > ul > li.sub:hover > a:after {
		background-image: url(/images/icons/plus-white.svg);
	}

	.primary-nav-wrap > ul > li.sub.selected > a:after,
	.primary-nav-wrap > ul > li.sub > a.clicked-once:after,
	.primary-nav-wrap ul.level-1 > li.sub > a.clicked-once:after,
	.primary-nav-wrap ul.level-1 > li.sub.selected > a:after {
		background-image: url(/images/icons/minus.svg);
	} */
	
	.primary-nav-wrap > ul > li > ul > li > a {
		color: #fff;
		font-size: 16px;
		padding: 8px 8px;
	}
	
	.primary-nav-wrap > ul > li > ul > li.selected > a,
	.primary-nav-wrap > ul > li > ul > li:hover > a,
	.primary-nav-wrap ul.level-2 > li.selected > a,
	.primary-nav-wrap ul.level-2 > li:hover > a {
		background: #fff;
		color: #282B2C;
	}

	.primary-nav-wrap ul.level-2 {
		display: none;
		padding: 5px 0;
	}

	.primary-nav-wrap .level-2 li a {
		display: block;
		font-size: 12px;
		padding: 5px 5px 5px 25px;
	}
	
	.page-banner {
		padding: 10px 0;
	}

	.page-banner h1 {
		font-size: 36px;
	}

	.secondary-nav-wrap {
		display: none;
	}

	.ss-section-wrap {
		padding-left: 10px;
		padding-right: 10px;
	}
	
	.map-locations-categories-heading-area .button, 
	.map-locations-map-container-heading-area .button {
		font-size: 12px;
		line-height: 24px;
		padding: 2px 10px;
	}

	.map-locations-map-container {
		float: none;
		margin-top: 45px;
		padding: 0;
		width: auto;
	}

	.map-locations-categories {
		float: none;
		position: static;
		width: auto;
	}

	.map-locations-zip-radius-wrap {
		margin: 10px 5px;
	}

	.map-locations-map-container-heading-area.zip-code,
	.map-locations-categories-heading-area,
	.map-locations-map-container-heading-area {
		background-color: #2E6486;
	}

	.map-locations-now-viewing {
		background-color: #999;
	}

	.map-locations-categories-heading-area h3,
	.map-locations-map-container-heading-area h3,
	.map-locations-zip-radius-wrap h3 {
		font-size: 18px;
		text-align: left;
	}

	.inspiration-gallery-items.quad .row .col {
		width: auto;
	}

	.inspiration-gallery-items.quad .row .col.col-last {
		float: left;
	}

	.map-wrap {
		float: none;
		width: 100%;
	}

	.map-content-wrap {
		margin-top: 0;
		width: 100%;
	}

	.member-directory-filter-wrap form.category-and-window select {
		display: block;
		float: none;
		margin: 0 0 15px;
	}

	form.category-and-window .text-search-wrap {
		float: none;
		margin: 20px 0 25px;  
	}

	form.category-and-window .text-search-wrap .submit {
		border-radius: 0 5px 5px 0;
	}

	.driving-directions-wrap {
		width: 100%
	}

	.driving-directions-input-fields .submit-wrap {
		text-align: left;
	}

	.print-button.fr {
		float: left;
	}

	.print-button {
		display: none;
	}

	.submission-form-wrap.has-driving-directions {
		border-bottom: 1px solid #ccc;
		margin-bottom: 50px;
		padding-bottom: 50px;
		width: 100%;
	}

	.inspiration-gallery-items.dual {
		width: 75%;
	}

	.blog-left-column,
	.blog-right-column {
		float: none;
		width: auto;
	}

	.detail-page.member-directory .image-column {
		width: 35%;
	}

	.detail-page.member-directory .info-column {
		width: 65%;
	}
}

@media (max-width: 1024px) {
	.homepage-intro-section .ss-content-block {
		max-width: 100%;
	}
	.homepage-intro-section .inline-gallery-wrap .stage .slide {
		flex-direction: column;
	}
	.homepage-intro-section .inline-gallery-wrap .stage .slide .image,
	.homepage-intro-section .inline-gallery-wrap .stage .slide .image img {
		aspect-ratio: 16 / 9;
		max-height:400px;
		max-width: 100%;
	}
	.homepage-intro-section .inline-gallery-wrap .stage .slide .caption {
		padding: 15px 35px !important;
	}
	.footer .wrapper {
		align-items: center;
		flex-direction: column;
	}
	.footer .lower-footer .wrapper {
		gap: 15px;
	}
	.footer .footer-contact-info {
		max-width: none;
		text-align: center;
		width: 100%;
	}
	.footer .upper-footer .footer-nav {
		text-align: center;
	}
}

@media (max-width: 768px) {
	.ss-section-wrap:first-child .inner-content-block-wrap {
		padding: 30px 20px;
	}
	.callout-section:first-child .inner-content-block-wrap {
		padding: 0;
	}
	.info-boxes .ss-section-wrap-inner {
		padding-bottom: 5px;
		padding-top: 10px
	}
	.inner-content-block-wrap {
		padding: 25px 20px;
	}
	.ss-section-wrap.homepage-banner .inner-content-block-wrap {
		padding: 0;
	}
}

@media screen and (max-width: 680px) {
	.calendar td .inner, .calendar-detail-page .calendar td .inner {
		text-align: center;
	}
	
	.list-item.resource-item .button.fr {
		font-size: 10px;
		margin-top: 16px;
		padding: 0 13px;
	}
	
	.list-items .list-item.resource-item .file-wrap {
		background-size: 28px auto !important;
		padding-left: 45px;
	}
	
	.list-items .list-item.resource-item h2.title {
		font-size: 20px;
		margin-bottom: 0;
	}
}

@media screen and (max-width: 550px) { 
	.inner-content-block-wrap {
		height: max-content;
		margin: auto;
	}

	.ss-section-wrap-inner .wrapper {
		margin: 0 auto;
		max-width: none;
	}

	.header .wrapper {
		margin: 0 auto;
		max-width: none;
	}

	.wrapper .main-content {
		margin: 0 auto;
		max-width: none;
	}

	.header-quick-links {
		float: none;
		margin: 0;
	}
	
	.embedded-gallery .prev-arrow, 
	.embedded-gallery .next-arrow, 
	.homepage-banner .arrow-wrap .prev-arrow, 
	.homepage-banner .arrow-wrap .next-arrow {
		height: 40px;
		margin-top: -20px;
		width: 40px;
	}
	
	.member-directory-items .member-directory-item {
		width: 47%;
	}
	
	.footer .wrapper {
		margin: 0 10px;
	}

	.footer .copyright,
	.footer .social {
		float: none;
		text-align: center;
	}

	.footer .social {
		margin-top: 20px;
	}
	
	.detail-page.member-directory .image-column,
	.detail-page.member-directory .info-column {
		float: none;
		padding: 0;
		width: auto;
	}

	.page-type-10 .info-table td, 
	.page-type-10 .info-table th { 
		padding: 6px 0; 
	}

	.social-stream .element-item .item-footer .posted-date-label {
		display: none;
	}

	.ss-accordion-content-wrap .ss-accordion-content {
		padding-left: 0;
		padding-right: 0;
	}
}

@media (max-width: 500px) {
	.inner-content-block-wrap h2:first-child:last-child {
		margin-bottom: -30px;
	}
}

@media (max-width: 450px) {
	.social-stream.isotope-grid .element-item, .social-stream.isotope-grid .grid-sizer {
		width: 100%;
	}
}
@media (max-width: 400px) {
	h2, .h2-style {
		font-size: 30px;
	}
}

/* ----------------------------------------------------------------------------------------------------------------------- */
/* Demo Site Color Picker ------------------------------------------------------------------------------------------------ */
/* ----------------------------------------------------------------------------------------------------------------------- */
.site-color-picker-wrapper {
	position: fixed;
	right: 0;
	top: 228px;
	z-index: 55;
}

#site-color-picker-link {
	background: #fff;
	border-radius: 70px 0 0 70px;
	box-shadow: -20px 0px 16px rgba(0,0,0,0.16);
	color: #001B29;
	display: block;
	font: 700 16px var(--alt-font-family);
	line-height: 100%;
	opacity: 50%;
	margin-right: -100px;
	padding: 6px 30px 6px 50px;
	position: relative;
	text-decoration: none;
	transition: opacity 0.3s ease, margin 0.3s ease;
	width: 70px;
}
body.at-top .site-color-picker-wrapper #site-color-picker-link,
.site-color-picker-wrapper:hover #site-color-picker-link {
	margin-right: -30px;
	opacity: 1;
}
.site-color-picker-wrapper.show-color-picker #site-color-picker-link {
	margin-right: 0;
	opacity: 1;
}
#site-color-picker-link:before {
	background-image: url(/images/icons/color-spectrum-icon.svg);
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: contain;
	content: '';
	display: block;
	height: 30px;
	left: 7px;
	position: absolute;
	top: 7px;
	transition: transform 0.3s ease 0.15s;
	width: 30px;
}

.site-color-picker-wrapper.show-color-picker #site-color-picker-link:before {
	transform: rotate(360deg);
}

.site-color-picker-wrapper .color-picker-drop {
	background: #ECECEC;
	border-radius: 8px;
	box-shadow: 0px 10px 20px rgba(0,0,0,0.16);
	display: flex;
	gap: 40px;
	opacity: 0;
	padding: 10px 30px 5px 15px;
	pointer-events: none;
	position: fixed;
	right: 200px;
	top: 150px;
	transition: opacity 0.3s ease;
}
.site-color-picker-wrapper .color-picker-heading {
	font: 600 16px var(--secondary-font-family);
	padding: 0 10px;
}
.site-color-picker-wrapper .color-picker-drop .sp-container,
.site-color-picker-wrapper .color-picker-drop .sp-picker-container {
	background-color: transparent;
	border: none;
}

.site-color-picker-1-wrapper, .site-color-picker-2-wrapper {
	position: relative;
}

.site-color-picker-wrapper.show-color-picker .color-picker-drop {
	opacity: 1;
	pointer-events: all;
	transition: opacity 0.3s ease 0.3s;
}
.site-color-picker-wrapper .color-picker-drop .sp-color-preview-1,
.site-color-picker-wrapper .color-picker-drop .sp-color-preview-2 {
	border: 1px solid #000;
	border-radius: 3px;
	bottom: 14px;
	display: block;
	height: 25px;
	left: 10px;
	position: absolute;
	width: 70px;
	z-index: 1;
}
.site-color-picker-wrapper .color-picker-drop .sp-color-preview-2 {
	
/* left: calc(50% + 12px); */
}
.close-site-color-picker {
	position: absolute;
	top: 14px;
	right: 12px;
	height: 10px;
	width: 10px;
	transform: rotate(45deg);
}

.close-site-color-picker:before,
#site-color-picker-link:after {
	background: #000;
	clip-path: polygon(0% 40%, 40% 40%, 40% 0%, 60% 0%, 60% 40%, 100% 40%, 100% 60%, 60% 60%, 60% 100%, 40% 100%, 40% 60%, 0% 60%);
	content: '';
	height: 12px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 12px;
}
#site-color-picker-link:after {
	right: 10px;
	top: calc(50% - 5px);
	transform: rotate(45deg);
}

.close-site-color-picker:after {
	height: 100%;
	left: 50%;
	top: auto;
	transform: translateX(-50%);
	width: 2px;
}

@media (max-width: 768px) {
	.site-color-picker-wrapper {
		top: 100px;
	}
	.site-color-picker-wrapper .color-picker-drop {
		flex-direction: column;
		right: 10px;
	}
}