/* 
Theme Name: Fox Valley Metrology
Template: wordexpresso
Version: 1.3.18
*/

:root {
	--narrow-width: 810px;
	--medium-width: 1100px;
	--container-width: 1300px;
	--wide-width: 1400px;
	--browser-padding: 40px;
	--special-padding: 60px;
	--padding: 90px;
	--gap: 30px;
	--default-shadow: 0 0 8px rgba(0,0,0,0.3);
	--padding-short: 30px;
}

html, body {
	--black: var(--wp--preset--color--black);
	--white: var(--wp--preset--color--white);
	--dark-gray: var(--wp--preset--color--dark-gray);
	--gray: var(--wp--preset--color--gray);
	--light-gray: var(--wp--preset--color--light-gray);
	--pale-gray: var(--wp--preset--color--pale-gray);
	--off-white: var(--wp--preset--color--off-white);
	--red: var(--wp--preset--color--red);
	--blue: var(--wp--preset--color--blue);

	--h1: var(--wp--preset--font-size--h-1);
	--h2: var(--wp--preset--font-size--h-2);
	--h3: var(--wp--preset--font-size--h-3);
	--h4: var(--wp--preset--font-size--h-4);
	--h5: var(--wp--preset--font-size--h-5);
	--h6: var(--wp--preset--font-size--h-6);
	--large: var(--wp--preset--font-size--large);
	--normal: var(--wp--preset--font-size--normal);
	--small: var(--wp--preset--font-size--small);

	--inter: var(--wp--preset--font-family--inter);
}

a:focus-visible,
button:focus-visible {
	outline: 2px solid var(--black) !important;
	outline-offset: 4px !important;
}

:where(.has-grey-background-color,.has-dark-gray-background-color) a:focus-visible,
:where(.has-grey-background-color,.has-dark-gray-background-color) button:focus-visible {
	outline: 2px solid var(--white) !important;
}

#header_main {
	z-index: 10;
	position: relative;
}

#header_main {
	padding-left: var(--browser-padding);
	padding-right: var(--browser-padding);
/*	position: relative;*/
	position: sticky;
	top: 0;
	z-index: 9999;
	background: #FFF;
}
/*
#header_main + .cloned {
    background: #fff;
    box-shadow: 0 0 10px rgba(0,0,0,0.2);
    position: fixed;
    top: 0px;
    -webkit-transform: translateY(-100%);
       -moz-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
         -o-transform: translateY(-100%);
            transform: translateY(-100%);
    left: 0;
    right: 0;
    z-index: 100;
    transition: 0.4s transform;
    -webkit-transition: 0.4s transform;
    -moz-transition: 0.4s transform;
    -ms-transition: 0.4s transform;
    z-index: 20;
}

#header_main + .cloned.visible {
    -webkit-transform: translateY(0);
       -moz-transform: translateY(0);
        -ms-transform: translateY(0);
         -o-transform: translateY(0);
            transform: translateY(0);
}*/

#header_main .container {
	padding-left: 0;
	padding-right: 0;
}

#header_main #top {
	padding-top: 18px;
	padding-bottom: 15px;
}

#header_main #top .container {
	display: flex;
	justify-content: space-between;
	gap: 18px;
	align-items: center;
}

#header_main #top #logo {
	flex: 230px 0 0;
	line-height: 0;
}

#header_main .menu a {
	text-decoration: none;
	display: block;
}

.menu .bold > a {
	font-weight: bold;
}

#header_main #main_menu__wrapper .menu > li > a {
	color: var(--black);
	font-size: 16px;
	font-weight: 500;
	position: relative;
	padding-bottom: 25px;
	display: block;
	min-width: 80px;
	text-align: center;
	padding-top: 10px;
}

#header_main #main_menu__wrapper .menu > li > a:before {
	content: "";
	position: absolute;
	top: 0;
	left: -15px;
	right: -15px;
	bottom: -20px;
}

#header_main #main_menu__wrapper .menu > li > a:after {
	height: 4px;
	content: "";
	display: block;
	position: absolute;
	bottom: 15px;
	margin-top: 15px;
	background: var(--gray);
	width: 0;
	transition: 0.5s all;
	max-width: 100%;
	left: 50%;
}

#header_main #main_menu__wrapper .menu li:hover > a:after {
	width: 80px;
	margin-left: -40px;
}

#header_main #main_menu__wrapper .menu a:hover {
	color: var(--black);
	background: transparent !important;
}

#header_search {
	position: relative;
	flex-shrink: 0;
	line-height: 1;
	margin-left: auto;
}

#header_search form {
	display: none;
	position: absolute;
	z-index: 10;
	background: #FFF;
	padding: 10px;
    width: 350px;
    left: 0;
    top: calc(100% + 10px);
    border-radius: 30px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}

form input[type=search] {
	border-radius: 30px;
}

#header_search form button {
	padding: 15px;
	top: 10px;
	right: 10px;
	bottom: 10px;
	line-height: 0;
	transition: background-color 0.3s ease-in-out;
}

#header_search form button svg {
	transition: all 0.3s ease-in-out;
}

#header_search form button:hover svg {
	fill: var(--red);
}

#toggle_search {
	cursor: pointer;
}

#header_main #utility_menu__wrapper .menu > li > a {
	display: inline-block;
	margin-left: 15px;
	margin-right: 15px;
	text-align: center;
}

#header_main #utility_menu__wrapper .menu li:hover > a{
	color: var(--red);
	background: transparent !important;
}

#header_main #utility_menu__wrapper .menu > li {
	font-size: 16px;
	line-height: 1.25em;	
	display: flex;
	align-items: center;
}

#header_main #utility_menu__wrapper .menu > li + li {
	border-left: 1px solid var(--dark-gray);	
}

#header_main #main_menu__wrapper .menu > li > ul,
#header_main #utility_menu__wrapper .menu > li > ul {
	width: auto;
	background: #FFF;
	padding: 25px;
	z-index: 10;
	box-shadow: 0 1px 3px rgba(0,0,0,0.12);
	border-bottom-left-radius: 7px;
	border-bottom-right-radius: 7px;
	margin-top: 20px;
}

#header_main #main_menu__wrapper .menu > li.menu-item-has-children:has([aria-expanded="false"]) > ul,
#header_main #utility_menu__wrapper .menu > li.menu-item-has-children:has([aria-expanded="false"]) > ul {
	display: none !important;
}

#header_main #main_menu__wrapper .menu > li.menu-item-has-children:has([aria-expanded="true"]) > ul,
#header_main #utility_menu__wrapper .menu > li.menu-item-has-children:has([aria-expanded="true"]) > ul {
	display: block !important;
}

#header_main #main_menu__wrapper .menu > li > ul {
	margin-top: -10px;
	border-top-left-radius: 7px;
	border-top-right-radius: 7px;
	padding: 32px;
	font-size: 16px;
}

#header_main #utility_menu__wrapper .menu > li:nth-child(n+4) > ul {
	left: auto;
	right: -50px;
}

/*dont apply to submenus with only a few links*/
/*#header_main #main_menu__wrapper .menu > li > ul:has(>li:nth-last-child(3)),*/
/*#header_main #main_menu__wrapper .menu > li > ul:has(>li:nth-last-child(4)),*/
#header_main #utility_menu__wrapper .menu > li > ul:has(>li:nth-child(6)) {
	columns: 2;
	column-rule: 1px solid #DFDBDC;
	column-gap: 60px;
}

#header_main #main_menu__wrapper .menu > li > ul:has(>li:nth-child(6)) {
	columns: 2;
	column-rule: 1px solid #DFDBDC;
	column-gap: 60px;
	left: -50px;
}

#header_main #main_menu__wrapper .menu > li > ul:has(>li:nth-child(9)) {
	columns: 4;
}

/*#header_main #main_menu__wrapper .menu > li:nth-child(n+4) > ul:has(>li:nth-last-child(3)),
#header_main #main_menu__wrapper .menu > li:nth-child(n+4) > ul:has(>li:nth-last-child(4)) {
	right: -100px;
	left: auto;
}*/

#header_main #main_menu__wrapper .menu > li:nth-child(n+5) > ul,
#header_main #main_menu__wrapper .menu > li:nth-child(n+3) > ul:has(>li:nth-child(7)) {
	right: -30px;
	left: auto !important;
}

#header_main #utility_menu__wrapper .menu > li:hover > a:after {
	content: "";
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	height: 40px;
}

#header_main #utility_menu__wrapper .menu > li > ul a {
	margin-left: 0;
	margin-right: 0;
}

#header_main #main_menu__wrapper .menu > li > ul > li,
#header_main #utility_menu__wrapper .menu > li > ul > li {
	display: block;
	width: 220px;
	font-weight: 500;
	margin-bottom: 20px;
    -webkit-column-break-inside: avoid;	
}

#header_main #main_menu__wrapper .menu > li > ul > li {
	margin-bottom: 15px;
}

#header_main #utility_menu__wrapper .menu > li > ul > li ul {
	display: block !important;
	position: relative !important;
	top: auto;
	left: auto;
	padding-left: 15px;
}

#header_main #utility_menu__wrapper .menu > li > ul > li ul li {
	margin-top: 15px;
	display: block;
	width: 100%;
	font-weight: normal;
}

#mobile_menu_icon {
	display: none;
}

.kiba-mobile-menu #mobile_menu_icon {
	display: block;
}

body.kiba-menu-from-top #kiba-menu_mobile_navigation {
	position: fixed;
}

body.kiba-menu-from-top #kiba-menu_mobile_navigation.kiba-menu_open {
	top: 65px !important;
	height: calc(100vh - 65px) !important;
}

#kiba-menu_mobile_navigation .wp-block-buttons {
	margin: 20px;
}

#kiba-menu_mobile_navigation:not(.kiba-menu_open) .wp-block-buttons {
	visibility: hidden;
}

#kiba-menu_mobile_navigation a {
	text-decoration: none;
}

#kiba-menu_mobile_navigation a:hover {
	color: var(--red);
	background: transparent;
}

#kiba-menu_mobile_navigation > ul > li > a {
	font-weight: 500;
	color: var(--black) !important;
}

#kiba-menu_mobile_navigation>ul li.has-children>a:after {
	/*font-family: "Font Awesome 6 Free";*/
	content: url(assets/img/menu-chevron-right.svg);
	/*line-height: 1em;
	font-weight: bold;*/
}

#kiba-menu_mobile_navigation>ul li ul.kiba-menu_submenu li a {
	padding: 15px 40px 15px 50px !important;
	font-size: 1em;
	border-bottom: 1px solid #DFDBDC !important;
}

#kiba-menu_mobile_navigation ul.kiba-menu_submenu .previous-tab {
	color: var(--black);
	font-weight: 500;
	display: block;
	border-bottom: 1px solid #DFDBDC;
	padding: 10px 0;
}

