/*!

bootstrap ref
sm 576
md  768
lg  992
xl  1200

colors
black 1e1e1e
dark gray 6aadc9
blue   027ec7
light gray f0f0f0

red  6aadc9
burnt orange   6aadc9
*/

html {
  scroll-behavior: smooth;
}

body {
	font-family:Montserrat,Helvetica,Arial;

	background:#fafafa;
	color:#231f20;

    font-size: 1.0rem;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.smalltext
{
	font-size:1rem;
}

@media only screen and (max-width: 600px)
{
/*
	body
	{
		background:none;
		background:transparent;
	}

	body:after
	{
		content: url(/wp-content/uploads/bg-starlight.jpg);
		position: fixed;
		height: 100vh;
		right: 0;
		top: 0;
		left: 0;
		z-index: -1;
	}
*/
}

*::-webkit-media-controls-panel
{
  display: none!important;
  -webkit-appearance: none;
}

*::--webkit-media-controls-play-button
{
  display: none!important;
  -webkit-appearance: none;
}

*::-webkit-media-controls-start-playback-button
{
  display: none!important;
  -webkit-appearance: none;
}

.clear
{
	clear:both;
}

img
{
	max-width:100%;
	height:auto;
}

a
{
	color:#6aadc9;
	color:#0922bd;
	text-decoration:none;
}

a:hover
{
	color:#716e6e;
	text-decoration:none;
}

#main
{
	margin-top:190px;
	padding-bottom:24px;
}

.page-template-page-flexible #main,
.home #main
{
	margin-top:110px;
}

.home #main,
.page-id-1442 #main
{
	padding-bottom:0px;
}

.anchor
{
    display: block;
    position: relative;
    top: -200px;
    visibility: hidden;
}

.bg
{
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    color: #FFFFFF;
    padding: 250px 120px;

}

section
{
	margin:48px auto;
}

.blue
{
	color:#027ec7;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin:0rem auto 1rem;
	line-height:1.24;
	padding:0;
	color:#231f20;
	font-weight:600;
	letter-spacing:1px;
}

h1
{
	font-size:2rem;
	line-height:1.1;
	font-weight:700;
	text-transform:uppercase;
	margin:0 auto 24px;
	letter-spacing:0px;
}

h2
{
	font-size:1.8rem;
	color:#6aadc9;
	color:#3B7087; /* ada contrast pass */
	margin-top:1.6rem;
}

h3
{
	font-size:1.4rem;
}

h4
{
	font-size:1.1rem;
	color:#000000;
}

h5
{
	font-size:1.0rem;
	color:#6aadc9;
	color:#3B7087; /* ada contrast pass */
	margin:7px 0 4px;
	line-height:1;
}

.section-title-styled
{
	position:relative;
}

.section-title-styled:after
{
    content: "";
    width: 200px;
    margin-left: -100px;
    left: 50%;
    bottom: 0px;
    position: absolute;
    border-bottom: 3px solid #CCCCCC;
}


/*  dining for dollars, loyalty program */
.page-id-1052 h1:first-child,
.page-id-1284 h1:first-child
{
	text-align:center;
}

.accent
{
	color:#6aadc9;
	color:#3B7087; /* ada contrast pass */
}

#accordionFAQ .card-header
{
	background:#1e1e1e;
}

#accordionFAQ h6 a
{
	color:#f0f0f0;
}

p+h2,
p+h3,
p+h4,
ul+h2,
ul+h3,
ul+h4
{
	margin-top:2.4rem;
}

.tapbox .inside
{
	text-transform:uppercase;
    transition: all .3s ease-in-out 0s;
	padding:52px 0;
	background:rgba(142, 170, 195, 0.74);
	color:#ffffff;
	font-size:20px;
}

.tapbox.skinny .inside
{
	padding:7px 0;
	font-size:16px;
}

.tapbox:hover .inside
{
	background:rgba(142, 170, 195, 1);
	color:#ffffff;
}

.tapbox.opt2 .inside
{
	background:rgba(155, 186, 213, 0.74);
}

.tapbox.opt2:hover .inside
{
	background:rgba(155, 186, 213, 1);
}

.tapbox.opt3 .inside
{
	background:rgba(211, 227, 238, 0.74);
}

.tapbox.opt3:hover .inside
{
	background:rgba(211, 227, 238, 1);
}

.tapbox.opt4 .inside
{
	background:rgba(226, 237, 240, 0.74);
}

.tapbox.opt4:hover .inside
{
	background:rgba(226, 237, 240, 1);
}


/*--------------------------------------------------------------
# Misc
--------------------------------------------------------------*/

.inner-header,
.light-panel
{
	background:#f0f0f0 !important;
	color:#231f20;
}

.dark-panel
{
	background:#1e1e1e;
	color:#ffffff;
}

.some-fixed-background
{

	background: url(/wp-content/uploads/bg-clouds.jpg) no-repeat center center fixed;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;

	color:#ffffff;
}

.team img
{
	border-radius:50%;
}

/*--------------------------------------------------------------
# Optional Page Header space
--------------------------------------------------------------*/
.inner-header .side img
{

}

@media only screen and (max-width: 720px)
{
	.some-fixed-background
	{
		background: url(/wp-content/uploads/bg-clouds.jpg) no-repeat center center;
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
	}
}


.btn, .container-fluid, .entry-img, .navbar, .overlay, .wpcf7 input[type=submit], a, img {
    transition: all .5s ease-in-out 0s;
}

/*--------------------------------------------------------------
# Buttons
--------------------------------------------------------------*/
input[type="submit" i],
.btn,
.gform_wrapper.gravity-theme .gform_footer button,
.gform_wrapper.gravity-theme .gform_footer input,
.gform_wrapper.gravity-theme .gform_page_footer button,
.gform_wrapper.gravity-theme .gform_page_footer input
{
    color: #333333 !important;
    background: #6aadc9 !important;
	font-size:0.9rem;
	text-transform:uppercase;
	font-weight:bold;
	margin-bottom:14px;
	line-height:1;
	padding: 0.64rem 0.8rem 0.64rem;
	border-radius:0px;
    border-width: 0px;
    border-color:#6aadc9;
    border-style: inset;
	cursor:pointer;
}

input[type="submit" i]:hover,
.btn:hover,
.gform_wrapper.gravity-theme .gform_footer button:hover,
.gform_wrapper.gravity-theme .gform_footer input:hover,
.gform_wrapper.gravity-theme .gform_page_footer button:hover,
.gform_wrapper.gravity-theme .gform_page_footer input:hover

{
    color: #ffffff !important;
    background: #333333 !important;
}


/*--------------------------------------------------------------
# Site Header
--------------------------------------------------------------*/

header.site-header
{
	position: fixed;
    right: 0;
    left: 0;
    top:0;
    height:108px;
    padding:0;
    z-index: 200;
	background:#ffffff;
	color:#231f20;
/*
	box-shadow: 0px -2px 11px 1px rgb(0 0 0 / 46%);
*/
}

.site-title img
{
	width:154px;
	max-width:100%;
	height:auto;

	position:absolute;
	top:11px;
	left:11px;
	z-index:998;
}

.phone
{
	white-space:nowrap;
}

.site-header .cta
{
	display:inline-block;
	background:#fafafa;
	color:#231f20;
	border-radius:0 0 0 24px;
	padding:0px 0px 0px 24px;
	font-size:1rem;
}


.site-header a.hub
{
	font-size:13px;
	text-transform:uppercase;
	background:#333333;
	padding:7px 6px;
	color:#ffffff;
	margin-left:16px;
}

.site-header a.hub:hover
{
	background:#111111;
}

/*
ctabtn - style in mega menu settings
*/

.site-header .phone,
.site-header .phone a,
.site-header a
{
	color:#0922bd;
	color:#6aadc9;
	color:#3B7087; /* ada contrast pass */

}

/*--------------------------------------------------------------
# Gravity Forms
--------------------------------------------------------------*/

.gform_wrapper div.validation_error {
    color: #6aadc9 !important;
    font-size: 1em;
    font-weight: 600;
    margin-bottom: 25px;
    border-top: 2px solid #6aadc9 !important;
    border-bottom: 2px solid #6aadc9 !important;
}

.gform_wrapper .validation_message {
    color: #6aadc9 !important;
    font-weight: 600;
    letter-spacing: normal;
}

.gform_wrapper.gravity-theme .gform_validation_errors>h2,
.gform_wrapper.gravity-theme .gform_validation_errors>ol a
{
    color: #6aadc9 !important;
    font-size: 1rem !important;
}

.gform_required_legend
{
	font-size:0.9rem;
	margin:11px 0 18px;
}

.gform_wrapper.gravity-theme .gform_fields
{
    grid-column-gap: 5% !important;
    grid-row-gap: 24px !important;
}

.gform_wrapper.gravity-theme .gsection
{
    background: #6aadc9 !important;
    padding:11px 24px !important;
    color: #ffffff !important;
    border-bottom: 0px solid #ccc;
}

h3.gsection_title
{
	color:#ffffff;
	line-height:1;
	padding:8px 0;
	margin:0 0 0px !important;
    font-size:22px;
	font-weight:600;
}

.gform_wrapper.gravity-theme .top_label .gsection_description
{
    margin-bottom: 8px !important;
    padding-bottom:0px !important;
    width: 100%;
}

.gform_wrapper.gravity-theme .field_description_above .gfield_description
{
	padding-bottom:4px !important;
	padding-top:4px !important;
}

.hide_price_option .ginput_price,
.hide_on_form
{
	display:none;
}

.instrux
{
    border-bottom: 1px solid #6aadc9;
    padding: 0 0px 8px 0;
	color:#6aadc9;
    font-size:18px;
    font-weight:600;
}

.gform_wrapper.gravity-theme .gfield .ginput_quantity
{
	max-width:44px;
}

.gform_wrapper.gravity-theme .gfield_radio .gchoice
{
	margin-bottom:11px; !important;
}

.gform_wrapper.gravity-theme .gfield_radio label
{
	line-height:1rem !important;
}

.gpecf-order-summary tfoot
{
	display:none !important;
}

/* Align Gravity Forms consent checkbox with its text */
.gform_wrapper .ginput_container_consent {
	display: flex;
	align-items: flex-start;
	gap: 8px;
}

.gform_wrapper .ginput_container_consent input[type="checkbox"] {
	flex: 0 0 auto;
	margin: 5px 0 0;
}

.gform_wrapper .ginput_container_consent .gfield_consent_label {
	display: block;
	flex: 1;
	width: auto;
	margin: 0;
	line-height: 1.4;
}

/*--------------------------------------------------------------
# Reviews
--------------------------------------------------------------*/
.reviewblock
{
	color:#716e6e;
	padding:24px;
	margin:0 0 32px;
}

.review
{
	font-style:italic;
}

.reviewer
{
	margin:18px 0 0 0;
	color:#6aadc9;
	color:#3B7087; /* ada contrast pass */
}

/*--------------------------------------------------------------
# Cards
--------------------------------------------------------------*/
.card
{
	background:#f0f0f0;
	color:#231f20;
	border:0;
}

.card-body
{
	padding:.4rem 1rem;
}

.reviews .card-body
{
	padding:1.4rem 1.74rem;
}

.card-body p
{
/*
	font-size:.92rem;
*/
}

.card .card-title
{
	/* dark bg card */
	color:#231f20;
}

h4.card-title
{
	margin:auto;
	padding-top:11px;
	padding-bottom:11px;
}

h4.card-title a
{
	color:#231f20;
	text-decoration:none;
}

h4.card-title a:hover
{
	color:#6aadc9;
}

.card .entry-meta
{
	margin:4px 0 14px;
}

.page-id-2 h1.entry-title
{
	display:none;
}

/* image by text card */
.card.horizontal
{
	background:#ffffff;
	color:#1e1e1e;
	border:0;
}

.card-img-side
{
	min-width:100%;
	min-height:100%;
	width:auto;
	height:auto;
	object-fit: cover;
}

.deck .card img
{
	border-bottom:7px solid #6aadc9;
}

.deck .card-footer
{
	padding: 0.24rem 0rem;
	background: transparent;
	border-top:0;
}

.card-img-top
{
	width: 100%;
	height: 16vw;
	object-fit: cover;
}

.card-img-overlay h1,
.card-img-overlay a
{
	color:#ffffff;
}

.single .post .post-thumbnail
{
	margin-bottom:24px;
}


h1.dropshadow,
h2.dropshadow
{
    text-shadow: -0.54px -0.54px 0 #fff, 1px 1px 0 #fff, 2.5px 2.5px 0 #6aadc9;
}

h3.dropshadow,
h4.dropshadow,
h5.dropshadow
h6.dropshadow
{
    text-shadow: -0.64px -0.64px 0 #fff, 0.9px 0.9px 0 #fff, 1.4px 1.4px 0 #6aadc9;
}

.footer-area h4.dropshadow
{
    text-shadow: -1px -1px 0 #000, 1.5px 1.5px 0 #000, 3.5px 3.5px 0 #6aadc9;
}

/*--------------
*  home details
-----------------*/
/*
#002f4b,#dc4225
Convert HEX to RGBA - http://hex2rgba.devoth.com/
*/
.img-gradient:after {
  content:'';
  position:absolute;
  left:0; top:0;
  width:100%; height:100%;
  display:inline-block;
  background: -moz-linear-gradient(top, rgba(72,72,72,0.5) 0%, rgba(24,24,24, 0.74) 100%); /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(24,24,24, 0.74)), color-stop(100%,rgba(72,72,72,0.5))); /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, rgba(72,72,72,0.5) 0%,rgba(24,24,24, 0.74) 100%); /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, rgba(72,72,72,0.5) 0%,rgba(24,24,24, 0.74) 100%); /* Opera 11.10+ */
  background: -ms-linear-gradient(top, rgba(72,72,72,0.5) 0%,rgba(24,24,24, 0.74) 100%); /* IE10+ */
  background: linear-gradient(to bottom, rgba(72,72,72,0.5) 0%,rgba(24,24,24, 0.74) 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#002f4b', endColorstr='#00000000',GradientType=0 ); /* IE6-9 */
}

