/*
Custom CSS for website theme
Version: 1.0
Description: Used to establish the look and feel for the custom website
Author: Full Spectrum Marketing
Author URL: http://www.fsm.agency
*/

/* VARIABLES */
:root {
    /* Brand Color Palette */
    --Brand-Color-Primary: #005195;
    --Brand-Color-Secondary: #FF8E00;
    --Brand-Color-3: #ECF8FD;
    --Brand-Color-4: #031A42;
    --Brand-Color-5: #2078B3;
    --Brand-Color-6: #FF8E00;
	/* Default Colors */
    --Default-Black: #16242E;
    --Default-White: #FFF;
    /* Typography */
    --Heading-1-Size: clamp(2.375rem, round(0.857rem + 4.857cqi, 0.5rem), 4.5rem);
    --Heading-2-Size: clamp(1.875rem, round(0.625rem + 4cqi, 0.5rem), 3.625rem);
    --Heading-3-Size: clamp(1.5rem, round(0.875rem + 2cqi, 0.5rem), 2.175rem);
    --Heading-4-Size: clamp(1.25rem, round(0.893rem + 1.143cqi, 0.5rem), 1.45rem);
    --Heading-5-Size: clamp(1.125rem, round(0.857rem + 0.857cqi, 0.5rem), 1.5rem);
    --Heading-6-Size: clamp(1.125rem, round(0.857rem + 0.857cqi, 0.5rem), 1.5rem);
    --Body-Size: clamp(0.875rem, round(0.786rem + 0.286cqi, 0.5rem), 1rem);
    --Body-Size-lg: clamp(1rem, round(0.911rem + 0.286cqi, 0.5rem), 1.125rem);
	--Font-Heading-Sans: "Work Sans", sans-serif;
    --Font-Heading-Serif: "Work Sans", sans-serif;
    --Font-Body: "Roboto Condensed", sans-serif;
    --Font-Body-Alt: ;
	/* Standards */
    --Line-Height-xs: 1;
    --Line-Height-s: 1.05;
    --Line-Height-m: 1.2;
    --Line-Height-l: 1.5;
    --Line-Height-xl: 2;
    --Font-Weight-Light: 300;
    --Font-Weight-Regular: 400;
    --Font-Weight-Bold: 800;
    --Font-Weight-Extra-Bold: 900;
	/* Border Radius */
	--fsm-radius-100:4px;
	--fsm-radius-200:8px;
}

div#page-container {
    overflow: hidden;
}

/*  
    Button Styles
*/

/* GLOBAL BUTTON STYLES */
/*Default Button Settings*/
#page-container .et_pb_button {
    color: var(--Default-White) !important;
    text-align: center;
    font-style: normal;
    font-weight: var(--Font-Weight-Bold) !important;
	font-family:var(--Font-Body);
    line-height: normal !important;
    letter-spacing: .32px;
    transition: ease all .3s !important;
    border:none;
}

#page-container .et_pb_button:hover{
    transition: ease all .3s !important;
}

#page-container .et_pb_button:focus {
box-shadow: 0px 0px 14px 0px var(--Brand-Color-5);
}

/*
    BUTTON TEXT IS LIGHT - PRIMARY 
.et_pb_button.fsm-btn-primary 
*/
/*INCLUDES Hero Button ONE*/

#page-container .et_pb_button.fsm-btn-primary,
#page-container .et_pb_button.et_pb_button_one,
input.gform_button,
a.et_pb_button.et_pb_promo_button{    
	background-color:#2078B3;
    border-bottom: solid 4px transparent !important;
	border-color:transparent!important;
    padding: .8rem 1.3rem!important;
    padding-bottom: calc(.8rem - 4px) !important;
	border-radius: var(--fsm-radius-100)!important;
    color: var(--Default-White);
    font-weight: 700;
    font-size: 18px;
	font-family:var(--Font-Body)!important;
}

#page-container .et_pb_button.fsm-btn-primary:hover,
#page-container .et_pb_button.et_pb_button_one:hover,
input.gform_button:hover,
a.et_pb_button.et_pb_promo_button:hover{
	background-color:var(--Brand-Color-Primary);
	border-color:var(--Brand-Color-Primary)!important;
	color: var(--Default-White) !important;
    border-bottom: solid 4px var(--Brand-Color-Secondary) !important;
	padding: .8rem 1.3rem!important;
    padding-bottom: calc(.8rem - 4px) !important;
}

/* secondary button text light - SECONDARY
.et_pb_bg_layout_dark.fsm-btn-secondary */

/*INCLUDES Hero Button TWO*/
#page-container .et_pb_button.fsm-btn-secondary,
#page-container .et_pb_button.et_pb_button_two {
	background:transparent;
	color:var(--Brand-Color-5)!important;
	border:solid 2px var(--Brand-Color-5)!important;
	padding: calc(1.5vh - 2px) !important;
    border-radius: var(--fsm-radius-100)!important;
}