#kiba-menu_mobile_navigation ul.kiba-menu_submenu .previous-tab:before {
	content: url(assets/img/menu-chevron-left.svg);
	/*font-family: 'FontAwesome';
	font-size: 1em;
	color: var(--dark-gray);*/
	margin: 20px;
}

p:empty {
	display: none;
}

.spacer:empty {
	height: 1px;
}

.wp-block-group:has(.empty-faq:first-child:last-child) {
	display: none;
}

/*fix padding nested groups*/
.wp-block-group.alignfull > .wp-block-group > * {
	padding-left: 0;
	padding-right: 0;
} 

.wp-block-group iframe {
	display: block;
}

iframe[src*="zohopublic.com"] {
	opacity: 0;
	transition: 0.4s opacity;
}

#footer_main {
	padding-left: var(--browser-padding);
	padding-right: var(--browser-padding);
}

#footer_main > .container {
	padding-left: 0;
	padding-right: 0;
}

#footer_main a:not(:hover) {
	color: var(--black);
}

#footer_main .grid .tile {
	font-size: 16px;
}

#footer_main .grid .tile + .tile:before {
	position: absolute;
	left: -40px;
	width: 1px;
	background: #DFDBDC;
	content: "";
	height: 100%;
	top: 0;
}
#footer_main .grid .menu {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

#footer_main .locations .menu {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0;
}

#footer_main .locations .menu li {
	flex: 50% 0 0;
	margin-bottom: 20px;
}

#footer_main .locations .menu li:last-child {
	margin-bottom: 0;
}

#copyright_menu__wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 20px;
	flex-wrap: wrap;
}

#copyright_menu__wrapper .menu {
	justify-content: center;
	gap: 20px;
}

footer #social_links {
	display: flex;
	gap: 18px;
}

footer #social_links a {
	text-decoration: none;
	font-size: 22px;
	color: var(--black);
}

footer #social_links a img {
	height: 22px;
	width: auto;
}

footer #social_links a:hover {
	background: transparent;
	color: var(--red);
}

footer #social_links a:hover img {
	filter: invert(12%) sepia(42%) saturate(6962%) hue-rotate(4deg) brightness(86%) contrast(121%);
}

/* Primary Buttons */
.wp-block-button > .wp-block-button__link,
input[type=button],
input[type=submit],
button[type=submit],
button.facetwp-load-more,
.button:not(.button-exclusion-classes-here) {
	display: inline-block;
    transition: all 0.3s ease-in-out;
    white-space: wrap;
    word-break: initial;
    padding: 18px 30px;
    font-size: var(--small);
    font-weight: 400;
    line-height: 1.25;
    text-transform: none;
    text-decoration: none;
    border: 1px solid var(--red);
    border-radius: 30px;
    color: var(--white) !important;
    background-color: var(--red);
}

.wp-block-button > .wp-block-button__link:hover,
input[type=button]:hover,
input[type=submit]:hover,
button[type=submit]:hover,
button.facetwp-load-more:hover,
.button:not(.button-exclusion-classes-here):hover {
	color: var(--red) !important;
	background: transparent;
	border-color: var(--red);
}

/* Secondary Buttons */
.wp-block-button.is-style-secondary-button > .wp-block-button__link,
input[type=button].is-style-secondary-button,
input[type=submit].is-style-secondary-button,
button[type=submit].is-style-secondary-button,
.button:not(.button-exclusion-classes-here).is-style-secondary-button{
    background-color: transparent;
    color: var(--red) !important;
    border-color: var(--red);
}

.wp-block-button.is-style-secondary-button > .wp-block-button__link:hover,
input[type=button].is-style-secondary-button:hover,
input[type=submit].is-style-secondary-button:hover,
button[type=submit].is-style-secondary-button:hover,
.button:not(.button-exclusion-classes-here).is-style-secondary-button:hover{
	background-color: var(--red);
	color: var(--white) !important;
}

.wpdt-c.wpDataTableContainerSimpleTable .wpdtSimpleTable.wpDataTable td.wpdt-cell a {
	color: var(--red);
}

.wpdt-c.wpDataTableContainerSimpleTable .wpdtSimpleTable.wpDataTable td.wpdt-cell a:hover {
	background-color: var(--red);
	color: #fff;
}

.wpdtSimpleTable {
	border-collapse: unset !important;
}

.wpDataTableContainerSimpleTable .wpdtSimpleTable.wpDataTable th,
.wpDataTableContainerSimpleTable .wpdtSimpleTable.wpDataTable td {
	border-bottom-width: 0px !important;
}

.wpDataTableContainerSimpleTable .wpdtSimpleTable.wpDataTable th + th,
.wpDataTableContainerSimpleTable .wpdtSimpleTable.wpDataTable td + td {
	border-bottom-width: 0 !important;
	border-left-width: 0 !important;
}

.wpDataTableContainerSimpleTable .wpdtSimpleTable.wpDataTable tr:last-child td {
	border-bottom-width: 1px !important;
}

.wpDataTablesWrapper {
	-ms-overflow-x: scroll;
	    overflow-x: scroll;
}

.wpdt-cell-row .wpdt-cell:first-child {
	position: sticky;
	left: 0;
	z-index: 2;
}

/*.wpdt-c.wpDataTableContainerSimpleTable .wpdtSimpleTable.wpDataTable td.wpdt-cell a:first-child:last-child {
	padding: 15px 20px;
}*/

/* Button Styles on Dark BG */
.has-red-background-color .wp-block-button > .wp-block-button__link:hover,
.has-red-background-color input[type=button]:hover,
.has-red-background-color input[type=submit]:hover,
.has-red-background-color button[type=submit]:hover,
.has-red-background-color .button:not(.button-exclusion-classes-here):hover,
.has-black-background-color .wp-block-button > .wp-block-button__link:hover,
.has-black-background-color input[type=button]:hover,
.has-black-background-color input[type=submit]:hover,
.has-black-background-color button[type=submit]:hover,
.has-black-background-color .button:not(.button-exclusion-classes-here):hover,
.has-dark-gray-background-color .wp-block-button > .wp-block-button__link:hover,
.has-dark-gray-background-color input[type=button]:hover,
.has-dark-gray-background-color input[type=submit]:hover,
.has-dark-gray-background-color button[type=submit]:hover,
.has-dark-gray-background-color .button:not(.button-exclusion-classes-here):hover,
.has-gray-background-color .wp-block-button > .wp-block-button__link:hover,
.has-gray-background-color input[type=button]:hover,
.has-gray-background-color input[type=submit]:hover,
.has-gray-background-color button[type=submit]:hover,
.has-gray-background-color .button:not(.button-exclusion-classes-here):hover {
	background-color: transparent;
	color: var(--white) !important;
	border-color: var(--white);
}

/* Secondary Button Styles on Dark BG */
.has-black-background-color .wp-block-button.is-style-secondary-button > .wp-block-button__link,
.has-black-background-color input[type=button].is-style-secondary-button,
.has-black-background-color input[type=submit].is-style-secondary-button,
.has-black-background-color button[type=submit].is-style-secondary-button,
.has-black-background-color .button:not(.button-exclusion-classes-here).is-style-secondary-button,
.has-dark-gray-background-color .wp-block-button.is-style-secondary-button > .wp-block-button__link,
.has-dark-gray-background-color input[type=button].is-style-secondary-button,
.has-dark-gray-background-color input[type=submit].is-style-secondary-button,
.has-dark-gray-background-color button[type=submit].is-style-secondary-button,
.has-dark-gray-background-color .button:not(.button-exclusion-classes-here).is-style-secondary-button,
.has-gray-background-color .wp-block-button.is-style-secondary-button > .wp-block-button__link,
.has-gray-background-color input[type=button].is-style-secondary-button,
.has-gray-background-color input[type=submit].is-style-secondary-button,
.has-gray-background-color button[type=submit].is-style-secondary-button,
.has-gray-background-color .button:not(.button-exclusion-classes-here).is-style-secondary-button {
    background-color: transparent;
    color: var(--white) !important;
    border-color: var(--white);
}

.has-black-background-color .wp-block-button.is-style-secondary-button > .wp-block-button__link:hover,
.has-black-background-color input[type=button].is-style-secondary-button:hover,
.has-black-background-color input[type=submit].is-style-secondary-button:hover,
.has-black-background-color button[type=submit].is-style-secondary-button:hover,
.has-black-background-color .button:not(.button-exclusion-classes-here).is-style-secondary-button:hover,
.has-dark-gray-background-color .wp-block-button.is-style-secondary-button > .wp-block-button__link:hover,
.has-dark-gray-background-color input[type=button].is-style-secondary-button:hover,
.has-dark-gray-background-color input[type=submit].is-style-secondary-button:hover,
.has-dark-gray-background-color button[type=submit].is-style-secondary-button:hover,
.has-dark-gray-background-color .button:not(.button-exclusion-classes-here).is-style-secondary-button:hover,
.has-gray-background-color .wp-block-button.is-style-secondary-button > .wp-block-button__link:hover,
.has-gray-background-color input[type=button].is-style-secondary-button:hover,
.has-gray-background-color input[type=submit].is-style-secondary-button:hover,
.has-gray-background-color button[type=submit].is-style-secondary-button:hover,
.has-gray-background-color .button:not(.button-exclusion-classes-here).is-style-secondary-button:hover {
	background-color: var(--white);
	color: var(--black) !important;
}


.has-light-gray-background-color .wp-block-button.is-style-secondary-button > .wp-block-button__link,
.has-light-gray-background-color input[type=button].is-style-secondary-button,
.has-light-gray-background-color input[type=submit].is-style-secondary-button,
.has-light-gray-background-color button[type=submit].is-style-secondary-button,
.has-light-gray-background-color .button:not(.button-exclusion-classes-here).is-style-secondary-button{
    background-color: transparent;
    color: var(--red) !important;
    border-color: var(--red);
}

.has-light-gray-background-color .wp-block-button.is-style-secondary-button > .wp-block-button__link:hover,
.has-light-gray-background-color input[type=button].is-style-secondary-button:hover,
.has-light-gray-background-color input[type=submit].is-style-secondary-button:hover,
.has-light-gray-background-color button[type=submit].is-style-secondary-button:hover,
.has-light-gray-background-color .button:not(.button-exclusion-classes-here).is-style-secondary-button:hover {
	background-color: var(--red);
	color: var(--white) !important;
}

.wp-block-button__link:has(img) {
	display: flex !important;
	align-items: center;
	gap: 12px;
	padding: 10px 25px !important;
}

.is-style-secondary-button > .wp-block-button__link:has(img):hover img {
	filter: brightness(0) invert(1);
}

.has-text-align-center + .wp-block-buttons.is-content-justification-center {
	margin-top: 40px;
}

