/*
Custom CSS for divi-child for The Nolan Company
Version: 1.0
Description: Used to establish the look and feel for the Nolan Company website
Author: Full Spectrum Marketing
Author URL: http://www.fsm.agency
*/

@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:ital,wght@0,200..900;1,200..900&display=swap');

#page-container {
    overflow: hidden;
}

/* VARIABLES */
:root {
    /* Brand Color Palette */
    --Brand-Color-Primary: #1F3D7B;
    --Brand-Color-Secondary: #FDCD38;
    --Brand-Color-3: #F5843C;
    --Brand-Color-4: #71C1E1;
    --Brand-Color-5: #135494;
    --Brand-Color-6: #E6F4FA;
    /* Default Colors */
    --Default-Black: #3A3A3A;
    --Default-White: #fff;
    /* Typography */
    --Heading-1-Size: clamp(2.925rem, round(1.732rem + 2.857cqi, 0.5em), 3.875rem);
    --Heading-2-Size: clamp(2.2rem, round(1.286rem + 2.286cqi, 0.5em), 3.15rem);
    --Heading-3-Size: clamp(1.5rem, round(1.143rem + 1.143cqi, 0.5em), 2rem);
    --Heading-4-Size: clamp(1.5rem, round(0.964rem + 1.714cqi, 0.5rem), 2.25rem);
    --Heading-5-Size: clamp(1.25rem, round(1.071rem + 0.571cqi, 0.5rem), 1.5rem);
    --Body-Size: clamp(0.875rem, round(0.786rem + 0.286cqi, 0.5rem), 1rem);
    --Body-Size-Small: clamp(0.775rem, round(0.686rem + 0.286cqi, 0.5rem), .8rem);
    --Font-Heading-Sans: 'Source Sans 3', Helvetica, Arial, Lucida, sans-serif;
    --Font-Heading-Serif: ;
    --Font-Body: 'Source Sans 3', Helvetica, Arial, Lucida, sans-serif;
    --Font-Body-Alt: ;
    --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: 700;
    --Font-Weight-Extra-Bold: 900;
    --Drop-Shadow-200: 0px 1px 4px 0px rgba(13, 13, 13, 0.10), 0px 1px 4px 0px rgba(13, 13, 13, 0.05);
    --Drop-Shadow-400: 0px 16px 32px -4px rgba(13, 13, 13, 0.10), 0px 4px 4px -4px rgba(13, 13, 13, 0.05);
    --Drop-Shadow-300: 0px 4px 4px -1px rgba(13, 13, 13, 0.10), 0px 4px 4px -1px rgba(13, 13, 13, 0.05);
    --Border-Radius-100: 4px;
    --Border-Radius-200: 8px;
    --Border-Radius-400: 16px;
}


/* SPACING CLASSES */
.align-items-center {
    align-items: center;
}

#page-container {
    padding-top: 68px !important;
}

body.et_fixed_nav.et_secondary_nav_enabled #main-header {
    top: 35.0469px !important;
}

/*  
    Button Styles
*/

/* GLOBAL BUTTON STYLES */
/*Default Button Settings*/
#page-container #main-content .et_pb_button,
.gform_button,
.gform_previous_button,
.gform_next_button {
    font-family: var(--Font-Body);
    padding: 12px 20px !important;
    border-radius: 4px !important;
    font-weight: var(--Font-Weight-Bold) !important;
    transition: ease all 0.3s !important;
    line-height: normal !important;
    font-size: clamp(1.125rem, round(0.946rem + 0.571cqi, 0.5em), 1.375rem) !important;
    text-decoration: none !important;
    background-color: var(--Default-White) !important;
    color: var(--Brand-Color-Primary) !important;
}

#page-container #main-content .et_pb_button:hover,
.gform_button:hover,
.gform_previous_button:hover,
.gform_next_button:hover,
.footer-top .et_pb_button:hover {
    transition: ease all 0.3s !important;
}

#page-container #main-content .et_pb_button:focus,
#footer .et_pb_button:focus {}

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

#page-container #main-content .et_pb_button.fsm-btn-primary,
#page-container #main-content .et_pb_button.et_pb_button_one,
.gform_button,
.gform_next_button,
#page-container #main-content .et_pb_button.et_pb_promo_button,
.footer .et_pb_button {
    background: var(--Brand-Color-Primary) !important;
    color: #fff !important;
    border: solid 4px transparent !important;
}

#page-container #main-content .et_pb_button.fsm-btn-primary:hover,
#page-container #main-content .et-l .et_pb_button.et_pb_button_one:hover,
.gform_button:hover,
.gform_next_button:hover,
#page-container #main-content .et-l .et_pb_button.et_pb_promo_button:hover {
    background: var(--Brand-Color-Secondary) !important;
    color: #fff !important;
    border-color: transparent !important;
    border-bottom-color: var(--Brand-Color-3) !important;
    background: var(--Brand-Color-5) !important;
    color: #fff !important;
    border-color: transparent !important;
    border-bottom-color: var(--Brand-Color-3) !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: var(--Brand-Color-3) !important;
    color: #003866 !important;
    border: solid 4px transparent !important;
}

#page-container .et_pb_button.fsm-btn-secondary:hover,
#page-container .et_pb_button.et_pb_button_two:hover {
    background-color: var(--Brand-Color-3) !important;
    color: #003866 !important;
    border-color: transparent !important;
    border-bottom-color: var(--Brand-Color-Secondary) !important;
    background: var(--Brand-Color-3) !important;
    border-color: transparent !important;
    border-bottom-color: var(--Brand-Color-Secondary) !important;
    opacity: 0.8;
}

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

}

/* secondary button dark 
.fsm-btn-secondary */

#page-container .et_pb_button.fsm-btn-outline {
    background: transparent !important;
    color: #fff !important;
    border: solid 4px #fff !important;
}

#page-container .et_pb_button.fsm-btn-outline:hover {
    background: var(--Brand-Color-Secondary) !important;
}

#page-container .et_pb_button.fsm-btn-outline:focus {
    /*      box-shadow: 0px 0px 15px 0px ###;*/

}

/* alt button text dark */
#page-container #main-content .et_pb_button.fsm-btn-alt,
#footer #main-content .et_pb_button.fsm-btn-alt,
.gform_previous_button {
    border-radius: 4px !important;
    background: var(--Brand-Color-3) !important;
    color: var(--Default-Black) !important;
    border: solid 4px transparent !important;
    font-weight: var(--Font-Weight-Bold) !important;

}

#page-container #main-content .et_pb_button.fsm-btn-alt:hover,
#footer #main-content .et_pb_button.fsm-btn-alt:hover,
.gform_previous_button:hover {
    background: var(--Brand-Color-Secondary) !important;
    border-color: transparent !important;
    border-bottom-color: var(--Brand-Color-3) !important;
    background: rgba(255, 255, 255, 0.8) !important;
    border-color: transparent !important;
    border-bottom-color: var(--Brand-Color-3) !important;
}

#page-container .et_pb_button.fsm-btn-alt:focus {

    /*    box-shadow: 0px 0px 15px 0px ###;*/
}

/* white background / blue text button (text dark) */
#page-container .et_pb_button.fsm-btn-white,
.footer .et_pb_button.fsm-btn-white,
.dark-bg-form input.gform_button.button,
.light-bg-form input.gform_button.button {
    border-radius: 4px !important;
    background: var(--Default-White) !important;
    color: var(--Brand-Color-Primary) !important;
    border: solid 4px transparent !important;
    font-weight: var(--Font-Weight-Bold) !important;

}

#page-container .et_pb_button.fsm-btn-white:hover,
#footer .et_pb_button.fsm-btn-white:hover,
.dark-bg-form input.gform_button.button:hover,
.light-bg-form input.gform_button.button:hover {
    background: var(--Brand-Color-Secondary) !important;
    border-color: transparent !important;
    border-bottom-color: var(--Brand-Color-3) !important;
    background: rgba(255, 255, 255, 0.8) !important;
    border-color: transparent !important;
    border-bottom-color: var(--Brand-Color-3) !important;
}

