@charset "utf-8";


/*-----------------------------------------------------------------
COLUMNATION
-----------------------------------------------------------------*/
.container12 {
    margin:0 auto;
    padding:0px;
    width:100%;
	position:relative;
	display:flex;
	flex-direction:column;
	flex-wrap: wrap;
	padding:0px 30px 0px 30px;
}
.column12 {
	width:100%;
    display:inline-block;
	position:relative;
}

@media only screen and (min-width:768px) {
    .container12 {
		width:100%;
		max-width:1380px;
		padding-right:50px;
		padding-left:50px;
		flex-direction:row;
	}
}


/*-----------------------------------------------------------------
GENERAL AND DEFAULTS
-----------------------------------------------------------------*/
html, body, .post, .page{
    margin:0px;
	background:#FFFFFF;
	font-family: "Lexend Deca", sans-serif;
	font-weight:300;
	font-style: normal;
}
#maincontent{
	min-height:calc(100vh - 460px);
}
@media only screen and (min-width:1024px){
	#maincontent{
		min-height:calc(100vh - 440px);
	}
}

*{
    -moz-box-sizing:border-box !important;
    -webkit-box-sizing:border-box !important;
    box-sizing:border-box !important;
}
*:focus{
	outline:none !important;
}
*:focus-visible{
	outline:2px solid #1a2e3e !important;
}

p{
	position:relative;
	z-index:2;
	font-family:inherit;
	color:inherit;
	font-size:inherit;
	font-weight:inherit;
	margin:0px;
}
p + p,
p + ul,
ul + p,
ol + p,
p + ol,
p + ul,
li ul{
	padding:15px 0px 0px 0px;
}
p + h2, p + h3,
ul + h2, ul + h3,
ol + h2, ol + h3, ol + h4, ol + h5{
	padding-top:50px;
}
p + h4, p + h5,
ul + h4, ul + h5{
	padding-top:40px;
}
h2 + h3, h2 + h4, h2 + h5{
	padding-top:10px;
}

h1{
    color:#1a2e3e;
	font-size: 38px;
	line-height: 120%;
	font-family: "Lexend Deca", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-weight:300;
	margin:0px;
	padding:0px 0px 20px 0px;
}
h2,
h1.h2{
    color:#1a2e3e;
	font-size: 30px;
	font-family: "Lexend Deca", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-weight:400;
	line-height: 125%;
	margin:0px;
	padding:0px 0px 20px 0px;
}
h3{
    color:#1a2e3e;
	font-size: 24px;
	font-family: "Lexend Deca", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-weight:400;
	letter-spacing:-0.6px;
	line-height: 120%;
	margin:0px;
	padding:0px 0px 15px 0px;
}
h4{
    color:#1a2e3e;
	font-family: "Lexend Deca", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-weight:400;
	font-size: 20px;
	font-style: normal;
	line-height: 120%;
	margin:0px;
	padding:0px 0px 10px 0px;
}
h5{
	font-family: "Lexend Deca", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-weight:400;
    color:#1a2e3e;
	font-size: 18px;
	font-style: normal;
	line-height: 130%;
	margin:0px;
	padding:0px 0px 10px 0px;
}

body,
.normal{
    color:#333333;
	font-size: 14px;
	font-style: normal;
	line-height: 140%;
}
.small{
	font-size: 12px;
	font-style: normal;
	line-height: 130%;
	font-weight:400;
}
.large{
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
}
.italic{
	font-style:italic;
	color:#333;
	font-weight:500;
}

.eyebrow{
	position:relative;
	display:inline-block;
	line-height:normal;
	font-size: 12px;
	padding:0px;
	margin-bottom:15px;
	font-weight:600;
	text-transform:uppercase;
}

@media only screen and (min-width:1280px) {
	h1{
		font-size: 60px;
		letter-spacing:-1.8px;
	}
	h2,
	h1.h2{
		font-size: 40px;
	}
	h3{
		font-size: 30px;
	}
	h4{
		font-size: 24px;
	}
	h5{
		font-size: 20px;
	}

	body,
	.normal{
		font-size: 17px;
	}
	.large{
		font-size: 22px;
	}
	.small{
		font-size: 14px;
	}

	.eyebrow{
		font-size: 14px;
	}
}

.light{
	font-weight:300;
}
.regular{
	font-weight:300;
}
.bold,
strong{
	font-weight:600;
}
.black{
	font-weight:900;
}
.gray{
	color:#757575;
}
	
a.skip {
	display:inline-block;
	padding:10px 14px;
	border-radius: 6px;
	background:#1a2e3e;
	color: #FFF !important;
	z-index:9999;
	position: absolute;
	top: -1000px;
	left: -1000px;
	text-align: left;
	overflow: hidden;
	font-size:14px;
	font-weight:600;
	line-height:normal;
	width: auto; 
	height: auto; 
}
a.skip:active,  
a.skip:focus, 
a.skip:hover {
	color: #FFF !important;
	overflow: visible; 
	left: 10px; 
	top: 10px;
}

a:link,
a:visited{
	color:#1a2e3e;
	text-decoration:underline;
	transition: all .2s ease-in-out 0s;
}
a:hover,
a:active,
a:focus{
	text-decoration:none;
	color:#1a2e3e;
	transition: all .2s ease-in-out 0s;
}

ul{
	margin:0px;
	padding:0px;
	list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="10"><circle cx="5" cy="5" r="5" fill="%231a2e3e"/></svg>');
}
.DARK ul{
	list-style-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="10"><circle cx="5" cy="5" r="5" fill="%23FFFFFF"/></svg>');
}
ol{
	margin:0px;
	padding:0px;
}
ul li,
ol li{
	position:relative;
	margin-left:20px;
	padding-top:10px;
	padding-bottom:0px;
}
ul li{
	padding-left:8px;
}
ul li:first-child,
ol li:first-child{
	padding-top:0px;
}
ul li:last-child,
ol li:last-child{
	padding-bottom:0px;
}

hr,
hr.wp-block-separator{
	width:100%;
	margin:40px 0px 40px 0px;
	padding:0px;
	border:0px;
	height:0px;
	border-bottom:1px solid #1a2e3e;
}

.center{
	text-align:center;
}
.left{
	text-align:left;
}
.right{
	text-align:right;
}

.highlighter{
	background-color: #ffe04b;
    border-radius: 8px;
    padding: 0px 8px 3px 8px;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}


/*-----------------------------------------------------------------
DARK BACKGROUND
-----------------------------------------------------------------*/
.GRAY{
	background: #f4f4f4;
}
.LIGHTYELLOW{
	position:relative;
	background: #fffced;
}
.MIDYELLOW{
	position:relative;
	background: #ffefa3;
}
.DARKYELLOW{
	position:relative;
	background: #ffe04b;
}
.DARKBLUE{
	position:relative;
	background: #1a2e3e;
}
.DARK{
	position:relative;
}
.DARK, .DARK p, .DARK a, .DARK a:hover, .DARK a:focus, .DARK h1, .DARK h2, .DARK h3, .DARK h4, .DARK h5{
	color:#FFF;
}
.DARK .dark_override,
.DARK .dark_override p,
.DARK .dark_override a,
.DARK .dark_override a:hover,
.DARK .dark_override a:focus,
.DARK .dark_override h1,
.DARK .dark_override h2,
.DARK .dark_override h3,
.DARK .dark_override h4,
.DARK .dark_override h5{
	color:#FFFFFF;
}
.DARK .eyebrow{
	color:#ffe04b;
}


/*-----------------------------------------------------------------
BOXED CONTENT
-----------------------------------------------------------------*/
.boxed{
	border-radius:30px;
	position:relative;
	padding:35px;
	margin:0px;
}
.boxed .boxed_wrapper{
	position:relative;
}
.boxed .boxed_content_compensation{
	display:inline-block;
	position:relative;
	width:100%;
}

.boxed_navigation{
	display:block;
	width:auto;
	margin:0px auto;
	padding:0px;
	text-align:center;
}
.boxed_navigation ul{
	margin:0px;
	padding:0px;
	display:inline-block;
	width:auto;
	background:#FFFFFF;
	border-radius:40px;
	padding:10px;
}
.boxed_navigation ul li{
	margin:0px;
	padding:0px;
	display:inline-block;
	width:auto;
}
.boxed_navigation ul li a{
	margin:0px;
	padding:0px;
	display:inline-block;
	width:auto;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	padding:12px 24px;
	font-size:16px;
	border-radius:45px;
	text-decoration:none;
	color:#1a2e3e;
	opacity:0.65;
}
.boxed_navigation ul li a:hover,
.boxed_navigation ul li a:focus,
.boxed_navigation ul li a.active{
	opacity:1;
	background:#f4f4f4;
}

.boxed_item{
	position:relative;
	left:0px;
	top:0px;
	height:auto;
	display:flex;
	gap:30px;
	width:100%;
	flex-direction:column;
	align-items:center;
}
.boxed.boxed_panels .boxed_item{
	position:absolute;
	opacity:0;
}
.boxed.boxed_panels .boxed_item.active{
	opacity:1;
}
.boxed_item .image_video_container{
	display:inline-block;
	width:100%;
	height:auto;
	padding-bottom:60%;
	position:relative;
	overflow:hidden;
}

.boxed_item .content_container{
	display:flex;
	flex-direction:row;
	align-items:center;
	width:100%;
	height:100%;
}
.boxed_item .content_container .content{
	display:inline-block;
	text-align:left;
	width:100%;
}
.boxed_item .content_container .content.content_alone{
	text-align:center;
}
.boxed_item ul{
	list-style:none;
}
.boxed_item ul li{
	margin-left:0px;
	padding-top:10px;
	padding-left:30px;
	background:url(/wp-content/uploads/2025/03/check.svg) top 11px left no-repeat;
	background-size:20px auto;
}
.boxed_item .content_container .wp-block-buttons{
	margin-top:40px;
}

@media only screen and (min-width:768px) {
	.boxed{
		padding:50px;
	}

	.boxed_item{
		gap:40px;
		flex-direction:row;
	}
	.boxed_item .image_video_container{
		order:2;
		padding-bottom:0px;
		height:300px;
	}
	.boxed_item .content_container{
		order:1;
	}
}

@media only screen and (min-width:1024px) {
	.boxed{
		border-radius:50px;
		padding:80px;
	}
	.boxed_item{
		gap:60px;
	}
	.boxed_item .image_video_container{
		height:360px;
	}
	.boxed_item .content_container .content.content_alone{
		padding-left:80px;
		padding-right:80px;
	}
}

@media only screen and (min-width:1280px) {
	.boxed_item{
		gap:80px;
	}
	.boxed_item .content_container .content.content_alone{
		padding-left:80px;
		padding-right:80px;
	}
	.boxed_item ul li{
		background:url(/wp-content/uploads/2025/03/check.svg) top 14px left no-repeat;
		background-size:20px auto;
	}
}


/*-----------------------------------------------------------------
GUTENBERG OVERRIDES
-----------------------------------------------------------------*/
img,
object,
embed {
	max-width:100%;
}
img {
	height:auto;
}
figure img{
	margin:0px !important;
	border-radius:10px;
}
figure.wp-block-image{
	max-width:100% !important;
	margin:0px !important;
	text-align:left;
}
figure.wp-block-image img{
	width:auto;
	height:auto;
	max-width:100% !important;
	border-radius:10px;
}
.is-content-justification-center{
	text-align:center;
}

/* Maintain aspect ratio for YouTube and Vimeo blocks */
figure.wp-block-embed{
    position:relative;
    z-index:3;
}
.wp-block-embed__wrapper {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    height: 0;
    overflow: hidden;
}
.wp-block-embed__wrapper iframe,
.wp-block-embed__wrapper object,
.wp-block-embed__wrapper embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius:10px;
    overflow:hidden;
}

.youtube-lazy {
    position: relative;
    cursor: pointer;
    aspect-ratio: 16/9;
    background: #000;
    max-width: 100%;
    overflow: hidden;
    border-radius: 30px;
}
.youtube-lazy img {
    position:absolute;
    left:0px;
    top:0px;
    width: 100%;
    height: 100%;
    display: block;
    object-fit:cover;
}
.youtube-play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100px;
    height: 100px;
    background: url('/wp-content/uploads/2025/05/play-button.png') no-repeat center;
    background-size: contain;
    border: none;
    outline: none;
    cursor: pointer;
    filter:brightness(0) invert(1);
}


/*-----------------------------------------------------------------
SPACER
-----------------------------------------------------------------*/
.wp-block-spacer.half{
	height:30px !important;
}
.wp-block-spacer.quarter{
	height:15px !important;
}
.wp-block-spacer{
	height:60px !important;
}
.wp-block-spacer.one_plus_half{
	height:60px !important;
}
.wp-block-spacer.double{
	height:90px !important;
}

@media only screen and (min-width: 1280px) {
	.wp-block-spacer.one_plus_half{
		height:90px !important;
	}
	.wp-block-spacer.double{
		height:120px !important;
	}
}


/*-----------------------------------------------------------------
STANDARD IMAGE + VIDEO CONTAINER
-----------------------------------------------------------------*/
.image_container{
	display:inline-block;
	width:100%;
	height:100%;
	position:absolute;
	left:0px;
	top:0px;
}
.image_container img{
	display:inline-block;
	width:100%;
	height:100%;
	position:absolute;
	left:0px;
	top:0px;
	z-index:1;
	border-radius:25px;
}
.image_container .standard_image_cover{
	width:100%;
	height:100%;
	position:absolute;
	left:0px;
	top:0px;
	background: linear-gradient(180deg, rgba(75, 63, 52, 0.4) 0%, rgba(75, 63, 52, 0.8) 50%, rgba(75, 63, 52, 0.9) 100%);
	z-index:2;
}
.image_container.top img{
	object-position:top;
}
.image_container.center img{
	object-position:center;
}
.image_container.bottom img{
	object-position:bottom;
}
.image_container.cover img{
	object-fit:cover;
}
.image_container.contain img{
	object-fit:contain;
}

