/*
Theme Name: Tapestry Charter Twenty-Six
Theme URI: https://tapestrycharter.org/
Description: A WordPress theme for the Tapestry Charter website using Bootstrap v5.3.8
Version: 2026.04
Author: Biscuit Studios
Author URI: https://biscuitstudios.com/
Tags: custom header, responsive, custom-menu, custom fields, translation-ready
*/

/*-------------------------------------------------------------------------*/

/* THEME UPDATES */

/*-------------------------------------------------------------------------*/

/*
1. functions.php - TinyMCE colors
2. css/editor-style.css - add button colors
3. update flexible content bg colors in ACF
4. update screenshot.png
5. assets/js/biscuit-button-blocks.js - button colors
6. assets/js/biscuit-custom.js - updated alt image name
7. update fonts in header and stylesheet
8. set the content-wrapper margin to match the nav bar
9. update Print URLs in stylesheet
*/

/*-------------------------------------------------------------------------*/

/* FONTS */

/*-------------------------------------------------------------------------*/

/* font-family: "Atkinson Hyperlegible", Helvetica, Arial, sans-serif; (200 - 900) */
/* font: normal 17px/180% "Atkinson Hyperlegible", Helvetica, Arial, sans-serif; */

/*
@font-face {
    font-family: 'wisdom_scriptregular';
    src: url('assets/fonts/wisdom_script_aj-webfont.woff2') format('woff2'),
         url('assets/fonts/wisdom_script_aj-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
*/

/*-------------------------------------------------------------------------*/

/* GLOBAL ELEMENTS */

/*-------------------------------------------------------------------------*/

/* Define a variable */
:root {
	/*  FONTS  */
	--atkinson: "Atkinson Hyperlegible", Helvetica, Arial, sans-serif;
	
	/*  TEXT  */
	/* https://www.fluid-type-scale.com/calculate?minFontSize=16&minWidth=390&minRatio=1.125&maxFontSize=18&maxWidth=1280&maxRatio=1.25&steps=xs%2Cs%2Cm%2Cl%2Cxl&baseStep=m&prefix=text&useContainerWidth=true&includeFallbacks=false&useRems=true&remValue=16&decimals=2&previewFont=Atkinson+Hyperlegible&previewText=Tapestry&previewWidth=1280 */
	--text-xs: clamp(0.79rem, -0.13cqi + 0.82rem, 0.72rem);
	--text-s: clamp(0.89rem, 0.02cqi + 0.88rem, 0.9rem);
	--text-m: clamp(1rem, 0.22cqi + 0.95rem, 1.13rem);
	--text-l: clamp(1.13rem, 0.51cqi + 1rem, 1.41rem);
	--text-xl: clamp(1.27rem, 0.88cqi + 1.05rem, 1.76rem);
	
	/*  HEADINGS  */
	/* https://www.fluid-type-scale.com/calculate?minFontSize=20&minWidth=390&minRatio=1.25&maxFontSize=24&maxWidth=1280&maxRatio=1.333&steps=6%2C5%2C4%2C3%2C2%2C1%2Ctitle&baseStep=4&prefix=h&useContainerWidth=undefined&includeFallbacks=false&useRems=true&remValue=16&decimals=2&previewFont=Zalando+Sans&previewText=Redefining&previewWidth=1280 */
	--h6: clamp(0.8rem, 0.08cqi + 0.78rem, 0.84rem);
	--h5: clamp(1rem, 0.23cqi + 0.95rem, 1.13rem);
	--h4: clamp(1.25rem, 0.45cqi + 1.14rem, 1.5rem);
	--h3: clamp(1.56rem, 0.79cqi + 1.37rem, 2rem);
	--h2: clamp(1.95rem, 1.28cqi + 1.64rem, 2.67rem);
	--h1: clamp(2.44rem, 2cqi + 1.95rem, 3.55rem);
	--h-title: clamp(3.05rem, 3.03cqi + 2.31rem, 4.74rem);
	
	/*  COLORS  */
	--primary-color: #003C70;
	--secondary-color: #7CB0D5;
	--tertiary-color: #9C2B2F;
	/* --accent-color: #9C2B2F; */
	--dark-black-color: #262626;
	--black-color: #4A4A4A;
	--gray-color: #727272;
	--light-gray-color: #F2F2F2;
	--white-color: #FFF;
	--error-color: #930;
	
	/*  BORDER RADIUS  */
	--border-radius-s: 4px;
	--border-radius-m: 8px;
	--border-radius-l: 16px;
	--border-radius-xl: 24px;
	
}
html {
    position: relative;
    min-height: 100%;
}
body {
	color: var(--black-color);
	/* background: var(--white-color) url(assets/images/bg_image.png) repeat top left; */
	background: var(--white-color);
	font-family: var(--atkinson);
	font-size: var(--text-m);
	font-weight: 400;
	line-height: 1.6;
	font-variant-ligatures: no-common-ligatures; /* no ligatures */	
}
header, a, img, li {
    transition: all 0.3s ease;
}
a {
	color: var(--primary-color);
    transition: all 0.3s ease;
}
a:hover {
	color: var(--dark-black-color);
}
a:active,
a:focus {
	color: var(--dark-black-color);
}
a.no-border {
	text-decoration: none !important;
}
a:hover.no-border {
	text-decoration: none !important;
	filter: alpha(opacity=60);
    opacity: 0.6;
}
a[target="_blank"]:after,
#navigation-modal a[target="_blank"]:after,
.external-site a:after  {
	content: "\ea99";
	font-family: "tabler-icons";
	font-style: normal;
	font-weight: normal;
	margin-left: 4px;
}
a img {
	display: inline-block;
}

/* WordPress standard visually-hidden utility — required by core, plugins, and
   The Events Calendar. Without this rule, .screen-reader-text-wrapped labels
   (e.g. the full weekday names in TEC's month view) render visibly next to
   their visible siblings (e.g. "W Wednesday"). The :focus variant reveals
   skip-to-content links for keyboard users. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}
.screen-reader-text:focus {
	background-color: #eee;
	clip: auto !important;
	clip-path: none;
	color: #444;
	display: block;
	font-size: 1em;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}
a[href^="tel:"] {
	white-space: nowrap;
}
a[data-bs-toggle] {
	cursor: pointer;
}
p {
	margin: 0 0 24px 0;
}
body :is(p, h1, h2, h3, h4, h5, h6) {
	text-wrap: pretty;
}
ul, ol {
	margin: 0 0 24px 0;
}
li {
	/* line-height: 1.4; */
	margin: 0 0 12px 0;
}
li li {
	margin-top: 12px;
}
ol {
	list-style-type: decimal;
}
ol li {
	margin: 0 0 12px 6px;
    padding-left: 6px;
}
ol ol {
	list-style: disc;
}
ol ol ol {
	list-style: lower-roman;
}
ol ol ol ol {
	list-style: lower-alpha;
}
strong, b {
    font-weight: 700;
}
em, i {
	font-style: italic;
}
address {
    margin-bottom: 12px;
	font-size: var(--text-s);
	font-weight: 400;
	line-height: 1.6;
}
blockquote {
	clear: both;
	color: var(--secondary-color);
	background-color: transparent;
	font-size: var(--text-xl);
	font-weight: 400;
	font-style: italic;
	line-height: 1.6;
	text-shadow: none;
	border-left: 5px solid var(--primary-color);
	padding: 12px 0 17px 30px;
	margin: 40px 0 40px 0;
	overflow: hidden;
}
blockquote p:first-child:first-letter {
	float: none !important;
	font-size: calc(var(--text-xl) * 2) !important;
	font-weight: 400 !important;
	line-height: 1 !important;
	padding-top: 0 !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
}
blockquote p:last-child {
	margin: 0;
}
blockquote span {
	font-size: var(--text-s);
	font-style: normal;
	text-transform: uppercase;
}
hr.thin {
	clear: both;
	background-color: var(--light-gray-color);
	border: 0;
	border-radius: 1px;
	height: 1px;
	margin-top: 24px;
	margin-bottom: 24px;
	max-width: 100%;
	opacity: 1.0;
}
hr.white {
	clear: both;
	background-color: rgba(198, 223, 236, 0.5);
	border: 0;
	border-radius: 5px;
	height: 5px;
	margin-top: 36px;
	margin-bottom: 36px;
	max-width: 140px;
	opacity: 1.0;
}
hr.lg {
	clear: both;
	background-color: var(--light-gray-color);
	border: 0;
	border-radius: 5px;
	height: 5px;
	margin-top: 36px;
	margin-bottom: 36px;
	max-width: 140px;
	opacity: 1.0;
}
hr.md {
	clear: both;
	background-color: var(--light-gray-color);
	border: 0;
	border-radius: 5px;
	height: 5px;
	margin-top: 12px;
	margin-bottom: 24px;
	max-width: 140px;
	opacity: 1.0;
}
hr.sm {
	clear: both;
	background-color: var(--light-gray-color);
	border: 0;
	border-radius: 5px;
	height: 5px;
	margin-top: 0;
	margin-bottom: 0;
	max-width: 140px;
	opacity: 1.0;
}
hr {
	clear: both;
	background-color: var(--light-gray-color);
	border: 0;
	border-radius: 5px;
	height: 5px;
	margin-top: 0;
	margin-bottom: 24px;
	max-width: 140px;
	opacity: 1.0;
}
hr.centered {
	margin-left: auto;
	margin-right: auto;
}
.gray-bg hr {
	background-color: #E5E5E5;
}
embed,
object,
video {
	max-width: 100%;
	margin-bottom: 24px;
}
iframe {
	max-width: 100%;
	margin-bottom: 0;
}
img, a img {
	border: none;
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}
a img {
   cursor: pointer;
}

/*-------------------------------------------------------------------------*/

/* HEADING TAGS */

/*-------------------------------------------------------------------------*/

.h-title {
	color: var(--dark-black-color);
	font-size: var(--h-title);
	font-weight: 700;
	line-height: 1.05;
	text-transform: none;
	margin-block-end: 0.5em;
}
h1, .h1 {
	color: var(--dark-black-color);
	font-size: var(--h1);
	font-weight: 700;
	line-height: 1.1;
	text-transform: none;
	margin-block-end: 0.5em;
}
h2, .h2 {
	color: var(--dark-black-color);
	font-size: var(--h2);
	font-weight: 700;
	line-height: 1.2;
	text-transform: none;
	margin-block-end: 0.5em;
}
h3, .h3 {
	color: var(--dark-black-color);
	font-size: var(--h3);
	font-weight: 700;
	line-height: 1.3;
	text-transform: none;
	margin-block-end: 0.5em;
}
h4, .h4 {
	color: var(--dark-black-color);
	font-size: var(--h4);
	font-weight: 700;
	line-height: 1.4;
	text-transform: none;
	margin-block-end: 0.5em;
}
h5, .h5 {
	color: var(--dark-black-color);
	font-size: var(--h5);
	font-weight: 700;
	line-height: 1.5;
	text-transform: none;
	margin-block-end: 0.5em;
}
h6, .h6 {
	color: var(--dark-black-color);
	font-size: var(--h6);
	font-weight: 700;
	line-height: 1.5;
	text-transform: none;
	margin-block-end: 0.5em;
}

/*-------------------------------------------------------------------------*/

/* TEXT SIZES & COLOR  */

/*-------------------------------------------------------------------------*/

.text-xl {
	font-size: var(--text-xl);
	line-height: 1.3;
}
.text-l {
	font-size: var(--text-l);
	line-height: 1.4;
}
.text-m {
	font-size: var(--text-m);
	line-height: 1.5;
}
.text-s {
	font-size: var(--text-s);
	line-height: 1.5;
}
.text-xs {
	font-size: var(--text-xs);
	line-height: 1.5;
}

.blue-color {
	color: var(--primary-color);
}
.light-blue-color {
	color: var(--secondary-color);
}
.red-color {
	color: var(--tertiary-color);
}
.dark-black-color {
	color: var(--dark-black-color);
}
.black-color {
	color: var(--black-color);
}
.gray-color {
	color: var(--gray-color);
}
.light-gray-color {
	color: var(--light-gray-color);
}
.white-color {
	color: var(--white-color);
}
.error-color {
	color: var(--error-color);
}

.border-radius-xl {
	border-radius: var(--border-radius-xl);
}
.border-radius-l {
	border-radius: var(--border-radius-l);
}
.border-radius-m {
	border-radius: var(--border-radius-m);
}
.border-radius-s {
	border-radius: var(--border-radius-s);
}

/*-------------------------------------------------------------------------*/

/* STRUCTURE */

/*-------------------------------------------------------------------------*/

.content-wrapper {
	margin-top: 0;
}
@media (min-width: 992px) {
	.content-wrapper {
		margin-top: 116px; /* height of the nav bar if white */
	}
}
.search-wrapper {
	padding-top: 40px;
	padding-bottom: 80px;
}
@media (min-width: 992px) {
	.search-wrapper {
		padding-top: 230px;
	}
}
#content {
	clear: both;
}
footer {
    clear: both;
	background-color: var(--white-color);
}

/*-------------------------------------------------------------------------*/

/* HEADER */

/*-------------------------------------------------------------------------*/

.navbar {
	background: transparent;
	border: none;
	padding: 0;
	transition: all 0.3s ease;
}
.navbar a {
	text-decoration: none;
}
.navbar a:hover {
	text-decoration: none;
}
#ps2id-dummy-offset {
	height: 20px;
}
@media (min-width: 992px) {
	#ps2id-dummy-offset {
		height: 160px;
	}
}

/* --- POSITION NOT FIXED FOR MOBILE --- */

header {
    position: relative;
	width: 100%;
	background: transparent;
}
header.mobile-bg {
    background-color: var(--primary-color);
	padding: 0;
}
.fixed-top {
	position: relative;
	background: transparent;
	box-shadow: none;
	width: 100%;
}
@media (min-width: 992px) {
	.fixed-top {
		position: fixed;
		top: 0;
		right: 0;
		left: 0;
		background: var(--primary-color);
		box-shadow: 0 2px 12px 0 rgba(0,0,0,0.25);
		padding-left: 0;
		padding-right: 0;
	}
	.home .fixed-top {
		background: transparent;
		border-bottom: none;
		box-shadow: none;
	}
	.fixed-top.nav-small {
		background-color: var(--primary-color);
		background-image: none;
		box-shadow: 0 2px 12px 0 rgba(0,0,0,0.25);
	}
}

/* --- MOBILE LOGO --- */

.navbar .header-logo h1 {
	font-size: var(--text-l);
	line-height: 1.0;
	margin: 0;
}
.navbar .header-logo {
	flex: 1;
	margin: 0;
}
.navbar .header-logo > a {
	display: inline-block;
	position: relative;
	text-align: left;
	margin: 24px 0 24px 30px;
	z-index: 1040;
}
.navbar .header-logo > a img {
	max-height: 100%;
	transition: all 0.3s ease;
}
.navbar.nav-large a.nav-large-logo,
.navbar.nav-small a.nav-small-logo {
	display: none
}

/* --- DESKTOP LOGO --- */

@media (min-width: 992px) {
	.navbar .header-logo {
		flex: none;
		margin: 0;
	}
	.navbar .header-logo > a {
		margin: 40px 0 24px 30px;
		width: 100%;
	}
	.navbar.nav-small .header-logo > a {
		margin: 28px 0 28px 30px;
		width: 60%;
		transition: all 0.3s ease;
	}
}

/* --- MOBILE TOGGLE ICON --- */

