/*!
* Optima Theme - Base Elements
* Version 1.0
*/


/*
.modal {
	 display: block;
  opacity: 1;
	overflow: hidden;
	position: fixed;
	top: 34px;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1050;
	-webkit-overflow-scrolling: touch;
	outline: 0;
}
*/




/*Basic Page Elements******************/

/* jogging font fix */

html {
font-feature-settings: 'lnum' 1;
}

html {
  overflow-x: hidden;
}

html {
  height: auto;
}

html,
body {
	font-weight: 300;
  font-size: 16px;
	line-height: 20px;
}


body {
	overflow-y: scroll;
	overflow-x: hidden;
}

body::-webkit-scrollbar {
	display: none;
}

body {
	-ms-overflow-style: none;
}

a,
input,
.tab-sm i,
.header,
.header .header-inner,
.header .cta .phone,
.header .cta a,
.sb-module *:not(.element-item):not(.element-item):not(.element-item):not(.slick-slide):not(.slick-list):not(.slick-track):not(.module-mini-cta):not([class*='col-']),
/*:not(.element-item):not(.element-item a):not(.element-item img)*/
.sb-gallery div,
*:before,
*:after,
.mobile-nav.open,
.mobile-nav.closed {
	-webkit-transition: all .35s ease-in;
	-moz-transition: all .35s ease-in;
	transition: all .35s ease-in;
  text-decoration: none;
}

.embed a[data-sb-event="link-call"],
.content a[data-sb-event="link-call"],
.sb-module a[data-sb-event="link-call"] {
  white-space: nowrap;
}

/*custom dropdown motion -- desktop*/
.header .nav .dropdown-wrapper,
.header .nav .dropdown-wrapper li {
  -ms-transition:transform 0.65s cubic-bezier(0.2,.8,.25,1),opacity 0.65s cubic-bezier(0.2,.8,.25,1);
  transition:transform 0.65s cubic-bezier(0.2,.8,.25,1),opacity 0.65s cubic-bezier(0.2,.8,.25,1);
  -webkit-transition: transform 0.65s cubic-bezier(0.2,.8,.25,1),opacity 0.65s cubic-bezier(0.2,.8,.25,1);
}

.sb-content a {
  text-decoration: underline;
}

h1,
h2,
h3 {
	font-weight: 300;
	letter-spacing: 0px;
  line-height: 1.1em!important;
}