#page-container .et_pb_button.fsm-btn-secondary:hover,
#page-container .et_pb_button.et_pb_button_two:hover {
	background:#8ACDFA;
	color:var(--Brand-Color-5)!important;
}

#page-container .et_pb_button.et_pb_bg_layout_dark.fsm-btn-secondary:focus,
#page-container .et_pb_button.et_pb_button_two:focus {
    /*        box-shadow: 0px 0px 15px 0px ###;*/
}

/* alt button text .fsm-btn-alt (white text) */

#page-container .et_pb_button.fsm-btn-alt {
	padding:0!important;
	color:var(--Default-White);
    background-color: transparent;
    border-radius: 0 !important;
    border-bottom: 2px solid #fff;
	padding-bottom: 4px !important;
    transition: ease all .3s !important;

}

#page-container .et_pb_button.fsm-btn-alt:hover i {
	padding-left:5px!important;
    transition: ease all .3s !important;

}

#page-container .et_pb_button.fsm-btn-alt:hover {
	color:#8ACDFA!important;
	border-bottom:4px solid var(--Brand-Color-Secondary)!important;
    transition: ease all .3s !important;

}

/* alt button text .fsm-btn-alt (dark text) */

#page-container .et_pb_button.fsm-btn-alt-dark {
	padding:0!important;
	color:var(--Brand-Color-5) !important;
    background-color: transparent;
    border-radius: 0 !important;
    border-bottom: 2px solid var(--Brand-Color-5);
	padding-bottom: 4px !important;
    transition: ease all .3s !important;
	width:fit-content;
}

#page-container .et_pb_button.fsm-btn-alt-dark:hover i {
	padding-left:5px!important;
    transition: ease all .3s !important;
}

#page-container .et_pb_button.fsm-btn-alt-dark:hover {
	border-bottom:2px solid var(--Brand-Color-6)!important;
    transition: ease all .3s !important;

}

/* alt button text .fsm-btn-cta */

#page-container .et_pb_button.fsm-btn-cta {
	background-color:#031a42;
    border-bottom: solid 4px transparent !important;
	border-color:transparent!important;
    padding: .8rem 1.3rem!important;
    padding-bottom: calc(.8rem - 4px) !important;
	border-radius: var(--fsm-radius-100)!important;
}

#page-container .et_pb_button.fsm-btn-cta:hover {
	border-bottom: solid 4px var(--Brand-Color-Secondary) !important;
    transition: ease all .3s !important;
	background-color:var(--Brand-Color-5);
	color: var(--Default-White) !important;
}

/* LARGE BUTTON SIZING */
#page-container .et_pb_button.large {
    padding: 1em 2em !important;
    font-size: var(--Body-Size);
}

/* SMALL BUTTON SIZING */
#page-container .et_pb_button.small {
    padding: .7em 1.3em !important;
    font-size: 14px;
}

/*
universal text links
*/
#main-content a:not(.et_pb_button, .icon, img, .fsm-post-list a, .card, .exclude-style, .brand-logos a, .et_pb_button.fsm-btn-alt-dark) {
    border-radius: 4px;
    padding: 2px;
    transition: ease all .2s;
    display: inline;
    overflow: hidden;
    text-decoration: underline;
}

#main-content a:not(.et_pb_button, .icon, img, .fsm-post-list a, .card, .brand-logos a, .et_pb_button.fsm-btn-alt-dark):hover {
    border-radius: 3px;
    background-color: rgba(21, 43, 55, .2);
	transition: ease all .2s;
}

/* 
    Font Sizing
*/

body.et_divi_theme h1 {
    font-size: var(--Heading-1-Size);
	font-weight:var(--Font-Weight-Bold);
	font-family:var(--Font-Heading-Sans);
}

body.et_divi_theme h2 {
    font-size: var(--Heading-2-Size);
	font-weight:var(--Font-Weight-Bold);
	font-family:var(--Font-Heading-Serif);
}

body.et_divi_theme h3 {
    font-size: var(--Heading-3-Size);
	font-family:var(--Font-Heading-Sans);
	font-weight:var(--Font-Weight-Bold);

}

body.et_divi_theme h4 {
    font-size: var(--Heading-4-Size);
	font-family:var(--Font-Heading-Serif);
    font-weight: var(--Font-Weight-Bold);
}

body.et_divi_theme h5 {
    font-size: var(--Heading-5-Size);
	font-family:var(--Font-Heading-Serif);
}

body.et_divi_theme h6 {
    font-size: var(--Heading-6-Size);
}

body,
body p,
body li {
    font-size: var(--Body-Size);
	font-family:var(--Font-Body);
	line-height:var(--Line-Height-l);
	font-weight: var(--Font-Weight-Regular);
	
}