.navbar-toggler {
	border: none;
	margin: 0 30px 0 0;
	padding: 0;
}
@media (min-width: 992px) {
	.navbar-toggler {
		display: none;
		margin: 0;
	}
}
.nav-hamburger {
	width: 30px;
	height: 24px;
	position: relative;
	margin: 0 auto;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	cursor: pointer;
	z-index: 9999;
}
.nav-hamburger span {
	display: block;
	position: absolute;
	height: 6px;
	width: 100%;
	background: var(--white-color);
	border-radius: var(--border-radius-s);
	opacity: 1;
	left: 0;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .25s ease-in-out;
	-moz-transition: .25s ease-in-out;
	-o-transition: .25s ease-in-out;
	transition: .25s ease-in-out;
}
.nav-hamburger.open span {
	background: var(--white-color);
}
.nav-hamburger span:nth-child(1) {
	top: 0px;
}
.nav-hamburger span:nth-child(2),
.nav-hamburger span:nth-child(3) {
	top: 9px;
}
.nav-hamburger span:nth-child(4) {
	top: 18px;
}
.nav-hamburger.open span:nth-child(1) {
	top: 9px;
	width: 0%;
	left: 50%;
}
.nav-hamburger.open span:nth-child(2) {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.nav-hamburger.open span:nth-child(3) {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.nav-hamburger.open span:nth-child(4) {
	top: 18px;
	width: 0%;
	left: 50%;
}

/* .mobile-nav-button {
	display: none;
	position: absolute;
	top: 33px;
	right: 75px;
}
@media (min-width: 360px) {
	.mobile-nav-button {
		display: inline-block;
	}
}
@media (min-width: 992px) {
	.mobile-nav-button {
		display: none;
	}
} */

/*-------------------------------------------------------------------------*/

/* MAIN MENU */

/*-------------------------------------------------------------------------*/

/* --- MENU BASICS --- */

.sf-menu,
.sf-menu * {
	list-style: none;
	margin: 0;
	padding: 0;
}
.sf-menu li {
	position: relative;
	line-height: 1.0;
	display: inline-block;
}
.sf-menu ul {
	position: absolute;
	display: none;
	top: 100%;
	left: 0;
	z-index: 1000;
}
/* REMOVED FOR EDGE
.sf-menu > li {
	float: left;
} */
.sf-menu li:hover > ul,
.sf-menu li.sfHover > ul {
	display: block;
}
.sf-menu a {
	display: block;
	position: relative;
}
.sf-menu ul ul {
	/* tertiary flyout */
	top: 0;
	left: 100%;
}

/* --- MAIN MENU STYLES --- */

.desktop-menu {
	display: none;
}
@media (min-width: 992px) {
	.desktop-menu {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		box-shadow: inset 0 20px 0 rgba(255, 255, 255, 0.12);
		width: 100%;
		z-index: 1010;
	}
}
.desktop-menu .sf-menu {
	float: right;
	margin: 40px 30px 0 0;
	transition: all 0.3s ease;
}
.nav-small .desktop-menu {
	box-shadow: none;
}
.nav-small .desktop-menu .sf-menu {
	margin: 18px 30px 0 0;
}
.desktop-menu .sf-menu ul {
	min-width: 10em;
}
.desktop-menu .sf-menu li {
	white-space: nowrap;
	margin: 0;
}
/* divider lines */
.navbar-menu-hamburger {
	margin-top: -3px;
}
.desktop-menu .sf-menu > li.navbar-menu-toggle {
	margin-left: 16px;
}
.desktop-menu .sf-menu > li.navbar-menu-toggle::before {
	content: "";
	position: absolute;
	left: -12px;
	top: 50%;
	width: 2px;
	height: 40%;
	background-color: var(--white-color);
	opacity: 0.50;
	transform: translateY(-50%);
}
.desktop-menu .sf-menu li:hover {
	border-radius: var(--border-radius-m);
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.20);
	transition: all 0.3s ease;
}
.desktop-menu .sf-menu li.menu-item-has-children:hover a,
.desktop-menu .sf-menu li.menu-item-has-children:hover button {
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

.desktop-menu .sf-menu .current-menu-ancestor > a,
.desktop-menu .sf-menu .current_page_ancestor > a,
.desktop-menu .sf-menu .current-menu-ancestor > button,
.desktop-menu .sf-menu .current_page_ancestor > button,
#tapestry-charter .desktop-menu .sf-menu li:nth-child(1) a,
#tapestry-charter-dekalb .desktop-menu .sf-menu li:nth-child(2) > a,
#tapestry-charter-clayton .desktop-menu .sf-menu li:nth-child(3) > a,
#tapestry-charter .campus-menu-mobile .sf-menu li:nth-child(1) a,
#tapestry-charter-dekalb .campus-menu-mobile .sf-menu li:nth-child(2) > a,
#tapestry-charter-clayton .campus-menu-mobile .sf-menu li:nth-child(3) > a {
	color: var(--white-color);
	background-color: rgba(255, 255, 255, 0.2);
	text-decoration: none;
	text-decoration: none;
}
.desktop-menu .sf-menu .current-menu-item > a,
.desktop-menu .sf-menu .current_page_item > a,
.desktop-menu .sf-menu .current-menu-item > button,
.desktop-menu .sf-menu .current_page_item > button {
	color: var(--white-color);
	background-color: rgba(255, 255, 255, 0.2);
	text-decoration: none;
	text-decoration: none;
}
.desktop-menu .sf-menu li:hover > a,
.desktop-menu .sf-menu li:hover > button,
.campus-menu-mobile .sf-menu li:hover > a {
	color: var(--black-color);
	background-color: var(--white-color);
	text-decoration: none;
}
.desktop-menu .sf-menu li a,
.desktop-menu .sf-menu li button,
.campus-menu-mobile .sf-menu li a {
	position: relative;
	color: var(--white-color);
	background-color: transparent;
	border: none;
	border-radius: var(--border-radius-m);
	font-size: calc(var(--text-m) / 1.1);
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	text-transform: uppercase;
	margin: 0;
	padding: 16px 16px;
	z-index: 2;
}
.desktop-menu .sf-menu li.btn-white a {
	color: var(--gray-color);
	background-color: rgba(255, 255, 255, 0.30);
	font-size: var(--text-s);
	font-weight: 700;
	text-decoration: none;
	text-transform: uppercase;
	margin-top: 0;
	padding: 16px 16px;
	white-space: normal;
}
.desktop-menu .sf-menu li.btn-white a:hover {
	color: var(--gray-color);
	background-color: var(--white-color);
}
.desktop-menu li.nav-icon {
	vertical-align: top;
}
.desktop-menu li.nav-icon a {
	padding: 8px 10px;
	cursor: pointer;
}

/* --- MOBILE CAMPUS MENU --- */

/* Sits on its own row below the logo + toggler: the navbar is a flex-wrap
   container, so a full-width child wraps beneath them. It is a sibling of
   .navbar-collapse (not inside it), so it stays visible whether or not the
   mobile menu is toggled open. Hidden at >=992px, where .desktop-menu already
   renders the campus links. Link styling is shared with .desktop-menu above. */
.campus-menu-mobile {
	flex: 0 0 100%;
	width: 100%;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
}
@media (min-width: 992px) {
	.campus-menu-mobile {
		display: none;
	}
}
.campus-menu-mobile .sf-menu {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 4px;
	padding: 8px 15px;
}
.campus-menu-mobile .sf-menu li {
	margin: 0;
}

/* --- MOBILE MENU --- */

.navbar-expand-lg .navbar-collapse {
	background-color: var(--primary-color);
	background-image: none;
	margin-top: 0;
	padding-top: 0;
}
@media (min-width: 992px) {
	.navbar-expand-lg .navbar-collapse {
		display: none !important;
	}
}
.mobile-menu {
	clear: both;
	display: none;
	background-color: var(--primary-color);
	padding: 0 20px;
}
.mobile-menu ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.mobile-menu ul li {
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
	margin: 0;
}
.mobile-menu ul li:first-child {
	border-top: 1px solid rgba(255, 255, 255, 0.12);
}
.mobile-menu ul li span:after {
	position: relative;
	float: right;
	width: 16px;
	height: 16px;
	content: url(assets/icons/chevron-down.svg);
	filter: invert(100%) sepia(100%) saturate(1%) hue-rotate(132deg) brightness(101%) contrast(102%); /* change svg colors using https://codepen.io/sosuke/pen/Pjoqqp */
	margin-top: -2px;
	cursor: pointer;
}
.mobile-menu ul li a.active span:after {
	content: url(assets/icons/chevron-up.svg);
}
.mobile-menu ul li a {
	display: block;
	color: var(--white-color);
	padding: 14px;
	font-size: var(--text-s);
	font-weight: 700;
	letter-spacing: 0.025em;
	line-height: 1.5;
	text-decoration: none;
	text-transform: uppercase;
	transition: all 0.4s ease-in-out;
}
.mobile-menu ul li a:hover {
	background-color: transparent;
	text-decoration: none;
}
.mobile-menu ul li a.active {
	/* color: var(--primary-color); */
	background-color: transparent;
}
.mobile-menu ul li a.active span {
	/* color: var(--primary-color); */
}
.mobile-menu ul .sub-menu {
	display: none;
}
.mobile-menu ul .sub-menu li {
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	border-bottom: 0;
}
.mobile-menu ul .sub-menu li a {
	/* color: var(--primary-color); */
	text-transform: none;
	font-size: var(--text-s);
	font-weight: 400;
	letter-spacing: normal;
	padding-left: 32px;
}
.mobile-menu ul .sub-menu li li a {
	text-transform: none;
	font-size: var(--text-s);
	font-weight: 400;
	padding-left: 52px;
}

/*-------------------------------------------------------------------------*/

/* MODAL NAVSCREEN  */

/*-------------------------------------------------------------------------*/

.modal.modal-navscreen {
	border-radius: 0 !important;
	padding: 0;
	z-index: 10000;
}
.modal.modal-navscreen {
	background: var(--primary-color);
}
.modal-navscreen .modal-dialog {
	margin: 0;
	padding: 0;
	width: 100%;
	max-width: 100%;
	height: 100%;
	min-height: 100%;
}
/* override bootstrap scss */
/* @media (min-width: 576px) {
	.modal-navscreen .modal-dialog {
		max-width: 100%;
		margin: 0;
	}
} */
.modal-navscreen .modal-content {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	height: 100%;
	position: relative;
	overflow: hidden;
}

/* Close button: pinned to top-right of modal */
.modal-nav-close {
	position: absolute;
	top: 24px;
	right: 24px;
	opacity: 1.0;
	z-index: 20;
}

/* Modal body: side-by-side columns, full height */
.navModal .modal-body {
	display: flex;
	align-items: stretch;
	padding: 0;
	flex: 1;
	min-height: 0;
	overflow: hidden;
}

/* ---- LEFT COLUMN ---- */

.modal-nav-left {
	width: 360px;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	background: #00294D;
	overflow-y: auto;
}
.modal-nav-left  {
	background: #00294D;
}
.modal-nav-image {
	flex-shrink: 0;
	line-height: 0;
}
.modal-nav-image img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
}
.modal-nav-secondary-wrap {
	flex: 1;
	padding: 24px 20px;
}
.modal-nav-secondary-wrap .modal-secondary-menu {
	list-style: none;
	margin: 0;
	padding: 0;
}
.modal-nav-secondary-wrap .modal-secondary-menu li {
	position: relative;
	margin: 0;
	padding: 12px 0;
}
.modal-nav-secondary-wrap .modal-secondary-menu li .modal-nav-rule {
	margin: 0 0 8px 0;
}
.modal-nav-secondary-wrap .modal-secondary-menu a {
	color: var(--white-color);
	font-size: var(--text-m);
	text-decoration: none;
}
.modal-nav-secondary-wrap .modal-secondary-menu a:hover {
	opacity: 0.75;
}

/* ---- RIGHT COLUMN ---- */

.modal-nav-right {
	flex: 1;
	display: flex;
	flex-direction: column;
	padding: 60px 40px 80px 80px;
	overflow-y: auto;
	color: var(--white-color);
}
.modal-nav-header {
	margin-bottom: 48px;
}
.modal-nav-title {
	color: var(--white-color);
	font-size: var(--h3);
	font-weight: 700;
	margin: 0;
}

/* ---- PRIMARY NAV: 3-COLUMN GRID ---- */

.modal-nav-columns {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0 40px;
	flex: 1;
}
.modal-nav-section {
	margin-bottom: 48px;
}
.modal-nav-num {
	/* font-size: calc(var(--text-s) * 1.1);
	color: var(--white-color);
	letter-spacing: 0.09em;
	margin: 0 0 4px 8px; */
	display: none;
}
.modal-nav-section-heading {
	font-size: var(--h3);
	font-weight: 700;
	margin: 0 0 12px 8px;
	line-height: 1.1;
}
.modal-nav-section-heading a {
	color: var(--white-color);
	text-decoration: none;
	pointer-events: none;
	cursor: default;
}
.modal-nav-section-heading a:hover {
	opacity: 1.0;
}
.modal-nav-rule {
	clear: both;
	background-color: rgba(255, 255, 255, 0.12);
	border: 0;
	border-radius: 5px;
	height: 5px;
	margin: 0 0 12px 6px;
	max-width: 120px;
	opacity: 1.0;
}
.modal-nav-children {
	list-style: none;
	margin: 0;
	padding: 0;
}
.modal-nav-child {
	margin-bottom: 10px;
}
.modal-nav-child > a {
	color: rgba(255, 255, 255, 0.8);
	background-color: transparent;
	font-size: var(--text-m);
	text-decoration: none;
	padding: 10px 8px;
}
.modal-nav-child.current-menu-item > a {
	background-color: rgba(255, 255, 255, 0.20);
}
.modal-nav-child.current-menu-item > a:after {
	content: "\ea1b";
	font-family: "tabler-icons";
	font-style: normal;
	font-weight: normal;
	padding-left: 4px;
}
.modal-nav-child > a:hover {
	color: var(--primary-color);
	background-color: var(--white-color);
	text-decoration: none;
}

.modal-nav-child-label {
	color: rgba(255, 255, 255, 0.8);
	font-size: var(--text-m);
	display: block;
	margin: 0 0 4px 8px;
}
.modal-nav-grandchildren {
	list-style: none;
	padding-left: 12px;
	margin: 0 0 4px;
}
.modal-nav-grandchildren li {
	margin-bottom: 9px;
}
.modal-nav-grandchildren a {
	color: rgba(255, 255, 255, 0.8);
	background-color: transparent;
	font-size: calc(var(--text-m) / 1.1);
	text-decoration: none;
	padding: 9px 8px;
}
.modal-nav-grandchildren a:hover {
	color: var(--primary-color);
	background-color: var(--white-color);
	text-decoration: none;
}

/* ---- RESPONSIVE ---- */

@media (max-width: 1079px) {
	.modal-nav-left {
		width: 240px;
	}
	.modal-nav-right {
		padding: 60px 32px 80px 60px;
	}
	.modal-nav-columns {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 767px) {
	.navModal .modal-body {
		flex-direction: column;
	}
	.modal-nav-left {
		width: 100%;
		flex-direction: row;
		overflow-y: visible;
		order: 2;
	}
	.modal-nav-right {
		order: 1;
	}
	.modal-nav-image {
		display: none;
	}
	.modal-nav-secondary-wrap {
		padding: 12px 15px 12px 30px;
		width: 100%;
	}
	.modal-nav-secondary-wrap .modal-secondary-menu {
		display: flex;
		flex-wrap: wrap;
		gap: 0;
	}
	.modal-nav-secondary-wrap .modal-secondary-menu li {
		border: none;
		padding: 4px 18px 4px 0;
	}
	.modal-nav-right {
		padding: 24px 15px 80px 30px;
	}
	.modal-nav-columns {
		grid-template-columns: 1fr;
	}
}

/*-------------------------------------------------------------------------*/

/* MODAL SEARCH */

/*-------------------------------------------------------------------------*/

.modalsearch-form {
	position: relative;
	margin: 17px auto;
	height: 80px;
	width: 100%;
	overflow: hidden;
}
.modalsearch-input {
	background-color: #F7F9FB;
	border: none;
	border-radius: var(--border-radius-m);
	color: #626262;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.3;
	padding: 0 15% 0 10px;
	width: 100%;
	height: 52px;
}
.modalsearch-input::-ms-clear { /* remove cross in IE */
	display: none;
}
/* placeholder */
.modalsearch-input::-webkit-input-placeholder {
	color: rgba(0, 0, 0, 0.35);
}
.modalsearch-input:-moz-placeholder {
	color: rgba(0, 0, 0, 0.35);
}
.modalsearch-input::-moz-placeholder {
	color: rgba(0, 0, 0, 0.35);
}
.modalsearch-input:-ms-input-placeholder {
	color: rgba(0, 0, 0, 0.35);
}
/* hide placeholder when active in Chrome */
.gn-search:focus::-webkit-input-placeholder {
	color: transparent;
}
.modalsearch-submit {
	position: absolute;
	top: 38px;
	right: 15px;
	background: transparent url(assets/icons/icon-search.svg) no-repeat center center;
	background-size: 100%;
	border: none;
	width: 24px;
	height: 24px;
	text-indent: 100px;
	overflow: hidden;
	opacity: 1.0;
	transition: all 0.3s ease;
}
.modalsearch-submit:hover {
	opacity: 0.6;
}
.modalsearch-input:focus,
.modalsearch-submit:focus {
	outline: none;
}

@media (min-width: 992px) {
	.modalsearch-form {
		margin: 0 auto;
		height: 130px;
	}
	.modalsearch-input {
		background-color: var(--light-gray-color);
		border: none;
		border-radius: var(--border-radius-m);
		color: var(--primary-color);
		font-size: 48px;
		font-weight: 700;
		line-height: 1.3;
		padding: 0 10% 0 10px;
		height: 100px;
	}
	/* placeholder */
	.modalsearch-input::-webkit-input-placeholder {
		color: rgba(0, 0, 0, 0.40);
	}
	.modalsearch-input:-moz-placeholder {
		color: rgba(0, 0, 0, 0.40);
	}
	.modalsearch-input::-moz-placeholder {
		color: rgba(0, 0, 0, 0.40);
	}
	.modalsearch-input:-ms-input-placeholder {
		color: rgba(0, 0, 0, 0.40);
	}
	.modalsearch-submit {
		top: 60px;
		right: 20px;
		background: transparent url(assets/icons/icon-search.svg) no-repeat center center;
		background-size: 100%;
		width: 32px;
		height: 32px;
	}
}

/*-------------------------------------------------------------------------*/

/* GTRANSLATE PLUGIN  */

/*-------------------------------------------------------------------------*/

.gtranslate_wrapper a:hover {
	background-color: #FFF !important;
}
.gtranslate_wrapper a:hover {
	background-color: #FFF !important;
}
.gtranslate_wrapper a:hover span {
	color: #4A4A4A !important;
}
.gtranslate_wrapper .gt_languages a {
	color: #4A4A4A !important;
	font-weight: 400 !important;
}
.gt_switcher-popup img {
	display: none !important;
}
.gt_switcher-popup span {
	color: #FFF !important;
	font-size: 16px !important;
}

/*-------------------------------------------------------------------------*/

/* HEADER IMAGE  */

/*-------------------------------------------------------------------------*/

.campus-pills .badge {
	color: var(--white-color);
	font-size: calc(var(--text-s) / 1.1);
	font-weight: 400;
	line-height: 1;
	border-radius: var(--border-radius-xl);
	padding: 12px 18px;
}

/*-------------------------------------------------------------------------*/

/* HEADER IMAGE  */

/*-------------------------------------------------------------------------*/

#header-image {
	position: relative;
	background: var(--dark-black-color);
	padding-left: 0;
	padding-right: 0;
	height: 360px;
}
#header-image.header-image-no-title {
	height: 360px;
}
#header-image.header-image-no-image {
	height: 360px;
}
@media (min-width: 992px) {
	#header-image {
		height: 420px;
	}
}
@media (min-width: 1200px) {
	#header-image {
		height: 540px;
	}
}
@media (min-width: 1920px) {
	#header-image {
		height: 640px;
	}
}
#header-image .details-bg {
	border-bottom: 24px solid rgba(255, 255, 255, 0.20);
	width: 100%;
    height: 100%;
}
#header-image .entry-header {
	text-align: center;
	margin: 0 auto;
	padding: 3rem;
	width: 100%;
	height: 100%;
}
#header-image .entry-header h1 {
	color: var(--white-color);
	font-size: calc(var(--h1) * 1.1);
	font-weight: 700;
	line-height: 1.1;
	margin-top: 0;
	text-wrap: pretty;
	max-width: 880px;
}
@media (min-width: 992px) {
	#header-image .entry-header h1 {
		margin-top: 60px;
	}
}
#header-image .entry-header h1 a {
	color: var(--white-color);
}
#header-image.header-image-gradient img {
	filter: alpha(opacity=80);
	opacity: 0.8;
}

/*-------------------------------------------------------------------------*/

/* SECTION BACKGROUNDS  */

/*-------------------------------------------------------------------------*/

.white-bg {
	background-color: var(--white-color);
}
.gray-bg {
	background-color: var(--light-gray-color);
}
.primary-bg {
	background-color: var(--primary-color);
	color: var(--white-color);
}
.secondary-bg {
	background-color: var(--secondary-color);
	color: var(--white-color);
}
.tertiary-bg {
	background-color: var(--tertiary-color);
	color: var(--white-color);
	box-shadow: inset 0 20px 0 rgba(255, 255, 255, 0.12),
	inset 0 -20px 0 rgba(255, 255, 255, 0.12);
}
.accent-bg {
	background-color: var(--accent-color);
	color: var(--primary-color);
}
.black-bg {
	background-color: var(--dark-black-color);
	color: var(--white-color);
}
.primary-bg a,
.tertiary-bg a,
.black-bg a {
	color: var(--white-color);
}
.secondary-bg a {
	color: var(--primary-color);
}
.accent-bg a {
	color: var(--primary-color);
}

/* --- BACKGROUND PATTERN --- */