#page-container .et_pb_button.fsm-btn-white:focus {

    /*    box-shadow: 0px 0px 15px 0px ###;*/
}


/* FSM Tertiary Buttons */

#page-container #main-content .et_pb_button.fsm-btn-tertiary.et_pb_bg_layout_dark {
    background-color: transparent !important;
    border: solid 2px transparent !important;
    font-weight: var(--Font-Weight-Bold) !important;
    font-size: 18px !important;
    padding: 0 !important;
    padding-right: 20px !important;
    padding-bottom: 4px !important;
    position: relative;
    transition: ease all 0.3s !important;
    padding-bottom: 8px;
}

#page-container #main-content .et_pb_button.fsm-btn-tertiary:after {
    position: absolute;
    content: '\f054';
    top: -3px;
    display: block;
    right: 0;
    font-family: 'Font Awesome 6 Pro' !important;
    font-weight: 900 !important;
    font-size: inherit;
    color: var(--Default-White) !important;
}

#page-container #main-content .et_pb_button.fsm-btn-tertiary.et_pb_bg_layout_dark:hover {
    padding-bottom: 4px !important;
    color: var(--Default-White) !important;
    border-bottom-color: var(--Default-White) !important;
}

/*
universal text links
*/
#main-content a:not(.et_pb_button, .icon, img, .fsm-post-list a, .card, .exclude-style, .et-pb-button, li.product-item a, .ft-post a, .pagination a, .download-link) {
    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, .et-pb-button, li.product-item a, .ft-post a, .pagination a, #sub-footer a):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) !important;
    font-family: var(--Font-Heading-Sans) !important;
    font-weight: var(--Font-Weight-Bold) !important;
}

body.et_divi_theme h2 {
    font-size: var(--Heading-2-Size) !important;
    font-family: var(--Font-Heading-Sans) !important;
    font-weight: var(--Font-Weight-Bold) !important;
    /*line-height: 115%!important;*/
    letter-spacing: -0.01px;
}

body.et_divi_theme h2 .small {
    font-size: clamp(1.5rem, round(1.143rem + 1.143cqi, 0.5rem), 2rem) !important;
    line-height: 115% !important;
    letter-spacing: -0.006px;
}

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

body.et_divi_theme h3 .small,
body.et_divi_theme h3.small {
    font-size: clamp(1rem, round(0.732rem + 0.857cqi, 0.5rem), 1.375rem) !important;
}

body.et_divi_theme h4 {
    font-size: var(--Heading-4-Size) !important;
    font-family: var(--Font-Heading-Sans) !important;
}

body.et_divi_theme h5 {
    font-size: var(--Heading-5-Size) !important;
    font-family: var(--Font-Heading-Sans) !important;

}

body.et_divi_theme h6 {
    font-size: var(--Heading-6-Size) !important;
    font-family: var(--Font-Heading-Sans) !important;

}

body,
body p,
body li {
    font-size: var(--Body-Size) !important;
    font-family: var(--Font-Body) !important;
    line-height: 1.8rem !important;
}

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

p.specialty {
    opacity: 0.9;
    color: var(--Default-Black);
    font-family: var(--Font-Body);
    font-size: clamp(1.125rem, round(0.946rem + 0.571cqi, 0.5em), 1.375rem);
    font-style: normal;
    font-weight: 400;
    line-height: 160%;
}

p:has(img.flowy-flag) {
    padding-bottom: 0;
}

.home-sub-head {
    color: var(--Default-Black);
    font-family: var(--Font-Body);
    font-size: var(--Heading-5-Size) !important;
    font-style: normal;
    font-weight: 700;
    line-height: 115%;
    /* 25.3px */
}

.sub-head {
    color: var(--Default-White);
    font-family: var(--Font-Body);
    font-size: 22px;
    font-style: normal;
    font-weight: 700;
    line-height: 115%;
    /* 25.3px */
}

/*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
*/
header#main-header {
    padding-bottom: .75em;
    padding-top: .75em;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    top: 35.0469px;
}

body.admin-bar header#main-header {
    top: 67.0469px;
}

.et_pb_svg_logo #logo {
    height: 250% !important;
}

#logo {
    max-height: 250% !important;
    position: absolute;
    top: -38px;
    z-index: 9;
}

@media only screen and (max-width:980px) {
    #logo {
        max-height: 100% !important;
        top: 0;
    }

    #page-container #main-header {
        top: 0 !important;
    }
}

#mega-menu-wrap-primary-menu #mega-menu-primary-menu {
    margin-top: -7px;
}

/*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) {
    background-color: var(--Brand-Color-3) !important;
    padding: 10px 15px !important;
    margin: 0 !important;
    line-height: 20px !important;
    border-radius: 2px !important;
    color: #003866 !important;
    box-shadow: var(--Drop-Shadow-200);
    align-content: center;
}

ul#mega-menu-primary-menu li:last-child a:not(ul.mega-sub-menu li a):hover {
    background: var(--Brand-Color-Secondary) !important;
    border-color: transparent !important;
    border-bottom: 4px solid var(--Brand-Color-3) !important;
    background: rgba(31, 61, 123, 0.1) !important;
    text-decoration: none !important;

}

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

    ul#mega-menu-primary-menu li:last-child a:not(ul.mega-sub-menu li a) {
        margin-top: 10px !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;
}

.et_secondary_nav_enabled #page-container #top-header {
    z-index: 9;
}

/* IF MENU is transparant and links can't be seen
- Add page ID here 
    #page-container {
        #top-header {
            background-color: #82c0d0 !important;
            z-index: 2;
        }
    }

    header#main-header {
        background-color: #82c0d0 !important;
        z-index: 2;
		padding-bottom:10px;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); 
    }
}
*/
/*Hover Styles*/

.mega-menu li a {
    color: var(--Brand-Color-Primary) !important;
    transition: ease all 0.3s !important;
    width: 100%;
    min-width: 100%;
    display: block;
}

/*.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;
    }

    div#mega-toggle-block-0 {
        background: var(--Default-White) !important;
        border: 2px solid #6a8790;
        border-radius: 5px;
    }

    #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner,
    #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::before,
    #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-0 .mega-toggle-animated-inner::after {
        background-color: var(--Brand-Color-Primary);
    }

    #mega-menu-wrap-primary-menu #mega-menu-primary-menu li.mega-menu-item>ul.mega-sub-menu {
        display: none !Important;
        visibility: visible;
        opacity: 1;
    }

    #mega-menu-wrap-primary-menu #mega-menu-primary-menu li.mega-menu-item.mega-toggle-on>ul.mega-sub-menu,
    #mega-menu-wrap-primary-menu #mega-menu-primary-menu li.mega-menu-megamenu.mega-menu-item.mega-toggle-on ul.mega-sub-menu {
        display: block !important;
    }

    .mega-nav-btn {
        max-width: 120px !important;
    }

    #mega-menu-wrap-primary-menu:has(.mega-menu-open) #mega-menu-primary-menu[data-effect-mobile^="slide_left"]+button.mega-close {
        right: 0px;
        left: auto;
    }

}

/*END MENU*/

/* GLOBAL FORM STYLES */
.gform_wrapper.gravity-theme .gform_validation_errors>h2 {
    font-weight: var(--Font-Weight-Bold) !important;
    font-size: 1em !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;
}

/*FORMS ON DARK BACKGROUNDS -- use .dark-bg-form*/

.dark-bg-form label.gfield_label.gform-field-label {
    color: var(--Default-White);
}

.dark-bg-form .gform_wrapper.gravity-theme .gfield_required {
    color: #ffcccd;
}

/*FORMS ON LIGHT BACKGROUNDS -- use .light-bg-form*/

.light-bg-form label.gfield_label.gform-field-label {
    color: var(--Default-Black);
}

.light-bg-form .gform_wrapper.gravity-theme .gfield_required {
    color: #DB202B;
}

.gform_wrapper.gravity-theme .gf_progressbar_percentage.percentbar_blue {
    background-color: var(--Brand-Color-Primary);
}

