/*global*/

/********************************************************* color */

:root {
	--color-main-1: #002844;
	--color-main-1-bright: #0063aa;
	--color-main-1-dim: #6b8497;
	--color-main-1-shade: #002138;
	--color-main-2: #fae133;
	--color-main-3: #565656;
	--color-main-4: white;
	--color-main-4-dim: rgb(197, 197, 197);
	--color-accent-1: ;
	--color-accent-2: ;
	--color-accent-3: ;
	--color-text: #272727;
	--color-link: #0044cb;
}

html {
	background: #212121 !important;
}

html {
	font-size: 16px !important;
}

xxx:is(.pswp__item, #boost) {
	opacity: 1 !important;
	transition: opacity 0.5s;
}

/* api messages - should have low z index to hide */
.gbl-api-messages{
	position: fixed;
	/* increase as needed on inspect */
    z-index: 999999;
    bottom: 0px;
    left: 0;
    padding: 10px;
    color: red;
    background: #fcd4d4;
	/* increase as needed on inspect */
	opacity: 1;
}

/********************************************************* type > global */

:is(body) :is(h1, h2, h3, h4, h5, h6, .widget-title, #spec-boost) {
	font-family: "EB Garamond", "Newsreader", "Noto Serif", serif;
	font-weight: 400;
	line-height: 1.1;
	margin-block-end: 8px !important;
	/* text-transform: uppercase; */
}

:is(body) :is(p, .subh, ul, ol, .wp-block-button, #spec-boost) {
	font-family: "Figtree", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	line-height: 1.65;
	margin-bottom: 1rem;
}

/********************************************************* area header */

#content {
	background: #f2f2f2 !important;
}

/* type */

:is(.nav > li > a, #boost) {
	font-family: "Figtree", "EB Garamond", "Newsreader", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	line-height: 1.35;
}
/**/

/* nav width */

#masthead > .header-inner,
#top-bar .container {
	max-width: 1500px !important;
}

/**/

:is(#top-bar, #boost) {
	background-color: #002138;
	display: none !important;
}

:is(.nav > li > a, #boost) {
	font-size: 1rem;
	font-weight: 600;
	color: var(--color-main-1-dim);
}
:is(.nav > li > a:hover, #boost) {
	color: var(--color-main-1);
}
:is(.header-nav li.active > a, #boost) {
	color: var(--color-main-1);
}

/* nav dark */

#masthead {
	background-color: var(--color-main-1);
}
:is(.nav > li > a, #boost) {
	font-size: 1rem;
	font-weight: 400;
	color: var(--color-main-4-dim);
}
:is(.nav > li > a:hover, #boost) {
	color: var(--color-main-4);
}

:is(.header-nav li.active > a, #boost) {
	color: var(--color-main-4);
}
.nav-line-bottom > li > a::before,
.nav-line-grow > li > a::before,
.nav-line > li > a::before {
	background-color: var(--color-main-4);
	height: 1px;
}

.entry-header {
	width: 100vw !important;
	margin-left: 50% !important;
	transform: translate(-50%) !important;
	max-width: 1920px;
	height: 400px;
	background-color: #8b8b8b;
	background-image: url("/wp-content/uploads/bg-backpage-b-scaled.webp");
	background-position: center 60%;
}

ul.sub-menu.nav-dropdown.nav-dropdown-simple {
	min-width: 100% !important;
	width: calc(100% + 100px);
	margin-top: 10px;
	left: 0 !important;
	max-height: 70vh !important;
	/* height: 43px !important; */
	display: block;
	overflow-y: auto;
	overflow-x: hidden;
}
ul.sub-menu.nav-dropdown.nav-dropdown-simple
	> :is(li, li.active, #boost#boost)
	> a {
	/* text-wrap: nowrap !important; */
	color: var(--color-main-1) !important;
	opacity: 0.45;
	font-family: "Figtree", sans-serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
}
ul.sub-menu.nav-dropdown.nav-dropdown-simple
	> :is(li, li.active, #boost#boost)
	> a:hover {
	color: var(--color-main-1) !important;
	font-weight: 600;
	opacity: 1;
	padding-inline-start: 25px;
}
ul.sub-menu.nav-dropdown.nav-dropdown-simple
	> :is(li, li.hover, #boost#boost)
	:is(a:hover) {
	background-color: transparent;
}

/* mobile menu */
.mfp-content,
.mobile-sidebar {
	background-color: var(--color-main-1) !important;
}
.mfp-content .toggle {
	color: white !important;
}
.mfp-content .mobile-sidebar li.menu-item {
	border: 0 !important;
}
.mfp-content .mobile-sidebar .sub-menu > li > a {
	color: white;
}
.mfp-content .mobile-sidebar img#mobile-logo {
	max-width: 50px;
	height: auto;
}

/**/

.entry-header h1 {
	display: none !important;
}

#title-bg-img {
	display: none;
}

/**/

/********************************************************* area content */

#main #content::before{
	content: "";
	background-image: url("/wp-content/uploads/bg-pat_v4r0a_concrete_500.webp") !important;
	background-repeat: repeat !important;
	background-position: bottom center !important;
	opacity: 0.3;
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 0;
	background-attachment: fixed;
	/* background-size: cover !important; */
}