.pattern-white-blocks {
	background-image: url(assets/images/bg_white_blocks.svg);
	background-repeat: no-repeat;
	background-position: top 50% right -300px;
}
.pattern-blue-blocks-tl {
	background-image: url(assets/images/bg_blue_blocks.svg);
	background-repeat: no-repeat;
	background-position: top -20px left -20px;
}
.pattern-blue-blocks-tr {
	background-image: url(assets/images/bg_blue_blocks.svg);
	background-repeat: no-repeat;
	background-position: top -20px right -20px;
}
.pattern-blue-blocks-bl {
	background-image: url(assets/images/bg_blue_blocks.svg);
	background-repeat: no-repeat;
	background-position: bottom -20px left -20px;
}
.pattern-blue-blocks-br {
	background-image: url(assets/images/bg_blue_blocks.svg);
	background-repeat: no-repeat;
	background-position: bottom -20px right -20px;
}
.pattern-students-white {
	background-image: url(assets/images/bg_students_white.svg);
	background-repeat: no-repeat;
	background-position: bottom 0 right 0;
}
.pattern-students-color {
	background-image: url(assets/images/bg_students_color.svg);
	background-repeat: no-repeat;
	background-position: bottom 0 right 0;
}
.pattern-plants-white {
	background-image: url(assets/images/bg_plants_white.svg);
	background-repeat: no-repeat;
	background-position: bottom 0 left 0;
}
.pattern-plants-color {
	background-image: url(assets/images/bg_plants_color.svg);
	background-repeat: no-repeat;
	background-position: bottom 0 left 0;
}

/* --- BACKGROUND HEADING COLORS --- */

.primary-bg h1, .primary-bg h2, .primary-bg h3, .primary-bg h4, .primary-bg h5, .primary-bg h6,
.primary-bg h1 a, .primary-bg h2 a, .primary-bg h3 a, .primary-bg h4 a, .primary-bg h5 a, .primary-bg h6 a,
.primary-bg .h1, .primary-bg .h2, .primary-bg .h3, .primary-bg .h4, .primary-bg .h5, .primary-bg .h6,
.primary-bg .h1 a, .primary-bg .h2 a, .primary-bg .h3 a, .primary-bg .h4 a, .primary-bg .h5 a, .primary-bg .h6 a,
.tertiary-bg h1, .tertiary-bg h2, .tertiary-bg h3, .tertiary-bg h4, .tertiary-bg h5, .tertiary-bg h6,
.tertiary-bg h1 a, .tertiary-bg h2 a, .tertiary-bg h3 a, .tertiary-bg h4 a, .tertiary-bg h5 a, .tertiary-bg h6 a,
.tertiary-bg .h1, .tertiary-bg .h2, .tertiary-bg .h3, .tertiary-bg .h4, .tertiary-bg .h5, .tertiary-bg .h6,
.tertiary-bg .h1 a, .tertiary-bg .h2 a, .tertiary-bg .h3 a, .tertiary-bg .h4 a, .tertiary-bg .h5 a, .tertiary-bg .h6 a,
.black-bg h1, .black-bg h2, .black-bg h3, .black-bg h4, .black-bg h5, .black-bg h6,
.black-bg h1 a, .black-bg h2 a, .black-bg h3 a, .black-bg h4 a, .black-bg h5 a, .black-bg h6 a,
.black-bg .h1, .black-bg .h2, .black-bg .h3, .black-bg .h4, .black-bg .h5, .black-bg .h6,
.black-bg .h1 a, .black-bg .h2 a, .black-bg .h3 a, .black-bg .h4 a, .black-bg .h5 a, .black-bg .h6 a {
	color: var(--white-color);
}
.secondary-bg h1, .secondary-bg h2, .secondary-bg h3, .secondary-bg h4, .secondary-bg h5, .secondary-bg h6,
.secondary-bg h1 a, .secondary-bg h2 a, .secondary-bg h3 a, .secondary-bg h4 a, .secondary-bg h5 a, .secondary-bg h6 a,
.secondary-bg .h1, .secondary-bg .h2, .secondary-bg .h3, .secondary-bg .h4, .secondary-bg .h5, .secondary-bg .h6,
.secondary-bg .h1 a, .secondary-bg .h2 a, .secondary-bg .h3 a, .secondary-bg .h4 a, .secondary-bg .h5 a, .secondary-bg .h6 a {
	color: var(--primary-color);
}
.accent-bg h1, .accent-bg h2, .accent-bg h3, .accent-bg h4, .accent-bg h5, .accent-bg h6,
.accent-bg h1 a, .accent-bg h2 a, .accent-bg h3 a, .accent-bg h4 a, .accent-bg h5 a, .accent-bg h6 a,
.accent-bg .h1, .accent-bg .h2, .accent-bg .h3, .accent-bg .h4, .accent-bg .h5, .accent-bg .h6,
.accent-bg .h1 a, .accent-bg .h2 a, .accent-bg .h3 a, .accent-bg .h4 a, .accent-bg .h5 a, .accent-bg .h6 a {
	color: var(--primary-color);
}

/* VIDEO WRAPPERS */

.white-bg .ratio-16x9 {
	border: 20px solid rgba(255, 255, 255, 0.15);
	border-radius: var(--border-radius-m);
	margin-bottom: 24px;
}
.gray-bg .ratio-16x9 {
	border: 20px solid rgba(255, 255, 255, 0.72);
	border-radius: var(--border-radius-m);
	margin-bottom: 24px;
}
.primary-bg .ratio-16x9,
.secondary-bg .ratio-16x9,
.tertiary-bg .ratio-16x9,
.accent-bg .ratio-16x9,
.black-bg .ratio-16x9,
.full-width-image-text .ratio-16x9 {
	border: 20px solid rgba(255, 255, 255, 0.15);
	border-radius: var(--border-radius-m);
	margin-bottom: 24px;
}

/* BUTTONS IN COLOR BGS */

.primary-bg .btn-white {
	color: var(--primary-color);
    text-decoration: none;
}
.secondary-bg .btn-white {
	color: var(--secondary-color);
    text-decoration: none;
}
.tertiary-bg .btn-white {
	color: var(--tertiary-color);
    text-decoration: none;
}
.accent-bg .btn-white {
	color: var(--accent-color);
	text-decoration: none;
}
.black-bg .btn-white {
	color: var(--dark-black-color);
	text-decoration: none;
}
.primary-bg a.btn {
	color: var(--primary-color);
}
.secondary-bg a.btn {
	color: var(--secondary-color);
}
.tertiary-bg a.btn {
	color: var(--tertiary-color);
}
.accent-bg a.btn {
	color: var(--accent-color);
}
.black-bg a.btn {
	color: var(--dark-black-color);
}
.primary-bg a.btn:hover,
.secondary-bg,
.tertiary-bg,
.accent-bg,
.black-bg a.btn {
	color: var(--white-color);
}

/*-------------------------------------------------------------------------*/

/* SECTION MENUS */

/*-------------------------------------------------------------------------*/

.page-menu {
    display: none;
}
@media (min-width: 576px) {
	.page-menu {
	    display: block;
		position: fixed;
	    bottom: 0;
	    background-color: var(--white-color);
	    border-top: 1px solid var(--white-color);
		padding-top: 26px;
		padding-bottom: 0;
	    width: 100%;
	    z-index: 9000;
	}
}
.page-menu ul {
	list-style: none;
    text-align: center;
	margin: 0 auto;
	padding: 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
}
.page-menu li {
	float: left;
    font-size: var(--text-xs);
    text-align: center;
    line-height: 1.0;
    text-transform: uppercase;
    margin: 0 6px 26px 2px !important;
    white-space: nowrap;
}
.page-menu li a {
	font-size: var(--text-xs);
	font-weight: 700;
	line-height: 1.0;
    border: none;
    border-radius: var(--border-radius-m);
	background-color: var(--white-color);
	text-decoration: none;
    padding: 10px 10px;
	white-space: nowrap;
}
.page-menu li a:hover {
	color: var(--white-color);
	background-color: var(--primary-color);
	text-decoration: none;
}
.page-menu span {
	float: left;
	color: var(--dark-black-color);
	font-size: var(--text-xs);
    font-weight: 700;
	text-transform: uppercase;
	padding: 14px 10px 13px 0;
}

/*-------------------------------------------------------------------------*/

/* ONE COLUMN */

/*-------------------------------------------------------------------------*/

.copy-one-column { }

/*-------------------------------------------------------------------------*/

/* TWO COLUMNS */

/*-------------------------------------------------------------------------*/

.copy-left,
.copy-right {
	padding-left: 15px;
	padding-right: 15px;
}
@media (min-width: 992px) {
	.copy-left {
		padding-right: 40px;
	}
	.copy-right {
		padding-left: 40px;
	}
}

/*-------------------------------------------------------------------------*/

/* THREE COLUMNS */

/*-------------------------------------------------------------------------*/

.copy-left-thirds,
.copy-middle-thirds,
.copy-right-thirds {
	padding-left: 15px;
	padding-right: 15px;
}

@media (min-width: 992px) {
	.copy-left-thirds {
		padding-right: 20px;
	}
	.copy-middle-thirds {
		padding-left: 20px;
		padding-right: 20px;
	}
	.copy-right-thirds {
		padding-left: 20px;
	}
}

/*-------------------------------------------------------------------------*/

/* IMAGE + COLUMN */

/*-------------------------------------------------------------------------*/

.copy-image-left,
.copy-image-right {
    position: relative;
	min-height: 540px;
}
@media (min-width: 992px) {
	.copy-image-left,
	.copy-image-right {
	    min-height: 540px;
	}
}
@media (min-width: 1920px) {
	.copy-image-left,
	.copy-image-right {
	    min-height: 720px;
	}
}
.copy-image-left .details-caption {
    position: absolute;
    bottom: 12px;
    left: 12px;
    color: var(--white-color);
	font-size: var(--text-s);
    font-style: italic;
    font-weight: 400;
	line-height: 1.2;
	text-align: left;
    text-shadow: 0 1px 8px rgba(0, 0, 0, 0.80);
	padding-left: 10px;
	padding-right: 10px;
}
.copy-image-right .details-caption {
    position: absolute;
    bottom: 12px;
    right: 12px;
    color: var(--white-color);
	font-size: var(--text-s);
    font-style: italic;
    font-weight: 400;
	line-height: 1.2;
	text-align: right;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.70);
	padding-left: 10px;
	padding-right: 10px;
}
.copy ul, .copy ol {
	margin: 0;
}
.copy-block-left,
.copy-block-right {
	padding-left: 30px;
	padding-right: 30px;
}
@media (min-width: 992px) {
    .copy-block-left,
    .copy-block-right {
		padding-left: 120px;
	    padding-right: 120px;
	}
}

/*-------------------------------------------------------------------------*/

/* CALLOUTS  */

/*-------------------------------------------------------------------------*/

.callout {
	box-shadow: inset 0 20px 0 0 rgba(255, 255, 255, 0.12),
	inset 0 -20px 0 0 rgba(255, 255, 255, 0.12);
}
.callout-details {
	/* text-align: center; */
}
.callout p {
	font-size: var(--text-xl);
	font-weight: 400;
	line-height: 1.5;
	text-wrap: pretty;
}
@media (min-width: 768px) {
	.callout p {
		font-size: var(--h3);
	}
}

/*-------------------------------------------------------------------------*/

/* QUOTE  */

/*-------------------------------------------------------------------------*/

.quote-container {
	border-top: 24px solid rgba(255, 255, 255, 0.12);
	border-bottom: 24px solid rgba(255, 255, 255, 0.12);
}
.quote {
    background: url(assets/icons/icon_blockquote_top.png) no-repeat center 0 / 75px 56px;
    font-size: var(--text-l);
    font-style: italic;
    font-weight: 400;
    text-align: center;
	border-top: 2px solid rgba(255, 255, 255, 0.35);
	border-bottom: 2px solid rgba(255, 255, 255, 0.35);
	margin: 80px auto;
	padding-top: 80px;
	padding-bottom: 50px;
	max-width: 880px;
	overflow: visible !important;
}
.white-bg .quote,
.gray-bg .quote {
    background: url(assets/icons/icon_blockquote_top_gray.png) no-repeat center 0 / 75px 56px;
	border-top: 2px solid rgba(0, 0, 0, 0.07);
	border-bottom: 2px solid rgba(0, 0, 0, 0.07);
}
.quote p {
	font-size: var(--text-l);
    font-weight: 400;
    line-height: 1.6;
	margin-bottom: 24px;
}
.quote span {
	font-size: var(--text-m);
	font-weight: 700;
	font-style: normal;
	text-align: center;
    text-transform: uppercase;
}

/*-------------------------------------------------------------------------*/

/* FULL WIDTH IMAGE WITH TEXT */

/*-------------------------------------------------------------------------*/

.full-width-image-text {
	position: relative;
	background: var(--black-color);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	border-radius: 0;
	padding-left: 0;
	padding-right: 0;
}
.full-width-image-text .details-bg {
    background: rgba(0, 0, 0, 0.50);
	border-top: 20px solid rgba(255, 255, 255, 0.17);
	border-bottom: 20px solid rgba(255, 255, 255, 0.17);
	width: 100%;
    height: 100%;
	padding-top: 60px;
	padding-bottom: 60px;
}
.full-width-image-text .details {
	margin: 0 auto;
	padding: 3rem;
	width: 100%;
}
@media (min-width: 1180px) {
	.full-width-image-text .details {
	    padding: 5rem;
		width: 70%;
	}
}
.full-width-image-text h1,
.full-width-image-text h2,
.full-width-image-text h3,
.full-width-image-text h4,
.full-width-image-text h5,
.full-width-image-text h6 {
	color: var(--white-color);
}
.full-width-image-text {
    color: var(--white-color);
}

/*-------------------------------------------------------------------------*/

/* FULL WIDTH IMAGE NO TEXT */

/*-------------------------------------------------------------------------*/

.full-width-image-no-text {
	position: relative;
	background: var(--black-color);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	border-top: 20px solid rgba(255, 255, 255, 0.17);
	border-bottom: 20px solid rgba(255, 255, 255, 0.17);
	border-radius: 0;
	width: 100%;
	height: 480px;
}
@media (min-width: 992px) {
	.full-width-image-no-text,
	.full-width-image-text {
		min-height: 640px;
	}
}
/* Desktop / precision-pointer only: turn parallax back on */
@media (pointer:fine) and (min-width: 1024px) {
	.full-width-image-no-text,
	.full-width-image-text {
		background-attachment: fixed;
	}
}
/* Explicit mobile/touch fallback, if you want to be extra safe */
@media (pointer:coarse), (hover:none) {
	.full-width-image-no-text,
	.full-width-image-text {
		background-attachment: scroll;
	}
}
.full-width-image-no-text .details-bg,
.full-width-image-text .details-bg {
	background: transparent;
}

/*-------------------------------------------------------------------------*/

/* FULL WIDTH IMAGE FIXED */

/*-------------------------------------------------------------------------*/

.full-width-image-fixed {
	position: relative;
	/* background: var(--black-color);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-attachment: scroll; */
	/* border-top: 20px solid rgba(255, 255, 255, 0.17);
	border-bottom: 20px solid rgba(255, 255, 255, 0.17); */
	border-radius: 0;
	padding-left: 0;
	padding-right: 0;
	margin: 0 auto;
	width: 100%;
	/* height: 480px; */
}
@media (min-width: 992px) {
	.full-width-image-fixed {
		/* height: 640px; */
	}
}

/*-------------------------------------------------------------------------*/

/* FULL WIDTH IMAGE CAPTION */

/*-------------------------------------------------------------------------*/

.full-width-image-text .details-caption,
.full-width-image-no-text .details-caption,
.full-width-image-fixed .details-caption {
	position: absolute;
	bottom: 22px;
	right: 20px;
	color: var(--white-color);
	font-size: var(--text-s);
	font-style: italic;
	font-weight: 400;
	line-height: 1.2;
	text-align: right;
	text-shadow: 0 1px 8px rgba(0, 0, 0, 0.80);
}

/*-------------------------------------------------------------------------*/

/* FAQS */

/*-------------------------------------------------------------------------*/

.faqs-accordion {
	width: 100%;
}
.faq-question {
    padding-top: 24px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--light-gray-color);
}
.faq-question.active svg {
	transform: rotate(180deg);
}
.faq-question:first-child {
    border-top: 1px solid var(--light-gray-color);
}
.faq-question .faq-title a {
	color: var(--dark-black-color);
	font-size: var(--text-l);
	font-weight: 400;
	text-decoration: none;
	line-height: 1.2;
	text-decoration: none;
    cursor: pointer;
}
.faq-question .faq-title a:hover {
	text-decoration: underline;
}
.faq-question .collapse {
	background-color: var(--light-gray-color);
	transition: all 0.3s ease;
}
.faq-answer {
    margin-top: 8px;
    padding: 20px 20px 6px 20px;
}
@media (min-width: 992px) {
    .faq-answer {
		padding: 30px 30px 16px 30px;
    }
}

/* FAQ GRAY */

.gray-bg .faq-question ,
.gray-bg .faq-question:first-child {
	border-top: 1px solid var(--white-color);
}
.gray-bg .faq-question .collapse {
	color: var(--black-color);
	background-color: var(--white-color);
}

/* FAQ COLOR BGS */

.primary-bg .faq-question .faq-title a,
.primary-pattern-bg .faq-question .faq-title a,
.secondary-bg .faq-question .faq-title a,
.secondary-pattern-bg .faq-question .faq-title a,
.tertiary-bg .faq-question .faq-title a,
.tertiary-pattern-bg .faq-question .faq-title a,
.accent-bg .faq-question .faq-title a,
.accent-pattern-bg .faq-question .faq-title a,
.black-bg .faq-question .faq-title a,
.black-pattern-bg .faq-question .faq-title a  {
	color: var(--white-color);
}
.primary-bg .faq-question:first-child,
.primary-pattern-bg .faq-question:first-child,
.secondary-bg .faq-question:first-child,
.secondary-pattern-bg .faq-question:first-child,
.tertiary-bg .faq-question:first-child,
.tertiary-pattern-bg .faq-question:first-child,
.accent-bg .faq-question:first-child,
.accent-pattern-bg .faq-question:first-child,
.black-bg .faq-question:first-child,
.black-pattern-bg .faq-question:first-child {
	border-top: 1px solid rgba(255, 255, 255, 0.5);
}
.primary-bg .faq-question,
.primary-pattern-bg .faq-question,
.secondary-bg .faq-question,
.secondary-pattern-bg .faq-question,
.tertiary-bg .faq-question,
.tertiary-pattern-bg .faq-question,
.accent-bg .faq-question,
.accent-pattern-bg .faq-question,
.black-bg .faq-question,
.black-pattern-bg .faq-question {
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}
.primary-bg .faq-question .collapse,
.primary-pattern-bg .faq-question .collapse,
.secondary-bg .faq-question .collapse,
.secondary-pattern-bg .faq-question .collapse,
.tertiary-bg .faq-question .collapse,
.tertiary-pattern-bg .faq-question .collapse,
.accent-bg .faq-question .collapse,
.accent-pattern-bg .faq-question .collapse,
.black-bg .faq-question .collapse,
.black-pattern-bg .faq-question .collapse {
	color: var(--white-color);
	background-color: rgba(255, 255, 255, 0.2);
}

/*-------------------------------------------------------------------------*/

/* TESTIMONIALS SINGLE */

/*-------------------------------------------------------------------------*/