.video_container {
    position: absolute;
	z-index:1;
    width: 100%;
    height: 100%;
}
.video_container video {
    position: absolute;
	z-index:1;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translate(-50%, -50%);
}


/*-----------------------------------------------------------------
ICONS (GENERAL)
-----------------------------------------------------------------*/
.icon_container{
	display:flex;
	justify-content:left;
}
.icon_container .icon{
	position:relative;
	display:flex;
	justify-content:center;
	align-items:center;
	width:50px;
	height:50px;
}
.icon_container .icon img{
	display:inline-block;
	width:100%;
	height:100%;
}

.icon_container.center{
	justify-content:center;
}
.icon_container.right{
	justify-content:right;
}
	
@media only screen and (min-width:1280px) {
	.icon_container .icon{
		width:60px;
		height:60px;
	}
}


/*-----------------------------------------------------------------
GUTENBERG COLUMNS
-----------------------------------------------------------------*/
.is-layout-flex {
    flex-wrap: nowrap;
    align-items: start;
}
.wp-block-columns{
	position:relative;
	z-index:1;
    margin: 0 auto;
	display:flex;
}

@media only screen and (max-width: 1023px) {
    .wp-block-columns {
        flex-direction: column !important;
        gap: 0px !important;
	}
    .wp-block-column {
        padding: 0px;
		width:100%;
    }

	.wp-block-columns.mobile_add_space{
		gap:20px !important;
	}
	.wp-block-columns.stack_mobile_center{
		text-align:center !important;
	}
	.wp-block-columns.stack_mobile_center figure.alignright{
		float:none;
		text-align:center;
		display:inline-block;
	}

	.wp-block-columns .wp-block-column.mobile_center *{
		text-align:center !important;
		justify-content:center !important;
	}
}

@media only screen and (min-width: 1024px) {
	.is-layout-flex {
		align-items: center;
	}

    .wp-block-columns {
        flex-direction: row !important;
        gap: 60px !important;
	}
}

@media only screen and (min-width:1500px) {
	.wp-block-columns{
		gap:90px !important;
	}
}


/*-----------------------------------------------------------------
BUTTONS
-----------------------------------------------------------------*/
.wp-block-buttons{
	width:100%;
	margin:20px 0px 0px 0px;
}
.wp-block-buttons:first-child {
    margin: 0px;
}
h1 + .wp-block-buttons,
h2 + .wp-block-buttons,
h3 + .wp-block-buttons,
h4 + .wp-block-buttons,
h5 + .wp-block-buttons{
	margin-top:10px;
}
.wp-block-button{
	display:inline-block;
	width:100%;
	margin:0px;
	padding:0px;
}
.wp-block-buttons .wp-block-button + .wp-block-button{
	margin-top:15px;
}

@media only screen and (max-width:767px) {
	.wp-block-button.mobile_full,
	.wp-block-button.mobile_full .wp-block-button__link{
		width:100%;
	}
}

input[type="submit"],
select.custom_dropdown_toggle,
a.custom_dropdown_toggle,
.filters_container input[type="text"].custom_dropdown_toggle,
.wp-block-button .wp-block-button__link{
	font-family: "Lexend Deca", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-weight:600;
	text-decoration:none;
	display:inline-block;
	font-style: normal;
	line-height: normal;
	font-style: normal;
	position:relative;
	padding:10px 20px;
	font-size:15px;
	color:#1a2e3e;
	text-align:center;
	border-radius:45px;
	border:#ffe04b 1.5px solid;
	transition: all .2s ease-in-out;
	cursor:pointer;
	width:auto;
}

input[type="submit"],
.wp-block-button:not(.is-style-outline) .wp-block-button__link,
.DARK .wp-block-button:not(.is-style-outline) .wp-block-button__link,
.DARK .listings_search_bar button[type="submit"]{
	background:#ffe04b;
	border:#ffe04b 1.5px solid;
	color:#1a2e3e;
	transition: all .2s ease-in-out;
}
input[type="submit"]:hover,
input[type="submit"]:focus,
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
.wp-block-button:not(.is-style-outline) .wp-block-button__link:focus,
.DARK .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
.DARK .wp-block-button:not(.is-style-outline) .wp-block-button__link:focus,
.DARK .listings_search_bar button[type="submit"]:hover,
.DARK .listings_search_bar button[type="submit"]:focus{
	background:#1a2e3e;
	border:#1a2e3e 1.5px solid;
	color:#FFFFFF;
	transition: all .2s ease-in-out;
}

.wp-block-button.is-style-outline .wp-block-button__link{
	color:#1a2e3e;
	background:none;
	border:#1a2e3e 1.5px solid;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:focus,
.wp-block-button.is-style-outline .wp-block-button__link.active{
	color:#FFF;
	background:#1a2e3e;
	border:#1a2e3e 1.5px solid;
}

a.custom_dropdown_toggle,
select.custom_dropdown_toggle,
.filters_container input[type="text"].custom_dropdown_toggle{
	background:none;
	border:1.5px solid #ffe04b;
}
a.custom_dropdown_toggle.active,
a.custom_dropdown_toggle:hover,
a.custom_dropdown_toggle:focus,
select.custom_dropdown_toggle.active,
select.custom_dropdown_toggle:hover,
select.custom_dropdown_toggle:focus,
.filters_container input[type="text"].custom_dropdown_toggle.active,
.filters_container input[type="text"].custom_dropdown_toggle:hover,
.filters_container input[type="text"].custom_dropdown_toggle:focus{
	background:#fffced;
	border:1.5px solid #ffefa3;
	color:#1a2e3e;
}

select.custom_dropdown_toggle{
	text-align:left;
}

.DARK .wp-block-button.is-style-outline .wp-block-button__link{
	color:#FFFFFF;
	background:none;
	border:#FFFFFF 1.5px solid;
}
.DARK input[type="submit"]:hover,
.DARK input[type="submit"]:focus,
.DARK .wp-block-button.is-style-outline .wp-block-button__link:hover,
.DARK .wp-block-button.is-style-outline .wp-block-button__link:focus,
.DARK .wp-block-button.is-style-fill .wp-block-button__link:hover,
.DARK .wp-block-button.is-style-fill .wp-block-button__link:focus{
	background:#FFF;
	color:#1a2e3e;
	border:#FFFFFF 1.5px solid;
}

.DARKYELLOW input[type="submit"],
.LIGHTYELLOW input[type="submit"],
.DARKYELLOW .wp-block-button:not(.is-style-outline) .wp-block-button__link,
.LIGHTYELLOW .wp-block-button:not(.is-style-outline) .wp-block-button__link{
	color:#FFFFFF;
	background:#1a2e3e;
	border:#1a2e3e 1.5px solid;
}
.DARKYELLOW input[type="submit"]:hover,
.DARKYELLOW input[type="submit"]:focus,
.LIGHTYELLOW input[type="submit"]:hover,
.LIGHTYELLOW input[type="submit"]:focus,
.DARKYELLOW .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
.DARKYELLOW .wp-block-button:not(.is-style-outline) .wp-block-button__link:focus,
.LIGHTYELLOW .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
.LIGHTYELLOW .wp-block-button:not(.is-style-outline) .wp-block-button__link:focus{
	background:none;
	color:#1a2e3e;
	border:#1a2e3e 1.5px solid;
}

.button_blocked{
	overflow:hidden;
	position:relative;
	z-index:2;
	border-radius:5px;
}
.button_blocked:before{
	content:"";
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	background:#f6f6f6;
	z-index:3;
	display:inline-block;
	opacity:0.9;
}

.no_more_posts{
	display:none;
	line-height:0px;
}

@media only screen and (min-width:768px) {
	.wp-block-button{
		width:auto;
	}
	.wp-block-buttons .wp-block-button + .wp-block-button{
		margin-top:0px;
		margin-left:5px;
	}
}

@media only screen and (min-width:1023px) {
	.button_right_desktop{
		text-align:right;
	}
}

@media only screen and (min-width:1280px) {
	.wp-block-buttons{
		margin:25px 0px 0px 0px;
	}
}


/*-----------------------------------------------------------------
TEXT LINK
-----------------------------------------------------------------*/
a.text_link{
	text-decoration:none;
	font-size:15px;
	font-weight: 700;
	position:relative;
	display:inline-block;
	width:auto;
	margin:20px 0px 0px 0px;
	padding:5px 15px 7px 0px;
	line-height:normal;
}
a.text_link:hover,
a.text_link:focus{
	color:#1a2e3e;
	padding:5px 20px 7px 0px;
}
a.text_link::after{
	content:"";
	display:inline-block;
	position:absolute;
	top:0px;
	right:-2px;
	background:url(/wp-content/uploads/2025/03/down-arrow.svg) right center no-repeat;
	background-size:contain;
	width:10px;
	height:100%;
	transform:rotate(-90deg);
}
a.text_link::before{
	position:absolute;
	display:inline-block;
	content:"";
	bottom:0px;
	left:0px;
	height:0px;
	width:100%;
	border-top: #ffe04b 1.5px solid;
	transition: all .2s ease-in-out;
}
a.text_link:hover::before,
a.text_link:focus::before{
	border-top: #1a2e3e 1.5px solid;
	transition:all 0.2s ease-in-out;
}
.DARK a.text_link:hover,
.DARK a.text_link:focus{
	color:#FFFFFF;
}
.DARK a.text_link::after{
	filter:brightness(0) invert(1);
}
.DARK a.text_link:hover::before,
.DARK a.text_link:focus::before{
	border-top: #FFFFFF 1.5px solid;
}


/*-----------------------------------------------------------------
FORM COLUMNATION
-----------------------------------------------------------------*/
.form_background{
	padding:30px;
	border-radius:20px;
}
.form_flex_columns{
    display:grid;
    grid-template-columns:repeat(1, 1fr);
    gap:20px;
}
.form_flex_columns > div{
	margin:0px;
	padding:0px;
	display:flex;
	justify-content:center;
	flex-direction:column;
	width:auto;
	position:relative;
}

@media only screen and (min-width:768px) {
    .form_flex_columns{
        grid-template-columns:repeat(6, 1fr);
    }
	.form_flex_columns .span1{
		grid-column: span 1;
	}
	.form_flex_columns .span2{
		grid-column: span 2;
	}
	.form_flex_columns .span3{
		grid-column: span 3;
	}
	.form_flex_columns .span4{
		grid-column: span 4;
	}
	.form_flex_columns .span5{
		grid-column: span 5;
	}
	.form_flex_columns .span6{
		grid-column: span 6;
	}
}


/*-----------------------------------------------------------------
FORMS
-----------------------------------------------------------------*/
label{
	display:block;
	padding:0px;
	margin:0px 0px 3px 0px;
	font-weight:500;
	color:#111111;
}
.DARK label{
	color:#FFF;
}

select,
input[type="text"],
input[type="email"],
input[type="password"],
textarea{
	font-weight:400;
	border:1px solid #d1d0cd;
	font-family: "Lexend Deca", sans-serif;
  	font-optical-sizing: auto;
	font-size: inherit;
	font-style: inherit;
	font-weight: inherit;
	line-height: inherit;
	width:100%;
	padding:10px 10px;
	border-radius:4px;
}
select:focus,
select:focus-visible,
input[type="text"]:focus,
input[type="text"]:focus-visible,
input[type="email"]:focus,
input[type="email"]:focus-visible,
input[type="password"]:focus,
input[type="password"]:focus-visible,
textarea:focus,
textarea:focus-visible {
	outline:0px !important;
	border:1px solid #000000;
}
textarea{
	height:121px;
}

.wpforms-container .wpforms-form .wpforms-field.wpforms-field-name .wpforms-field-row{
	min-width:100%;
}
.wpforms-container input{
	min-width:100%;
}

::-webkit-input-placeholder {
	color: #666666;
}
::-moz-placeholder {
	color: #666666;
}
:-ms-input-placeholder {
	color: #666666;
}
:-moz-placeholder {
	color: #666666;
}

.grecaptcha-badge{
	position:fixed;
	width:1px;
	height:1px;
	overflow:hidden;
	left:-9999999px;
}

.input_error{
	background: #ffeaea !important;
	border-color: #ffa7a7 !important;
}
#jquery_validation{
	display:none;
}

.error_message,
.notice_message{
    padding:25px 30px;
    border-radius:25px;
    margin-bottom:30px;
	font-weight:500;
	position:relative;
	z-index:1;
	color:#1a2e3e !important;
}
.error_message{
    background:#ffa7a7;
}
.notice_message{
    background:#ffe04b;
}


/*-----------------------------------------------------------------
SEARCH BAR
-----------------------------------------------------------------*/
.searchbar{
	display:inline-block;
	background:#FFF;
	border:1.5px solid #1a2e3e;
	border-radius:10px;
	padding:0px 20px 20px 20px;
	width:100%;
}
.searchbar input[type="text"]{
	margin-top:15px;
	padding:12px 0px 12px 30px;
	border:0px;
	border-radius:0px;
	border-bottom:1px solid #d1d0cd;
	font-size:17px;
	font-weight:500;
}
.searchbar input.search_specialties{
	background:url(/wp-content/uploads/2025/03/search.png) left center no-repeat;
	background-size:18px;
}
.searchbar input.search_address{
	background:url(/wp-content/uploads/2025/03/pin.png) left center no-repeat;
	background-size:18px;
}
.searchbar input[type="submit"]{
	margin-top:12px;
	width:100%;
}
.searchbar a.custom_dropdown_toggle{ /* specific styling for specialty dropdown */
	position:absolute;
	border-radius:0px;
	width:100%;
	height:100%;
	left:0px;
	top:0px;
	background:none;
	border:0px;
}