.gform_wrapper.gravity-theme .gf_progressbar_title {
    color: var(--Default-Black);
}

#gform_page_10_1 h3.gsection_title,
#gform_page_10_2 h3.gsection_title,
#gform_page_10_3 h3.gsection_title {
    color: var(--Brand-Color-Primary);
    font-size: var(--Heading-5-Size) !important;
}

@media only screen and (max-width:980px) {
    .gform_wrapper.gravity-theme .gform_page_footer input+input {
        margin-left: 0;
    }
}

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


/*SWIPER STYLES*/
/* @import files in shortcodes.php*/

#product-gallery {
    margin-bottom: 30px;
}

/* Swiper containers */
.swiper-container {
    width: 100%;
    height: auto;
    position: relative;
    overflow: hidden;
    /* This is crucial for clipping slides outside the view */
}

.slider-for {
    margin-bottom: 10px;
}

.slider-for .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
}

.main-slide img {
    width: 100%;
    height: auto;
    object-fit: contain !important;
    object-position: center !important;
    aspect-ratio: 1/1;
}

.slider-nav {
    margin-top: 10px;
    height: 80px;
    /* This sets the overall height of the thumbnail row */
}

.slider-nav .swiper-slide {
    opacity: 0.6;
    transition: opacity 0.3s ease;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-shrink: 0;
    /* Prevents slides from shrinking */
    height: 100%;
    /* Takes height from .slider-nav container (80px) */
    /* --- MAKE SLIDES SQUARE --- */
    width: 80px;
    /* Set width equal to height for square aspect ratio */
}

.slider-nav .swiper-slide-thumb-active {
    opacity: 1;
    /* Active thumbnail opacity */
}

.nav-slide img {
    width: 100%;
    height: auto;
    /*             display: block; */
    object-fit: contain;
    /* Ensures image fills the square, cropping if needed */
    height: 100%;
    /* Ensures image fills its slide area */
}

/* Button container styling */
.button-container {
    display: flex;
    justify-content: space-between;
    margin-top: 15px;
    position: absolute;
    width: 116%;
    left: -8%;
    margin-top: -52px;
}


/*hides Swiper out-of-the-box SVG arrows*/
.swiper-navigation-icon {
    display: none;
}

/* Styling for the custom Font Awesome arrows */
.swiper-button-next.custom-arrow,
.swiper-button-prev.custom-arrow {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    background: none;
    cursor: pointer;
    outline: none;
    top: auto;
    left: auto;
    right: auto;
    transform: none;
    z-index: auto;
}

.swiper-button-next.custom-arrow i.fa-solid,
.swiper-button-prev.custom-arrow i.fa-solid {
    font-size: 24px;
    color: #ffffff;
    transition: color 0.3s ease;
}

.swiper-button-next.custom-arrow:hover i.fa-solid,
.swiper-button-prev.custom-arrow:hover i.fa-solid {
    color: #f5843c;
}

/* Hide Swiper's default visual content for its arrows if we're replacing them with icons */
.swiper-button-next::after,
.swiper-button-prev::after {
    content: none !important;
}

/* Responsive adjustments */
@media only screen and (max-width: 980px) {
    #product-gallery {
        margin-bottom: 60px;
    }
}

.featured-image-fallback {
    text-align: center;
}

.featured-image-fallback img {
    max-width: 100%;
    height: auto;
}






/*END SWIPER STYLES*/




/*START PAGE ORGANIZATION*/
/*
HOMEPAGE
*/

.home-hero-flex {
    display: flex !important;
    gap: 1vh;
    align-items: center;
    margin: 2vh 0;
}

.no-bg-icon-card {
    position: relative;
    padding: 10px;
}

.no-bg-icon-card .et_pb_blurb_container {
    margin-top: 10px;
}

.no-bg-icon-card:before {
    content: '';
    position: absolute;
    border-radius: 8px;
    color: #fff;
    background-color: var(--Brand-Color-Secondary);
    top: 10px;
    left: 10px;
    width: 50px;
    height: 100%;
    max-height: 50px !important;
    font-family: 'Font Awesome 6 Pro' !important;
    font-weight: 900 !important;
    font-size: 30px;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
}

.no-bg-icon-card .et-pb-icon {
    font-size: 0 !important;
}

#industry {
    background-color: var(--Brand-Color-6);
}

#industry .et_pb_promo {
    padding: 0 !important;
    align-self: center;
}

#industry .et_pb_promo_description {
    text-align: left;
}

#industry .two-col {
    grid-gap: 5vh !important;
}

#industry .et_pb_blurb:hover .pseudo-link {
    text-decoration: underline;
}

#industry .et_pb_blurb .et_pb_main_blurb_image {
    width: 22vh;
    margin-bottom: 0 !important;
}

#industry .et_pb_blurb_position_left .et_pb_blurb_content {
    display: grid;
    grid-template-columns: 40% 60%;
    background-color: var(--Default-White);
    padding: 1rem;
    border-radius: var(--Border-Radius-400);
    transition: .3s ease;
}

#industry .et_pb_blurb_position_left .et_pb_blurb_content:hover {
    box-shadow: 6px 4px 10px -3px rgba(0, 0, 0, 0.5);
    transition: .3s ease;
}

#industry .et_pb_blurb_position_left .et_pb_blurb_container {
    align-self: center;
}

#industry div.et_pb_row .et_pb_column .et_pb_module:last-child {
    margin-bottom: 1.5%;
}

#industry img {
    min-height: 300px;
}

@media only screen and (max-width:980px) {
    #industry .et_pb_blurb_position_left .et_pb_blurb_content {
        grid-template-columns: auto;
    }

    #industry .et_pb_blurb .et_pb_main_blurb_image {
        width: 100%;
    }

    #industry .et_pb_blurb_position_left .et_pb_blurb_container {
        padding-left: 0;
        padding-top: 10px;
    }

    .flowy-flag {
        display: none;
    }

    .home-hero-flex {
        display: block !important;
        gap: 0;
    }

    #industry .two-col {
        grid-gap: 5px !important;
    }

    #industry .et_pb_column .et_pb_module {
        margin-bottom: 15px;
    }
}

.pseudo-link {
    color: var(--Brand-Color-Primary);
    background-color: transparent !important;
    border: solid 4px transparent !important;
    font-weight: var(--Font-Weight-Bold) !important;
    font-size: 18px !important;
    padding-right: 20px;
    position: relative;
    transition: ease all 0.3s !important;
    padding-bottom: 8px;
    width: fit-content;
    align-self: end;
}

.pseudo-link.light {
    color: var(--Default-White);
}

.pseudo-link:before {
    position: absolute;
    content: '\f054';
    color: inherit;
    top: 0;
    right: 0;
    font-family: 'Font Awesome 6 Pro' !important;
    font-weight: 900 !important;
}


#solutions .card:hover .pseudo-link,
.no-bg-icon-card:hover .pseudo-link,
.on-page-post-item:hover .pseudo-link {
    border-bottom-color: var(--Brand-Color-Primary) !important;
}

#Benefits .linked-text:hover .pseudo-link {
    border-bottom-color: var(--Default-White) !important;
}

/*Rail Professionals Trust Nolan -- toggle boxes open on desktop / closed on mobile*/

/*All Devices Styles*/
#trust-nolan .et_pb_toggle_title {
    color: var(--Brand-Color-Primary);
    text-align: left !important;
}

#trust-nolan .et_pb_toggle_content {
    padding-top: 5px !important;
    text-align: left !important;
}

/* --- Desktop Styles (Toggle boxes appear open and static) --- */
@media only screen and (min-width: 981px) {

    /* Hides the toggle icon */
    #trust-nolan .et_pb_toggle_title:before {
        display: none !important;
    }

    /* Removes default pointer cursor from title */
    #trust-nolan .et_pb_toggle_title {
        cursor: default !important;
        pointer-events: none;
        /* Prevents clicking on the title on desktop */
    }

    /* Ensures the content is always visible on desktop */
    #trust-nolan .et_pb_toggle_content {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        height: auto !important;
        overflow: visible !important;
    }

    /* Removes padding if you want the title to blend more */
    #trust-nolan .et_pb_toggle {
        padding: 0 !important;
        border: none;
    }
}