body small {
    font-size: clamp(.5rem, 1.25cqi, .8rem);
}

/*Blog Font Sizes*/
.post-template-default {
    h1 {
        &.entry-title {
            font-size: clamp(1.75rem, round(1.125rem + 2cqi, 0.5em), 2.625rem) !important;
        }
    }

    h2 {
        font-size: clamp(1.5rem, round(0.875rem + 2cqi, 0.5em), 2.375rem) !important;
    }

    h3 {
        font-size: clamp(1.25rem, round(0.75rem + 2cqi, 0.5em), 2.125rem) !important;
    }

    h4 {
        font-size: clamp(1.125rem, round(0.625rem + 2cqi, 0.5em), 1.875rem) !important;
    }

    h5 {
        font-size: clamp(1rem, round(0.5rem + 2cqi, 0.5em), 1.625rem) !important;
    }

    h6 {
        font-size: clamp(0.875rem, round(0.375rem + 2cqi, 0.5em), 1.375rem) !important;
    }
}

/*CUSTOM FONT STYLES*/


/*END FONT STYLE*/

/*
MENU STYLES
*/

#logo {
        max-height: 150%!important;
        position: absolute;
        top: -40px;
/* 		z-index:9; */
}

/* IF MENU does not have secondary menu
#logo {
        max-height: 150%!important;
        position: absolute;
        top: 0;
		z-index:9;
}
*/

@media only screen and (max-width:980px) {
#logo {
        max-height: 100%!important;
        top: 0;
	}
	
	#page-container #main-header {
        top: 20px !important;
		padding-bottom:20px;
    }
}

/*IF MENU HAS last-child CTA BUTTON
- Style LI element as button */

ul#mega-menu-primary-menu li:last-child a:not(ul.mega-sub-menu li a) {
    padding: 10px 15px !important;
    margin: 0 !important;
    line-height: 1em !important;
	color:var(--Default-White)!important;
	background-color:var(--Brand-Color-5)!important;
    border-bottom: solid 4px transparent !important;
	border-color:transparent!important;
	padding-bottom: calc(1.5vh - 4px) !important;
	border-radius: var(--fsm-radius-100)!important;
}

ul#mega-menu-primary-menu li:last-child a:not(ul.mega-sub-menu li a):hover {
	background-color:var(--Brand-Color-Primary)!important;
	border-color:var(--Brand-Color-Primary)!important;
    border-bottom: solid 4px var(--Brand-Color-Secondary) !important;
	opacity:unset!important;
}

div#main-header .flex {
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: center;
}

div#main-header #menu {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
}

.mega-sub-menu {
	border-top: 4px solid var(--Brand-Color-Primary)!important;
}

div#mega-menu-wrap-secondary-menu li a{
	font-weight:var(--Font-Weight-Regular)!important;
 	font-size: var(--Body-Size)!important;
}

/*Hover Styles*/

.mega-menu li a {
    color: var(--Default-Black) !important;
    transition: ease all 0.3s !important;
	font-weight:var(--Font-Weight-Bold)!important;
	font-family:var(--Font-Body)!important;
	font-size:20px!important;
}

.mega-menu li a:hover {
    opacity: .8 !important;
}

/*Active Styles*/

.mega-current-menu-item a.mega-menu-link {
    text-decoration: underline 2px inherit !important;
    text-underline-offset: 8px !important;
}

/* MOBILE STYLES */
@media only screen and (max-width:980px) {
    .mega-menu li a {
        color: var(--Default-White) !important;
    }

    #mega-menu-wrap-primary-menu .mega-menu-toggle {
        background: transparent;
    }
	
	#mega-menu-wrap-primary-menu .mega-menu-toggle ~ button.mega-close:before {
		font-size: 24px;
	}
	
	#mega-menu-wrap-primary-menu .mega-menu-toggle.mega-menu-open ~ button.mega-close {
    right: min(calc(100vw - 40px), 280px);
  }

	#mega-menu-wrap-primary-menu .mega-menu-toggle + #mega-menu-primary-menu {
		padding-top: 40px;
	}

    div#mega-toggle-block-0 {
        background: var(--Default-White) !important;
        border: 2px solid var(--Brand-Color-4);
        border-radius: 5px;
    }
	
	ul.mega-sub-menu li a {
        color: var(--Default-Black) !important;
    }
	
	ul#mega-menu-primary-menu li:last-child a:not(ul.mega-sub-menu li a) {
		line-height:1em !important;
		display: flex !important;
    	flex-wrap: wrap;
    	justify-content: center !important;
    	align-content: center !important;
	}

}

/*END MENU*/

/* GLOBAL FORM STYLES */
.gform_wrapper.gravity-theme .gform_validation_errors > h2 {
    font-weight: var(--Font-Weight-Bold) !important;
}

.gform_wrapper.gravity-theme .gform_validation_errors {
    padding: 1em 1em 1em 3em !important;
}