@media only screen and (min-width:1024px) {
	.searchbar{
		display:flex;
		flex-direction:row;
		gap:20px;
		padding:10px 10px 10px 20px;
	}
	.searchbar input[type="text"]{
		margin-top:0px;
		padding:12px 0px 12px 30px;
		border-bottom:0px;
		font-size:18px;
	}
	.searchbar input.search_specialties{
		border-right:1px solid #d1d0cd;
	}
	.searchbar input[type="submit"]{
		margin-top:0px;
		width:auto;
	}
}


/*-----------------------------------------------------------------
PRIMARY HEADER
-----------------------------------------------------------------*/
.primary_header{
	position:relative;
	height:auto;
}
.primary_header .image_cover{
	background: linear-gradient(180deg, rgba(75, 63, 52, 0.5) 0%, rgba(75, 63, 52, 0.8) 100%);
	position:absolute;
	z-index:2;
	width:100%;
	height:calc(100% + 1px);
	left:0px;
	top:0px;
}

.primary_header .image_container img{
	border-radius:0px;
}
.primary_header .content_container{
	min-height:calc(70vh - 80px);
	display:flex;
	flex-direction:row;
	align-items:center;
	width:100%;
	height:100%;
	position:relative;
	z-index:2;
}
.primary_header .content_container .content{
	display:inline-block;
	width:100%;
	padding-top:80px;
	padding-bottom:80px;
}
.primary_header .content_container .content .content_padding{
	max-width:700px;
}
.primary_header .content_container .wp-block-buttons{
	margin-top:40px;
}

.primary_header .listings_search_bar{
	margin-top:40px;
}

@media (max-aspect-ratio: 1/1) and (min-width: 768px) {
	.primary_header .content_container{
		min-height:60vh;
	}
}

@media only screen and (min-width:600px) {
	.primary_header .content_container .content .content_padding{
		width:80%;
	}
}

@media only screen and (min-width:1024px) {
	.primary_header .content_container .content{
		padding-top:120px;
		padding-bottom:120px;
	}
	.primary_header .content_container .content .content_padding{
		width:60%;
	}
}


/*-----------------------------------------------------------------
TEXT + IMAGE
-----------------------------------------------------------------*/
.text_image .wrapper{
	position:relative;
	height:auto;
	display:flex;
	gap:30px;
	flex-direction:column;
}
.text_image .image_video_container{
	display:inline-block;
	width:100%;
	height:auto;
	position:relative;
	padding:10px 10px 0px 10px;
}
.text_image .image_video_container .image_video_wrapper{
	position:relative;
	padding-bottom:50%;
	border-radius:30px;
	overflow:hidden;
}

.text_image .content_container{
	display:flex;
	flex-direction:row;
	align-items:center;
	width:100%;
	height:100%;
}
.text_image .content_container .content{
	display:inline-block;
	padding:0px 35px 0px 35px;
	text-align:left;
}
.text_image .content_container .wp-block-buttons{
	margin-top:40px;
}

@media only screen and (max-width:767px) {
	.text_image .container12{
		padding:0px;
	}
}

@media only screen and (min-width:768px) {
	.text_image .wrapper{
		gap:40px;
		flex-direction:row;
		align-items:center;
	}
	.text_image .image_video_container{
		padding:0px;
		order:2;
	}
	.text_image .image_video_container .image_video_wrapper{
		padding-bottom:70%;
	}
	.text_image .content_container{
		order:1;
	}
	.text_image .content_container .content{
		padding:40px 0px 40px 0px;
	}

	.text_image.right .image_video_container{
		order:1;
	}
	.text_image.right .content_container{
		order:2;
	}
}

@media only screen and (min-width:1024px) {
	.text_image .wrapper{
		gap:80px;
	}
	.text_image .content_container .content{
		padding:60px 0px 60px 0px;
	}
}

@media only screen and (min-width:1280px) {
	.text_image .wrapper{
		gap:100px;
	}
	.text_image .content_container .content{
		padding:80px 0px 80px 0px;
	}
}


/*-----------------------------------------------------------------
CARDS
-----------------------------------------------------------------*/
ul.cards{
	position:relative;
    display:grid;
    grid-template-columns: repeat(1, 1fr);
    margin:0px;
    padding:0px;
    list-style:none;
   	gap:30px;
}
ul.cards > li{
    position:relative;
    display:inline-block;
    width:100%;
    margin:0px;
    padding:0px;
}
ul.cards > li::before{
	display:none;
}
ul.cards .card_image{
	position:relative;
}
ul.cards .card_icon{
	position:relative;
}
ul.cards .card_content{
	position:relative;
}

ul.cards.img_top_text_below{
}
ul.cards.img_top_text_below > li{
	display:flex;
	flex-direction:column;
	gap:20px;
}
ul.cards.img_top_text_below .card_image{
	width:100%;
	height:auto;
	padding-bottom:60%;
	overflow:hidden;
	border-radius:10px 10px 0px 0px;
    border-radius:25px;
}
ul.cards.img_top_text_below .card_content{
	height:100%;
}

ul.cards.icon_top_text_below{
   	gap:40px;
}
ul.cards.icon_top_text_below > li{
	display:flex;
	flex-direction:column;
	gap:20px;
}
ul.cards.icon_top_text_below .card_icon{
}
ul.cards.icon_top_text_below .card_content{
}

ul.cards.icon_left_text_right{
   	gap:40px;
}
ul.cards.icon_left_text_right > li{
	display:flex;
	flex-direction:row;
	gap:20px;
}
ul.cards.icon_left_text_right .icon_container .icon{
	width:40px;
	height:40px;
}
ul.cards.icon_left_text_right .card_content{
}

ul.cards.text_only{
}
ul.cards.text_only > li{
	padding:20px;
    border-radius:20px;
	border:#d1d0cd 1.5px solid;
}
ul.cards.text_only .card_content{
}

ul.cards.text_over_img{
}
ul.cards.text_over_img > li{
	display:flex;
	flex-direction:row;
	align-items:end;
	gap:25px;
	border-radius:25px;
	overflow:hidden;
	min-height:500px;
}
ul.cards.text_over_img .image_container{
	position:absolute;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	z-index:1;
}
ul.cards.text_over_img .card_image{
	position:absolute;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	z-index:1;
}
ul.cards.text_over_img .card_image img{
	z-index:1;
}
ul.cards.text_over_img .card_content{
	width:100%;
	z-index:3;
	padding:160px 30px 30px 30px;
}

@media only screen and (min-width:500px){
	ul.cards.text_over_img .card_content{
		padding:160px 120px 40px 40px;
	}
}
	
@media only screen and (min-width:768px) {
	ul.cards{
		gap:30px;
	}

	ul.cards.columns_2{
		grid-template-columns: repeat(2, 1fr);
	}
	ul.cards.columns_3{
		grid-template-columns: repeat(3, 1fr);
	}
	ul.cards.columns_4{
		grid-template-columns: repeat(2, 1fr);
	}

	ul.cards.icon_left_text_right{
		gap:80px;
	}

	ul.cards.columns_1.text_over_img .card_content{
		padding:160px 160px 60px 60px;
	}
	ul.cards.columns_2.text_over_img .card_content{
		padding:160px 40px 40px 40px;
	}
	ul.cards.columns_3.text_over_img .card_content{
		padding:160px 30px 30px 30px;
	}
	ul.cards.columns_4.text_over_img .card_content{
		padding:160px 40px 40px 40px;
	}
}

@media only screen and (min-width:768px) and (max-width:1023px){
	ul.cards.columns_3.text_over_img{
		gap:10px;
	}
}
	
@media only screen and (min-width:1024px) {
	ul.cards.columns_2{
		grid-template-columns: repeat(2, 1fr);
	}
	ul.cards.columns_3{
		grid-template-columns: repeat(3, 1fr);
	}
	ul.cards.columns_4{
		grid-template-columns: repeat(4, 1fr);
	}

	ul.cards.columns_1.text_over_img .card_content{
		padding:160px 40% 60px 60px;
	}
	ul.cards.columns_2.text_over_img .card_content{
		padding:160px 120px 40px 40px;
	}
	ul.cards.columns_3.text_over_img .card_content{
		padding:160px 30px 30px 30px;
	}
	ul.cards.columns_4.text_over_img{
		gap:10px;
	}
}
	
@media only screen and (min-width:1280px) {
	ul.cards.columns_2.text_over_img .card_content{
		padding:160px 120px 60px 60px;
	}
	ul.cards.columns_3.text_over_img .card_content{
		padding:160px 40px 40px 40px;
	}
}


/*-----------------------------------------------------------------
STATISTICS
-----------------------------------------------------------------*/
ul.statistics{
    display:grid;
    grid-template-columns: repeat(1, 1fr);
    margin:0px;
    padding:0px;
    list-style:none;
    gap:60px;
}
ul.statistics li{
    position:relative;
    margin:0px;
    padding:0px;
    display:inline-block;
    list-style:none;
	background:none;
}
ul.statistics li::before{
	content:"";
	position:absolute;
	display:inline-block;
	left:0px;
	top:-30px;
	width:100%;
	height:0px;
	border-bottom:1px solid #d1d0cd;
}
ul.statistics li:nth-child(1)::before{
	display:none;
}
ul.statistics li .icon_container{
	margin-bottom:20px;
}

ul.statistics li .stat{
	font-style: normal;
	font-weight:600;
	font-size: 46px;
	line-height: 46px;
	text-transform: uppercase;
	color: #1a2e3e;
	display:inline-block;
	width:100%;
}
ul.statistics li .eyebrow{
	margin:0px;
	padding:0px;
}
ul.statistics li .description{
	margin-top:10px;
}

@media only screen and (max-width:767px) {
	ul.statistics li .stat_label.mobile_hide{
		display:none;
	}
}

@media only screen and (min-width:768px) {
    ul.statistics{
		column-gap:30px;
		row-gap:40px;
    }
	ul.statistics li::before{
		content:"";
		position:absolute;
		left:-15px;
		top:0px;
		width:0px;
		height:100%;
		border-bottom:0px;
		border-left:1px solid #d1d0cd;
	}
	ul.statistics li:nth-child(1)::before{
		display:inline-block;
	}
	ul.statistics.statistics_2 li:nth-child(2n + 1)::before{
		display:none;
	}
	ul.statistics.statistics_3 li:nth-child(3n + 1)::before{
		display:none;
	}

    ul.statistics.statistics_2{
        grid-template-columns: repeat(2, 1fr);
    }
    ul.statistics.statistics_3{
        grid-template-columns: repeat(3, 1fr);
    }
    ul.statistics.stack_one{
        grid-template-columns: repeat(1, 1fr) !important;
	}
}

@media only screen and (min-width:1024px) {
    ul.statistics{
		column-gap:60px;
		row-gap:80px;
    }
	ul.statistics li::before{
		left:-30px;
	}
	ul.statistics li .stat{
		font-size: 56px;
		line-height: 56px;
	}
	ul.statistics.single li .stat{
		width:auto;
	}
	ul.statistics.single li .eyebrow{
		padding-left:5px;
	}
}


/*-----------------------------------------------------------------
LOGOS
-----------------------------------------------------------------*/
.logos_container{
	display:block;
	line-height:0px;
	width:100%;
	margin:0px auto;
	overflow:hidden;
	height:180px;
	position:relative;
}
ul.logos{
	position:absolute;
	left:0px;
	top:0px;
	width:auto;
	height:100%;
	display:flex;
	gap:20px;
	flex-direction:row;
    margin:0px auto 0px auto;
    padding:0px;
    list-style:none;
}
ul.logos > li{
	margin:0px;
	padding:0px;
    position:relative;
    display:flex;
	align-items:center;
	justify-content:center;
    padding:0px;
    margin:0px;
	text-align:center;
    background:none !important;
    width:342px;
	height:100%;
}
ul.logos > li::before{
	display:none;
}
ul.logos > li img{
	width:100%;
	height:100%;
	position:absolute;
	left:0px;
	top:0px;
	object-fit:contain;
	display:inline-block;
}
ul.logos > li a{
	width:100%;
	height:100%;
	position:absolute;
	left:0px;
	top:0px;
	display:inline-block;
}
ul.logos > li a img{
	transform:scale(1);
	transition: all 0.2s ease-in-out;
}
ul.logos > li a:hover img,
ul.logos > li a:focus img{
	transform:scale(1.1);
	transition: all 0.2s ease-in-out;
}


/*-----------------------------------------------------------------
ACCORDIONS
-----------------------------------------------------------------*/
.accordion{
    position:relative;
    display:inline-block;
    width:100%;
    margin:0px;
    padding:0px;
}
.accordion > .item{
    position:relative;
    list-style:none;
    display:inline-block;
    width:100%;
    height:auto;
    margin:0px;
    padding:0px;
	line-height:0px;
	border-radius:20px;
	background:#f4f4f4;
    transition: all .2s ease-in-out;
}
.accordion > .item > a.heading{
    position:relative;
    z-index:2;
    display:inline-block;
    width:100%;
    text-decoration:none !important;
}