/* --- 'Rail Professionals Trust Nolan' Mobile Styles (Toggle boxes appear closed and clickable) --- */
@media only screen and (max-width: 980px) {

    #trust-nolan .et_pb_toggle {
        border: 1px solid var(--Brand-Color-Primary);
        border-radius: 8px;
        background-color: var(--Default-White);
    }

    #trust-nolan .et_pb_toggle .et_pb_toggle_title:before {
        right: auto;
        left: 0;
    }

    /* Ensures the toggle icon is visible on mobile */
    #trust-nolan .et_pb_toggle_title:before {
        display: block !important;
    }

    /* Reverts cursor to pointer on mobile */
    #trust-nolan .et_pb_toggle_title {
        cursor: pointer !important;
        pointer-events: auto;
        padding-left: 4vh;
    }

    #trust-nolan h3.et_pb_toggle_title {
        margin-bottom: 0 !important;
    }

    /* Forces the toggle content to be closed by default on mobile */
    #trust-nolan .et_pb_toggle.et_pb_toggle_open .et_pb_toggle_content {
        display: none;
        opacity: 0 !important;
        visibility: hidden !important;
        height: 0 !important;
        overflow: hidden !important;
        transition: ease .3s all !important;
    }

    /* Ensures closed toggles have appropriate padding */
    #trust-nolan .et_pb_toggle.et_pb_toggle_open {
        padding-bottom: 20px;
    }

    #trust-nolan .et_pb_toggle_open .et_pb_toggle_title:before {
        font-family: 'Font Awesome 6 Pro' !important;
        content: "\2b";
        color: var(--Brand-Color-3) !important;
        font-weight: var(--Font-Weight-Bold) !important;
    }

    #trust-nolan .et_pb_toggle_title:before {
        font-family: 'Font Awesome 6 Pro' !important;
        content: "\f068";
        color: var(--Brand-Color-3) !important;
        font-weight: var(--Font-Weight-Bold) !important;
    }
}

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

    #catalog-download h2,
    #catalog-download p {
        text-align: center;
    }

    .dark-bg-form input#gform_submit_button_6.gform_button.button {
        margin: auto !important;
    }
}

/*testing */




/*end testing*/







/* End Homepage */

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

.slick-arrow {
    font-size: 30px !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;
}


/*Blue Arrows*/
.primary .slick-arrow {
    color: var(--Brand-Color-Primary);
}


/*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;
    opacity: 1 !important;
}

li.on-page-post-item .card {
    height: 100% !important;
    width: 100% !important;
    padding: 2vh;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-content: baseline;
}

li.on-page-post-item .card> :last-child {
    margin-top: auto !important;
}

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: 24px;
    color: var(--Brand-Color-Secondary);
    height: fit-content;

}

li.on-page-post-item .card p {
    height: fit-content;
}

li.on-page-post-item .card .post-excerpt {
    margin-top: 10px;
    margin-bottom: 30px;
}

p.post-excerpt {
    color: var(--Default-Black);
}

@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
*/
.ft-post {

    a {
        gap: 70px !important;
    }

    img {
        min-width: 100%;
        object-fit: cover;
        object-position: center;
    }

    h2,
    p {
        color: var(--Brand-Color-Primary);
    }

    p.et_pb_button {
        width: fit-content;
    }
}

.ft-tag {
    border-radius: 60px;
    color: var(--Brand-Color-5);
    text-transform: uppercase;
    letter-spacing: 2px;
    width: fit-content;
    margin-bottom: 1vh;
}

h2.underline.ft-post-h2 {
    font-size: var(--Heading-4-Size) !important;
}

h1.underline.ft-post-h2 {
    font-size: var(--Heading-4-Size) !important;
    color: var(--Brand-Color-Primary);
}

.ft-post a.grid.two-col:hover .post-info p.et_pb_button.fsm-btn-alt {
    background: var(--Brand-Color-Secondary) !important;
    border-color: transparent !important;
    border-bottom-color: var(--Brand-Color-3) !important;
}

.facetwp-facet.facetwp-type-sort {
    width: 100%;
    min-width: 100%;
}

.facetwp-facet.facetwp-type-sort select {
    width: 100%;
    min-width: 100%;
    padding: 5px 10px;
    border-radius: var(--Border-Radius-100);
    border: 1px solid var(--Brand-Color-5);
}

input.facetwp-search {
    border-radius: var(--Border-Radius-100);
    border: none;
    background: var(--Default-White);
    padding: 8px 12px;
    width: 100%;
}

/*END*/

/*
BLOG LIST
*/

ol.fsm-post-list {
    list-style-type: none;
    display: grid;
    grid-template-columns: repeat(3, 1fr) !important;
    grid-gap: 3vh !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: var(--Body-Size-Small);
    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*/


/*
ALL POSTS OPTION 3
*/

#blog-title h1 {
    color: var(--Brand-Color-Primary) !important;
    font-size: var(--Heading-2-Size) !important;
}

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%;
}

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;
}

#blog-post-content h2 {
    font-size: var(--Heading-3-Size) !important;
    font-weight: var(--Font-Weight-Bold) !important;
}

#blog-post-content h3 {
    font-size: var(--Heading-5-Size) !important;
}

#blog-post-content h4 {
    font-size: var(--Heading-6-Size) !important;
}

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*/


/*PRODUCT CATEGORY PAGES*/

.download-brochure a {
    color: var(--Default-White);
}

/*
PRODUCTS
*/

#products-hero,
#products-hero-child-category {
    padding: 6vh 0;
}

#products-hero .et_pb_text_inner,
#products-hero-child-category .et_pb_text_inner {
    color: var(--Default-White);
}

@media only screen and (min-width:980px) {
    #products-hero .et_pb_text {
        max-width: 60%;
    }
}

div#inner-hero {
    padding: 60px 0px;
}

.sub-head {
    font-size: clamp(1.125rem, round(0.946rem + 0.571cqi, 0.5em), 1.375rem) !important;
    /*opacity: .9;*/
}

.hero-summary {
    color: var(--Default-White);
}

.hero-search-box {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    /*border: 1px solid #ccc;*/
    border-radius: 4px;
    overflow: hidden;
    background-color: #fff;
    padding: 3px;
    max-width: 550px;
}

.hero-search-box i {
    margin-left: 12px;
    color: var(--Brand-Color-4);
}

.hero-search-btn {
    font-family: var(--Font-Body);
    padding: 3px 8px !important;
    border-radius: 4px !important;
    font-weight: var(--Font-Weight-Bold) !important;
    transition: ease all 0.3s !important;
    line-height: normal !important;
    font-size: clamp(1.125rem, round(0.946rem + 0.571cqi, 0.5em), 1.375rem) !important;
    text-decoration: none !important;
    background-color: var(--Brand-Color-Primary) !important;
    color: var(--Default-White) !important;
    transition: ease .2s;
}

.hero-search-btn:hover {
    background-color: var(--Brand-Color-3) !important;
    color: var(--Default-Black) !important;
    transition: ease .2s !important;
    border: 2px solid var(--Brand-Color-3);
}

.no-icon-bg::before {
    background-color: transparent;
}

.no-bg-icon-card.no-icon-bg {
    padding: 0;
    border: none;
}

.no-bg-icon-card.no-icon-bg:before {
    top: 0;
    left: 0;
    font-size: 40px;
}

.no-icon-bg.blue::before {
    color: var(--Brand-Color-4);
}

#product-results h2 {
    color: var(--Brand-Color-Primary) !important;
}

div#safety::before {
    content: '\f35b';
}

div#durability::before {
    content: '\f0ac';
}

div#compliance::before {
    content: '\f2f7';
}

ol.fsm-product-list.product-list {
    list-style-type: none;
}

li.product-item {
    border-radius: var(--Border-Radius-200);
    border: 1px solid var(--Default-Black);
    background: #FFF;
    box-shadow: var(--Drop-Shadow-200);
}