#main #content.page-wrapper {
	padding-block: 0;
}

:is(#main, #boost#boost) {
	background-color: #ffffff;
}

xxx:is(#main #content > .row-main) {
	background-color: white;
}

#title-pattern-1 {
	background-color: var(--color-main-1);
	margin-top: -200px;
	padding: 50px;
	min-height: 270px;
	padding-block: 35px !important;
	padding-inline: 35px !important;
}

#title-pattern-1 > .gbl-boxed {
	min-height: 170px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 0px !important;
}
#title-pattern-1 :is(h1, p, #boost, #boost) {
	color: white !important;
	margin-block-end: 0;
}
#title-pattern-1 :is(.subtitle, #boost#boost#boost) {
	font-size: 1.65rem;
	line-height: 1.1;
	margin-bottom: 0;
	font-weight: 100;
	margin-inline-start: 0 !important;
}

:is(#title-pattern-1) :is(.title-hr, #boost#boost) {
	margin-inline-start: 0 !important;
}

#title-bg-img {
	height: 400px;
}

/* type */
/*
xxx#main #content :is(p,#spec-boost){
	font-family: "Inter", sans-serif;
	font-size: 1.175rem;
	line-height: 1.35;
	color: var(--color-text);
}
*/
:is(#main #content) :is(h1, h2, h3, h4, h5, h6, .widget-title, #spec-boost) {
	color: var(--color-text);
}
:is(#main #content)
	:is(h1, h2, h3, h4, h5, h6, .widget-title, #spec-boost#boost):is(.h-title) {
	text-transform: uppercase;
	word-spacing: .5rem;
}
:is(#main #content)
	:is(h1){
	margin-block-end: 0 !important;
}

:is(#main #content) :is(p, ul, ol, #spec-boost) {
	color: var(--color-text);
	font-size: 1.175rem;
}

/* link */
:is(#main #content) a:not(.wp-element-button, .slider a) {
	color: var(--color-main-1-bright);
	position: relative;
	transition: all 0.3s;
	display: inline-block;
}
:is(#main #content) a:not(.wp-element-button, :has(img)):hover {
	color: var(--color-main-1);
	position: relative;
	/* transition: all 1s; */
}
:is(#main #content) a:not(.wp-element-button, :has(img))::after{
	color: var(--color-main-1-bright);
	text-decoration: underline;
	content: "";
	display: block;
	position: absolute;
	border: 1px solid var(--color-main-1-bright);
	opacity: 0;
	margin-top: -5px;
	/* width: 0; */
}
:is(#main #content) a:not(.wp-element-button, img):hover::after{
	width: 100%;
	opacity: 0.5;
	margin-top: 0;
	transition: all 0.3s ease-in-out; /* Define transition here */
}

/* headings */

#main #content :is(h1, #spec-boost) {
	font-size: 3rem;
	color: var(--color-main-1);
}

#main #content :is(h2, #spec-boost) {
	font-size: 2.65rem;
	color: var(--color-main-1);
	margin-bottom: 1rem !important;
}
#main #content :is(h2.subh, #spec-boost) {
	font-size: 1.75rem;
	color: var(--color-main-1);
	font-weight: 100;
	margin-bottom: 1rem !important;
	line-height: 1.35 !important;
}

#main #content :is(h3, #spec-boost) {
	font-size: 2rem;
	color: var(--color-main-1);
	margin-bottom: 1rem !important;
}