.block-placeholder {
	padding: 10px;
	border: 1px solid;
	text-align: center;
	font-weight: bold;
	background: #eee;
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}

/* Link Styles */
p a,
ul a,
ol a {
	text-decoration-color: var(--blue);
	text-underline-position: under;
}
p a:hover,
ul a:hover,
ol a:hover {
	background: var(--blue);
	color:#fff;
}

p a:visited,
ul a:visited,
ol a:visited {
	text-decoration-color: var(--blue);
}

a.text-link {
	text-decoration: none;
}

a.text-link:hover {
	text-decoration: underline;
	text-underline-position: under;
}

a.arrow-link:after {
	content: url(assets/img/arrow-link-chevron-right.svg);
	/*font-family: fontawesome;
	font-size: 0.85em;*/
	display: inline;
	vertical-align: middle;
	margin-left: 5px;
	line-height: 1;
}

/* Link Styles on Dark BG */
.has-red-background-color,
.has-red-background-color p a,
.has-red-background-color ul a,
.has-red-background-color ol a,
.has-blue-background-color,
.has-blue-background-color p a,
.has-blue-background-color ul a,
.has-blue-background-color ol a,
.has-black-background-color p a,
.has-black-background-color ul a,
.has-black-background-color ol a,
.has-dark-gray-background-color,
.has-dark-gray-background-color p a,
.has-dark-gray-background-color ul a,
.has-dark-gray-background-color ol a,
.has-gray-background-color,
.has-gray-background-color p a,
.has-gray-background-color ul a,
.has-gray-background-color ol a,
.wp-block-cover.has-white-text-color > .wp-block-cover__inner-container p a,
.wp-block-cover.has-white-text-color > .wp-block-cover__inner-container ul a,
.wp-block-cover.has-white-text-color > .wp-block-cover__inner-container ol a {
	color: var(--white);
	text-decoration-color: var(--white);
}

.has-red-background-color p a:visited,
.has-red-background-color ul a:visited,
.has-red-background-color ol a:visited,
.has-blue-background-color p a:visited,
.has-blue-background-color ul a:visited,
.has-blue-background-color ol a:visited,
.has-black-background-color p a:visited,
.has-black-background-color ul a:visited,
.has-black-background-color ol a:visited,
.has-dark-gray-background-color p a:visited,
.has-dark-gray-background-color ul a:visited,
.has-dark-gray-background-color ol a:visited,
.has-gray-background-color p a:visited,
.has-gray-background-color ul a:visited,
.has-gray-background-color ol a:visited,
.wp-block-cover.has-white-text-color > .wp-block-cover__inner-container p a:visited,
.wp-block-cover.has-white-text-color > .wp-block-cover__inner-container ul a:visited,
.wp-block-cover.has-white-text-color > .wp-block-cover__inner-container ol a:visited {
	color: var(--white);
	text-decoration-color: var(--white);
}

.has-red-background-color p a:hover,
.has-red-background-color ul a:hover,
.has-red-background-color ol a:hover,
.has-blue-background-color p a:hover,
.has-blue-background-color ul a:hover,
.has-blue-background-color ol a:hover,
.has-black-background-color p a:hover,
.has-black-background-color ul a:hover,
.has-black-background-color ol a:hover,
.has-dark-gray-background-color p a:hover,
.has-dark-gray-background-color ul a:hover,
.has-dark-gray-background-color ol a:hover,
.has-gray-background-color p a:hover,
.has-gray-background-color ul a:hover,
.has-gray-background-color ol a:hover,
.wp-block-cover.has-white-text-color > .wp-block-cover__inner-container p a:hover,
.wp-block-cover.has-white-text-color > .wp-block-cover__inner-container ul a:hover,
.wp-block-cover.has-white-text-color > .wp-block-cover__inner-container ol a:hover {
	color: var(--white);
	background-color: var(--red);
}

.paragraph.short {
	--paragraph-spacing: 12px;
}

.wp-block-cover h1,
.wp-block-cover h2 {
	color: var(--black) !important;
}

/* Paragraph Alternate Styles */
*.is-style-h1 {
	font-size: var(--h1);
	font-weight: 600;
	line-height: 1.18;
	color: var(--black);
}

*.is-style-h2 {
	font-size: var(--h2);
	font-weight: 300;
	line-height: 1.2;
	color: var(--black);
}

*.is-style-h3 {
	font-size: var(--h3);
	font-weight: 600;
	line-height: 1.18;
	color: var(--gray);
}

*.is-style-h4 {
	font-size: var(--h4);
	font-weight: 300;
	line-height: 1.2;
	color: var(--black);
}

*.is-style-h5 {
	font-size: var(--h5);
	font-weight: 400;
	line-height: 1.21;
	color: var(--black);
}

*.is-style-h6 {
	font-size: var(--h6);
	font-weight: 700;
	line-height: 1.27;
	color: var(--black);
}

h2 a, h3 a, h4 a, h5 a, h6 a {
	text-decoration: none;
}

h2 a:hover {
	text-decoration: underline;
	text-underline-position: under;
	text-decoration-thickness: 2px;
}

h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover {
	text-decoration: underline;
	text-underline-position: under;
	text-decoration-thickness: 1px;
}

h1 + h2 {
	margin-top: 0;
}

h2.is-style-underline {
	padding-bottom: 10px;
	border-bottom: 1px solid var(--dark-gray);
}

*.is-style-large {
	font-size: var(--large);
	font-weight: normal;
}

*.is-style-small {
	font-size: var(--small);
}

*.is-style-all-caps {
	text-transform: uppercase;
}

.has-text-align-center {
	margin-left: auto;
	margin-right: auto;
	max-width: 800px !important; 
}

#page_content .wpdt-c.wpDataTableContainerSimpleTable {
	margin-top: 40px;
}

.table-wrapper tr:nth-child(even) {
	background: #eee;
}

.table-wrapper td {
    padding: 5px;
    border: 1px solid var(--gray);
    font-size: 16px;
}

.table-wrapper th {
	font-weight: bold;
	padding: 5px;
	text-align: left;
	vertical-align: bottom;
}

.wpdt-c.wpDataTableContainerSimpleTable .wpdtSimpleTable.wpDataTable thead th.wpdt-cell {
	font-weight: bold;
	font-size: 20px;
}

.wpDataTables.wpDataTablesWrapper.wdtVerticalScroll {
	scrollbar-color: #666767 #F7F7F7;
  	scrollbar-width: 24px;
}

#page_content > .wp-block-template-part,
#page_content > .entry-content {
	max-width: 100%;
	padding-left: 0;
	padding-right: 0;
	margin-top: 0;
}

#page_content > .entry-content + .wp-block-buttons {
	margin-top: -30px;
}

#page_content > .entry-content + .alignfull {
	margin-top: 0;
}

:where(.wp-block-cover-image:not(.has-text-color)), 
:where(.wp-block-cover:not(.has-text-color)) {
	color: var(--gray) !important;
}

/* Text Color on Dark BG */
.has-red-background-color *,
.has-blue-background-color *,
.has-black-background-color *,
.has-dark-gray-background-color *,
.has-gray-background-color *,
.wp-block-cover.has-white-text-color > .wp-block-cover__inner-container * {
	color: var(--white) !important;
}

.has-red-background-color *[class^="is-style-h"],
.has-blue-background-color *[class^="is-style-h"],
.has-black-background-color *[class^="is-style-h"],
.has-dark-gray-background-color *[class^="is-style-h"],
.has-gray-background-color *[class^="is-style-h"],
.has-red-background-color .wp-block-heading,
.has-blue-background-color .wp-block-heading,
.has-black-background-color .wp-block-heading,
.has-dark-gray-background-color .wp-block-heading,
.has-gray-background-color .wp-block-heading {
	color: var(--white) !important;
}

#page_content > #contactform,
#page_content > #contactform + * {
	margin-top: 0;
}

/* List Styles */
.single #page_content ul li,
#page_content ul.wp-block-list li {
	list-style: circle;
}

#page_content ul.wp-block-list li::marker {
	line-height: 0;
}

.wp-block-group.alignfull > ul {
	padding-left: 20px;
}

ul.is-style-checkmarks.wp-block-list {
    padding-left: 0 !important;
}

ul.is-style-checkmarks.wp-block-list li {
    list-style: none !important; 
    padding-left: 30px;
    position: relative;
}

ul.is-style-checkmarks.wp-block-list li + li {
	margin-top: 8px;
}

ul.is-style-checkmarks li:before {
    content: "";
    width: 24px;
    height: 24px;
    top: 2px;
    left: 0;
    position: absolute;
    background: url(assets/img/checkmark.svg) 50% no-repeat;
    background-size: 18px;
}

@media only screen and (min-width: 782px) {
	ul.wp-block-list.two-column-list,
	ol.wp-block-list.two-column-list {
		column-count: 2;
		column-gap: var(--padding);
	}

	.wp-block-list.two-column-list li {
		break-inside: avoid;
	}
}

.has-dark-gray-background-color ul.is-style-checkmarks li:before,
.has-red-background-color ul.is-style-checkmarks li:before,
.has-black-background-color ul.is-style-checkmarks li:before {
  background-image: url(assets/img/checkmark-white.svg);
}

/* Card Styles */
h2 + .card-grid__container {
	margin-top: 30px;
}

h2.is-style-underline + .card-grid__container {
	margin-top: 50px;
}

.card-grid__container,
.icon-cards-wbuttons .cards-wrapper {
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	    gap: 30px;
}

.card-grid__container .card {
	border-radius: 20px;
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 20px;
	padding: 45px 35px;
	width: calc(33.333% - 20px);
	text-align: center;
}

.card-grid__container .card-with-photo {
	padding: 0;
	display: block;
}

.card-with-photo {
	overflow: hidden;
	-webkit-border-radius: 20px;
	        border-radius: 20px;
	position: relative;
}

.icon-cards-wbuttons .cards-wrapper .icon-card .wp-block-buttons {
	margin-top: auto;
}

.icon-cards-wbuttons .cards-wrapper .icon-card img {
	height: 100px;
}

.icon-cards-wbuttons .cards-wrapper .icon-card p {
	color: var(--gray);
}

.team-section + .team-section {
	margin-top: var(--padding);
}

@media only screen and (max-width: 990px) {
	.card-grid__container .card {
		width: calc(50% - 15px);
	}
}

@media only screen and (max-width: 600px) {
	.card-grid__container .card {
		width: 100%;
	}

	:root {
		--wp--preset--gradient--white-to-transparent: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, .75) 75%, rgba(255, 255, 255, 0.15) 100%)
	}
}


/* Career Styles */
.careers__container {
	display: flex;
	justify-content: center;
	margin-top: 40px;
}