li.product-item a {
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    padding: 20px !important;
}

li.product-item a div {
    min-width: 100%;
}

li.product-item h3 {
    color: var(--Default-Black);
    font-family: var(--Font-Heading-Sans) !important;
    font-size: clamp(1rem, round(0.732rem + 0.857cqi, 0.5rem), 1.375rem) !important;
    font-style: normal;
    font-weight: var(--Font-Weight-Bold) !important;
    line-height: 115%;
    /* 25.3px */
    letter-spacing: -0.004px;
    text-transform: capitalize;
    margin: 0;
    margin-bottom: 10px;
}

li.product-item p {
    font-size: 18px !important;
}

.facetwp-facet.facetwp-facet-product_sort.facetwp-type-sort {
    margin-bottom: 20px;
    width: 100%;
}

.facetwp-facet.facetwp-facet-product_sort select {
    min-width: 100%;
    border-radius: var(--Border-Radius-100);
    border: 1px solid var(--Brand-Color-5);
    background: #FFF;
    padding: 8px 12px;
}

.facetwp-checkbox {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cg clip-path='url(%23clip0_5449_5230)'%3E%3Cpath d='M19 5V19H5V5H19ZM19 3H5C3.9 3 3 3.9 3 5V19C3 20.1 3.9 21 5 21H19C20.1 21 21 20.1 21 19V5C21 3.9 20.1 3 19 3Z' fill='%233A3A3A'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_5449_5230'%3E%3Crect width='24' height='24' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E") 0 50% no-repeat !important;
    background-size: 20px 20px !important;
    margin-bottom: 4px !important;
    padding-left: 26px !important;
    cursor: pointer !important;
}

.facetwp-checkbox.checked {
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cg clip-path='url(%23clip0_5449_3256)'%3E%3Cpath d='M19 3H5C3.89 3 3 3.9 3 5V19C3 20.1 3.89 21 5 21H19C20.11 21 21 20.1 21 19V5C21 3.9 20.11 3 19 3ZM10 17L5 12L6.41 10.59L10 14.17L17.59 6.58L19 8L10 17Z' fill='%233A3A3A'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_5449_3256'%3E%3Crect width='24' height='24' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E") 0 50% no-repeat !important;
    background-size: 20px 20px !important;
    margin-bottom: 4px !important;
    padding-left: 26px !important;
    cursor: pointer !important;
}

span.facetwp-display-value {
    font-family: var(--Font-Body);
    font-size: 16px !important;
    font-weight: var(--Font-Weight-Bold);
}

div.facetwp-depth.visible span.facetwp-display-value {
    font-weight: var(--Font-Weight-Regular);
}

div#products-hero input.facetwp-search {
    /* border-radius: var(--Border-Radius-100);*/
    /*border: 1px solid var(--Brand-Color-Secondary);*/
    background: var(--Default-White);
    padding: 8px 12px;
    width: 500px;
}

p.search-label {
    margin: 0;
    padding: 0;
    font-family: var(--Font-Heading-Sans) !important;
    font-size: clamp(1.125rem, round(0.813rem + 1cqi, 0.5rem), 1.563rem) !important;
    font-style: normal;
    font-weight: var(--Font-Weight-Bold);
    line-height: 115%;
    letter-spacing: -0.005px;
}

li.product-item img {
    min-height: 250px;
    max-height: 150px;
    min-width: 100%;
    object-position: center;
    object-fit: cover;
}

/*END*/

/*
CONSTRUCTION MANAGEMENT
*/
.dark-card {
    color: #fff;
    border-radius: var(--Border-Radius-200);
    background: var(--Brand-Color-Secondary);
    box-shadow: var(--Drop-Shadow-300);
    padding: 20px;

    .et_pb_main_blurb_image,
    span.et_pb_image_wrap {
        min-width: 100%;
        display: flex;
    }

    h3 {
        color: var(--Default-White);
    }

    img {
        min-width: 100%;
        min-height: 200px;
        object-fit: cover;
        object-position: center;
    }
}

/*END*/


/*
Resources
*/
ol#resources li {
    display: block;
}

ol#resources .post-info {
    padding-top: 50px;
}

li.resource-manual,
li.resource-catalog,
li.resource-blog {
    position: relative;
}

ol#resources li::before {
    content: '';
    position: absolute;
    border-radius: 8px;
    color: var(--Brand-Color-Primary);
    top: 20px;
    left: 20px;
    font-size: 32px !important;
    font-family: 'Font Awesome 6 Pro' !important;
    font-weight: 900 !important;
}

ol#resources li.resource-manual::before {
    content: '\f15b' !important;
}

ol#resources li.resource-catalog::before {
    content: '\f518' !important;

}

ol#resources li.resource-blog::before {
    content: '\f044' !important;
}

ol#resources li::after {
    content: '';
    position: absolute;
    border-radius: 30px;
    color: var(--Brand-Color-Secondary);
    background-color: var(--Brand-Color-5);
    top: 20px;
    right: 20px;
    font-size: 14px !important;
    font-weight: 700 !important;
    padding: 2px 13px;
    font-family: var(--Font-Body);
    font-style: normal;
    line-height: 160%;
    /* 23.04px */
}

ol#resources li.resource-manual::after {
    content: 'Manual' !important;
}

ol#resources li.resource-catalog::after {
    content: 'Catalog' !important;

}

ol#resources li.resource-blog::after {
    content: 'Blog' !important;
}

/*
Product Template
*/

#product-hero .et_pb_row {
    padding-top: 5vh;
}

#product-hero img {
    max-height: 50vh;
    object-fit: contain;
}

#product-hero img[src$=".webp"],
#product-hero img[src$=".png"],
#products-hero-child-category img[src$=".png"],
#products-hero-child-category img[src$=".webp"] {
    background: white;
    border-radius: var(--Border-Radius-200);
}

div#products-hero .facetwp-facet {
    margin-bottom: 0 !important;
    width: fit-content;
}

.spec-tbl {
    width: 100%;
}

.spec-heading {
    font-size: var(--Heading-5-Size);
}

.spec-tbl tr td,
.spec-heading,
.spec-tbl tr th {
    padding: 10px;
}

.spec-tbl tr td {}

.spec-tbl tr th:first-of-type {
    color: var(--Brand-Color-Primary);
    font-size: 1.25em;
}

.spec-tbl .td-blue {
    color: var(--Brand-Color-Primary);
    font-size: 1.25em;
}

.spec-tbl tr:first-child {
    /*border-right:1px solid #5B5B5B;*/
    /* background: var(--Brand-Color-6);
    color: var(--Brand-Color-Primary); */
}

.spec-tbl th {
    background-color: var(--Brand-Color-6);
}

.spec-tbl tr {
    border: 1px solid #5B5B5B !important;
    background-color: var(--Default-White);
}


td.td-blue {
    white-space: nowrap;
}

@media (max-width: 768px) {

    .spec-tbl table,
    .spec-tbl thead,
    .spec-tbl tbody,
    .spec-tbl th,
    .spec-tbl td,
    .spec-tbl tr {
        display: block;
        /* Make all table elements behave like blocks */
    }

    .spec-tbl thead tr {
        position: absolute;
        /* Hide the desktop header */
        top: -9999px;
        left: -9999px;
    }

    /* Style the table row as a card */
    .spec-tbl tr {
        border: 1px solid #ccc;
        margin-bottom: 15px;
    }

    /* Style the table data cells */
    .spec-tbl td {
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 55% !important;
        /* Make space for the label */
        text-align: left;
        padding: 10px;
    }

    .spec-tbl td:before {
        /* Use the data-label attribute to create the label */
        content: attr(data-label);
        position: absolute;
        left: 10px;
        width: 45%;
        padding-right: 10px;
        white-space: nowrap;
        font-weight: bold;
    }
}




.download-spec-sheet::before {
    content: '\f019';
    font-family: 'Font Awesome 6 Pro';
    font-weight: var(--Font-Weight-Bold);
    color: var(--Default-White);
}

.download-spec-sheet a {
    color: var(--Default-White) !important;
    font-weight: var(--Font-Weight-Bold);
}