.accordion > .item > a.heading h4{
    margin:0px;
    padding:30px 80px 20px 30px;
}
.accordion > .item .panel{
	padding-bottom:0px;
    position:relative;
    width:100%;
    display:inline-block;
}
.accordion > .item .panel_wrapper{
    position:absolute;
    left:0px;
    top:0px;
    width:100%;
    height:100%;
    left:0px;
    top:0px;
    display:inline-block;
}
.accordion > .item .panel .panel_content{
	padding:0px 80px 30px 30px;
	visibility:hidden;
    position:relative;
    display:inline-block;
    opacity:0;
    transition: all .2s ease-in-out;
}
.accordion > .item.active{
	background:#fffced;
    transition: all .2s ease-in-out;
}
.accordion > .item.active .panel .panel_content{
	visibility:visible;
    opacity:1;
    transition: all .2s ease-in-out .2s;
}

.accordion > .item > a.heading .icon{
	position:absolute;
	right:20px;
	top:20px;
	width:16px;
	height:16px;
	transform:rotate(0deg);
	width:40px;
	height:40px;
	border-radius:50%;
	background:#ffe04b url(/wp-content/uploads/2025/03/plus.svg) center center no-repeat;
	background-size:12px auto;
    transition: all .2s ease-in-out;
}
.accordion > .item.active > a.heading .icon{
	transform:rotate(45deg);
    transition: all .2s ease-in-out;
}

@media only screen and (min-width:1024px) {
	.accordion > .item > a.heading h3{
		padding:30px 80px 25px 30px;
	}
	.accordion > .item .panel .panel_content{
		padding:0px 80px 30px 30px;
	}
}


/*-----------------------------------------------------------------
ARROWS
-----------------------------------------------------------------*/
.arrows_container{
	line-height:0px;
	display:flex;
	flex-direction:row;
	gap:12px;
	position:relative;
}
.arrows_container a{
	position:relative;
	display:inline-block;
	z-index:1;
	width:50px;
	height:50px;
	border-radius:50%;
	border:1.5px solid #1a2e3e;
	transition:background 0.2s ease-in-out;
}
.arrows_container a:hover,
.arrows_container a:focus{
	background:#1a2e3e;
	transition:background 0.2s ease-in-out;
}
.arrows_container a::before{
	content:"";
	position:absolute;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	opacity:1;
	z-index:2;
	background:url(/wp-content/uploads/2025/03/down-arrow.svg) center center no-repeat;
	background-size:16px;
	filter:brightness(1) invert(0);
	transition:all 0.2s ease-in-out;
}
.arrows_container a:hover::before,
.arrows_container a:focus::before{
	filter:brightness(0) invert(1);
	transition:all 0.2s ease-in-out;
}
.arrows_container a.previous{
	transform:rotate(90deg);
}
.arrows_container a.next{
	transform:rotate(-90deg);
}



/*-----------------------------------------------------------------
TESTIMONIALS GRID
-----------------------------------------------------------------*/
.testimonials{
	position:relative;
	display:block;
	width:100%;
	margin:0px;
}
.testimonials ul.slides_container{
	order:1;
	display:inline-block;
	width:100%;
	height:auto;
	position:relative;
	margin:0px;
	padding:0px;
	list-style:none;
}
.testimonials .slide{
	background:none;
	margin:0px;
	padding:0px;
	display:grid;
	grid-template-columns:repeat(1, 1fr);
	gap:30px;
	width:100%;
	height:100%;
	left:0px;
	top:0px;
	position:absolute;
	opacity:0;
	z-index:0;
	visibility:hidden;
	transition: all .3s ease-in-out;
}
.testimonials .slide.active{
	opacity:1;
	z-index:1;
	visibility:visible;
	transition: all .3s ease-in-out;
}
.testimonials .slide .slide_content{
	display:inline-block;
	width:100%;
	height:auto;
	padding:40px;
	border-radius:10px;
	text-align:left;
	position:relative;
	background:#FFF;
}
.testimonials .slide .slide_content::before{
	position:absolute;
	content:"";
	display:inline-block;
	left:0px;
	top:-12px;
	height:24px;
	width:100%;
	background:url(/wp-content/uploads/2025/05/stars-small.png) center center no-repeat;
	background-size:contain;
}
.testimonials .eyebrow {
	margin-top:20px;
}

.testimonials .slides_nav{
	z-index:2;
	position:absolute;
	display:inline-block;
	width:100%;
	margin:0px;
	text-align:center;
	bottom:-45px;
}

.google_header{
	display:flex;
	flex-direction:column;
	gap:20px;
	margin-bottom:20px;
}
.google_stars{
	flex:1;
	font-weight:600;
	line-height:normal;
}
.google_stars .google_logo{
	float:left;
	margin-right:10px;
	width:70px;
}
.google_stars .stars{
	width:90px;
	padding-left:10px;
	display:inline-block;
}
.google_button{
	margin-bottom:20px;
}
.google_button a{
	display:inline-block;
	position:relative;
	background:#1f67e7;
	color:#FFF;
	font-size:14px;
	font-weight:500;
	text-decoration:none;
	line-height:normal;
	padding:9px 15px 9px 40px;
	border-radius:26px;
	transition:all 0.2s ease-in-out;
}
.google_button a:hover,
.google_button a:focus{
	background:#4280ef;
	transition:all 0.2s ease-in-out;
}
.google_button a::before{
	position:absolute;
	left:5px;
	top:5px;
	width:25px;
	height:25px;
	border-radius:50%;
	content:"";
	display:inline-block;
	background:#FFF url(/wp-content/uploads/2025/05/google-icon.webp) left center no-repeat;
	background-size:100%;
}

@media only screen and (min-width:768px) {
	.testimonials .slide{
		display:grid;
		gap:20px;
		grid-template-columns:repeat(3, 1fr);
	}
	
	.google_header{
		flex-direction:row;
	}
	.google_button{
		text-align:right;
	}
}

@media only screen and (min-width:1280px) {
	.testimonials .slide{
		gap:30px;
	}
}


/*-----------------------------------------------------------------
TESTIMONIALS SLIDER
-----------------------------------------------------------------*/
.featured_slider_fullscreen{
	overflow:hidden;
}
.featured_slider{
	position:relative;
	display:inline-block;
	width:100%;
}
.featured_slider .slider{
	display:flex;
	flex-direction:column;
	height:100%;
}
.featured_slider ul.slides_container{
	position:relative;
	height:auto;
	width:100%;
	margin:0px;
	padding:0px;
	list-style:none;
	display:flex;
	gap:15px;
}
.featured_slider .slide{
	position:relative;
	display:inline-block;
	left:0px;
	top:0px;
	margin:0px;
	padding:0px;
	width:100%;
	height:auto;
	opacity:0.4;
	border-radius:30px;
	transition: all .3s ease-in-out;
}
.featured_slider .slide.active{
	opacity:1;
}
.featured_slider li.slide::before{
	background:none;
	display:inline-block;
	width:100%;
	height:100%;
	position:absolute;
	left:0px;
	top:0px;
	z-index:4;
}
.featured_slider li.slide.active::before{
	display:none;
}
.featured_slider .slide a{
	display:inline-block;
	width:100%;
	color:#383E35;
}

.featured_slider .quote_person_container{
	display:flex;
	flex-direction:row;
	justify-content:center;
	align-items:center;
	text-align:left;
	gap:15px;
	width:auto;
	line-height:0px;
	margin-top:20px;
}
.featured_slider .slide .image_container{
	position:relative;
	width:60px;
	height:60px;
	border-radius:50%;
	overflow:hidden;
}

.featured_slider .slide .content_container{
	position:relative;
	z-index:3;
	left:0px;
	top:0px;
	display:flex;
	width:100%;
	height:100%;
	align-items:center;
	padding:40px 30px 100px 30px;
	opacity:0;
	transform:translateY(100px);
	transition: all .3s ease-in-out;
}
.featured_slider .slide.active .content_container{
	opacity:1;
	transform:translateY(0px);
	transition: all .3s ease-in-out .2s;
}

.featured_slider .slides_nav_container{
	position:absolute;
	z-index:2;
	display:inline-block;
	width:100%;
	height:100%;
	margin:0px;
	left:0px;
	bottom:0px;
	text-align:center;
	pointer-events:none;
}
.featured_slider .slides_nav{
	display:none;
}

.slides_nav a{
	position:relative;
	display:inline-block;
	width:30px;
	height:9px;
	background: #FFF;
	border-radius:5px;
	margin:0px 5px 0px 0px;
	pointer-events:auto;
}
.slides_nav a::before{
	background:#ffe04b;
	position:absolute;
	left:0px;
	top:0px;
	width:0px;
	height:100%;
	border-radius:5px;
	content:"";
	display:inline-block;
	transition: all 0.2s linear;
}
.slides_nav a.active::before{
	width:100%;
	transition: all 0.2s linear;
}
.slider.rotate .slides_nav a.active::before{
	transition: all 5s linear;
}

.featured_slider .arrows_container{
	position:absolute;
	display:inline-block;
	width:100%;
	height:0px;
	left:0px;
	bottom:70px;
}
.featured_slider .arrows_container a.previous{
	position:relative;
	pointer-events:auto;
}
.featured_slider .arrows_container a.next{
	position:relative;
	pointer-events:auto;
}

@media only screen and (min-width:680px) {
	.featured_slider .slide .content_container{
		padding:50px 50px 100px 50px;
	}
}

@media only screen and (min-width:768px) {
	.featured_slider .slide .content_container{
		padding:60px 80px 60px 80px;
	}

	.featured_slider .arrows_container{
		bottom:auto;
		top:50%;
		margin-top:-25px;
	}
	.featured_slider .arrows_container a.previous{
		position:absolute;
		left:20px;
		right:auto;
	}
	.featured_slider .arrows_container a.next{
		position:absolute;
		left:auto;
		right:20px;
	}
}

@media only screen and (min-width:1024px) {
	.featured_slider_fullscreen{
		padding-bottom:0px;
	}
	.featured_slider .slide{
		border-radius:50px;
	}
	.featured_slider .slide .content_container{
		padding:80px 120px 80px 120px;
	}

	.featured_slider .arrows_container a.previous{
		left:50px;
	}
	.featured_slider .arrows_container a.next{
		right:50px;
	}
}

@media only screen and (min-width:1280px) {
	.featured_slider .slide .content_container{
		padding:100px 160px 100px 160px;
	}
}


/*-----------------------------------------------------------------
SINGLE PERSON
-----------------------------------------------------------------*/
.person_heading{
	position:relative;
	margin-bottom:40px;
}
.person_heading .person_top{
	position:relative;
	display:inline-block;
	width:100%;
	padding:40px 0px 40px 0px;
}
.person_heading .person_top h1{
	padding:0px;
	margin-bottom:10px;
}
.person_heading .person_top .eyebrow{
	margin:0px;
	padding:0px;
}

.person_meat .person_right{
	margin-top:40px;
}

.person_headshot{
    position:relative;
    z-index:1;
    display:inline-block;
    width:100%;
	max-width:400px;
    height:auto;
    border-radius: 20px;
	line-height:0px;
}
.person_linkedin{
	margin-top:20px;
	display:inline-block;
	width:30px;
	height:30px;
}

@media only screen and (min-width:768px) {
	.person_meat{
		display:table;
		width:100%;
		max-width:1200px;
	}
	.person_meat .person_left{
		display:table-cell;
		vertical-align:top;
		width:360px;
	}
	.person_meat .person_right{
		display:table-cell;
		vertical-align:top;
		width:auto;
		padding-left:40px;
	}
}

@media only screen and (min-width:1024px) {
	.person_heading{
		margin-bottom:60px;
	}
	.person_heading .spacing{
		position:relative;
		height:260px;
	}
	.person_heading .person_top{
		position:absolute;
		z-index:3;
		left:0px;
		bottom:0px;
		padding-left:420px;
	}
	.person_headshot{
		margin-top:-60%;
	}
	.person_meat .person_right{
		padding-left:60px;
	}
}
@media only screen and (min-width:1280px) {
	.person_heading .spacing{
		height:320px;
	}
	.person_headshot{
		margin-top:-80%;
	}
}


/*-----------------------------------------------------------------
SEARCH BAR AND FILTERS
-----------------------------------------------------------------*/
#currently_searching_for{
	position:absolute;
	left:0px;
	top:5px;
	width:100%;
	height:20px;
	font-weight:500;
	font-size:11px;
	color:#a0a0a0;
	overflow:hidden;
}
.listings_search_bar button[type="submit"]{
	margin-top:10px;
}
@media only screen and (min-width:1024px) {
	.listings_search_bar button[type="submit"]{
		margin-top:0px;
	}
	#currently_searching_for{
		top:-10px;
	}
}


/*-----------------------------------------------------------------
MAP
-----------------------------------------------------------------*/
.listings_map_container{
	position:relative;
}
.listings_map_container_cover{
	width: 100%;
	height: 100%;
	backdrop-filter: blur(3px);
	-webkit-backdrop-filter: blur(3px);
	position: fixed;
	z-index:3;
	left:0px;
	top:0px;
}
.listings_map_cta_container{
	position:fixed;
	left:50%;
	transform:translateY(-50%) translateX(-50%);
	width:100%;
	max-width:500px;
	height:auto;
	top:50%;
	z-index:9;
	padding:30px;
}
.listings_map_cta{
	background:#FFF;
	box-shadow: 0 4px 6px 0px rgba(0, 0, 0, .1), 0 2px 4px 0px rgba(0, 0, 0, .06);
	border-radius:10px;
	text-align:center;
	padding:30px;
}
.listings_container{
	position:relative;
	display:inline-block;
	width:100%;
	min-height:100vh;
}
a.listing{
	display:flex;
	flex-direction:row;
	gap:20px;
	width:100%;
	border-bottom:1px solid #d1d0cd;
	padding:20px;
	color:#333;
	text-decoration:none;
	line-height:normal;
}
a.listing:hover,
a.listing:focus{
	color:#333;
	text-decoration:none;
	background: #ffe04b;
}
a.listing h5{
	font-weight:500;
	margin:0px;
	padding:0px 0px 4px 0px;
}
a.listing .eyebrow{
	margin-bottom:0px;
}