.careers__container .card-with-photo {
	flex-basis: 25%;
}

@media screen and (max-width: 1300px) {
	#header_main #main_menu__wrapper .menu > li > ul > li {
		width: 175px;
	}

	#header_main #utility_menu__wrapper .menu > li > a {
		font-size: 14px;
		margin-left: 10px;
		margin-right: 10px;
	}

	#footer_main .grid .tile:first-child {
		width: calc(25% - 17px);
	}

	#footer_main .grid .tile + .tile {
		width: calc(37% - 17px);
	}

	#footer_main .grid .tile + .tile:before {
		left: -30px;
	}

	#footer_main .locations .menu li {
		flex-basis: 100%;
	}
}

@media screen and (max-width: 1200px) {
	.careers__container {
		flex-wrap: wrap;
	}

	.careers__container .card-with-photo {
		flex-basis: 33.333%;
	}

	#header_main #main_menu__wrapper .menu > li > ul > li {
		width: 150px;
	}
}
	

@media screen and (max-width: 900px) {
	.careers__container .card-with-photo {
		flex-basis: 50%;
	}
}

@media screen and (max-width: 600px) {
	.careers__container .card-with-photo {
		flex-basis: 100%;
	}
}

/* Blog Styles */
.blog__container {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}

.blog__container .card-with-photo {
	flex-basis: calc(33.333% - 27px);
}

.single-post #page_content .wp-block-group.alignfull > *:not(.alignwide, .alignfull,.wp-block-media-text) {
	max-width: 750px;
}

@media screen and (max-width: 900px) {
	.blog__container .card-with-photo {
		flex-basis: calc(50% - 20px);
	}
}

@media screen and (max-width: 600px) {
	.blog__container .card-with-photo {
		flex-basis: 100%;
	}
}

/* FAQ Styles */
ul.is-style-anchor-links,
.faq-cat-anchors {
	padding-left: 0 !important;
	display: flex;
	flex-wrap: wrap;
	gap: 20px 15px;
}

ul.is-style-anchor-links li {
	list-style: none !important;
}

ul.is-style-anchor-links li,
.faq-cat-anchors a {
	font-size: 20px;
	color: var(--blue);
	flex-basis: 300px;
	text-decoration: none;
}

ul.is-style-anchor-links li a {
	color: var(--blue);
	text-decoration: none;
}

ul.is-style-anchor-links a:hover,
.faq-cat-anchors a.active,
.faq-cat-anchors a:hover {
	background: transparent;
	text-decoration: underline;
	text-underline-position: under;
	text-decoration-thickness: 1px;
}

.category-section {
	display: flex;
	flex-direction:column;
	gap: 10px;
}

.category-section + .category-section {
	margin-top: 80px;
}

.category-section h2 {
	padding-bottom: 15px;
}

.faq-item,
.faq-item-static {
	border-radius: 7px;
	width: 100%;
	max-width: 1024px !important; 
	color: #080808;
	margin-left: auto;
	margin-right: auto;
}

.faq-item h3.has-blue-background-color {
	border-radius: 7px;
	color: #fff;
}

.faq-item-static {
	border-radius: 10px;
	padding: 10px 15px;
	/*border: 1px solid var(--light-gray);*/
	border-left: 5px solid var(--red);
}

.faq-item-static h3 {
	font-size: var(--large);
	color: var(--red);
}

.single-product .wp-block-heading:has(~ .faq-item),
.single-product .faq-item {
	max-width: 800px !important;
}

h2:not(.has-text-align-center) ~ .faq-item {
	margin-left: 0;
}

h2:has(+.faq-item) {
	max-width: 1024px !important;
}

.wp-block-heading + .faq-item {
	margin-top: 40px;
}

.single-product .faq-item {
	color: var(--grey);
}

.single-product .faq-item ul li {
	list-style: disc !important;
}

.faq-item .question {
	cursor: pointer;
	padding: 18px 15px;
	display: block;
	position: relative;
	padding-right: 40px;
	font-size: var(--large);
	color: var(--gray);
	font-weight: normal;
}

.faq-item .question:after {
	content: "";
	width: 18px;
	height: 10px;
	background: url('assets/img/chevron-down-blue.svg') center no-repeat;
	background-size: 100%;
	transition: 0.4s;
	position: absolute;
	right: 18px;
	top: 25px;
}

.faq-item:not(.has-blue-background-color).open .question:after {
	transform: rotate(180deg);
}

.faq-item .question.has-blue-background-color:after {
	background: url('assets/img/icon-plus-white.svg') center no-repeat;
	background-size: 100%;
	width: 24px;
	height: 24px;
	top: 21px;
}

.faq-item.open .question.has-blue-background-color:after {
	background-image: url('assets/img/icon-minus-white.svg');
}

.faq-item .answer {
	display: none;
	padding: 15px 50px 20px;
}

.iframe-wrapper {
	text-align: center;
}

.iframe-wrapper iframe {
	display: block;
	margin: auto;
}

/* Form Styles */
#page_content .gform_wrapper {
	max-width: 810px;
	margin-left: auto;
	margin-right: auto;
}

#page_content p + .gform_wrapper {
	margin-top: var(--browser-padding);
}

#page_content .gform_required_legend {
	display: none;
}

#page_content .gform_wrapper .gform_fields {
	grid-row-gap: 20px;
	grid-column-gap: 15px;
}

#page_content .gform_wrapper .gfield_label {
	color: var(--black);
	font-size: var(--normal);
	font-weight: 500;
	line-height: 1.65;
	margin-bottom: 5px;
}

#page_content .gform_wrapper .gfield_required {
	color: inherit;
	font-size: inherit;
	padding-left: 1px;
}

#page_content .gform_wrapper input:not([type="submit"]),
#page_content .gform_wrapper textarea,
#page_content .gform_wrapper select {
	line-height: 1.65 !important;
	font-size: var(--normal);
	padding: 10px 15px;
	width: 100%;
	border: 1px solid var(--gray);
	border-radius: 7px;
	font-family: var(--poppins);
	outline: none !important;
	height: unset;
}

#page_content .gform_wrapper select {
	appearance: none;
	padding-right: 30px;
	position: relative;
	background-image: url(assets/img/down-chevron.svg);
	background-repeat: no-repeat;
	background-size: 15px auto;
	background-position: right 15px center;
}

#page_content .gform_wrapper input:not([type="submit"])::placeholder,
#page_content .gform_wrapper textarea::placeholder,
#page_content .gform_wrapper select {
	font-family: var(--poppins);
	font-size: var(--normal);
}

#page_content .gform_wrapper .gform_footer {
	padding: 0;
	padding-top: 0;
	margin-top: 20px;
	justify-content: flex-end;
}

#page_content .gform_wrapper input[type="submit"] {
	padding: 15px 20px;
    font-size: var(--small);
    font-weight: 700;
    line-height: 1.25;
    text-transform: uppercase;
    text-decoration: none;
    border: 3px solid var(--red);
    border-radius: 5px;
    color: var(--white);
    background-color: var(--red);
}

#page_content .gform_wrapper input[type="submit"]:hover {
	color: var(--black);
	background-color: var(--gray);
	border-color: var(--gray);
}

/* GLOBAL RESPONSIVE STYLES */
@media only screen and (max-width: 990px) {
	html, body {
		--wp--preset--font-size--h-1: 48px;
	    --wp--preset--font-size--h-2: 40px;
	    --wp--preset--font-size--h-3: 32px;
	    --wp--preset--font-size--h-4: 26px;
	    --wp--preset--font-size--h-5: 22px;
	    --wp--preset--font-size--h-6: 20px;
	    --wp--preset--font-size--large: 21px;
	}

	h1, .is-style-h1 {
		line-height: 1.2;
	}

	h2, .is-style-h2 {
		line-height: 1.2;
	}

	h3, .is-style-h3 {
		line-height: 1.31;
	}

	h4, .is-style-h4 {
		line-height: 1.23;
	}

	h5, .is-style-h5 {
		line-height: 1.27;
	}

	h6, .is-style-h6 {
		line-height: 1.3;
	}
}

@media only screen and (max-width: 781px) {
    body:not(.post-type-archive-event) #page_content > .wp-block-group .wp-block-buttons {
        text-align: center;
        justify-content: center;
    }

    body:not(.post-type-archive-event) #page_content > .wp-block-group .stat .wp-block-buttons {
    	
    }

    #page_content .wp-block-spacer.is-style-mobile-hidden {
    	display: none !important;
    }

    #page_content .hide-mobile {
    	display: none !important;
    }
}

/*LAYOUT*/
.page-wrapper {
	position: relative;
	overflow: unset;
	container-name: page-wrapper;
	container-type: inline-size;
}

.wp-block-buttons {
	column-gap: calc(var(--gap) * 0.5);
	row-gap: calc(var(--gap) * 0.75);
}

.wp-block-buttons.is-layout-flex .wp-block-button .wp-block-button__link {
	display: block !important;
}

#page_content > * {
    margin-left: auto;
    margin-right: auto;
    max-width: var(--container-width);
    padding-left: var(--browser-padding);
    padding-right: var(--browser-padding);
    width: 100%
}

#page_content>.wp-block-cover>.wp-block-cover__inner-container > *,
#page_content>.wp-block-group > * {
    padding-left: 0;
    padding-right: 0;
}

#page_content>.wp-block-image.alignfull {
	padding-left: 0;
	padding-right: 0;
	margin-bottom: 0;
}

#page_content>.wp-block-image.alignfull:has(+ .yoast-breadcrumbs) {
	z-index: 20;
	margin-bottom: 0 !important;
}

#page_content>.wp-block-image.alignfull + .yoast-breadcrumbs {
	z-index: 3;
	margin-top: 0;
	margin-bottom: 0;
	height: 0;
	position: relative;
	transform: translateY(30px);
	max-width: calc(1300px + (var(--browser-padding) *2));
}

#page_content>.wp-block-image.alignfull + .yoast-breadcrumbs + .alignfull {
	margin-top: 0px !important;
	padding-top: calc(var(--padding) + 50px);
}

.wp-block-image.is-style-rounded img {
	border-radius: 30px;
}

.yoast-breadcrumbs {
	font-size: 12px;
	padding: 0;
}

#page_content > .entry-content > .wp-block-group > .yoast-breadcrumbs {
	padding-left: var(--browser-padding);
}

.yoast-breadcrumbs:has(a) + h1 {
	margin-top: calc(var(--padding)/2);
}

.yoast-breadcrumbs:not(:has(a)) {
	display: none;
}

.yoast-breadcrumbs:not(:has(a)) + h1 {
	margin-top: 0;
}

.container-wide {
	max-width: var(--wide-width);
	margin-left: auto;
	margin-right: auto;
}