#main #content :is(h4, #spec-boost) {
	font-size: 1.65rem;
	color: var(--color-main-1);
	margin-bottom: 1rem !important;
}
#main #content :is(h4.tight-subh, #spec-boost) {
	margin-bottom: 0 !important;
}
#main #content :is(h4.subh, #spec-boost) {
	font-size: 1rem;
	color: var(--color-main-1);
	font-weight: 100;
	margin-bottom: 1rem !important;
	line-height: 1.35 !important;
}

/**/

#main #content figure {
	margin-bottom: 0;
}

/* profile detail page */
#this-profile-wrapper :is(#this-sec-info, #this-sec-other-info){
	background-color: white !important;
	padding: 35px !important;
}
#this-profile-wrapper :is(#this-sec-other-info){
	margin-top: 35px !important;

}
/********************************************************* area footer */

/* type */

:is(body) :is(h1, h2, h3, h4, h5, h6, .widget-title, #spec-boost) {
	color: #fff;
}

#footer .footer-widgets.footer-1 {
	padding-block: 75px !important;
}

:is(#footer) :is(p, #spec-boost) {
	font-size: 0.8rem;
	color: #fff;
}

#footer #text-2 ul > li {
	list-style: square;
	line-height: 1.2;
}

.copyright-footer p {
	margin: 0 !important;
}
.absolute-footer {
	padding: 15px 15px !important;
}
/**/

#footer {
	border-block-start: 3px solid var(--color-main-2);
}

#footer .footer-1 {
	background-image: url("/wp-content/uploads/footer-bg_v1r0a.webp");
	background-repeat: no-repeat;
	background-position: calc(50% + 1000px) top;
}

.footer-1 .custom-html-widget h2 {
	font-size: 1.1rem !important;
	font-family: "Figtree", sans-serif !important;
}

#footer .footer-1 {
	background-color: var(--color-main-1) !important;
}
#footer #custom_html-2 {
}
/* locations */
#footer #custom_html-3 {
	flex-basis: 50% !important;
	max-width: 50% !important;
}

#footer #custom_html-3 :is(.widget-title, .is-divider.small) {
	display: none !important;
}
#footer .footer-1 #custom_html-3 .custom-html-widget {
	display: flex !important;
	flex-wrap: wrap;
	gap: 10px !important;
}

#footer .footer-1 #custom_html-3 .custom-html-widget > div.img-logo {
	flex: 1 0 100% !important;
	padding-block: 18px;
}
#footer .footer-1 #custom_html-3 .custom-html-widget > div.img-logo img {
	width: 350px;
	max-width: 100%;
	height: auto;
}
#footer .footer-1 #custom_html-3 .custom-html-widget > div {
	flex: auto !important;
}

#footer .footer-1 #custom_html-3 .custom-html-widget .google-map {
	padding-block: 10px !important;
}
/**/

#footer #custom_html-5 {
}

#footer .footer-2 > .row.large-columns-1 {
	flex-direction: row !important;
}

#footer .footer-2 > .large-columns-1 div:is(:nth-child(1), :nth-child(2)) {
	flex: 1 !important;
}

#footer .footer-2 > .row.large-columns-1 {
}


#footer .footer-widgets p{
	text-align: justify !important;
}

/********************************************************* ui globals */

.row-main .large-12.col {
	padding-block-end: 0;
}

.d-none {
	display: none !important;
}
.d-block {
	display: block !important;
}

.gbl-full-w {
	width: 100vw !important;
	margin-left: 50% !important;
	transform: translate(-50%) !important;
	max-width: 1920px;
}

.gbl-boxed {
	max-width: 1170px !important;
	padding-inline: 15px;
}

.hr-1 {
	border: 1px solid var(--color-main-1) !important;
	opacity: 1 !important;
}
.hr-1a-short {
	border: 1px solid var(--color-main-1) !important;
	width: 100px !important;
	opacity: 1 !important;
}
.hr-2 {
	border: 1px solid var(--color-main-2) !important;
	opacity: 1 !important;
}
.hr-2a-short {
	border: 1px solid var(--color-main-2) !important;
	width: 100px !important;
	opacity: 1 !important;
}
.hr-3 {
	border: 1px solid #fff !important;
	opacity: 1 !important;
}
.hr-3a-short {
	border: 1px solid #fff !important;
	width: 100px !important;
	opacity: 1 !important;
}

/* buttons */