@media screen and (min-width:949px) {
body:not(#page-home) .body .sb-content:not(.text--center) .content h1,
body:not(#page-home) .body .sb-content:not(.text--center) .content h2,
body:not(#page-home) .body .sb-content:not(.text--center) .content h3 {
	margin-left: auto!important;
	margin-right: auto!important;
	text-align: left!important;
}
}

p {
	font-size: 16px!important;
	line-height: 1.5;
	margin-bottom: 20px;
}

aside {
	padding: 50px 0;
}

button:focus {
	outline: none;
}

.content ul li {
  list-style-type: disc;
}

.content-intro ul li,
.sb-feature-about-row ul li,
.sb-feature-about2-row ul li { 
  list-style-type: none!important;
}

.body {
  background: transparent;
}

/* HR bars */


/* Global <hr> styling */
hr {
  display: block;
  height: 1px;              /* line thickness */
  border: 0;                /* remove default groove */
  background: currentColor; /* inherits text color */
  opacity: 0.15;            /* soften the line */
  margin: 35px 0px 35px;           /* vertical space (mobile) */
}

/* More breathing room on larger screens */
@media (min-width: 768px) {
  hr {margin: 35px 0px 35px;}
}


.carousel .lines,
.sb-module .lines {
	margin: auto;
	width: 70px;
	position: relative;
	margin-top: 15px!important;
	border-top: 2px solid;
  border-bottom: 0px;
  border-left: 0px;
  border-right: 0px;
}

/* HR bars */
.gallery-header:before {
	margin: auto;
	width: 70px;
	position: relative;
	margin-top: 15px;
	border-top: 0;
  border-bottom: 2px solid;
  border-left: 0px;
  border-right: 0px;
}

/* HR bars -- hide by default 
*/
.carousel .lines,
.sb-module .lines,
.gallery-header:before {
  display: none;
}

.form-inner p.submit {
	text-align: right;
	padding-top: 20px!important;
}

.posts .post {
	text-align: left;
}

.no-gutters > [class*='col-'] {
	padding-right:0;
	padding-left:0;
}

/*
.no-padding {
  padding: 0px!important;
}
*/

.col-no-padding {
  padding: 0px!important;
}

iframe {
  vertical-align: bottom;
} 

/* Style for the thin arrow */
.svg-icon-arrow-right {
  content: '';
  display: inline-block;
  width: 10px; /* Adjust arrow width */
  height: 10px; /* Adjust arrow height */
  border-top: 2px solid #e2c571;
  border-right: 2px solid #e2c571;
  transform: rotate(45deg);
  margin-right: 5px; /* Adjust spacing as needed */
}

.content img,
.headline img,
.post .entry img {
	border: 0px!important;
}

 body.page-app [class*="elfsight-"] {
 display: none!important;
}


/* video scaling 
-------------------------------------------------*/



/* transition speeds
-------------------------------------------------*/

a,
input,
.tab-sm i,
a i,
.header,
.header .header-inner,
#header-logo,
.header .nav,
.toolbar-links,
.header .cta .phone,
.header .cta a,
.sb-module *:not(.slick-slide):not(.slick-list):not(.slick-track):not(.module-mini-cta):not([class*='col-']),
.sb-gallery div,
*:before,
*:after,
#logoimg,
.nav .dropdown-wrapper,
.header-inner > .row,
.sb-feature-cta-col-row .sb-col,
.sb-feature-cards1-row .sb-col,
.sb-feature-cards2-row .sb-col,
.sb-feature-services-row .sb-col,
.hamburger-box,
.module-mini-cta [class*='col-'] a,
.tint:hover:before,
.sb-feature-services-row .sb-col-wrap:before {
	-webkit-transition: all .45s cubic-bezier(0.25, 1, 0.33, 1)!important;
	-moz-transition: all .45s cubic-bezier(0.25, 1, 0.33, 1)!important;
	transition: all .45s cubic-bezier(0.25, 1, 0.33, 1)!important;
}


.header {
  display: none;
}

/*
.toolbar-links [class*='fcol-1'] .box-nested {
	display: flex!important;
}
*/


/* SET BUTTONS -- BTN 2*/
/*==================================================================================*/
.has-btn-lg .tool-links a.btn.btn-reset,
a.btn,
.btn,
a.btn.btn-default,
.btn.btn-default,
.carousel p a,
body.page-feed-post .entry a,
.google-map-directions,
.module-form input[type=submit],
.has-footer-alternate1 .footer .nav .primary-link:last-child > a {
	cursor: pointer;
	outline: none;
	border-radius: 0px;
	line-height: 20px;
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0px;
	border: 1px solid;
	width: 100%;
	letter-spacing: 0px!important;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.0), 0 1px 1px rgba(0,0,0,.0);
	/*	transform: scale(1);*/
	transform: translateY(0px);
	box-shadow: 0px 6px 12px 5px rgba(0, 0, 0, 0.00);
}  


.btn-cta,
a.btn,
.btn,
a.btn.btn-default,
.btn.btn-default,
.carousel p a,
.page-feed-post .entry a,
.google-map-directions,
.gallery-header,
.sb-feature-cards1-row a,
.module-form input[type=submit],
.footer .footer-box a,
.has-nav-lastlink .nav .primary-link:last-child > a,
.sb-feature-services-row .sb-content a,
.module-form input:not([type=checkbox]),
.module-form input:not([type=radio]) {
	font-weight: 600!important;
}


.footer .footer-box a {
	font-weight: 300!important;
}



a.btn:hover,
.btn:hover,
a.btn.btn-default:hover,
a.btn.btn-default:active,
.btn-default:hover,
.btn-default:active,
.btn-default:focus,
.btn-default:active:focus,
.btn-default:active:hover,
.google-map-directions:hover,
.gallery-header:hover {
	text-decoration: none!important;
	opacity: initial;
	/*	transform: scale(1.03);*/
	transform: translateY(-4px);
	box-shadow: 0px 5px 10px 5px rgba(0, 0, 0, 0.00);
}

@media (min-width: 768px) {
a.btn,
.btn,
a.btn.btn-default,
.btn.btn-default,
.carousel p a,
body.page-feed-post .entry a {
	width: inherit;
	}  
} 

@media (min-width: 768px) {
a.btn,
.btn,
a.btn.btn-default,
.btn.btn-default,
.carousel p a,
body.page-feed-post .entry a {
	width: inherit;
	padding: 6px 25px 6px 25px;
	}  
} 




/*=======================x===========================================================*/
/* SET btn padding */
/*==================================================================================*/

a.btn,
.btn,
a.btn.btn-default,
.btn.btn-default,
.carousel p a,
body.page-feed-post .entry a,
.google-map-directions,
#page-home .gallery-header,
.module-form input[type=submit] {
 padding: 12px 30px 12px 30px;
} 

.carousel p a {
 padding: 16px 30px 16px 30px!important;
} 


/*=======================x===========================================================*/
/* SET btn group wrap -- 2 or more btns */
/*==================================================================================*/

.btn-row-group {
	text-align: center;
}

@media screen and (min-width: 949px) {
.btn-row-group {
	text-align: center;
	overflow: visible;
	position: relative;
	left: 0px;
	right: 0px;
	}
}

.btn-row-group {
	text-align: left;
}

@media screen and (max-width:948px) {
.btn-row-group .btn:nth-child(1),
.btn-row-group .btn:nth-child(2),
.btn-row-group .btn:nth-child(3),
.btn-row-group .btn:nth-child(4) {
	display: block;
	}
	
.btn-row-group .btn:nth-child(1) {
	margin-top: 1.7rem!important;
	}
}

@media screen and (max-width:948px) {
.btn-row-group .btn:nth-child(1){
	margin-bottom: 0rem!important;
	}
	
.btn-row-group .btn:nth-child(1) {
	margin-top: 1.7rem!important;
	}
.btn-row-group .btn:nth-child(2) {
	margin-top: 1.7rem!important;
	}
.btn-row-group .btn:nth-child(3) {
	margin-top: 1.7rem!important;
	}
.btn-row-group .btn:nth-child(n+4) {
	margin-top: 1.7rem!important;
	}
}


@media screen and (min-width: 948px) {
.btn-row-group .btn {
	display: inline-block;
	margin-top:  1.5rem!important;
	}
.btn-row-group .btn:nth-child(1) {
	margin-top:  1.5rem!important;
	margin-right: .6rem!important;
	}
.btn-row-group .btn:nth-child(2) {
	margin-top:  1.5rem!important;
	margin-right: .6rem!important;
}
.btn-row-group .btn:nth-child(3) {
	margin-top:  1.5rem!important;
	margin-right: .6rem!important;
}
.btn-row-group .btn:nth-child(n+4) {
	margin-top:  1.5rem!important;
	margin-right: .6rem!important;
	}
.btn-row-group:has(> .btn:only-child) > .btn {
  /* styles that apply only when one button exists */
	margin-top:  0rem!important;
}	
}

@media screen and (min-width: 949px) {
.sb-contactform-row .btn-row-group .btn {
	margin-left: .0rem!important;
	}
}

@media screen and (max-width:948px) {
body:not(#page-home) .btn-row-group a {
	margin: auto;
	}
}

/* base spacing + room for icon */
body:not(#page-home) .btn-row-group .btn {
  display: inline-block;
  margin-top: 1.5rem !important;
  position: relative;
  padding-right: 2.25em!important; /* space for icon */
}


@media screen and (min-width: 949px) {
body:not(#page-home).has-btn-lg :not(.sbuilder) .btn-row-group a.btn:not(.btn-reset):not([class*='tb-']) {
	padding-right: 75px!important;
}
body:not(#page-home).has-btn-lg :not(.sbuilder) .btn-row-group a.btn:not(.btn-reset):not([class*='tb-']):after {
	padding-left: 55px!important;
	display: inline-block;
	}
}

/* default: double chevron (ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â‚¬Å¾Ã‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¾ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â‚¬Å¾Ã‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬Ãƒâ€¦Ã‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Â ÃƒÂ¢Ã¢â€šÂ¬Ã¢â€žÂ¢ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¡ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡Ãƒâ€šÃ‚Â¬ÃƒÆ’Ã¢â‚¬Â¦Ãƒâ€šÃ‚Â¾ÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…Â¡ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â¢) */
body:not(#page-home) .btn-row-group .btn::after {
  content: "";
  position: absolute;
  right: .85em;
  top: 50%;
  width: 1.05em;
  height: 1.05em;
  transform: translateY(-50%);
  pointer-events: none;
  background: currentColor;

  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4 L12 12 L4 20 Z M12 4 L20 12 L12 20 Z'/%3E%3C/svg%3E");
		  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 4 L12 12 L4 20 Z M12 4 L20 12 L12 20 Z'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  -webkit-mask-position: center;   mask-position: center;
  -webkit-mask-size: contain;      mask-size: contain;
}

/* TEL button: right-aligned, flipped phone icon */
body:not(#page-home) .btn-row-group .btn[href^="tel:"]{
  position: relative;
  padding-right: 2.1em;
}

body:not(#page-home) .btn-row-group .btn[href^="tel:"]::after{
  content: "";
  position: absolute;
  right: 0.75em;
  top: 50%;
  transform: translateY(-50%) scaleX(-1);
  width: 1.1em;
  height: 1.1em;
  background: currentColor;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.62 10.79c2.16 3.5 5.09 6.43 8.59 8.59l2.8-2.8c.27-.27.67-.36 1.02-.24 1.12.37 2.32.57 3.57.57.55 0 1 .45 1 1V22c0 .55-.45 1-1 1C10.4 23 1 13.6 1 2c0-.55.45-1 1-1h3.09c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.24 1.02l-2.8 2.8z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6.62 10.79c2.16 3.5 5.09 6.43 8.59 8.59l2.8-2.8c.27-.27.67-.36 1.02-.24 1.12.37 2.32.57 3.57.57.55 0 1 .45 1 1V22c0 .55-.45 1-1 1C10.4 23 1 13.6 1 2c0-.55.45-1 1-1h3.09c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.24 1.02l-2.8 2.8z'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}

/* keep the phone icon mirrored even on hover/focus */
body:not(#page-home) .btn-row-group .btn[href^="tel:"]:hover::after,
body:not(#page-home) .btn-row-group .btn[href^="tel:"]:focus::after{
  transform: translateY(-50%) scaleX(-1);
}


/* hover/focus nudge */
body:not(#page-home) .btn-row-group .btn:hover::after,
body:not(#page-home) .btn-row-group .btn:focus-visible::after {
  transform: translateY(-50%) translateX(2px);
}


/* btn default: map pin icon  */
body:not(#page-home) .btn-row-group.locations .btn::after {
  content: "";
  position: absolute;
  right: .85em;
  top: 50%;
  width: 1.05em;
  height: 1.05em;
  transform: translateY(-50%);
  pointer-events: none;
  background: currentColor;

  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='black' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C8.14 2 5 5.14 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.86-3.14-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5S10.62 6.5 12 6.5s2.5 1.12 2.5 2.5S13.38 11.5 12 11.5z'/%3E%3C/svg%3E");
		  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='black' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C8.14 2 5 5.14 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.86-3.14-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5S10.62 6.5 12 6.5s2.5 1.12 2.5 2.5S13.38 11.5 12 11.5z'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
  -webkit-mask-position: center;   mask-position: center;
  -webkit-mask-size: contain;      mask-size: contain;
}


body:not(#page-home) .btn-row-group.locations .btn::before {
 display: none;
}


/* a tag default: map pin icon */

a.map{
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: .5em;              /* space between icon and text */
  color: inherit;         /* or set a color here */
  text-decoration: none;
  padding-left: 0;        /* not using absolute icon, so no extra padding */
}

/* pin icon (decorative) */
a.map::before{
  content: "";
  display: inline-block;
  width: 1.05em;
  height: 1.25em;
  background: currentColor;

  /* SVG mask: map pin with a small inner dot */
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2c-3.866 0-7 3.134-7 7 0 5.25 7 13 7 13s7-7.75 7-13c0-3.866-3.134-7-7-7zm0 10.2a3.2 3.2 0 1 1 0-6.4 3.2 3.2 0 0 1 0 6.4z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2c-3.866 0-7 3.134-7 7 0 5.25 7 13 7 13s7-7.75 7-13c0-3.866-3.134-7-7-7zm0 10.2a3.2 3.2 0 1 1 0-6.4 3.2 3.2 0 0 1 0 6.4z'/%3E%3C/svg%3E");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  vertical-align: middle;
  transform: translateY(.04em);    /* tiny optical nudge */
  margin-right: 3px;
}

/* optional hover nudge */
a.map:hover::before{ transform: translateY(.04em) translateX(1px); }

/* examples: theme on scroll or section variants */
a.map--teal{ color:#4ad1c8; }                 /* teal icon/text */
body.logoshow a.map{ color:#000; }            /* turn black when .logoshow is on the body */



	
/* wide option */
.btn-row-group.wide a{
	width: 100%!important;
	text-align: center!important;
	display: block;
}

@media screen and (max-width:948px) {
body:not(#page-home) .btn-row-group br {
	display: none!important;
		}
	}

/* single col option */

@media screen and (min-width: 949px) {
.btn-row-group.list {
	width: 60%;
	margin: auto;
	display: inline-block;
}
}

.btn-row-group.list a {
	width: 100%;
	white-space: normal;
}

@media screen and (min-width: 949px) {
.btn-row-group.inline {
	display: flex;
	align-items: center;
	gap: 10px; /* Optional spacing between elements */
}
}

.btn-row-group.inline a {
	white-space: normal;
}


/* has icons option */

.has-icons .btn {
  display: inline-block;
  align-items: center;
  padding: 16px 12px;
  text-decoration: none;
  color: #333;
}

.has-icons .btn::before {
  font-family: "Font Awesome 5 Pro";
  font-weight: 100; 
  margin-right: 8px; 
}

.has-icons .btn:nth-child(1)::before { content: "\f5da"; } /* Tooth */
.has-icons .btn:nth-child(2)::before { content: "\f5d9"; } /* Dental Hygiene */
.has-icons .btn:nth-child(3)::before { content: "\f5db"; } /* Dental Floss */
.has-icons .btn:nth-child(4)::before { content: "\f5d1"; } /* Toothbrush */


.has-icons .btn:hover {
  background-color: #f0f0f0; 
}


/* has img src in each btn */

body:not(#page-home) .btn-row-group.images {
	display: flex !important;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 12px; /* space between image and text */
	border-radius: 50px !important;
	position: relative;
	white-space: normal;
}

body:not(#page-home) .btn-row-group.images .btn img {
	display: block;
	max-width: 60px;
	height: auto;
	margin: 0 auto;
}



/*==================================================================================*/
/* SET DEFAULT BTN CTA*/
/*==================================================================================*/

.btn-cta {
	border: 1px solid;
	display: inline-block!important;
	border-radius: 0px!important;
	vertical-align: middle;
	line-height: 20px;
	margin: auto;
	/* margin-left: auto; */
	text-transform: capitalize!important;
	float: left!important;
	width: 50%!important;
	padding: 4px 4px 4px 4px!important;
	float: left!important;
	font-size: 12px!important;
}

@media screen and (min-width:949px) {
.btn-cta {
	padding: 10px 20px 10px 20px!important;
	width: 60%!important;
	float: none!important;
	width: inherit!important;
	font-size: 17px!important;
	}
}

.btn-cta:hover {
	text-decoration: none;
}

.btn-cta i {
	margin-left: 0px;
	margin-right: 6px;
}



/*==================================================================================*/
/* lists */
/*==================================================================================*/

/* SET LIST ITEM TEXT SIZE */

.list--check .list-check > ul {
	padding-left: 25px;
}


@media screen and (min-width:949px) {
.content-intro ul li ,
.sb-feature-about-row ul li,
.sb-feature-about2-row ul li {
	position: relative;
	  margin-left: 0px;
}

.text--left .content-intro ul a:before,
.text--left .feature-about ul a:before,
.text--left .feature-about2 ul a:before,
.sb-feature-about-row ul a:before,
.sb-feature-about2-row ul a:before {
	margin: 0px 10px 0px 0px;
	content: '';
	position: absolute;
	right: 0%;
	top: 50%;
	transform: translateY(-50%);
	width: 30px;
	content: url('data:image/svg+xml;utf8,<svg width="38" height="16" viewBox="0 0 38 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 7C0.447715 7 0 7.44772 0 8C0 8.55228 0.447715 9 1 9V7ZM37.2125 8.70711C37.6031 8.31658 37.6031 7.68342 37.2125 7.29289L30.8486 0.928932C30.4581 0.538408 29.8249 0.538408 29.4344 0.928932C29.0438 1.31946 29.0438 1.95262 29.4344 2.34315L35.0912 8L29.4344 13.6569C29.0438 14.0474 29.0438 14.6805 29.4344 15.0711C29.8249 15.4616 30.4581 15.4616 30.8486 15.0711L37.2125 8.70711ZM1 9H36.5054V7H1V9Z" fill="currentColor"></path></svg>')!important;
}
}


@media (min-width: 949px) {
.list--check .list-check > ul
	padding-left: 50px;
	display: block;
	}
}

.list--check .list-check > ul > li {
	overflow: visible;
	}
}

.list--check .list-check > ul > li {
	left: -10px;
	display: block;
	padding-left: 0px!important;
	}

.list--check .list-check > ul > li {
	position: relative;
	padding-left: 5px; /* Space for checkmark */
	}

.list--check .list-check > ul > li::before {
	content: url("data:image/svg+xml,%3Csvg%20width='19'%20height='14'%20viewBox='-2%20-2%2027%2021'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M21.7562%201.15853C11.7776%2011.0038%206.78824%2015.9264%206.78824%2015.9264C6.78824%2015.9264%204.79251%2013.9574%200.801056%2010.0193'%20stroke='currentColor'%20stroke-width='3.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E");
	position: absolute;
	left: -30px;
	top:20px;
	transform: translateY(-50%);
	margin-right: 0px; /* Adjust as needed for visual spacing */
	color: white; /* Icon color controlled here */
	padding-left: 0px;
}

@media screen and (min-width: 949px) {
.list--check .list-check > ul > li::before {
	left: -30px;
	top: 18px;
	margin-right: 10px;
}
	}	
	
	@media screen and (min-width: 949px) {
	.text--white.list--check .list-check > ul > li::before {

	}
	}	

.list--check .list-check > ul > li:first-child::before {
	color: black; /* Icon color controlled here for .black variant */

}

.list--check.sb-bold ul li {
	font-weight: 600;
	}
}


.list--check .list-check > ul > li::before {
	content: url("data:image/svg+xml,%3Csvg width='23' height='17' viewBox='0 0 23 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.7562 1.15853C11.7776 11.0038 6.78824 15.9264 6.78824 15.9264C6.78824 15.9264 4.79251 13.9574 0.801056 10.0193' stroke='currentColor' stroke-width='1.18486' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

}

@media (min-width: 949px) {
.list--check .list-check > ul > li {
	left: -10px;
	display: block;
	padding-left: 0px!important;
	}
}



@media (min-width: 949px) {
.list--check .list-check > ul > li a {
	padding: 0;
	text-transform: capitalize!important;
	letter-spacing: 0px;
	font-weight: normal!important;
	max-width: 100%!important;
	}
}

body:not(.page-app) .list--check .content-intro.list-check > ul a:before {
	display: none;
}



.list--check [class*="list-cols"] .list-check > ul a {
	letter-spacing: 0px;
	font-size: 18px !important;
	display: inline;
	text-transform: uppercase;
	font-weight: 600!important;
	padding: 0px;
}


.list--check [class*="list-cols"] .list-check > ul a:before {
	display: none;
}



/* SET LIST ITEM numbering */

.list-numbers ul a:before { 
	display: none!important;
}

.list-numbers {
  padding-left: 20px;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

[class*='row'] .list-numbers li {
  position: relative;
  padding-left: 110px!important;
  padding-bottom: 50px!important;
}

.list-numbers li::before {
  content: "";
  position: absolute;
  left: 20px;
  top: 0%;
  transform: translateY(10%);
  width: 50px;
  height: 50px;
  border: 3px solid #fff;
  border-radius: 50%;
  color: #fff;
  text-align: center;
  font-size: 25px;
  line-height: 45px;
  font-weight: 100!important;
  font-family: arial;
}

.list-numbers li:nth-child(1)::before {
  content: "1";
}

.list-numbers li:nth-child(2)::before {
  content: "2";
}

.list-numbers li:nth-child(3)::before {
  content: "3";
}

.list-numbers li:nth-child(4)::before {
  content: "4";
}

.list-numbers li:nth-child(5)::before {
  content: "5";
}

.list-numbers li:nth-child(6)::before {
  content: "6";
}

@media (max-width: 767px) {
	
[class*='row'] .list-numbers li {
  position: relative;
  padding-left: 90px!important;
  padding-bottom: 50px!important;
	border-bottom: 0px;
}
	
  .list-numbers li::before {
  content: "";
  position: absolute;
  left: 20px;
  top: 0%;
  transform: translateY(10%);
  width: 50px;
  height: 50px;
  border: 3px solid #fff;
  border-radius: 50%;
  color: #fff;
  text-align: center;
  font-size: 25px;
  line-height: 45px;
  font-weight: 100!important;
  font-family: arial;
  }
  
  .list-numbers li strong a {
	display: inline;
  }
	
  .list-numbers li strong a:before {
	display: none;  
  }
	
}

@media (min-width: 949px) {
.list-cols ul,
.list-check.list-cols ul {
	  columns: 2;
	  -webkit-columns: 2;
	  -moz-columns: 2;
	  column-gap: 90px; /* Adjust the gap between the columns as needed */
	}

@media (min-width: 949px) {
.list-cols3 ul,
.list-check.list-cols3 ul {
	  columns: 3;
	  -webkit-columns: 3;
	  -moz-columns: 3;
	  column-gap: 40px; /* Adjust the gap between the columns as needed */
	}

		
[class*="list-cols"] li,
[class*="list-cols"] li {
	  break-inside: avoid;
	  line-height: 30px;
	  padding-bottom: 10px!important;
	}
	
	[class*="list-cols"]  li::before {
	position: relative!important;
	left: 0px!important;
	top: 0px!important;
		}
}


.content-intro li,
.sb-feature-about-row li,
.sb-feature-about2-row li {
	padding: 0px!important;
}

.content-intro li a,
.sb-feature-about-row li a,
.sb-feature-about2-row li a {
	font-weight: 600!important;
}

.sb-feature-about-row li a,
.sb-feature-about2-row li a,
.sb-feature-about-row li strong a,
.sb-feature-about2-row li strong a {
	font-size: 16px!important;
	line-height: 22px!important;
	font-weight: 500!important;
	display: block;
	text-align: left!important;
	text-transform: capitalize;
	letter-spacing: 0px;
	padding: 12px 0px;
	overflow: hidden;
	max-width: 100%;
	margin: 0px!important;
}

@media screen and (min-width:949px) {

.sb-feature-about-row li a,
.sb-feature-about2-row li a,
.sb-feature-about-row li strong a,
.sb-feature-about2-row li strong a {
	font-size: 20px!important;
	line-height: 32px!important;
	font-weight: 500!important;
	max-width: 85%;
	width: 100%;
	margin: 0px!important;
	max-width: 83%;
}
}
	
.sb-content-intro-row li span,
.sb-feature-about-row li span,
.sb-feature-about2-row li span {
	text-transform: capitalize!important;
	letter-spacing: 0px!important;
}

.sb-content-intro-row ul,
.sb-feature-about-row ul,
.sb-feature-about2-row ul {
	margin-left: 0px!important;
	/* text-align: left!important; */
	max-width: 85vw;
}


/* simple UL→LI grid, stacks on mobile, 2-up as space allows */

.list-grid-4 ul {
  display:flex;
  flex-wrap:wrap;
  gap:24px;
  list-style:none;
  padding:0;
  margin:32px 0 0;
}
.list-grid-4 ul >li{
  flex:1 1 320px;
  min-width:280px;
}
.list-grid-4 ul h2{ margin:0 0 8px; font-size:1.25em; }
.list-grid-4 ul p{ margin:0; line-height:1.6; }



@media screen and (max-width:948px) {
.text--left .sb-content-intro-row ul,
.text--left .sb-content-intro-row ul a,
.text--left .sb-feature-about-row ul a,
.text--left .sb-feature-about2-row ul a,
.sb-feature-about-row ul a,
.sb-feature-about2-row ul a {
	font-size: 16px;
	font-weight: 500!important;
	text-align: left!important;
	/* margin: 0px!important; */
	padding: 16px 0;
	display: block;
	/* line-height: 22px!important; */
}
}

.content-intro ul li ,
.sb-feature-about-row ul li,
.sb-feature-about2-row ul li,
.text--center:not(.sb-content-intro):not(.sb-feature-about):not(.sb-feature-services) li {
	margin-bottom: 15px;
	border-bottom: 1px solid #ededed;
		position: relative;
		  margin-left:0px;
}


.content-intro ul li ,
.sb-feature-about-row ul li,
.sb-feature-about2-row ul li,
.text--center:not(.sb-content-intro):not(.sb-feature-about):not(.sb-feature-services) li {
	margin-bottom: 10px;
	border-bottom: 1px solid rgb(206 206 206 / 40%);
	position: relative;
	margin-left:0px;
}

.content-intro ul a:before,
.text--left .content-intro ul a:before,
.text--left .feature-about ul a:before,
.text--left .feature-about2 ul a:before,
.sb-feature-about-row ul a:before,
.sb-feature-about2-row ul a:before{
	margin: 0px 10px 0px 0px;
	text-decoration: none;
	position: absolute;
		content: '';
	position: absolute;
	right: 0px;
	top: 50%;
	transform: translateY(-50%);
	width: 30px;
	content: url('data:image/svg+xml;utf8,<svg width="38" height="16" viewBox="0 0 38 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 7C0.447715 7 0 7.44772 0 8C0 8.55228 0.447715 9 1 9V7ZM37.2125 8.70711C37.6031 8.31658 37.6031 7.68342 37.2125 7.29289L30.8486 0.928932C30.4581 0.538408 29.8249 0.538408 29.4344 0.928932C29.0438 1.31946 29.0438 1.95262 29.4344 2.34315L35.0912 8L29.4344 13.6569C29.0438 14.0474 29.0438 14.6805 29.4344 15.0711C29.8249 15.4616 30.4581 15.4616 30.8486 15.0711L37.2125 8.70711ZM1 9H36.5054V7H1V9Z" fill="currentColor"></path></svg>')!important;

}



.text--left .content-intro ul a:before,
.text--left .feature-about ul a:before,
.text--left .feature-about2 ul a:before,
.sb-feature-about-row ul a:before,
.sb-feature-about2-row ul a:before{

}


@media screen and (min-width:949px) {
.content-intro ul li ,
.sb-feature-about-row ul li,
.sb-feature-about2-row ul li {
	position: relative;
	  margin-left: 0px;
}

.text--left .content-intro ul a:before,
.text--left .feature-about ul a:before,
.text--left .feature-about2 ul a:before,
.sb-feature-about-row ul a:before,
.sb-feature-about2-row ul a:before { 
	margin: 0px 10px 0px 0px;
	content: '';
	position: absolute;
	right: 0%;
	top: 50%;
	transform: translateY(-50%);
	width: 30px;
	transition: right 0.3s ease; /* Transition for smooth animation */
	content: url('data:image/svg+xml;utf8,<svg width="38" height="16" viewBox="0 0 38 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 7C0.447715 7 0 7.44772 0 8C0 8.55228 0.447715 9 1 9V7ZM37.2125 8.70711C37.6031 8.31658 37.6031 7.68342 37.2125 7.29289L30.8486 0.928932C30.4581 0.538408 29.8249 0.538408 29.4344 0.928932C29.0438 1.31946 29.0438 1.95262 29.4344 2.34315L35.0912 8L29.4344 13.6569C29.0438 14.0474 29.0438 14.6805 29.4344 15.0711C29.8249 15.4616 30.4581 15.4616 30.8486 15.0711L37.2125 8.70711ZM1 9H36.5054V7H1V9Z" fill="currentColor"></path></svg>')!important;

}

.text--left .content-intro ul a:hover:before,
.text--left .feature-about ul a:hover:before,
.text--left .feature-about2 ul a:hover:before,
.sb-feature-about-row ul a:hover:before,
.sb-feature-about2-row ul a:hover:before {
	right: -5px; /* Adjust the value as needed for the desired shift */
}
	
	
.content-intro ul li br,
	.sb-feature-about-row ul li br,
	.sb-feature-about2-row ul li br {
		display: none;
}
	
.sb-content-intro-row ul [style="font-size:16px;"],
	.sb-feature-about-row ul [style="font-size:16px;"],
	.sb-feature-about2-row ul [style="font-size:16px;"] {
	margin-top: 2px;
	display: inline-block;
	line-height: 22px;


}
}

@media (min-width: 768px) {
.sb-content-intro-row ul,
.sb-feature-about-row ul,
.sb-feature-about2-row ul {
	margin-left: 0px!important;
	text-align: left!important;
	width: 100%;
}

.content-intro li {
	font-size: 16px!important;
	line-height: 30px!important;
	font-weight: 300!important;
	}

.content-intro li a,
.sb-feature-about-row li a,
.sb-feature-about2-row li a {
	font-size: 20px!important;
	line-height: 32px!important;
	padding: 8px 0px;
}
}


.sb-content-intro-row .list-compact ul,
.sb-feature-about-row .list-compact ul,
.sb-feature-about2-row .list-compact ul {
	margin: auto!important;
	text-align: left!important;
	width: 90%;
	padding-top: 20px;
}

.content-intro.list-compact li a,
.feature-about2.list-compact li a,
.feature-about.list-compact li a {
	font-size: 14px!important;
	line-height: 16px!important;
	font-weight: 600!important;
	padding: 5px 0px;

}
.content-intro.list-compact li,
.feature-about2.list-compact li,
.feature-about.list-compact li{
	padding: 0px 0px 15px!important;
	margin: 10px 0px!important;
}

@media (min-width: 768px) {
	
.sb-content-intro-row .list-compact ul,
.sb-feature-about-row .list-compact ul,
.sb-feature-about2-row .list-compact ul {
	padding-top: 10px;
	margin-left: 0px!important;
	text-align: left!important;
	width: 100%;
}

.content-intro.list-compact li,
.feature-about2.list-compact li,
.feature-about.list-compact li{
	padding: 0px 0px 10px!important;
	margin: 15px 0px!important;
}
}

.content-intro.list-compact li a,
.feature-about2.list-compact li a,
.feature-about.list-compact li a {
	font-size: 20px!important;
	line-height: 22px!important;
	font-weight: 400!important;
	padding: 5px 0px;
}
}


/* Text Alignment Presets ******************/

.text--center,
.text--center p,
.text--center h1,
.text--center h2,
.text--center h3,
.text--left,
.text--left h1,
.text--left h2,
.text--left h3,
.text--left img,
.text--left figure,
.text--left div,
.text--left a,
.text--center .asset {
  text-align: center!important;
}

.text--right,
.text--right p,
.text--right h1,
.text--right h2,
.text--right h3,
.text--right img,
.text--right figure {
  text-align: center!important;
}

@media (min-width:1001px) {
.text--center,
.text--center p,
.text--center h1,
.text--center h2,
.text--center h4,
.text--center h3,
.text--center figure,
.text--center .asset {
  text-align: center!important;
  }
}

.text--center h3::after {
  left: 50%!important;
  transform: translateX(-50%);
}

.text--center .slick-slide img {
	display: inline-block;
}

.text--center a {
  margin-left: auto!important;
  margin-right: auto!important;
}

.text--center a {
  margin-left: auto!important;
  margin-right: auto!important;
}

.text--center .tab-sm {
	text-align: center;
}

.text--left a {
  margin-left: auto!important;
  margin-right: auto!important;
}

.text--right a {
  margin-left: auto!important;
  margin-right: auto!important;
}

@media (min-width:1001px) {
.sb-module.text--center .content a.map,
.text--center a {
  margin-left: auto!important;
  margin-right: auto!important;
  }	
}

.sb-feature-cards1.text--center .cta-content {
	display: block;
}



@media (min-width:1001px) {
.text--left,
.text--left p:not(.sb-formfield),
.text--left h1,
.text--left h2,
.text--left h3,
.text--left img,
.text--left figure,
.text--left div,
.text--left .content div,
.text--left:not(.sb-gallery-row):not(.sb-image-row) div,
.text--left .sb-module.sb-hoursofoperation .headline h2,	
.text--left:not(.sb-gallery-row) a:not(.btn) {
  text-align: left!important;
  }
}

@media (min-width:1001px) {
.text--right,
.text--right p,
.text--right h1,
.text--right h2,
.text--right h3,
.text--right img,
.text--right figure,
.text--right .content div,
.text--right a {
  text-align: right!important;
  }
}

@media (min-width:1001px) {
.text--right,
.text--right p,
.text--right h1,
.text--right h2,
.text--right h3,
.text--right img,
.text--right figure {
  text-align: right!important;
  }
}

.text--left ul:not(.mod-errorlist):not([id^="id_"]) {
  list-style: none;
  margin-left: 0px;
  margin-right: 0px;
  text-align: left;
}

.text--left ul:not(.mod-errorlist):not([id^="id_"]) li {
  list-style: none;
	margin-bottom: 20px;
}

@media (min-width:1001px) {
.text--left ul:not(.mod-errorlist):not([id^="id_"]) {
  list-style-type: disc;
  margin: 2em;
  }
}

.sb-feature-plans-row.text--center ul {
  text-align: left!important;

}

.text--center ul {
  padding-top: 20px;
  text-align: center!important;
  margin-left: 0em;
}

.sb-feature-plans.text--center ul {
  padding-top: 0px;
  text-align: left!important;
}

.text--center li {
	/* list-style-position: inside; */
}

.text--center i {
  display: inline-block;
  text-align: center;
  margin-left: 5px;
  position: relative;
}

.module-popup.text-center * {
	text-align: center!important;
}

.text-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px; /* space between columns */
}

@media (max-width: 768px) {
.text-cols {
	grid-template-columns: 1fr; /* stack on small screens */
  }
}


/*Module White Text Coloring*/
/*=========================================*/


body:not(.page-app) .text--white,
body:not(.page-app) .text--white .content a:not(.btn),
body:not(.page-app) .text--white p,
body:not(.page-app) .text--white h1,
body:not(.page-app) .text--white h2,
body:not(.page-app)#page-home .text--white h3,
body:not(.page-app) .text--white h3,
body:not(.page-app) .text--white li,
body:not(.page-app) .text--white li a,
body:not(.page-app) .text--white i:not(.fa),
body:not(.page-app) .text--white span,
body:not(.page-app) .text--white strong,
body:not(.page-app) .text--white blockquote:before {
  color: #fff!important;
}

body:not(.page-app) .text--white .accordion-list li  {
	border-color: rgba(255, 255, 255, 0.5)!important;
}

body:not(.page-app) .text--white .content-intro ul a:before,
body:not(.page-app) .text--white .feature-about ul a:before,
body:not(.page-app) .text--white .feature-about2 ul a:before,
body:not(.page-app) .text--white .sb-feature-about2-row ul a:before,
	body:not(.page-app) .text--white .sb-feature-about-row ul a:before {content: url("data:image/svg+xml,%3Csvg width='40' height='17' viewBox='0 0 40 17' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30.627 16.4258L38.4639 8.58887L30.627 0.751955' stroke='white' stroke-width='1.2'/%3E%3Cpath d='M37.7289 8.59277L0.0351562 8.59277' stroke='white' stroke-width='1.2'/%3E%3C/svg%3E") !important;}


/*app only colors */

/*
body.page-app .text--white .content h3 {
  color: #fff!important;
}

body.page-app .text--white .content {

}
*/

/*global colors*/

.accent--lite-alert {
  background-color: #ffc776;
}


/* center align img on mobile*/

.text--left img{
  float: none;
}
  
  
  
/* ======================================================================
   FLEX GRID v2 (Bootstrap-lite, temporary)
   - Mobile-first
   - Gap controlled at row level
   ====================================================================== */

.flex-row {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  gap: var(--grid-gap, 24px);
}

/* gap modifiers */
.flex-row.gap-none { --grid-gap: 0px; }
.flex-row.gap-sm   { --grid-gap: 12px; }
.flex-row.gap-md   { --grid-gap: 24px; }
.flex-row.gap-lg   { --grid-gap: 40px; }

/* default column behavior */
[class^="sm-col"] {
  flex: 0 0 100%;
  max-width: 100%;
}

/* small breakpoint */
@media (min-width: 768px) {
  .sm-col-1  { flex: 0 0 8.333%;  max-width: 8.333%; }
  .sm-col-2  { flex: 0 0 16.666%; max-width: 16.666%; }
  .sm-col-3  { flex: 0 0 25%;     max-width: 25%; }
  .sm-col-4  { flex: 0 0 33.333%; max-width: 33.333%; }
  .sm-col-5  { flex: 0 0 41.666%; max-width: 41.666%; }
  .sm-col-6  { flex: 0 0 50%;     max-width: 50%; }
  .sm-col-7  { flex: 0 0 58.333%; max-width: 58.333%; }
  .sm-col-8  { flex: 0 0 66.666%; max-width: 66.666%; }
  .sm-col-9  { flex: 0 0 75%;     max-width: 75%; }
  .sm-col-10 { flex: 0 0 83.333%; max-width: 83.333%; }
  .sm-col-11 { flex: 0 0 91.666%; max-width: 91.666%; }
  .sm-col-12 { flex: 0 0 100%;    max-width: 100%; }
}

/* ======================================================================
   FLEX HELPERS (INTENTIONAL + SMALL)
   ====================================================================== */

.flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.flex-between {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.flex-col {
  display: flex;
  flex-direction: column;
}

.flex-wrap {
  flex-wrap: wrap;
}


/* ======================================================================
div wraps
====================================================================== */


.sb-wrap .empty-row {
	  padding-top: 40px!important;
	  padding-bottom: 40px!important;
}


/*CMS Wrapper Resets *******************/
   
   body#page-home .body {
	 z-index: 1;
   }
   
   body:not(#page-home) .body {
	 z-index: 0;
   }
   
   .body.body-static .inside {
	   padding-left: 0px;
	   padding-right: 0px;
   }
   
   body:not(.page-app) .body .wrapper {
	   padding: 0px;
   }
   
   body:not(#page-home) .body .wrapper {
	   padding-top: 70px;
   }
   
   @media (min-width:949px) {
   body:not(#page-home) .body .wrapper {
	   padding-top: 40px;
   }
   }
   
   .body .wrapper {
	   max-width: 100%!important;
   }
   
   .body.body-static .wrapper {
	   max-width: 100%!important;
	   background-color: #fff!important;
   }
   
   .header .wrapper,
   .tabs .wrapper,
   .footer .wrapper,
   .footer .footer-box {
	   padding-top: 0px!important;
	   max-width: 100%;
   }
   
   @media (min-width:949px) {
   .header .wrapper,
   .tabs .wrapper,
   .footer .wrapper {
	 padding-top: 0px;
	 margin: auto;
	   }
   }


.sb-wrap {
	position: relative;
	display: block;
	clear: both;
	z-index: 1;
}




/*Tint Overlay******************/

.sb-wrap.sb--overlay:before {
  content: "";
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0;
	width: 100%;
	z-index: 0;
	margin: 0px;
}

.sb-wrap.sb--overlay:before {
   opacity: .8;
}


/*==================================================================================*/
/* add overlay --sb-wrap && mics wrappers */
/*==================================================================================*/

.container > .micro-cta:before  {
	content: "";
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	z-index: 0;
	margin: 0px;
}

.container > .micro-cta:before {
	 opacity: 1;
}

/* body:not(#page-home) .sb-wrap:after,
body:not(#page-home) .sb-wrap:before {
	z-index: -1;
} */



/*Full-cover-bg******************/

.sb-wrap {
	height: 600px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	/* -webkit-box-align: center; */
	-ms-flex-align: center;
	/* align-items: center; */
	/* -webkit-box-pack: center; */
	-ms-flex-pack: center;
	justify-content: center;
	-ms-flex-wrap: wrap;
	/* flex-wrap: wrap; */
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

@media screen and (min-width:949px) {
.sb-wrap {
  height: 100%;
	}
}

@media screen and (max-width: 767px) {
.sb-wrap {
	background-position: top center!important;
	background-size: cover!important;
  background-attachment: scroll;
  overflow: visible;
	z-index: 0;
  }
}

@media screen and (min-width:768px) {
.body {
  background-position: 50% 0;
	background-size: cover!important;	
  background-attachment: scroll!important;
  background-repeat: no-repeat;
	}
}


.sb-wrap { 
	height: 100%!important;
}

@media screen and (min-width:949px) {
.sb-wrap {
	height: 100%!important;
	}
}



.sb-bg-pattern-row {
	background-size: inherit!important;	
	background-repeat: repeat;
	}

body.page-app .sb-row {
	background-position: top center!important;
	background-size: cover!important;
  background-attachment: scroll;
  overflow: visible;
	z-index: 0;
}

 
 /*==================================================================================*/
	/* row - maxwidth when narrow col active */
	/*==================================================================================*/

/* narrow site column -- but allow 100% */
.micro-cta.maxwidth,
.sb-maxwidth-row,
.sb-module--nomargin.sb-maxwidth-row {
	 margin-left: -50vw!important;
	 left: 50%;
	 width: 100vw;
	 /* margin: -100px; */
	 position: relative;
	 background-position-x: center;
	 background-position-y: center;
	}


.micro-cta.maxwidth .sb-wrap-inner,
.sb-maxwidth-row:not(.sb-fillbox-row) .sb-wrap-inner {
		padding-left: 30px;
		padding-right: 30px;
		width: 100%;
		max-width: 1425px;
		margin: auto;
}

 @media (min-width: 768px) {
.micro-cta.maxwidth .sb-wrap-inner,
.sb-maxwidth-row:not(.sb-fillbox-row) .sb-wrap-inner {
		padding-left: 0px;
		padding-right: 0px;
		width: 100%;
		max-width: 1425px;
	}
}



/* ======================================================================
   FEATURE FLAGS (has-*)
   ----------------------------------------------------------------------
   Body-level switches injected by CMS / templates.
   All flags are preserved for compatibility.
   Behavior is intentionally minimal unless noted.
   ====================================================================== */

/* ----------------------------------------------------------------------
   BODY / TYPE SCALE
---------------------------------------------------------------------- */

body.has-body-sm {}
body.has-body-lg {}
body.has-body-mobile-lg {}

body.has-body-100 {}
body.has-body-200 {}
body.has-body-300 {}
body.has-body-400 {}
body.has-body-500 {}
body.has-body-600 {}
body.has-body-700 {}

/* ----------------------------------------------------------------------
   HEADINGS / TYPOGRAPHY VARIANTS
---------------------------------------------------------------------- */

body.has-heading-lg {}
body.has-heading-md {}
body.has-heading-sm {}

body.has-heading-300 {}
body.has-heading-400 {}
body.has-heading-500 {}
body.has-heading-600 {}

body.has-heading-modern {}
body.has-heading-classic {}
body.has-heading-serif {}
body.has-heading-sans {}

/* body.has-heading-color */

 /* h1 -- Setting text clipping properties for bg color */
 .carousel .item-content h2,
  .has-footer-alternate1 .footer h1,
  body.has-heading-color .content h1,
  body.has-heading-color .text--white .content h1,
  body.has-heading-color .text--white:not(.sb-feature-cta1) .content h1,
  body.has-heading-color .text--white.sb-feature-cta1 .content h1 {
	  -webkit-text-fill-color: transparent;
	  -webkit-background-clip: text;
	  background-clip: text;
	  -webkit-box-decoration-break: clone;
	  box-decoration-break: clone;
	  background-image: linear-gradient(234.33deg, #ffffff -3.63%, #ffffff 89.96%);
	 }
  
  body.has-heading-color .text--white .content h1 {
  background-image: linear-gradient(338deg, #ffffff -3.63%, #ffffff 89.96%)!important;
   }


body.has-heading-color-alt {}

/* ----------------------------------------------------------------------
   BUTTON SYSTEM
---------------------------------------------------------------------- */

body.has-btn-sm {}
body.has-btn-md {}
body.has-btn-lg {}

body.has-btn-minimal1 {}
body.has-btn-minimal2 {}
body.has-btn-outline {}
body.has-btn-solid {}
body.has-btn-rounded {}
body.has-btn-pill {}
body.has-btn-wide {}

/* ----------------------------------------------------------------------
   NAV / HEADER
---------------------------------------------------------------------- */

body.has-nav-default {}
body.has-nav-fixed {}
body.has-nav-transparent {}
body.has-nav-lastlink {}
body.has-nav-center {}
body.has-nav-left {}
body.has-nav-right {}

body.has-toolbar {}
body.has-toolbar-mobile {}
body.has-toolbar-mobile-logosquare {}
body.has-toolbar-stacked {}

/* ----------------------------------------------------------------------
   LOGO / BRANDING
---------------------------------------------------------------------- */

body.logoshow {}
body.has-logo {}
body.has-logo-icon {}
body.has-logo-icon-toggle {}
body.has-logo-inline {}
body.has-logo-stacked {}
body.has-logo-centered {}

/* ----------------------------------------------------------------------
   LAYOUT / WIDTH
---------------------------------------------------------------------- */

body.has-fullwidth {}
/* body.has-narrowsite  */

.has-narrowsite .columns {
	max-width: 1425px;
	margin: auto;
}

 body:not(#page-home):not(.page-home).has-narrowsite-interior .columns {
	max-width: 1225px;
	margin: auto;
}




body.has-narrowsite-interior {}
body.has-maxwidth {}
body.has-maxwidth-row {}
body.has-centered-content {}

/* ----------------------------------------------------------------------
   CAROUSEL / HERO / MEDIA
---------------------------------------------------------------------- */

body.has-carousel {}

/* body.has-carousel-center {} */
/* Carousel -- CENTER ALIGN */

@media (min-width: 768px) and (max-width: 3840px) {
.has-carousel-center .carousel-wrapper .item-content .item-content-inner {
	 text-align: center;
	}
}
	 
@media (min-width:949px) {
#page-home.has-carousel-center .carousel-wrapper .item-content .item-content-inner {
	top: 40px!important;
	padding-left: 0px!important;
	padding-right: 0px!important;
	padding-bottom: 40px!important;
	padding-top: 100px!important;
	position: relative;
	margin: auto;
	}
}

@media (min-width: 949px) {
#page-home.has-carousel-center .carousel .logo {
		max-width: 750px !important;
	}
}

/* body.has-carousel-lg*/

/*Carousel H2, H3, P Section */

.has-carousel-lg .carousel .item-content h2 {
	letter-spacing: 0px;
	font-weight: 300;
	text-shadow: rgb(0 0 0 / 0%) 1px 1px 10px;
	font-size: 30px !important;
	line-height: 40px !important;
	padding-bottom: 0px;
}

@media (min-width: 768px) and (max-width: 1280px) {
.has-carousel-lg .carousel .item-content h2 {
	font-size: 60px !important;
	font-weight: 500;
	line-height: 75px !important;
	padding-bottom: 20px;
 }
}

@media (min-width: 1281px) and (max-width: 3840px) {
.has-carousel-lg .carousel .item-content h2 {
	font-size: 75px !important;
	font-weight: 400;
	line-height: 90px !important;
	padding-bottom: 5px;
	}
}


body.has-carousel-left {}
body.has-carousel-right {}
body.has-carousel-mobile-fit {}
body.has-carousel-fx-kens {}
body.has-carousel-fx-fade {}
body.has-carousel-overlay {}


/* ----------------------------------------------------------------------
   GALLERIES / IMAGES
---------------------------------------------------------------------- */

body.has-gallery {}
body.has-gallery-icons {}
body.has-gallery-grid {}
body.has-gallery-masonry {}
body.has-gallery-overlay {}
body.has-gallery-lightbox {}

/* ----------------------------------------------------------------------
   CONTENT / MODULE VARIANTS
---------------------------------------------------------------------- */

body.has-accordion {}
body.has-accordion-list {}
body.has-accordion-list2 {}

body.has-tabs {}
body.has-tabs-stacked {}

body.has-cards {}
body.has-cards-outline {}
body.has-cards-shadow {}

body.has-icons {}
body.has-icons-left {}
body.has-icons-right {}
body.has-icons-top {}

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

body.has-footer {}
body.has-footer-simple {}
body.has-footer-centered {}
body.has-footer-alternate1 {}
body.has-footer-dark {}
body.has-footer-light {}

/* ----------------------------------------------------------------------
   LOCATIONS / MULTI-OFFICE
---------------------------------------------------------------------- */

body.has-locations {}
body.has-locations-inline {}
body.has-locations-stacked {}
body.has-multi-location {}

/* ----------------------------------------------------------------------
   FORMS / CTA
---------------------------------------------------------------------- */

body.has-forms {}
body.has-forms-inline {}
body.has-forms-stacked {}

body.has-cta {}
body.has-cta-inline {}
body.has-cta-stacked {}

/* ----------------------------------------------------------------------
   MISC / LEGACY / FUTURE
---------------------------------------------------------------------- */

body.has-shadow {}
body.has-border {}

/* body.has-rounded */

.sb-roundedbox-row  {
	border-radius: 30px;
	overflow: hidden!important;
	margin: 0px 5px;
	padding: 0px 20px;
}


@media screen and (min-width:949px) {
.sb-roundedbox-row  {
	padding: 30px 60px;
}
	}


.sb-roundedbox-row + .sb-roundedbox-row {
margin-top: 40px!important;
}

/* boxes -- rounded images -- with fixed inner box width */

.sb-roundedbox-row.sb-fillbox-600-row {
	border-radius: 0px;
}
.sb-roundedbox-row.sb-fillbox-600-row .sb-wrap-inner {
	border-radius: 20px;
}

body.has-animation {}
body.has-scroll-effects {}

/* SAFETY CATCH — DO NOT REMOVE */
body[class*="has-"] {}



/*==================================================================================*/
/* FOOTER ALTERNATE LAYOUT 1 8/1/2023 */
/*==================================================================================*/

/* custom - footer */

.has-footer-alternate1 .footer-box a {
	font-size: 16px;
	line-height: 30px;
	font-variant-numeric: lining-nums;
}

.has-footer-alternate1 .footer-box p, 
.has-footer-alternate1 .footer-box h1, 
.has-footer-alternate1 .footer-box h2,
.has-footer-alternate1 .footer-box h3, 
.has-footer-alternate1 .footer-box h4, 
.has-footer-alternate1 .footer-box h5, 
.has-footer-alternate1 .footer-box h6,
.has-footer-alternate1 .footer-box ul, 
.has-footer-alternate1 .footer-box ol, 
.has-footer-alternate1 .footer-box li, 
.has-footer-alternate1 .footer-box li a, 
.has-footer-alternate1 .footer-box div {
	margin: 0;
	padding: 0;
}

.has-footer-alternate1 .footer .nav .primary-link:last-child > a {
	margin: auto!important;
	padding: 0px!important;
	text-align: center!important;
	padding: 5px 15px!important;
	margin-top: 20px!important;
}

.has-footer-alternate1 .footer .nav .primary-link:last-child > a:hover{
	text-decoration: none;
}

.has-footer-alternate1 .footer-box li a {
	text-transform: capitalize!important;
	padding: 0px!important;
}

.has-footer-alternate1 .footer-box ul, 
.has-footer-alternate1 .footer-box ol {
	list-style: none;
}

@media screen and (min-width: 949px) {
.has-footer-alternate1 .footer .wrapper  {
	max-width: 1425px!important;
	padding: 0px!important;
	margin: auto;
}
}

.has-footer-alternate1  .footer {
	padding: 110px 0px!important;
}

.footer {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.footer-box {
	flex: 1 1 100%;
	margin-bottom: 10px;
	float: left!important;
}

.has-footer-alternate1 .footer-box .footer-logo-container {
	display: flex;
	align-items: flex-start;
}

.has-footer-alternate1 .footer-box .footer-logo-container img {
	max-width: 200px;
	margin-right: 20px;
}

.has-footer-alternate1 .footer-box .footer-logoname {
	align-self: flex-end;
	font-weight: bold;
}

.has-footer-alternate1 .footer-box .footer-nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.has-footer-alternate1 .footer-box .footer-nav .nav-inner {
	flex-basis: 50%;
	margin-bottom: 10px;
}

.has-footer-alternate1 .footer-box .footer-nav ul {
	list-style: none;
	padding: 0;
}

.has-footer-alternate1 .footer-box .footer-nav li {
	margin-bottom: 5px;
}

.has-footer-alternate1 .footer-box .locations_footer {
	margin-top: 0px!important;
	margin-bottom: 10px!important;
	max-width: 400px!important;
	margin: 0px;
}

.has-footer-alternate1 .footer-box .footer-headline {
	padding: 0px 0px 0px;
	text-align: left;
}


@media screen and (min-width: 949px) {
.has-footer-alternate1 .footer-box .footer-headline h1 {
	padding: 20px 0px 100px;
  }
}


.has-footer-alternate1 .footer-box .nav-inner {
	  display: flex;
   }
   
.has-footer-alternate1 .footer-box .nav-inner ul {
	  list-style: none;
	  padding: 0;
	  margin: 0;
	  flex: 1;
		margin-right: 20px;
   }

.has-footer-alternate1 .footer-box .nav-inner li {
	  margin-bottom: 10px;
	  display: block;
   }

   /* Styling for the h2 titles */
.has-footer-alternate1 .footer-box .nav-inner h2 {
	  margin-top: 20px;
	  font-size: 20px;
   }

.has-footer-alternate1 .footer .footer-box .col-md-4:nth-child(2)  {
	padding-right: 30px;
  }

.has-footer-alternate1 .footer .footer-box .col-md-4:nth-child(3)  {
	display: flex;
  }

.has-footer-alternate1 .footer .footer-box .col-md-4:nth-child(3)  {
	margin-top: 0px;
  }

@media screen and (min-width: 949px) {
.has-footer-alternate1 .footer .footer-box .col-md-4:nth-child(3)  {
	margin-top: 0px;
  }
}



  .has-footer-alternate1 .footer .footer-box .col-md-4:nth-child(3) ul {
	list-style: none;
	padding: 0;
	margin: 0;
	padding-right: 20px!important;
	}

@media screen and (min-width: 949px) {
  .has-footer-alternate1 .footer .footer-box .col-md-4:nth-child(3) ul {
	list-style: none;
	padding: 0;
	margin: 0;
	padding-right: 60px!important;
	}
}


	  .has-footer-alternate1 .footer .footer-box .col-md-4:nth-child(3) li {
		margin-bottom: 14px;
		display: block;
		}

	  .has-footer-alternate1 .footer .footer-box .col-md-4:nth-child(3) li a {
		line-height: 20px!important;
		}
	  
	  /* Styling for the h2 titles */
	  .has-footer-alternate1 .footer .footer-box .col-md-4:nth-child(3) h2 {
		margin-top: 20px;
		font-size: 15px!important;
		margin-bottom: 10px;
		} 

@media screen and (min-width: 949px) {
	
	  .has-footer-alternate1 .footer .footer-box .col-md-4:nth-child(3) li {
		margin-bottom: 10px;
		display: block;
		}

		  .has-footer-alternate1 .footer .footer-box .col-md-4:nth-child(3) li a {
		line-height: 26px!important;
		}
	
	  .has-footer-alternate1 .footer .footer-box .col-md-4:nth-child(3) h2 {
		margin-top: 10px;
		font-size: 14px!important;
		font-weight: 600;
		margin-bottom: 20px;
		} 
}




@media screen and (min-width: 949px) {
	/* Apply a font size to all links in the third .col-md-4 container, except the last one */
	.has-footer-alternate1 .footer .footer-box li a {
		font-size: 16px!important;
	}
}

.has-footer-alternate1 .footer .nav .primary-link:last-child > a {
	display: inline-block;
	font-size: 15px!important;
	font-weight: 600!important;
	margin-top: 10px!important;
}

@media screen and (min-width: 949px) {
.has-footer-alternate1 .footer .footer-box .col-md-4:last-child > a {
font-size: 14px!important;

}
}

	  /* Align all text to the left */
		 .has-footer-alternate1 .footer .footer .wrapper {
			text-align: left!important;
		 }
	  
		 /* Align the navigation lists to the left */
		 .has-footer-alternate1 .footer .footer .col-md-4 nav ul {
			text-align: left!important;
		 }
	  
		 /* Align social media icons to the left */
		 .has-footer-alternate1 .footer .footer .embed.social-module.sm-bg-colors-OFF {
			text-align: left!important;
		 }
		 
	.has-footer-alternate1 .footer * {
		  text-align: left!important;
	   }	 
	.has-footer-alternate1 .footer  .locations_list br {
		  display: none;!important;
	   }	 
	  
	 .has-footer-alternate1 .footer .social-module a {
			text-align: center!important;
		}

	 .has-footer-alternate1 .footer .social-module a {
			margin-bottom: 10px;
   
		}
		
	.has-footer-alternate1 .footer .footer-box span {
	   padding-bottom: 0px!important;
	  }

	.has-footer-alternate1 .footer .footer-box .location_name {
	   font-size: 18px!important;
	   line-height: 25px;
	  }


	.has-footer-alternate1 .footer .footerlogoname,
	.has-footer-alternate1 .footer img#logoimg {
	text-align: left!important;
	padding-top: 35px!important;
	margin: 0px!important;
	position: relative;
}


	.has-footer-alternate1 .footer #logoimg {
	width: 1250px!important;
}

.has-footer-alternate1 .footer h1 {
	font-size: 2.5em!important;
	line-height: 1.4em!important;
	font-weight: 300;
	background: linear-gradient(234.33deg, #dfdfdf -3.63%, #ffffff 89.96%);
}

@media (min-width: 768px) {
.has-footer-alternate1 .footer h1 {
	font-size: 3.5em!important;
	line-height: 1.4em!important;
	font-weight: 300;
	}
}

.has-footer-alternate1 .footer h1 {
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-box-decoration-break: clone;
}

.has-footer-alternate1 .footer h1 {
	margin: 20px 0px;
}

.has-footer-alternate1 .footer .locations_list {
	/* font-family: 'Montserrat', sans-serif; */
}	

.has-footer-alternate1 .footer .footer-user-content {
 width: 100%!important;
 float: left;
 max-width: 100%!important;
 text-align: left!important;
 padding: 0 15px;
 padding-top: 50px;
}	

.has-footer-alternate1 .footer .footer-user-content p:first-child {
 border-top: 1px solid rgb(57 57 57 / 5%);
 margin-top: 40px;
 padding-top: 80px;
}	


.has-footer-alternate1 .footer .footer-user-content a,
.has-footer-alternate1 .footer .footer-user-content p {
 font-size: 16px!important;
 text-align: left!important;
 line-height: 29px;
}

.has-footer-alternate1 .footer .footer-user-content p {
	padding-bottom: 6px!important;
}


.has-footer-alternate1 .locations_list .social-module {
	padding-top: 20px;
	margin-bottom: 20px;
}

.has-footer-alternate1 .locations_list a {
	display: inline-block!important;
}



/*==================================================================================*/
/* SET FOOTER */
/*==================================================================================*/

.footer {
	padding-top: 60px;
	padding-bottom: 60px;
	text-align: center;
	overflow: visible;
	border-top: 1px solid;
}

@media screen and (min-width: 949px) {
.footer .footer-box:nth-child(1),
.footer .footer-box:nth-child(2),
.footer .footer-box:nth-child(3) {
	padding: 0 15px;
	position: relative;
	min-height: 1px;
	width: 100%!important;
	text-align: center!important;
	}
}


.footer .footer-box {
	float: none!important;
}

.footer .nav ul {
	padding-bottom: 20px;
}

.footer .nav li {
	display: block;
	font-size: 20px;
}

@media screen and (min-width: 949px) {
.footer .nav li {
	display: inline;
	font-size: 20px;
	}
}

.footer .nav li a {
	font-size: 17px;
	padding: 10px;
	font-weight: 300;
}

.footer h3 {
	padding-top: 18px;
	padding-bottom: 0px;
}

body.logoshow footer img#logoimg, 
body.logoshow footer img#logoimg:not(.logo-color),
body footer img#logoimg, 
body footer img#logoimg:not(.logo-color) {
	margin: 0px;
	max-width: 180px!important;
	height: auto;
	margin: auto;
	/* clear: both; */
	/* display: block; */
}

@media screen and (min-width: 949px) {
body.logoshow footer img#logoimg, 
body.logoshow footer img#logoimg:not(.logo-color),
body footer img#logoimg, 
body footer img#logoimg:not(.logo-color) {
	max-width: 250px!important;
	height: auto;
}
}

.footer-user-content {
	padding: 0 15px;
	position: relative;
	min-height: 1px;
	width: 100%!important;
	text-align: center!important;
	margin: auto;
}

@media screen and (min-width: 949px) {
.footer-user-content {
	width: 80%!important;
	}
}

/*==================================================================================*/
/* extra footer instance fix -- remove 2nd instance */
/*==================================================================================*/

body  > .footer-box {
	display: none;
}

/* ================================================================================== */
/* CAROUSEL — COMPLETE + FIXED (VERTICAL CENTERING SAFE) */
/* ================================================================================== */


/* -------------------------------------------------- */
/* BASE STRUCTURE */
/* -------------------------------------------------- */

#page-home .carousel .item {
  display: flex;
  align-items: stretch;
}

#page-home .carousel .item-inner {
  display: flex;
  width: 100%;
  height: 100%;
  min-height: 650px;
}

@media (min-width: 1281px) {
  #page-home .carousel .item-inner {
	min-height: 100vh;
  }
}