.testimonials-single img.testimonials-image {
	margin: 0 auto 18px auto;
	width: 180px;
	height: 180px;
}
.testimonials-single .testimonials-card-content {
	font-size: var(--text-xl);
	font-weight: 400;
	font-style: italic;
	text-align: left;
	line-height: 1.6;
	margin-bottom: 24px;
}

/*-------------------------------------------------------------------------*/

/* TESTIMONIALS CARDS */

/*-------------------------------------------------------------------------*/

.testimonials-cards .testimonials-cards-name {
	font-size: var(--text-l);
	font-weight: 700;
}
.testimonials-cards .testimonials-cards-name a {
	text-decoration: none;
}
.testimonials-cards .testimonials-cards-company {
	color: var(--gray-color);
	font-size: var(--text-s);
	font-weight: 400;
	line-height: 1.2;
	text-transform: uppercase;
}
.testimonials-cards .testimonials-cards-text {
	font-size: var(--text-s);
	font-style: italic;
	line-height: 1.5;
	margin-top: 12px;
	margin-bottom: 8px;
}
.testimonials-cards .testimonials-cards .card-img-url {
	position: relative;
}
.testimonials-cards .testimonials-cards .card-img-url span.arrowup {
	position: absolute;
	bottom: 0;
	left: 14px;
	width: 0;
    height: 0;
    border-left: 24px solid transparent;
    border-right: 24px solid transparent;
    border-bottom: 24px solid var(--white-color);
}
.testimonials-cards .testimonials-card-content {
	font-size: var(--text-l);
	font-weight: 400;
	font-style: italic;
	text-align: left;
    line-height: 1.6;
    margin-bottom: 24px;
}

/*-------------------------------------------------------------------------*/

/* TESTIMONIALS FULL SLIDER */

/*-------------------------------------------------------------------------*/

.testimonials-slider-full {
    padding-top: 80px;
	padding-bottom: 80px;
}
.testimonials-slider-full .testimonial-carousel .item {
	text-align: center;
}
.testimonials-slider-full img.testimonials-image {
    margin: 0 auto 18px auto;
    width: 100px;
    height: 100px;
}
.testimonials-slider-full .owl-carousel .owl-item img {
    display: inline-block;
}
.testimonials-slider-full .testimonials-slider-name {
    font-size: var(--text-l);
    font-weight: 400;
    line-height: 1.2;
    text-transform: none;
    margin-bottom: 2px;
}
.testimonials-slider-full .testimonials-slider-name a {
	text-decoration: none;
}
.testimonials-slider-full .testimonials-slider-company {
    font-size: var(--text-s);
    margin-bottom: 14px;
    text-transform: uppercase;
}
.testimonials-slider-full .testimonials-excerpt {
	background: url(assets/icons/icon_blockquote_top.png) no-repeat left 0 / 75px 56px,
	url(assets/icons/icon_blockquote_bottom.png) no-repeat right bottom / 75px 56px;
	font-size: var(--text-l);
    font-style: italic;
    font-weight: 400;
    line-height: 1.4;
    margin-bottom: 36px;
}
.testimonials-slider-full.white-bg .testimonials-excerpt {
	background: url(assets/icons/icon_blockquote_top_gray.png) no-repeat left 0 / 75px 56px,
	url(assets/icons/icon_blockquote_bottom_gray.png) no-repeat right bottom / 75px 56px;
}
@media (min-width: 992px) {
	.testimonials-slider-full .testimonials-excerpt {
		font-size: var(--text-xl);
	}
}
.testimonials-slider-full .owl-dots {
	text-align: center;
	margin-bottom: 30px;
}
.testimonials-slider-full .owl-dots .owl-dot span {
	width: 16px;
	height: 16px;
	margin: 0 3px;
	background: rgba(255, 255, 255, 0.35);
	display: block !important;
	text-align: center;
	-webkit-backface-visibility:visible;
	-webkit-transition:opacity 200ms ease;
	-moz-transition:opacity 200ms ease;
	-ms-transition:opacity 200ms ease;
	-o-transition:opacity 200ms ease;
	transition:opacity 200ms ease;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: var(--border-radius-l);
}
.testimonials-slider-full .owl-dots .owl-dot.active span,
.testimonials-slider-full .owl-dots .owl-dot:hover span {
	background: rgba(255, 255, 255, 0.85);
}
.testimonials-slider-full.white-bg .owl-dots .owl-dot span,
.testimonials-slider-full.gray-bg .owl-dots .owl-dot span {
	background: rgba(0, 0, 0, 0.20);
}
.testimonials-slider-full.white-bg .owl-dots .owl-dot.active span,
.testimonials-slider-full.white-bg .owl-dots .owl-dot:hover span,
.testimonials-slider-full.gray-bg .owl-dots .owl-dot.active span,
.testimonials-slider-full.gray-bg .owl-dots .owl-dot:hover span {
	background: rgba(0, 0, 0, 0.85);
}

/*-------------------------------------------------------------------------*/

/* TESTIMONIALS HALF SLIDER */

/*-------------------------------------------------------------------------*/

.testimonials-slider-half {
	position: relative;
	padding-top: 120px;
	padding-bottom: 120px;
}

/* --- TESTIMONIAL SLIDER - LEFT SIDE --- */

.testimonials-slider-half .testimonial-callout {
	position: relative;
	margin-top: 0;
	padding-right: 0;
}
@media (min-width: 992px) {
	.testimonials-slider-half .testimonial-callout {
		margin-top: 0;
		padding-right: 60px;
	}
}
/* --- TESTIMONIAL SLIDER - RIGHT SIDE --- */

.owl-testimonials-half.owl-carousel {
	background-color: rgba(255, 255, 255, 1.0);
	border-radius: var(--border-radius-l);
}
.testimonials-slider-half .testimonial-carousel .item {
	text-align: left;
	padding: 30px;
}
@media (min-width: 992px) {
	.testimonials-slider-half .testimonial-carousel .item {
		padding: 40px;
	}
}
.testimonials-slider-half img.testimonials-image {
	margin: 0 auto 18px auto;
	width: 100px;
	height: 100px;
}
.testimonials-slider-half .owl-carousel .owl-item img {
	display: inline-block;
}
.testimonials-slider-half .testimonials-slider-name {
	color: var(--dark-black-color);
	font-size: var(--text-m);
	font-weight: 700;
	line-height: 1.2;
	text-transform: none;
	margin-bottom: 2px;
}
.testimonials-slider-half .testimonials-slider-company {
	color: var(--gray-color);
	font-size: var(--text-s);
	margin-bottom: 14px;
	text-transform: uppercase;
}
.testimonials-slider-half .testimonials-slider-name a,
.testimonials-slider-half .testimonials-slider-company a {
	color: var(--dark-black-color);
	text-decoration: none;
}
.testimonials-slider-half .testimonials-excerpt {
	color: var(--black-color);
	font-size: calc(var(--text-m) * 1.1);
	font-style: italic;
	font-weight: 400;
	line-height: 1.6;
	margin-bottom: 0;
}
.testimonials-slider-half .owl-dots {
	text-align: center;
	padding-bottom: 20px;
}
.testimonials-slider-half .owl-dots .owl-dot span {
	width: 16px;
	height: 16px;
	margin: 0 3px;
	background: rgba(0, 0, 0, 0.20);
	display: block !important;
	text-align: center;
	-webkit-backface-visibility:visible;
	-webkit-transition:opacity 200ms ease;
	-moz-transition:opacity 200ms ease;
	-ms-transition:opacity 200ms ease;
	-o-transition:opacity 200ms ease;
	transition:opacity 200ms ease;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: var(--border-radius-l);
}
.testimonials-slider-half .owl-dots .owl-dot.active span,
.testimonials-slider-half .owl-dots .owl-dot:hover span {
	background: rgba(0, 0, 0, 0.85);
}
.testimonials-slider-half.white-bg .owl-dots .owl-dot span,
.testimonials-slider-half.gray-bg .owl-dots .owl-dot span {
	background: rgba(0, 0, 0, 0.20);
}
.testimonials-slider-half.white-bg .owl-dots .owl-dot.active span,
.testimonials-slider-half.white-bg .owl-dots .owl-dot:hover span,
.testimonials-slider-half.gray-bg .owl-dots .owl-dot.active span,
.testimonials-slider-half.gray-bg .owl-dots .owl-dot:hover span {
	background: rgba(0, 0, 0, 0.85);
}

/*-------------------------------------------------------------------------*/

/* MODAL FULLSCREEN */

/*-------------------------------------------------------------------------*/

.modal-fullscreen {
	background: var(--dark-black-color);
	background: rgba(0, 0, 0, 0.45);
	backdrop-filter: blur(3px);
	z-index: 10000;
}
.modal-fullscreen .modal-dialog {
	margin: 0 auto;
	padding: 0;
}
/* override bootstrap scss */
@media (min-width: 576px) {
	.modal-fullscreen .modal-dialog {
		max-width: 90%;
		margin: 0 auto;
	}
}
.modal-fullscreen .modal-content {
	background: transparent;
	border: 0;
	box-shadow: none;
	color: var(--dark-black-color);
	text-align: left;
	height: 100%;
    overflow: auto;
}
.modal-fullscreen .modal-content h1,
.modal-fullscreen .modal-content h2,
.modal-fullscreen .modal-content h3,
.modal-fullscreen .modal-content h4,
.modal-fullscreen .modal-content h5,
.modal-fullscreen .modal-content h6 {
	color: var(--dark-black-color);
}
.modal-fullscreen .modal-header,
.modal-fullscreen .modal-body,
.modal-fullscreen .modal-footer {
	color: var(--dark-black-color);
	margin: 0 auto;
	max-width: 1080px;
	width: 92%;
}
.modal-fullscreen .modal-header {
	background-color: var(--white-color);
	border-bottom: none;
}
.modal-fullscreen .modal-body {
	background-color: var(--white-color);
	/* background: var(--white-color) url(assets/images/bg_pattern_top_right_gray.png) no-repeat top right / 468px 370px; */
	border-radius: 0 0 var(--border-radius-m) var(--border-radius-m);
	padding: 0 30px 40px 30px;
	overflow: hidden;
}
@media (min-width: 992px) {
	.modal-fullscreen .modal-body {
		padding: 0 40px 40px 40px;
	}
}
.modal-fullscreen .modal-image {
	margin-bottom: 36px;
}
.modal-fullscreen .modal-title {
	color: var(--dark-black-color);
	font-size: var(--h3);
	line-height: 1.0;
	margin: 8px 0 24px 0;
}
.modal-fullscreen .modal-title span {
	font-size: var(--text-l);
}
.modal-fullscreen .modal-title span a {
	color: var(--dark-black-color);
}
.modal-fullscreen .modal-icons {
	color: var(--dark-black-color);
	font-size: var(--text-m);
	margin-bottom: 24px;
}
.modal-fullscreen .modal-icons a {
	color: var(--dark-black-color);
	text-decoration: none;
	margin-right: 2px;
	margin-left: 2px;
}
.modal-fullscreen .modal-icons a:hover {
	text-decoration: none;
	opacity: 0.5;
}

/*-------------------------------------------------------------------------*/

/* BIO / STAFF */

/*-------------------------------------------------------------------------*/

/* --- MAKE 5 COLUMNS --- */

.col-xs-5ths,
.col-sm-5ths,
.col-md-5ths,
.col-lg-5ths {
    position: relative;
    min-height: 1px;
    padding-right: 10px;
    padding-left: 10px;
}
.col-xs-5ths {
    width: 100%;
    float: left;
}
@media (min-width: 768px) {
    .col-sm-5ths {
        width: 50%;
        float: left;
    }
}
@media (min-width: 992px) {
    .col-md-5ths {
        width: 20%;
        float: left;
    }
}
@media (min-width: 1200px) {
    .col-lg-5ths {
        width: 20%;
        float: left;
    }
}

/* --- BIO LISTING PAGE --- */

.bio-listings .bio-card-title {
	font-size: calc(var(--text-xl) / 1.4);
	font-weight: 400;
	font-style: normal;
	line-height: 1.2;
	margin-bottom: 0;
}
.bio-listings .bio-card-title a {
	color: var(--dark-black-color);
	text-decoration: none;
}
.bio-listings .bio-card-title a:hover {
	color: var(--dark-black-color);
	text-decoration: underline;
}
.bio-listings .bio-card-subtitle {
	color: var(--black-color);
	font-size: var(--text-s);
	text-transform: none;
}
.bio-listings .bio-card-text {
	font-size: var(--text-s);
	line-height: 1.5;
}
.bio-listings .bio-card-text a {
	color: var(--black-color);
	text-decoration: none;
}
.bio-listings .bio-card-text a:hover {
	color: var(--link-color);
	text-decoration: underline;
}
.bio-listings .bio-card-text img {
	margin-right: 3px;
	vertical-align: middle;
}

/* --- BIO MODALS --- */

.bio-modal .card-body {
	background-color: var(--light-gray-color);
}
.bio-modal .modal-icons {
	color: var(--black-color);
	font-size: var(--text-s);
	line-height: 1.8;
	margin-bottom: 24px;
	padding-left: 24px;
}
.bio-modal .modal-icons a {
	color: var(--black-color);
	font-size: var(--text-s);
	line-height: 1.8;
	margin-bottom: 24px;
}
.bio-modal .modal-icons a:hover {
	color: var(--link-color);
	text-decoration: underline;
}
.bio-modal .modal-icons img {
	filter: invert(26%) sepia(1%) saturate(0%) hue-rotate(162deg) brightness(99%) contrast(88%); /* change svg colors using https://codepen.io/sosuke/pen/Pjoqqp */
}

/* --- SINGLE BIO PAGES --- */

.single-bio .modal-image {
	margin-bottom: 36px;
}
.single-bio .card-body {
	background-color: var(--light-gray-color);
}
.single-bio .modal-title {
	color: var(--dark-black-color);
	font-size: var(--h2);
	line-height: 1.0;
	text-transform: none;
	margin: 24px 0 12px 0;
}
.single-bio .modal-job {
	color: var(--black-color);
	font-size: var(--text-xl);
	font-weight: 400;
	text-transform: none;
}
.single-bio .modal-icons {
	color: var(--black-color);
	font-size: var(--text-s);
	line-height: 1.8;
	margin-bottom: 24px;
	padding-left: 24px;
}
.single-bio .modal-icons a {
	color: var(--black-color);
	text-decoration: none;
	margin-right: 2px;
	margin-left: 2px;
}
.single-bio .modal-icons img {
	filter: invert(26%) sepia(1%) saturate(0%) hue-rotate(162deg) brightness(99%) contrast(88%); /* change svg colors using https://codepen.io/sosuke/pen/Pjoqqp */
	vertical-align: middle;
	margin-right: 3px;
}
.single-bio .modal-icons a:hover {
	color: var(--link-color) !important;
	text-decoration: underline !important;
	opacity: 1.0 !important;
}

/*-------------------------------------------------------------------------*/

/* BOOTSTRAP CARDS */

/*-------------------------------------------------------------------------*/

/* --- STYLE THE CARD --- */

.card {
    position: relative;
	background: var(--white-color);
	/* background: var(--white-color) url(assets/images/bg_pattern_top_left_gray.png) no-repeat top -10px left / 163px 129px; */
	color: var(--black-color);
    box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.20);
    border: none;
    border-radius: var(--border-radius-l);
	width: 100%;
	overflow: hidden;
	transition: translate 0.3s ease-in-out;
}
.card:hover {
	translate: 0 -0.25em;
}
/* .card:hover .btn {
	background-color: var(--dark-black-color);
} */
.card-img, .card-img-top {
	border-radius: var(--border-radius-m);
}
/* a.card-img-url {
	display: block;
	position: relative;
}
a.card-img-url:hover {
	opacity: 0.7;
}
a.card-img-url span.feather-id {
	position: absolute;
	bottom: 20px;
	right: 10px;
}
a.card-img-url .feather {
	width: auto;
	height: 32px;
	stroke: var(--white-color);
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	fill: none;
} */
.card-body {
	color: var(--black-color);
	font-size: calc(var(--text-m) / 1.1);
	line-height: 1.5;
	text-align: left;
	padding: 24px;
	opacity: 1;
}
.card-body p:last-child {
	margin-bottom: 0;
}
.card-body h3, .card-body .h3 {
	font-size: calc(var(--text-xl) / 1.2);
	font-weight: 600;
	font-style: normal;
	line-height: 1.1;
	margin-bottom: 0.5em;
}
.card-body h4, .card-body .h4 {
	font-size: calc(var(--text-xl) / 1.35);
	font-weight: 600;
	font-style: normal;
	line-height: 1.2;
	margin-bottom: 0.5em;
}
.card-body:hover span.read-more a {
	color: var(--dark-black-color);
	text-decoration: underline;
}
.card-title {
	font-size: calc(var(--text-xl) / 1.2);
	font-weight: 600;
	font-style: normal;
	line-height: 1.1;
	margin-bottom: 0;
}
.card-title a {
	color: var(--primary-color);
	text-decoration: none;
}
.card-title a:hover {
	color: var(--dark-black-color);
	text-decoration: underline;
}
.primary-bg .card-title a {
	color: var(--primary-color);
}
.secondary-bg .card-title a {
	color: var(--secondary-color);
}
.tertiary-bg .card-title a {
	color: var(--tertiary-color);
}
.accent-bg .card-title a {
	color: var(--accent-color);
}
.black-bg .card-title a {
	color: var(--dark-black-color);
}
.card-subtitle {
	color: var(--gray-color);
	font-size: var(--text-s);
	text-transform: uppercase;
}
/* Clamp the excerpt to a fixed number of lines with a trailing ellipsis.
   Change --card-text-lines to adjust the line count in one place. */
.card-text {
	--card-text-lines: 4;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: var(--card-text-lines);
	line-clamp: var(--card-text-lines);
	overflow: hidden;
	margin-bottom: 0;
}
.card-text p:last-child {
	margin-bottom: 0;
}
hr.cards-hr {
	clear: both;
	background-color: var(--light-gray-color);
	border: 0;
	height: 3px;
	margin: 0 0 20px 0;
}
.cards-avatar img {
    margin-bottom: 12px;
}
.card-footer {
	background-color: transparent;
	border-radius: var(--border-radius-l);
	border-top: none;
	text-align: left;
	padding: 0 24px 24px 24px;
}
.card-footer p:last-child {
	border-radius: 0 0 var(--border-radius-m) var(--border-radius-m);
}
.primary-bg .card-footer a.btn {
	color: var(--white-color);
}
.secondary-bg .card-footer a.btn {
	color: var(--secondary-color);
}
.tertiary-bg .card-footer a.btn {
	color: var(--tertiary-color);
}
.accent-bg .card-footer a.btn {
	color: var(--accent-color);
}
.black-bg .card-footer a.btn {
	color: var(--dark-black-color);
}

/*-------------------------------------------------------------------------*/

/* CARDS HORIZONTAL */

/*-------------------------------------------------------------------------*/