.gform_wrapper.gravity-theme .gfield_validation_message,
.gform_wrapper.gravity-theme .validation_message {
    font-size: 14px !important;
    border-radius: 5px !important;
    padding: .5em .5em .5em 40px !important;
}

.gform_wrapper.gravity-theme .validation_message {
    position: relative;
}

.gform_wrapper.gravity-theme .validation_message::before {
    position: absolute;
    font-family: 'Font Awesome 6 Pro';
    font-weight: var(--Font-Weight-Extra-Bold);
    color: #c02b0a;
    font-size: 20px;
    content: '\f057';
    margin-left: -28px;
}
#page-container .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), #page-container .gform_wrapper textarea.textarea, #page-container div.form_saved_message div.form_saved_message_emailform form input[type=text]{
	    padding: .5vh 1vh!important;
	border-radius: var(--fsm-radius-100)!important;;
border: 1px solid #969696;
background: var(--Default-White);
}

/* CUSTOM FORM STYLES */
/* END FORM STYLES */


/* Slick Defaults */
.slick-slide {
	margin-bottom:0!important;
}

.slick-arrow {
    font-size: 20px !important;
    transition: all .5s ease;
	color:var(--Brand-Color-Primary);
}

.slick-arrow:hover {
    cursor: pointer;
    transition: all .5s ease;
    scale: 1.1 !important;
}

i.slick-arrow:active{
	transition: all .5s ease;
    scale: 1.1 !important;
}

.button-container .slick-arrow:first-child{
  margin-right:5px;
}

.button-container .slick-arrow:last-child{
  margin-left:5px;
}

.left{
    text-align: left;
    align-items: flex-start;	
}

.right{
	text-align: right;
	align-items: flex-end;

}


/*RESUSABLE*/

.flex {
    display: flex;
}

.grid {
    display: grid;
}

.top {
	vertical-align: top;
}

.underline,
.hero h1{
    position: relative;
	margin-bottom:40px!important;
}

.underline::before,
.hero h1::before{
    position: absolute;
    content: '';
    width: 150px;
    height: 10px;
    bottom: -20px;
    left: 0;
    background-color: #FF8E00;
}


/* #certified-centers .et_pb_row{
    padding: 5vh;

} */

#certified-centers .et_pb_main_blurb_image img{
    display: flex;
    align-items:start;
    width:150px;
    height: 90px;
    object-fit: contain;
}

div#certified-centers .et_pb_main_blurb_image {
    margin-bottom: 15px!important;
}

.blue-border-top{
    border-top: 10px solid var(--Brand-Color-Primary);
}

/*.cta-blurbs-section: set left-aligned icon image width*/
.cta-blurbs-section .et_pb_main_blurb_image{
    width: 50px !important;
}

.cta-blurbs-section, #certified-centers {
	margin: 1.5rem 0;
	padding: 2rem 0 !important;
}

.background-blue-boxed.et_pb_row {
  position: relative;
	padding: 1.5rem 0;
}

.background-blue-boxed::before {
  content: '';
  position: absolute;
  top: -2rem;
  left: -3rem;
  width: calc(100% + 6rem);
  height: calc(100% + 4rem);
  z-index: -1;
  background-color: var(--Brand-Color-Primary);
  border-radius: var(--fsm-radius-100);
}

/*START PAGE ORGANIZATION*/

/*
HOMEPAGE
*/
/*HERO Styles*/
#home-hero .header-content {
    max-width: 80ch;
}

span.et_pb_fullwidth_header_subhead{
	font-size:clamp(1.125rem, round(0.857rem + 0.857cqi, 0.5em), 1.5rem);	
	font-family:var(--Font-Body);
	line-height:var(--Line-Height-m);
	font-weight: 400;
}

@media only screen and (max-width:980px) {
.field-services .grid {
    grid-template-columns: repeat(2, 1fr) !important;
	gap:2vh;
}
}

@media only screen and (min-width:981px) {
.field-services .grid {
    grid-template-columns: repeat(4, 1fr) !important;
	gap:2vh;
}
}

.field-services .grid img {
margin:auto auto;
	max-height:110px;
}

.brand-logos {
    display: grid;
	grid-template-columns: repeat(5, 1fr) !important;
	gap:2vh;
}

.brand-logos a{
	padding:0!important;
	transition: .3s ease all;
}

.brand-logos img {
    border: 1px solid rgba(22, 36, 40, 0.20);
    border-radius: var(--fsm-radius-100);
    min-width: 100%;
    max-height: 145px;
    object-fit: contain;
    height: 100%;
    padding: 20px;
}

.et_pb_row.half-width .et_pb_column {
    max-width: 50%;
}

.et_pb_row.forty-width .et_pb_column {
    max-width: 40%;
}

.et_pb_row.forty-five-width .et_pb_column {
    max-width: 45%;
}