.wp-block-group.alignwide,
.wp-block-cover.alignwide {
	max-width: var(--wide-width);
	margin-left: auto;
	margin-right: auto;
}

.wp-block-group.is-style-medium-width {
	max-width: 1020px !important;
}

.wp-block-group.is-style-rounded-corners {
	border-radius: 25px;
}

#page_content .wp-block-group h1 + p,
#page_content .wp-block-group h2 + .wp-block-cover,
#page_content .wp-block-group > .wp-block-media-text:not(:first-child) {
	margin-top: var(--browser-padding);
}

body:not(.post-template-blog-post-alternate) .entry-content > * {
    padding-left: var(--browser-padding);
    padding-right: var(--browser-padding);
}

.entry-content:where(.is-layout-flow) > .alignfull {
    margin-block-start: 0;
}

#page_content .wp-block-group.alignfull {
	padding-top: var(--padding);
	padding-bottom: var(--padding);
}

#page_content .wp-block-group > .wp-block-group {
	padding: 50px;
}

#page_content .wp-block-cover .wp-block-group.has-white-background-color p {
    color: var(--dark-gray);
}

#page_content .wp-block-group > * + .wp-block-columns {
	margin-top: var(--browser-padding);
}

#page_content .wp-block-cover {
	min-height: 200px;
	/*padding: 0 !important;*/
}

#page_content .wp-block-cover:has(.has-white-to-transparent-gradient-background) {
	min-height: 650px;
}

#page_content .wp-block-cover > .wp-block-cover__inner-container {
	margin-top: 0;
	/*padding-left: var(--browser-padding);
	padding-right: var(--browser-padding);*/
	width: 100%;
	max-width: var(--container-width);
	margin-left: auto;
	margin-right: auto;
	position: relative;
}

#page_content .wp-block-cover > .wp-block-cover__inner-container > .wp-block-columns {
	padding-left: 0;
	padding-right: 0;
}

#page_content .wp-block-cover .wp-block-cover__inner-container, 
#page_content .wp-block-cover-image .wp-block-cover__inner-container {
	color: inherit;
}

/*.locations-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 50px;
}

.locations-grid > div {
	flex: calc(33.333% - 34px) 0 0;
}*/

.stat.location {
	padding-right: 175px;
	position: relative;
}

.stat.location .wp-block-buttons {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
}

#page_content>*+*,
.wp-block-column>*+*,
.wp-block-group>*+*,
.wp-block-cover__inner-container>*+*,
.wp-block-media-text__content>*+*,
.paragraph>*+* {
	margin-top: var(--paragraph-spacing);
}

#page_content .wp-block-cover > .wp-block-cover__inner-container > .wp-block-columns {
	width: 100%;
	max-width: var(--container-width);
}

#page_content .wp-block-cover > .wp-block-cover__inner-container > .wp-block-group {
	padding: var(--padding);
}

#page_content .wp-block-group:not(.wide-content) > *:not(.alignwide, .alignfull),
#page_content .wp-block-cover:not(.wide-content) > .wp-block-cover__inner-container > *:not(.alignwide),
#page_content .wp-block-group:not(.wide-content) > .wp-block-columns:not(.alignwide),
#page_content .wp-block-cover:not(.wide-content) > .wp-block-cover__inner-container > .wp-block-columns:not(.alignwide) {
	max-width: var(--container-width);
	margin-left: auto;
	margin-right: auto;
}

#page_content > .entry-content > .wp-block-group.alignfull {
	padding-left: 0;
	padding-right: 0;
}

#page_content > .entry-content > .wp-block-group.alignfull > ul,
#page_content > .entry-content > .wp-block-group.alignfull > ol {
	padding-left: calc(var(--browser-padding) + 20px);
}

#page_content .wp-block-columns.is-style-narrow {
	max-width: var(--medium-width) !important;
}

#page_content .wp-block-group.is-style-constrained > *:not(.alignwide, .alignfull) {
	max-width: 580px;
}

#page_content .wp-block-group > .wp-block-cover.alignfull,
#page_content .wp-block-group > .wp-block-cover.alignfull {
	width: calc(100% + (2 * var(--browser-padding)));
	margin-left: calc(-1 * var(--browser-padding));
}

#page_content .wp-block-group:not(.has-background,.is-style-right-grid-background,.is-style-left-grid-background) + .wp-block-group:not(.has-background, .is-style-large-padding) {
	padding-top: 0;
}

#page_content .wp-block-group:not(.has-background) + .wp-block-group.is-style-large-padding {
	padding-top: var(--padding);
}

#page_content .wp-block-columns.is-layout-flex {
	gap: calc(var(--padding) * 0.75);
}

#page_content .wp-block-group.alignfull > .wp-block-columns.is-layout-flex {
	gap: var(--padding);
}

#page_content .wp-block-group.alignfull .wp-block-columns.is-layout-flex.is-style-less-padding,
#page_content .wp-block-group.alignfull > .wp-block-columns.is-layout-flex:has(.wp-block-column:first-child:nth-last-child(4)) {
	gap: 30px;
}

#page_content .wp-block-columns.is-narrow-columns {
	justify-content: space-between;
}

#page_content .wp-block-columns.is-narrow-columns .wp-block-column {
	max-width: 415px;
}

#page_content .wp-block-group .wp-block-columns + * {
	margin-top: var(--browser-padding);
}

#page_content .wp-block-group .wp-block-columns {
	margin-bottom: 0;
}

#page_content .wp-block-group .wp-block-columns.is-style-wide-column-gap {
	column-gap: var(--padding);
}

#page_content .narrow-content {
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
}

#page_content .wp-block-media-text {
	padding-left: 0;
	padding-right: 0;
}

#page_content .wp-block-media-text + .wp-block-media-text {
	margin-top: 75px !important;
}

#page_content .wp-block-group.alignfull:has(.wp-block-media-text.alignfull) {
	padding-top: var(--special-padding);
	padding-bottom: var(--special-padding);
	padding-left: 0;
	padding-right: 0;
}

#page_content .wp-block-media-text {
	container-name: media-text-block;
	container-type: inline-size;
	grid-column-gap: var(--special-padding);
	grid-row-gap: var(--browser-padding);
}

#page_content .wp-block-media-text:not(.has-media-on-the-right) {
	grid-template-columns: 57.8% 1fr;
}

#page_content .wp-block-media-text.has-media-on-the-right {
	grid-template-columns: 1fr 57.8%;
}

#page_content .wp-block-media-text .wp-block-media-text__media {
	align-self: center;
	position: relative;
	width: 100%;
	height: auto;
	aspect-ratio: 3/2;
}

#page_content .wp-block-media-text .wp-block-media-text__media img:not(.logo-placeholder) {
	border-radius: 20px;
}

#page_content .wp-block-media-text .wp-block-media-text__media img.logo-placeholder {
	width: auto;
}

#page_content .wp-block-media-text .wp-block-media-text__media > * {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 20px;
	overflow: hidden;
}

#page_content .wp-block-media-text .wp-block-media-text__media > a {
	display: flex;
	align-items: center;
	text-decoration: none;
	text-align: center;
	padding: 10px;
}

#page_content .wp-block-media-text .wp-block-media-text__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
	padding: 0;
	background: inherit;
}

#page_content .wp-block-media-text .wp-block-media-text__content {
	align-self: center;
}

#page_content .wp-block-list {
	padding-left: var(--browser-padding);
}

#page_content #hero + .wp-block-group,
#page_content .wp-block-group:first-child {
	/*padding-top: calc(var(--padding) * 0.75);*/
	/*padding-bottom: calc(var(--padding) / 2);*/
}

#page_content .is-style-flush-top {
	margin-top: var(--flush-bottom) !important;
}

#page_content .wp-block-group:first-child:has(>.yoast-breadcrumbs:first-child) {
	padding-top: calc(var(--padding) * 0.5);
}

#page_content .wp-block-group.no-bottom-padding {
	padding-bottom: 0 !important;
}

#page_content .wp-block-group.is-style-top-grid-background,
#page_content .wp-block-group.is-style-left-grid-background,
#page_content .wp-block-group.is-style-right-grid-background {
	position: relative;
}

#page_content .wp-block-group.is-style-top-grid-background {
	overflow: hidden;
}

#page_content .wp-block-group.is-style-top-grid-background:before {
	content: '';
	background-image: url('assets/img/vertical_grid_background.webp');
	background-repeat: no-repeat;
	background-size: 100%;
	background-position: top center;
	display: block;
	position: absolute;
	top: -200px;
	left: 0;
	width: 100%;
	height: calc(100% + 200px);
	z-index: -1;
	opacity: 0.7;
}

#page_content .wp-block-group.is-style-left-grid-background:before {
	content: '';
	background-image: url('assets/img/left_grid_background.png');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

#page_content .wp-block-group.is-style-right-grid-background:before {
	content: '';
	background-image: url('assets/img/right_grid_background.png');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}

#page_content .wp-block-group.is-style-right-grid-background > * {
	position: relative;
}

#page_content .wp-block-group.is-style-right-grid-background.fade-into-header:before {
	top: -25%;
/*	bottom: 0;*/
	height: 150%;
}

#page_content .wp-block-group * + .wp-block-group.has-background {
	margin-top: var(--padding);
}

#page_content .wp-block-group.is-style-bottom-ruler-accent {
	position: relative;
	border-radius: 20px;
	padding-bottom: calc(var(--padding) * 0.75);
}

#page_content .wp-block-group.is-style-bottom-ruler-accent:after {
	content: '';
	background-image: url('assets/img/tape-measure.svg');
	background-position: bottom center;
	background-repeat: no-repeat;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 45px;
	z-index: 0;
}

/*#page_content .wp-block-columns .wp-block-image img */
.single-post #page_content .wp-block-group.alignfull > .wp-block-image.size-large img {
	border-radius: 20px;
}

/* Layout Responsive Styles */
@media only screen and (max-width: 1100px) {
	#page_content .wp-block-columns.is-layout-flex {
		gap: 25px;
	}
}

@media only screen and (max-width: 1023px) {
	.stat.location {
		padding-right: 0;
	}

	.stat.location .wp-block-buttons {
		position: relative;
		top: auto;
		right: auto;
		transform: none;
		margin-top: 20px;
	}
}
@media only screen and (max-width: 1024px) {
	#header_main {
		border-bottom: 2px solid #DFDBDC;
		height: 65px;
	}

	#header_main #top #logo {
		flex-basis: 150px
	}

	#header_main #top {
		padding-top: 15px;
	}

	#mobile_menu_icon {
		display: block;
	}

	#header_main .wp-block-buttons,
	#header_main #utility_menu__wrapper .menu,
	#header_main #bottom {
		display: none;
	}

	#header_search form {
		left: auto;
		right: -30px;
	}
}

