/*
Theme Name: Beaver Builder Child Theme
Theme URI: http://www.wpbeaverbuilder.com
Version: 1.0
Description: An example child theme that can be used as a starting point for custom development.
Author: The Beaver Builder Team
Author URI: http://www.fastlinemedia.com
template: bb-theme
*/
body {
    font-family: "Montserrat", sans-serif;
    background-color: #fff;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Montserrat", sans-serif;
}

header {
    position: relative;
}

.header-nav-d .fl-menu li {
    position: relative;
    border-bottom: 3px solid transparent;
}
header .header-nav-d .fl-menu .menu li a:after {
    content: "";
    position: absolute;
    border-bottom: 5px solid;
    border-color: transparent;
    width: 0;
    top: -110%;
    left: 0;
    right: 0;
    transition: 0.4s all ease-in-out;
}

header .header-nav-d .fl-menu .menu li a:hover:after,
header .header-nav-d .fl-menu .menu li.current-menu-item > a:after,
header .header-nav-d .fl-menu .menu li a:focus:after,
header .main-header .fl-menu .menu li.current-menu-ancestor > a:after,
header .header-nav-d .fl-menu .menu li.current_page_item .fl-has-submenu-container a:after {
    border-color: #115fc5;
    width: auto;
}

.header-nav-d .fl-menu .menu li a:after {
    bottom: -23px;
}
.fixed .header-nav-d .fl-menu .menu li a:after {
    bottom: -8px;
}

body .fl-theme-builder-header-shrink:before {
    display: none;
}

body .fl-theme-builder-header-shrink {
    background-image: none;
    background-color: #fff;
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 2px solid #c7c7c7;
}

.fl-rich-text ul li::marker {
    color: #3fb1b3;
    font-size: 20px;
}

.fl-button,
a.button,
a.fl-post-grid-more,
button,
input[type="button"],
input[type="submit"] {
    transition: 0.4s all ease-in-out;
}

.mb-0 p {
    margin-bottom: 0;
}

.text-justify p {
    text-align: justify;
}

body:not(.fl-builder-edit) .site-footer {
    margin-top: -16%;
}

.social-icons .fl-icon i {
    border: 4px solid #a5a5a5;
    width: 50px;
    height: 50px;

    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
}

.slider-col .fl-slide:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    display: block;
    background-color: rgb(0 0 0 / 20%);
}

.banner-slider .fl-slide-title {
    font-size: 32px;
    margin-bottom: 0 !important;
}

.banner-slider .fl-slide-text p {
    font-weight: 700;

    font-size: 48px;
    line-height: 1;
}

.banner-slider .fl-button-wrap {
    text-align: center;
}

.banner-slider .fl-button-wrap .fl-button {
    padding: 17px 35px;
    border-color: #2d6ca2 !important;
}

.banner-slider .bx-wrapper .bx-pager.bx-default-pager a.active,
.banner-slider .bx-wrapper .bx-pager.bx-default-pager a:focus,
.banner-slider .bx-wrapper .bx-pager.bx-default-pager a:hover {
    background: #2d6ca2;
}

.banner-slider .bx-wrapper .bx-pager.bx-default-pager a {
    width: 12px;
    height: 12px;
    margin: 0 6px;
}

.banner-slider .bx-wrapper .bx-pager.bx-default-pager a {
    background: #fff;
}

.banner-slider .fl-slide {
    display: flex;
    display: -webkit-flex;
    display: -ms-flex;
    align-items: center;
    -webkit-align-items: center;
    -ms-align-items: center;
}

.banner-slider .fl-module-content-slider .bx-wrapper {
    margin-bottom: 0;
}

.banner-slider .bx-wrapper .bx-pager {
    padding-top: 0;
    bottom: 55px;
}

body:not(.fl-builder-edit) .satisfactory-section .custom-img {
    position: absolute;
    left: 0;
    top: -35%;
    z-index: 9;
}

.overlay-white .col-right-content {
    position: relative;
    z-index: 10;
}

body:not(.fl-builder-edit) .satisfactory-section {
    position: relative;
}

.satisfactory-section .custom-img img {
    /*    max-width: 950px;
    width: 100%;*/
    padding-right: 50px;
}

/*============== services oriented
================================ */

/*============== recent blogs - home
================================ */

body .fl-post-grid-text {
    margin: 10px 0;
    padding-left: 0;
    padding-right: 0;
}