.max-width-500 {
  max-width: 500px;
}

div#where-we-serve .et_pb_row{
	position:relative;
}

div#where-we-serve::before{
	content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: url(/wp-content/uploads/2025/06/BVBMService-Map.png);
    background-size: contain;
    background-position: 120%;
    background-repeat: no-repeat !important;
    top: 0;
    right: 0;
}
@media only screen and (min-width:1400px) {

div#where-we-serve::before{
    background-position: right;
}
}

@media only screen and (max-width:1200px) {
	div#where-we-serve::before{
    background-position: 140%;
	}
}

@media only screen and (max-width: 1100px) {
    div#where-we-serve::before {
        background-position: 200%;
    }
}

.cta-content {
    padding: 38px;
    background-color: var(--Brand-Color-Primary);
    border-radius: var(--fsm-radius-200);
}

.vault-graphic svg{
    background: url(<path-to-image>) #F5FBFE 100% / contain no-repeat;
    mix-blend-mode: multiply;
}

.brand-logos a:hover {
    scale: 1.1;
    transition: .3s ease all;
}

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

	.et_pb_fullwidth_header .et_pb_fullwidth_header_container .et_pb_button_one{
		margin-right:0;
	}
	
	.et_pb_fullwidth_header .et_pb_fullwidth_header_container{
    width: 85%;
    margin-left: auto!important;
    margin-right: auto!important; 
    }

    .et_pb_row.forty-five-width .et_pb_column {
        max-width: 100%;
    }
	
    .et_pb_row.forty-width .et_pb_column {
        max-width: 100%;
    }
	
	  #vault .et_pb_row{
		  display:flex;
          flex-direction: column;
      }
            
            #vault .mob-col-2 {
                order: 2;
            }
            
            #vault .mob-col-1 {
                order: 1;
            }
        
	div#where-we-serve .et_pb_row::before {
        content: '';
        position: absolute;
        width: 50%;
        background: url(/wp-content/uploads/2025/03/Service-Map.png);
        background-position: center;
        background-size: contain;
        top: 0;
        right: -8%;
    }
	
	.cta-content{
	padding: 0;
    background-color: unset;
    border-radius: unset;
	}
	
	.brand-logos {
    display: unset;
	}
	
	.brand-logos img{
		min-width:unset!important;
        max-width: 95%;
		height: auto;
		padding: 10px;
        margin: 10px;
	}

	.brand-logos .slick-track {
    display: flex;
    height: auto;
    }
	
	.services i{
		color:var(--Default-White);
	}
}

/*end homepage*/

/*PRODUCTS PAGE*/
.brands-blurb{
    border: 1px solid rgba(22, 36, 46, 0.20);
    border-radius: var(--fsm-radius-100);
    padding: 2rem; 
    display: flex;
    flex-direction: column;
    justify-content: space-between;
	background-color:#fff;
	transition:ease all .3s;
	transform: scale(1);
}

.brands-blurb:hover {
	transform: scale(.98);
	z-index:99;
}

.brands-blurb .et_pb_blurb_content,
.brands-blurb .et_pb_blurb_container {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.brands-blurb .et_pb_main_blurb_image img{
    display: flex;
    align-items: start;
    width: 150px;
    height: 90px;
    object-fit: contain;
}

.brands-blurb .et_pb_blurb_description {
    display: flex;
    flex-direction: column;
    flex-grow: 1; /* Allows this content to grow and push the link down */
}

.brands-blurb .et_pb_blurb_description p {
  flex-grow: 1;
}

.brands-blurb .et_pb_button.fsm-btn-alt-dark{
margin-top:15px;
}

.brands-blurb:hover .et_pb_button.fsm-btn-alt-dark {
	border-bottom: 2px solid var(--Brand-Color-6)!important;
    transition: ease all .3s !important;
	
}

.brands-blurb:hover .et_pb_button.fsm-btn-alt-dark i {
	padding-left:5px!important;
    transition: ease all .3s !important;
}

/*SERVICES page*/

.generic-outline-flex{
    border: 1px solid rgba(22, 36, 46, 0.20);
    border-radius: var(--fsm-radius-100);
    padding: 1.5em; 
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: unset;
}

@media screen and (max-width:500px){
    .generic-outline-flex{
        min-height: 60vh; 
    }
}

/*FIELD SERVICES page*/
.certifications .flex img{
    margin-right: 10px;
}

.branch-card{
	display:flex;
	height:100%;
}

.branch-card .et_pb_blurb_container{
    padding: 2rem;
    border: 1px solid rgba(22, 36, 46, 0.20);
    border-radius: var(--fsm-radius-100);
    background-color: var(--Brand-Color-3);
    min-height: 100%;
	min-width:100%;
}

.capabilities-card .et_pb_blurb_content{
    padding: 2rem;
    border: 1px solid rgba(22, 36, 46, 0.20);
    border-radius: var(--fsm-radius-100);
    background-color: var(--Brand-Color-3);
    min-height: 100%;
	margin: 0;
    min-width: 100%;
}

.capabilities-card{
	margin-bottom:0!important;
}

.branch-card .et_pb_blurb_container h3 {
    color: var(--Brand-Color-4);
}

.branches {
    padding-top: 0;
}

@media screen and (min-width: 981px){
    #branches .et_pb_row:first-of-type .et_pb_text{
        width: 60%;
    }
}