/*
*
* ==========================================
* ACCORDION STUFF
* ==========================================
*
*/
/* Horizontal line */
.collapsible-link::before {
  content: '';
  width: 14px;
  height: 2px;
  background: #CCC;
  position: absolute;
  top: calc(50% - 1px);
  right: 1rem;
  display: block;
  transition: all 0.3s;
}

/* Vertical line */
.collapsible-link::after {
  content: '';
  width: 2px;
  height: 14px;
  background: #CCC;
  position: absolute;
  top: calc(50% - 7px);
  right: calc(1rem + 6px);
  display: block;
  transition: all 0.3s;
}

.collapsible-link[aria-expanded='true']::after {
  transform: rotate(90deg) translateX(-1px);
}

.collapsible-link[aria-expanded='true']::before {
  transform: rotate(180deg);
}

/*--------------------------------------------------------------
# Overlay / Popup
--------------------------------------------------------------*/
#overlay,
#overlay-content,
.modal {
    z-index: 9999999 !important;
}

.modal-dialog,
.modal-content
{
	z-index:99999;
}

.modal-dialog
{
	max-width: 80%;
}

@media (min-width: 1200px)
{
	.modal-dialog {
		max-width: 900px;
		margin: 1.75rem auto;
	}
}

#overlay {
  position: fixed;
  display: none;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0.5);
  z-index: 2;
  cursor: pointer;
}

#overlay-content
{
	position: absolute;
	top: 50%;
	left: 50%;
	font-size: 18px;
	transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	text-align:center;
	border:6px solid #f9d20c;
	border-radius:4px;
	background:#FFFFFF;
	color:#000000;
	width:98%;
	padding:40px 1%;
	max-width:640px;
}


/*--------------------------------------------------------------
# Tables
--------------------------------------------------------------*/

table, th, td {
  border: 0px solid #716e6e;
}

table
{
	margin:0 0 24px;
}

th, td {
  padding: 11px;
  text-align: left;
}

th {
  background-color: #716e6e;
  color: #231f20;
}

tr:nth-child(even)
{
	background-color: #f2f4f4;
}

/*--------------------------------------------------------------
# Bullets / list style
--------------------------------------------------------------*/
ul.nobullet
{
	padding:5px 0 0 0;
    list-style-type: none;
}

.styled-ul ul
{
	margin-top:14px;
}

ul li
{
	margin-bottom:14px;
}

ul.nobullet li
{
    list-style-type: none;
    display:block;
/*
	background:url(images/li-wings.png) no-repeat 2px 2px;
*/
	padding:0px 0 11px 0px;
	margin:0 0 14px 0;

}

.styled-ul li::marker
{
  content: url("data:image/svg+xml,%3Csvg width='16' height='10' viewBox='0 0 16 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M12.753 5.99999L10.273 8.29399C9.877 8.68399 9.877 9.31699 10.273 9.70799C10.668 10.098 11.31 10.098 11.705 9.70799L15.555 6.06099C15.843 5.77799 16 5.40299 16 4.99999C16 4.59999 15.842 4.22199 15.556 3.93999L11.706 0.292988C11.31 -0.0970117 10.668 -0.0970117 10.272 0.292988C9.877 0.682988 9.877 1.31599 10.272 1.70699L12.752 3.99999H1C0.447 3.99999 0 4.44599 0 4.99999C0 5.54999 0.448 5.99999 1 5.99999H12.753Z' fill='%237B61FF'/%3E%3C/svg%3E%0A");
}