a.listing > div:nth-child(2){
    position:relative;
    padding-bottom:60px;
}
a.listing > div:nth-child(2)::after{
	position:absolute;
	content:"Instantly request appointment";
	display:inline-block;
	left:0px;
	bottom:0px;
	background:#FFF;
	border-radius:40px;
	padding:10px 20px 10px 20px;
	font-size:15px;
	font-weight:600;
	background:#1a2e3e;
	color:#FFF;
	transition:all 0.2s ease-in-out;
}
a.listing.client_invite_note > div:nth-child(2)::after{
	content:"View details";
}
a.listing:hover > div:nth-child(2)::after,
a.listing:focus > div:nth-child(2)::after{
	background:#1a2e3e;
	transition:all 0.2s ease-in-out;
}

.map_container{
	position:relative;
	display:inline-block;
	right:0px;
	top:0px;
	width:100%;
	height:100vh;
	display:none;
}
.map_container .map_key{
	display:inline-block;
	width:auto;
	max-width:250px;
	position:absolute;
	z-index:2;
	font-size:12px;
	left:20px;
	top:20px;
	border-radius:6px;
	box-shadow: 0 4px 6px 0px rgba(0, 0, 0, .1), 0 2px 4px 0px rgba(0, 0, 0, .06);
	background:#FFF;
	padding:15px;
	line-height:normal;
}
.map_container .map_key .key_item{
	display:inline-block;
	width:100%;
}
.map_container .map_key .key_item .key_item_image{
	width:15px;
	height:auto;
	margin-right:6px;
	margin-top:-22px;
	float:left;
}
#map{
	position:absolute;
	left:0px;
	top:0px;
	width:100%;
	height:100vh;
}

.map_list_buttons,
.map_list_buttons_desktop{
	position:fixed;
	z-index:5;
	left:50%;
	display:inline-block;
	width:auto;
	bottom:10px;
	transform:translateX(-50%);
}
.map_list_buttons_desktop{
	display:none;
}
.map_list_buttons #list_toggle_button{
	display:none;
}
.map_list_buttons .wp-block-button__link{
	box-shadow: 0 4px 6px 0px rgba(0, 0, 0, .1), 0 2px 4px 0px rgba(0, 0, 0, .06);
}

#no_providers,
#find_providers_message{
	z-index:1;
	text-align:center;
	padding:60px 40px;
	font-weight:600;
}

.map_placeholder_overlay{
	position:absolute;
	left:0px;
	top:0px;
	width:100%;
	height:100vh;
	display:inline-block;
	z-index:1;
	background:#6ed6e8;
}
.map_placeholder_overlay img{
	position:absolute;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	object-fit:contain;
	object-position:top left;
}

@media only screen and (min-width:768px) {
	.listings_container{
		display:inline-block;
		width:400px;
	}
	#list,
	#map,
	.map_container{
		display:inline-block !important;
	}
	#list.map_only{
		visibility:hidden;
	}
	.map_container.map_only{
		width:100%;
	}
	.map_list_buttons{
		display:none;
	}
	.map_list_buttons_desktop{
		display:inline-block;
	}
	.map_list_buttons_desktop a{
		display:inline-block;
		padding:12px 20px;
		font-size:15px;
		color:#1a2e3e;
		background:#ffe04b;
		font-weight:600;
		text-decoration:none;
		border-right:1px solid #ffefa3;
	}
	.map_list_buttons_desktop a:hover,
	.map_list_buttons_desktop a:focus{
		background:#ffefa3;
	}
	.map_list_buttons_desktop a:first-child{
		border-radius:45px 0px 0px 45px;
	}
	.map_list_buttons_desktop a:last-child{
		border-radius:0px 45px 45px 0px;
		border-right:0px;
	}

	.map_container{
		position:absolute;
		height:auto;
		width:calc(100% - 400px);
	}
	.map_container.fixed{
		top:60px;
		position:fixed;
	}
}

@media only screen and (min-width:1024px) {
	.listings_container{
		width:500px;
	}
	.map_container{
		width:calc(100% - 500px);
	}
	.map_container.fixed{
		top:80px;
	}

	a.listing{
		gap:30px;
		padding:30px;
	}
}

@media only screen and (min-width:1280px) {
	.listings_container{
		width:700px;
	}
	.map_container{
		width:calc(100% - 700px);
	}
}


/*-----------------------------------------------------------------
MAP SEARCH AND APPOINTMENTS FILTERS
-----------------------------------------------------------------*/
#filters_toggle_container{
	display:none;
}
#filters_toggle_button{
	display:block;
}
#filters_toggle_button a{
	margin-top:10px !important;
}
.filters_container{
	display:flex;
	flex-direction:column;
	gap:10px;
	width:100%;
}
.map_filters_container{
	margin-top:10px;
}
.filters_container input[type="text"]{
	width:100%;
	line-height: normal;
    font-style: normal;
    padding: 10px 24px;
    font-size: 15px;
    color: #1a2e3e;
	font-weight: 600;
    border-radius: 45px;
    border: #ffe04b 1.5px solid;
    cursor: pointer;
	background:none;
	text-align:center;
	padding-left:10px;
	padding-right:10px;
}
.filters_container input[type="text"]:hover,
.filters_container input[type="text"]:focus{
	border:#ffefa3 1.5px solid;
}

.range_container {
	display: flex;
	height:100%;
	width:100%;
	flex-direction: column;
	align-items: left;
	justify-content:center;
	font-size:14px;
	line-height:normal;
	gap:1px;
	text-align:center;
}
input[type="range"] {
	width: 100%;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	height: 6px;
	border-radius: 5px;
	border:0px;
	background: #c4c4c4;
}
input[type="range"]::-webkit-slider-runnable-track {
	width: 100%;
	height: 4px;
	background: #1a2e3e;
	border:0px;
	border-radius: 4px;
}
input[type="range"]::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 16px;
	height: 16px;
	border: 6px solid #1a2e3e;
	background:#FFFFFF;
	border-radius: 50%;
	margin-top:-6px;
	cursor: pointer;
}
input[type="range"]:focus {
	outline: none;
}
.filters_container a.custom_dropdown_toggle,
.filters_container input[type="text"].custom_dropdown_toggle.date_inputs{
	width:100%;
}

@media only screen and (min-width:1024px) {
	#filters_toggle_container{
		display:block;
	}
	#filters_toggle_button{
		display:none !important;
	}
	.filters_container .range_container {
		width:300px;
	}
	.filters_container a.custom_dropdown_toggle{
		width:auto;
	}
	.filters_container input[type="text"].custom_dropdown_toggle.date_inputs{
		width:150px;
	}
	.filters_container{
		width:auto;
		flex-direction:row;
	}
	.filters_container input[type="text"]{
		width:150px;
	}
}

.infowindow_container{
	display:table;
	width:100%;
	height:auto;
	align-items:top;
	justify-content:left;
	font-family: "Lexend Deca", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	font-weight:400;
	font-style: normal;
	min-height:120px;
}
.infowindow_container .infowindow_title{
	font-weight:600;
	font-size:16px;
	color:#1a2e3e;
}
.infowindow_container .infowindow_specialty{
	font-size:14px;
	padding-top:6px;
	margin:0px;
}
.infowindow_container .infowindow_headshot{
	position:relative;
	display:table-cell;
	width:100px;
}
.infowindow_container .infowindow_headshot div{
	height:100px;
	width:100px;
	position:absolute;
	left:10px;
	top:10px;
}
.infowindow_container .infowindow_headshot div img{
	position:absolute;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	object-fit:cover;
	border-radius:10px;
}
.infowindow_container .infowindow_content{
	display:table-cell;
	padding:10px 30px 10px 25px;
}
.infowindow_container a.text_link{
	margin-top:6px;
}
.infowindow_container .eyebrow{
	font-size:14px;
}

.gm-style-iw-t{
	bottom:25px !important;
}
.gm-style .gm-style-iw-c{
	width:350px;
	padding:0px;
	border-radius:10px;
}
.gm-style .gm-style-iw-d{
	overflow:hidden !important;
}
.gm-style-iw-chr{
	position:absolute;
	right:0px;
	top:0px;
}
.gm-style-iw-chr button.gm-ui-hover-effect{
	width:30px !important;
	height:30px !important;
}
.gm-style-iw-chr button.gm-ui-hover-effect span{
	margin:0px !important;
	width:30px !important;
	height:30px !important;
}


/*-----------------------------------------------------------------
SINGLE LISTING
-----------------------------------------------------------------*/
.listing_header{
	display:table;
	width:100%;
}
.listing_header > div{
	display:table-cell;
	vertical-align:middle;
}
.listing_header > div:nth-child(1){
	width:70px;
}
.listing_header > div:nth-child(2){
	padding-left:30px;
}
.listing_headshot{
	width:70px;
	height:70px;
	display:inline-block;
	position:relative;
}
.listing_headshot img{
	position:absolute;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	object-fit:cover;
	border-radius:10px;
	border:1px solid #d1d0cd;
}
.listing_headshot.thumb_hidden{
	background:#F4F4F4;
	border-radius:10px;
}
.listing_headshot.thumb_hidden img{
	opacity:0;
}

#listing_map{
	width:100%;
	height:300px;
	border:0px;
	border-radius:10px;
}

.stats_hours_container{
	display:flex;
	flex-direction:column;
	gap:0px;
	width:100%;
}
.stats_hours_container > div{
	flex:1 1 0;
}
ul.listing_hours{
	list-style:none;
	display:flex;
	flex-direction:column;
	gap:5px;
	width:100%;
	border-top:1px solid #d1d0cd;
	margin:40px 0px 0px 0px;
	padding:40px 0px 0px 0px;
}
ul.listing_hours li{
	margin:0px;
	padding:0px;
	display:table;
	width:100%;
}
ul.listing_hours li > span{
	display:table-cell;
}
ul.listing_hours li > span:nth-child(1){
	font-weight:600;
	width:100px;
}

.listing_stats{
	display:flex;
	flex-direction:column;
	width:100%;
	gap:10px;
}
.listing_stats > div{
	position:relative;
	width:100%;
	padding-left:26px;
}
.listing_stats.listing_stats_inline{
	display:inline-block;
}
.listing_stats.listing_stats_inline div{
	width:auto;
	display:inline-block;
	margin-top:10px;
	margin-right:20px;
}
.listing_stats > div::before{
	position:absolute;
	content:"";
	display:inline-block;
	left:0px;
	top:2px;
	width:18px;
	height:18px;
}
.listing_stats > div.address::before{
	background:url(/wp-content/uploads/2025/04/pin.png) center center no-repeat;
	background-size:contain;
}
.listing_stats > div.website::before{
	background:url(/wp-content/uploads/2025/04/website.png) center center no-repeat;
	background-size:contain;
}
.listing_stats > div.phone::before{
	background:url(/wp-content/uploads/2025/04/call.png) center center no-repeat;
	background-size:contain;
}
.listing_stats > div.language::before{
	background:url(/wp-content/uploads/2025/04/language.png) center center no-repeat;
	background-size:contain;
}
.listing_stats > div.telehealth::before{
	background:url(/wp-content/uploads/2025/04/telehealth.png) center center no-repeat;
	background-size:contain;
}
.listing_stats > div.cv_url::before{
	background:url(/wp-content/uploads/2025/04/clipboard.png) center center no-repeat;
	background-size:contain;
}

.single_listing_flex{
	display:flex;
	flex-direction:column;
	gap:0px;
	width:100%;
}
.single_listing_flex .single_listing_provider{
	order:2;
	flex:1;
}
.single_listing_flex .single_listing_book_appointment{
	order:1;
	flex:1;
}

.client_details_box{
	margin-top:40px;
	padding:30px;
	border-radius:20px;
}

@media only screen and (min-width:580px) {
	.stats_hours_container{
		flex-direction:row;
		gap:10px;
	}
	ul.listing_hours{
		border-top:0px;
		border-left:1px solid #d1d0cd;
		margin:0px;
		padding:0px 0px 0px 30px;
	}
}

@media only screen and (min-width:768px) {
	.stats_hours_container{
		gap:40px;
	}

	.client_details_box a + a{
		margin-left:30px;
	}
}

@media only screen and (min-width:1024px) {
	.listing_header > div:nth-child(1){
		width:90px;
	}
	.listing_headshot{
		width:90px;
		height:90px;
	}

	.stats_hours_container{
		gap:30px;
	}
	.stats_hours_container > div:nth-child(1){
		flex:1 1 150px;
	}
	.stats_hours_container > div:nth-child(2){
		flex:1 1 auto;
	}

	.single_listing_flex{
		flex-direction:row;
		gap:60px;
	}
	.single_listing_flex .single_listing_provider{
		order:1;
	}
	.single_listing_flex .single_listing_book_appointment{
		order:2;
	}

	.client_details_box{
		margin-top:-120px;
	}
}

@media only screen and (min-width:1280px) {
	.stats_hours_container{
		flex-direction:row;
		gap:30px;
	}
	.stats_hours_container > div:nth-child(1){
		flex:1 1 240px;
	}

	.listing_stats{
		gap:10px;
	}
	.listing_stats > div::before{
		top:4px;
	}

	ul.listing_hours{
		padding:0px 0px 0px 30px;
	}
	ul.listing_hours li > span:nth-child(1){
		width:120px;
	}
}