.branch-card a {
    color: #18232D;
}




.branches .et_pb_column .atm-card {
    width: 33%;
}

/* Styles for screens larger than 768px (tablets and up) */
@media screen and (min-width: 768px) {

    .branches .et_pb_column .atm-card {
        width: calc(50% - 15px);
        /* Two columns with gap considered */
    }
}

/* Styles for screens larger than 1024px (desktops and up) */
@media screen and (min-width: 1024px) {
    .branches .et_pb_column .atm-card {
        width: calc(33.333% - 20px);
        /* Three columns with gap considered */
    }
}

/*-----------------------*/





/*Blog Section*/
.onpage-post-list {
    position: relative;
}

.onpage-post-list i {
    position: absolute;
    top: -10%;
    color: #fff;
}

.onpage-post-list i.fa-chevron-right {
    right: 0;
}

.onpage-post-list i.fa-chevron-left {
    right: 5%;
}

ol.fsm-on-page-posts {
    list-style-type: none;
    display: grid;
    grid-template-columns: repeat(3, 1fr) !important;
    grid-gap: 2vh;
}

li.on-page-post-item {
    background: #fff;
    display: flex;
    height: auto;
}

li.on-page-post-item .card {
    height: 100% !important;
    width: 100% !important;
    padding: 2vh;
}

li.on-page-post-item .card img {
    min-height: 250px;
    max-height: 250px;
    min-width: 100%;
    object-fit: cover;
    object-position: center;
    margin-bottom: 2vh;
}

li.on-page-post-item .card h3 {
    font-size: 18px;
}

@media only screen and (max-width:980px) {
    ol.fsm-on-page-posts {
        display: block;
        padding-bottom: 0 !important;
    }

    ol.fsm-on-page-posts .slick-track {
        display: flex;
        height: auto;
    }

    ol.fsm-on-page-posts .slick-track li {
        min-height: 100%;
    }

}

/*END*/


/*
BLOG
*/
/*END*/

/*
BLOG LIST
*/

ol.fsm-post-list {
    list-style-type: none;
    display: grid;
    grid-template-columns: repeat(3, 1fr) !important;
    grid-gap: 3vh !important;
}

ol.fsm-post-list li:first-child {
    grid-column: 1 / span 3 !important;
    min-width: 100% !important;
}

li.fsm-post-item.featured-post {
    border: none;
    box-shadow: unset;
    border: none;
    box-shadow: unset;
    padding: 0 !important;
}

div#imagewrapper {
    height: 100%;
    display: flex;
}

.featured-post img {
    border-radius: 5px;
    width: 100%;
    margin-right: 30px;
    grid-column-start: 1;
    grid-row-start: 1;
    grid-row-end: 5;
}

li.fsm-post-item.featured-post .wrapping-link {
    display: grid;
    grid-template-columns: 50% 50%;
}

span#date-published {
    color: var(--Default-Black) !important;
    font-size: 10px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

.featured-post p {
    color: #0B1527;
    font-size: 12px;
    font-style: normal;
    font-weight: 600;
    line-height: normal;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    margin-bottom: 20px;
}

div#post-info {
    padding: 5vh 0;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    margin-bottom: 20px;
}

div#post-info p,
div#post-info span,
div#post-info h2 {
    width: 100%;
}

.fsm-post-list h2,
.fsm-post-list h3{
    font-size: clamp(1.2rem, 2.5cqw, 1.8rem) !important;
}

li.fsm-post-item {
    display: flex;
    flex-wrap: wrap;
    height: 100%;
    border-radius: 5px;
    transition: ease all 0.3s;
}

li.fsm-post-item:not(.featured-post) img {
    min-height: 215px;
    max-height: 215px !important;
    object-fit: cover;
    object-position: center;
    min-width: 100%;
    padding: 0;
}

li.fsm-post-item a.wrapping-link {
    display: block;
    height: auto;
    width: 100%;
    padding: 2em 1em;
}

li.fsm-post-item a.text-link-style {
    display: block;
    margin-top: auto;
}

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

    ol.fsm-post-list,
    ol.fsm-post-list li:first-child {
        display: block !important;
    }

    ol.fsm-post-list li {
        margin-bottom: 10px;
    }

    li.fsm-post-item.featured-post .wrapping-link {
        display: block;
    }

    div#imagewrapper,
    .featured-post img {
        max-height: 400px;
        margin: 0;
    }
}
/*END*/