.recent-blogs .fl-post-grid-content {
    margin: 20px 0;
}
.recent-blogs a.fl-post-grid-more {
    color: #fff !important;
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 1.5;
    text-transform: uppercase;
    text-align: center;
    height: 100%;
    width: 100%;
    max-width: 225px;
    border: 2px solid #115fc5;
    border-radius: 5px;
    padding: 17px 0;
    display: block;
    margin-top: 25px;
    background-color: #115fc5;
}

.recent-blogs a.fl-post-grid-more:hover {
    background-color: #fff;
    color: #115fc5 !important;
}

/*============== gravity forms
================================ */

input:not([type="submit"]) {
    height: 45px;
    background-color: #fff;
    border: 1px solid #dddddd;
    border-radius: 0;
}

body .gform_wrapper.gform_legacy_markup_wrapper .field_sublabel_above .ginput_complex.ginput_container label,
body .gform_wrapper .gform_fields .gfield_label {
    color: #115fc5 !important;
    font-weight: 500;
    margin-bottom: 0;
    font-size: 12px;
}

body .gform_legacy_markup_wrapper .gfield_required {
    margin-left: 0;
}

body .gform_legacy_markup_wrapper .gform_footer input[type="submit"] {
    font-size: 18px;
    font-weight: 500;
    padding: 17px 50px;
    border: 2px solid #115fc5;
}

body .gform_legacy_markup_wrapper ul li.gfield.field_sublabel_above.field_description_below + li.gfield,
body .gform_wrapper.gform_legacy_markup_wrapper ul li.gfield {
    margin-top: 10px;
}

#gform_wrapper_1 textarea {
    height: 45px;
}

body .gform_legacy_markup_wrapper .gform_footer {
    padding-bottom: 0;
}

body .gform_legacy_markup_wrapper {
    margin-bottom: 0;
    margin-top: 0;
}

body .gform_confirmation_message {
    background-color: #115fc5;
    padding: 20px;

    font-weight: 500;
    margin-top: 20px;
}

.services-products .text-custom-width {
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
}

.services-products .filter-uncategorized {
    display: none;
}

.services-products .custom-col-3 {
    width: 100%;
    max-width: 35%;
}

.custom-col-9 {
    width: 100%;
    max-width: 75%;
}

.services-products .products-wrap {
    display: flex;
}
.services-products .filter {
    border-top: 1px solid #35aeb1;
    padding: 10px 0;
}
.services-products .filter-btn {
    cursor: pointer;
    /* display: block;*/
}
.services-products .filter-btn .categ-nav,
.services-products .product-title {
    color: #115fc5;
    font-size: 25px;
    font-weight: 500;
}

.services-products .filters {
    padding-left: 0;
    list-style: none;
    text-align: left;
    padding-right: 50px;
}

.services-products .product-content p {
    font-size: 18px;
}

.services-products .image-wrap {
    border: 1px solid #35aeb1;
    text-align: center;
    padding: 20px 0;
}

.services-products .product-image {
    height: 235px;
    object-fit: contain;
    object-position: center;
}

.services-products .grid-items-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

.services-products .mix-target {
    flex-basis: 50%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 50%;
    padding: 0 15px 60px;
}

.services-products .button-wrap {
    display: block;
    margin-top: 20px;
}

.services-products .button-wrap a {
    font-size: 18px;
    font-weight: 600;
    background-color: #115fc5;
    color: #fff;
    padding: 21px 45px;
    display: inline-block;
    border-radius: 10px;
    text-decoration: none;
}

.services-products .button-wrap a:hover {
    background-color: #35aeb1;
}
/*.services-products .custom-sub-categ{
    display: none!important;
}

.services-products .filter-btn.active .custom-sub-categ {
    display: block!important;
}*/
/*
.services-products .filter-btn.active .categ-list-post{
    display: block;
    margin-top: 10px;
    margin-bottom: 10px;
}*/
.services-products .filter-btn.active .categ-list-post span,
.services-products .sub-categ {
    position: relative;
    color: #525252;
    font-size: 18px;
    font-weight: 400;

    display: block;
    padding-left: 10px;
}

.services-products .filter a {
    text-decoration: none;
}

.services-products .filter-btn.active .categ-list-post span:before {
    content: "·";
    font-size: 60px;
    position: relative;
    top: 10px;
    line-height: 0;
    color: #34adb1;
}