@media only screen and (max-width: 1023px) and (min-width: 782px) {
	#page_content .wp-block-columns.is-layout-flex {
		gap: 25px;
		flex-wrap: wrap !important;
	}

	#page_content .wp-block-columns.is-layout-flex>.wp-block-column {
		flex-basis: calc(50% - 13px);
	}
}

@media only screen and (min-width: 769px) {
	#page_content .wp-block-group.alignfull#author_block {
		padding-top: 25px;
		padding-bottom: 50px;
	}
}

@media only screen and (min-width: 991px) {
	#page_content .wp-block-media-text.is-style-measurement-accent:not(.has-media-on-the-right) .wp-block-media-text__content {
		padding-left: 35px;
	}

	#page_content .wp-block-media-text.is-style-measurement-accent.has-media-on-the-right .wp-block-media-text__content {
		padding-right: 35px;
	}

	#page_content .wp-block-media-text.is-style-measurement-accent:not(.has-media-on-the-right) .wp-block-media-text__media:before {
		background: url('assets/img/media-text-measurement-right.svg') no-repeat;
		background-size: auto 100%;
		background-position: right center;
		position: absolute;
		top:0;
		right:-50px;
		bottom:0;
		left:0;
		content:"";
	}

	#page_content .wp-block-media-text.is-style-measurement-accent.has-media-on-the-right .wp-block-media-text__media:before {
		background: url('assets/img/media-text-measurement-left.svg') no-repeat;
		background-size: auto 100%;
		background-position: left center;
		position: absolute;
		top:0;
		right:0;
		bottom:0;
		left:-50px;
		content:"";
	}
}

@media only screen and (max-width: 990px) {
	.locations-grid > div {
		flex: calc(50% - 25px) 0 0;
	}

	#page_content .wp-block-group > .wp-block-group {
		padding-left: 25px;
		padding-right: 25px;
	}
	#page_content .wp-block-media-text {
		grid-template-columns: auto !important;
	}

	#page_content .wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__media {
		grid-column: 1 !important;
		grid-row: 1 !important;
	}

	#page_content .wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__content {
		grid-column: 1 !important;
		grid-row: 2 !important;
	}

	#page_content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__media {
		grid-column: 1 !important;
		grid-row: 1 !important;
	}

	#page_content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
		grid-column: 1 !important;
		grid-row: 2 !important;
	}

	#page_content .wp-block-group.is-style-left-grid-background:before,
	#page_content .wp-block-group.is-style-right-grid-background:before {
		background-image: url('assets/img/vertical_grid_background.webp');
		background-repeat: no-repeat;
		background-size: 900px;
		background-position: top center;
	} 

	#page_content .wp-block-group.alignfull {
		padding-top: calc(var(--padding) * 0.75);
		padding-bottom: calc(var(--padding) * 0.75);
	}
}

@media only screen and (min-width: 782px) {
	#page_content .wp-block-group {
		padding-top: calc(var(--padding) / 2);
		padding-bottom: calc(var(--padding) / 2);
	}

	#page_content .wp-block-group.is-style-left-grid-background,
	#page_content .wp-block-group.is-style-right-grid-background {
		overflow: hidden;
	}
}

@media only screen and (max-width: 781px) {
	html, body {
		--browser-padding: 25px;
		--padding: 50px;
		--special-padding: 40px;
		--gap: 20px;
	}

	#page_content>.wp-block-cover {
		padding-left: 0;
		padding-right: 0;
		margin-bottom: 0;
	}

	#page_content>.wp-block-cover>.wp-block-cover__inner-container {
		padding-left: var(--browser-padding);
		padding-right: var(--browser-padding);
	}

	#page_content .wp-block-group > .wp-block-group {
		padding: 30px;
	}

	#page_content .wp-block-group .wp-block-columns + .wp-block-columns {
		margin-top: var(--padding);
	}

	#page_content .wp-block-columns:has(.wp-block-column .wp-block-list:first-child:last-child) {
		gap: 0;
	}

	#page_content .wp-block-columns .wp-block-column h2.wp-block-heading {
		max-width: unset;
	}

	#page_content .wp-block-columns {
		gap: var(--gap);
	}

	#page_content .wp-block-group .wp-block-columns .wp-block-column .wp-block-heading,
	#page_content .wp-block-group .wp-block-columns .wp-block-column p {
		text-align: center;
	}

	#page_content .wp-block-columns.is-narrow-columns .wp-block-column {
		max-width: unset;
	}

	#page_content .wp-block-group:has(+ .wp-block-media-text) {
		padding-bottom: 0;
	}

	#page_content .wp-block-group .wp-block-columns:has(.wp-block-column > .is-icon-list:only-child) {
		gap: 0;
	}

	#page_content .wp-block-group.is-style-bottom-ruler-accent {
		padding-bottom: calc(var(--padding) * 1.25);
	}
}

/* Hero Styles */
#page_content .wp-block-cover:has(.wp-block-cover__image-background.wp-post-image) .wp-block-cover__background,
#page_content > .wp-block-cover:first-child .wp-block-cover__background,
#page_content #hero .wp-block-cover__background {
	background: var(--wp--preset--gradient--white-to-transparent);
	opacity: 1;
}

#page_content #hero .wp-block-cover__background {
	margin-top: 0;
	max-width: unset;
}

#page_content #hero:not(:has(img)) .wp-block-cover__background {
	opacity: 0;
}

#page_content #hero .wp-block-cover__inner-container h1 {
	color: var(--black) !important;
}

#page_content #hero .wp-block-cover__inner-container h3,
#page_content #hero .wp-block-cover__inner-container .is-style-large {
	color: var(--gray) !important;
}

#page_content #hero .wp-block-cover__inner-container h1 span,
#page_content #hero .wp-block-cover__inner-container p span {
	display: block;
}

#page_content .wp-block-group.clean-with-breadcrumbs {
	padding-top: 20px;
	padding-bottom: calc(var(--padding) / 2);
}

#page_content .wp-block-group.clean-with-breadcrumbs .breadcrumbs {
	margin-bottom: calc(var(--padding) / 1.5);
}

#page_content .yoast-breadcrumbs > span {
    /*display: flex;
    gap: 10px;
    align-items: center;*/
}

#page_content .breadcrumbs {
	width: 100%;
	padding-left: var(--browser-padding);
    padding-right: var(--browser-padding);
    max-width: var(--container-width);
}

#page_content .yoast-breadcrumbs a {
	color: var(--gray);
	text-underline-position: under;
	text-decoration-color: var(--blue);
}

/*#page_content #hero .breadcrumbs a:hover {
	color: var(--white);
	turned off for breadcrumbs
}*/

#page_content .yoast-breadcrumbs .fas {
	content: url(assets/img/breadcrumb-chevron.svg);
	font-size: 10px;
	padding-left: 7.5px;
	padding-right: 7.5px;
}

#page_content #hero .wp-block-buttons {
	margin-top: 35px;
}

/* Hero Mobile Styles */
@media only screen and (min-width: 782px) {
	#page_content #hero .breadcrumbs {
		position: absolute;
		left: 50%;
		top: 0px;
		transform: translateX(-50%);
	    z-index: 1;
	    max-width: calc(var(--wp--style--global--wide-size) + (2 * var(--browser-padding)));
	}

	#page_content #hero .wp-block-cover__inner-container h1 span,
	#page_content #hero .wp-block-cover__inner-container p span {
		max-width: 70%;
	}
}

@media only screen and (max-width: 781px) {
	#page_content #hero,
	#page_content > .wp-block-cover:first-child {
		display: block;
		min-height: 0;
		aspect-ratio: unset;
		z-index: 2;
		padding-top: 0;
	}

	#page_content #hero .wp-block-cover__background,
	#page_content > .wp-block-cover:first-child .wp-block-cover__background {
		display: none !important;
	}

	#page_content #hero .wp-block-cover__image-background,
	#page_content > .wp-block-cover:first-child .wp-block-cover__image-background {
		position: relative;
		aspect-ratio: 16 / 9;
		display: block;
		margin-bottom: 30px;
	}

	#page_content #hero .wp-block-cover__inner-container,
	#page_content > .wp-block-cover:first-child .wp-block-cover__inner-container {
		padding-top: 0;
		padding-bottom: var(--browser-padding);
	}

	.single-event #page_content #hero .breadcrumbs {
		order: 1;
	}

	.single-event #page_content #hero > img {
		order: 3;
	    border-radius: 20px;
    	overflow: hidden;
    	max-width: calc(100% - 40px);
	}

	.single-event #page_content #hero > .wp-block-cover__inner-container {
		order: 2;
		padding-bottom: 0;
	}
}

/* 404 Layout Styles */
#page_content .wp-block-group.banner-404 {
	display: flex;
	align-items: center;
	min-height: 500px;
	position: relative;
}

#page_content .wp-block-group.banner-404:before {
	content: '';
	background-image: url('assets/img/vertical_grid_background.webp');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

#page_content .wp-block-group.banner-404:after {
	content: '';
	background-image: url('assets/img/red_ruler_graphic.webp');
	background-repeat: repeat-x;
	background-size: auto 100%;
	background-position: bottom center;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 45px;
	z-index: 0;
}

#page_content .wp-block-group.banner-404 .wp-block-image {
	max-width: 675px;
	margin-bottom: 30px;
}

#page_content .wp-block-group.content-404 .search-form {
	max-width: 480px;
	margin-left: auto;
	margin-right: auto;
}

#page_content .wp-block-group.content-404 .search-form label {
	display: block;
	margin-bottom: 5px;
}

#page_content .wp-block-group.content-404 .search-form input[type="search"] {
	border-color: var(--gray);
	border-radius: 7px;
}

#page_content .wp-block-group.content-404 .search-form button[type="submit"] {
	background-color: transparent !important;
	padding: 5px !important;
	border: none !important;
	color: var(--gray) !important;
	font-size: var(--normal) !important;
	height: 47px;
	top: unset;
	right: 5px;
}

#page_content .wp-block-group.content-404 .search-form button[type="submit"] svg {
	fill: var(--gray);
}

.wp-block-post-template .wp-block-post {
	max-width: 900px;
}

.wp-block-post-template .wp-block-post + .wp-block-post {
	margin-top: 50px;
}

.wp-block-post-template .wp-block-post .wp-block-post-title {
	font-size: var(--h4);
	margin-bottom: 15px;
}

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

	#page_content .wp-block-group.banner-404 {
		min-height: 210px;
	}

	#page_content .wp-block-group.is-style-red-ruler:after {
		height: 40px;
	}

	#footer_main .grid {
		gap: 40px;
	}

	#footer_main .grid .tile {
		width: 100% !important;
	}

	#footer_main .grid .tile + .tile:before {
		width: 100%;
		height: 1px;
		left: 0;
		top: -20px;
	}
}