/*Please select 1 of the 3 Blog Article Templates & discard unused*/
/*
ALL POSTS OPTION 1
*/

.single-post #page-container h1 {
    font-size: clamp(2rem, 4.5cqi, 4.25rem);
}

.single-post #page-container .et_pb_title_container,
.single-post #page-container .fsm-post-content {
    max-width: 980px;
    margin: 0 auto;
    padding: 5vh 0;
}

.single-post #page-container .et_pb_title_featured_container {
    text-align: center;
    max-width: 1200px;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 2px 2px 20px 0px rgba(0, 0, 0, 0.25);
    margin-bottom: 18px;
	width: 90%;
}

.single-post #page-container .et_pb_title_featured_container .et_pb_title_featured_image img {
	aspect-ratio: 21 / 9;
    object-fit: cover;
    object-position: center;
}

.single-post #page-container .fsm-post-content img {
    border-radius: 8px;
    box-shadow: 2px 2px 20px 0px rgba(0, 0, 0, 0.25);
    margin: 2em auto;
    display: block;
    text-align: center;
}

.single-post blockquote {
    border-radius: 25px;
    background: linear-gradient(92deg, rgba(247, 154, 67, 0.40) 1.81%, rgba(217, 107, 98, 0.40) 42.39%, rgba(164, 143, 211, 0.40) 85.48%);
    box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.25);
    border: none;
    padding: 5vh;
    width: calc(100% + 10vh);
    margin-left: -5vh;
}

.single-post blockquote,
.single-post blockquote p {
    font-size: clamp(1.25em, 4cqi, 1.5em);
    line-height: 1.25em;
    font-family: "corsario-variable", sans-serif;
    font-variation-settings: "opsz"48, "wght"700;
}

/*END*/

/*
ALL POSTS OPTION 2
*/
.heateor_sss_vertical_sharing.heateor_sss_bottom_sharing,
div#blog-content-wrap .heateor_sss_sharing_container.heateor_sss_horizontal_sharing {
    display: none;
}

div#blog-content-wrap .et_pb_section.et_pb_section_0 {
    margin-top: 0 !important;
    padding: 0 !important;
}

.heateor_sss_horizontal_sharing .heateor_sss_svg,
.heateor_sss_standard_follow_icons_container .heateor_sss_svg {
    background-color: #19424D !important;
}

a.reverse-text-link-style {
    color: #000;
    position: relative;
}

a.reverse-text-link-style:before {
    position: absolute;
    display: block;
    color: #000;
    font-size: 1em;
    line-height: 2em;
    font-weight: 600;
    left: -22px;
    content: '\f30a';
    font-family: 'Font Awesome 6 Pro';
    transition: ease all 0.3s;
}

a.reverse-text-link-style:hover:before {
    left: -28px;

}

.side-by-side-buttons {
    display: flex;
    flex-wrap: nowrap;
    margin-top: 20px;
}

.side-by-side-buttons .et_pb_button {
    text-align: center;
}

.side-by-side-buttons a:last-child {
    margin-left: 25px !important;
}

div#blog-content-wrap .et_pb_row {
    width: 100%;
}

.blog-info-row:before {
    position: absolute;
    content: '';
    width: 110%;
    height: 110%;
    background: #fff;
    top: -5%;
    left: -5%;
    border-radius: 5px;
}

div#sidebar-headings h2 {
    font-size: clamp(1.2rem, 2.5cqw, 1.8rem) !important;

}

.heateor_sss_sharing_container.heateor_sss_vertical_sharing.heateor_sss_bottom_sharing {
    display: none !important;
}

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

    .et_pb_row.blog-info-row {
        padding: 2% 4%;
    }
}

/*END*/

/*
ALL POSTS OPTION 3
*/
div.blog-entry-content-column {
    margin: auto;
}

div#blog-post-content .et_builder_inner_content .et_pb_section,
div#blog-post-content.et_builder_inner_content .et_pb_section .et_pb_row {
    padding: 0 !important;
    margin: 0 !important;
}

div#blog-post-content .et_builder_inner_content .et_pb_section .et_pb_row {
    max-width: unset !important;
    width: 100% !important;
}

div#post-hero {
    display: flex;
    flex-wrap: wrap;
    height: auto;
}

div#blog-featured-image-column {
    height: auto;
    display: flex;
}

div#blog-featured-image-column span.et_pb_image_wrap {
    height: 100%;
}

div#blog-featured-image-column img {
    height: 100%;
    object-position: center;
    object-fit: cover;
}

div#blog-categories,
div#blog-publish-date,
div#post-share {
    font-style: normal;
    font-weight: 500;
    line-height: 150%;
    text-transform: uppercase;
}

div#blog-post-content .et_pb_section {
    padding: 0 !important;
}