.cards-horizontal .card-width {
    margin: 30px auto;
	padding: 0;
}
.cards-horizontal .card-body-odd,
.cards-horizontal .card-body-even {
    text-align: center;
	padding: 0 30px;
}
@media (min-width: 768px) {
	.cards-horizontal .card-body-odd {
	    text-align: right;
		padding: 0 15px 0 30px;
	}
	.cards-horizontal .card-body-even {
	    text-align: left;
		padding: 0 30px 0 15px;
	}

}
@media (min-width: 992px) {
	.cards-horizontal .card-body-odd {
	    text-align: right;
		padding: 0 15px 0 60px;
	}
	.cards-horizontal .card-body-even {
	    text-align: left;
		padding: 0 60px 0 15px;
	}

}
.cards-horizontal .card-image {
	position: relative;
    margin: 0 auto 16px auto;
	text-align: center;
}
.cards-horizontal-1 .card-title {
	font-size: var(--text-xl);
	font-weight: 700;
	text-transform: uppercase;
}

/*-------------------------------------------------------------------------*/

/* BOOTSTRAP VIDEO IFRAMES */

/*-------------------------------------------------------------------------*/

.ratio {
	clear: both;
}
.card .ratio {
    margin-bottom: 0;
}
.video-responsive .ratio {
	margin-bottom: 0;
}
.tax-video-categories .ratio {
	clear: both;
    margin-bottom: 0;
}
.wp-video {
	margin-bottom: 24px;
}

/*-------------------------------------------------------------------------*/

/* PARTNER LOGOS */

/*-------------------------------------------------------------------------*/

/* --- ADD SPACE TO PARTNER LOGOS - GRID --- */

.partner-logos {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}
.partner-logos-container {
	margin: 0 1.5em 2.0em 1.5em;
}
.partner-logos-container img {
	/* max-width: 14.5em;
	max-height: 8.5em;
	aspect-ratio: 3/2;
	object-fit: contain; */
	max-height: 80px; /* Adjust as needed */
	max-width: 100%; /* Ensure images scale properly */
	height: auto;
	width: auto;
	display: block; /* Ensure images are block-level elements */
	margin: 0 1.5em;
	vertical-align: middle; 
}

/* --- PARTNER LOGOS - OWL CAROUSEL --- */

.owl-partner-logos .owl-stage {
	display: flex;
	justify-content: center; /* Horizontally center the logos */
	align-items: center; /* Vertically center the logos */
}

.owl-partner-logos .owl-item img {
	max-height: 80px; /* Adjust as needed */
	max-width: 100%; /* Ensure images scale properly */
	height: auto;
	width: auto;
	display: block; /* Ensure images are block-level elements */
	margin: 0 auto;
	vertical-align: middle; /* Center the images horizontally */
}

/*-------------------------------------------------------------------------*/

/* MISC */

/*-------------------------------------------------------------------------*/

.article, .hentry {
	width: 100%;
}
.object-fit_cover {
	/* makes image fill the box-sizing */
	object-fit: cover;
}
.object-fit_fill {
	/* makes image fill the box-sizing */
	object-fit: fill;
}
.breakout-container {
  width: 100vw;
  position: relative;
  left: calc(-1 * (100vw - 100%) / 2);
}

/*-------------------------------------------------------------------------*/

/* NEWS / EVENTS SECTION*/

/*-------------------------------------------------------------------------*/

.news-events-section .nav-tabs {
	justify-content: center;
	border-bottom: none
}
.news-events-section .nav-tabs .nav-link {
	color: var(--white-color);
	background: rgba(255, 255, 255, 0.2);
	background: rgba(255, 255, 255, 0.2);
	border-radius: var(--border-radius-l);
	padding: 1rem 2rem;
	transition: all 0.3s ease;
}
.news-events-section .nav-tabs li:first-child .nav-link {
	border-top-left-radius: var(--border-radius-l);
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: var(--border-radius-l);
}
.news-events-section .nav-tabs li:last-child .nav-link {
	border-top-left-radius: 0;
	border-top-right-radius: var(--border-radius-l);
	border-bottom-right-radius: var(--border-radius-l);
	border-bottom-left-radius: 0;
}
.news-events-section .nav-tabs .nav-link h2 {
	color: var(--white-color);
	font-size: var(--h3);
	margin: 0;
}
.news-events-section .nav-tabs .nav-link:hover {
	border-color: var(--secondary-color);
	background: var(--secondary-color);
}
.news-events-section .nav-tabs .nav-link:hover h2 {
	color: var(--white-color);
}
.news-events-section .nav-tabs .nav-link.active {
	background: var(--white-color);
	border: 1px solid var(--white-color);
	box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.20);
}
.news-events-section .nav-tabs .nav-link.active h2 {
	color: var(--primary-color);
}
/* Ensure smooth tab transitions */
.tab-pane {
	animation: fadeIn 0.3s ease-in;
}
@keyframes fadeIn {
	from { opacity: 0; }
	to { opacity: 1; }
}

/*-------------------------------------------------------------------------*/

/* AJAX LOAD MORE PLGIN */

/*-------------------------------------------------------------------------*/

#ajax-load-more {
	width: 100%;
}
.alm-btn-wrap {
	text-align: center;
	margin: 0 auto 15px auto;
}
.ajax-load-more-wrap.white .alm-load-more-btn {
	background-color: var(--white-color) !important;
	border: none !important;
	border-radius: 4px !important;
	box-shadow: none !important;
	color: var(--primary-color) !important;
	outline: none !important;
	overflow: hidden !important;
	cursor: pointer !important;
	display: inline-block !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	height: 43px !important;
	line-height: 1 !important;
	margin: 0 !important;
	padding: 0 20px !important;
	position: relative !important;
	text-align: center !important;
	text-decoration: none !important;
	transition: all .3s ease !important;
	user-select: none !important;
	width: auto !important;
}
.ajax-load-more-wrap.white .alm-load-more-btn:hover {
	background-color: var(--primary-color) !important;
	color: var(--white-color) !important;
}
[data-id="tips_home"] .alm-btn-wrap,
[data-id="news_home"] .alm-btn-wrap,
[data-id="events_home"] .alm-btn-wrap {
	display: none;
}

/* --- ALM FILTER SEARCH --- */

.alm-filters-container {
	padding-left: 15px !important;
}
.alm-filter--search .alm-filter--text-wrap.has-button {
	-webkit-box-pack: left !important;
	-ms-flex-pack: left !important;
	justify-content: left !important;
	column-gap: 8px !important;
}
.alm-filters-container .alm-filter--text-wrap {
	width: auto !important;
	max-width: 100% !important;
	-webkit-border-radius: 8px !important;
	border-radius: 8px !important;
	padding: 0 !important;
	background-color: transparent !important;
	border: none !important;
	height: 52px !important;
}
.alm-filters-container .alm-filter--text-wrap.has-focus {
	box-shadow: none !important;
}
.alm-filter--search .alm-filter--text-wrap input[type=text] {
	border-radius: 8px !important;
	font-size: 16px !important;
	max-width: 100% !important;
	height: 52px !important;
	padding-left: 12px !important;
}
.alm-filter--search .alm-filter--text-wrap input[type=text]:focus {
	background-color: var(--white-color) !important;
}
@media (min-width: 768px) {
	.alm-filter--search .alm-filter--text-wrap input[type=text] {
		max-width: 50% !important;
	}
}
.alm-filter--search .alm-filter--text-wrap button[type=button] {
	color: var(--white-color) !important;
	background-color: #898989 !important;
	font-size: 14px !important;
	border: none !important;
	border-radius: 8px !important;
	box-shadow: -3px 0 5px rgba(0, 0, 0, .1);
	padding: 10px 14px !important;
	transition: all ease-in-out 0.3s;
}
.alm-filter--search .alm-filter--text-wrap button[type=button]:hover {
	color: var(--white-color) !important;
	background-color: var(--dark-black-color) !important;
}
.alm-filters-container .alm-filters--controls {
	margin: 0 !important;
	justify-content: center;
}

/* --- ALM TURN CHECKBOXES INTO BUTTONS --- */

.alm-filter--taxonomy ul li {
	display: inline-block !important;
	margin-right: 12px !important;
}
.alm-filter .field-checkbox {
	position: relative;
	-webkit-appearance: none;
	background-color: var(--white-color);
	outline: none;
	border-radius: 8px;
	transition: background 0.3s;
	padding: 8px 16px 8px 34px !important;
	cursor: pointer;
}
.alm-filters-container .alm-filter li div.alm-filter--link:before {
	top: 9px !important;
	left: 8px !important;
	width: 20px !important;
	height: 20px !important;
	background: var(--white-color);
	border: 1px solid #CCC;
}
.alm-filters-container .alm-filter li div.alm-filter--link:after {
	top: 13px !important;
	left: 15px !important;
}

/* --- ALM HIDE NO MORE POSTS BUTTON --- */

.alm-btn-wrap .alm-load-more-btn.done,
.alm-btn-wrap .alm-load-more-btn:disabled {
	display: none !important;
}

/*-------------------------------------------------------------------------*/

/* RECOMMENDED READING */

/*-------------------------------------------------------------------------*/

.recommended-reading-title {
	color: var(--black-color);
	font-size: var(--h3);
	margin-block-end: 1em;
}
.recommended-reading .card-footer {
	background-color: var(--white-color);
}

/*-------------------------------------------------------------------------*/

/* RELAVANSSI */

/*-------------------------------------------------------------------------*/

.relevanssi h2 a {
	text-decoration: none;
}

/*-------------------------------------------------------------------------*/

/* CASE STUDY */

/*-------------------------------------------------------------------------*/

.case-study h2 a {
	text-decoration: none;
}
.case-study-header.postmetadata {
	color: var(--dark-black-color);
	font-weight: 700;
	font-style: normal;
}
.case-study-project-title {
	font-size: var(--text-s);
	font-weight: 400;
}
.case-study-summary-text {
	font-size: var(--text-m);
	margin: 0 auto 36px auto;
}
.case-study-summary-text .postmetadata {
	color: var(--dark-black-color);
	font-weight: 700;
	font-style: normal;
}
.case-study-challenge-text {
	font-size: var(--text-s);
	font-weight: 400;
	font-style: italic;
	text-align: left;
	line-height: 1.8;
	margin: 0 auto 48px auto;
}
.case-study-challenge-text .postmetadata {
	color: var(--dark-black-color);
	font-weight: 700;
	font-style: normal;
}
.case-study-image {
	margin-top: 48px;
	margin-bottom: 48px;
}

/*-------------------------------------------------------------------------*/

/* FEATURED BLOG POSTS */

/*-------------------------------------------------------------------------*/

.owl-featured-blog-posts {
	padding-left: 0;
	padding-right: 0;
	margin: 0 auto;
}
.featured-blog-posts-text {
	position: relative;
	height: 640px;
}
.featured-blog-posts-text .details {
	position: relative;
	background: rgba(255, 255, 255, 0.8);
	box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.20);
	border: none;
	border-radius: 0 0 var(--border-radius-m) var(--border-radius-m);
	color: var(--gray-color);
	text-align: left;
	padding: 46px 30px 30px 30px;
	overflow: hidden;
	z-index: 2;
}
.featured-blog-posts-text .details-bg {
	position: absolute;
	top: 0;
	left: 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	filter: grayscale(61%);
	opacity: 0.35;
	overflow: hidden;
	width: 100%;
	height: 100%;
	z-index: 1;
}
h2.featured-blog-posts-title {
	color: var(--dark-black-color);
	font-size: var(--h3);
	font-weight: 700;
	text-transform: uppercase;
	margin-bottom: 0;
}
.featured-blog-posts-text h3 {
	color: var(--dark-black-color);
	line-height: 1.2;
	margin: 12px auto 12px auto;
}
.featured-blog-posts-excerpt {
	color: var(--dark-black-color);
	font-size: var(--text-m);
	font-weight: 400;
	line-height: 1.6;
	margin-bottom: 18px;
}
@media (max-width: 1170px) {
	.featured-blog-posts-text .details {
		width: 50% !important;
	}
}
@media (max-width: 767px) {
	.featured-blog-posts-text .details {
		width: 90% !important;
	}
}

/* --- FEATURED PROPERTIES CAROUSEL DOTS NAV --- */

.featured-blog-posts .owl-dots button {
	background: transparent;
	border: none;
	margin: 0;
	padding: 0;
}
.featured-blog-posts .owl-dots {
	display: none;
}
@media (min-width: 992px) {
	.featured-blog-posts .owl-dots {
		display: block;
		position: relative;
		text-align: center;
		margin: -50px auto 22px auto;
		z-index: 1000;
	}
}
.featured-blog-posts .owl-dots .owl-dot span {
	width: 16px;
	height: 16px;
	margin: 0 3px;
	background: var(--white-color);
	display: block !important;
	-webkit-backface-visibility:visible;
	-webkit-transition:opacity 200ms ease;
	-moz-transition:opacity 200ms ease;
	-ms-transition:opacity 200ms ease;
	-o-transition:opacity 200ms ease;
	transition:opacity 200ms ease;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: var(--border-radius-l);
}
.featured-blog-posts .owl-dots .owl-dot.active span,
.featured-blog-posts .owl-dots .owl-dot:hover span {
	background: color-mix(in oklab, var(--white-color), transparent 50%);
}

/*-------------------------------------------------------------------------*/

/* BLOG & POST LISTING PAGES */

/*-------------------------------------------------------------------------*/

.blog-listings {
	margin-bottom: 40px; /* for the ajax plugin */
	display: inline-block; /* for the ajax plugin */
	vertical-align: top; /* for the ajax plugin */
}
.blog-listings .ratio {
	background-color: var(--light-gray-color);
	border-radius: var(--border-radius-m);
	margin-bottom: 24px;
	padding: 8px;
}
.blog-summary {
	color: var(--gray-color);
	background: transparent;
	font-size: var(--text-s);
	font-weight: 400;
	font-style: italic;
	line-height: 1.8;
	margin-top: 48px;
	margin-bottom: 48px;
}
.blog-summary .postmetadata {
	color: var(--dark-black-color);
	font-weight: 700;
	font-style: normal;
}
.blog-single-image {
	margin-top: 48px;
	margin-bottom: 48px;
}
.blog-single h1 {
	color: var(--dark-black-color);
	font-size: var(--h2);
	text-transform: none;
}
.blog-single h2 {
	color: var(--dark-black-color);
	font-size: var(--h3);
}
.blog-single h3 {
	color: var(--dark-black-color);
	font-size: var(--h4);
}

/* --- POSTMETADATA IN LISTINGS --- */

.postmetadata {
	color: var(--gray-color);
	font-size: var(--text-xs);
	font-weight: 400;
	text-transform: uppercase;
	line-height: 1.6;
	font-feature-settings: 'lnum'; /* even number height */
}
.postmetadata a {
	color: var(--gray-color);
	text-decoration: none;
}
.postmetadata a:hover {
	color: var(--dark-black-color);
	text-decoration: underline;
}
.postmetadata p {
	margin: 0 0 12px 0;
}

/* --- POST AUTHOR BOX --- */

.post-author {
	clear: both;
	margin: 0;
	overflow: hidden;
}
.post-author-listing .postmetadata {
	color: var(--gray-color);
	font-size: var(--text-xs);
	font-weight: 400;
	text-transform: none;
}
.post-author-single {
	clear: both;
	background: var(--white-color);
	border: 1px solid var(--white-color);
	border-radius: var(--border-radius-m);
	margin: 40px 0 0 0;
	padding: 20px;
	overflow: hidden;
}
img.post-author-image {
	border: 8px solid var(--light-gray-color);
	text-align: left;
	vertical-align: middle;
	margin-bottom: 0;
}
.post-author .post-author-image img {
    background-color: var(--white-color);
    border: 8px solid var(--light-gray-color);
}
.post-author-info-title {
    font-size: var(--h4);
	font-weight: 700;
	line-height: 1.0;
	margin-bottom: 6px;
}
.post-author-info-title a {
	color: var(--dark-black-color);
	text-decoration: none;
}
.post-author-info-title a:hover {
	color: var(--dark-black-color);
	text-decoration: underline;
}
.post-author-info p {
	font-size: var(--text-s);
	line-height: 1.6;
	margin-bottom: 8px;
}
.post-author-info a img {
	margin-right: 3px;
	max-height: 28px;
}

/*-------------------------------------------------------------------------*/

/* HOMEPAGE */

/*-------------------------------------------------------------------------*/

/* --- OWL THEME --- */

.owl-slider-homepage {
	background-color: var(--primary-color);
	margin-top: 0;
	padding: 0;
}
.owl-homepage {
	position: relative;
	background-color: var(--primary-color);
	margin-top: 0;
	padding: 0;
	height: 640px;
}
.owl-homepage .item {
	height: 640px;
}
@media (min-width: 992px) {
	.owl-slider-homepage {
		height: 1000px;
	}
	.owl-homepage {
		height: 1000px;
	}
	.owl-homepage .item {
		height: 1000px;
	}
}
/* The section and carousel already reserve the full final height via the
   rules above, so no layout shift can occur. Pre-init the carousel still
   participates in layout (display: block overrides Owl's default display:none)
   but is fully transparent, so the section shows only its primary-color
   background. Once Owl adds .owl-loaded the carousel fades in over that
   background — this masks the brief frame between Owl's pre-styled markup
   and its fully-styled DOM, eliminating the flicker. */
.owl-homepage {
	transition: opacity 0.4s ease;
}
.owl-homepage:not(.owl-loaded) {
	display: block;
	opacity: 0;
}
.owl-homepage:not(.owl-loaded) > .item ~ .item {
	display: none;
}
.owl-homepage.owl-loaded {
	opacity: 1;
}
.owl-homepage .details-bg {
   position: absolute;
   box-shadow: inset 0 -30px 0 rgba(255, 255, 255, 0.12);
   /* opacity: 0.35;
   background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 1.32%, rgba(0, 0, 0, 0.30) 24.24%, rgba(0, 0, 0, 0.30) 66.65%, rgba(0, 0, 0, 0.00) 100%); */
   top: 50%;
   left: 50%;
   -webkit-transform: translate(-50%, -50%);
   -moz-transform: translate(-50%, -50%);
   -ms-transform: translate(-50%, -50%);
   -o-transform: translate(-50%, -50%);
   transform: translate(-50%, -50%);
   overflow: hidden;
   width: 100%;
   height: 100%;
}
.owl-homepage .details {
	color: var(--white-color);
}
.owl-homepage .details.details-center {
	position: absolute;
	top: 50%;
	left: 50%;
	background: transparent;
	text-align: center;
	padding: 15px;
	transform: translate(-50%, -50%);
	overflow: hidden;
	width: 90%;
	max-width: 920px;
	& hr {
		margin: 36px auto;
	}
}
.owl-homepage .details.details-left {
	position: absolute;
	top: 50%;
	left: 5%;
	background: transparent;
	text-align: left;
	padding: 15px;
	transform: translateY(-50%);
	overflow: hidden;
	width: 90%;
	max-width: 720px;
}
.owl-homepage .details.details-right {
	position: absolute;
	top: 50%;
	right: 5%;
	background: transparent;
	text-align: right;
	padding: 15px;
	transform: translateY(-50%);
	overflow: hidden;
	width: 90%;
	max-width: 720px;
	& hr {
		margin-left: auto;
	}
}
.owl-homepage .title {
	color: var(--white-color);
	font-size: var(--h1);
	font-weight: 700;
	text-transform: none;
	line-height: 1;
	margin: 0;
	padding: 0;
}
.owl-homepage .text {
	color: var(--white-color);
	font-size: var(--text-l);
	font-weight: 40000;
	line-height: 1.5;
	text-transform: none;
	margin: 0 0 24px 0;
}
.owl-homepage hr.white {
	margin-top: 24px;
	margin-bottom: 24px;
}
@media (min-width: 992px) {
	.owl-homepage .details {
		padding: 0;
	}
/* 	.owl-homepage .details.details-center {
		padding: 40px 30px;
	} */
	.owl-homepage .title {
		font-size: var(--h-title);
	}
	.owl-homepage .text {
		font-size: calc(var(--text-xl) * 1.1);
	}
}
.owl-homepage .btn {
	text-shadow: none;
}
.owl-homepage .btn img {
	filter: invert(37%) sepia(97%) saturate(507%) hue-rotate(328deg) brightness(96%) contrast(102%); /* change svg colors using https://codepen.io/sosuke/pen/Pjoqqp */
}