/* Generic slick styles */
#page_content .slick-prev {
	left: -20px;
	width: 32px;
	height: 32px;
}

#page_content .slick-next {
	right: -20px;
	width: 32px;
	height: 32px;
}

#page_content .slick-prev:before,
#page_content .slick-next:before {
	content: url(assets/img/slick-chevron-right.svg);
	opacity: 1;
	filter: invert(12%) sepia(40%) saturate(3%) hue-rotate(14deg) brightness(99%) contrast(100%);
}

#page_content .slick-prev:before {
	content: url(assets/img/slick-chevron-left.svg);
}

#page_content .has-dark-gray-background-color .slick-prev:before,
#page_content .has-dark-gray-background-color .slick-next:before,
#page_content .has-black-background-color .slick-prev:before,
#page_content .has-black-background-color .slick-next:before {
	filter: invert(98%) sepia(27%) saturate(474%) hue-rotate(309deg) brightness(117%) contrast(100%)
}

#page_content .slick-disabled:before {
	opacity: 0.5;
	cursor: default;
}

#page_content .slick-dots {
	bottom: -40px;
	left: 50%;
    transform: translateX(-50%);
}

#page_content .slick-dots li button {
	width: 18px;
	height: 18px;
	border: 1px solid var(--gray);
	background-color: transparent;
	border-radius: 50%;
}

#page_content .slick-dots li button:before {
	display: none;
}

#page_content .slick-dots > li:first-child:last-child {
	display: none;
}

#page_content .slick-dots li.slick-active button {
	background-color: var(--gray);
}

#page_content .has-dark-gray-background-color .slick-dots li button,
#page_content .has-black-background-color .slick-dots li button {
	border-color: #fff;
}

#page_content .has-dark-gray-background-color .slick-dots li.slick-active button,
#page_content .has-gray-background-color .slick-dots li.slick-active button,
#page_content .has-black-background-color .slick-dots li.slick-active button {
	background-color: #fff;
}


/*Blog Styles*/
@media only screen and (max-width: 900px) {
	#author_block .wp-block-media-text {
		gap: 0;
	}

	#author_block .wp-block-media-text .wp-block-media-text__media > * {
		border-bottom-left-radius: 0;
		border-bottom-right-radius: 0;
	}

	#author_block .wp-block-media-text__content {
		background: var(--off-white) !important;
		padding: 10px 30px 20px !important;
		border-bottom-left-radius: 20px;
		border-bottom-right-radius: 20px;
		text-align: center;
	}
}


/* Card Styles */
.event-thumbnail {
	display: block;
	margin-left: auto;
	margin-right: auto;
	border-radius: 14px;
	width: 400px;
}

.card-with-photo.past-event-card {
	margin: 0 20px;
}

.card-with-photo .photo {
	display: block;
	text-decoration: none;
}

.wp-block-media-text__media a.has-off-white-background-color,
.card-with-photo .photo.has-off-white-background-color {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 20px;
	padding: 10px;
}

.card-with-photo .photo,
.card-with-photo .photo img:not(.logo-placeholder) {
	aspect-ratio: 9 / 6;
	object-fit: cover;
}

.card-with-photo .bottom {
	padding: 20px;
	padding-bottom: 110px;
}

.post-categories {
	padding-left: 0 !important;
	display: flex;
	flex-wrap: wrap;
	gap: 5px 18px;
	position: relative;
}

.post-categories + .wp-block-media-text {
	margin-top: 30px !important;
}

.card-with-photo .bottom .post-categories {
	justify-content: center;
}

.post-categories a {
	position: relative;
}

.post-categories a + a:before {
	content: "";
	width: 1px;
	height: 20px;
	background: var(--gray);
	position: absolute;
	left: -9px;
	top: 5px;
}

.card-with-photo .bottom .wp-block-buttons {
	position: absolute;
	bottom: 25px;
	left: 0;
	right: 0;
}

.wp-block-buttons.is-content-justification-center {
	justify-content: center;
}

/* Event Registration Styles */
#eventregistration {
	width: 100%;
	max-width: calc(100% - 60px);
	margin-left: auto;
	margin-right: auto;
	padding-left: 0;
	padding-right: 0;
}

#eventregistration iframe {
	width: 100%;
	min-height: 700px;
}

#eventregistration_modal {
	display: none;
	position: fixed;
	left: 50%;
	top: 50%;
	width: 100%;
	max-width: 100%;
	height: 100%;
	max-height: 97vh;
	transform: translate(-50%, -50%);
	margin: 0;
	z-index: 9999;
}

#eventregistration_modal:before {
	position: fixed;
	top:50%;
	left:50%;
	width: 100vw;
	height: 100vh;
	content:"loading";
	text-transform: uppercase;
	font-size: 20px;
	font-weight: bold;
	display: flex;
	align-items:center;
	justify-content: center;
	letter-spacing: 1px;
	background: rgba(0,0,0,0.6);
	/*opacity: 0.6;*/
	z-index: -1;
	transform: translate(-50%, -50%);
	cursor: pointer;
	color: #FFF;
}

#eventregistration_modal:after {
	/*font-family: 'Font Awesome 6 Free';
	font-weight: bold;*/
	content: url(assets/img/xmark-icon.svg);
	/*color: #FFF;*/
	pointer-events: none;
	position: absolute;
	top: 0px;
	right: 5px;
	/*left: calc(50vw + 450px);
	margin-left: -50px;
	font-size: 30px;*/
}

/* Video Styles */
.load-video {
	display: inline-block;
	width: 100%;
	position: relative;
}

.load-video:hover {
	background: transparent !important;
}

.load-video:after {
	color: #FFF;
	width: 210px;
	height: 210px;
	background: url('assets/img/icon-play.svg') center no-repeat;
	background-size: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	content: '';
	pointer-events: none;
}

.load-video img {
	width: 100%;
}

@media screen and (max-width: 990px) {
	.post-categories {
		justify-content: center;
	}

	#flyout_contact {
		top: 5vh;
	}
}

@media screen and (min-width: 601px) {
	#flyout_contact #toggle_button {
		display: none;
	}
}

@media screen and (max-width: 600px) {
	#header_search form {
		right: -80px;
		width: 95vw;
	}

	.locations-grid > div {
		flex: 100% 0 0;
	}

	/* Flyout Styles */
	#flyout_contact {
	    height: 0;
	    position: fixed !important;
	    padding: 0 !important;
	    right: 0;
	    top: 100px;
	    z-index: 1000;
	    width: auto;
	}

	#flyout_contact #toggle_button {
	    background: var(--red);
	    color: #fff !important;
	    text-decoration: none;
	    display: block;
	    border-top-left-radius: 30px;
	    border-top-right-radius: 30px;
	    padding: 10px 24px;
	    transform-origin: right bottom;
	    transform: rotate(270deg);
	    -webkit-transform: rotate(270deg);
	    -moz-transform: rotate(270deg);
	    -ms-transform: rotate(270deg);
	    transition: .3s all;
	    -webkit-transition: .3s all;
	    -moz-transition: .3s all;
	}

	#flyout_contact #flyout_contents {
	    color: #fff;
	    line-height: 1.6em;
	    -webkit-box-sizing: border-box;
	    -moz-box-sizing: border-box;
	    box-sizing: border-box;
	    padding: 10px 15px;
	    -ms-overflow-y: auto;
	    overflow-y: auto;
	    max-height: calc(100vh - 150px);
	    position: absolute;
	    right: -300px;
	    width: 350px;
	    transition: .3s all;
	    -webkit-transition: .3s all;
	    -moz-transition: .3s all;
	    -ms-transition: .3s all;
	    visibility: hidden;
	}

	#flyout_contact.open #flyout_contents {
		visibility: visible;
		background: #fff;
		box-shadow: 0 0 15px rgba(0,0,0,0.13);
	    -webkit-transform: translate3d(-300px, 0, 0);
	    -moz-transform: translate3d(-300px, 0, 0);
	    -o-transform: translate3d(-300px, 0, 0);
	    transform: translate3d(-300px, 0, 0);
	}

	#flyout_contact.open #toggle_button {
	    -webkit-transform: translate3d(-350px, 0, 0) rotate(270deg);
	    -moz-transform: translate3d(-350px, 0, 0) rotate(270deg);
	    transform: translate3d(-350px, 0, 0) rotate(270deg);
	}

	#flyout_contact + * {
		margin-top: 0;
	}
}

/* CB - Misc. Styles */
.wp-embed-responsive .wp-has-aspect-ratio .wp-block-embed__wrapper:before {
	display: none;
	/* This fixes the "Why Wenzel" video. */
}

/* Blog Post template and Blog Post Alternate template Styles */
.single-post.post-template-default #page_content .entry-content > .wp-block-group {
	padding-left: var(--browser-padding);
	padding-right: var(--browser-padding);
}

.single-post.post-template-default #page_content .entry-content > .wp-block-group > * {
	padding-right: unset;
}

.single-post.post-template-default #page_content .entry-content > .wp-block-group > *:not(ol,ul) {
	padding-left: unset;
}

.post-template-blog-post-alternate #hero + .wp-block-group  .wp-block-columns {
	justify-content: left;
}

.post-template-blog-post-alternate .entry-content,
.post-template-blog-post-alternate .entry-content > * {
	max-width: 750px !important;
}

.post-template-blog-post-alternate .series-links-block {
	max-width: unset !important;
}

.post-template-blog-post-alternate #hero + .wp-block-group.is-style-top-grid-background {
	overflow: unset;
}

.post-template-blog-post-alternate .wp-block-group.series-sidebar {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin-top: 0;
}

.post-template-blog-post-alternate .wp-block-group.series-sidebar .series-links-block,
.post-template-blog-post-alternate .wp-block-group.series-sidebar .series-anchor-links {
	padding-left: 0;
	padding-right: 0;
}

.post-template-blog-post-alternate .series-cta-block.sidebar {
	margin-top: var(--paragraph-spacing) !important;
	padding: 35px 25px !important;
}

.post-template-blog-post-alternate .series-cta-block.sidebar .wp-block-buttons {
	margin-top: var(--paragraph-spacing) !important;
}