.cta {
    position: relative;
    z-index: 99;
}

.h-45 {
    position: relative;
    z-index: 10;
}

.page-id-28 .c-hide {
    display: none;
}
/*April 12, 2023*/
.fl-col-group.fl-node-73ku6ocpifd8, .fl-module.fl-module-post-grid.fl-node-eyj59kf7mo1g, .fl-col-group.fl-node-60ddcc76cd5b9, .fl-module.fl-module-post-grid.fl-node-60ddcc905de8a, .fl-node-wzlig70nudav {
    display: none !important;
}
.fl-col-group.fl-node-vr5guw1myli2 {
    margin-top: 160px;
}
.fl-col.fl-node-626075fbdfd05.fl-col-small {
    visibility: hidden;
}
.footer-contact {
    display: flex !important;
    justify-content: center;
}
.footer-contact p {
    padding: 0 20px !important;
}
.fl-col-group.fl-node-guxp43ztfj2h.fl-col-group-nested {
    display: flex !important;
    justify-content: center !important;
	align-items: center !important;
}
.fl-node-iu6lmdhkofgb, .fl-node-l3tbz9gjouke{
    width: 15% !important;
}
.fl-node-9lsn8drwc26g {
    width: 30%;
}
.fl-node-pe07njabrzu9 {
    width: 20%;
}
@media (min-width: 1601px) {
    .recent-blogs a.fl-post-grid-more {
        font-size: 18px;
    }
    /* .banner-slider .fl-slide-title {
        font-size: 40px;
    }*/

    .banner-slider .fl-slide-text p {
        font-size: 65px;
    }
}
@media (max-width: 1600px) {
    body .gform_legacy_markup_wrapper .gform_footer input[type="submit"] {
        font-size: 16px;
    }

    .services-section .fl-row-content-wrap {
        background-position: -45px 100%;
    }
}

@media (max-width: 1600px) and (min-width: 1200px) {
    body:not(.fl-builder-edit) .satisfactory-section .custom-img {
        left: -20%;
    }
}

@media (max-width: 1600px) and (min-width: 992px) {
    .h-45 .fl-heading .fl-heading-text {
        font-size: 35px;
    }

    .h-35 .fl-heading .fl-heading-text {
        font-size: 28px;
    }

    .t-30 .fl-module-content .fl-rich-text p {
        font-size: 25px;
    }
    .t-80 .fl-module-content .fl-rich-text p {
        font-size: 58px;
    }

    .t-14 .fl-module-content a,
    .t-14 .fl-module-content .fl-rich-text p {
        font-size: 12px;
    }

    .recent-blogs .fl-post-grid-content p {
        font-size: 16px;
    }

    .t-25 .fl-module-content .fl-rich-text p {
        font-size: 21px;
    }

    .t-20 .fl-module-content .fl-rich-text p {
        font-size: 18px;
    }

    .t-18 .fl-module-content .fl-rich-text p {
        font-size: 16px;
    }

    .ul-25 .fl-module-content .fl-rich-text li {
        font-size: 21px;
    }

    .header-logo-d img {
        width: 100%;
        max-width: 350px;
    }

    .header-nav-d .menu a {
        font-size: 15px;
        padding-left: 20px;
        padding-right: 20px;
    }

    .fl-button .fl-button-text {
        font-size: 16px;
    }

    .recent-blogs .fl-post-grid-text .fl-post-grid-title a {
        font-size: 21px;
    }
}

@media (max-width: 1440px) and (min-width: 1200px) {
    .services-section {
        position: relative;
    }

    .services-section:before {
        background-image: url(images/text-transparent.png);
        background-repeat: no-repeat;
        background-position: center left;
        content: "";
        position: absolute;
        display: block;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 9;
        background-size: 60px;
    }
    .fl-row-fixed-width {
        max-width: 1160px;
    }
}

@media (max-width: 1440px) {
    .services-section .fl-row-content-wrap {
        background-position: 50% 100%;
    }
}
@media (max-width: 1220px) {
.fl-node-iu6lmdhkofgb, .fl-node-l3tbz9gjouke {
    width: 16% !important;
}
}