/* --- FIX FOR ANDROID PHONES --- */

.owl-carousel .owl-stage, .owl-carousel.owl-drag .owl-item {
    -ms-touch-action: auto;
        touch-action: auto;
}

/* --- OWL CAROUSEL DOTS NAV --- */

.owl-slider-homepage .owl-dots button {
	background: transparent;
	border: none;
	margin: 0;
	padding: 0;
}
.owl-slider-homepage .owl-dots {
	display: none;
}
@media (min-width: 992px) {
	.owl-slider-homepage .owl-dots {
		display: block;
		position: relative;
		text-align: center;
		margin: -110px auto 22px auto;
		z-index: 1000;
	}
}
.owl-slider-homepage .owl-dots .owl-dot span {
	width: 24px;
	height: 24px;
	margin: 0 4px;
	background: var(--white-color);
	display: block !important;
	-webkit-backface-visibility: visible;
	transition: opacity 200ms ease;
	border-radius: 50%;
}
.owl-slider-homepage .owl-dots .owl-dot.active span,
.owl-slider-homepage .owl-dots .owl-dot:hover span {
	background: var(--secondary-color);
}

/* --- OWL CAROUSEL DIRECTION NAV --- */

.owl-slider-homepage .owl-nav {
	display: none;
}
@media (min-width: 992px) {
	.owl-slider-homepage .owl-nav {
		position: absolute;
	    display: block;
	    position: absolute;
	    top: 40%;
		width: 100%;
		z-index: 1000;
	}
}
.owl-slider-homepage .owl-nav button.owl-prev {
	float: left;
	margin-left: 30px;
	cursor: pointer;
	opacity: 0.4;
	transition: all 0.3s ease;
}
.owl-slider-homepage .owl-nav button.owl-next {
	float: right;
	margin-right: 30px;
	cursor: pointer;
	opacity: 0.4;
	transition: all 0.3s ease;
}
.owl-slider-homepage .owl-nav button.owl-prev:hover,
.owl-slider-homepage .owl-nav button.owl-next:hover {
	opacity: 1;
	outline: none;
}

/* --- PUSH FIRST CONTAINER ON HOMEPAGE UP ABOVE THE SLIDER --- */

.home section.container-fluid:nth-child(1) {
	position: relative;
	background-color: transparent !important;
	margin-top: -60px;
	padding-top: 0 !important;
	z-index: 1000;
}
.home section.container-fluid:nth-child(1) .container {
	position: relative;
	background-color: var(--white-color) !important;
	border-radius: var(--border-radius-xl);
	padding-top: 60px;
}
/* Shadow limited to the top edge + top 140px of each side. The pseudo-element
   carries the box-shadow and sits behind the container (z-index: -1), so the
   white background masks the shadow everywhere the two overlap — leaving only
   the part that spills past the pseudo's top and sides visible. */
.home section.container-fluid:nth-child(1) .container::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 140px;
	border-radius: var(--border-radius-xl) var(--border-radius-xl) 0 0;
	box-shadow: 0 -12px 12px 0 rgba(0, 0, 0, 0.20);
	z-index: -1;
}

/*-------------------------------------------------------------------------*/

/* FOOTER */

/*-------------------------------------------------------------------------*/

/* --- FOOTER AREA --- */

#colophon {
    font-size: var(--text-s);
    margin: 0 auto;
	padding: 0 0 80px 0;
}
#colophon a {
	text-decoration: none;
}
#colophon a:hover {
	text-decoration: underline;
}

/* --- FOOTER CALLOUT --- */

.footer-callout {
	box-shadow: inset 0 20px 0 rgba(255, 255, 255, 0.12),
	inset 0 -20px 0 rgba(255, 255, 255, 0.12);
}

/* --- FOOTER LINKS --- */

.footer-links {
	padding-top: 80px;
	padding-bottom: 42px;
}
.footer-links-brand {
	margin: 0 auto 48px auto;
}
.footer-links-logo {
	display: block;
    text-align: center;
	margin: 0 auto 20px auto;
	padding: 0;
}
@media (min-width: 992px) {
	.footer-links-logo {
		text-align: center;
	}
}
.footer-links-brand .site-description {
	color: var(--white-color);
	font-size: var(--text-l);
	font-weight: 400;
	text-align: center;
	text-transform: uppercase;
	margin-bottom: 12px;
}
@media (min-width: 992px) {
	.footer-links-brand .site-description {
		text-align: left;
	}
}

/* --- SOCIAL --- */

.footer-links-social {
	text-align: center;
    margin: 0 auto;
}
.footer-links-social a {
	display: inline-block;
}
.footer-links-social img {
	filter: invert(15%) sepia(93%) saturate(1760%) hue-rotate(191deg) brightness(90%) contrast(101%); /* change SVG colors using https://codepen.io/sosuke/pen/Pjoqqp */
	margin: 0 2px;
    max-width: 32px;
}
.footer-links-social img:hover,
.footer-links-social a:hover,
.footer-links-social a:active {
	filter: alpha(opacity=60);
    opacity: 0.6;
    text-decoration: none;
}
@media (min-width: 992px) {
	.footer-links-social {
		text-align: center;
	}
}

/* --- FOOTER NAV --- */

.footer-nav-title {
	color: var(--black-color);
	font-size: calc(var(--text-m) * 1.1);
    font-weight: 700;
	text-align: center;
	text-transform: none;
    margin: 0 0 6px 0;
}
ul.footer-menu {
    list-style: none;
	margin: 0 0 48px 0;
	padding: 0;
}
ul.footer-menu li {
    text-align: center;
	margin: 0;
}
ul.footer-menu li a {
	color: var(--gray-color);
	font-size: var(--text-s);
    font-weight: 400;
	text-decoration: none;
	line-height: 2.0;
}
ul.footer-menu li a:hover {
	text-decoration: underline;
}
.footer-links-list hr.divider {
	margin: 0 auto 8px auto;
}
@media (min-width: 992px) {
    .footer-links-list .footer-nav-title,
    ul.footer-menu li {
		 text-align: left;
	}
	.footer-links-list hr.divider {
		margin: 0 0 8px 0;
	}
}
.footer-nav-info {
	color: var(--gray-color);
	font-size: calc(var(--text-s) * 1.1);
	line-height: 1.8;
	text-align: center;
}
@media (min-width: 992px) {
	.footer-nav-info {
		text-align: left;
	}
}

/* --- COPYRIGHT --- */

.footer-links-copyright {
	clear: both;
    color: var(--gray-color);
	font-size: calc(var(--text-s) * 1.1);
	line-height: 1.8;
    text-align: center;
}
.footer-links-copyright p {
    margin-bottom: 0;
}
.footer-links-copyright a {
	color: var(--gray-color);
	text-decoration: none;
}
.footer-links-copyright a:hover {
	color: var(--gray-color);
	text-decoration: underline;
}
@media (min-width: 992px) {
	.footer-links-copyright {
	    text-align: center;
	}
}

/* --- COPYRIGHT MENU --- */

.footer-links-copyright-menu {
	position: relative;
	list-style: none;
	margin: 0;
	padding: 0;
}
.footer-links-copyright-menu li {
	position: relative;
	line-height: 1.0;
    transition: all 0.3s ease;
}
.footer-links-copyright-menu > li {
	display: inline-block;
    margin-right: 4px;
}
.footer-links-copyright-menu > li a {
    margin-right: 8px;
}
.footer-links-copyright-menu > li:after {
	content: "|";
}
.footer-links-copyright-menu > li:last-child:after {
	content:  none;
}

/* --- FOOTER ADDITIONAL INFO --- */

.footer-additional-info {
	color: var(--gray-color);
	font-size: calc(var(--text-s) * 1.1);
	line-height: 1.8;
	text-align: center;
	padding-top: 60px;
}
@media (min-width: 992px) {
	.footer-additional-info {
		text-align: center;
	}
}

/*-------------------------------------------------------------------------*/

/* IMAGES */

/*-------------------------------------------------------------------------*/

.alignleft {
	display: block;
	clear: both;
	float: none;
	margin: 0 0 20px 0;
}
.alignright {
	display: block;
	clear: both;
	float: none;
	margin: 0 0 20px 0;
}
.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.wp-caption.alignleft,
img.alignleft {
	margin: 6px 0 12px 0;
}
.wp-caption.alignright,
img.alignright {
	margin: 6px 0 12px 0;
}
.wp-caption.aligncenter,
img.aligncenter {
	margin: 12px auto 24px auto;
}
@media (min-width: 640px) {
	.alignleft {
		display: inline;
		clear: none;
		float: left;
	}
	.alignright {
		display: inline;
		clear: none;
		float: right;
	}
	.wp-caption.alignleft,
	img.alignleft {
		margin: 6px 24px 12px 0;
	}
	img.alignleft.icon {
		margin: 0 12px 0 0;
	}
	.wp-caption.alignright,
	img.alignright {
		margin: 6px 0 12px 24px;
	}
	.wp-caption.aligncenter,
	img.aligncenter {
		margin: 12px auto 24px auto;
	}
}

/* Ensure caption containers never overflow the page */
.wp-caption {
  max-width: 100% !important;
}
/* For centered captions, let images scale to fill the container */
.wp-caption.aligncenter img {
  width: auto !important;
  height: auto;
}
/* For left/right captions, force the image to use its intrinsic (user‑defined) width 
   but still prevent overflow if it’s too big for the page */
.wp-caption.alignleft img,
.wp-caption.alignright img {
  height: auto;
  max-width: 100% !important;
}
.wp-caption-text {
	width: 100%;
	display: block;
	text-align: center;
}
.wp-caption-text,
.gallery-caption,
.entry-caption {
	color: var(--gray-color);
	font-size: 12px;
	font-style: italic;
	line-height: 1.2;
	text-align: center;
	margin-top: 1em;
}

@media (max-width: 768px) {
  .wp-caption {
	width: auto !important;
	max-width: 100% !important;
  }
  .wp-caption img {
	width: 100%;
	height: auto;
  }
}

/*-------------------------------------------------------------------------*/

/* MODULA GALLERIES */

/*-------------------------------------------------------------------------*/

.modula-item a {
	text-decoration: none;
}
.modula-item a:hover,
.modula-item a:focus {
	color: var(--primary-color);
	background-size: 100% 2px;
	text-decoration: none;
}

/*-------------------------------------------------------------------------*/

/* COMMENTS */

/*-------------------------------------------------------------------------*/

#comments h3 {
	border-top: 1px solid var(--white-color);
	margin: 60px 0;
	padding-top: 60px;
}
#comments ul {
	list-style: none;
	margin: 0 0 30px 0;
}
#trackbacks {
	margin: 30px 0 0 40px;
}
ol#commentslist {
	margin: 0;
	list-style: none;
	padding: none;
	padding: 0;
}
#commentslist .children li {
	padding: 15px 0 0 30px;
	background: transparent url(assets/images/comment_marker.gif) no-repeat 0px 40px;
	border-left: 1px solid #e3e3e3;
}
.comment {
	position: relative;
	margin: 0;
	padding: 0 0 20px 0;
}
.comment .avatar {
	position: absolute;
	left: 0;
	top: 0;
	border-radius: 35px;
	width:75px;
	height:75px;
}
#commentForm label,
#comments #respond label {
	text-align: left !important;;
	padding-left: 12px;
}
.comment h5 {
	font-size: var(--text-l);
    margin: 0 0 0 100px;
	padding: 0;
}
.comment .date {
	margin: -5px 0 10px 100px;
	display: block;
	color: #a5a5a2;
	font-style: italic;
	font-size: var(--text-s);
	font-weight: 400;
}
.comment p {
	margin: 0 0 10px 100px;
}
.comment-reply-link,
.comment-reply-login {
	margin: 0 0 0 100px;
}
.comment-reply {
	display: inline-block !important;
	padding: 0 0 0 10px;
}
#comment-add {
	position: absolute;
	top: -5px;
	right: 0;
}
.moderation {
	margin: 0px;
	padding: 0 0 10px 25px;
}
#trackbacks ul {
	margin: -5px 0 15px 0;
}
#trackbacks ul li {
	padding: 5px 0 5px 20px;
}

/* Comment Form */

#commentForm {
	position: relative;
	margin: 40px 0 30px 0;
	padding-bottom: 30px;
}
#comments #respond {
	position: relative;
	margin: 0 0 0 100px;
	padding: 0 0 40px 0;
}
#respond .form-allowed-tags {
	display: none;
}
#respond form {
	margin: 0;
	padding: 0;
	position: relative;
}
.cancel-comment-reply {
	float: right;
	margin: 5px 90px 0 0;
}
#cancel-comment-reply-link {
	margin-left: 20px !important;
}

/*-------------------------------------------------------------------------*/

/* FOOBOX STYLES */

/*-------------------------------------------------------------------------*/

.fbx-fullscreen-mode.fbx-light {
	background-color: var(--dark-black-color);
}
.fbx-fullscreen-mode.fbx-rounded .fbx-close,
.fbx-fullscreen-mode.fbx-rounded .fbx-fullscreen-toggle,
.fbx-fullscreen-mode.fbx-metro .fbx-close,
.fbx-fullscreen-mode.fbx-metro .fbx-fullscreen-toggle {
	opacity: .2;
	border-radius: var(--border-radius-m);
}
.fbx-fullscreen-mode.fbx-rounded .fbx-prev,
.fbx-fullscreen-mode.fbx-rounded .fbx-next,
.fbx-fullscreen-mode.fbx-rounded.fbx-slideshow .fbx-prev,
.fbx-fullscreen-mode.fbx-rounded.fbx-slideshow .fbx-next,
.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons .fbx-prev,
.fbx-fullscreen-mode.fbx-rounded.fbx-sticky-buttons .fbx-next,
.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons .fbx-prev,
.fbx-fullscreen-mode.fbx-metro.fbx-sticky-buttons .fbx-next,
.fbx-fullscreen-mode.fbx-rounded.fbx-inset-buttons .fbx-prev,
.fbx-fullscreen-mode.fbx-rounded.fbx-inset-buttons .fbx-next,
.fbx-fullscreen-mode.fbx-metro.fbx-inset-buttons .fbx-prev,
.fbx-fullscreen-mode.fbx-metro.fbx-inset-buttons .fbx-next,
.fbx-fullscreen-mode.fbx-metro .fbx-prev,
.fbx-fullscreen-mode.fbx-metro .fbx-next {
	top: 50%;
	margin-top: -40px;
	width: 28px;
	height: 40px;
	line-height: 40px;
	border-radius: var(--border-radius-m);
	border: none;
	opacity: .5;
}
.fbx-inner-shadow, .fbx-rounded .fbx-btn-shadow,
.fbx-fullscreen-mode .fbx-btn-shadow,
.fbx-fullscreen-mode .fbx-prev.fbx-btn-shadow,
.fbx-fullscreen-mode .fbx-next.fbx-btn-shadow,
.fbx-sticky-buttons .fbx-prev.fbx-btn-shadow,
.fbx-sticky-buttons .fbx-next.fbx-btn-shadow,
.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-prev.fbx-btn-shadow:before,
.fbx-rounded.fbx-inset-buttons.fbx-desktop .fbx-next.fbx-btn-shadow:before,
.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-prev.fbx-btn-shadow:before,
.fbx-rounded.fbx-inset-buttons.fbx-tablet .fbx-next.fbx-btn-shadow:before {
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}
.fbx-close-overlays {
	top: 10px;
	right: 0;
}
.fbx-close-overlays {
	border-bottom: none;
}
.fbx-light,
.fbx-light .fbx-caption,
.fbx-light .fbx-open-caption,
.fbx-light.fbx-phone .fbx-social {
    background-color: rgba(28, 28, 28, 0.5);
}
a.fbx-close-caption,
a.fbx-open-caption {
    color: var(--white-color);
    text-decoration: none;
    text-decoration: none;
}
.fbx-caption-title {
    font-size: var(--text-m);
    line-height: 1.8;
    padding: 15px;
}
.fbx-caption-desc {
	font-size: 158px;
    line-height: 1.6;
    padding: 15px 15px 20px 15px;
}

/*-------------------------------------------------------------------------*/

/* MONARCH PLUGIN */

/*-------------------------------------------------------------------------*/

.et_monarch .et_social_inline_bottom {
    margin-top: 40px;
	margin-bottom: 0;
}

/*-------------------------------------------------------------------------*/

/* STAT CARDS ON BACKGROUND IMAGE */

/*-------------------------------------------------------------------------*/

.stat-cards {
	position: relative;
	background: var(--black-color);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-attachment: fixed;
	border-radius: 0;
	padding-left: 0;
	padding-right: 0;
}
.stat-cards .details-bg {
	background: rgba(0, 0, 0, 0.50);
	border-top: 20px solid rgba(255, 255, 255, 0.17);
	border-bottom: 20px solid rgba(255, 255, 255, 0.17);
	width: 100%;
	height: 100%;
}
.stat-cards .stat-cards-content,
.stat-cards .stat-cards-content h2 {
	color: var(--white-color);
}
.stat-cards .card {
	/* background: transparent; */
	box-shadow: 0px 0px 12px 0px rgba(255, 255, 255, 0.20);
}
.stat-cards .card-body {
	color: var(--dark-black-color);
	font-size: var(--text-m);
	text-align: center;
}

/*-------------------------------------------------------------------------*/

/* COUNTER */

/*-------------------------------------------------------------------------*/

p.counter {
	display: inline-block;
	font-size: var(--h2);
	font-weight: 700;
	line-height: 1.1;
	text-transform: uppercase;
	margin: 0 0 16px 0;
	padding: 0;
}
@media (min-width: 992px) {
	p.counter,
	p.counter-value-extra {
		font-size: var(--h1);
	}
	.stat-cards .card-body p.counter,
	.stat-cards .card-body p.counter-value-extra{
		font-size: var(--h-title);
	}
}