.prod-dts {
    justify-content: left;
    text-align: left;

    h2 {
        color: var(--Brand-Color-Primary);
        font-size: clamp(1.375rem, round(0.929rem + 1.429cqi, 0.5rem), 2rem) !important;
    }
}

.ft-prods li.product-item img {
    min-height: 220px;
    max-height: 220px;
}

.sort-btns .sort-opts {
    height: 100%;
    align-content: center;
    border-radius: var(--Border-Radius-200);
    padding: 20px;
    padding-top: 30px;
    box-shadow: var(--Drop-Shadow-300);
    position: relative;
}

.sort-btns .sort-opts h2 {
    margin-bottom: 0 !important;
    font-size: clamp(1.375rem, round(0.929rem + 1.429cqi, 0.5rem), 2rem) !important;
}

.sort-btns .sort-opts::before {
    content: '';
    position: absolute;
    border-radius: 8px;
    color: #fff;
    top: 10%;
    left: 50%;
    width: 50px;
    height: 100%;
    max-height: 50px !important;
    font-family: 'Font Awesome 6 Pro' !important;
    font-weight: 900 !important;
    font-size: 30px;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    transform: translateX(-50%);
    /* This centers the element horizontally */

}

.sort-btns .sort-opts .et_pb_animation_top {
    display: none;
}

.facetwp-icon {
    opacity: 1 !important;
}

.facetwp-icon::after {
    content: "Search";
    display: inline-block;
    background-color: var(--Brand-Color-Primary);
    color: white;
    border-radius: var(--Border-Radius-100);
    box-shadow: var(--Drop-Shadow-200);
    font-family: var(--Font-Body) !important;
    cursor: pointer;
    font-weight: var(--Font-Weight-Regular);
    font-style: normal;
    position: absolute;
    right: 90%;
    top: 14%;
    padding: 5px 8px;
    margin-right: 3px;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}

.facetwp-icon:before {
    display: none !important;
}

.facetwp-icon:hover::after {
    background-color: var(--Brand-Color-Secondary);
}

.facetwp-input-wrap {
    position: relative;
    display: block;
    width: 100%;
}

/*
Catalog Download
*/

#cat-hero {
    padding: 8vh 0 10vh 0;
}

.download-link {
    background-color: var(--Brand-Color-3);
    padding: .8em;
    color: var(--Brand-Color-Primary);
    font-weight: var(--Font-Weight-Bold);
    font-size: 18px;
    border-radius: var(--Border-Radius-100);
    transition: .2s ease;
}

.download-link:hover {
    background-color: var(--Brand-Color-6) !important;
    border-bottom: 4px solid var(--Brand-Color-3);
    transition: .2s ease;
}

.download-link:before {
    position: relative;
    font-family: 'Font Awesome 6 Pro';
    content: '\f019';
    font-weight: var(--Font-Weight-Bold);
    margin-right: 5px;
}

/*
CAREERS 
*/

/*#Benefits h2.underline-yellow{
    font-size: var(--Heading-4-Size) !important;
}*/

.card {
    height: 100%;
    padding: 25px;
    box-shadow: 0px 4px 4px -1px rgba(13, 13, 13, 0.10), 0px 4px 4px -1px rgba(13, 13, 13, 0.05);
    border-radius: var(--Border-Radius-200);
}

.Brand-Color-Primary {
    background-color: var(--Brand-Color-Primary);
}

/* @media only screen and (min-width:980px){
    #testimonial .et_pb_text_inner{
        max-width: 60%;
    }
} */

.benefits .three-col {
    grid-gap: 4vh !important;
}

.simple-icon-blurb h3 {
    position: relative;
    padding-top: 50px;
}

.et_pb_module.et_pb_blurb.float-b {
    display: flex;
    align-content: center;
    flex-wrap: wrap;
}

.Default-White {
    background-color: var(--Default-White);
}

#testimonial p.home-sub-head {
    max-width: 80%;
    text-align: center;
    margin: auto;
}

.career-list {
    .pseudo-link {
        margin: 0;
        padding-left: 0;
        padding-bottom: 0;
    }

    .pseudo-link::before {
        height: 100%;
        display: flex;
        flex-wrap: wrap;
        align-content: center;
        justify-content: center;
        font-size: 16px;
    }

    .card {
        height: 100%;
        display: flex;
        flex-wrap: wrap;
        margin-bottom: 1vh;
    }

    h3 {
        color: var(--Brand-Color-Primary);
    }

    p,
    h3 {
        width: 100%;
    }

    p.label {
        width: 100%;
        font-weight: 700;
        text-transform: uppercase;
        color: var(--Default-Black);
        padding: 0;
    }

    .pseudo-link:before {
        position: absolute;
        content: '\f078';
    }

    .expanded .pseudo-link:before {
        transform: rotate(180deg);
    }

}

.card.Default-White.expanded {
    .pseudo-link {
        margin-top: 10px;
        margin-bottom: 10px;
    }
}


#apply {}


/*
ABOUT
*/


.rail-operation-slider {
    background-color: var(--Brand-Color-6);
}

.rail-operation-slider .et_pb_blurb {
    margin: 0 1vh;
    border: 2px solid var(--Brand-Color-Primary);
    color: var(--Brand-Color-Primary);
    background-color: var(--Default-White);
    border-radius: var(--Border-Radius-400);
}

.rail-operation-slider .et_pb_main_blurb_image {
    margin-bottom: 0;
}

.rail-operation-slider .et_pb_blurb_container {
    padding: 1vh 2vh 2vh 2vh;
}

.rail-operation-slider h4.et_pb_module_header,
.rail-operation-slider h3.et_pb_module_header {
    color: var(--Brand-Color-Primary);
    font-size: var(--Heading-5-Size) !important;
    font-weight: var(--Font-Weight-Bold);
}

.rail-operation-slider .et_pb_image_wrap img {
    object-fit: contain;
    /*clip-path: inset(0 round 15px);*/
    border-radius: 14px 14px 0 0;
}

.rail-operation-arrows {
    text-align: left;
}

.rail-operation-column .slick-list {
    clip-path: inset(-100vw);
    overflow: visible;
}

.rail-operation-column .slick-track {
    display: flex;
}

.rail-operation-column .slick-slide {
    height: auto;
}

#about-history .et_pb_image_wrap img {
    box-shadow: 0px 16px 32px -4px rgba(13, 13, 13, 0.50), 0px 4px 4px -4px rgba(13, 13, 13, 0.25) !important;
}



/*FOOTER*/

#prefooter {
    background-color: var(--Brand-Color-Primary) !important;
}

#prefooter .et_pb_row {
    background-color: var(--Brand-Color-5) !important;
    padding: 2.5rem !important;
    color: var(--Default-White);
    border-radius: 8px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

#prefooter h2 {
    color: var(--Default-White) !important;
}

.footer-top {
    padding-top: 5vh !important;
}

.footer-top h5 {
    font-weight: var(--Font-Weight-Bold);
}

.footer-top a {
    text-decoration: none !important;
}

.footer-top img {
    width: 15rem !important;
    transform: translateY(-5vh);
}

.phone-large {
    font-size: 1.4em !important;
    font-weight: var(--Font-Weight-Bold);
}

#sub-footer a {
    text-decoration: underline;
    color: #fff;
}

#sub-footer a:hover {
    background-color: var(--Brand-Color-3) !important;
    color: var(--Default-Black) !important;
}

div#sub-footer .flex {
    justify-content: flex-end;
    align-content: center;
    gap: 10px;
}

/*.footer-flex{
    display:grid;
    grid-template-columns: repeat(4, 1fr) !important;;
}*/

.button-col {
    justify-self: end;
}

@media only screen and (max-width:980px) {
    #prefooter .et_pb_text_inner {
        text-align: center;
    }

    #prefooter .underline::before {
        left: 16vh;
    }

    .footer-flex {
        display: grid;
        grid-template-columns: repeat(1, 1fr) !important;
    }

    .logo-col {
        order: 1;
    }

    .contact-col {
        order: 3;
    }

    .location-col {
        order: 4;
    }

    .button-col {
        order: 2;
    }

    .button-col .fsm-btn-white {
        margin-bottom: 5vh;
    }

    .footer-top img {
        width: 22vh !important;
        transform: translateY(0vh);
    }

    div#sub-footer .flex {
        justify-content: center;
    }
}