@media (max-width: 1199px) {
    .services-products .filter-btn .categ-nav,
    .services-products .product-title {
        font-size: 20px;
    }
    .services-products .button-wrap a,
    .services-products .product-content p,
    .services-products .filter-btn.active .categ-list-post span {
        font-size: 16px;
    }
    .services-products .button-wrap a {
        padding: 15px 30px;
    }

    .satisfactory-section .custom-img img {
        margin-top: -50px;
    }
}
@media (max-width: 1024px) {
.fl-node-9lsn8drwc26g {
    width: 36% !important;
}
.fl-node-pe07njabrzu9 {
    width: 24% !important;
}
.fl-node-iu6lmdhkofgb, .fl-node-l3tbz9gjouke {
    width: 20% !important;
}
}

@media (min-width: 992px) {
    body:not(.fl-builder-edit) header:before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        display: block;
        background-image: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, #ffffff 45%);
        height: 115%;
    }

    body .fl-theme-builder-header-shrink .fl-photo-img {
        margin-top: 10px;
    }
    .banner-slider .fl-slide-content-wrap {
        margin-top: -50px;
        padding-left: 5px;
        padding-right: 5px;
    }
    body:not(.fl-builder-edit) .services-section {
        margin-bottom: -20%;
        position: relative;
        z-index: 9;
        margin-top: -10%;
    }
}

@media (max-width: 991px) {
    .fl-builder-content[data-overlay="1"].fixed {
        position: fixed;
        width: 100%;
        z-index: 100;
        top: 0;
        left: 0;
        right: 0;
    }
    .services-products .custom-col-3,
    .services-products .custom-col-9 {
        max-width: 100%;
    }

    .services-products .products-wrap {
        display: block;
    }

    .services-products .filters {
        margin-bottom: 30px;
    }

    .text-justify p {
        text-align: initial;
    }
}

@media (max-width: 1199px) and (min-width: 992px) {
    body:not(.fl-builder-edit) .satisfactory-section .custom-img {
        top: -15%;
        left: -40%;
    }

    .fl-button,
    a,
    button,
    input[type="button"],
    input[type="submit"] {
        font-size: 16px;
    }
    .cta .col-1 {
        width: 75%;
    }
    .cta .col-2 {
        width: 25%;
    }

    .t-14 .fl-module-content a,
    .t-14 .fl-module-content .fl-rich-text p {
        font-size: 10px;
    }
}
@media (max-width: 812px) {
.fl-node-guxp43ztfj2h a {
    font-size: 12px !important;
}
.fl-node-guxp43ztfj2h a.fl-button, .fl-node-guxp43ztfj2h a.fl-button:visited {
    padding: 0px !important;
}
}
@media (max-width: 767px) {
    .overlay-white {
        position: relative;
    }

    .overlay-white:before {
        content: "";
        display: block;
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        background-color: rgb(255 255 255 / 80%);
        height: 100%;
        width: 100%;
        z-index: 10;
    }

    .fl-builder-content .slider-col .fl-module-content-slider .fl-slide .fl-slide-title {
        font-size: 28px !important;
        line-height: 1 !important;
    }

    .fl-builder-content .slider-col .fl-module-content-slider .fl-slide .fl-slide-text p {
        font-size: 40px !important;
        line-height: 1.5 !important;
    }

    .slider-col .fl-slide-text-center .fl-slide-content-wrap {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .slider-col .fl-slide-text-center .fl-slide-content-wrap .fl-slide-content {
        padding-top: 0;
    }

    #menu-footer-menu {
        display: block;
        text-align: center;
    }
    #menu-footer-menu a {
        padding-left: 5px;
        padding-right: 5px;
    }

    .services-products .mix-target {
        flex-basis: 100%;

        max-width: 100%;
    }
}
@media (max-width: 512px) {
	.fl-col-group.fl-node-guxp43ztfj2h.fl-col-group-nested {
		display: block !important;
	}
	.fl-node-guxp43ztfj2h .fl-col {
		width: 100% !important;
	}
	.fl-node-guxp43ztfj2h a.fl-button, .fl-node-guxp43ztfj2h a.fl-button:visited {
    padding: 7px !important;
}
}
@media (max-width: 320px) {
    .fl-builder-content .slider-col .fl-module-content-slider .fl-slide .fl-slide-title {
        font-size: 25px !important;
    }
    .fl-builder-content .slider-col .fl-module-content-slider .fl-slide .fl-slide-text p {
        font-size: 35px !important;
    }
}

@media (max-width: 280px) {
    .slider-col .fl-module-content-slider .fl-slide .fl-slide-content {
        padding-left: 0;
        padding-right: 0;
    }
}