/*-------------------------------------------------------------------------*/

/* TABLES */

/*-------------------------------------------------------------------------*/

.table-responsive {
	border: none;
}
.table {
	font-size: 14px;
}
.table p {
	margin-bottom: 0;
}

.table > tbody > tr > td,
.table > tbody > tr > th,
.table > tfoot > tr > td,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > thead > tr > th,
.dataTable th,
.dataTable td {
	padding: 16px 8px;
	line-height: 120% !important;
}
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.dataTable th {
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	white-space: normal;
}
table.dataTable.nowrap th,
table.dataTable.nowrap td {
	white-space: normal !important;
}
.table-no-border > tbody > tr > td,
.table-no-border > tbody > tr > th,
.table-no-border > tfoot > tr > td,
.table-no-border > tfoot > tr > th,
.table-no-border > thead > tr > td,
.table-no-border > thead > tr > th {
	padding: 20px 12px;
	text-align: center;
	border-top: none;
}
.table > tbody > tr > td.table-center {
	text-align: center !important;
}

/*-------------------------------------------------------------------------*/

/* TOOLTIPS */

/*-------------------------------------------------------------------------*/

a[data-bs-toggle="tooltip"] {
	display: inline-block;
	font-size: var(--text-s);
    z-index: 10001;
}
.tooltip.top {
	/* margin-top: -16px; */
}
.tooltip-inner {
	max-width: 320px;
	padding: 6px 10px;
	color: var(--dark-black-color);
	text-align: left;
    font-weight: 400;
	background-color: var(--white-color);
	border: 1px solid var(--white-color);
	border-radius: var(--border-radius-m);
	box-shadow: 0 2px 12px 0 rgba(0,0,0,0.25);
}
.bs-tooltip-top .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before  {
 	border-top-color: var(--white-color);
}

/*-------------------------------------------------------------------------*/

/* BUTTONS */

/*-------------------------------------------------------------------------*/

.btn {
	font-size: var(--text-s);
	font-weight: 600;
	text-decoration: none;
    text-transform: uppercase;
	border-radius: var(--border-radius-m);
	margin-top: 4px;
	padding: 14px 18px;
	white-space: normal;
	transition: all 0.5s ease;
}
.btn-lg {
    font-size: var(--text-m);
	border-radius: var(--border-radius-m);
	padding: 18px 32px;
}
.btn-md {
    font-size: var(--text-s);
	border-radius: var(--border-radius-m);
	padding: 16px 28px
}
.btn-sm {
    font-size: var(--text-xs);
	border-radius: var(--border-radius-s);
	padding: 10px 12px;
}
a.btn,
a.btn:hover {
	text-decoration: none !important;
}

/* --- PRIMARY - BLUE --- */

.btn-primary,
.btn-blue {
	color: var(--white-color);
	background-color: var(--primary-color);
	border: none;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.btn-blue:hover,
.btn-blue:focus,
.btn-blue:active,
.btn-blue.active {
	color: var(--white-color);
	background-color: var(--dark-black-color);
	border: none;
}
.btn-primary:active,
.btn-primary.active,
.btn-blue:active,
.btn-blue.active {
	background-image: none;
}

/* --- PRIMARY OUTLINE - BLUE --- */

.btn-primary-outline,
.btn-blue-outline {
	color: var(--primary-color);
	background-color: transparent;
	border: 2px solid var(--primary-color);
}
.btn-primary-outline:hover,
.btn-primary-outline:focus,
.btn-primary-outline:active,
.btn-primary-outline.active,
.btn-blue-outline:hover,
.btn-blue-outline:focus,
.btn-blue-outline:active,
.btn-blue-outline.active {
	color: var(--white-color);
	background-color: var(--dark-black-color);
	border: 2px solid var(--dark-black-color);
}
.btn-primary-outline:active,
.btn-primary-outline.active,
.btn-blue-outline:active,
.btn-blue-outline.active {
	background-image: none;
}

/* --- SECONDARY - LIGHT BLUE --- */

.btn-secondary,
.btn-light-blue {
	color: var(--white-color);
	background-color: var(--secondary-color);
	border: none;
}
.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active,
.btn-secondary.active,
.btn-light-blue:hover,
.btn-light-blue:focus,
.btn-light-blue:active,
.btn-light-blue.active {
	color: var(--white-color);
	background-color: var(--dark-black-color);
	border: none;
}
.btn-secondary:active,
.btn-secondary.active,
.btn-light-blue:active,
.btn-light-blue.active {
	background-image: none;
}

/* --- SECONDARY OUTLINE - LIGHT BLUE --- */

.btn-secondary-outline,
.btn-light-blue-outline {
	color: var(--secondary-color);
	background-color: transparent;
	border: 2px solid var(--secondary-color);
}
.btn-secondary-outline:hover,
.btn-secondary-outline:focus,
.btn-secondary-outline:active,
.btn-secondary-outline.active,
.btn-light-blue-outline:hover,
.btn-light-blue-outline:focus,
.btn-light-blue-outline:active,
.btn-light-blue-outline.active {
	color: var(--white-color);
	background-color: var(--dark-black-color);
	border: 2px solid var(--dark-black-color);
}
.btn-secondary-outline:active,
.btn-secondary-outline.active,
.btn-light-blue-outline:active,
.btn-light-blue-outline.active {
	background-image: none;
}

/* --- TERTIARY - RED --- */

.btn-tertiary,
.btn-red {
	color: var(--white-color);
	background-color: var(--tertiary-color);
	border: none;
}
.btn-tertiary:hover,
.btn-tertiary:focus,
.btn-tertiary:active,
.btn-tertiary.active,
.btn-red:hover,
.btn-red:focus,
.btn-red:active,
.btn-red.active {
	color: var(--white-color);
	background-color: var(--dark-black-color);
	border: none;
}
.btn-tertiary:active,
.btn-tertiary.active,
.btn-red:active,
.btn-red.active {
	background-image: none;
}

/* --- TERTIARY OUTLINE - RED --- */

.btn-tertiary-outline,
.btn-red-outline {
	color: var(--tertiary-color);
	background-color: transparent;
	border: 2px solid var(--tertiary-color);
}
.btn-tertiary-outline:hover,
.btn-tertiary-outline:focus,
.btn-tertiary-outline:active,
.btn-tertiary-outline.active,
.btn-red-outline:hover,
.btn-red-outline:focus,
.btn-red-outline:active,
.btn-red-outline.active {
	color: var(--white-color);
	background-color: var(--dark-black-color);
	border: 2px solid var(--dark-black-color);
}
.btn-tertiary-outline:active,
.btn-tertiary-outline.active,
.btn-red-outline:active,
.btn-red-outline.active {
	background-image: none;
}

/* --- ACCENT - ACCENT COLOR --- */

.btn-accent,
.btn-accent-color {
	color: var(--white-color);
	background-color: var(--accent-color);
	border: none;
}
.btn-accent:hover,
.btn-accent:focus,
.btn-accent:active,
.btn-accent.active,
.btn-accent-color :hover,
.btn-accent-color :focus,
.btn-accent-color :active,
.btn-accent-color .active {
	color: var(--white-color);
	background-color: var(--dark-black-color);
	border: none;
}
.btn-accent:active,
.btn-accent.active,
.btn-accent-color :active,
.btn-accent-color .active {
	background-image: none;
}

/* --- ACCENT OUTLINE - ACCENT COLOR --- */

.btn-accent-outline,
.btn-accent-color -outline {
	color: var(--accent-color);
	background-color: transparent;
	border: 2px solid var(--accent-color);
}
.btn-accent-outline:hover,
.btn-accent-outline:focus,
.btn-accent-outline:active,
.btn-accent-outline.active,
.btn-accent-color -outline:hover,
.btn-accent-color -outline:focus,
.btn-accent-color -outline:active,
.btn-accent-color -outline.active {
	color: var(--white-color);
	background-color: var(--dark-black-color);
	border: 2px solid var(--dark-black-color);
}
.btn-accent-outline:active,
.btn-accent-outline.active,
.btn-accent-color -outline:active,
.btn-accent-color -outline.active {
	background-image: none;
}

/* --- WHITE --- */

.btn-white {
	color: var(--primary-color);
	background-color: var(--white-color);
	border: none;
}
.btn-white:hover,
.btn-white:focus,
.btn-white:active,
.btn-white.active {
	color: var(--white-color);
	background-color: var(--dark-black-color);
	border: none;
}
.btn-white:active,
.btn-white.active {
	background-image: none;
}

/* --- WHITE OUTLINE --- */

.btn-white-outline {
	color: var(--white-color);
	background-color: transparent;
	border: 2px solid var(--white-color);
}
.btn-white-outline:hover,
.btn-white-outline:focus,
.btn-white-outline:active,
.btn-white-outline.active {
	color: var(--white-color);
	background-color: var(--dark-black-color);
	border: 2px solid var(--dark-black-color);
}
.btn-white-outline:active,
.btn-white-outline.active {
	background-image: none;
}

/* --- BLACK --- */

.btn-black {
	color: var(--white-color);
	background-color: var(--dark-black-color);
	border: none;
}
.btn-black:hover,
.btn-black:focus,
.btn-black:active,
.btn-black.active {
	color: var(--white-color);
	background-color: var(--black-color);
	border: none;
}
.btn-black:active,
.btn-black.active {
	background-image: none;
}

/* --- BLACK OUTLINE --- */

.btn-black-outline  {
	color: var(--dark-black-color);
	background-color: transparent;
	border: 2px solid var(--dark-black-color);
}
.btn-black-outline :hover,
.btn-black-outline :focus,
.btn-black-outline :active,
.btn-black-outline .active {
	color: var(--white-color);
	background-color: var(--black-color);
	border: 2px solid var(--dark-black-color);
}
.btn-black-outline :active,
.btn-black-outline .active {
	background-image: none;
}

/* --- GRAY --- */

.btn-gray {
	color: var(--black-color);
	background-color: var(--gray-color);
	border: none;
}
.btn-gray:hover,
.btn-gray:focus,
.btn-gray:active,
.btn-gray.active{
	color: var(--white-color);
	background-color: var(--dark-black-color);
	border: none;
}
.btn-gray:active,
.btn-gray.active {
	background-image: none;
}

/* --- GRAY OUTLINE --- */

.btn-gray-outline {
	color: var(--gray-color);
	background-color: transparent;
	border: 2px solid var(--gray-color);
}
.btn-gray-outline:hover,
.btn-gray-outline:focus,
.btn-gray-outline:active,
.btn-gray-outline.active{
	color: var(--white-color);
	background-color: var(--dark-black-color);
	border: 2px solid var(--dark-black-color);
}
.btn-gray-outline:active,
.btn-gray-outline.active {
	background-image: none;
}

/*-------------------------------------------------------------------------*/

/* GRAVITY FORM 2.5+ STYLES */

/*-------------------------------------------------------------------------*/

select,
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
/*input[type="search"],*/
input[type="tel"],
input[type="color"],
.uneditable-input {
	color: var(--dark-black-color) !important;
	font-size: 18px !important;
	background-color: var(--white-color) !important;
	border: 1px solid var(--white-color) !important;
	border-radius: var(--border-radius-m) !important;
	box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.10) !important;
	padding: 12px !important;
	height: auto !important; 
}

select:focus,
textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
/*input[type="search"]:focus,*/
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus {
	color: var(--dark-black-color) !important;
	font-size: 18px !important;
	background-color: var(--white-color) !important;
	border: 1px solid var(--white-color) !important;
	border-radius: var(--border-radius-m) !important;
	box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.10) !important;
	padding: 12px !important;
}
input[type="checkbox"],
input[type="checkbox"]:focus {
	border: 1px solid var(--white-color) !important;
	border-radius: var(--border-radius-s) !important;
	box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.10) !important;
}
input[type="radio"],
input[type="radio"]:focus {
	border: 1px solid var(--white-color) !important;
	box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.10) !important;
}
textarea,
textarea:focus {
	font-weight: 400 !important;
	font-size: 16px !important;
	line-height: 130% !important;
}
.gform_wrapper {
	margin: 0 !important;
}
.gform_wrapper.gform-theme--foundation .gform_fields {
	row-gap: 20px !important;
}

/* --- LARGE FORM TEXT --- */

.gform_wrapper .gsection {
	border-bottom: 1px solid var(--light-gray-color) !important;
	padding: 48px 16px 0 0 !important;
}
.gform_wrapper h2.gform_title {
	color: var(--dark-black-color) !important;
	font-size: 32px !important;
	font-weight: 700 !important;
	line-height: 140% !important;
	margin: 0 !important;
	padding: 0 !important;
}
.gform_wrapper h3.gsection_title {
	font-size: 28px !important;
	font-weight: 700 !important;
	margin: 0 0 12px 0 !important;
	padding: 0 !important;
}
.gform_wrapper .top_label .gfield_label {
	font-size: 18px !important;
	padding: 10px 0 0 0 !important;
	font-weight: 600 !important;
}
.gform_wrapper .gchoice {
    margin-bottom: 12px;
}
.gform_wrapper.gravity-theme legend {
    border-bottom: none;
}
.gform_required_legend {
    display: none !important;
}
.gform_wrapper.gravity-theme .gfield-choice-input {
	margin-top: 5px !important;
	vertical-align: top !important;
}
.gform_wrapper.gravity-theme .gfield-choice-input+label {
	font-size: 16px !important;
	font-weight: 400 !important;
	line-height: 130% !important;
	vertical-align: top !important;
}
.gfield_consent_label {
	display: inline-block;
	max-width: calc(100% - 32px);
	vertical-align: top;
}

/* --- SMALL FORM TEXT --- */

.gform_wrapper .ginput_complex label {
	color: var(--gray-color) !important;
	font-size: 12px !important;
	font-style: italic !important;
	margin: 0 0 3px 0 !important;
}
.gform_wrapper .ginput_complex .ginput_left {
	clear: left;
}
.gform_wrapper .description_above .gfield_description {
	color: var(--black-color) !important;
	font-size: 13px !important;
	font-style: italic !important;
	line-height: 140% !important;
	margin: 0 0 24px 0 !important;
	padding: 0 !important;
}
.gform_wrapper em {
	color: var(--black-color) !important;
	font-style: italic !important;
}
.gform_wrapper span.gform_description {
    font-weight: 400 !important;
 }
.gform_wrapper .gfield_description, .gform_wrapper .instruction {
	color: var(--black-color) !important;	
	font-size: 12px !important;
	font-weight: 400 !important;
	font-style: italic !important;
	margin: 0 !important;
	padding: 0 0 6px 0 !important;
}

/* --- DROP DOWNS --- */

.gform_wrapper .gform_body .gform_fields .gfield select {
	height: 56px;
}
.gform_wrapper.gravity-theme .ginput_complex .ginput_container_date input,
.gform_wrapper.gravity-theme .ginput_complex .ginput_container_date select {
	min-width: 120px !important;
}
.gform_wrapper.gravity-theme .ginput_complex .ginput_container_time input,
.gform_wrapper.gravity-theme .ginput_complex .ginput_container_time select {
	font-size: 16px !important;
	min-width: 72px !important;
}
.gform_wrapper.gravity-theme .hour_minute_colon {
	line-height: 100% !important;
	padding: 16px 12px 0 12px !important;
}

/* --- ENHANCED DROP DOWNS --- */

.gform_wrapper .gform_body .chosen-container .chosen-single {
	color: var(--gray-color);
	font-size: var(--text-l);
	background-image: none !important;
	border: 1px solid var(--white-color);
	padding: 6px 0 6px 12px;
	height: 56px;
}
.gform_wrapper .gform_body li.active-result {
	font-size: var(--text-l);
	padding: 12px;
}
.gform_wrapper .gform_body .chosen-container-single .chosen-single div b {
	background-position-y: 10px !important;
}

/* --- ERRORS, MESSAGES --- */

.gform_wrapper .gfield_required {
	color: var(--error-color) !important;
}
.primary-bg .gform_wrapper .gfield_required,
.primary-pattern-bg .gform_wrapper .gfield_required,
.secondary-bg .gform_wrapper .gfield_required,
.secondary-pattern-bg .gform_wrapper .gfield_required,
.tertiary-bg .gform_wrapper .gfield_required,
.tertiary-pattern-bg .gform_wrapper .gfield_required,
.accent-bg .gform_wrapper .gfield_required,
.accent-pattern-bg .gform_wrapper .gfield_required {
	color: var(--light-gray-color) !important;
}
.gform_wrapper .gfield_error {
	background-color: #F0E1D9 !important;
	border: 1px dotted #C89797 !important;
}
.gform_wrapper .gfield_error .gfield_label {
	color: var(--error-color) !important;
}
.gform_wrapper .validation_error {
	color: var(--error-color) !important;
	font-family: inherit !important;
}
.gform_wrapper .validation_message {
	color: var(--error-color) !important;
	font-family: inherit !important;
}
.gform_confirmation_wrapper {
	background-color: #FEEFE7 !important;
	font-size: 16px !important;
	color: #525252 !important;
	text-align: left !important;
	border: none !important;
	margin: 10px 0 24px 0 !important;
	padding: 20px 12px !important;
	overflow: hidden !important;
}
.gform_confirmation_wrapper h2 {
  font-size: var(--text-xl) !important;
}
.gform_confirmation_wrapper p:last-child {
	margin-bottom: 0 !important;
}
.gform_wrapper .gform_footer {
	margin-top: 24px !important;
}

/* --- SUBMIT BUTTON COLOR --- */

.gform_wrapper input.button {
	color: var(--white-color) !important;
	background-color: var(--primary-color) !important;
  	display: inline-block !important;
	margin-bottom: 24px !important;
	font-weight: 700 !important;
	text-align: center !important;
	text-transform: uppercase !important;
	vertical-align: middle !important;
	cursor: pointer !important;
	background-image: none !important;
	border: 2px solid transparent !important;
	white-space: nowrap !important;
	font-size: var(--text-s) !important;
	line-height: 1.428571429 !important;
	border-radius: var(--border-radius-m) !important;
	padding: 14px 26px !important;
	user-select: none !important;
	transition: all 0.3s ease !important;
}
.primary-bg .gform_wrapper input.button,
.primary-pattern-bg .gform_wrapper input.button {
	color: var(--primary-color) !important;
	background-color: var(--white-color) !important;
}
.secondary-bg .gform_wrapper input.button,
.secondary-pattern-bg .gform_wrapper input.button {
	color: var(--secondary-color) !important;
	background-color: var(--white-color) !important;
}
.tertiary-bg .gform_wrapper input.button,
.tertiary-pattern-bg .gform_wrapper input.button {
	color: var(--tertiary-color) !important;
	background-color: var(--white-color) !important;
}
.accent-bg .gform_wrapper input.button,
.accent-pattern-bg .gform_wrapper input.button {
	color: var(--accent-color) !important;
	background-color: var(--white-color) !important;
}
.gform_wrapper input.button:focus {
	outline: thin dotted #333 !important;
	outline: 5px auto -webkit-focus-ring-color !important;
	outline-offset: -2px !important;
}
.gform_wrapper input.button:hover,
.gform_wrapper input.button:focus {
	color: var(--white-color) !important;
	background-color: var(--dark-black-color) !important;
	border-color: var(--dark-black-color) !important;
	text-decoration: none !important;
}
.gform_wrapper input.button.active,
.gform_wrapper input.button:active {
	outline: 0 !important;
	background-image: none !important;
	-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125) !important;
	box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125) !important;
}