span.footer-strong {
    font-size: var(--Heading-5-Size) !important;
    font-family: var(--Font-Heading-Sans) !important;
    font-weight: 700;
    text-transform: uppercase;
}

/*
 * Max Mega Menu Styles
 * */
ul.mega-sub-menu {
    border-radius: var(--Border-Radius-200) !important;
    background-color: #fff !important;
    background: #fff !important;
}

.mega-sub-menu {
    border-top: 0 !important;
}

.mega-menu-row {
    padding: 50px !important;
}

span.mmm-title:not(.parent .mmm-title) {
    position: relative;
    color: var(--Brand-Color-Primary);
    font-family: var(--Font-Heading-Sans);
    font-size: clamp(1rem, round(0.911rem + 0.286cqi, 0.5em), 1.125rem);
    font-style: normal;
    font-weight: var(--Font-Weight-Bold);
    line-height: 35px;
    letter-spacing: -0.008px;
    display: block;
    padding-left: 40px;
}


span.mmm-title:not(.parent .mmm-title)::before {
    content: '';
    position: absolute;
    border-radius: 25px;
    color: #fff;
    background-color: var(--Brand-Color-3);
    top: 0;
    left: -15px;
    width: 35px;
    height: 35px;
    max-height: 35px !important;
    font-family: 'Font Awesome 6 Pro' !important;
    font-weight: 900 !important;
    display: flex;
    align-content: center;
    justify-content: center;
}

#derails-rerailers .mmm-title:not(.parent .mmm-title)::before,
.sort-btns #derails-rerailers.sort-opts::before {
    content: '\e453' !important;
}

#maintenance-tools .mmm-title:not(.parent .mmm-title)::before,
.klenk.no-bg-icon-card::before,
.sort-btns #maintenance-tools.sort-opts::before {
    content: '\f54a' !important;
}

#material-movers .mmm-title:not(.parent .mmm-title)::before,
.klenk.no-bg-icon-card::before,
.sort-btns #material-movers.sort-opts::before {
    content: '\f473' !important;
}

#signaling-equipment .mmm-title:not(.parent .mmm-title)::before,
.roofing.no-bg-icon-card::before,
.sort-btns #signaling-equipment.sort-opts::before {
    content: '\f637' !important;
}

#safety-devices .mmm-title:not(.parent .mmm-title)::before,
.rubber.no-bg-icon-card::before,
.sort-btns #safety-devices.sort-opts::before {
    content: '\f807' !important;
}

#railcar-components .mmm-title:not(.parent .mmm-title)::before,
.screen.no-bg-icon-card::before,
.sort-btns #railcar-components.sort-opts::before {
    content: '\f238' !important;
}

.handshake.no-bg-icon-card::before {
    content: '\f2b5' !important;
}

.vials.no-bg-icon-card::before {
    content: '\e596' !important;
}

.gears.no-bg-icon-card::before {
    content: '\f085' !important;
}

#engineering .mmm-title:not(.parent .mmm-title)::before {
    content: '\f085' !important;
}

#equipment .mmm-title:not(.parent .mmm-title)::before,
.equipment.no-bg-icon-card::before {
    content: '\f552' !important;
}

#painting .mmm-title:not(.parent .mmm-title)::before,
.painting.no-bg-icon-card::before {
    content: '\f5bd' !important;
}

#production .mmm-title:not(.parent .mmm-title)::before {
    content: '\f46d' !important;
}

#electronic .mmm-title:not(.parent .mmm-title)::before,
.electronic.no-bg-icon-card::before {
    content: '\f863' !important;
}

#assembly .mmm-title:not(.parent .mmm-title)::before,
.box.no-bg-icon-card::before {
    content: '\f49e' !important;
}

#precision .mmm-title:not(.parent .mmm-title)::before {
    content: '\f275' !important;
}

#associate .mmm-title:not(.parent .mmm-title)::before {
    content: '\f275' !important;
}

.wrench.no-bg-icon-card::before {
    content: '\f7d9' !important;
}

.factory.no-bg-icon-card::before {
    content: '\f3b3' !important;
}

.desktop.no-bg-icon-card::before {
    content: '\f8b1' !important;
}

.doc.no-bg-icon-card::before {
    content: '\f15b' !important;
}

.comp.no-bg-icon-card::before {
    content: '\f390' !important;
}

.check.no-bg-icon-card::before {
    content: '\f058' !important;
}

.sparkle.no-bg-icon-card::before {
    content: '\f890' !important;
}

.scissors.no-bg-icon-card::before {
    content: '\f0c4' !important;
}

.hat.no-bg-icon-card::before {
    content: '\f807' !important;
}

.growth.no-bg-icon-card::before {
    content: '\f4bf' !important;
}

.teach.no-bg-icon-card::before {
    content: '\e53d' !important;
}

.family.no-bg-icon-card::before {
    content: '\e537' !important;
}

.briefcase.no-bg-icon-card::before {
    content: '\f0b1' !important;
}

.award.no-bg-icon-card::before {
    content: '\f559' !important;
}

.parent .mmm-title {
    font-size: var(--Heading-4-Size);
    display: block;
    color: var(--Brand-Color-Primary);
    font-family: var(--Font-Heading-Sans);
    font-style: normal;
    font-weight: var(--Font-Weight-Bold);
}

.parent .mmm-description p {
    margin-top: 1.5vh;
    line-height: 2em;
}

.mmm-group a:not(span) {
    color: var(--Default-Black) !important;
    font-size: 14px !important;
    font-weight: var(--Font-Weight-Regular);
    font-family: var(--Font-Body);
}

.secondary {
    margin-top: 3vh;
    color: var(--Brand-Color-Primary);
    padding-top: 10px;
    font-weight: var(--Font-Weight-Bold);
    font-size: var(--Heading-5-Size) !important;
    transition: .2s ease;
}

.secondary:hover:before {
    position: absolute;
    content: '';
    width: 12vh;
    height: 3px;
    background-color: var(--Brand-Color-Primary);
    left: 2.5vh;
    bottom: 20px;
    transition: .2s ease;
    /*border-bottom: 1px solid var(--Brand-Color-Primary);*/
}

/*REUSABLE*/

#breadcrumb .et_pb_text_inner,
#breadcrumb .et_pb_text_inner a {
    color: var(--Default-White) !important;
}

.pagination a.facetwp-page {
    padding: 0 8px;
    font-family: var(--Font-Body);
    color: var(--Default-Black);

}

.pagination a.facetwp-page:hover {
    background-color: var(--Brand-Color-Secondary);
    padding: 0 8px;
    border-radius: 8px;
}

.pagination a.facetwp-page.active {
    background: var(--Brand-Color-Primary);
    border-radius: 7px;
    color: var(--Default-White);
    font-weight: 400;
}

.mw-700 {
    max-width: 700px;
}

.side-by-side {
    display: flex;
    justify-content: center;
    margin-top: 3vh;

    a:first-child {
        margin-right: 1vh !important;

    }
}

.align-center {
    flex-wrap: wrap;
    align-content: center;
}

.Drop-Shadow-400 {
    box-shadow: 0px 16px 32px -4px rgba(13, 13, 13, 0.10), 0px 4px 4px -4px rgba(13, 13, 13, 0.05);
}

.Border-Radius-200,
.Border-Radius-200 img {
    border-radius: 8px;
}

.Border-Radius-300,
.Border-Radius-300 img {
    border-radius: 12px;
}

.flex {
    display: flex !important;
    gap: 3vh;
}

.grid {
    display: grid !important;
}

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

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



.four-col {
    grid-template-columns: repeat(4, 1fr) !important;
    grid-gap: 2vh !important;
}