/* -------------------------------------------------- */
/* ITEM CONTENT — TRUE CENTERING */
/* -------------------------------------------------- */

#page-home .carousel .item-content {
  display: flex;
  flex-direction: column;
  justify-content: center;      /* vertical center */
  align-items: flex-start;      /* left aligned */
  height: 100%;
  width: 100%;
  padding: 0;
  position: relative;
  background-color: transparent !important;
}


/* -------------------------------------------------- */
/* INNER CONTENT WIDTH */
/* -------------------------------------------------- */

.carousel-wrapper .item-content-inner {
  margin: 0;
  padding: 0;
  max-width: 80%;
}

@media (min-width: 768px) and (max-width: 1280px) {
  .carousel-wrapper .item-content-inner {
	max-width: 60%;
  }
}

@media (min-width: 1281px) {
  .carousel-wrapper .item-content-inner {
	max-width: 1024px;
  }
}


/* -------------------------------------------------- */
/* CONTAINER WIDTH CONTROL */
/* -------------------------------------------------- */

@media (min-width: 768px) and (max-width: 1280px) {
  #page-home:not(.body) > .container > .carousel-wrapper .item-inner {
	max-width: 90%;
  }
}

@media (min-width: 1281px) {
  #page-home:not(.body) > .container > .carousel-wrapper .item-inner {
	max-width: 90%;
	padding-left: calc(40px + (40vw - (1281px / 2)));
	padding-right: calc(40px + (40vw - (1281px / 2)));
	margin: auto;
  }
}