.styled-ul li {
  padding-left: .5rem;
}

.text-center ul
{
	list-style-position: inside;
	text-align: center;
}


.gallery figure
{
    margin: 0 1rem 1rem;
}

/*--------------------------------------------------------------
# Social Media
--------------------------------------------------------------*/
.social-icons
{
	margin: 11px auto 11px;
	padding: 0px 0 0 0;
	font-size:32px;
}
.social-icon
{
	padding-right:11px;
}


/*--------------------------------------------------------------
# ACF Map
--------------------------------------------------------------*/
.acf-map {
    width: 100%;
    height: 600px;
    border: #ccc solid 1px;
    margin: 0px 0;
}

// Fixes potential theme css conflict.
.acf-map img {
   max-width: inherit !important;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.footer-cards
{
	margin:64px 0 0;
}

.footer-cards .card-footer
{
	background:#e7dad2;
	color:#ffffff !important;
	font-size:1.35rem;
	line-height:1;
	text-decoration:none !important;
}

.footer-cards .card:hover .card-footer
{
	background:#045691;
}

.footer-area
{
    margin: 0px auto 0;

	line-height:1.44em;
	font-size:1.0rem;
	padding:24px 0 24px 0px;
	background:#231f20;
	color:#ffffff;
}

.footer-area h3,
.footer-area h4,
.footer-area h5
{
	color:#ffffff;
}

.footer-area ul {
	display: block;
	text-align:inherit;
	list-style: none;
	margin: 0 auto;
	padding-left: 0;
}

.footer-area .menu li {
	display:block;
	text-align:inherit;
	position: relative;
	padding:0 0px;
	margin:0 0 3px 0;
}

.footer-area .menu li .nav-link
{
	display:inline-block;
}

.footer-area .menu ul ul{
	margin-left:12px;
}

.footer-area .menu li li:before
{
	color:#716e6e; /* set color to white */
	content:"\2022"; /* /2022 is the numerical unicode for &bull; */
	font-size:1em; /* set the font-size of the bullet if necessary. Make sure to use em or %*/
	padding-right:4px; /* give the bullet some padding from the text Make sure to use em*/
	position:relative;
	top:.1em; /* set the vertical position of the bullet if necessary. Make sure to use em or % */
	font-size:12px;
}

.footer-area a,
.footer-area .menu li a
{
	text-decoration:none;
	color:#ffffff;
}

.footer-area a:hover,
.footer-area .menu li a:hover,
.footer-area .nav-link:hover
{
	color:#6aadc9;
}

.footer-area .nav-link,
.footer-copyright .nav-link
{
    padding: 0rem 1rem 0.5rem;
}

.footer-copyright {
	padding:11px 0 20px;
	line-height: 18px;
	font-size:0.9rem;
	color: #1e1e1e;
	background-color: #f0f0f0;
	margin:0 0;
}

.footer-copyright a
{
	color:#716e6e;
}

.footer-copyright a:hover
{
	color:#1e1e1e;
}

.footer-copyright ul
{
	display: block;
	text-align:inherit;
	list-style: none;
	margin: 0px auto;
	padding-left: 0;
}

.footer-copyright .menu li {
	display:inline-block;
	text-align:inherit;
	position: relative;
	padding:0 0px;
	margin:0 0 0px 0;
}

.footer-copyright .logos
{
	text-align:inherit;
	margin-bottom:14px;
}


/*
*  responsive embeds
*/
.embed-container {
	position: relative;
	padding-bottom: 56.25%;
	overflow: hidden;
	max-width: 100%;
	height: auto;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.smaller
{
	font-size:84%;
}

/* bootstrap xl */
@media only screen and (max-width: 1200px)
{
	.container
	{
		max-width: 95%;
	}
}

/* bootstrap large */
@media only screen and (max-width: 992px)
{
	/* mega menu mobile break */
	header.site-header
	{
		position:absolute;
		right: 0;
		left: 0;
		top:0;
	}

	.flex-viewport
	{
		max-height: 300px !important;
	}
}

/* bootstrap medium */
@media only screen and (max-width: 768px)
{
	.site-header .cta
	{
		font-size:0.80rem;
		margin-left:30%;
	}

	.card-img-top
	{
		height: 50vw;
	}

	.footer-area .menu li {
		display:inline-block;
		margin:0 14px 3px 0;
	}

}

/* bootstrap small */
@media only screen and (max-width: 576px)
{
	.site-title img
	{
		width:120px;
		max-width:100%;
		height:auto;

		position:absolute;
		top:11px;
		left:11px;
	}

	h2
	{
	}

	.flex-viewport
	{
		max-height: 60vw !important;
	}

}




/* ===== BEGIN ALL-PRO BOOT FLEX BUILDER ===== */
.boot-flex-builder{--bfb-dark:#183746;--bfb-primary:#28586d;--bfb-accent:#6aadc9;--bfb-radius:5px;--bfb-font-impact:inherit;--bfb-font-body:inherit}
body.page-template-page-boot-flex #main{margin-top:var(--boot-flex-header-height,190px);padding-bottom:0}
.boot-flex-builder .bfb-section__content p + h2{
    margin-top: 1.5em;
}
.boot-flex-builder .js-reveal,
.boot-flex-builder .js-reveal-up,
.boot-flex-builder .js-reveal-down,
.boot-flex-builder .js-reveal-left,
.boot-flex-builder .js-reveal-right,
.boot-flex-builder .js-fade,
.boot-flex-builder .js-zoom-in,
.boot-flex-builder .js-zoom-out,
.boot-flex-builder .js-blur-in,
.boot-flex-builder .js-rotate-in{
	opacity: 0;

	transition:
		opacity 0.7s ease,
		transform 0.7s ease,
		filter 0.7s ease;

	will-change: opacity, transform, filter;
}
.boot-flex-builder .js-reveal,
.boot-flex-builder .js-reveal-up{
	transform: translateY(28px);
}
.boot-flex-builder .js-reveal-down{
	transform: translateY(-28px);
}
.boot-flex-builder .js-reveal-left{
	transform: translateX(-34px);
}
.boot-flex-builder .js-reveal-right{
	transform: translateX(34px);
}
.boot-flex-builder .js-fade{
	transform: none;
}
.boot-flex-builder .js-zoom-in{
	transform: scale(0.9);
}
.boot-flex-builder .js-zoom-out{
	transform: scale(1.08);
}
.boot-flex-builder .js-blur-in{
	filter: blur(10px);
	transform: translateY(12px);
}
.boot-flex-builder .js-rotate-in{
	transform: translateY(20px) rotate(-2deg);
}
.boot-flex-builder .js-reveal.is-visible,
.boot-flex-builder .js-reveal-up.is-visible,
.boot-flex-builder .js-reveal-down.is-visible,
.boot-flex-builder .js-reveal-left.is-visible,
.boot-flex-builder .js-reveal-right.is-visible,
.boot-flex-builder .js-fade.is-visible,
.boot-flex-builder .js-zoom-in.is-visible,
.boot-flex-builder .js-zoom-out.is-visible,
.boot-flex-builder .js-blur-in.is-visible,
.boot-flex-builder .js-rotate-in.is-visible{
	opacity: 1;
	filter: none;
	transform: none;
}
.boot-flex-builder .js-delay-1{
	transition-delay: 0.1s;
}
.boot-flex-builder .js-delay-2{
	transition-delay: 0.2s;
}
.boot-flex-builder .js-delay-3{
	transition-delay: 0.35s;
}
.boot-flex-builder .js-delay-4{
	transition-delay: 0.5s;
}
.boot-flex-builder .js-float{
	animation: clientFloat 4s ease-in-out infinite;
}
@media  (prefers-reduced-motion: reduce) {.boot-flex-builder .js-reveal,
.boot-flex-builder .js-reveal-up,
.boot-flex-builder .js-reveal-down,
.boot-flex-builder .js-reveal-left,
.boot-flex-builder .js-reveal-right,
.boot-flex-builder .js-fade,
.boot-flex-builder .js-zoom-in,
.boot-flex-builder .js-zoom-out,
.boot-flex-builder .js-blur-in,
.boot-flex-builder .js-rotate-in,
.boot-flex-builder .js-float{
		opacity: 1 !important;
		filter: none !important;
		transform: none !important;
		animation: none !important;
		transition: none !important;
	}}
.boot-flex-builder .bfb-flex-section{ position: relative; }
.boot-flex-builder .bfb-section-intro > *:last-child{ margin-bottom: 0; }
.boot-flex-builder .bfb-flex-card{
  position: relative;
  min-height: 100%;
  overflow: hidden;
}
.boot-flex-builder .bfb-flex-card--content{
  padding: 2.5rem;
}
.boot-flex-builder .bfb-flex-card__inner{
  z-index: 2;
  width: 100%;
}
.boot-flex-builder .bfb-flex-card--bg-image{
  position: relative;
}
.boot-flex-builder .bfb-flex-card__overlay{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.35);
  z-index: 1;
}
.boot-flex-builder .bfb-flex-card--image{
  min-height: 420px;
}
.boot-flex-builder .bfb-flex-img{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.boot-flex-builder .text-center .bfb-block-card__text ul{
    display: inline-block;
    text-align: center;
    list-style-position: inside;
    padding-left: 0;
}
@media  (max-width: 991.98px) {.boot-flex-builder .bfb-flex-card--content{
    padding: 2rem;
  }
.boot-flex-builder .bfb-flex-card,
.boot-flex-builder .bfb-flex-card--image{
    min-height: 320px !important;
  }}
.boot-flex-builder .bfb-card-img{ aspect-ratio: 4 / 3; object-fit: cover; }
.boot-flex-builder .bfb-hcard-img{ min-height: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.boot-flex-builder .bfb-gallery-grid__item{ aspect-ratio: 1 / 1; overflow: hidden; border-radius: var(--bfb-radius, 1rem); }
.boot-flex-builder .bfb-mosaic{ display: grid; gap: 1rem; padding: 0 1rem; }
.boot-flex-builder .bfb-mosaic--thirds,
.boot-flex-builder .bfb-mosaic--halves,
.boot-flex-builder .bfb-mosaic--1photo{ grid-template-columns: repeat(12, 1fr); }
.boot-flex-builder .bfb-mosaic--thirds .bfb-mosaic__item{ grid-column: span 4; }
.boot-flex-builder .bfb-mosaic--halves .bfb-mosaic__item{ grid-column: span 6; }
.boot-flex-builder .bfb-mosaic--1photo .bfb-mosaic__item{ grid-column: span 12; }
.boot-flex-builder .bfb-mosaic--1then2,
.boot-flex-builder .bfb-mosaic--2then1,
.boot-flex-builder .bfb-mosaic--widethen1,
.boot-flex-builder .bfb-mosaic--1thenwide{ grid-template-columns: repeat(12, 1fr); grid-auto-rows: minmax(220px, 1fr); }
.boot-flex-builder .bfb-mosaic--1then2 .bfb-mosaic__item:nth-child(1),
.boot-flex-builder .bfb-mosaic--widethen1 .bfb-mosaic__item:nth-child(1){ grid-column: span 8; grid-row: span 2; }
.boot-flex-builder .bfb-mosaic--1then2 .bfb-mosaic__item:nth-child(2),
.boot-flex-builder .bfb-mosaic--1then2 .bfb-mosaic__item:nth-child(3),
.boot-flex-builder .bfb-mosaic--widethen1 .bfb-mosaic__item:nth-child(2),
.boot-flex-builder .bfb-mosaic--widethen1 .bfb-mosaic__item:nth-child(3){ grid-column: span 4; }
.boot-flex-builder .bfb-mosaic--2then1 .bfb-mosaic__item:nth-child(1),
.boot-flex-builder .bfb-mosaic--2then1 .bfb-mosaic__item:nth-child(2),
.boot-flex-builder .bfb-mosaic--1thenwide .bfb-mosaic__item:nth-child(1),
.boot-flex-builder .bfb-mosaic--1thenwide .bfb-mosaic__item:nth-child(2){ grid-column: span 4; }
.boot-flex-builder .bfb-mosaic--2then1 .bfb-mosaic__item:nth-child(3),
.boot-flex-builder .bfb-mosaic--1thenwide .bfb-mosaic__item:nth-child(3){ grid-column: span 8; }
.boot-flex-builder .bfb-mosaic__item{ position: relative; overflow: hidden; min-height: 240px; border-radius: var(--bfb-radius, 1rem); }
.boot-flex-builder .bfb-mosaic__img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.boot-flex-builder .bfb-mosaic__link,
.boot-flex-builder .bfb-mosaic__link:hover{ color: inherit; text-decoration: none; }
.boot-flex-builder .bfb-mosaic__overlay{ position: absolute; inset: 0; display: flex; align-items: end; padding: 1.25rem; background: linear-gradient(to top, rgba(0,0,0,.6), rgba(0,0,0,.1)); }
.boot-flex-builder .bfb-mosaic__copy{ position: relative; z-index: 2; }
.boot-flex-builder .bfb-accordion-section{
	padding-top: 3rem;
	padding-bottom: 3rem;
}
.boot-flex-builder .bfb-accordion .accordion-item{
	border-right: 0;
	border-left: 0;
	border-radius: 0;
}
.boot-flex-builder .bfb-accordion .accordion-button{
	padding: 1.25rem 0;
	font-size: 1.25rem;
	font-weight: 600;
	background: transparent;
	box-shadow: none;
}
.boot-flex-builder .bfb-accordion .accordion-button:not(.collapsed){
	color: inherit;
	background: transparent;
	box-shadow: none;
}
.boot-flex-builder .bfb-accordion .accordion-body{
	padding: 0 0 1.5rem;
}
.boot-flex-builder .bfb-accordion .accordion-body > :last-child{
	margin-bottom: 0;
}
.boot-flex-builder .light-shade{
	background: rgba(238, 236, 230, 0.94);
}
.boot-flex-builder .white-shade{
	background: rgba(255, 255, 255, 0.94);
}
.boot-flex-builder .dark-shade{
	background: var(--bfb-dark, 1rem);
	color: #fff;
}
.boot-flex-builder .dark-shade h2,
.boot-flex-builder .dark-shade h3,
.boot-flex-builder .dark-shade h4,
.boot-flex-builder .dark-shade .h2,
.boot-flex-builder .dark-shade .h3,
.boot-flex-builder .dark-shade .h4,
.bfb-photo-panel a,
.boot-flex-builder .dark-shade a
{
	color:#ffffff;
}

.bfb-photo-panel a:hover,
.boot-flex-builder .dark-shade a:hover
{
	color:#6AADC9;
}

.boot-flex-builder .panel_with_bg{
	min-height:20vw;
}
@media  (max-width: 991.98px) {.boot-flex-builder .bfb-mosaic,
.boot-flex-builder .bfb-mosaic--1then2,
.boot-flex-builder .bfb-mosaic--2then1,
.boot-flex-builder .bfb-mosaic--widethen1,
.boot-flex-builder .bfb-mosaic--1thenwide,
.boot-flex-builder .bfb-mosaic--thirds,
.boot-flex-builder .bfb-mosaic--halves,
.boot-flex-builder .bfb-mosaic--1photo{ grid-template-columns: 1fr; padding: 0 .75rem; }
.boot-flex-builder .bfb-mosaic .bfb-mosaic__item{ grid-column: auto !important; grid-row: auto !important; }}
@media  (min-width: 768px) {.boot-flex-builder .smart_content_panel > .container > .row{
        --bs-gutter-x: 3rem;
    }}
.boot-flex-builder .bfb-block-media{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 220px;
	padding: 2rem;
}
.boot-flex-builder .bfb-block-image{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.boot-flex-builder .bfb-block-icon-wrap{
	display: flex;
	align-items: center;
	justify-content: center;

	width: 150px;
	height: 150px;

	border-radius: 2rem;

	background: rgba(113, 131, 111, 0.10);

	box-shadow:
		0 1px 2px rgba(0,0,0,.04),
		inset 0 1px 0 rgba(255,255,255,.7);

	transition:
		transform .35s ease,
		box-shadow .35s ease,
		background-color .35s ease;
}
.boot-flex-builder .bfb-block-icon-wrap i{
	display: block;

	font-size: clamp(5.5rem, 8vw, 6.75rem);

	line-height: 1;

	color: var(--bfb-primary, 1rem);

	transition:
		transform .35s ease,
		color .35s ease;
}
.boot-flex-builder .bfb-cards-grid .card{
	display: flex;
	flex-direction: column;
	height: 100%;

	overflow: hidden;

	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: var(--bfb-radius-sm, 1rem);

	box-shadow: none;

	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease;
}
.boot-flex-builder .bfb-cards-grid .card:hover,
.boot-flex-builder .bfb-cards-grid .card:focus-within{
	transform: translateY(-3px);
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.12);
}
.boot-flex-builder .bfb-card{
	display: flex;
	flex-direction: column;

	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: var(--bfb-radius-sm, 1rem);

	box-shadow: none;

	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease;
}
.boot-flex-builder .bfb-cards-grid .card-image-link{
	display: block;
	width: 100%;
	overflow: hidden;
}
.boot-flex-builder .bfb-cards-grid .card-image-link .bfb-block-media{
	width: 100%;
	padding: 0;
	overflow: hidden;
}
.boot-flex-builder .bfb-cards-grid .card-image-link img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;

	transition: transform 0.25s ease;
}
.boot-flex-builder .bfb-cards-grid .card:hover .card-image-link img{
	transform: scale(1.025);
}
.boot-flex-builder .bfb-cards-grid .bfb-block-media{
	width: 100%;
	height: 220px;
	padding: 1rem;
}
.boot-flex-builder .bfb-cards-grid .bfb-block-icon-wrap{
	width: 185px;
	height: 185px;
	border-radius: 1.5rem;

	background: rgba(44, 74, 62, 0.07);

	box-shadow:
		inset 0 1px 0 rgba(255,255,255,0.8),
		0 1px 3px rgba(0,0,0,0.05);
}
.boot-flex-builder .bfb-cards-grid .bfb-block-icon-wrap i{
	font-size: clamp(6.5rem, 9vw, 8rem);
	color: var(--bfb-primary, 1rem);
}
.boot-flex-builder .bfb-cards-grid .card-body{
	display: flex;
	flex-direction: column;
	flex: 1;

	width: 100%;
	padding: 1.1rem 1.2rem 1.25rem;

	background: #fff;
}
.boot-flex-builder .bfb-cards-grid .card-title{
	font-family:inherit;
	font-weight: 600;
	margin-bottom: 0.7rem;
	font-size: 1.4rem;
	line-height: 1.15;
	color: var(--bfb-heading, 1rem);
}
.boot-flex-builder .bfb-cards-grid .card-body p{
	margin-bottom: 0;
	line-height: 1.5;
}
.boot-flex-builder .bfb-cards-grid .card-footer{
	width: 100%;
	padding: 0 1.2rem 1.25rem;

	border-top: 0;

	background: #fff;
}
.boot-flex-builder .card:hover .bfb-block-icon-wrap,
.boot-flex-builder .card:focus-within .bfb-block-icon-wrap{

	transform: translateY(-4px);

	background: rgba(44, 74, 62, 0.16);

	box-shadow:
		0 14px 32px rgba(0,0,0,.10),
		inset 0 1px 0 rgba(255,255,255,.9);
}
.boot-flex-builder .card:hover .bfb-block-icon-wrap i,
.boot-flex-builder .card:focus-within .bfb-block-icon-wrap i{

	transform: scale(1.08);
}
.boot-flex-builder .dark-shade .bfb-block-icon-wrap{

	background: rgba(255,255,255,.08);

	box-shadow:
		0 1px 2px rgba(0,0,0,.25),
		inset 0 1px 0 rgba(255,255,255,.08);
}
.boot-flex-builder .dark-shade .bfb-block-icon-wrap i{

	color: #fff;
}
@media  (max-width: 767.98px) {.boot-flex-builder .bfb-block-media{

		height: 180px;
		padding: 1.5rem;
	}
.boot-flex-builder .bfb-block-icon-wrap{

		width: 125px;
		height: 125px;
		border-radius: 1.5rem;
	}
.boot-flex-builder .bfb-block-icon-wrap i{

		font-size: 4.75rem;
	}}
@media  (prefers-reduced-motion: reduce) {.boot-flex-builder .bfb-block-icon-wrap,
.boot-flex-builder .bfb-block-icon-wrap i{

		transition: none;
	}}
.boot-flex-builder .dynamic-gallery{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	grid-auto-flow: dense;
	grid-auto-rows: 165px;
	gap: 8px;
}
.boot-flex-builder .dynamic-gallery__item{
	position: relative;
	min-width: 0;
	margin: 0;
	overflow: hidden;
	background: var(--bfb-light, 1rem);
}
.boot-flex-builder .dynamic-gallery__item--wide{
	grid-column: span 2;
}
.boot-flex-builder .dynamic-gallery__item--tall{
	grid-row: span 2;
}
.boot-flex-builder .dynamic-gallery__item--featured{
	grid-column: span 2;
	grid-row: span 2;
}
.boot-flex-builder .dynamic-gallery__link{
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	color: inherit;
	background: #222;
}
.boot-flex-builder .dynamic-gallery__image{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transform: scale(1);
	transition:
		transform 500ms cubic-bezier(.2, .7, .2, 1),
		filter 350ms ease;
}
.boot-flex-builder .dynamic-gallery__overlay{
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(
		180deg,
		rgba(0, 0, 0, 0) 45%,
		rgba(0, 0, 0, 0.35) 100%
	);
	opacity: 0;
	transition: opacity 300ms ease;
}
.boot-flex-builder .dynamic-gallery__icon{
	position: relative;
	display: block;
	width: 46px;
	height: 46px;
	border: 2px solid rgba(255, 255, 255, 0.95);
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.35);
	backdrop-filter: blur(3px);
	transform: translateY(8px) scale(0.9);
	transition: transform 300ms ease;
}
.boot-flex-builder .dynamic-gallery__icon::before{
	content: "";
	position: absolute;
	top: 12px;
	left: 12px;
	width: 14px;
	height: 14px;
	border: 2px solid #fff;
	border-radius: 50%;
}
.boot-flex-builder .dynamic-gallery__icon::after{
	content: "";
	position: absolute;
	top: 27px;
	left: 27px;
	width: 10px;
	height: 2px;
	background: #fff;
	transform: rotate(45deg);
	transform-origin: left center;
}
.boot-flex-builder .dynamic-gallery__link:hover .dynamic-gallery__image,
.boot-flex-builder .dynamic-gallery__link:focus-visible .dynamic-gallery__image{
	transform: scale(1.055);
	filter: brightness(0.82);
}
.boot-flex-builder .dynamic-gallery__link:hover .dynamic-gallery__overlay,
.boot-flex-builder .dynamic-gallery__link:focus-visible .dynamic-gallery__overlay{
	opacity: 1;
}
.boot-flex-builder .dynamic-gallery__link:hover .dynamic-gallery__icon,
.boot-flex-builder .dynamic-gallery__link:focus-visible .dynamic-gallery__icon{
	transform: translateY(0) scale(1);
}
.boot-flex-builder .dynamic-gallery__link:focus-visible{
	outline: 3px solid currentColor;
	outline-offset: -3px;
}
.boot-flex-builder .dynamic-gallery__caption{
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	padding: 2rem 0.9rem 0.75rem;
	color: #fff;
	font-size: 0.9rem;
	line-height: 1.3;
	pointer-events: none;
	background: linear-gradient(
		to bottom,
		transparent,
		rgba(0, 0, 0, 0.72)
	);
}
@media  (min-width: 768px) {.boot-flex-builder .dynamic-gallery{
		grid-template-columns: repeat(4, minmax(0, 1fr));
		grid-auto-rows: 190px;
		gap: 10px;
	}}
@media  (min-width: 1200px) {.boot-flex-builder .dynamic-gallery{
		grid-template-columns: repeat(6, minmax(0, 1fr));
		grid-auto-rows: 180px;
	}
.boot-flex-builder .dynamic-gallery__item--featured{
		grid-column: span 2;
		grid-row: span 2;
	}}
@media  (prefers-reduced-motion: reduce) {.boot-flex-builder .dynamic-gallery__image,
.boot-flex-builder .dynamic-gallery__overlay,
.boot-flex-builder .dynamic-gallery__icon{
		transition: none;
	}}
.boot-flex-builder .card-image-link .bfb-block-media{
	padding: 0;
	overflow: hidden;
}
.boot-flex-builder .card-image-link .bfb-block-media img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.boot-flex-builder .page-heading-banner{
	position: relative;
	display: flex;
	align-items: center;
	min-height: 25vw;
	overflow: hidden;
	background-color: var(--bfb-dark, 1rem);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	color: #fff;
}
.boot-flex-builder .page-heading-banner__overlay{
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
}
.boot-flex-builder .page-heading-banner__inner{
	position: relative;
	z-index: 2;
	width: 100%;
	padding-top: 3rem;
	padding-bottom: 3rem;
}
.boot-flex-builder .page-heading-banner__title{
	max-width: 900px;
	margin: 0;
	color: #fff;
	font-family:inherit;
	font-size: clamp(2.5rem, 5vw, 5rem);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: 0.01em;
	text-shadow: 0 2px 12px rgba(0, 0, 0, 0.35);
}
@media  (max-width: 991.98px) {.boot-flex-builder .page-heading-banner{
		min-height: 42vw;
	}
.boot-flex-builder .page-heading-banner__inner{
		padding-top: 3.5rem;
		padding-bottom: 3.5rem;
	}}
@media  (max-width: 767.98px) {.boot-flex-builder .page-heading-banner{
		min-height: 65vw;
	}
.boot-flex-builder .page-heading-banner__inner{
		padding-top: 4rem;
		padding-bottom: 4rem;
	}
.boot-flex-builder .page-heading-banner__title{
		font-size: clamp(2.25rem, 11vw, 4rem);
	}}
@media  (max-width: 480px) {.boot-flex-builder .page-heading-banner{
		min-height: 78vw;
	}}
.boot-flex-builder .section-gap{
	margin-bottom: 3.2rem;
}
@media  (max-width: 991.98px) {.boot-flex-builder .section-gap{
		margin-bottom: 3rem;
	}}
@media  (max-width: 767.98px) {.boot-flex-builder .section-gap{
		margin-bottom: 2rem;
	}}
.boot-flex-builder .bfb-photo-panel,
.boot-flex-builder .bfb-photo-panel .row{
	margin: 0;
}
.boot-flex-builder .bfb-photo-panel__item{
	flex: 1 1 auto;
	width: 100%;
	min-height: 28rem;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.boot-flex-builder .bfb-photo-panel__item--stacked{
	min-height: 14rem;
}
.boot-flex-builder .bfb-photo-panel__item--solo{
	min-height: clamp(24rem, 45vw, 46rem);
}
.boot-flex-builder .bfb-photo-panel__link{
	color: inherit;
	text-decoration: none;
}
.boot-flex-builder .bfb-photo-panel__overlay{
	background: rgba(0, 0, 0, 0.38);
	color: #fff;
	transition: background-color 0.25s ease;
}
.boot-flex-builder .bfb-photo-panel__link:hover .bfb-photo-panel__overlay,
.boot-flex-builder .bfb-photo-panel__link:focus-visible .bfb-photo-panel__overlay{
	background: rgba(0, 0, 0, 0.52);
}
.boot-flex-builder .bfb-photo-panel__content{
	max-width: 42rem;
}
.boot-flex-builder .bfb-photo-panel__heading{
	font-size: clamp(1.75rem, 3vw, 3.25rem);
	font-weight: 700;
	line-height: 1.1;
}
.boot-flex-builder .bfb-photo-panel__text{
	margin-top: 0.75rem;
	font-size: 1.125rem;
}
.boot-flex-builder .bfb-photo-panel__text > :last-child{
	margin-bottom: 0;
}
@media  (max-width: 991.98px) {.boot-flex-builder .bfb-photo-panel__item,
.boot-flex-builder .bfb-photo-panel__item--stacked{
		min-height: 24rem;
	}}
.boot-flex-builder .bfb-hero-slider{
	position: relative;
	overflow: hidden;
}
.boot-flex-builder .bfb-hero-slider .hero-slide{
	position: relative;
	min-height: 560px;
	overflow: hidden;
}
.boot-flex-builder .bfb-hero-slider .hero-video-bg,
.boot-flex-builder .bfb-hero-slider .hero-image-bg{
	position: absolute;
	inset: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
}
.boot-flex-builder .bfb-hero-slider .hero-video-bg{
	object-fit: cover;
}
.boot-flex-builder .bfb-hero-slider .hero-image-bg{
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;



	transform: scale(1.075);
	transform-origin: center center;
	transition: transform 6s ease-out;
	will-change: transform;
}
.boot-flex-builder .bfb-hero-slider .carousel.hero-kenburns-ready
.carousel-item.active
.hero-image-bg{
	transform: scale(1);
}
.boot-flex-builder .bfb-hero-slider .hero-overlay{
	position: absolute;
	inset: 0;
	z-index: 1;
	pointer-events: none;
}
.boot-flex-builder .bfb-hero-slider .hero-slide-content{
	position: relative;
	z-index: 2;
	opacity: 0;

	padding-left: 92px;
	padding-right: 92px;

	text-shadow: 0 1px 8px rgba(0, 0, 0, 0.28);

	transition:
		opacity 0.7s ease,
		transform 0.7s ease;

	will-change: opacity, transform;
}
.boot-flex-builder .bfb-hero-slider .hero-title{
	color: #fff;

	margin-bottom: 0.4em;
	font-family:inherit;
	font-size: clamp(2.5rem, 5vw, 4.2rem);
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.01em;
}
.boot-flex-builder .bfb-hero-slider .hero-content{
	color: #fff;
	font-size: clamp(1.05rem, 2.2vw, 1.45rem);
	font-weight: 500;
	line-height: 1.35;
	letter-spacing: 0.01em;
}
.boot-flex-builder .bfb-hero-slider .hero-animate-up{
	transform: translateY(28px);
}
.boot-flex-builder .bfb-hero-slider .hero-animate-left{
	transform: translateX(-34px);
}
.boot-flex-builder .bfb-hero-slider .hero-animate-right{
	transform: translateX(34px);
}
.boot-flex-builder .bfb-hero-slider .hero-animate-fade{
	transform: none;
}
.boot-flex-builder .bfb-hero-slider .carousel.hero-carousel-ready
.carousel-item.active
.hero-slide-content{
	opacity: 1;
	transform: translate3d(0, 0, 0);
}
.boot-flex-builder .bfb-hero-slider .hero-stagger-item{
	opacity: 0;
	transform: translateY(18px);

	transition:
		opacity 0.55s ease,
		transform 0.55s ease;

	will-change: opacity, transform;
}
.boot-flex-builder .bfb-hero-slider .carousel.hero-carousel-ready
.carousel-item.active
.hero-stagger-item{
	opacity: 1;
	transform: translateY(0);
}
.boot-flex-builder .bfb-hero-slider .carousel.hero-carousel-ready
.carousel-item.active
.hero-stagger-heading{
	transition-delay: 0.16s;
}
.boot-flex-builder .bfb-hero-slider .carousel.hero-carousel-ready
.carousel-item.active
.hero-stagger-copy{
	transition-delay: 0.30s;
}
.boot-flex-builder .bfb-hero-slider .carousel.hero-carousel-ready
.carousel-item.active
.hero-stagger-button{
	transition-delay: 0.44s;
}
.boot-flex-builder .bfb-hero-slider .carousel-control-prev,
.boot-flex-builder .bfb-hero-slider .carousel-control-next{
	top: 50%;
	bottom: auto;

	width: 48px;
	height: 48px;
	margin: 0 20px;

	border: 1px solid rgba(255, 255, 255, 0.58);
	border-radius: 50%;

	background: rgba(0, 0, 0, 0.28);
	opacity: 0.82;

	transform: translateY(-50%);

	transition:
		opacity 0.25s ease,
		background-color 0.25s ease,
		transform 0.25s ease;

	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
}
.boot-flex-builder .bfb-hero-slider .carousel-control-prev:hover,
.boot-flex-builder .bfb-hero-slider .carousel-control-next:hover,
.boot-flex-builder .bfb-hero-slider .carousel-control-prev:focus-visible,
.boot-flex-builder .bfb-hero-slider .carousel-control-next:focus-visible{
	background: rgba(0, 0, 0, 0.52);
	opacity: 1;
	transform: translateY(-50%) scale(1.06);
}
.boot-flex-builder .bfb-hero-slider .carousel-control-prev:focus-visible,
.boot-flex-builder .bfb-hero-slider .carousel-control-next:focus-visible{
	outline: 3px solid #fff;
	outline-offset: 3px;
}
.boot-flex-builder .bfb-hero-slider .carousel-control-prev-icon,
.boot-flex-builder .bfb-hero-slider .carousel-control-next-icon{
	width: 1.15rem;
	height: 1.15rem;
}
.boot-flex-builder .bfb-hero-slider .bfb-hero-slider__indicators{
	bottom: 17px;
	z-index: 4;

	gap: 8px;
	margin-bottom: 0;
}
.boot-flex-builder .bfb-hero-slider .bfb-hero-slider__indicators [data-bs-target]{
	box-sizing: border-box;

	width: 9px;
	height: 9px;
	margin: 0;
	padding: 0;

	border: 1px solid rgba(255, 255, 255, 0.9);
	border-radius: 50%;

	background-color: transparent;
	background-clip: border-box;

	opacity: 0.75;

	transition:
		background-color 0.25s ease,
		opacity 0.25s ease,
		transform 0.25s ease;
}
.boot-flex-builder .bfb-hero-slider
.bfb-hero-slider__indicators
[data-bs-target]:hover,
.boot-flex-builder .bfb-hero-slider
.bfb-hero-slider__indicators
[data-bs-target]:focus-visible{
	opacity: 1;
	transform: scale(1.2);
}
.boot-flex-builder .bfb-hero-slider .bfb-hero-slider__indicators .active{
	background-color: #fff;
	opacity: 1;
	transform: scale(1.15);
}
.boot-flex-builder .bfb-hero-slider
.bfb-hero-slider__indicators
[data-bs-target]:focus-visible{
	outline: 2px solid #fff;
	outline-offset: 4px;
}
@media  (max-width: 991.98px) {.boot-flex-builder .bfb-hero-slider .hero-slide-content{
		padding-left: 60px;
		padding-right: 60px;
	}}
@media  (max-width: 767.98px) {.boot-flex-builder .bfb-hero-slider .hero-slide{
		min-height: 460px;
	}
.boot-flex-builder .bfb-hero-slider .carousel-control-prev,
.boot-flex-builder .bfb-hero-slider .carousel-control-next{
		width: 40px;
		height: 40px;
		margin: 0 10px;
	}
.boot-flex-builder .bfb-hero-slider .carousel-control-prev-icon,
.boot-flex-builder .bfb-hero-slider .carousel-control-next-icon{
		width: 0.95rem;
		height: 0.95rem;
	}
.boot-flex-builder .bfb-hero-slider .bfb-hero-slider__indicators{
		bottom: 12px;
	}
.boot-flex-builder .bfb-hero-slider .hero-slide-content{
		padding-left: 44px;
		padding-right: 44px;
	}
.boot-flex-builder .bfb-hero-slider .hero-title{
		font-size: clamp(2.2rem, 9vw, 3rem);
		line-height: .95;
	}
.boot-flex-builder .bfb-hero-slider .hero-content{
		font-size: 1.1rem;
		line-height: 1.35;
		max-width: 22rem;
	}
.boot-flex-builder .bfb-hero-slider .hero-button{
		font-size: 1.1rem;
		padding: .75rem 1.5rem;
	}}
@media  (prefers-reduced-motion: reduce) {.boot-flex-builder .bfb-hero-slider .hero-slide-content,
.boot-flex-builder .bfb-hero-slider .hero-stagger-item,
.boot-flex-builder .bfb-hero-slider .hero-image-bg{
		opacity: 1;
		transform: none;
		transition: none;
	}}
.boot-flex-builder .g-0{margin-left:0;margin-right:0}.boot-flex-builder .g-0>[class*="col"]{padding-left:0;padding-right:0}
.boot-flex-builder .object-fit-cover{object-fit:cover}.boot-flex-builder .z-2{z-index:2}
.boot-flex-builder .boot-flex-cards{display:grid;grid-template-columns:repeat(var(--boot-flex-columns,3),minmax(0,1fr));margin:0;gap:24px}
.boot-flex-builder .boot-flex-cards>.col{padding:0;max-width:none;min-width:0}
.boot-flex-builder .accordion-button{display:flex;width:100%;text-align:left;border:0;padding:18px;font:inherit;cursor:pointer;background:#edf3f5;color:#183746}
.boot-flex-builder .accordion-header{margin:0}.boot-flex-builder .accordion-body{padding:20px}.boot-flex-builder .accordion-item{border:1px solid #dbe2e5}
.boot-flex-builder .bordered-panel{border-top:1px solid #dbe2e5;border-bottom:1px solid #dbe2e5}
.boot-flex-builder .light-shade,.boot-flex-builder .light-shade-alt{background:#edf3f5}
.boot-flex-builder .dark-shade,.boot-flex-builder .dark-shade-alt{background:#183746;color:white}
.boot-flex-builder .bfb-anchor-point{display:block;scroll-margin-top:calc(var(--boot-flex-header-height,190px) + 20px)}
.boot-flex-builder .page-heading-banner__title{font-family:inherit}
.boot-flex-builder:not(.boot-flex-motion) [class*="js-"]{opacity:1;transform:none;filter:none}
@media(min-width:768px) and (max-width:991px){.boot-flex-builder .boot-flex-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.boot-flex-builder .boot-flex-cards{grid-template-columns:1fr}}

.boot-flex-builder{--bfb-heading:#231f20;--bfb-light:#edf3f5;--bfb-radius-sm:4px}
.boot-flex-builder>section{margin:0}.boot-flex-builder>section.page-heading-banner{margin-bottom:3.2rem}
.boot-flex-builder .boot-flex-horizontal-card{display:grid!important;grid-template-columns:40% minmax(0,1fr);align-items:stretch!important}
.boot-flex-builder .boot-flex-horizontal-card>.card-image-link{grid-column:1;grid-row:1/3;height:100%}
.boot-flex-builder .boot-flex-horizontal-card .bfb-block-media,.boot-flex-builder .boot-flex-horizontal-card .bfb-block-image{height:100%;min-height:180px;object-fit:cover}
.boot-flex-builder .boot-flex-horizontal-card>.card-body,.boot-flex-builder .boot-flex-horizontal-card>.card-footer{grid-column:2}
.boot-flex-builder .panel_with_bg{position:relative;isolation:isolate}.boot-flex-builder .boot-flex-bg-dark::before,.boot-flex-builder .boot-flex-bg-light::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none}
.boot-flex-builder .boot-flex-bg-dark::before{background:#0008}.boot-flex-builder .boot-flex-bg-light::before{background:#fffc}

/* All-Pro builder presentation, version 1.1.0. Scoped to Boot Flex pages. */
.boot-flex-builder {
  --bfb-primary:#3b7087; --bfb-heading:#183746; --bfb-dark:#183746;
  --bfb-light:#eef4f6; --bfb-accent:#6aadc9; --bfb-radius:8px;
  --bfb-radius-sm:8px; --bfb-font-impact:inherit; --bfb-font-heading:inherit;
  color:#303d43; line-height:1.7;
}
.boot-flex-builder, .boot-flex-builder * { box-sizing:border-box; }
.boot-flex-builder > section { margin:0; }
.boot-flex-builder :where(h2,h3,h4) { color:var(--bfb-heading); line-height:1.25; letter-spacing:0; }
.boot-flex-builder h2 { font-size:clamp(1.6rem,2.3vw,2.2rem); margin:0 0 1.25rem; }
.boot-flex-builder h3 { font-size:clamp(1.25rem,1.8vw,1.6rem); margin:0 0 1rem; }
.boot-flex-builder .bfb-section__content p { margin-bottom:1.15rem; }
.boot-flex-builder .bfb-section__content > :last-child { margin-bottom:0; }
.boot-flex-builder .smart_content_panel { padding-left:0; padding-right:0; }
.boot-flex-builder .smart_content_panel:not(.smart_content_panel--fill-half) > .container > .row { row-gap:1.75rem; }
.boot-flex-builder .smart_content_panel .img-fluid { width:100%; height:auto; border-radius:8px; }
.boot-flex-builder .smart_content_panel:not(:has(img)) .bfb-section__content { max-width:1000px; margin-left:auto; margin-right:auto; }
.boot-flex-builder .smart_content_panel:has(h2.text-center):not(:has(img)) .bfb-section__content { text-align:center; }
.boot-flex-builder .light-shade,.boot-flex-builder .light-panel,.boot-flex-builder .light-shade-alt { background:#eef4f6; }
.boot-flex-builder .dark-shade,.boot-flex-builder .dark-shade-alt { background:#183746; color:#fff; }
.boot-flex-builder :is(.dark-shade,.dark-shade-alt) :is(h2,h3,h4) { color:#fff; }
.boot-flex-builder .bordered-panel { border-block:1px solid #dbe5e9; }
/* Banner retains the ACF-selected photograph and overlay amount. */
.boot-flex-builder > .page-heading-banner { min-height:clamp(340px,32vw,540px); margin:0; background-position:center; }
.boot-flex-builder .page-heading-banner__inner { padding-top:4rem; padding-bottom:4rem; }
.boot-flex-builder .page-heading-banner__title { max-width:1050px; color:#fff; font-family:inherit; font-size:clamp(2rem,3.65vw,3.5rem); line-height:1.12; font-weight:700; letter-spacing:0; text-wrap:balance; text-shadow:0 2px 12px #0006; }
/* Photo panels: large service panel with stacked industry/area panels. */
.boot-flex-builder .bfb-photo-panel .row { gap:0; }
.boot-flex-builder .bfb-photo-panel__item { min-height:480px; background-size:cover; background-position:center; }
.boot-flex-builder .bfb-photo-panel__item--stacked { min-height:290px; }
.boot-flex-builder .bfb-photo-panel__item--solo { min-height:clamp(350px,36vw,580px); }
.boot-flex-builder .bfb-photo-panel__link { display:flex; width:100%; color:#fff; text-decoration:none; }
.boot-flex-builder .bfb-photo-panel__overlay { background:linear-gradient(120deg,rgba(11,32,43,.83),rgba(11,32,43,.60)); color:#fff; }
.boot-flex-builder .bfb-photo-panel__link:hover .bfb-photo-panel__overlay,.boot-flex-builder .bfb-photo-panel__link:focus-visible .bfb-photo-panel__overlay { background:rgba(11,32,43,.80); }
.boot-flex-builder .bfb-photo-panel__content { width:100%; max-width:760px; margin:auto; padding:clamp(28px,3vw,56px)!important; }
.boot-flex-builder .bfb-photo-panel__heading { color:#fff; font-size:clamp(1.65rem,2.6vw,2.5rem); font-weight:700; line-height:1.2; margin:0 0 1.15rem; }
.boot-flex-builder .bfb-photo-panel__text { color:#fff; font-size:1rem; line-height:1.7; margin:0; }
.boot-flex-builder .bfb-photo-panel__text ul { display:inline-block; max-width:100%; margin:0; padding-left:1.2rem; text-align:left; }
.boot-flex-builder .bfb-photo-panel__text li { padding-left:.25rem; margin-bottom:.4rem; }
.boot-flex-builder .bfb-photo-panel__text li:last-child { margin-bottom:0; }
.boot-flex-builder .bfb-photo-panel__text li::marker { color:#a3d6e9; }
.boot-flex-builder .bfb-photo-panel__text:not(:has(*)) { white-space:pre-line; }
.boot-flex-builder .bfb-photo-panel__link:focus-visible { outline:3px solid #a3d6e9; outline-offset:-5px; }
/* Standard image/icon cards. */
.boot-flex-builder .bfb-cards-grid { padding-top:clamp(32px,4vw,64px); padding-bottom:clamp(32px,4vw,64px); }
.boot-flex-builder .bfb-cards-grid .card { border:1px solid #dbe5e9; border-radius:8px; background:#fff; box-shadow:0 3px 16px #18374609; }
.boot-flex-builder .bfb-cards-grid .card:hover { box-shadow:0 8px 22px #18374616; transform:translateY(-3px); }
.boot-flex-builder .bfb-cards-grid .bfb-block-media { height:220px; padding:0; display:flex; align-items:center; justify-content:center; background:#eef4f6; }
.boot-flex-builder .bfb-cards-grid .bfb-block-image { width:100%; height:100%; object-fit:cover; }
.boot-flex-builder .bfb-cards-grid .bfb-block-icon-wrap { width:130px; height:130px; border-radius:50%; background:#ddebf1; }
.boot-flex-builder .bfb-cards-grid .bfb-block-icon-wrap i { color:#3b7087; font-size:4rem; }
.boot-flex-builder .bfb-cards-grid .card-body { padding:1.5rem; }
.boot-flex-builder .bfb-cards-grid .card-title { font-family:inherit; font-size:1.4rem; color:#183746; }
.boot-flex-builder .bfb-cards-grid .card-title a { color:inherit; text-decoration:none; }
.boot-flex-builder .bfb-cards-grid .card-footer { padding:0 1.5rem 1.5rem; }
.boot-flex-builder .bfb-cards-grid .card-body ul { text-align:left; padding-left:1.2rem; }
/* Testimonials use a calm shaded panel and a blue accent. */
.boot-flex-builder > section:has(.review) { padding:clamp(36px,5vw,72px) 0; background:#fff; }
.boot-flex-builder .styled-ul:has(.review) { padding-bottom:0!important; }
.boot-flex-builder .card:has(.review) { max-width:1000px; margin:0 auto; border:0; border-left:5px solid #6aadc9; border-radius:8px; background:#eef4f6; box-shadow:none; }
.boot-flex-builder .card:has(.review) > .card-body { padding:clamp(26px,4vw,48px); }
.boot-flex-builder .review { color:#243e4b; font-size:clamp(1.1rem,1.6vw,1.35rem); font-weight:400; font-style:italic; line-height:1.8; text-align:left; }
.boot-flex-builder .review > .fa { display:block; color:#3b7087; font-size:1.6rem; margin-bottom:12px; }
.boot-flex-builder .review p { margin:0; }
.boot-flex-builder .reviewer { margin-top:18px; color:#3b7087; font-size:.95rem; font-weight:600; text-align:left; }
/* Bootstrap 4 behavior with clear question buttons and visible indicators. */
.boot-flex-builder .bfb-accordion-section { padding:clamp(36px,5vw,72px) 0; }
.boot-flex-builder .bfb-accordion-section > .container > h2 { text-align:center; margin-bottom:28px; }
.boot-flex-builder .bfb-accordion { max-width:1000px; margin:0 auto; }
.boot-flex-builder .bfb-accordion .accordion-item { border:1px solid #d6e2e7; border-radius:6px; background:#fff; overflow:hidden; margin:0 0 12px; }
.boot-flex-builder .bfb-accordion .accordion-header { margin:0; padding:0; font-size:1.1rem; }
.boot-flex-builder .bfb-accordion .accordion-button { display:flex; align-items:center; justify-content:space-between; gap:20px; width:100%; margin:0; border:0; border-radius:0; padding:20px 24px; background:#fff; color:#183746; font-family:inherit; font-size:1.05rem; font-weight:600; line-height:1.5; text-align:left; text-transform:none; letter-spacing:0; box-shadow:none; cursor:pointer; }
.boot-flex-builder .bfb-accordion .accordion-button::after { content:'+'; flex:0 0 22px; width:22px; height:auto; margin:0; background:none; color:#3b7087; font:400 1.6rem/1 sans-serif; text-align:center; transform:none; }
.boot-flex-builder .bfb-accordion .accordion-button[aria-expanded="true"] { background:#e6f0f4; color:#214c61; }
.boot-flex-builder .bfb-accordion .accordion-button[aria-expanded="true"]::after { content:'−'; }
.boot-flex-builder .bfb-accordion .accordion-button:hover { background:#f0f6f8; }
.boot-flex-builder .bfb-accordion .accordion-button:focus-visible { outline:3px solid #3b7087; outline-offset:-3px; }
.boot-flex-builder .bfb-accordion .accordion-body { padding:8px 24px 24px; color:#303d43; font-size:1rem; line-height:1.75; }
.boot-flex-builder .bfb-accordion .accordion-body > :last-child { margin-bottom:0; }
@media(max-width:991px) {
 .boot-flex-builder .bfb-photo-panel__item--large { min-height:420px; }
 .boot-flex-builder .bfb-photo-panel__item--stacked { min-height:280px; }
}
@media(max-width:767px) {
 .boot-flex-builder > .page-heading-banner { min-height:320px; }
 .boot-flex-builder .page-heading-banner__inner { padding-top:3rem; padding-bottom:3rem; }
 .boot-flex-builder .page-heading-banner__title { font-size:clamp(1.9rem,7.2vw,2.7rem); }
 .boot-flex-builder .bfb-photo-panel__item--large { min-height:0; }
 .boot-flex-builder .bfb-photo-panel__item--stacked { min-height:260px; }
 .boot-flex-builder .bfb-photo-panel__content { padding:32px 24px!important; }
 .boot-flex-builder .bfb-photo-panel__text { font-size:.95rem; }
 .boot-flex-builder .bfb-accordion .accordion-button { padding:18px; font-size:1rem; }
 .boot-flex-builder .bfb-accordion .accordion-body { padding:4px 18px 20px; }
}
@media(prefers-reduced-motion:reduce) {
 .boot-flex-builder .card,.boot-flex-builder .bfb-photo-panel__overlay { transition:none!important; }
 .boot-flex-builder .card:hover { transform:none; }
}

/* Banner/photo-panel update 1.2.0 */
.boot-flex-builder > section.page-heading-banner {
 margin-bottom:0!important; padding-bottom:0!important;
}
.boot-flex-builder .page-heading-banner__title {
 text-shadow:0 2px 5px rgba(0,0,0,.38);
}
.boot-flex-builder .page-heading-banner__subcontent {
 max-width:850px; margin-top:1.25rem; color:#fff;
 font-size:clamp(1rem,1.4vw,1.2rem); line-height:1.6;
}
.boot-flex-builder .page-heading-banner__subcontent > :last-child { margin-bottom:0; }
.boot-flex-builder .page-heading-banner__subcontent :where(h2,h3,h4,p) { color:inherit; }
/* Buttons intentionally use the existing All-Pro theme's .btn rules. */
/* Horizontal seams within stacked photo panels. */
.boot-flex-builder .bfb-photo-panel__item { position:relative; }
.boot-flex-builder .bfb-photo-panel__item + .bfb-photo-panel__item::after {
 content:''; position:absolute; top:0; left:0; right:0; height:3px;
 background:#fff; z-index:3; pointer-events:none;
}
/* At desktop sizes, separate adjacent photo columns without changing widths. */
@media(min-width:992px) {
 .boot-flex-builder .bfb-photo-panel > .row > div + div {
  border-left:3px solid rgba(255,255,255,.35);
 }
}
@media(min-width:768px) and (max-width:991px) {
 .boot-flex-builder .bfb-photo-panel > .row > .col-md-6 + .col-md-6,
 .boot-flex-builder .bfb-photo-panel > .row > .col-md-4 + .col-md-4 {
  border-left:3px solid rgba(255,255,255,.35);
 }
 .boot-flex-builder .bfb-photo-panel > .row > .col-lg-4,
 .boot-flex-builder .bfb-photo-panel > .row > .col-lg-8 {
  border-top:3px solid rgba(255,255,255,.35);
 }
}
@media(max-width:767px) {
 .boot-flex-builder .bfb-photo-panel > .row > div + div {
  border-top:3px solid rgba(255,255,255,.35);
 }
}

/* ===== END ALL-PRO BOOT FLEX BUILDER ===== */