/*-----------------------------------------------------------------
SINGLE CLIENT DETAILS
-----------------------------------------------------------------*/
.appointment_container {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 30px;
}
.appointment_card {
    position:relative;
    background: #fff;
    border-radius: 5px;
    display: flex;
	gap:0px;
    flex-direction: column;
    justify-content: space-between;
	border:1px solid #DEDEDE;
}
.appointment_card .status_flag{
    position:relative;
	z-index:1;
    display:inline-block;
    width:100%;
    left:0px;
    top:0px;
    padding:15px 20px;
	border-radius:5px 5px 0px 0px;
	margin:0px !important;
}
.appointment_card .new_notification{
	display:flex;
	padding:4px 8px;
	position:absolute;
	z-index:2;
	top:-6px;
	left:-6px;
	border-radius:5px;
	background: #a60f0f;
	color:#FFF;
	font-size:9px;
	font-weight:800;
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.1);
}

.appointment_card .appointment_flex{
	position:relative;
	z-index:1;
	width:100%;
	display:flex;
	flex-direction:column;
	gap:40px;
	padding:20px 20px 10px 20px;
}
.appointment_details p {
    margin:0px;
    padding:0px 0px 6px 0px;
}

.appointment_details .provider_remarks{
    border-radius:5px;
    padding:20px 20px 15px 20px;
	margin-top:5px;
	margin-bottom:10px;
}

.appointment_actions {
    display: flex;
    flex-direction:column;
    gap: 10px;
}
.appointment_actions.admin_appointment_actions{
	width:100%;
	margin-bottom:20px;
}
a.apt_action_btn {
    padding: 10px 10px 10px 40px;
    background:#AAA;
    text-align:left;
    display:inline-block;
    width:100%;
    border-radius:5px;
    text-decoration:none;
    filter:brightness(1);
    font-size:14px;
	line-height: 130%;
    position:relative;
}
a.apt_action_btn::before {
    content: "";
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    background-size: contain;
    background-repeat: no-repeat;
}
a.apt_action_btn:not(.apt_action_positive):not(.apt_action_neutral):hover,
a.apt_action_btn:not(.apt_action_positive):not(.apt_action_neutral):focus{
    filter:brightness(1.05);
}

a.apt_action_btn{
    background-color: #ffefa3;
}
a.apt_action_btn.cancel {
    background-color: #ffe4e4;
}

a.apt_action_btn.apt_action_positive {
    background-color: #deffdd;
    cursor:default;
}
a.apt_action_btn.apt_action_neutral {
    background-color: #f4f4f4;
    cursor:default;
}
a.apt_action_btn.mb::before {
    background-image: url(/wp-content/uploads/2025/04/folder.png);
}
a.apt_action_btn.status::before {
    background-image: url(/wp-content/uploads/2025/04/clipboard.png);
}
a.apt_action_btn.edit_appt::before {
    background-image: url(/wp-content/uploads/2025/04/edit.png);
}
a.apt_action_btn.cancel::before {
    background-image: url(/wp-content/uploads/2025/04/remove.png);
}
a.apt_action_btn.recommendation::before {
    background-image: url(/wp-content/uploads/2026/01/stethoscope.png);
}

.client_details_container{
	left:0px;
	top:0px;
	width:100%;
	display:inline-block;
	position:relative;
	border-radius:5px;
}
.client_details_container .wrapper{
	position:relative;
	padding:30px;
}
.client_flex_container {
    display: flex;
    flex-direction: column;
	gap:15px;
	width:100%;
	margin-bottom:15px;
}
.client_flex_row {
    display: flex;
	width: 100%;
    flex-direction: column;
    gap: 0px;
}
.client_flex_row .label {
    font-weight: 300;
	color:#ffe04b;
}
.client_flex_row .value {
    font-weight: 400;
}

.client_bucket{
	display:none;
}

.statistics_container{
    position:relative;
}

.book_container{
	text-align:center;
    position:relative;
    background: #fff;
    border-radius: 5px;
	box-shadow: 0px 0px 3px rgba(0, 0, 0, .15);
    padding: 30px;
}

.edit_appointment_heading_details{
	display:flex;
	flex-direction:column;
	gap:20px;
	width:100%;
}
.edit_appointment_heading_details > div{
	flex:1;
	display:flex;
	flex-direction:column;
	gap:8px;
}

@media only screen and (min-width:600px) {
	.client_flex_container {
		flex-direction: row;
	}
}

@media only screen and (min-width:1024px) {
	.appointment_card .appointment_flex{
		flex-direction:row;
		gap:40px;
	}
	.appointment_details{
		flex:1;
	}
    .appointment_actions {
		width:240px;
    }
	.appointment_actions.admin_appointment_actions{
		flex-direction:row;
	}

	.edit_appointment_heading_details{
		flex-direction:row;
		gap:40px;
	}
}

@media only screen and (min-width:1280px) {
    .client_table td.label {
        width: 150px;
    }
	a.apt_action_btn {
    	font-size:15px;
	}
}


/*-----------------------------------------------------------------
CHARTS
-----------------------------------------------------------------*/
.charts_flex{
	display:grid;
	grid-template-columns:repeat(1, 1fr);
	gap:30px;
	width:100%;
}
.charts_flex .chart{
	border:1px solid #DEDEDE;
    padding: 30px;
    background: #fff;
    border-radius: 5px;
	text-align:center;
}

@media only screen and (min-width:1024px) {
	.charts_flex{
		grid-template-columns:repeat(2, 1fr);
	}
}

@media only screen and (min-width:1280px) {
	.charts_flex .chart.pie_chart{
		padding: 30px 60px;
	}
}


/*-----------------------------------------------------------------
FILE UPLOAD DROP
-----------------------------------------------------------------*/
#dropArea {
    width: 100%;
    padding: 20px 60px 20px 60px;
    text-align: center;
	border-radius:4px;
	border:1.5px dashed #d1d0cd;
    cursor: pointer;
    margin: 0px;
	line-height:normal;
	display:inline-block;
	font-weight:400;
	color:#757575;
	font-size:14px;
	position:relative;
	background:#FFF;
}
#dropArea::before{
	content:"";
	display:block;
	width:100%;
	height:30px;
	margin-bottom:10px;
	background: url(/wp-content/uploads/2025/04/upload.png) center center no-repeat;
	background-size: contain;
}
#dropArea.dragover,
#dropArea:focus {
    background-color: #fffced;
}
#fileList {
    list-style: none;
    padding: 0;
}
#fileList > div {
    display: flex;
    justify-content: space-between;
    background: #FFFFFF;
    padding: 8px 35px 8px 12px;
    margin: 5px 0;
    border-radius: 4px;
	font-size:14px;
	font-weight:400;
	line-height:normal;
	position:relative;
	color:#757575;
}
#fileList > div button{
	position:absolute;
	right:0px;
	top:0px;
	display:inline-block;
    cursor: pointer;
    width:25px;
	height:100%;
	background: url(/wp-content/uploads/2025/03/Close-Menu-Button.svg) right 7px center no-repeat;
	background-size: 16px auto;
}


/*-----------------------------------------------------------------
SIDE NAV (CRM NAV, SINGLE CLIENT NAV)
-----------------------------------------------------------------*/
.side_nav{
	position:fixed;
	z-index:9;
	left:0px;
	top:75px;
	gap:2px;
	padding:7px 5px;
	box-shadow: 0px 0px 3px rgba(0, 0, 0, .15);
	width:auto;
	height:auto;
	display:flex;
	flex-direction:column;
	align-items:start;
	justify-content:start;
	background:#FFF;
	border-radius:0px 5px 5px 0px;
}
.side_nav a{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	width:auto;
	width:30px;
	height:30px;
	border-radius:5px;
	background:#FFF;
	line-height:0px;
	position:relative;
	text-decoration:none;
}
.side_nav a:hover,
.side_nav a:focus,
.side_nav a.active{
	background:#f4f4f4;
	text-decoration:none;
}
.side_nav a > span.label{
	white-space: nowrap;
	display:inline-block;
	position:absolute;
	background:#1a2e3e;
	padding:6px 8px;
	color:#FFF;
	font-weight:600;
	font-size:14px;
	line-height:100%;
	width:auto;
	border-radius:5px;
	top:5px;
	left:40px;
	box-shadow: 0px 0px 2px rgba(0, 0, 0, .1);
	visibility:hidden;
	opacity:0;
	transform:translateX(-10px);
	transition:all ease-in-out 0.2s;
}
.side_nav a:hover > span.label,
.side_nav a:focus > span.label{
	visibility:visible;
	opacity:1;
	transform:translateX(0px);
	transition:all ease-in-out 0.2s;
}
.side_nav a img{
	width:16px;
	height:auto;
}

.side_nav_compensation{
	padding-top:80px;
}

@media only screen and (max-width:767px) {
	.side_nav.side_nav_single_client{
		display:none;
	}
}

@media only screen and (min-width:768px) {
	.side_nav{
		top:80px;
	}
	.side_nav a{
		width:40px;
		height:40px;
	}
	.side_nav a img{
		width:22px;
	}
	.side_nav a > span.label{
		top:10px;
		left:50px;
	}

	.side_nav_compensation{
		padding-left:190px;
		padding-top:20px;
		line-height:0px;
	}
	.side_nav.side_nav_single_client{
		position:absolute;
		left:-15px;
		width:180px;
		padding:10px;
		top:20px;
		gap:10px;
		border-radius:5px;
	}
	.side_nav.side_nav_single_client a{
		flex-direction:row;
		gap:10px;
		width:100%;
		padding-left:10px;
		padding-right:10px;
	}
	.side_nav.side_nav_single_client a > span.label{
		white-space:initial;
		display:flex;
		flex:1;
		position:relative;
		background:none;
		padding:0px;
		color:#1a2e3e;
		border-radius:0px;
		top:0px;
		left:0px;
		box-shadow:none;
		visibility:visible;
		opacity:1;
		transform:translateX(0px);
	}
	.side_nav.side_nav_single_client a > span.icon{
		display:flex;
	}
}

@media only screen and (min-width:1024px) {
	.side_nav{
		top:95px;
	}

	.side_nav_compensation{
		padding-left:200px;
		padding-top:30px;
	}
	.side_nav.side_nav_single_client{
		top:50px;
	}
}

@media only screen and (min-width:1600px) {
	.side_nav{
		width:180px;
		padding:10px;
		gap:6px;
	}
	.side_nav a{
		flex-direction:row;
		gap:10px;
		width:100%;
		padding-left:10px;
		padding-right:10px;
	}
	.side_nav a > span.label{
		white-space:initial;
		display:flex;
		flex:1;
		position:relative;
		background:none;
		padding:0px;
		color:#1a2e3e;
		border-radius:0px;
		top:0px;
		left:0px;
		box-shadow:none;
		visibility:visible;
		opacity:1;
		transform:translateX(0px);
	}
	.side_nav a > span.icon{
		display:flex;
	}
}


/*-----------------------------------------------------------------
SUB NAV MOBILE DROPDOWN
-----------------------------------------------------------------*/
.sub_nav_container{
	z-index:9 !important;
	position:fixed;
	top:60px;
	left:0px;
	width:100%;
	box-shadow: 0px 0px 3px rgba(0, 0, 0, .15);
}
.sub_nav {
	display:none;
}

.sub_nav_dropdown_container select{
	color:#1a2e3e;
	background:#fffced;
	border:0px;
	font-size:15px;
	width:100%;
	padding:15px 0px;
	font-weight:600;
	text-transform:uppercase;
}

@media (min-width: 768px) {
	.sub_nav_dropdown_container{
		display:none;
	}
}


/*-----------------------------------------------------------------
USERS TABLE
-----------------------------------------------------------------*/
.user_counts_display{
	display:flex;
	flex-direction: row;
	width:100%;
	max-width:150px;
	align-items:center;
	justify-content:center;
}
.user_counts_display > *{
	flex:1;
}


/*-----------------------------------------------------------------
SINGLE PROSPECT
-----------------------------------------------------------------*/
.generated_address{
	margin-top:10px;
}
.generated_address input,
.generated_address input:hover,
.generated_address input:focus{
	padding:2px 0px;
	border:0px;
	display:inline;
	width:200px;
}

.stats_boxes{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	text-align:center;
	width:100%;
	gap:20px;
}
.stats_boxes > div{
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
	text-align:center;
	flex:1;
	padding:20px;
	border-radius:30px;
	width:100%;
}
.stats_boxes > div > .count{
	font-size:32px;
	font-weight:600;
	line-height:140%;
	color:#1a2e3e;
}

@media (min-width: 768px) {
	.stats_boxes{
		flex-direction:row;
		align-items: stretch;
	}
}

@media (min-width: 1024px) {
	.stats_boxes > div{
		padding:40px 30px;
	}
}


/*-----------------------------------------------------------------
PROSPECT AJAX SEARCH
-----------------------------------------------------------------*/
#prospect_results {
	border: 1px solid #ccc;
	color:#1a2e3e;
	max-height: 300px;
	overflow-y: auto;
	position: absolute;
	background: #fff;
	width: 100%;
	z-index: 9999;
	display: none; /* hidden until results appear */
	box-shadow: 0 2px 6px rgba(0,0,0,0.15);
	padding: 0;
	margin:0;
	top:50px;
	left:0px;
	border-radius:5px;
}
#prospect_results ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
#prospect_results li {
	padding:0px;
	margin: 0;
}
#prospect_results li a {
    display: block;
    padding: 5px 10px;
	font-size:12px;
	line-height:normal;
    text-decoration: none;
    color: #333;
}
#prospect_results li a:hover {
    background-color: #f0f0f0;
}