/* -------------------------------------------------- */
/* TOP / BOTTOM VARIANTS */
/* -------------------------------------------------- */

@media (min-width: 949px) {

  #page-home.has-carousel-top .carousel .item-content {
	justify-content: flex-start;
	padding-top: 120px;
  }

  #page-home.has-carousel-bottom .carousel .item-content {
	justify-content: flex-end;
	padding-bottom: 60px;
  }

}


/* -------------------------------------------------- */
/* TYPOGRAPHY */
/* -------------------------------------------------- */

.carousel .item-content h2 {
  font-weight: 300;
  font-size: 30px !important;
  line-height: 40px !important;
  letter-spacing: 0;
  padding-bottom: 0;
}

@media (min-width: 768px) {
  .carousel .item-content h2 {
	font-size: 50px !important;
	line-height: 65px !important;
  }
}

@media (min-width: 1281px) {
  .carousel .item-content h2 {
	font-size: 55px !important;
	line-height: 65px !important;
  }
}

.carousel .item-content h3 {
  font-size: 14px !important;
  font-weight: 400;
  padding: 5px 0;
}

@media (min-width: 949px) {
  .carousel .item-content h3 {
	font-size: 24px !important;
	line-height: 33px !important;
  }
}

.carousel .item-content p {
  font-size: 17px !important;
  line-height: 22px;
  margin-top: 0;
}