.post-template-blog-post-alternate .series-cta-block img {
	display: block;
	width: 101px;
	height: auto;
	margin-left: auto;
	margin-right: auto;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.post-template-blog-post-alternate .wp-block-column {
	padding-top: 62.5px;
}

@media only screen and (min-width: 1024px) {
	.post-template-blog-post-alternate .wp-block-group.series-sidebar {
		position: sticky;
		top: 150px;
	}

	.post-template-blog-post-alternate .wp-block-group.series-sidebar .wp-block-list {
		max-height: calc(100vh - 150px - (2 * 66px) - var(--paragraph-spacing));
		overflow-y: auto;
	}

	.post-template-blog-post-alternate .sidebar-flyout-controls {
		display: none;
	}
}

@media only screen and (max-width: 1023px) {
	.post-template-blog-post-alternate {
		overflow-x: hidden;
	}

	.post-template-blog-post-alternate .sidebar-flyout-controls {
		display: flex;
		align-items: center;
		width: 40px;
		height: 26px;
		font-size: var(--large);
		line-height: 0;
		background-color: var(--red);
		color: white;
		padding: 3px 10px 2px 18px;
		border-top-right-radius: 15px;
		border-bottom-right-radius: 15px;
		position: absolute;
		text-decoration: none;
		top: 0;
		left: 100%;
		cursor: pointer;
		/*margin-left: calc(-1 * (max((100vw - 750px) / 2, var(--browser-padding))));*/
	}

	.post-template-blog-post-alternate .wp-block-column:has(.series-sidebar) {
		position: relative;
		transform: translateX(calc(-1 * (100cqw - max((100cqw - 750px)/2,var(--browser-padding)))));
		transition: transform 0.5s ease;
		z-index: 99;
	}

	.post-template-blog-post-alternate .wp-block-column:has(.series-sidebar.open) {
		transform: translateX(calc(-1 * var(--browser-padding)));
	}

	.post-template-blog-post-alternate .wp-block-column:has(.series-sidebar.open) .sidebar-flyout-controls span {
		display: inline-block;
		line-height: 0;
		transform: rotate(180deg);
	}

	.post-template-blog-post-alternate .wp-block-group.series-sidebar {
		position: absolute;
		width: 100%;
		max-height: 90vh;
		margin-top: 0;
		z-index: 999;
		border: 1px solid var(--red);
		border-top: 26px solid var(--red);
		border-bottom-right-radius: 5px;
		border-bottom-left-radius: 5px;
		background-color: var(--white);
		overflow-y: auto;
		padding: 15px !important;
		padding-top: 15px !important;
	}

	.post-template-blog-post-alternate #hero + .wp-block-group .wp-block-columns {
		justify-content: center;
		gap: 40px !important;
	}

	.post-template-blog-post-alternate #hero + .wp-block-group .wp-block-column:first-child {
		flex-basis: 750px !important;
	}

	.post-template-blog-post-alternate .series-cta-block.sidebar {
		display: none;
	}

	.post-template-blog-post-alternate .wp-block-column:first-child {
		padding-top: 0;
	}
}

@media only screen and (min-width: 782px) {
	body.single-post #hero > .breadcrumbs {
		margin-top: 20px;
	}

	.post-template-blog-post-alternate .about-author-alternate-block:has(figure) {
		display: grid;
	    grid-template-columns: 1fr 1fr;
	    grid-auto-rows: auto;
	    column-gap: 30px;
	    position: relative;
	}

	.post-template-blog-post-alternate .about-author-alternate-block > *:not(figure) {
		grid-column: 1;
	}

	.post-template-blog-post-alternate .about-author-alternate-block > figure {
		position: absolute;
		grid-column: 2;
		grid-row-start: 3;
	    /*margin-top: 0;
	    align-self: center;*/
	}
}

@media only screen and (max-width: 781px) {
	body.single-post #hero .wp-block-column:empty {
		display: none;
	}

	.post-template-blog-post-alternate #hero + .wp-block-group {
		padding-top: 0 !important;
	}
}


/* Icon CTA Block */
.icon-cta-block {
	max-width: 1024px !important;
	position: relative;
	border-radius: 25px;
	border: 1px solid var(--light-gray);
	background-color: var(--white);
	padding-top: 25px !important;
	padding-bottom: 25px !important;
	margin-top: calc(var(--paragraph-spacing) + 62.5px);
	border-top: 5px solid var(--red);
}

.icon-cta-block:not(.alignwide) {
	max-width: 750px !important;
}

.icon-cta-block .icon-cta-inner_blocks {
	width: 100%;
}

.icon-cta-block .icon-wrapper {
	width: 125px;
	height: 125px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 4px solid var(--red);
	border-radius: 50%;
	background-color: #fff;
	position: relative;
	margin-top: -87.5px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 0;
	padding-right: 0;
}

.icon-cta-block .icon-wrapper img {
	display: block;
	width: auto;
	height: 100%;
}


/* Series Links Block */
.series-links-block:not(.faq-item) {
	margin-top: 0;
	padding-top: 25px;
	padding-bottom: 25px;
	z-index: 999;
}

.series-links-block.hero {
	padding-top: 10px;
	padding-bottom: 10px;
}

.series-links-block.faq-item {
	background-color: unset !important;
}

.series-links-block.faq-item .question {
	color: #fff;
	border-radius: 5px;
	position: relative;
}

.series-links-block.faq-item .question:after {
	content: "";
	position: absolute;
	background: url('assets/img/icon-plus-white.svg') center no-repeat;
	background-size: 100%;
	width: 20px;
	height: 20px;
	top: 50%;
	right: 15px;
	transform: translateY(-50%) !important;
	transition: unset !important;
}

.series-links-block.faq-item.open .question:after {
	background-image: url('assets/img/icon-minus-white.svg');
}

.series-links-block.hero + *:has(.icon-cta-block:first-child) {
	padding-top: calc(90px * 0.75) !important
}

.series-links-block .series-controls {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 1300px;
	margin-left: auto;
	margin-right: auto;
}

.series-links-block .container-wide {
	max-width: 1300px;
}

.series-links-block .series-links {
	display: none;
	position: absolute;
	top: calc(100% - 15px);
	left: 0;
	z-index: 999;
	width: auto;
	max-width: 1300px;
	margin-left: auto;
	margin-right: auto;
	padding: 15px 25px;
	padding-left: 35px;
	border: 1px solid var(--light-gray);
}

.series-links-block .series-links * {
	color: var(--dark-gray) !important;
}

.series-links-block .series-links a:hover {
	color: var(--white) !important;
}

.series-links-block .series-dropdown {
	cursor: pointer;
	padding: 18px 0;
	display: inline-block;
	position: relative;
	padding-right: 30px;
	font-size: var(--large);
	color: var(--white);
	font-weight: normal;
	cursor: pointer;
}

.series-links-block .series-dropdown:after {
	content: "";
	position: absolute;
	background: url('assets/img/icon-plus-white.svg') center no-repeat;
	background-size: 100%;
	width: 20px;
	height: 20px;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}

.series-links-block .series-dropdown.open:after {
	background-image: url('assets/img/icon-minus-white.svg');
}

.series-links-block.faq-item p {
	text-align: left !important;
}

.series-links-block .wp-block-list.answer {
	font-size: var(--small);
}

/* Series Anchor Links Block */
.series-anchor-links p {
	text-align: left !important;
}

.series-anchor-links .wp-block-list {
	margin-top: 0;
	font-size: var(--small);
}

.series-anchor-links .question {
	color: #fff;
	border-radius: 5px;
	position: relative;
}

.series-anchor-links .question:after {
	content: "";
	position: absolute;
	background: url('assets/img/icon-plus-white.svg') center no-repeat;
	background-size: 100%;
	width: 20px;
	height: 20px;
	top: 50%;
	right: 15px;
	transform: translateY(-50%) !important;
	transition: unset !important;
}

.series-anchor-links.open .question:after {
	background-image: url('assets/img/icon-minus-white.svg');
}

/* Certificates */
.facet-filter-column {
	flex-shrink: 0;
}

.facetwp-facet.facetwp-facet-certificate_search .facetwp-input-wrap {
	display: block;
}

.facetwp-facet.facetwp-facet-certificate_search .facetwp-search {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    outline: none;
    border-radius: 30px;
    background: #fff;
    border: 1px solid var(--field-border);
    box-sizing: border-box;
    font-size: 1em;
    font-family: inherit;
    width: 100%;
    padding: var(--form-field-padding);
}

.facetwp-facet.facetwp-facet-certificate_search .facetwp-input-wrap i {
	width: ;
	opacity: 1;
}

.facetwp-facet.facetwp-facet-certificate_search .facetwp-input-wrap i:before {
	background: url('assets/img/icon-search-grey.svg') no-repeat;
	background-position: 0 50%;
    background-size: 20px 20px;
}

.facet-filter-column .fs-wrap {
	margin: 0;
	width: 100%;
}

.facet-filter-column .fs-label-wrap {
	border-left: none;
	border-right: none;
	cursor: pointer;
	margin-top: 2px;
	margin-bottom: 15px;
}

.facet-filter-column .fs-label-wrap .fs-label {
	padding: 15px 20px 15px 0;
	font-size: 15px;
}

.facet-filter-column .fs-label-wrap .fs-arrow {
	width: 10px;
	height: 6px;
	right: 0;
	border: none;
	background-image: url('assets/img/arrow-down.svg');
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}

.facetwp-hierarchy_select.is-empty + .fs-wrap {
  display: none;
}

.fs-dropdown {
	top: calc(100% - 15px);
}

.facetwp-facet.facetwp-facet-certificate_departments {
	margin-bottom: 0;
}

.facetwp-facet.facetwp-facet-certificate_categories {
	margin-top: 0;
}

.certificate-cards {
	--count: 3;
	--gap: 20px;
	display: flex;
	flex-wrap: wrap;
	column-gap: var(--gap);
	row-gap: var(--browser-padding);
}

.certificate-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 5px;
	width: calc((100% - ((var(--count) - 1) * var(--gap))) / var(--count));
	text-decoration: none;
}

.certificate-card svg,
.certificate-card img {
	width: auto;
	height: 150px;
}

.certificate-card h3 {
	margin-top: 1em;
	color: var(--wp--preset--color--grey);
}

.certificate-card:hover h3 {
	text-decoration: underline;
	text-underline-position: under;
    text-decoration-thickness: 1px;
}

/* Autoplay controls */
.control-autoplay {
	position: absolute !important;
	padding: 0;
	bottom: 10px;
	right: 10px;
	width: 16px;
	height: 16px;
	line-height: 16px;
	background-size: 16px auto;
	background-position: center;
	background-repeat: no-repeat;
	color: var(--dark-grey);
	opacity: 0.3;
	cursor: pointer;
	z-index: 99;
}

.control-autoplay:hover,
.control-autoplay:focus {
	opacity: 1;
}

.control-autoplay[aria-pressed="true"] {
	background-image: url('assets/img/play-icon.svg');
}

.control-autoplay[aria-pressed="false"] {
	background-image: url('assets/img/pause-icon.svg');
}

*:where(.has-dark-gray-background-color) .control-autoplay[aria-pressed="true"] {
	background-image: url('assets/img/play-icon-light.svg');
}

*:where(.has-dark-gray-background-color) .control-autoplay[aria-pressed="false"] {
	background-image: url('assets/img/pause-icon-light.svg');
}