/* --- SAVE FOR LATER BUTTON COLOR --- */

.gform_wrapper .gform_save_link.button,
.gform_wrapper .button.gform_button_select_files,
.gform_wrapper.gravity-theme .gfield_checkbox button {
	color: var(--dark-black-color) !important;
	background-color: var(--white-color) !important;
  	display: inline-block !important;
	margin-bottom: 24px !important;
	font-weight: 700 !important;
	text-align: center !important;
	text-transform: uppercase !important;
	vertical-align: middle !important;
	cursor: pointer !important;
	background-image: none !important;
	border: 2px solid transparent !important;
	white-space: nowrap !important;
	font-size: var(--text-s) !important;
	line-height: 1.428571429 !important;
	border-radius: var(--border-radius-m) !important;
	padding: 14px 26px;
	user-select: none !important;
	transition: all 0.3s ease !important;
}
.gform_wrapper .gform_save_link.button:focus,
.gform_wrapper .button.gform_button_select_files:focus,
.gform_wrapper.gravity-theme .gfield_checkbox button:focus {
	outline: thin dotted #333 !important;
	outline: 5px auto -webkit-focus-ring-color !important;
	outline-offset: -2px !important;
}
.gform_wrapper .gform_save_link.button:hover,
.gform_wrapper .gform_save_link.button:focus,
.gform_wrapper .button.gform_button_select_files:hover,
.gform_wrapper .button.gform_button_select_files:focus,
.gform_wrapper.gravity-theme .gfield_checkbox button:hover,
.gform_wrapper.gravity-theme .gfield_checkbox button:focus {
	color: var(--white-color) !important;
	background-color: var(--dark-black-color) !important;
	border-color: var(--dark-black-color) !important;
	text-decoration: none;
}
.gform_wrapper .gform_save_link.button.active,
.gform_wrapper .gform_save_link.button:active,
.gform_wrapper .button.gform_button_select_files.active,
.gform_wrapper .button.gform_button_select_files:active,
.gform_wrapper.gravity-theme .gfield_checkbox button.active,
.gform_wrapper.gravity-theme .gfield_checkbox button:active {
	outline: 0 !important;
	background-image: none !important;
	-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125) !important;
	box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125) !important;
}

/* --- PREVIOUS BUTTON COLOR --- */

.gform_wrapper.gravity-theme .gform_previous_button.button {
    color: var(--dark-black-color) !important;
}

/* --- SEND LINK --- */

.gform_wrapper .form_saved_message_emailform input[name="gform_send_resume_link_button"] {
  color: var(--white-color) !important;
  background-color: var(--primary-color) !important;
  display: inline-block !important;
  margin-bottom: 24px !important;
  font-weight: 700 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  vertical-align: middle !important;
  cursor: pointer !important;
  background-image: none !important;
  border: 2px solid transparent !important;
  white-space: nowrap !important;
  font-size: var(--text-s) !important;
  line-height: 1.428571429 !important;
  border-radius: var(--border-radius-m) !important;
  margin-top: 12px !important;
  margin-left: 0 !important;
  padding: 14px 26px !important;
  user-select: none !important;
  transition: all 0.3s ease !important;
}
.gform_wrapper .form_saved_message_emailform input[name="gform_send_resume_link_button"]:focus {
  outline: thin dotted #333 !important;
  outline: 5px auto -webkit-focus-ring-color !important;
  outline-offset: -2px !important;
}
.gform_wrapper .form_saved_message_emailform input[name="gform_send_resume_link_button"]:hover,
.gform_wrapper .form_saved_message_emailform input[name="gform_send_resume_link_button"]:focus {
  color: var(--white-color) !important;
  background-color: var(--dark-black-color) !important;
  border-color: var(--dark-black-color) !important;
  text-decoration: none !important;
}

/* --- GF FOOTER SUBSCRIBE FORM --- */
/* add gf-footer-callout to the form class style */

.gform_wrapper.gform-theme--foundation .gf-footer-callout .gform_fields {
	row-gap: 20px !important;
}
.gform_wrapper.gf-footer-callout_wrapper .gfield_label {
	color: var(--white-color);
	font-size: 13px !important;
	font-weight: 500 !important;
	text-transform: uppercase !important;
}
.gform_wrapper.gf-footer-callout_wrapper input[type="text"],
.gform_wrapper.gf-footer-callout_wrapper input[type="email"],
.gform_wrapper.gf-footer-callout_wrapper textarea {
	font-size: 16px !important;
	font-weight: 400 !important;
	background-color: rgba(255, 255, 255, 1.0) !important;
	text-transform: none !important;
	padding: 8px !important;
}
.gform_wrapper.gf-footer-callout_wrapper input[type="text"]:focus,
.gform_wrapper.gf-footer-callout_wrapper input[type="email"]:focus,
.gform_wrapper.gf-footer-callout_wrapper textarea:focus {
	color: var(--gray-color) !important;
	font-size: 16px !important;
	font-weight: 400 !important;
	text-transform: none !important;
	padding: 8px !important;
}
.gform_wrapper.gf-footer-callout_wrapper input[type="text"]::-webkit-input-placeholder,
.gform_wrapper.gf-footer-callout_wrapper input[type="email"]::-webkit-input-placeholder,
.gform_wrapper.gf-footer-callout_wrapper textarea::-webkit-input-placeholder {
	color: var(--gray-color) !important;
}
.gform_wrapper.gf-footer-callout_wrapper input[type="text"]::-moz-placeholder,
.gform_wrapper.gf-footer-callout_wrapper input[type="email"]::-moz-placeholder,
.gform_wrapper.gf-footer-callout_wrapper textarea::-moz-placeholder {
	color: var(--white-color) !important;
}
.gform_wrapper.gf-footer-callout_wrapper input[type="text"]:-ms-input-placeholder,
.gform_wrapper.gf-footer-callout_wrapper input[type="email"]:-ms-input-placeholder,
.gform_wrapper.gf-footer-callout_wrapper textarea:-ms-input-placeholder {
	color: #C2C2C2 !important;
}
.gform_wrapper.gf-footer-callout_wrapper input[type="checkbox"],
.gform_wrapper.gf-footer-callout_wrapper input[type="checkbox"]:focus {
	color: var(--white-color) !important;
	border: 1px solid var(--white-color) !important;
	border-radius: var(--border-radius-s) !important;
	box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.10) !important;
}
.gform_wrapper.gf-footer-callout_wrapper .gfield_checkbox .gform-field-label {
	color: var(--white-color) !important;
	font-size: var(--text-s) !important;
}
.gform_wrapper.gf-footer-callout_wrapper input[type="radio"],
.gform_wrapper.gf-footer-callout_wrapper input[type="radio"]:focus {
	border: 1px solid var(--white-color) !important;
	box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.10) !important;
}
.gform_wrapper.gf-footer-callout_wrapper input.button {
	color: var(--primary-color) !important;
	background-color: var(--white-color) !important;
	font-size: var(--text-s) !important;
	padding: 12px 20px !important;
}
.gform_wrapper.gf-footer-callout_wrapper input.button:hover,
.gform_wrapper.gf-footer-callout_wrapper input.button:focus {
	color: var(--white-color) !important;
	background-color: var(--dark-black-color) !important;
	text-decoration: none !important;
}

/* --- HTML FOR LISTS IN FORMS --- */

.gform_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html ul {
    list-style-type: disc !important;
    margin: 1em 0 1.5em 2.5em !important;
    padding-left: 0 !important;
}

/* --- HIDE BIG INVISIBLE RECAPTCHA BANNER --- */

.gf-recaptcha-div {
    display: none;
}

/* --- GRAVITY FORMS PAYPAL CHECKOUT CREDIT CARD ADD-ON STYLES --- */

.gform_wrapper.gravity-theme .ginput_container_custom_card_fields .ginput_card_field {
	background-color: var(--white-color) !important;
	border: 1px solid var(--white-color) !important;
	border-radius: var(--border-radius-m) !important;
	box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.10) !important;
	font-size: 18px !important;
	height: 56px !important;
	padding: 12px !important;
}

/* --- GRAVITY WIZ NESTED FORMS --- */

.tingle-modal {
	z-index: 10000 !important;
}
.tingle-modal-box {
	background: var(--light-gray-color) !important;
}
.tingle-modal-box__footer {
	background-color: var(--white-color) !important;
}
.tingle-modal .gform_wrapper .gsection:first-of-type {
	padding: 0 !important;
}

/* --- NESTED FORM TABLES --- */

table.gpnf-nested-entries {
	width: 100% !important;
}
table.gpnf-nested-entries {
	font-size: 16px !important;
}
table.gpnf-nested-entries p {
	margin-bottom: 0 !important;
}
table.gpnf-nested-entries > thead > tr > th,
table.gpnf-nested-entries > tbody > tr > th,
table.gpnf-nested-entries > tfoot > tr > th {
	font-size: 14px !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	white-space: normal !important;
}
table.gpnf-nested-entries > tbody > tr > td,
table.gpnf-nested-entries > tbody > tr > th,
table.gpnf-nested-entries > tfoot > tr > td,
table.gpnf-nested-entries > tfoot > tr > th,
table.gpnf-nested-entries > thead > tr > td,
table.gpnf-nested-entries > thead > tr > th {
	padding: 8px 12px !important;
}

.gpnf-nested-entries-container button {
	color: var(--primary-color) !important;
	background-color: #00000008 !important;
	display: inline-block !important;
	margin-bottom: 24px !important;
	font-weight: 700 !important;
	text-align: center !important;
	text-transform: uppercase !important;
	vertical-align: middle !important;
	cursor: pointer !important;
	background-image: none !important;
	border: 2px solid transparent !important;
	white-space: nowrap !important;
	font-size: 14px !important;
	line-height: 1.428571429 !important;
	border-radius: 0 !important;
	padding: 12px 20px !important;
	user-select: none !important;
	transition: all 0.3s ease !important;
}
.primary-bg .gpnf-nested-entries-container button,
.primary-pattern-bg .gpnf-nested-entries-container button {
	color: var(--primary-color);
	background-color: var(--white-color) !important;
}
.secondary-bg .gpnf-nested-entries-container button,
.secondary-pattern-bg .gpnf-nested-entries-container button {
	color: var(--secondary-color);
	background-color: var(--white-color) !important;
}
.tertiary-bg .gpnf-nested-entries-container button,
.tertiary-pattern-bg .gpnf-nested-entries-container button {
	color: var(--tertiary-color) !important;
	background-color: var(--white-color) !important;
}
.accent-bg .gpnf-nested-entries-container button,
.accent-pattern-bg .gpnf-nested-entries-container button {
	color: var(--accent-color) !important;
	background-color: var(--white-color) !important;
}
.gpnf-nested-entries-container button:focus {
	outline: thin dotted #333 !important;
	outline: 5px auto -webkit-focus-ring-color !important;
	outline-offset: -2px !important;
}
.gpnf-nested-entries-container button:hover,
.gpnf-nested-entries-container button:focus {
	color: var(--white-color) !important;
	background-color: var(--dark-black-color) !important;
	border-color: var(--dark-black-color) !important;
	text-decoration: none !important;
}
.gpnf-nested-entries-container button.active,
.gpnf-nested-entries-container button:active {
	outline: 0 !important;
	background-image: none !important;
	-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125) !important;
	box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125) !important;
}

.gpnf-row-actions button {
	color: var(--primary-color) !important;
	background-color: #00000008 !important;
	display: inline-block !important;
	margin-bottom: 0 !important;
	font-weight: 700 !important;
	text-align: center !important;
	text-transform: none !important;
	text-decoration: none !important;
	vertical-align: middle !important;
	cursor: pointer !important;
	background-image: none !important;
	border: none !important;
	white-space: nowrap !important;
	font-size: 14px !important;
	border-radius: 0 !important;
	padding: 10px 10px !important;
	user-select: none !important;
	transition: all 0.3s ease !important;
}
.gpnf-row-actions button:hover,
.gpnf-row-actions button:focus {
	color: var(--white-color) !important;
	background-color: var(--dark-black-color) !important;
	border-color: var(--dark-black-color) !important;
	text-decoration: none !important;
}
.gpnf-row-actions button.active,
.gpnf-row-actions button:active {
	outline: 0 !important;
	background-image: none !important;
	-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125) !important;
	box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125) !important;
}

/*-------------------------------------------------------------------------*/

/* PRINT STYLES */

/*-------------------------------------------------------------------------*/

@media print {	
	
	/* --- PAGE STYLES --- */
	
	@page {
		size: letter portrait;
		margin: 0.65in;
	}
	
	html, body {
		background: #fff !important;
		color: #000 !important;
		width: auto !important;
		height: auto !important;
	}
	
	/* Remove Bootstrap container max widths that can cause odd breaks */
	.container,
	.container-sm,
	.container-md,
	.container-lg,
	.container-xl,
	.container-xxl {
		max-width: none !important;
		width: 100% !important;
	}
	
	/* --- TYPOGRAPHY --- */
	
	body {
		font-size: 11pt !important;
		line-height: 1.35 !important;
	}
	h1, h1 span, .h1,
	h2, h2 span, .h2,
	h3, h3 span, .h3,
	h4, h4 span, .h4,
	h5, h5 span, .h5,
	h6, h6 span, .h6 {
		color: #000 !important;
		page-break-after: avoid;
		break-after: avoid-page;
	}
	h1 {
		font-size: 24pt !important;
	}
	h2 {
		font-size: 20pt !important;
	}
	h3 {
		font-size: 16pt !important;
	}
	p, li, blockquote {
		orphans: 3;
		widows: 3;
	}
	/* Avoid lonely headings at bottom of page */
	h1, h2, h3, h4 {
		orphans: 3;
		widows: 3;
	}
	
	/* --- LINKS --- */
	
	a,
	a:visited {
		color: #000 !important;
		text-decoration: underline !important;
	}
	/* Print URLs after links (skip anchors, javascript, tel, mailto) */
	a[href^="http"]:not([href*="tapestrycharter.org"])::after,
	a[href^="http"][href*="tapestrycharter.org"]::after {
		content: " (" attr(href) ")";
		color: #666 !important;
		font-size: 9pt;
		text-transform: none !important;
		word-break: break-word;
	}
	a[href^="#"]::after,
	a[href^="javascript:"]::after,
	a[href^="tel:"]::after,
	a[href^="mailto:"]::after {
		content: "";
	}
	a:not(.btn) {
		text-decoration: underline;
		text-decoration-color: #000;
	}
	.btn {
		color: #000;
		border-color: #000;
		font-size: 11pt;
		text-transform: none;
		text-align: left;
	}
	  
	/* --- THEME STYLES --- */
	  
	.content-wrapper {
		margin-top: 0 !important;
	}
	.backstretch {
		display: none !important;
	}
	.faq-title a {
		color: #000 !important;		
	}
	.white-bg,
	.gray-bg,
	.primary-bg,
	.secondary-bg,
	.tertiary-bg,
	.accent-bg,
	.black-bg,
	.primary-gradient-bg,
	.tertiary-gradient-bg {
		background-color: #fff !important;
		padding-top: 0.18in !important;
		padding-bottom: 0.18in !important;
	}
	#header-image {
		height: 0.35in !important;
	}
	.copy-image-left,
	.copy-image-right,
	.full-width-image-no-text {
		display: none !important;
	}
	.copy-left,
	.copy-right {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
	.quote {
		background: none !important;
		color: #000 !important;
		font-size: 14pt !important;
		font-style: italic !important;
		text-align: center !important;
		border-top: 1px solid gray !important;
		border-bottom: 1px solid gray !important;
		margin: 0 auto !important;
		padding-top: 0.18in !important;
		padding-bottom: 0.18in !important;
		max-width: 100% !important;
		overflow: visible !important;
	}
	.quote p {
		color: #000 !important;
	}
	/* ul, ol, dl, .card  {
		page-break-after: avoid;
		wrapper-break-inside: avoid;
	} */
	.wp-caption-text {
		font-size: 8pt;
	}
	.et_social_inline {
		display: none;
	}
	#commentform {
		display: none;
	}
	.quicklinks {
		display: none;
	}
	   
	/* --- BOOTSTRAP STYLES --- */
	
	*,
	*::before,
	*::after {
		animation: none !important;
		transition: none !important;
		box-shadow: none !important;
		text-shadow: none !important;
		filter: none !important;
	}
	abbr[title]::after {
		content: " (" attr(title) ")";
	}
	pre {
		white-space: pre-wrap !important;
	}
	pre,
	blockquote {
		border: 1px solid #adb5bd;
		page-break-inside: avoid;
	}
	tr, img, svg, figure {
		max-width: 100% !important;
		height: auto !important;
		page-break-inside: avoid;
		break-inside: avoid;
	  }
	/* Remove background images that waste ink, but keep content images */
	[style*="background-image"] {
		background-image: none !important;
	}
	.card {
		border: 1px solid #E5E5E5 !important;
		background: transparent !important;
		page-break-inside: avoid;
		break-inside: avoid;
		margin-bottom: 0.18in !important;
	}
	.card-body,
	.list-group,
	.list-group-item {
		background: transparent !important;
	}	  
	.badge {
		border: 1px solid #000 !important;
		color: #000 !important;
		background: transparent !important;
	}
	/* Bootstrap tables */
	table,
	.table {
		width: 100% !important;
		border-collapse: collapse !important;
		margin: 0.15in 0 !important;
		font-size: 9.5pt !important;
	}
	thead {
		display: table-header-group;
	}
	tfoot {
		display: table-footer-group;
	}
	th, td {
		background-color: #fff !important;
		border: 1px solid #dee2e6 !important;
		padding: 6px 8px !important;
		vertical-align: top !important;
		text-align: left !important;
		word-break: break-word;
		overflow-wrap: anywhere;
	}
	/* Bootstrap table helpers */
	.table,
	.table-bordered,
	.table-striped,
	.table-hover {
		color: #000 !important;
	}
	.table-bordered th,
	.table-bordered td {
		  border: 1px solid #dee2e6 !important;
	}
	.table-dark {
		  color: inherit;
	}
	.table-dark th,
	.table-dark td,
	.table-dark thead th,
	.table-dark tbody + tbody {
		  border-color: #dee2e6;
	}	
	.table-striped > tbody > tr:nth-of-type(odd) > * {
		background: #f2f2f2 !important;
	}
	/* Critical: make .table-responsive print the table instead of clipping it */
	.table-responsive,
	.table-responsive-sm,
	.table-responsive-md,
	.table-responsive-lg,
	.table-responsive-xl,
	.table-responsive-xxl {
		overflow: visible !important;
	}
	
	.gv-template-datatables {
		display: none !important;
	} 

}