@media (min-width: 949px) {
  .carousel .item-content p {
	font-size: 22px !important;
  }
}


/* -------------------------------------------------- */
/* LINKS / BUTTONS */
/* -------------------------------------------------- */

.carousel a {
  display: inline-block;
  margin-top: 0;
}

@media (min-width: 949px) {
  .carousel .item-content p a + a {
	margin-left: 10px;
  }
}


/* -------------------------------------------------- */
/* OVERLAYS */
/* -------------------------------------------------- */

.carousel .carousel-inner .item:before,
.carousel .carousel-inner:before,
body:not(#page-home) .carousel-wrapper:before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
}

.carousel .carousel-inner .item:before,
body:not(#page-home) .carousel-wrapper:before {
  opacity: 0.6;
}


/* -------------------------------------------------- */
/* INDICATORS */
/* -------------------------------------------------- */

.carousel-indicators {
  bottom: 30px;
  display: none;
  z-index: 2;
}

@media (min-width: 768px) {
  .carousel-indicators {
	display: block;
  }
}


/* -------------------------------------------------- */
/* MOBILE BACKGROUND POSITION */
/* -------------------------------------------------- */

@media (max-width: 480px) {
  .item.sb--bgcover {
	background-position: top center !important;
  }
}


/* -------------------------------------------------- */
/* HARD OVERRIDES — REMOVE OLD BREAKERS */
/* -------------------------------------------------- */