.btn1 a {
	background-color: var(--color-main-1) !important;
	color: rgb(255, 255, 255);
	border-radius: 3px;
	font-weight: bold;
	font-size: 1.1rem !important;
	text-transform: uppercase;
	padding-block: 6px;
	padding-inline: 20px;
	transition: all 0.3s;
}
.btn1 a:hover {
}
.btn2 a {
	background-color: var(--color-main-2) !important;
	color: var(--color-main-1);
	border-radius: 3px !important;
	font-weight: bold;
	font-size: 1.1rem !important;
	text-transform: uppercase;
}
.btn3 a {
	background-color: var(--color-main-1) !important;
	border-radius: 3px !important;
	border: 1px solid white;
	color: white;
	font-weight: bold;
	font-size: 1.1rem !important;
	text-transform: uppercase;
}
.btn4 a {
	background-color: rgb(236, 236, 236) !important;
	color: var(--color-main-1);
	border-radius: 3px !important;
	font-weight: bold;
	font-size: 1.1rem !important;
	text-transform: uppercase;
	transition: all 0.3s;
}
.btn4 a:hover {
	background-color: white !important;
}
.btn5 a {
	background-color: var(--color-main-1) !important;
	border-radius: 3px !important;
	border: 0px solid white;
	color: white;
	font-weight: bold;
	font-size: 1.1rem !important;
	text-transform: uppercase;
}

/* icons */
.material-symbols-outlined {
	font-variation-settings:
		"FILL" 0,
		"wght" 400,
		"GRAD" 0,
		"opsz" 24;
}

/* just use the liga name */
xxx.material-icons {
	font-family: "Material Icons";
	font-weight: normal;
	font-style: normal;
	font-size: 24px; /* Preferred icon size */
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;

	/* Support for all WebKit browsers. */
	-webkit-font-smoothing: antialiased;
	/* Support for Safari and Chrome. */
	text-rendering: optimizeLegibility;

	/* Support for Firefox. */
	-moz-osx-font-smoothing: grayscale;

	/* Support for IE. */
	font-feature-settings: "liga";
}
/**/

:is(.icon-map, .icon-email)::before {
	margin-inline-end: 5px;
}

/********************************************************* spacing */

.d-flex {
	display: flex;
}
.d-flex-col {
	display: flex;
	flex-direction: column;
}
.flex-basis-40 {
	flex-basis: 40% !important;
}
.align-items-center {
	align-items: center;
}

.align-items-stretch {
	align-items: stretch !important;
}

:is(.pb-15, #boost) {
	padding-block: 15px !important;
}
:is(.pb-25, #boost) {
	padding-block: 25px !important;
}
:is(.pb-50, #boost) {
	padding-block: 50px !important;
}
:is(.pbs-50, #boost) {
	padding-block-start: 50px !important;
}
:is(.pbe-50, #boost) {
	padding-block-end: 50px !important;
}
:is(.pb-75, #boost) {
	padding-block: 75px !important;
}
:is(.pb-100, #boost) {
	padding-block: 100px !important;
}

/*--------*/

:is(.mb-0, #boost) {
	margin-block: 0 !important;
}
:is(.mbe-0, #boost) {
	margin-block-end: 0 !important;
}

:is(.mis-0, #boost) {
	margin-inline-start: 0 !important;
}

/* main mobile brkpoint */
@media (max-width: 781px) {
	#footer :is(.footer-1, #boost) {
		background-image: none !important;
	}
	#footer #custom_html-3 {
		flex-basis: 100% !important;
		max-width: 100% !important;
	}

	#footer .footer-1 #custom_html-3 .custom-html-widget > div.img-logo img {
		width: 100% !important;
	}

	#footer .footer-2 > .large-columns-1 > :is(div,#boost) {
	flex-basis: 100% !important;
}
}

@media (min-width: 782px) {
}

@media (min-width: 850px) {
}

/* Keep desktop menu visible on screens up to 1024px */
@media only screen and (min-width: 981px) {
	.header-nav {
		display: flex !important;
	}
}

/* Force mobile menu appearance on screens smaller than 1024px */
@media only screen and (max-width: 980px) {
	#masthead .header-nav {
		display: none !important;
	}

	.show-for-medium {
		display: block !important;
	}
	#masthead .icon-menu::before {
	}
}

@media only screen and (max-width: 500px) {
	:is(#main #content)
		:is(h1, #spec-boost#boost):is(.h-title) {
		font-size: 2rem !important;
	}
}