/*-----------------------------------------------------------------
JQUERY DATEPICKER
-----------------------------------------------------------------*/
.ui-datepicker {
	margin-top:10px;
    background-color: #FFFFFF;
    border: 0px;
    border-radius: 6px;
	overflow:hidden;
	line-height:normal;
	padding:10px;
	box-shadow: 0px 0px 6px rgba(0, 0, 0, .25);
	display:none;
	z-index:2 !important;
}
table.ui-datepicker-calendar{
	border-spacing:0px !important;
	table-layout: fixed !important;
	width:280px !important;
	margin:0px;
}
.ui-datepicker-header {
    background-color: #f4f4f4;
    color: #333333;
    text-align: center;
	font-weight:500;
    padding: 20px;
	margin-bottom:10px;
	position:relative;
}
.ui-datepicker-title {
    font-size: 18px;
    font-weight: 500;
}
.ui-datepicker-prev,
.ui-datepicker-next {
	display:inline-block;
	padding:0px;
    color: #f4f4f4 !important;
	cursor:pointer;
	position:absolute;
    font-size: 1px;
	width:50px;
	height:100%;
	top:0px;
	padding:0px;
}
.ui-datepicker-prev{
	left:0px;
}
.ui-datepicker-next {
	right:0px;
}
.ui-datepicker-prev::before,
.ui-datepicker-next::before{
	position:absolute;
	top:0px;
	width:100%;
	height:100%;
	content:"";
	background:url(/wp-content/uploads/2025/03/down-arrow.svg) center center no-repeat;
	background-size:20px;
}
.ui-datepicker-prev::before{
	transform:rotate(90deg);
	left:0px;
}
.ui-datepicker-next::before{
	transform:rotate(-90deg);
	right:0px;
}

.ui-datepicker-calendar th{
	font-size:14px;
	font-weight:400;
	color:#555555;
}
.ui-datepicker-calendar td{
    text-align: center;
}
.ui-datepicker-calendar td span,
.ui-datepicker-calendar td a{
	display:inline-block;
	width:auto;
	padding:10px 0px;
	min-width:40px;
    padding: 12px;
    font-size: 14px;
	border-radius:4px;
	font-weight:500;
	color:#333333;
	text-decoration:none;
}
.ui-datepicker-calendar td span.ui-state-default{
	color:#CCCCCC;
}
.ui-datepicker-current-day a{
    background-color: #1a2e3e;
    color: #FFFFFF !important;
}
.ui-datepicker-calendar td a:hover {
    background-color: #f4f4f4;
	color:#333333 !important;
    cursor: pointer;
}

.ui-datepicker-year{
	width:auto;
	padding:5px;
	margin-left:5px;
}

@media only screen and (min-width:500px) {
	.ui-datepicker {
		padding:20px;
	}
	table.ui-datepicker-calendar{
		width:360px !important;
	}
}


/*-----------------------------------------------------------------
TOOLTIP
-----------------------------------------------------------------*/
.tooltip-text {
	position: absolute;
	background: #1a2e3e;
	color:#FFF;
	padding: 10px 15px;
	border-radius: 5px;
	box-shadow: 0px 0px 3px rgba(0, 0, 0, .15);
	font-size: 14px;
	line-height:normal;
	display: none;
	font-weight:500;
	width:auto;
	max-width:150px;
	text-align:center;
	transform:translateX(-50%);
}


/*-----------------------------------------------------------------
CUSTOM CHECKBOXES AND DROPDOWNS
-----------------------------------------------------------------*/
.custom_dropdown_container {
	position: relative;
	width: 100%;
}
.custom_dropdown_menu {
	position: absolute;
	z-index: 3;
	width:100%;
	min-width: 320px;
	max-height: 280px;
	overflow-y: auto;
	border-radius:6px;
	top:55px;
	background: #fff;
	padding:15px 20px;
	display: none;
	box-shadow: 0px 0px 6px rgba(0, 0, 0, .25);
}
.custom_dropdown_menu.two_columns li{
	width:49% !important;
}
.custom_dropdown_menu li,
.custom_dropdown_menu li:first-child,
.custom_dropdown_menu li:last-child{
	position:relative;
	display:inline-block;
	width:100%;
	margin:0px;
	padding:5px 5px 5px 21px;
	line-height:125%;
	cursor: pointer;
	color:#333;
	font-size:14px;
}
.custom_dropdown_menu li::before,
ul.custom_dropdown_menu li:first-child::before{
	content:"";
	display:inline-block;
	position:absolute;
	left:0px;
	top:7px;
	width:14px;
	height:14px;
	border:2px solid #1a2e3e;
	border-radius:50%;
	background: #FFF;
}
.custom_checkbox{
	content:"";
	display:flex;
	align-items:center;
	min-height:22px;
	position:relative;
	width:100%;
    cursor: pointer;
	padding-left:54px;
	font-style: normal;
	text-decoration:none;
}
.custom_checkbox::before {
	content:"";
	display:inline-block;
	position:absolute;
	left:0px;
	top:0px;
	width:44px;
	height:22px;
	border-radius:11px;
	background: #c4c4c4;
	transition:all 0.1s ease-in-out;
}
.custom_dropdown_menu li.selected::before,
.custom_checkbox[aria-checked="true"]::before {
	background:#1a2e3e !important;
	transition:all 0.1s ease-in-out;
}
.custom_checkbox::after {
	content:"";
	display:inline-block;
	position:absolute;
	left:0px;
	top:0px;
	width:22px;
	height:22px;
	border-radius:50%;
	border:2px solid #c4c4c4;
	background: #FFF;
	transition:all 0.1s ease-in-out;
}
.custom_dropdown_menu li.selected::after,
.custom_checkbox[aria-checked="true"]::after {
	left:22px;
	border:2px solid #1a2e3e;
	transition:all 0.1s ease-in-out;
}
.DARK .custom_dropdown_menu li.selected::before,
.DARK .custom_checkbox[aria-checked="true"]::before {
	background:#ffe04b !important;
}
.DARK .custom_dropdown_menu li.selected::after,
.DARK .custom_checkbox[aria-checked="true"]::after {
	border:2px solid #ffe04b;
}

.custom_dropdown_menu li.trigger_filter_button{
	width:100% !important;
	padding-left:0px;
	padding-top:20px;
	font-size:15px;
	text-decoration:underline;
	font-weight:600;
}
.custom_dropdown_menu li.trigger_filter_button:hover,
.custom_dropdown_menu li.trigger_filter_button:focus{
	text-decoration:none;
}
.custom_dropdown_menu li.trigger_filter_button::before{
	display:none;
}

a.icon_add,
.DARK a.icon_add{
	position:relative;
	text-decoration:none;
	display:inline-block;
	background:#FFF;
	border-radius:40px;
	padding:10px 20px 10px 35px;
	font-size:15px;
	font-weight:600;
	line-height:normal;
	color:#1a2e3e;
}
a.icon_add.yellow,
.DARK a.icon_add.yellow{
	background:#ffe04b;
}
a.icon_add:hover,
a.icon_add:focus{
	background:#1a2e3e;
	color:#FFF;
}
.DARK a.icon_add:hover,
.DARK a.icon_add:focus{
	background:#FFF;
	color:#1a2e3e;
}
a.icon_add::before,
.DARK a.icon_add::before{
	position:absolute;
	content:"";
	display:inline-block;
	left:12px;
	top:0px;
	width:14px;
	height:100%;
	filter:brightness(1) invert(0);
	background:url(/wp-content/uploads/2025/03/plus.svg) center center no-repeat;
	background-size:100% auto;
	transition:all 0.2s ease-in-out;
}
a.icon_add:hover::before,
a.icon_add:focus::before{
	filter:brightness(0) invert(1);
	transition:all 0.2s ease-in-out;
}
.DARK a.icon_add:hover::before,
.DARK a.icon_add:focus::before{
	filter:brightness(1) invert(0);
}

a.icon_add + a.icon_add{
	margin-top:5px;
}


/*-----------------------------------------------------------------
APPOINTMENT STATUS COLORS
-----------------------------------------------------------------*/
.PENDING {
    background-color: #f4f4f4;
}
.ATTENDED {
    background-color: #c2ffc0;
}
.CONFIRMED {
    background-color: #deffdd;
}
.HOLD {
    background-color: #ffedd3;
}
.CANCELED,
.NOSHOW {
    background-color: #ffe4e4;
}
.UNRESPONSIVE {
    background-color: #fff2f2;
}
.RESCHEDULED {
    background-color: #ffffc1;
}

#status_color_icon{
	float:left;
	width:18px;
	height:18px;
	margin-right:5px;
	margin-top:3px;
	border-radius:50%;
	border:1px solid #d1d0cd;
	display:inline-block;
}


/*-----------------------------------------------------------------
DATA OUTPUT RECORDS TABLES
-----------------------------------------------------------------*/
.total_and_csv_container{
	display:flex;
	flex-direction:row;
	width:100%;
	gap:20px;
	align-items:center;
}
.total_and_csv_container > div{
	display:inline-block;
	flex:1 1 0;
}
.total_and_csv_container > div:nth-child(2){
	text-align:right;
}

.records_table_flex {
	display: flex;
	flex-direction: column;
	gap: 15px;
}
.records_table_flex .row {
	display: flex;
	flex-direction: column;
	padding: 15px 15px;
	gap: 10px;
	min-height:50px;
	font-size:15px;
	font-weight:400;
	border-radius:5px;
}
.records_table_flex .row.small_text{
	font-size:11px;
	line-height:normal;
}

.records_table_flex .row.header {
	display:none;
}
.records_table_flex .col {
	display: flex;
	flex-direction:column;
	width: 100%;
	overflow: hidden;
	overflow-wrap: anywhere;
	word-break: break-word;
}
.records_table_flex .col::before {
	content: attr(data-label) ": ";
	font-weight: bold;
	margin-right: 5px;
}
.records_table_flex .col.no_label::before{
	display:none !important;
}

.records_table_flex .has_action{
	display:flex;
	flex-direction:row;
	gap:5px;
	width:100%;
}
.records_table_flex .has_action > div:nth-child(1){
	flex:1;
}
.records_table_flex .has_action > div:nth-child(2){
	width:44px;
}
.records_table_flex a.icon_cancel{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	width:40px;
	height:40px;
	position:relative;
	background:#ffa7a7;
	border-radius:4px;
	box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.2);
}
.records_table_flex a.icon_cancel img{
	width:26px;
	height:auto;
}
.records_table_flex a.icon_cancel:hover,
.records_table_flex a.icon_cancel:focus{
	background:#ffcaca;
}

.pagination{
	display:flex;
	flex-direction:row;
	width:100%;
	gap:2px;
	margin-top:10px;
}
.pagination span,
.pagination a{
	display:inline-block;
	padding:12px 15px;
	border-radius:4px;
	font-size:14px;
	font-weight:600;
	line-height:normal;
}
.pagination a{
	background:#F4F4F4;
	text-decoration:none;
}
.pagination a.current{
	background:#1a2e3e;
	color:#FFF;
}

@media (min-width: 768px) and (max-width: 1119px) {
	.records_table_flex .row{
        flex-wrap: wrap;
		flex-direction: row;
		column-gap:40px;
	}
	.records_table_flex .row .col {
		width: calc(50% - 30px);
		box-sizing: border-box;
	}
}

@media (min-width: 1120px) {
	.records_table_flex .row {
		flex-direction: row;
		align-items: center;
		width:100%;
		gap: 20px;
		padding: 15px 15px;
	}
	.records_table_flex .row.header {
		z-index:2;
		display:flex;
		background:#ffefa3;
		font-weight:600;
		height:50px;
		align-items:center;
		box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.2);
	}
	.records_table_flex .col {
		flex:1 1 0;
		overflow-wrap: break-word;
		word-break: break-word;
		line-height:normal;
	}

	.records_table_flex .col.col-small { flex: 0 0 120px; }
	.records_table_flex .col.col-medium { flex: 0 0 240px; }
	.records_table_flex .col.col-large { flex: 1 1 auto; }

	.records_table_flex .col::before { content: none; }
}


/*-----------------------------------------------------------------
ACCOUNT
-----------------------------------------------------------------*/
ul#password_requirements{
	width:100%;
	margin:0px;
	margin-top:-15px;
	list-style:none;
	padding:0px;
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	column-gap:10px;
}
ul#password_requirements li{
	padding:5px 0px 5px 20px !important;
	margin:0px;
	line-height:normal;
	display:inline-block;
	width:100%;
	position:relative;
}
ul#password_requirements li::before{
	position:absolute;
	content:"";
	display:inline-block;
	left:0px;
	top:7px;
	width:15px;
	height:15px;
	background: url(/wp-content/uploads/2025/03/check-1.svg) center center no-repeat;
	background-size:contain;
	filter:saturate(0) brightness(1.6);
	transition:all 0.1s ease-in-out;
}
ul#password_requirements li.satisfied::before{
	filter:saturate(1) brightness(1);
	transition:all 0.1s ease-in-out;
}

button.toggle_password{
	display:inline-block;
	z-index:3;
	position:absolute;
	right:5px;
	bottom:0px;
	width:25px;
	height:40px;
	background:url(/wp-content/uploads/2025/04/show.png) center center no-repeat;
	background-size:contain;
	border:0px;
	cursor:pointer;
}

body.login {
    background: #fff !important;
    color: #000 !important;
    font-family: Arial, sans-serif;
}

#login {
    width: 100%;
    max-width: 400px;
    margin: 50px auto;
    padding: 40px;
    box-shadow: none;
    background: #fff;
    border: none;
}

#loginform {
    background: #fff;
    border: none;
    padding: 0;
}

@media (min-width: 1280px) {
	button.toggle_password{
		height:45px;
	}
}