@media only screen and (max-width:980px) {
    .mw-700 {
        max-width: 100%;
    }

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

    .four-col {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .side-by-side {
        display: flex;
        flex-direction: column;
    }

    .side-by-side a:first-child {
        margin-right: 0 !important;
        margin-bottom: 1vh !important;
    }

    .three-col-auto {
        grid-template-columns: auto auto auto !important;
        grid-gap: 2vh !important;
    }
}

div#et-top-navigation,
nav#top-menu-nav {
    min-width: 100%;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

#mega-menu-primary-menu {
    display: flex;
    /* justify-content: flex-end; */
    width: 100%;
    padding-left: 0;
    margin-left: 0;
    box-sizing: border-box;
}

#mega-menu-primary-menu>li {
    float: none !important;
    /* Override any float if present */
}

#mega-menu-wrap-primary-menu #mega-menu-primary-menu {
    text-align: right;
}

#mega-menu-wrap-primary-menu #mega-menu-primary-menu>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item>a.mega-menu-link {
    color: var(--Brand-Color-Primary) !important;
    font-weight: var(--Font-Weight-Bold) !important;
    border-radius: var(--Border-Radius-200) !important;
    font-family: var(--Font-Heading-Sans);
}

ul#mega-menu-secondary-menu a.mega-menu-link {
    color: var(--Brand-Color-Primary) !important;
    font-family: var(--Font-Heading-Sans) !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: var(--Font-Weight-Regular) !important;
    line-height: 100% !important;
}

#mega-menu-wrap-secondary-menu #mega-menu-secondary-menu>li.mega-menu-item>a.mega-menu-link {
    height: unset !important;
}


#mega-menu-wrap-secondary-menu #mega-menu-secondary-menu>li.mega-menu-item {
    margin: 0 10px 0 0;
    font-family: var(--Font-Heading-Sans) !important;
}

ul#mega-menu-secondary-menu li:not(:last-child) {
    border-right: 1px solid #333 !important;
    padding-right: 10px !important;
}

#mega-menu-wrap-primary-menu #mega-menu-primary-menu li.mega-menu-megamenu>ul.mega-sub-menu>li.mega-menu-row .mega-menu-column>ul.mega-sub-menu>li.mega-menu-item {
    padding: 0;
    width: 95%;
}

#mega-menu-wrap-primary-menu #mega-menu-primary-menu>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover,
#mega-menu-wrap-primary-menu #mega-menu-primary-menu>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:focus {
    background: var(--Brand-Color-6);
    border-radius: 0 !important;
}

div.mmm-group {
    padding: 15px 0px 15px 25px;
    transition: ease all 0.3s;
}

div.mmm-group li a {
    padding-left: 4px;
    font-size: var(--Body-Size) !important;
}

div.mmm-group li a:hover,
span.mmm-title:not(.parent .mmm-title):hover {
    background: var(--Brand-Color-6);
    border-radius: var(--Border-Radius-200) !important;
    transition: ease all 0.3s;
    text-decoration: underline;
}

.mmm-group ul {
    margin-left: 4.5vh;
}

li.mega-parent-ul>.mega-sub-menu,
#mega-menu-wrap-primary-menu #mega-menu-primary-menu>li.mega-menu-flyout ul.mega-sub-menu {
    margin-top: 25px !important;
}

@media only screen and (max-width:980px) {
    ul.mega-sub-menu {
        display: block !important;
    }

    .mega-menu-row {
        padding: 0 !important;
    }

    ul#mega-menu-primary-menu {
        max-width: 90dvw !important;
    }

    #mega-menu-wrap-primary-menu #mega-menu-primary-menu>li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item:last-child>a.mega-menu-link {
        background: #f1f1f1 !important;
    }

    .mmm-group ul {
        margin-left: 6.5vh;
    }
}

/*
 Global Styles
 */

.hero-bg {
    position: relative;
    padding: 7vh 0 !important;
}

.hero-bg::before {
    position: absolute;
    content: "";
    width: 100%;
    height: 115%;
    left: 50%;
    top: 53%;
    transform: translate(-50%, -50%);
    /*background: #FFF !important;*/
    background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.55) 50%, rgba(255, 255, 255, 0) 100%);
    z-index: 1;
}

@media only screen and (min-width:981px) {
    .hero-bg .et_pb_text_inner {
        max-width: 50%;
    }
}

@media only screen and (max-width:980px) {
    .hero-bg::before {
        background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.6) 50%, rgba(255, 255, 255, .35) 100%);
    }
}

div#top-header.et-fixed-header {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}

header#main-header.et-fixed-menu {
    position: relative;
}

header#main-header.et-fixed-header::before {
    position: absolute;
    content: "";
    width: 100%;
    max-width: 1250px;
    height: 120%;
    background: #fff;
    left: 50%;
    top: 44%;
    box-shadow: 0px 4px 4px 0px rgba(13, 13, 13, 0.10), 0px 4px 4px 0px rgba(13, 13, 13, 0.05);
    border-radius: var(--Border-Radius-200);
    transform: translate(-50%, -50%);
    transition: ease all 0.3s;
}

header#main-header.et-fixed-header #logo {
    top: -38px;
}

.underline {
    position: relative;
    margin-bottom: 30px !important;
}

.underline::before {
    position: absolute;
    content: '';
    width: 50px;
    height: 8px;
    background-color: var(--Brand-Color-Secondary);
    left: 0;
    bottom: -15px;
}

.underline.center::before {
    left: 50%;
    transform: translateX(-50%);
}

.underline-yellow {
    position: relative;
    margin-bottom: 30px !important;
}

.underline-yellow::before {
    position: absolute;
    content: '';
    width: 50px;
    height: 8px;
    background-color: var(--Brand-Color-Secondary);
    left: 0;
    bottom: -15px;
}

.underline-yellow.center::before {
    left: 50%;
    transform: translateX(-50%);
}


/*Mobile*/

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

    li.mega-parent-ul>.mega-sub-menu,
    #mega-menu-wrap-primary-menu #mega-menu-primary-menu>li.mega-menu-flyout ul.mega-sub-menu {
        margin-top: 0 !important;
    }

    .slick-arrow {
        font-size: 30px !important;
    }

    .reorder {
        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
    }

    .mob-item-1 {
        order: 1;
        margin-bottom: 20px !important;
    }

    .mob-item-2 {
        order: 2;
        margin-bottom: 0 !important;
    }

    .no-bg-icon-card {
        padding: 20px;
        border: 1px solid var(--Brand-Color-5);
    }

    .no-bg-icon-card:before {
        top: 20px;
        left: 20px;
    }

    #solutions .card {
        padding: 20px;
    }

    li.on-page-post-item .card {
        margin: 5px;
    }

    .solution-link {
        font-size: 14px;
        padding: 8px 12px;
    }

    .solution-link.active .indicator {
        display: none;
    }

    .solution-links {
        display: grid;
        grid-template-columns: repeat(2, 1fr) !important;
    }

    table.spec-tbl {
        min-width: 100%;
    }

    .testimonial-list.flex :nth-child(1),
    .testimonial-list.flex :nth-child(2),
    .testimonial-list.flex :nth-child(3),
    .testimonial-list.flex :nth-child(4) {
        width: 100%;
    }

    ol.fsm-on-page-posts li.on-page-post-item {
        box-shadow: none;
    }

    #mega-menu-wrap-primary-menu .mega-menu-toggle+#mega-menu-primary-menu {
        background: #003866 !important;
    }

    .hero-bg::before {
        height: 107%;
    }

}


@media only screen and (max-width:767px) {
    .cert-badge::before {
        bottom: -10px;
        left: -10px;
    }
}

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

    div#products-hero input.facetwp-search {
        width: 70dvw !important;
    }

    .four-col {
        grid-template-columns: repeat(1, 1fr) !important;
    }
}


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

    .solution-links {
        display: flex;
    }

    .solution-link {
        min-width: 100%;
        text-align: center;
        justify-content: center;
    }

    .flex.sidexside {
        display: block !important;
    }

    .sidexside a {
        min-width: 100%;
        margin: 0;
        text-align: center;
    }
}