div#blog-post-content .et_pb_section .et_pb_row:first-child {
    padding-top: 0;
}

div.blog-entry-content-column ul.et_pb_module.et_pb_social_media_follow {
    text-align: left !important;
}

div#blog-newsletter-blurb .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) fieldset:not([style*="display:none"]):not(.ginput_full) ~ span:not(.ginput_full),
div#blog-newsletter-blurb .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) span:not([style*="display:none"]):not(.ginput_full) ~ span:not(.ginput_full),
div#blog-newsletter-blurb .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) fieldset:not([style*="display:none"]):not(.ginput_full),
div#blog-newsletter-blurb .gform_wrapper.gravity-theme .ginput_complex:not(.ginput_container_address) span:not([style*="display:none"]):not(.ginput_full) {
    padding: 0;
}

/*END*/



/*
ABOUT
*/
/*END*/

/*
CONTACT
*/

.contact-hero a{
    color: var(--Default-Black) !important;
}

#service-centers a{
    color: var(--Default-Black);
    text-decoration: none !important;
}

.business-hours{
    background-color: var(--Brand-Color-Primary);
    padding: 3vh 4vh;
    border-radius: var(--fsm-radius-100);
    color: var(--Brand-Color-3);
}

.business-hours h3{
    color: var(--Brand-Color-3);
}

.location{
    border: 1px solid rgba(22, 36, 46, 0.20);
    border-radius: var(--fsm-radius-100);
    padding: 3vh; 
    background-color: #edf8fd;
    /*display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 50vh;*/
}

.contact-phone:before{
    font-family: 'Font Awesome 6 Pro';
    font-weight: 600;
    content: '\f095';
    color: var(--Brand-Color-4);
    margin-right: 5px;
}

.contact-email:before{
    font-family: 'Font Awesome 6 Pro';
    font-weight: 600;
    content: '\e20a';
    color: var(--Brand-Color-4);
    margin-right: 5px;
    text-decoration: none;
}

@media only screen and (min-width:980px){
    #email-us .et_pb_text{
        width: 66%;
    }
}

/*END*/

/*FOOTER*/
#subfooter a {
    text-decoration: underline;
    color: #fff;
}

.footer-menu ul{
	list-style-type:none;
	padding-left:0;
}

.footer-menu .col {
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
}

.flex-logos-end{
    display: flex;
    justify-content: end;
}

.flex-logos-end img{
    padding-left: 10px;
    transform: scale(.9);
	object-fit:contain;
}

.copyright a{
	color:#fff!important;
}

@media only screen and (max-width:980px){
    .flex-logos-end{
        justify-content:center;
    }
}

.footer-menu div{
	width:100%;
}

.footer-menu ul li a{
    color: var(--Default-White)!important;
	text-decoration:none;
	font-family:var(--Font-Body)!important;
	font-weight:var(--Font-Weight-Regular)!important;

}

footer a.parent {
    color: var(--Default-White)!important;
	font-family:var(--Font-Body)!important;
	font-weight:var(--Font-Weight-Bold)!important;
	font-size:20px;
	text-decoration:none!important;
}

footer a.icon.et_pb_with_border{
	background-color:var(--Brand-Color-Primary)!important;
}




/** Reusables **/

.grid{
	display:grid;
}

.grid .et_pb_module {
	margin-bottom: 0!important;
}

.two-col{
	grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px!important;
}

.three-col{
	grid-template-columns: repeat(3, 1fr) !important;
    gap: 20px!important;
}

.align-center{
	align-content:center;
	align-items:center;
}

@media only screen and (max-width:980px){
	
	div#where-we-serve::before{
	    background-size: contain;
    background-position: right;
	}

.two-col,
	.three-col{
	grid-template-columns: repeat(1, 1fr) !important;
}
	
	.foot-code {
    justify-items: center;
}
	

}

@media only screen and (max-width:800px){
	        
		div#where-we-serve::before{
        background-size: cover;
        width: 50%;
        background-position: 20%;
	}
}


@media only screen and (max-width:500px){
	        
		div#where-we-serve::before{
        display:none;
    }
	
	.et_pb_row.half-width .et_pb_column {
    max-width: 100%;
}
}


mega-menu-wrap-primary-menu #mega-menu-primary-menu > li.mega-menu-item:last-child {
    margin: 0 !important;
    margin-right: 0 !important;
}

#page-container .brands-blurb-column.force-widths .et_pb_image_wrap {
	aspect-ratio: 86 / 100 !important;
    width: 100%;
    height: auto;
    display: block;
    overflow: hidden;
}

#page-container .brands-blurb-column.force-widths .et_pb_image_wrap img {
	object-fit: cover;
    width: 100%; 
}

.servs-row img {
    min-height: 210px;
    max-height: 210px;
    object-fit: cover;
    object-position: center;
}