.carousel .item-content,
.item-content-inner {
  top: auto !important;
  bottom: auto !important;
}

.carousel .sb-module {
  position: relative !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
}

/*Hide custom module*******************/

.page-home-page {
  display: none;
}


/*Interior Banners -- live and dev app view *******************/

body:not(#page-home) .carousel-wrapper,
body.page-app:not(.page-home) .carousel-wrapper {
  background-position: 0px;
	background-size: cover!important;
  text-align: left;
  background-attachment: scroll!important;
}


body:not(#page-home):not(.body) > .container > .carousel-wrapper {
  height: 200px;
}


@media screen and (min-width:949px) {
body:not(#page-home):not(.body) > .container > .carousel-wrapper {
  height: 295px;
}
}



body.page-home .carousel-wrapper {
  height: inherit!important;
}

body.page-home .carousel-wrapper {
  background: none;
  height: inherit!important;
}

body:not(#page-home) .carousel-wrapper .item-content-inner {
  display: none;
}

body.page-app:not(.page-home) .carousel-wrapper .item-content-inner {
  display: block!important;
}

@media screen and (min-width:949px) {
body:not(#page-home) .carousel-wrapper,
body.page-app:not(.page-home) .carousel-wrapper {
  background-position: 0px 0px;
  }
}

/*Hide interior text banner**/

body:not(#page-home):not(.body) > .container > .carousel-wrapper .item-content-inner {
  display: flex!important;
  margin: auto;
  height: auto;
  align-self: flex-end;
}

/*Interior banner -- landing page thin style **/


body:not(#page-home):not(.body).has-banner-thin > .container > .carousel-wrapper {
  height: 60px;
}

@media screen and (min-width:1280px) {
body:not(#page-home):not(.body).has-banner-thin > .container > .carousel-wrapper .item-content-inner {
  display: flex!important;
  margin: 0px;
  height: auto;
  align-self: flex-start;
  top: 40px!important;
}
	
body:not(#page-home):not(.body).has-banner-thin > .container > .carousel-wrapper .carousel img#logoimg:not(.footer img) {
	max-height: 60px !important;
}

body:not(#page-home):not(.body).has-banner-thin .header img#logoimg:not(.footer img) {
	max-height: 60px !important;
}
	
body:not(#page-home):not(.body).has-banner-thin > .container > .carousel-wrapper {
  height: 165px;
}

body:not(#page-home):not(.body).has-banner-thin > .container > .carousel-wrapper {
	background-image: none!important;
}

	
body:not(#page-home):not(.body).has-banner-thin > .container > .carousel-wrapper .carousel-inner .item:before,
body:not(#page-home):not(.body).has-banner-thin > .container > .carousel-wrapper:before {
	/* background: rgb(95 45 45 / 77%); */
	background: linear-gradient(0deg, #8d929e 0%, #8d929e 40%, #8d929e 100%);
	}
	
}

body:not(#page-home):not(.body).has-banner-thin .body {
	background: linear-gradient(0deg, #fcfdff 0%, #ffffff 40%, #acb0bb 100%);
	}

body:not(#page-home):not(.body).has-banner-thin .sb-module.sb-formbuilder .box,
body:not(#page-home):not(.body).has-banner-thin .sb-module.sb-contactform .box {
	background: #ffffff!important;
	box-shadow: 0 0 10px 0px rgb(0 0 0 / 25%);
	border-radius: 12px;
	padding: 20px 25px!important;
}

@media screen and (min-width:949px) {
body:not(#page-home):not(.body).has-banner-thin .wrap-inner {
	padding-left: 120px;
	padding-right: 120px;
	overflow: visible;
}
	
body:not(#page-home):not(.body).has-banner-thin .sb-module.sb-formbuilder .box,
body:not(#page-home):not(.body).has-banner-thin .sb-module.sb-contactform .box {
	background: #ffffff!important;
	box-shadow: 0 0 10px 0px rgb(0 0 0 / 25%);
	border-radius: 12px;
	padding: 40px 45px!important;
}
}

media screen and (min-width:949px) {
  body:not(#page-home):not(.body).has-banner-thin 
  .sb-wrap-inner[class*='col-row-'] 
  .sb-col:nth-of-type(1) .sb-module,
  
  body:not(#page-home):not(.body).has-banner-thin 
  .sb-wrap-inner.image-row-two .sb-col.sb-image-row .sb-module,
  
  body:not(#page-home):not(.body).has-banner-thin 
  .image-row-two-wrap .sb-col.sb-image-row .sb-module {
	padding: 0 !important;
	padding-bottom: 30px !important;
  }
}

body:not(#page-home):not(.body).has-banner-thin .sb-wrap-inner[class*='col-row-'] .sb-col:nth-of-type(1) .sb-module .box {
	padding-bottom: 30px !important;
	border-bottom: 1px solid #e1e1e1;
}

body:not(#page-home):not(.body).has-banner-thin .module-form {
	padding-top: 0px;
	padding-bottom: 0px!important;
}

body:not(#page-home).has-banner-thin .sb-wrap.sb-image-row.image-row-one-wrap {
	overflow: visible;
}

@media (min-width:949px) {
body:not(#page-home).has-banner-thin.has-btn-lg a.btn-cta:not(.btn-reset) {
	padding: 9px 15px 9px 15px!important;
	font-size: 12px!important;
	text-transform: uppercase!important;
	} 
	
body:not(#page-home).has-banner-thin.has-btn-lg a.btn-cta:not(.btn-reset) i {
	display: none;
	} 
}

body:not(#page-home):not(.body).has-banner-thin .header .nav .primary-link > a {
	font-size: 13px
}


	
/*Show home text banner**/
body.page-app.page-home .carousel-wrapper:not(.bg--none) .item-content-inner {
  display: block!important;
}

body:not(#page-home):not(.body) > .container > .carousel-wrapper .item-content-inner h2 {
  display: none!important;
}

body:not(#page-home):not(.body) > .container > .carousel-wrapper .item-content-inner h3 {
  display: none!important;
}

body:not(#page-home):not(.body) > .container > .carousel-wrapper p  {
  display: none!important;
}

.sb-module .carousel {
	height: 100%!important;
}

.sb-module .carousel-indicators {
	display: block!important;
}

.sb-module .carousel-arrows-shadowed .carousel-control .glyphicon {
	display: block!important;
}

/*Builder Carousel/Interior Banners**/

body.page-app .carousel-wrapper:not(.bg--none) .item-content-inner {
  display: block!important;
}



/* SET HOT FIXES */
body:not(#page-home):not(.body) > .container > .carousel-wrapper .carousel .carousel-inner {
	overflow: visible;
	height: 100%;
}


/*custom carousel height
-------------------------------------------------*/

#page-home:not(.body) > .container > .carousel-wrapper .item-inner {
}

@media (min-width:949px) { 
#page-home:not(.body) > .container > .carousel-wrapper .item-inner {
	min-height: 560px;
	height: 100%;
	 /* Stack items vertically */
	 /* Vertically center-align items */
	 /* Horizontally center-align items */
	width: 100vw;
	}
}



/*Carousel inner content
-------------------------------------------------*/

.carousel-wrapper .item-content .item-content-inner {
	padding-left: 5px;
	padding-right: 5px;
	padding-bottom: 10px!important;
	padding-top: 40px!important;
	position: relative;
}

@media (min-width:949px) {
	
.carousel-wrapper .item-content .item-content-inner {
	/* top: 60px!important; */
	padding-left: 0px!important;
	padding-right: 0px!important;
	padding-bottom: 40px!important;
	padding-top: 40px!important;
	position: relative;
	margin: 0px;
	}
}

/*Carousel Custom content width && left/right Position 
-------------------------------------------------*/
	
#page-home:not(.body) > .container > .carousel-wrapper .item-inner {
	/* max-width: 100%; */
}

@media (min-width: 768px) and (max-width: 1280px) {
#page-home:not(.body) > .container > .carousel-wrapper .item-inner {
	max-width: 90%;
	}
}

@media (min-width: 1281px) and (max-width: 3840px) {
#page-home:not(.body) > .container > .carousel-wrapper .item-inner {
	max-width: 90%;
	padding-right: calc(40px + (40vw - (1281px / 2)));
	padding-left: calc(40px + (40vw - (1281px / 2)));
	margin: auto;
	}
}

/* INTERIOR */

@media (min-width: 768px) and (max-width: 1280px) {
body:not(#page-home):not(.body) > .container > .carousel-wrapper .item-inner {
/*    max-width: 1200px;*/
	max-width: 100%;
	float: none;
 }
}

body:not(#page-home):not(.body) > .container > .carousel-wrapper .item-inner {height: 100%;}

@media (min-width: 1281px) and (max-width: 3840px) {
body:not(#page-home):not(.body) > .container > .carousel-wrapper .item-inner {/*    max-width: 1400px;*/max-width: 100%;float: none;margin: auto;}
}

/* Carousel extra content
-------------------------------------------------*/

.carousel .keywords {
	font-size: 80%;
	font-style: italic;
	font-family: georgia;
	margin-top: 40px;
}


/*add color overlay 
-------------------------------------------------*/

@media screen and (max-width:767px) {
.carousel .carousel-inner .item:before,
 body:not(#page-home) .carousel-wrapper:before {
	 opacity: 0.7;
	}
}

/* Carousel extra 
-------------------------------------------------*/

.carousel .item-content a {
	letter-spacing: inherit;
}


/*custom carousel sb--bgcover heights
-------------------------------------------------*/

.item.sb--bgcover {
	height: 715px;
}

@media (min-width: 768px) and (max-width: 1280px) {
.item.sb--bgcover {
	height: 750px;
 }
} 

@media (min-width: 1281px) {
.item.sb--bgcover {/*    height: 860px;*/height: 100vh;min-height: 850px;}
} 


/*center hero bg position
-------------------------------------------------*/
	
@media screen and (max-width:480px) {
.item.sb--bgcover {
	background-position: top center!important;
	}
}


/* Carousel 1 or 2 button or link style
-------------------------------------------------*/

#page-home .carousel .item-content p a {
	 text-align: center; 
}

#page-home .carousel .item-content-inner {
}

/* carousel text custom position
-----------------------------------------------------------------*/

.carousel .item-content {
	top: inherit!important;
	}

@media screen and (min-width: 949px) {
.carousel .item-content {
	top: inherit!important;
	}
}

.item-content-inner {top: inherit!important;}

/** specific custom option **
Custom Module inside Carousel-------------------------------------------------*/

.carousel .sb-module {
	position: absolute;
	left: 0px;
	right: 0px;
	margin: auto;
	bottom: 165px;
	/* top: 0px; */
	z-index: 1;
}

@media screen and (max-width:948px) {
.carousel .sb-module {
	bottom: 0;
	}
}

@media screen and (min-width:949px) {
.carousel .sb-module {
	/* top: 85vh; */
 }
}

/* Use flexbox for vertical and horizontal centering */
#page-home .carousel .item-content {
  display: flex;
  flex-direction: column; /* Stack items vertically */
  justify-content: center; /* Align items to the middle vertically */
  align-items: flex-start; /* Horizontally center-align items */
  height: 100%; /* Occupy the full height of the container */
  padding-top: 50px;
}

.carousel-wrapper .item-content .item-content-inner {
 margin-top: 0px!important;
 margin-bottom: 0px!important;

}

/* carousel -- align to bottom */

@media screen and (min-width:949px) {
#page-home.has-carousel-bottom .carousel-wrapper .carousel .item-content {
	justify-content: flex-end;
	padding-bottom: 60px;
}


#page-home.has-carousel-top .carousel-wrapper .carousel .item-content {
	justify-content: flex-start;
	padding-bottom: 120px;
}
	}




<!-- 4. CSS — CLS FIXES + ICON NORMALIZATION -->
<style>
/* Reserve header height */
header.header-static,
header.header.header-static {
  min-height: 120px;
}

/* Normalize icons only inside header/nav/footer */
header i.fa, header i.fas,
.nav i.fa, .nav i.fas,
.mobile-nav i.fa, .mobile-nav i.fas,
.footer i.fa, .footer i.fas {
  width: 1em;
  height: 1em;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* SVG inside <i> inherits color/size */
header i svg, .nav i svg, footer i svg, .mobile-nav i svg {
  width: 1em;
  height: 1em;
  fill: currentColor;
}

/* Footer logo stability */
.footer-fluid img#logoimg {
  max-width: 200px;
  height: auto;
  display: block;
}

/* Carousel CLS guard */
.carousel-inner .item,
.carousel-inner .carousel-item {
  min-height: 450px;
  position: relative;
  overflow: hidden;
}

/* LCP image that we inject */
.carousel-lcp-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

/* Overlay content stays above image */
.carousel-inner .item-inner,
.carousel-inner .caption,
.carousel-inner .text-overlay {
  position: relative;
  z-index: 2;
}



/* ============================= */
/* HEADER BASE — FIXED VERSION */
/* ============================= */

.site-header {
  position: fixed;    
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  background: #fff;
  border-bottom: 1px solid rgba(0,0,0,0.06);

  will-change: transform;
  transition: transform 0.28s ease;
}

/* push page content down so it doesn’t jump */
body {
  padding-top: var(--header-height, 96px);
}


/* ============================= */
/* TOP BAR */
/* ============================= */

.site-header__top {
  font-size: 13px;
  padding: 8px 0;
  border-bottom: 1px solid rgba(0,0,0,0.05);
}

.site-header__location {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.location-phone {
  font-weight: 600;
  margin-left: 8px;
}

/* ============================= */
/* MAIN BAR */
/* ============================= */

.site-header__main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 80px;
  gap: 24px;
}

/* ============================= */
/* NAV */
/* ============================= */

.site-nav {
  display: flex;
}

.nav-list {
  display: flex;
  gap: 32px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.nav-item {
  position: relative;
}

.sub-nav {
  position: absolute;
  top: 100%;
  left: 0;
  background: #f2f2f2;
  padding: 12px 0;
  display: none;
  right: 0px;
  margin: auto;
  max-width: 1200px;
}

.nav-item:hover .sub-nav {
  display: block;
}


.nav-arrow {
  display: inline-block;
  margin-left: 8px;
  transform: translateY(-1px);
  transition: transform 0.25s ease;
}

.mega-dropdown > a:hover .nav-arrow {
  transform: rotate(180deg);
}

/* ============================= */
/* CTA */
/* ============================= */

.site-header__cta .btn {
  white-space: nowrap;
}

/* ============================= */
/* MOBILE */
/* ============================= */

.mobile-nav {
  position: fixed;
  inset: 0;
  background: #000;
  z-index: 999;
  transform: translateX(100%);
  transition: transform 0.35s ease;
  will-change: transform;
}

body.nav-open .mobile-nav {
  transform: translateX(0);
}
.nav-toggle {
  display: none;
  background: none;
  border: 0;
  cursor: pointer;
}

.nav-toggle__icon line {
  stroke: #000;
  stroke-width: 2;
  transition: transform 0.25s ease;
}

.mobile-nav {
  position: fixed;
  inset: 0;
  background: #000;
  padding: 190px 24px;
  transform: translateX(100%);
  transition: transform 0.3s ease;
}

.mobile-nav {
  position: fixed;
  inset: 0;
  background: #000;
  z-index: 999;
  transform: translateX(100%);
  transition: transform 0.35s ease;
  will-change: transform;
}

body.nav-open .mobile-nav {
  transform: translateX(0);
}

@media (max-width: 949px) {
  .site-nav,
  .site-header__cta {
	display: none;
  }

  .nav-toggle {
	display: block;
  }
}




/*==================================================================================*/
/* SET Mega Dropdown Menu + default styling */
/*==================================================================================*/

.site-nav .nav-item.mega-dropdown {
	position: relative;
}

/* open state */
.site-nav .nav-item.mega-dropdown .dropdown-wrapper.open {
	display: table !important;
}

/* dropdown container */
.site-nav .nav-item.mega-dropdown .dropdown-wrapper,
.site-nav .nav-item.mega-dropdown .dropdown-wrapper.open {
	left: 50%;
	position: fixed;
	max-width: 100%;
	width: 100%;
	transform: translateX(-50%);
	right: 50%;
	margin: auto;
}

/* level 2 columns */
.site-nav .nav-item.mega-dropdown .dropdown-wrapper > ul > li.secondary-link,
.site-nav .nav-item.mega-dropdown .dropdown-wrapper > ul > .orphan_links {
	display: inline-block;
	max-width: 250px;
	vertical-align: top;
	padding-right: 30px;
	padding-bottom: 30px;
}

/* dropdown inner padding */
.site-nav .nav-item.mega-dropdown .dropdown-wrapper > ul {
	border-radius: 0;
	padding: 50px 30px;
}

/* secondary headers */
.site-nav .nav-item.mega-dropdown .dropdown-wrapper li.secondary-link > a {
	font-weight: 600;
	font-size: 14px;
	margin-bottom: 0;
}

/* level 3 list reset */
.site-nav .nav-item.mega-dropdown .dropdown-wrapper ul ul {
	padding: 0;
}

/* link spacing */
.site-nav .nav-item.mega-dropdown .dropdown-wrapper ul li a {
	margin-top: 10px;
}

.site-nav .nav-item.mega-dropdown .dropdown-wrapper ul li:last-child a {
	margin-top: 0 !important;
}

/* selected states */
.site-nav .secondary-link.selected > a,
.site-nav .sub-secondary-link.selected > a {
	font-weight: 600 !important;
	font-style: italic;
}