/*-----------------------------------------------------------------
PRESENTING AS
-----------------------------------------------------------------*/
#presenting_as_form{
	display:inline-block;
	position:fixed;
	top:0px;
	left:0px;
	width:auto;
	z-index:999;
	line-height:0px;
}
#presenting_as_form select{
	padding:0px;
	font-size:10px;
	margin:0px;
	border-radius:0px;
}


/*-----------------------------------------------------------------
TOP STYLES AND CONTAINERS
-----------------------------------------------------------------*/
#TOP_COMPENSATION,
#TOP {
	height: 60px;
}
#TOP {
	padding: 0px;
	z-index: 10;
	position: fixed;
	width: 100%;
	left: 0;
	top: 0;
}
#TOP #logo {
	z-index: 12;
	position: absolute;
	display: inline-block;
	width: 170px;
	height: 20px;
	top: 20px;
	left: 0px;
}
#TOP #logo img {
	width: auto;
	height: 100%;
	position:absolute;
	left:0px;
	top:0px;
}

#TOP .container12,
#TOP .container12 .column12,
#TOP .navigation_container,
#TOP nav.main-navigation,
#TOP .menu-primary-menu-container {
	height: 100%;
	width: 100%;
	position: relative;
}

#TOP button.menu-toggle {
	z-index: 13;
	border: 0;
	padding: 0;
	margin: 0;
	background: none;
	width: 22px;
	height: 100%;
	position: absolute;
	cursor: pointer;
	left:auto;
	right: 0;
	top: 0;
	background: url(/wp-content/uploads/2025/03/Menu-Button.svg) left center no-repeat;
	background-size: 100% auto;
}
#TOP button.menu-toggle-active {
	background: url(/wp-content/uploads/2025/03/Close-Menu-Button.svg) left center no-repeat;
	background-size: 100% auto;
}

#TOP ul#primary-menu{
	height: calc(100% - 60px);
	top: 60px;
}
#TOP ul#primary-menu,
#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu {
	z-index: 11;
	display: inline-block;
	width: 100%;
	left: 0;
	list-style: none;
	position: fixed;
	vertical-align: middle;
	background: #FFFFFF;
	margin: 0;
	padding: 20px 30px 0px 30px;
	visibility: hidden;
	overflow-x: scroll;
	opacity:0;
	transform: translateX(-100%);
	transition: all .3s ease-in-out;
}
#TOP.active ul#primary-menu,
#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu.active {
	visibility: visible;
	opacity:1;
	transform: translateX(0);
}
#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu {
	height: 100%;
	top:0px;
	z-index: 14;
}

#TOP ul#primary-menu li {
	background: none;
	position: relative;
	display: inline-block;
	width: 100%;
	padding: 0;
	margin: 0;
}
#TOP ul#primary-menu li::before {
	display:none;
}
#TOP ul#primary-menu li a,
#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu .subnav_heading a {
	text-decoration: none;
	display: inline-block;
	width: 100%;
	line-height: normal;
	padding: 18px 0;
	font-weight: 400;
	font-size: 22px;
	color:#1a2e3e;
}
#TOP ul#primary-menu li a:hover,
#TOP ul#primary-menu li a:focus{
	color:#ffe04b;
}
#TOP ul#primary-menu li.menu-item-has-children > a::after,
#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu .subnav_heading a::before {
	content: "";
	display: inline-block;
	position: absolute;
	height: 100%;
	width: 16px;
	background: url(/wp-content/uploads/2025/03/down-arrow.svg) center center no-repeat;
	background-size: contain;
}
#TOP ul#primary-menu li.menu-item-has-children > a::after{
	right: 0;
	top: 0;
	transform: rotate(-90deg);
}
#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu .subnav_heading a::before {
	left: -8px;
	top: 0;
	transform: rotate(90deg);
}
#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu .subnav_heading a {
	padding-left: 20px;
	font-weight: 500;
	border-bottom:1px solid #d1d0cd;
}

#TOP .top_buttons{
	display:inline-block;
	visibility:hidden;
	position:fixed;
	z-index:12;
	left:0px;
	bottom:0px;
	padding:35px;
	width:100%;
	opacity:0;
	transition:opacity 0.2s ease-in-out;
	transition-delay:0.5s;
}
#TOP.active .top_buttons{
	visibility:visible;
	opacity:1;
	transition:opacity 0.2s ease-in-out;
	transition-delay:0.2s;
}

#TOP ul#primary-menu li.has_notification a > span.notification{
	display:flex;
	align-items:center;
	justify-content:center;
	width:20px;
	height:100%;
	line-height:0px;
	position:absolute;
	top:-15px;
	left:-18px;
}
#TOP ul#primary-menu li.has_notification a > span.notification > span{
	display:flex;
	align-items:center;
	justify-content:center;
	width:20px;
	height:20px;
	border-radius:50%;
	background: #a60f0f;
	color:#FFF;
	font-size:9px;
	font-weight:800;
	box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.1);
}

@media only screen and (min-width: 768px) {
	#TOP ul#primary-menu,
	#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu {
		padding:20px 50px 0px 50px;
	}

	#TOP .top_buttons{
		display:inline-block;
		visibility:visible;
		position:absolute;
		left:auto;
		right:50px;
		bottom:auto;
		top:8px;
		padding:0px;
		width:auto;
		opacity:1;
	}
}

@media only screen and (min-width: 1024px) {
	#TOP_COMPENSATION,
	#TOP {
		height: 80px;
	}
	#TOP{
	}
	#TOP #logo {
		width: 200px;
		height: 20px;
		top: 30px;
	}

	#TOP .navigation_container {
		text-align: right;
		width: 100%;
		display: inline-block;
	}

	#TOP button.menu-toggle {
		display: none;
	}
	#TOP ul#primary-menu {
		list-style: none;
		position: relative;
		top: auto;
		margin: 0;
		padding: 0;
		margin-right:220px;
		display: table;
		height: 100%;
		width: auto;
		float: right;
		visibility: visible;
		transform: none;
		background: none;
		opacity:1;
	}
	#TOP ul#primary-menu li {
		display: table-cell;
		width: auto;
		margin: 0;
		padding: 0px 14px;
		height: 100%;
		vertical-align: middle;
		text-align: center;
		border-top:0px;
	}
	#TOP ul#primary-menu li:last-child{
		border:none;
	}
	#TOP ul#primary-menu li a {
		position:relative;
		width: 100%;
		height:100%;
		line-height:80px;
		padding: 0px;
		font-size:14px;
		color:#333333;
		font-weight:500;
		margin: 0;
		background: none;
		border: 0;
		transition: all .2s ease-in-out;
	}
	#TOP ul#primary-menu li a:hover,
	#TOP ul#primary-menu li a:focus{
		color:#333333;
	}
	#TOP ul#primary-menu li.menu-item-has-children a{
		padding-right:20px;
	}

	#TOP ul#primary-menu li > a::before {
		position:absolute;
		display:inline-block;
		content:"";
		bottom:24px;
		left:0px;
		height:0px;
		width:0px;
		border-top: #1a2e3e 1.5px solid;
		transition: all .2s ease-in-out;
	}
	#TOP ul#primary-menu li > a:hover::before,
	#TOP ul#primary-menu li > a:focus::before{
		width:100%;
		transition: all .2s ease-in-out;
	}
	#TOP ul#primary-menu li.menu-item-has-children > a::after {
		width: 12px;
		right: 0px;
		transform:rotate(0deg);
		transition: all .2s ease-in-out;
	}
	#TOP ul#primary-menu li.menu-item-has-children > a:hover::after,
	#TOP ul#primary-menu li.menu-item-has-children > a:focus::after {
		transform:rotate(180deg);
		transition: all .2s ease-in-out;
	}

	#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu {
		position:absolute;
		background: #FFF;
		border-radius:10px;
		margin: 0;
		padding: 20px 25px 20px 20px;
		left: 0px;
		top: 95px; /* distance from top = TOP height + x px */
		height: auto;
		width: auto;
		min-width:200px;
		z-index: 14;
		transform: none;
		visibility: hidden;
		display:inline-block;
		overflow:visible;
		box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.1);
		opacity: 0;
		transform:translateY(-10px);
		transition: opacity .2s ease-in-out 0s, transform .2s ease-in-out 0s, visibility 0s ease-in-out .2s;
	}
	#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu.keep_right{
		left: auto;
		right:-25px;
	}
	#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu.keep_right li {
		text-align:right;
	}
	#TOP ul#primary-menu li.menu-item-has-children:hover ul.sub-menu,
	#TOP ul#primary-menu li.menu-item-has-children:focus-within ul.sub-menu,
	#TOP ul#primary-menu li.menu-item-has-children.ada_focus ul.sub-menu{
		visibility: visible;
		opacity:1;
		transform:translateY(0px);
		transition: opacity .2s ease-in-out 0s, transform .2s ease-in-out 0s, visibility 0s ease-in-out 0s;
	}
	#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu::before { /* permits space between primary nav and submenu */
		content:"";
		position:absolute;
		width:100%;
		left:0px;
		display:inline-block;
		height:15px; /* match distance from top */
		top:-15px; /* match distance from top */
	}

	#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu li {
		padding: 0;
		margin: 0;
		display: inline-block;
		width: 100%;
		height: auto;
		text-align: left;
		border:0px;
	}
	#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu li a {
		padding: 8px 10px;
		line-height:normal;
		display: inline-block;
		width: 100%;
		position:relative;
		white-space: nowrap;
	}
	#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu li a::before {
		display:none !important;
	}
	#TOP ul#primary-menu li.menu-item-has-children ul.sub-menu .subnav_heading {
		display:none !important;
	}

	#TOP .top_buttons{
		right:0px;
		top:18px;
	}

	#TOP ul#primary-menu li.profile{
		padding:0px 0px 0px 40px;
		position:relative;
	}
	#TOP ul#primary-menu li.profile::before{
		position:absolute;
		content:"";
		display:inline-block;
		border-left:1px solid #1d2f3f;
		width:0px;
		height:30px;
		top:25px;
		left:15px;
	}
}

@media only screen and (min-width: 1180px) {
	#TOP ul#primary-menu {
		margin-right:240px;
	}
	#TOP ul#primary-menu li {
		padding: 0px 18px;
	}
	#TOP ul#primary-menu li a {
		font-size:16px;
	}

	#TOP #logo {
		width: 240px;
		height: 28px;
		top: 26px;
	}
	#TOP ul#primary-menu li.profile::before{
		left:10px;
	}
}

@media only screen and (min-width: 1280px) {
	#TOP ul#primary-menu {
		margin-right:250px;
	}
	#TOP ul#primary-menu li {
		padding: 0px 24px;
	}
}


/*-----------------------------------------------------------------
FOOTER
-----------------------------------------------------------------*/
footer{
	position:relative;
	padding-top:60px;
	text-align:center;
}

footer .footer_logo{
	display:inline-block;
	width:200px;
	height:auto;
	line-height:0px;
	margin-bottom:20px;
}
footer .footer_logo img{
	display:inline-block;
	width:100%;
}

footer .footer_navigation ul{
	margin:0px;
	padding:0px;
	list-style:none;
	display:inline-block;
}
footer .footer_navigation ul li{
	margin:0px;
	padding:0px;
	list-style:none;
	display:inline-block;
	width:100%;
}
footer .footer_navigation ul li a{
	font-size:14px;
	line-height:28px;
	opacity:1;
	font-weight:500;
	text-decoration:none;
}
footer .footer_navigation ul li a:hover,
footer .footer_navigation ul li a:focus{
	text-decoration:underline;
}

ul.social{
	display:flex;
	flex-direction:row;
	gap:18px;
	width:100%;
	margin:20px 0px 0px 0px;
	padding:0px;
	justify-content:center;
	list-style: none;
}
ul.social li{
	background:none;
	display:inline-block;
	width:auto !important;
	padding:0px;
	margin:0px;
}
ul.social li::before {
	display:none;
}
ul.social li a{
	display:inline-block;
	width:30px;
	height:30px;
	position:relative;
}
ul.social li a img{
	position:absolute;
	object-fit: contain;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	filter:brightness(0) invert(1);
}

footer ul.legal{
	border-top:1px solid rgb(57, 87, 111);
	position:relative;
	display:flex;
	flex-direction:row;
	justify-content:center;
	gap:30px;
	padding:20px 0px 20px 0px;
	margin:40px 0px 0px 0px;
}
footer ul.legal li{
	display:inline-block;
	width:auto;
	padding:0px;
	margin:0px;
}
footer ul.legal li a{
	text-decoration:none;
}
footer ul.legal li a:hover,
footer ul.legal li a:focus{
	text-decoration:underline;
}

footer .wp-block-button{
	margin-top:0px;
}

@media only screen and (min-width:768px){
	footer .footer_column.cta{
		padding-top:20px;
	}
}
@media only screen and (max-width:1023px){
	footer .hide_mobile{
		display:none;
	}
}

@media only screen and (min-width:1024px){
	footer{
		text-align:left;
	}
	.footer_columns{
		display:flex;
		flex-direction:row;
		align-items:start;
		justify-content:center;
		gap:30px;
		width:100%;
	}
	.footer_columns .footer_column{
		position:relative;
		display:inline-block;
		width:auto;
	}
	.footer_columns .footer_column:nth-child(1){
		flex:5 1 0;
	}
	.footer_columns .footer_column:nth-child(2){
		flex:3 1 0;
	}
	.footer_columns .footer_column:nth-child(3){
		flex:2 1 0;
	}
	.footer_columns .footer_column:nth-child(4){
		flex:4 1 0;
	}

	footer .footer_column.cta{
		text-align:right;
		padding-top:0px;
	}

	ul.social{
		margin-top:40px;
		justify-content:left;
	}

	footer ul.legal{
		justify-content:right;
	}
}