/*!
Theme Name: Bunkum Valley Roofing
Theme URI: http://underscores.me/
Author: Digital Boost
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: bunkum-valley-roofing
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

/*--------------------------------------------------------------
    # Typography
--------------------------------------------------------------*/

body,
button,
input,
select,
optgroup,
textarea,
p {
    color: var(--common-color);
    font-size: 16px;
    line-height: 30px;
}

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/

.main-navigation {
    clear: both;
    display: inline-block;
    float: none;
    width: 100%;
}

.main-navigation ul {
    list-style: none;
    margin: 0;
    padding-left: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
    left: 100%;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
    left: auto;
}

.main-navigation li {
    float: none;
    display: inline-block;
    position: relative;
}

.main-navigation li a {
    transition: var(--transition);
    position: relative;
}

@media screen and (min-width: 992px) {
    .sticky_head .site-branding .default-logo {
        opacity: 0;
        visibility: hidden;
    }

    .sticky_head .site-branding .sticky-logo {
        opacity: 1;
        visibility: visible;
    }

    .sticky_head .header-btn .sec-btn:hover {
        background-color: var(--common-color);
        color: var(--white-color);
    }

    .sticky_head .main-navigation ul > li > a {
        color: var(--common-color);
    }

    .sticky_head .main-navigation ul li.menu-item-has-children::after {
        color: var(--common-color);
    }

    .main-navigation ul.menu > li.menu-item-has-children:hover > a,
    .main-navigation ul.menu > li > a:hover,
    .main-navigation ul.menu > li.current-menu-item > a,
    .main-navigation ul.menu > li.current-menu-parent > a,
    .main-navigation ul.menu > li.current-menu-ancestor > a {
        color: var(--primary-color);
    }

    .main-navigation ul ul li.menu-item-has-children {
        padding-right: 0;
    }

    .main-navigation ul.menu > li.current-menu-item::after {
        color: var(--primary-color);
    }

    .main-navigation ul li.menu-item-has-children:hover::after {
        color: var(--primary-color);
        transform: translate(0, -50%) rotate(-180deg);
    }

    .main-navigation
        li.current-menu-ancestor.menu-item-has-children:not(
            .sub-menu li.current-menu-ancestor.menu-item-has-children
        )::after {
        color: var(--primary-color);
    }

    .main-navigation ul ul li.current-menu-ancestor::after {
        color: var(--white-color);
    }

    /***** If Dropdown Menu CSS Avaliable Than Remove This CSS Start *****/
    .main-navigation
        ul
        li.menu-item-has-children:hover
        > ul.sub-menu:not(.dropdown-menu-wp ul .sub-menu) {
        display: block;
        top: 100%;
        left: 0;
        opacity: 1;
        animation: swip_up var(--transition) linear 1;
    }

    /***** If Dropdown Menu CSS Avaliable Than Remove This CSS End *****/

    .main-navigation ul .sub-menu:not(.dropdown-menu-wp ul .sub-menu) {
        position: absolute;
        top: 100%;
        left: -999em;
        float: none;
        width: 260px;
        background: var(--white-color);
        box-shadow: 0 0 10px rgba(60, 140, 244, 0.15);
        text-align: left;
        padding-left: 0;
        display: none;
        opacity: 0;
        border-radius: 10px;
        overflow: hidden;
    }

    .main-navigation ul li.menu-item-has-children:hover .dropdown-menu-wp {
        display: block;
        opacity: 1;
    }

    .main-navigation .dropdown-menu-wp ul li.menu-item-has-children {
        padding-block: 4px;
    }

    .main-navigation
        ul
        ul
        li.menu-item-has-children:hover
        > ul.sub-menu:not(.dropdown-menu-wp ul .sub-menu) {
        top: 0;
        left: 100%;
    }

    .main-navigation
        ul
        ul
        li.menu-item-has-children:hover
        > ul.sub-menu:not(.dropdown-menu-wp ul .sub-menu) {
        top: 0;
        left: 100%;
        animation: unset;
    }

    .main-navigation ul ul li.menu-item-has-children:hover::after,
    .main-navigation ul ul li.menu-item-has-children::after {
        transform: translate(0, -50%) rotate(-90deg);
    }

    .main-navigation ul ul li:hover > a {
        background: var(--primary-color);
        color: var(--white-color);
    }

    .main-navigation ul ul li a {
        color: var(--common-color);
    }

    .main-navigation .employee-portal-link {
        display: none;
    }
}

/*========== Fonts CSS Start ==========*/

@font-face {
    font-family: "Proxima Nova";
    src: url("assets/fonts/ProximaNova-Bold.eot");
    src:
        url("assets/fonts/ProximaNova-Bold.eot?#iefix")
            format("embedded-opentype"),
        url("assets/fonts/ProximaNova-Bold.woff2") format("woff2"),
        url("assets/fonts/ProximaNova-Bold.woff") format("woff"),
        url("assets/fonts/ProximaNova-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Proxima Nova";
    src: url("assets/fonts/ProximaNova-ExtrabldIt.eot");
    src:
        url("assets/fonts/ProximaNova-ExtrabldIt.eot?#iefix")
            format("embedded-opentype"),
        url("assets/fonts/ProximaNova-ExtrabldIt.woff2") format("woff2"),
        url("assets/fonts/ProximaNova-ExtrabldIt.woff") format("woff"),
        url("assets/fonts/ProximaNova-ExtrabldIt.ttf") format("truetype");
    font-weight: 800;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "Proxima Nova";
    src: url("assets/fonts/ProximaNova-Extrabld.eot");
    src:
        url("assets/fonts/ProximaNova-Extrabld.eot?#iefix")
            format("embedded-opentype"),
        url("assets/fonts/ProximaNova-Extrabld.woff2") format("woff2"),
        url("assets/fonts/ProximaNova-Extrabld.woff") format("woff"),
        url("assets/fonts/ProximaNova-Extrabld.ttf") format("truetype");
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Proxima Nova";
    src: url("assets/fonts/ProximaNova-Regular.eot");
    src:
        url("assets/fonts/ProximaNova-Regular.eot?#iefix")
            format("embedded-opentype"),
        url("assets/fonts/ProximaNova-Regular.woff2") format("woff2"),
        url("assets/fonts/ProximaNova-Regular.woff") format("woff"),
        url("assets/fonts/ProximaNova-Regular.ttf") format("truetype");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Proxima Nova";
    src: url("assets/fonts/ProximaNova-RegularIt.eot");
    src:
        url("assets/fonts/ProximaNova-RegularIt.eot?#iefix")
            format("embedded-opentype"),
        url("assets/fonts/ProximaNova-RegularIt.woff2") format("woff2"),
        url("assets/fonts/ProximaNova-RegularIt.woff") format("woff"),
        url("assets/fonts/ProximaNova-RegularIt.ttf") format("truetype");
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "Proxima Nova";
    src: url("assets/fonts/ProximaNova-Semibold.eot");
    src:
        url("assets/fonts/ProximaNova-Semibold.eot?#iefix")
            format("embedded-opentype"),
        url("assets/fonts/ProximaNova-Semibold.woff2") format("woff2"),
        url("assets/fonts/ProximaNova-Semibold.woff") format("woff"),
        url("assets/fonts/ProximaNova-Semibold.ttf") format("truetype");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

/*========== Fonts CSS End ==========*/

/*========== Form CSS Start ==========*/
.form-element i {
    position: absolute;
    top: 16px;
    right: 15px;
    font-size: 16px;
    color: var(--primary-color);
    pointer-events: none;
}

.wpcf7-form-control-wrap {
    margin-bottom: 30px;
}

.form-input::-webkit-input-placeholder,
.input-text::-webkit-input-placeholder {
    color: var(--input-color);
    opacity: 1;
}

.form-input::-moz-placeholder,
.input-text::-moz-placeholder {
    color: var(--input-color);
    opacity: 1;
}

.form-input:-ms-input-placeholder,
.input-text:-ms-input-placeholder {
    color: var(--input-color);
    opacity: 1;
}

.form-input::-ms-input-placeholder,
.input-text::-ms-input-placeholder {
    color: var(--input-color);
    opacity: 1;
}

.form-input::placeholder,
.input-text::placeholder {
    color: var(--input-color);
    opacity: 1;
}

select option {
    color: #000;
}

select {
    color: var(--input-color) !important;
}

.form-input,
.input-text,
.select2-container--default
    .select2-selection--single
    .select2-selection__rendered,
select {
    width: 100%;
    height: 46px;
    border: 1px solid rgb(34 30 32 / 50%);
    outline: none !important;
    padding: 0 30px;
    font-size: 16px;
    line-height: 20px;
    color: var(--dark-color);
    background: var(--white-color);
    border-radius: 0;
    -webkit-appearance: none;
    appearance: none;
}

select,
select.form-input {
    padding-right: 30px;
}

.form-input.wpcf7-textarea {
    height: 140px;
    resize: none;
    padding: 12px 30px;
    display: block;
}

.submit-btn {
    text-align: left;
}

.wpcf7 .wpcf7-spinner {
    position: absolute;
    top: 50%;
    right: 103%;
    transform: translate(0, -50%);
    margin: 0;
    background-color: #6a6b6c;
}

span.wpcf7-list-item-label::before,
.woocommerce-form__label-for-checkbox span::before,
.comment-form-cookies-consent label::before {
    --radio-label-size: 20px;
    content: "";
    position: absolute;
    top: 2px;
    left: 0;
    width: var(--radio-label-size);
    height: var(--radio-label-size);
    border-radius: 3px;
    border: 2px solid var(--primary-color);
    z-index: 1;
}

.comment-form-cookies-consent label::before {
    border-radius: 0;
    border-width: 1px;
    border-color: var(--dark-color);
}

span.wpcf7-list-item-label::after,
.woocommerce-form__label-for-checkbox span::after,
.comment-form-cookies-consent label::after {
    --radio-label-inner-size: 12px;
    content: "";
    position: absolute;
    top: 2px;
    left: 4px;
    width: var(--radio-label-inner-size);
    height: var(--radio-label-inner-size);
    border-radius: calc(var(--radio-label-inner-size) * 0.5);
    background: var(--primary-color);
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--white-color);
    opacity: 0;
    transition: var(--transition);
    z-index: 0;
}

.wpcf7-radio span.wpcf7-list-item-label::after {
    top: 6px;
}

.comment-form-cookies-consent label::after {
    left: 0;
}

input[type="radio"]:checked ~ span::after {
    opacity: 1;
}

.woocommerce-form__label-for-checkbox span::before,
.checkbox-wp .wpcf7-list-item-label::before,
.comment-form-cookies-consent label::before {
    border-radius: 0;
}

.wpcf7-checkbox span.wpcf7-list-item-label::after,
.checkbox-wp .wpcf7-list-item-label::after,
.woocommerce-form__label-for-checkbox span::after,
.comment-form-cookies-consent label::after {
    --checkbox-label-size: 20px;
    content: "\f00c";
    width: var(--checkbox-label-size);
    height: var(--checkbox-label-size);
    background: transparent;
    color: var(--white-color);
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 10px;
    background: var(--dark-color);
    border-radius: 3px;
}

.wpcf7-checkbox span.wpcf7-list-item-label::after {
    left: 0;
    background: var(--primary-color);
}

input[type="checkbox"]:checked ~ span::before,
input[type="checkbox"]:checked ~ span::after,
input[type="checkbox"]:checked ~ span.wpcf7-list-item-label::after,
input[type="checkbox"]:checked ~ span.wpcf7-list-item-label::before,
input[type="checkbox"]:checked ~ label:after {
    opacity: 1;
}

.checkbox-wp .wpcf7-not-valid .wpcf7-list-item-label::before {
    border-color: var(--red-color);
    opacity: 0.7;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    opacity: 1;
}

.wpcf7-not-valid,
.wpcf7-not-valid .wpcf7-list-item-label::before {
    border-color: var(--red-color) !important;
}

.wpcf7-list-item {
    margin: 0 20px 0 0;
}

.wpcf7-checkbox .wpcf7-list-item:last-child,
.wpcf7-radio .wpcf7-list-item:last-child {
    margin: 0;
}

.form-input-file {
    position: relative;
    height: 48px;
    background: 0 0;
    border-radius: 0;
    border: 1px solid var(--black-color);
    margin-bottom: var(--gutter);
}

.form-box.form-input-file {
    height: auto;
    border: 0;
}

.form-input-file p {
    color: var(--black-color);
    line-height: 1;
    margin-bottom: 0;
}

.form-box.form-input-file p {
    line-height: inherit;
}

.form-input-file .wpcf7-form-control-wrap {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    margin: 0;
    padding: 0;
}

.form-box.form-input-file .wpcf7-form-control-wrap {
    position: relative;
}

.form-input-file [type="file"] {
    position: relative;
    height: 100%;
    width: 100%;
    overflow: hidden;
    opacity: 0;
    cursor: pointer;
    z-index: 1;
}

.form-box.form-input-file input[type="file"] {
    width: 76px;
    height: 73px;
    line-height: 1;
}

.form-input-file .icon-label {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0 15px;
}

.form-box.form-input-file .input-file-icon {
    position: absolute;
    top: 30px;
    left: 0;
    width: 76px;
    height: 73px;
    background: var(--input-color);
    border-radius: 13px;
    display: inline-block;
    cursor: pointer;
    z-index: 0;
}

.form-box.form-input-file .input-file-icon::before,
.form-box.form-input-file .input-file-icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: var(--gutter);
    height: 1px;
    background-color: var(--black-color);
}

.form-box.form-input-file .input-file-icon::after {
    width: 1px;
    height: var(--gutter);
}

.form-input-file .icon-label label {
    font-weight: inherit;
    font-size: 14px;
    line-height: 22px;
}

.form-input-file .icon-label label span {
    color: var(--black-color);
    font-weight: 600;
    margin-left: 3px;
}

.form-input-file .input-file-text {
    color: var(--black-color);
    text-overflow: ellipsis;
    display: block;
    overflow: hidden;
    white-space: nowrap;
    margin-top: 3px;
    font-size: 14px;
    line-height: 24px;
}

.wpcf7 form.spam .wpcf7-response-output {
    color: var(--red-color);
}

.main-banner .contact-form .wpcf7-list-item-label span {
    color: var(--white-color);
}
.contact-about-sec .contact-form .wpcf7-list-item-label span {
    color: var(--white-color);
}

/*========== Form CSS End ==========*/

/*==========Common CSS ==========*/
:root {
    --primary-color: #d0254a;
    --dark-red-color: #ad1f3e;
    --dark-color: #000000;
    --common-color: #221e20;
    --white-color: #ffffff;
    --black-color: #000000;
    --sec-bg-color: #e8e8e8;
    --red-color: #ff0000;
    --input-color: #221e20;
    --box-shadow: 0 0 20px rgb(0 0 0 / 20%);
    --space-80: 80px;
    --body-font: "Proxima Nova";
    --title-font: "Proxima Nova";
    --transition: 0.3s;
    --gutter: 30px;
}

body {
    font-size: 16px;
    line-height: 30px;
    color: var(--common-color);
    font-family: var(--body-font);
}

p {
    font-size: 16px;
    line-height: 30px;
    margin-bottom: 16px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 700;
    color: var(--common-color);
    font-family: var(--title-font);
}

p a {
    color: var(--primary-color);
    text-decoration: underline !important;
    transition: var(--transition);
}

p a:hover,
a:hover {
    color: var(--dark-color);
}

.h1-title {
    font-size: 60px;
    line-height: 1.26666666667;
    font-weight: 800;
    margin-bottom: 18px;
}

.h1-title span {
    display: inline-block;
    font-style: italic;
}

.h2-title {
    font-size: 40px;
    line-height: 1.25;
    font-weight: 800;
    color: var(--dark-red-color);
    margin-bottom: 14px;
}

.h2-title span {
    display: block;
}

.h3-title {
    font-size: 24px;
    line-height: 32px;
    margin-bottom: 0;
}

.h4-title {
    font-size: 20px;
    line-height: 32px;
    margin-bottom: 0;
}

.play-btn {
    width: 60px;
    height: 60px;
    color: var(--primary-color);
    background: var(--white-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-left: 3px;
    box-shadow: var(--box-shadow);
    transition: 0.8s cubic-bezier(0.22, 0.78, 0.45, 1.02);
}

.play-btn:hover {
    background: var(--primary-color);
    color: var(--white-color);
}

.main-navigation ul li.menu-item-has-children::after {
    content: "\f078";
    position: absolute;
    top: 55%;
    right: 0;
    transform: translate(0, -50%);
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 14px;
    line-height: 1;
    color: var(--white-color);
    transition: var(--transition);
}

@keyframes swip_up {
    from {
        top: calc(100% + 20px);
        opacity: 0;
    }

    to {
        top: 100%;
        opacity: 1;
    }
}

.main-navigation ul ul li {
    display: block;
    margin: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.main-navigation ul ul li:last-child {
    border-bottom: 0;
}

.main-navigation ul ul li a {
    display: block;
    padding: 5px 10px;
    font-size: 16px;
    line-height: 26px;
    transition: var(--transition);
}

.sec-btn,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
    width: 200px;
    height: 54px;
    background: var(--primary-color);
    border: none;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 3px;
    font-size: 16px;
    line-height: 26px;
    color: var(--white-color);
    font-weight: 700;
    text-align: center;
    padding: 5px;
    cursor: pointer;
    outline: none !important;
    transition: var(--transition);
    overflow: hidden;
    position: relative;
    border-radius: 30px;
    z-index: 2;
    -webkit-appearance: none;
    appearance: none;
}

.sec-btn:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
    background: var(--white-color);
    color: var(--primary-color);
}

.sec-btn.sm-btn {
    width: 165px;
    height: 46px;
}

.sec-btn.lg-btn {
    width: 256px;
}

.sec-btn.white-btn {
    color: var(--primary-color);
}

.sec-btn.bg-btn {
    background-color: var(--primary-color);
    color: var(--white-color);
}

.sec-btn.bg-btn:hover {
    background-color: var(--common-color);
    color: var(--white-color);
    text-decoration: none !important;
}

.learn-more-btn {
    font-size: 16px;
    line-height: 20px;
    font-weight: 700;
    color: var(--primary-color);
    transition: var(--transition);
    text-decoration: underline !important;
}

.learn-more-btn i {
    margin-left: 14px;
    vertical-align: middle;
}

[data-simplebar="init"] .simplebar-scroll-content {
    margin-right: -17px !important;
}

.menu-mob {
    display: none !important;
}

/*==========Common CSS End==========*/

/*========== Modal Popup CSS Start ==========*/
.modal-content {
    background: var(--white-color);
    -webkit-mask-image: -webkit-radial-gradient(
        var(--white-color),
        var(--black-color)
    );
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 20px 30px rgba(60, 140, 244, 0.16);
}

.popup-title {
    position: relative;
    padding: 10px 65px 10px 30px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.popup-title .h2-title {
    font-size: 30px;
    line-height: 40px;
    margin-bottom: 0;
}

button.close {
    position: absolute;
    top: 0;
    right: 0;
    width: 60px;
    height: 100%;
    border: none;
    background: var(--primary-color);
    opacity: 1 !important;
    text-shadow: none;
    color: var(--white-color);
    border-radius: 0;
    outline: none !important;
    z-index: 2;
    transition: var(--transition);
}

button.close:hover {
    background: var(--common-color);
    color: var(--white-color);
}

.modal-dialog {
    max-width: 700px;
}

.common-popup-overflow {
    padding: 10px 0px;
}

.common-popup-text::-webkit-scrollbar-thumb {
    background: var(--primary-color);
}

/*========== Modal Popup CSS End ==========*/

/*==========Slider CSS Start ==========*/

.slick-dots {
    bottom: -30px;
}

.slick-dots li {
    margin: 0 15px 0 0;
}

.slick-dots li button {
    width: 10px;
    height: 10px;
    border-radius: 10px;
    background: var(--common-color);
    transition: var(--transition);
}

.slick-dots li.slick-active button,
.slick-dots li button:hover {
    background: var(--primary-color);
}

.slick-arrow {
    --slick-arrow-size: 36px;
    bottom: 0;
    left: 0;
    width: var(--slick-arrow-size);
    height: var(--slick-arrow-size);
    border-radius: 50px;
    background: var(--primary-color);
    color: var(--white-color);
}

.slick-arrow:hover {
    background: var(--dark-color);
}

.slide-arrow.next-arrow.slick-arrow {
    left: auto;
    right: 0;
}

/*==========Slider CSS End==========*/

/*==========Header CSS Start==========*/

.site-header {
    position: fixed;
    width: 100%;
    height: 134px;
    top: 0;
    left: 0;
    background-color: transparent;
    transition: var(--transition);
    z-index: 99;
}

.site-header.sticky_head {
    background-color: var(--white-color);
    box-shadow: 0 3px 10px rgb(0 0 0 / 16%);
}

.site-header .container,
.site-header .container .row,
.bottom-header .container .row > * {
    height: 100%;
}

.site-branding {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    margin-left: -4px;
}

.site-branding a {
    display: inline-block;
    transition: var(--transition);
}

.site-branding .default-logo {
    position: absolute;
    top: 26px;
    left: 0;
    width: 168px;
    opacity: 1;
    visibility: visible;
}

.site-branding .sticky-logo {
    width: 128px;
    visibility: hidden;
    opacity: 0;
}

.header-menu {
    height: 100%;
    display: flex;
    align-items: center;
    margin-left: -4px;
    margin-right: -140px;
}

.header-mobile-menu {
    display: flex;
    align-items: center;
    gap: 49px;
}

.main-navigation ul:not(.main-navigation ul ul):not(.main-navigation ul ul ul) {
    display: flex;
    align-items: center;
    gap: 41px;
}

.main-navigation ul li.menu-item-has-children {
    padding-right: 26px;
    position: relative;
}

.main-navigation ul > li > a {
    font-size: 16px;
    line-height: 20px;
    font-weight: 600;
    color: var(--white-color);
    transition: var(--transition);
}

/*==========Header CSS End==========*/

/*========== Main Banner CSS Start ==========*/

.main-banner {
    position: relative;
    padding: 190px 0 245px;
    min-height: 100vh;
}

.main-banner::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 400px;
    background: linear-gradient(
        180deg,
        rgba(0, 0, 0, 1) 0%,
        rgba(17, 17, 17, 0.79) 33%,
        rgba(84, 84, 84, 0) 100%
    );
    z-index: 2;
}

.main-banner::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--black-color);
    opacity: 0.5;
    z-index: 1;
}

.main-banner .banner-content {
    margin-top: 140px;
}

.main-banner .banner-content .h1-title,
.main-banner .banner-content .h3-title {
    text-shadow: 0 0 20px rgb(0 0 0 / 30%);
}

.banner-content .h3-title {
    line-height: 29px;
    margin-bottom: 60px;
}

.banner-btn {
    display: flex;
    gap: 30px;
}

.contact-form-title {
    margin-bottom: 32px;
}

.contact-form-title .h3-title {
    line-height: 29px;
    letter-spacing: 0.02em;
}

.contact-form-wp {
    padding: 70px 60px;
    border-radius: 10px;
    margin-left: 70px;
    background-color: var(--white-color);
}

.contact-form-wp .contact-form-title .h3-title {
    color: var(--dark-red-color);
}

.contact-form-wp.black-form-box .contact-form-title .h3-title {
    color: var(--white-color);
}

.contact-form-wp.black-form-box {
    background-color: rgb(0 0 0 / 90%);
    mix-blend-mode: multiply;
}

.common-popup .submit-btn,
.contact-form-wp .submit-btn {
    text-align: right;
    display: block;
}

.submit-btn p {
    display: inline-block;
    position: relative;
}

.contact-form-wp .sec-btn:hover {
    background-color: var(--common-color);
    color: var(--white-color);
}

.contact-form-wp.black-form-box .sec-btn:hover {
    background-color: var(--white-color);
    color: var(--primary-color);
}

.black-form-box
    :is(
        .form-input,
        .input-text,
        .select2-container--default
            .select2-selection--single
            .select2-selection__rendered,
        select
    ) {
    background-color: transparent;
    border-color: rgb(255 255 255 / 50%);
    color: var(--white-color);
}

.black-form-box .form-input::-webkit-input-placeholder,
.black-form-box .input-text::-webkit-input-placeholder {
    color: var(--white-color);
    opacity: 1;
}

.black-form-box .form-input::-moz-placeholder,
.black-form-box .input-text::-moz-placeholder {
    color: var(--white-color);
    opacity: 1;
}

.black-form-box .form-input:-ms-input-placeholder,
.input-text:-ms-input-placeholder {
    color: var(--white-color);
    opacity: 1;
}

.black-form-box .form-input::-ms-input-placeholder,
.black-form-box .input-text::-ms-input-placeholder {
    color: var(--white-color);
    opacity: 1;
}

.black-form-box .form-input::placeholder,
.black-form-box .input-text::placeholder {
    color: var(--white-color);
    opacity: 1;
}

.black-form-box select {
    color: var(--white-color) !important;
}

/*========== Main Banner CSS End ==========*/

/*========== Feature List Section CSS Start ==========*/

.feature-list-sec {
    padding: 60px 0;
    background: linear-gradient(
        90deg,
        rgba(117, 7, 33, 1) 0%,
        rgba(173, 31, 62, 1) 100%
    );
    box-shadow: 0 6px 10px rgb(0 0 0 / 16%);
}

.feature-list-box-wp {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    flex-wrap: wrap;
}

.feature-list-box {
    text-align: center;
}

.feature-list-icon {
    margin-bottom: 21px;
}

.feature-list-icon img {
    max-width: 89px;
    max-height: 70px;
}

.feature-list-box .h4-title {
    line-height: 24px;
}

/*========== Feature List Section CSS End ==========*/

/*========== About Section CSS Start ==========*/

.about-sec {
    position: relative;
    padding: 140px 0;
}

.about-sec::before {
    --width: 1379px;
    content: "";
    position: absolute;
    bottom: 0;
    right: -388px;
    width: var(--width);
    height: calc(var(--width) * 0.51125);
    background-image: url(./assets/images/about-bg-shape.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 0.2;
    pointer-events: none;
    z-index: 0;
}

.about-image-box-wp {
    position: relative;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 0.87576;
}

.about-image-box-wp .about-image {
    width: 86.364%;
    height: 69.205%;
    top: 0;
    right: 0;
}

.about-image-box-wp .company-image {
    width: 69.697%;
    height: 51.385%;
    left: 0;
    bottom: 0;
}

.about-image-box-wp .back-img {
    border-radius: 10px;
    border: 6px solid var(--white-color);
    box-shadow: var(--box-shadow);
    position: absolute;
}

.about-company-logo {
    position: absolute;
    z-index: 3;
    bottom: 17%;
    right: 18%;
    width: 24.243%;
    height: 27.682%;
    filter: drop-shadow(0 0 20px rgb(0 0 0 / 20%));
}

.about-company-logo img {
    width: 100%;
    height: 100%;
}

.about-content {
    margin-top: 60px;
    max-width: 590px;
    margin-left: auto;
}

.about-content .about-description-text:not(:last-child) {
    margin-bottom: 16px;
}

.about-content .h3-title {
    margin-bottom: 13px;
}

.about-content .sec-title {
    margin-bottom: 25px;
}

/*========== About Section CSS End ==========*/

/*========== Services Section CSS Start ==========*/

.services-sec {
    position: relative;
    padding: 120px 0;
    background: linear-gradient(
        90deg,
        rgba(117, 7, 33, 1) 30%,
        rgba(173, 31, 62, 1) 100%
    );
    box-shadow: 0 6px 10px rgb(0 0 0 / 16%);
}

.services-bg-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 598px;
}

.services-bg-image::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--common-color);
    opacity: 0.8;
    mix-blend-mode: multiply;
}

.services-section-title-wp {
    max-width: 870px;
    margin: 0 auto 55px;
    text-align: center;
}

.services-sec.seo-page-services-sec .services-section-title-wp {
    margin: 0 auto;
}

.services-section-title-wp .sec-title .h2-title {
    margin-bottom: 25px;
}

.services-list-slider .slick-list {
    padding-block: 20px;
    margin: -20px 0;
}

.services-list-slider .slick-track {
    display: flex;
}

.services-list-slider.slick-slider [class*="col-"] {
    height: auto;
}

.services-section-title-wp .sec-title p {
    font-size: 20px;
    line-height: 34px;
}

.services-list-box {
    height: 100%;
    display: flex;
    flex-direction: column;
    padding: 40px 20px 39px;
    border-radius: 10px;
    box-shadow: var(--box-shadow);
    text-align: center;
    background-color: var(--white-color);
    border-bottom: 10px solid var(--dark-red-color);
}

.services-list-icon {
    display: flex;
    justify-content: center;
    flex: 0 0 auto;
    margin-bottom: 30px;
}

.services-list-icon img {
    max-width: 163px;
    max-height: 70px;
}

.services-list-box-info {
    display: flex;
    align-items: center;
    flex-direction: column;
    flex: 1;
}

.services-list-box-info .learn-more-btn {
    margin-top: auto;
    display: inline-block;
}

.services-list-box-info .h3-title {
    margin-bottom: 14px;
}

.services-list-box-description {
    margin-bottom: 24px;
}

.services-list-box-description p {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

/*========== Services Section CSS End ==========*/

/*========== Our Services Section CSS Start ==========*/

.main-services-sec {
    padding: 140px 0;
}

.services-sec-wp .services-sec-row:not(:last-child) {
    margin-bottom: 140px;
}

.services-image {
    width: 100%;
    height: 400px;
    box-shadow: var(--box-shadow);
    border-radius: 10px;
}

.services-content {
    max-width: 500px;
    margin-left: auto;
}

.services-content .sec-title {
    margin-bottom: 25px;
}

.services-content-description p {
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.services-content-btn {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-top: 25px;
}

.services-content-btn .sec-btn:hover {
    background-color: var(--common-color);
    color: var(--white-color);
}

.even .services-content {
    margin-left: 0;
}

/*========== Our Services Section CSS End ==========*/

/*========== We Proudly Carry Section CSS Start ==========*/

.we-produly-sec {
    padding: 100px 0;
    background-color: var(--sec-bg-color);
    background-blend-mode: multiply;
}

.we-produly-sec .sec-title {
    text-align: center;
    margin-bottom: 40px;
}

.we-produly-sec .sec-title .h2-title {
    color: var(--common-color);
}

.we-produly-logo-row-wp {
    display: flex;
    align-items: center;
    gap: 36px 80px;
    justify-content: center;
    flex-wrap: wrap;
}

.we-produly-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100px;
    padding: 10px 30px;
}

.we-produly-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

/*========== We Proudly Carry Section CSS End ==========*/

/*========== Projects Section CSS Start ==========*/

/*========== Projects Section CSS End ==========*/

/*========== JOin Our Team Section CSS Start ==========*/

.join-our-team-sec {
    padding: 140px 0 145px;
    position: relative;
}

.join-our-team-sec::after {
    --width: 1005px;
    content: "";
    position: absolute;
    bottom: 0;
    right: -38px;
    width: var(--width);
    height: calc(var(--width) * 0.5118);
    background-image: url(./assets/images/about-bg-shape.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 0.2;
    pointer-events: none;
    z-index: 0;
}

.join-our-team-sec::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--black-color);
    opacity: 0.85;
    mix-blend-mode: multiply;
}

.join-our-team-content {
    max-width: 500px;
}

.join-our-team-content .sec-title {
    margin-bottom: 25px;
}

.join-our-team-description p {
    line-height: 34px;
}

.join-our-team-content-btn {
    margin-top: 25px;
}

.join-our-team-content-btn .sec-btn {
    width: 170px;
}

.join-our-team-image {
    width: 100%;
    height: 400px;
    border-radius: 10px;
    border: 6px solid var(--white-color);
}

/*========== JOin Our Team Section CSS End ==========*/

/*========== Instagram Feed Section CSS Start ==========*/

.instagram-feed-sec {
    padding: 100px 0;
}

.instagram-slider-wp .sbi .slick-list {
    margin-left: -12px;
    margin-right: -12px;
}

#sb_instagram #sbi_images .sbi_item {
    margin: 0 12.5px !important;
}

.instagram-slider-wp .slick-track::after,
.instagram-slider-wp .slick-track::before {
    display: none;
}

.instagram-slider-wp #sb_instagram {
    padding: 0 !important;
}

.instagram-slider-wp #sbi_images {
    padding: 0 !important;
}

.instagram-slider-wp #sb_instagram #sbi_images .slick-list .sbi_item {
    padding-inline: 0 !important;
}

.instagram-slider-wp #sb_instagram .sbi_photo {
    width: 100% !important;
    height: 250px !important;
    border-radius: 6px;
}

#sb_instagram.sbi_col_4 #sbi_images {
    grid-template-columns: unset !important;
}

/*========== Instagram Feed Section CSS End ==========*/

/*==========Footer CSS Start==========*/

.site-footer {
    background-color: var(--white-color);
}

.top-footer {
    position: relative;
    padding: 140px 0 80px;
}

.top-footer::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--common-color);
    opacity: 0.9;
    mix-blend-mode: multiply;
}

.top-footer-about {
    margin-right: 67px;
}

.testimonial-slider-box-wp {
    margin-bottom: 125px;
}

.testimonials-slider-btn-wp {
    text-align: right;
    margin: -95px 0 90px auto;
    max-width: fit-content;
}

.testimonials-slider-btn-wp .learn-more-btn:hover {
    color: var(--white-color);
}

.testimonials-slider-title {
    margin-bottom: 25px;
}

.testimonial-description-text {
    height: 140px;
    padding-right: 30px;
    margin-bottom: 33px;
}

.testimonial-slider-box-wp .simplebar-track {
    width: 2px;
    border-radius: 2px;
    background-color: rgb(255 255 255 / 50%);
}

.testimonial-slider-box-wp .simplebar-scrollbar {
    background-color: var(--white-color);
}

.testimonial-box-bottom-title h3 {
    margin-bottom: 1px;
}

.testimonial-box-bottom-title h3,
.testimonial-box-bottom-title p {
    font-size: 14px;
    line-height: 22px;
}

.testimonial-box-bottom-title p {
    font-style: italic;
}

.testimonial-slider .slick-arrow {
    left: 15px;
    bottom: -63px;
}

.testimonial-slider .slide-arrow.next-arrow.slick-arrow {
    left: 81px;
    right: auto;
}

.testimonial-slider .slick-arrow:hover {
    background-color: var(--white-color);
}

.testimonial-slider .slick-arrow:hover img {
    filter: brightness(0%);
}

.testimonial-slider .slick-arrow.prev-arrow img,
.slick-arrow.next-arrow img {
    height: 10px;
    width: 10px;
}

.top-footer-logo {
    display: flex;
    align-items: center;
    gap: 30px;
    margin-bottom: 18px;
}

.top-footer-logo img,
.top-footer-logo a img {
    max-width: 120px;
    max-height: 150px;
}

.top-footer-logo-about-text {
    max-width: 360px;
}

.top-footer-logo-about-text p {
    font-weight: 600;
    color: var(--white-color);
    line-height: 26px;
}

.bottom-footer {
    padding-bottom: 27px;
    border-bottom: 1px solid rgb(34 30 32 / 14%);
}

.footer-logo {
    margin-top: -84px;
    margin-bottom: 36px;
    margin-left: -4px;
}

.social-media ul {
    display: flex;
    align-items: center;
    gap: 15px;
    line-height: 1;
    margin-bottom: 15px;
}

.social-media ul li a {
    display: inline-block;
    font-size: 27px;
    color: var(--dark-red-color);
    transition: var(--transition);
}

.social-media ul li a:hover {
    color: var(--common-color);
}

.contact-info h2,
.contact-info h3 {
    font-size: 1rem;
    line-height: 26px;
    font-weight: 600;
    margin-bottom: 4px;
}

.contact-info a {
    font-size: 24px;
    line-height: 29px;
    font-weight: 700;
    letter-spacing: 0.02em;
    color: var(--dark-red-color);
    transition: var(--transition);
}

.contact-info a:hover {
    color: var(--common-color);
}

.footer-menu {
    height: 100%;
    display: flex;
    align-items: end;
    justify-content: end;
    padding-bottom: 32px;
}

.footer-menu ul {
    display: flex;
    /* gap: 15px 40px; */
    gap: 15px 22px;
    flex-wrap: wrap;
}

.footer-menu ul li a {
    font-size: 14px;
    line-height: 17px;
    font-weight: 600;
    color: var(--common-color);
    transition: var(--transition);
}

.footer-menu ul li.current_page_item a,
.footer-menu ul li a:hover {
    color: var(--primary-color);
}

.footer-bottom-box {
    position: relative;
    padding: 30px 0 80px;
}

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

.copy-right,
.footer-other-link {
    display: inline-block;
}

.copy-right p,
.footer-other-link p {
    font-size: 13px;
    line-height: 16px;
    letter-spacing: 0.01em;
    margin-bottom: 0;
}

.footer-bottom-link {
    display: inline-block;
    text-align: center;
}

.footer-bottom-link ul {
    font-size: 0;
    line-height: 1;
    list-style: none;
    margin: 0;
}

.footer-bottom-link ul li {
    font-size: 13px;
    line-height: 12px;
    display: inline-block;
    padding-right: 8px;
    margin-right: 8px;
    border-right: 1px solid var(--common-color);
}

.footer-bottom-link ul li:last-child {
    margin-right: 0;
    padding-right: 0;
    border-right: 0;
}

.footer-bottom-link ul li a {
    font-size: 13px;
    line-height: 12px;
    letter-spacing: 0.01em;
    color: var(--common-color);
    transition: var(--transition);
}

.footer-bottom-link ul li a:hover {
    color: var(--primary-color);
}

.footer-other-link p a {
    color: var(--primary-color);
    font-weight: bold;
    transition: var(--transition);
}

.footer-other-link p strong {
    color: var(--dark-red-color);
}

.footer-other-link p a:hover {
    color: var(--dark-color);
}

.footer-other-link p i {
    color: var(--primary-color);
}

@media screen and (max-width: 575px) {
    .testimonials-slider-btn-wp {
        margin: -75px 0 90px auto;
    }
}

/*==========Footer CSS End==========*/

/*==========Scroll To Top CSS Start==========*/
.scrolltop {
    position: fixed;
    bottom: 95px;
    right: 10px;
    width: 50px;
    height: 50px;
    background: var(--primary-color);
    border: none;
    color: var(--white-color) !important;
    font-size: 25px;
    line-height: 30px;
    text-align: center;
    padding: 5px;
    border-radius: 8px;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.16);
    cursor: pointer;
    display: none;
    z-index: 50;
    transition: var(--transition);
}

.scrolltop:hover {
    background: var(--common-color);
    color: var(--white-color) !important;
}

/*==========Scroll To Top CSS End==========*/

/*========== Commercial Roofing Page CSS Start ==========*/

.feature-list-sec.commercial-roofing-list-sec {
    padding: 60px 0 55px;
}

.feature-list-box {
    color: var(--white-color);
    transition: var(--transition);
}

.feature-list-sec.commercial-roofing-list-sec .feature-list-box:hover {
    opacity: 0.7;
}

.commercial-roofing-list-sec .services-list-icon img {
    filter: brightness(0) invert(1);
}

.page-template-template-commercial-roofing .services-page-about-sec {
    background-color: transparent;
    background-blend-mode: normal;
}

.services-page-about-sec {
    padding: 135px 0;
    background-color: rgb(232 232 232 / 50%);
    background-blend-mode: multiply;
}

.services-page-about-content {
    text-align: center;
}

.services-page-about-content p {
    font-size: 20px;
    line-height: 34px;
    font-weight: 600;
}

.main-services-details-sec {
    margin-bottom: 140px;
}

.services-details-about-row-wp {
    margin-bottom: 100px;
}

.services-details-sec {
    padding: 140px 0;
    background-color: rgb(232 232 232 / 50%);
    background-blend-mode: multiply;
}

.services-details-image-box {
    width: 560px;
    height: 400px;
    border-radius: 10px;
    box-shadow: var(--box-shadow);
}

/* ===== beer-slider css Start ===== */

.beer-reveal[data-beer-label]:after,
.beer-slider[data-beer-label]:after {
    content: none;
}

.services-details-image-box .slick-list,
.services-details-image-box .slick-list .slick-track,
.services-details-image-box .slick-list .slick-track .slick-slide,
.services-details-image-box .slick-list .slick-track .slick-slide > *,
.beer-slider {
    height: 100%;
    border-radius: 10px;
}

.beer-slider > * {
    height: 100%;
}

.beer-slider > img {
    height: 100%;
}

.beer-reveal > img:first-child {
    height: 100%;
}

.beer-reveal:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 4px;
    height: 100%;
    background: var(--white-color);
    z-index: 2;
}

.beer-handle {
    position: absolute;
    z-index: 2;
    pointer-events: none;
    opacity: 0;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    color: var(--primary-color);
    background: var(--white-color);
    width: 80px;
    height: 30px;
    border-radius: 15px;
    box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
    transition:
        background 0.3s,
        box-shadow 0.3s,
        opacity 0.5s 0.25s;
    margin-left: -2px;
}

.beer-handle:before {
    left: 15px;
    height: 13px;
    width: 13px;
}

.beer-handle:after {
    right: 0;
    height: 13px;
    width: 13px;
}

/* ===== beer-slider css End ===== */

.services-details-content {
    margin-top: 60px;
    margin-left: -30px;
}

.services-details-content .sec-title {
    margin-bottom: 25px;
}

.services-details-content-description p a {
    color: var(--common-color);
    text-decoration: none !important;
}

.services-details-content-description p a:hover {
    color: var(--primary-color);
}

.services-advantage-row-wp {
    margin-top: 100px;
    padding: 60px 90px;
    border-radius: 10px;
    background-blend-mode: multiply;
    background-color: var(--common-color);
}

.services-advantage-title .h3-title {
    margin-bottom: 14px;
}

.services-advantage-content-btn {
    margin-top: 28px;
}

.services-advantage-list-box {
    margin-left: 70px;
}

.services-advantage-list-box .h4-title {
    margin-bottom: 15px;
}

.column-2 ul {
    column-count: 2;
    column-gap: 40px;
}

.column-2 ul li {
    break-inside: avoid;
}

.services-advantage-list-box ul li {
    line-height: 20px;
    padding-left: 25px;
    margin-bottom: 20px;
    position: relative;
}

.services-advantage-list-box ul li:last-child {
    margin-bottom: 0;
}

.services-advantage-list-box ul li::before {
    --size: 10px;
    content: "";
    width: var(--size);
    height: var(--size);
    border-radius: var(--size);
    position: absolute;
    top: 5px;
    left: 0;
    background-color: var(--dark-red-color);
}

.services-we-specialize-row-wp {
    margin-top: 100px;
}

.services-we-specialize-row-wp .row {
    --gutter-y: var(--gutter);
}

.services-we-specialize-title {
    max-width: 690px;
    margin-bottom: 30px;
}

.services-we-specialize-title .h3-title {
    margin-bottom: 13px;
}

.we-specialize-box {
    height: 100%;
    padding: 35px 30px;
    border-radius: 10px;
    background-color: var(--sec-bg-color);
}

.we-specialize-box .h4-title {
    margin-bottom: 7px;
}

/* ===== Commercial Roofing Services Even Section Css Start ===== */

.services-details-sec.even {
    background-color: unset;
    background-blend-mode: unset;
}

.services-details-sec.even .services-details-content {
    margin-left: 0;
    margin-right: -30px;
}

.services-details-sec.even .services-details-image-box {
    margin-left: auto;
}

/* ===== Commercial Roofing Services Even Section Css End ===== */

.gallery-slider-wp .slick-list {
    overflow: visible;
}

.gallery-image-box {
    width: 100%;
    display: block;
    height: 433px;
}

.gallery-image-box .back-img {
    width: 100%;
    height: 100%;
    border-radius: 10px;
    box-shadow: var(--box-shadow);
}

.metal-roofing-sec .services-details-sec,
.roof-coatings-sec .services-details-sec {
    background-color: unset;
    background-blend-mode: unset;
}

.spray-foam-roofing-sec {
    padding: 140px 0;
    background-color: rgb(232 232 232 / 50%);
    background-blend-mode: multiply;
}

.spray-foam-roofing-content {
    max-width: 690px;
    margin-top: 60px;
}

.spray-foam-roofing-content .sec-title {
    margin-bottom: 25px;
}

.spray-foam-roofing-feature-content {
    margin-left: -15px;
    padding: 60px 70px;
    border-radius: 10px;
    background-blend-mode: multiply;
    background-color: var(--common-color);
}

.spray-foam-roofing-content-description ul {
    column-count: 2;
}

.spray-foam-roofing-content-description ul {
    column-count: 2;
    list-style: disc;
    margin-left: 17px;
    margin-bottom: 16px;
}

.spray-foam-roofing-content-description ul li {
    line-height: 36px;
}

.spray-foam-roofing-content-description p a {
    color: var(--common-color);
    text-decoration: none !important;
}

.spray-foam-roofing-content-description p a:hover {
    color: var(--primary-color);
}

.spray-foam-roofing-feature-content-btn {
    margin-top: 30px;
}

.spray-foam-roofing-feature-content .services-advantage-list-box {
    margin-left: 0;
    margin-top: 35px;
}

.page-template-template-residential-roofing .we-produly-sec,
.page-template-template-commercial-roofing .we-produly-sec {
    background-color: unset;
    background-blend-mode: unset;
    background-color: var(--white-color);
}

/*========== Commercial Roofing Page CSS End ==========*/

/*========== Residential Roofing Page CSS Start ==========*/

.main-services-details-sec.residential-roofing-main-services {
    margin-bottom: 0;
}

.residential-roofing-main-services .services-details-sec {
    background-color: unset;
    background-blend-mode: unset;
}

.residential-roofing-main-services .services-details-sec.even {
    background-color: rgb(232 232 232 / 50%);
    background-blend-mode: multiply;
}

.residential-roofing-main-services
    .services-advantage-row-wp
    .services-advantage-list-box {
    margin-left: 50px;
}

.services-advantage-step-box-wp {
    display: flex;
    justify-content: space-between;
    gap: 30px;
}

.services-advantage-step-box {
    flex: 1;
}

.services-advantage-step-box .learn-more-btn:hover {
    color: var(--white-color);
}

.we-specialize-box .services-advantage-list-box {
    margin-left: 0;
}

.metal-roofing-sec .services-details-sec {
    padding-bottom: 54px;
}

.metal-roofing-sec .services-details-sec .services-details-content {
    margin-top: 70px;
    margin-left: 0;
    margin-right: -30px;
}

.metal-roofing-sec .services-details-sec .services-details-image-box {
    margin-left: auto;
    height: 580px;
}

/*========== Residential Roofing Page CSS End ==========*/

/*========== Spray Foam Page CSS Start ==========*/

.main-spray-form-services-sec {
    padding: 140px 0;
}

.main-spray-form-services-sec-title {
    text-align: center;
    margin-bottom: 100px;
}

.spray-form-services-sec .spray-form-services-row-wp:not(:last-child) {
    margin-bottom: 100px;
}

.spray-form-services-content {
    max-width: 690px;
    margin-top: 60px;
}

.spray-form-services-content .sec-title {
    margin-bottom: 25px;
}

.spray-form-services-image {
    height: 400px;
    margin-left: -15px;
    border-radius: 10px;
    box-shadow: var(--box-shadow);
}

.even .spray-form-services-image {
    margin-left: 0;
    margin-right: -15px;
}

.even .spray-form-services-content {
    margin-left: auto;
}

.main-spray-form-services-sec .services-advantage-step-box-wp {
    gap: 40px;
}

/*========== Spray Foam Page CSS End ==========*/

/*========== Roof Care & Maintenance Page CSS Start ==========*/

.main-roof-care-maintenance-services-sec {
    padding: 140px 0;
}

.roof-care-maintenance-services-sec
    .roof-care-maintenance-services-row-wp:not(:last-child) {
    margin-bottom: 135px;
}

.roof-care-maintenance-services-image {
    margin-right: -15px;
    height: 400px;
    border-radius: 10px;
    box-shadow: var(--box-shadow);
}

.roof-care-maintenance-content {
    max-width: 690px;
    margin-left: auto;
    margin-top: 60px;
}

.roof-care-maintenance-content .sec-title {
    margin-bottom: 25px;
}

.roof-care-maintenance-content-description .h4-title {
    margin-bottom: 12px;
}

.roof-care-maintenance-content-description p {
    margin-bottom: 22px;
}

.roof-care-maintenance-content-description p:last-child {
    margin-bottom: 0;
}

.even .roof-care-maintenance-content {
    margin-left: 0;
}

.even .roof-care-maintenance-services-image {
    margin-right: 0;
    margin-left: -15px;
}

/*========== Roof Care & Maintenance Page CSS End ==========*/

/*========== FAQ Page CSS Start ==========*/

.faq-sec {
    padding: 140px 0;
}

.faq-box-row .faq-box-wp:not(:last-child) {
    margin-bottom: 100px;
}

.faq-box-wp .sec-title {
    margin-bottom: 40px;
}

.faq-box {
    border: 1px solid rgb(34 30 32 / 50%);
    border-radius: 10px;
    transition: var(--transition);
}

.faq-box:not(:last-child) {
    margin-bottom: 30px;
}

.faq-box-title {
    position: relative;
    font-size: 24px;
    line-height: 34px;
    font-weight: 700;
    width: 100%;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    padding: 28px 100px 27px 34px;
    transition: var(--transition);
    cursor: pointer;
}

.faq-box .faq-box-title:hover,
.faq-box.active .faq-box-title {
    color: var(--dark-red-color);
}

.faq-icon {
    display: block;
    position: absolute;
    top: 50%;
    right: 34px;
    transform: translate(0, -50%);
    height: 24px;
    width: 24px;
}

.faq-icon:before,
.faq-icon:after {
    content: "";
    position: absolute;
    height: 100%;
    width: 2px;
    border-radius: 2px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: var(--common-color);
    transition: var(--transition);
}

.faq-icon:after {
    width: 100%;
    height: 2px;
}

.faq-box .faq-box-title:hover .faq-icon:before,
.faq-box .faq-box-title:hover .faq-icon::after {
    background-color: var(--primary-color);
}

.faq-box.active .faq-box-title .faq-icon:before {
    transform: translate(-50%, -50%) rotate(90deg);
    background-color: var(--primary-color);
}

.faq-box.active .faq-box-title .faq-icon:after {
    transform: translate(-50%, -50%) rotate(90deg);
    opacity: 0;
}

.faq-content {
    margin-top: -5px;
    padding: 0 100px 24px 33px;
}

/*========== FAQ Page CSS End ==========*/

/*========== Contact Page CSS Start ==========*/

.contact-about-sec {
    padding: 140px 0;
}

.contact-about-info {
    margin-top: 70px;
    max-width: 590px;
}

.contact-about-info .sec-title {
    margin-bottom: 25px;
}

.contact-about-info-description {
    margin-bottom: 20px;
}

.working-time-info {
    margin-bottom: 35px;
}

.contact-about-sec .contact-form-wp {
    padding: 70px 65px;
    margin-left: 0;
}

/*========== Contact Page CSS End ==========*/

/*========== Inner Page CSS Start ==========*/

.main-banner.inner-banner {
    position: relative;
    padding: 270px 0 96px;
    min-height: auto;
}

.main-banner.inner-banner::after {
    background-color: var(--common-color);
}

.main-banner.inner-banner::before {
    content: none;
}

.main-banner.inner-banner .banner-content {
    margin-top: 0;
}

.main-banner.inner-banner .banner-content .h1-title span {
    font-style: normal;
}

.inner-page-text {
    padding: var(--space-80) 0;
}

.privacy-content h2,
.entry-content h2 {
    font-size: 35px;
    color: var(--primary-color);
}

.privacy-content p a,
.privacy-content a,
.entry-content a,
.entry-content p a,
.entry-content a {
    transition: var(--transition);
    color: var(--primary-color);
    text-decoration: none !important;
}

.privacy-content p a:hover,
.privacy-content a:hover,
.entry-content p a:hover,
.entry-content a:hover {
    color: var(--dark-color);
    text-decoration: underline !important;
}

/*========== Inner Page CSS End ==========*/

/*========== 404 Page CSS Start ==========*/

.error-404 img {
    width: 40%;
}

/*========== 404 Page CSS End ==========*/

/*========== Thank You Page CSS Start ==========*/
.thank-text h6 {
    font-size: 24px;
    line-height: 30px;
    text-transform: capitalize;
    color: var(--dark-color);
}

.thank-text p a {
    text-decoration: underline !important;
    color: var(--primary-color);
    transition: var(--transition);
}

.thank-text p a:hover {
    color: var(--dark-color);
}

/*========== Thank You Page CSS End ==========*/

/*==========Site Map CSS Start==========*/
.site-map li a {
    color: var(--primary-color);
}

.site-map li::marker {
    color: var(--primary-color);
}

/*==========Site Map CSS End==========*/

/*========== View All Services CSS Start ==========*/
.footer-last .text,
.menu-seo-menu-container ul li a {
    font-size: 14px;
    line-height: 20px;
    color: var(--common-color);
    cursor: pointer;
    transition: var(--transition);
}

.footer-last .text:hover {
    color: var(--primary-color) !important;
    text-decoration: underline !important;
}

.menu-seo-menu-container ul li a {
    padding-right: 7px;
    margin-right: 7px;
    border-right: 1px solid var(--dark-color);
    transition: var(--transition);
}

.menu-seo-menu-container ul li a:hover {
    color: var(--primary-color);
}

/*========== View All Services CSS End ==========*/

/*========== SEO Page CSS Start ==========*/

/* .services-sec.seo-page-services-sec {
    padding-bottom: 0;
} */

/* .services-sec.seo-page-services-sec .services-bg-image {
  height: 423px;
  background: linear-gradient(
    90deg,
    rgba(117, 7, 33, 1) 30%,
    rgba(173, 31, 62, 1) 100%
  );
  box-shadow: 0 6px 10px rgb(0 0 0 / 16%);
} */

.services-sec.seo-page-services-sec .services-bg-image::before {
    content: none;
}

.main-seo-content {
    position: relative;
    padding: 90px 0;
}

.excerpt-content p a {
    color: var(--primary-color);
    transition: var(--transition);
}

.excerpt-content p a:hover {
    color: var(--primary-color);
}

.main-seo-content h1 {
    margin-bottom: 27px;
}

.excerpt-content :is(h2, h3, h4, h5, h6) {
    line-height: 1.2;
    color: var(--common-color);
    font-weight: 700;
}

.excerpt-content h2 {
    font-size: 34px;
}

.excerpt-content h3:first-child {
    margin-top: 0;
}

.excerpt-content h3 {
    font-size: 24px;
    line-height: 32px;
    margin-bottom: 14px;
    margin-top: 34px;
}

.excerpt-content h4 {
    font-size: 22px;
}

.excerpt-content h5 {
    font-size: 20px;
}

.excerpt-content h6 {
    font-size: 18px;
}

.main-seo-content .excerpt-content {
    max-height: 538px;
    position: relative;
    margin-bottom: 42px;
}

.main-seo-content .excerpt-content:not([style*="max-height: unset;"]):before {
    content: "";
    position: absolute;
    width: 100%;
    height: 120px;
    bottom: 0;
    left: 0;
    background: linear-gradient(to top, white, transparent);
    pointer-events: none;
}

.excerpt-content ol,
.excerpt-content ul {
    padding: 0;
    margin: 0 0 1.5em 3em;
}

.excerpt-content ul li {
    list-style: disc;
    margin-bottom: 10px;
}

.faq-sec-wp {
    padding: 0;
    margin-bottom: 100px;
}

.faq-sec-wp .h2-title {
    text-align: center;
}

/*========== SEO Page CSS End ==========*/

/*========== Blog CSS Start ==========*/
.posted-on a,
.byline a,
.widget ul li a,
.entry-title a,
.logged-in-as a,
.post-categories a {
    transition: var(--transition);
    color: var(--primary-color);
}

.entry-title a:hover,
.posted-on a:hover,
.byline a:hover,
.widget ul li a:hover,
.comment-meta .url:hover,
.comment-content a:hover,
.comment-metadata a:hover,
.reply a:hover,
.entry-footer span a:hover,
.nav-previous a:hover,
.nav-next a:hover,
.post-categories a:hover {
    color: var(--dark-color);
    text-decoration: underline !important;
}

.entry-footer span a {
    color: var(--primary-color);
}

.entry-footer span a:hover {
    color: var(--primary-color);
    text-decoration: underline !important;
}

.entry-title {
    font-size: 30px;
    color: var(--primary-color);
    margin-bottom: 15px;
}

.widget-area .widget_search .wp-block-search .wp-block-search__input,
.page-content .wp-block-search .wp-block-search__input,
.search-form .search-field {
    background: var(--white-color);
    font-size: 16px;
    outline: none;
    width: 100%;
    height: 50px;
    border-radius: 0;
    border: 1px solid var(--primary-color);
    padding: 13px 95px 12px 20px;
    -webkit-appearance: none;
    appearance: none;
}

.widget-area .widget_search .wp-block-search .wp-block-search__button,
.page-content .wp-block-search .wp-block-search__button,
.search-form .search-submit {
    padding: 10px 16px;
    font-size: 15px;
    font-weight: 700;
    border-radius: 0;
    height: 50px;
    color: var(--white-color);
    position: absolute;
    right: 0;
    bottom: 0;
    outline: none;
    border: none;
    cursor: pointer;
    background: var(--primary-color);
    flex: 1;
    transition: var(--transition);
}

.widget-area .widget_search .wp-block-search .wp-block-search__button:hover,
.page-content .wp-block-search .wp-block-search__button:hover,
.search-form .search-submit:hover {
    background: var(--dark-color);
    color: var(--white-color);
}

.comments-area textarea {
    resize: none;
    height: 180px;
    border-radius: 0;
    box-shadow: none;
    background: var(--white-color);
    border: 1px solid var(--common-color);
    outline: none;
    padding: 15px;
}

.comments-area p input {
    width: 100%;
    height: 46px;
    border-radius: 0;
    background: var(--white-color);
    border: 1px solid var(--common-color);
    outline: none;
    box-shadow: none;
    padding: 15px;
}

.form-submit .submit {
    width: 170px;
    height: 46px;
    background: var(--primary-color);
    color: var(--white-color);
    font-weight: bold;
    border: none;
    border-radius: 30px;
    outline: none !important;
    transition: var(--transition);
}

.form-submit .submit:hover {
    background: var(--dark-color);
    color: var(--white-color);
}

.avatar.photo {
    width: 60px;
    height: 60px;
    border-radius: 50%;
}

.wp-block-latest-comments__comment-meta a:hover {
    color: var(--dark-color);
}

.comment-meta .url,
.comment-content a {
    color: var(--primary-color);
}

.comment-meta .url:hover,
.comment-content a:hover {
    color: var(--dark-color);
    text-decoration: none !important;
}

.comment-metadata a {
    color: var(--primary-color);
    display: inline-block;
    margin-right: 10px;
    margin-bottom: 15px;
}

.reply a {
    color: var(--primary-color);
    display: inline-block;
    margin-bottom: 10px;
    transition: var(--transition);
}

.comment-reply-title {
    font-size: 30px;
    font-weight: bold;
    color: var(--primary-color);
    margin-bottom: 20px;
}

.comment-reply-title small a:hover {
    color: var(--dark-color);
}

.comment-form-comment .form-submit #submit {
    padding: 0;
    line-height: 42px;
}

.comments-area {
    margin-top: 60px;
}

.comments-title {
    margin-bottom: 30px;
    text-transform: uppercase;
    font-size: 30px;
    line-height: 40px;
}

.comment-body {
    margin-bottom: 30px;
}

.comment-form-url {
    margin-right: 0;
}

.single-post .widget-area {
    /*   margin-top: 0; */
}

.nav-previous a,
.nav-next a {
    color: var(--primary-color);
    transition: var(--transition);
}

.result-pagination li a,
.result-pagination li,
.result-pagination .page-numbers {
    --pagination-size: 50px;
    width: var(--pagination-size);
    height: var(--pagination-size);
    background: var(--white-color);
    box-shadow: 0 10px 40px rgba(37, 58, 105, 0.09);
    border-radius: 10px;
    color: var(--dark-color);
    font-size: 20px;
    z-index: 10;
    transition: var(--transition);
}

.result-pagination a:hover,
.result-pagination .current {
    background: var(--primary-color);
    color: var(--white-color);
}

.page-numbers li a,
.page-numbers li,
span.page-numbers,
.page-numbers {
    width: 50px;
    height: 50px;
    background: var(--common-color);
    box-shadow: 0 10px 40px rgba(37, 58, 105, 0.09);
    border-radius: 8px;
    border: none;
    outline: none;
    color: var(--white-color);
    font-size: 18px;
    z-index: 10;
    transition: var(--transition);
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin: 0 3px;
}

.page-numbers li {
    margin: 0 5px;
}

.page-numbers li a:hover,
.page-numbers.current,
.page-numbers:hover {
    background: var(--primary-color);
    color: var(--white-color);
}

.entry-content h2 {
    margin: 20px 0 10px 0;
}

.entry-content h3 {
    margin: 15px 0 10px 0;
}

.entry-content p img {
    margin: 15px 0;
}

.entry-content p a {
    line-height: 20px;
}

.type-post .entry-meta {
    display: flex;
    gap: 1px 15px;
    flex-wrap: wrap;
}

/*========== End of Blog CSS ==========*/

/*==========Responsive Start==========*/

@media screen and (min-height: 1100px) {
    .main-banner:not(.main-banner.inner-banner) {
        display: flex;
        align-items: center;
        padding: 75px 0 0 0;
    }
}

@media screen and (min-width: 1400px) {
    .container:not(.container-lg) {
        max-width: 1200px;
    }
}

@media screen and (min-width: 1500px) {
    .container-lg {
        max-width: 1380px;
    }

    .services-list-wp .container:not(.container-lg) {
        max-width: 1670px;
    }
}

@media (min-width: 1921px) {
    .container-lg {
        max-width: 1400px;
    }

    .container:not(.container-lg) {
        max-width: 1400px;
    }

    .services-content {
        max-width: 600px;
    }
}

@media screen and (max-width: 1699px) {
    .site-branding {
        margin-left: 0;
    }

    .header-menu {
        margin-left: 0;
    }

    .main-navigation
        ul:not(.main-navigation ul ul):not(.main-navigation ul ul ul) {
        gap: 35px;
    }
}

@media screen and (max-width: 1599px) {
    .main-navigation
        ul:not(.main-navigation ul ul):not(.main-navigation ul ul ul) {
        gap: 20px;
    }

    .main-navigation ul li.menu-item-has-children {
        padding-right: 20px;
    }

    .header-mobile-menu {
        gap: 20px;
    }
}

@media screen and (max-width: 1499px) {
    .footer-menu ul {
        gap: 15px 18px;
    }
}

@media screen and (max-width: 1399px) {
    .site-header {
        height: 110px;
    }

    .site-branding .sticky-logo,
    .site-branding .default-logo {
        width: 120px;
    }

    .site-branding .default-logo {
        top: 16px;
    }

    .header-menu {
        margin-right: 0;
        margin-left: -20px;
    }

    .main-navigation
        ul:not(.main-navigation ul ul):not(.main-navigation ul ul ul) {
        gap: 14px;
    }

    .main-navigation ul > li > a {
        font-size: 14px;
    }

    .main-navigation ul ul li a {
        font-size: 14px;
    }

    .header-mobile-menu {
        gap: 14px;
    }

    .header-btn .sec-btn.lg-btn {
        width: 215px;
    }

    .contact-form-wp {
        padding: 50px 40px;
        margin-left: 0;
    }

    .main-banner {
        padding: 190px 0 120px;
    }

    .about-sec {
        padding: 120px 0;
    }

    /* .services-sec {
    padding: 120px 0;
  } */

    .services-sec-wp .services-sec-row:not(:last-child) {
        margin-bottom: 120px;
    }

    .main-services-sec {
        padding-bottom: 120px;
    }

    .join-our-team-sec {
        padding: 120px 0;
    }

    .top-footer {
        padding: 120px 0 80px;
    }

    .footer-menu {
        padding-bottom: 0;
    }

    .footer-menu ul {
        gap: 5px 15px;
    }

    /*========== Commercial Roofing Page CSS Start ==========*/

    .commercial-roofing-list-sec .feature-list-box .h4-title {
        font-size: 18px;
    }

    .commercial-roofing-list-sec .services-list-icon img {
        max-width: 120px;
        max-height: 50px;
    }

    .services-page-about-sec {
        padding: 120px 0;
    }

    .main-services-details-sec {
        margin-bottom: 120px;
    }

    .services-details-sec {
        padding: 120px 0;
    }

    .services-details-image-box {
        width: 100%;
    }

    .services-details-content {
        margin-left: 0;
        margin-top: 30px;
    }

    .residential-roofing-main-services
        .services-advantage-row-wp
        .services-advantage-list-box,
    .services-advantage-list-box {
        margin-left: 0;
    }

    .services-details-sec.even .services-details-content {
        margin-right: 0;
    }

    .spray-foam-roofing-sec {
        padding: 120px 0;
    }

    .spray-foam-roofing-content {
        max-width: 100%;
        margin-top: 30px;
    }

    .spray-foam-roofing-feature-content {
        margin-left: 0;
        padding: 40px 30px;
    }

    /*========== Commercial Roofing Page CSS End ==========*/

    /*========== Residential Roofing Page CSS Start ==========*/

    .metal-roofing-sec .services-details-sec .services-details-content {
        margin-top: 30px;
        margin-right: 0;
    }

    .metal-roofing-sec .services-details-sec {
        padding-bottom: 0;
    }

    /*========== Residential Roofing Page CSS End ==========*/

    /*========== Spray Foam Page CSS Start ==========*/

    .main-spray-form-services-sec {
        padding: 120px 0;
    }

    .main-spray-form-services-sec-title {
        margin-bottom: 80px;
    }

    .spray-form-services-content {
        max-width: 100%;
        margin-top: 30px;
    }

    .spray-form-services-image {
        margin-left: 0;
    }

    .even .spray-form-services-image {
        margin-right: 0;
    }

    /*========== Spray Foam Page CSS End ==========*/

    /*========== Roof Care & Maintenance Page CSS Start ==========*/

    .main-roof-care-maintenance-services-sec {
        padding: 120px 0;
    }

    .roof-care-maintenance-services-sec
        .roof-care-maintenance-services-row-wp:not(:last-child) {
        margin-bottom: 120px;
    }

    .roof-care-maintenance-services-image {
        margin-right: 0;
    }

    .even .roof-care-maintenance-services-image {
        margin-left: 0;
    }

    .roof-care-maintenance-content {
        max-width: 100%;
        margin-top: 30px;
    }

    /*========== Roof Care & Maintenance Page CSS End ==========*/

    /*========== FAQ Page CSS Start ==========*/

    .faq-sec {
        padding: 120px 0;
    }

    /*========== FAQ Page CSS End ==========*/

    /*========== Contact Page CSS Start ==========*/

    .contact-about-sec {
        padding: 120px 0;
    }

    .contact-about-info {
        margin-top: 30px;
        max-width: 100%;
    }

    .contact-about-sec .contact-form-wp {
        padding: 50px 40px;
    }

    /*========== Contact Page CSS End ==========*/

    /*========== SEO Page CSS Start ==========*/

    .main-seo-content {
        padding: 120px 0;
    }

    /*========== SEO Page CSS End ==========*/
}

@media screen and (max-width: 1199px) {
    .site-header {
        height: 95px;
    }

    .site-branding .sticky-logo,
    .site-branding .default-logo {
        width: 70px;
    }

    .header-menu {
        margin-left: -60px;
    }

    .main-navigation ul li.menu-item-has-children {
        padding-right: 14px;
    }

    .main-navigation ul li.menu-item-has-children::after {
        font-size: 10px;
        right: 2px;
    }

    .main-navigation
        ul:not(.main-navigation ul ul):not(.main-navigation ul ul ul) {
        gap: 11px;
    }

    .header-btn .sec-btn.lg-btn {
        width: 175px;
        font-size: 14px;
        height: 46px;
    }

    .main-navigation ul > li > a {
        font-size: 13px;
    }

    .main-navigation ul ul li a {
        font-size: 13px;
    }

    .h1-title {
        font-size: 49px;
        line-height: 1.4;
    }

    .contact-form-wp {
        padding: 40px 30px;
    }

    .main-banner {
        padding: 190px 0 100px;
    }

    .about-sec {
        padding: 100px 0;
    }

    .services-sec {
        padding: 100px 0;
    }

    .services-sec-wp .services-sec-row:not(:last-child) {
        margin-bottom: 100px;
    }

    .main-services-sec {
        padding-bottom: 100px;
    }

    .join-our-team-sec {
        padding: 100px 0;
    }

    .instagram-slider-wp .slick-list {
        width: calc(100% + 400px);
        max-width: unset;
        padding-right: 450px;
        padding-left: 0;
    }

    .top-footer {
        padding: 100px 0 120px;
    }

    /*========== Commercial Roofing Page CSS Start ==========*/

    .main-banner.inner-banner {
        padding: 190px 0 90px;
    }

    .commercial-roofing-list-sec .feature-list-box .h4-title {
        font-size: 16px;
    }

    .main-services-details-sec {
        margin-bottom: 100px;
    }

    .services-page-about-sec {
        padding: 100px 0;
    }

    .services-details-sec {
        padding: 100px 0;
    }

    .services-details-content {
        margin-top: 0;
    }

    .services-details-about-row-wp {
        margin-bottom: 80px;
    }

    .services-we-specialize-row-wp {
        margin-top: 80px;
    }

    .services-advantage-row-wp {
        margin-top: 80px;
        padding: 40px 30px;
    }

    .we-specialize-box {
        padding: 30px 20px;
    }

    .spray-foam-roofing-sec {
        padding: 100px 0;
    }

    .spray-foam-roofing-content {
        margin-top: 0;
    }

    .spray-foam-roofing-feature-content {
        padding: 30px 20px;
    }

    /*========== Commercial Roofing Page CSS End ==========*/

    /*========== Residential Roofing Page CSS Start ==========*/

    .metal-roofing-sec .services-details-sec .services-details-content {
        margin-top: 0;
    }

    /*========== Residential Roofing Page CSS End ==========*/

    /*========== Spray Foam Page CSS Start ==========*/

    .main-spray-form-services-sec {
        padding: 100px 0;
    }

    .main-spray-form-services-sec-title {
        margin-bottom: 60px;
    }

    .spray-form-services-content {
        margin-top: 0;
    }

    .main-spray-form-services-sec .services-advantage-step-box-wp {
        gap: 20px;
    }

    /*========== Spray Foam Page CSS End ==========*/

    /*========== Roof Care & Maintenance Page CSS Start ==========*/

    .main-roof-care-maintenance-services-sec {
        padding: 100px 0;
    }

    .roof-care-maintenance-services-sec
        .roof-care-maintenance-services-row-wp:not(:last-child) {
        margin-bottom: 100px;
    }

    .roof-care-maintenance-content {
        margin-top: 0px;
    }

    .roof-care-maintenance-content-description .h4-title {
        margin-bottom: 8px;
    }

    .roof-care-maintenance-content-description p {
        margin-bottom: 16px;
    }

    /*========== Roof Care & Maintenance Page CSS End ==========*/

    /*========== FAQ Page CSS Start ==========*/

    .faq-sec {
        padding: 100px 0;
    }

    .faq-box-row .faq-box-wp:not(:last-child) {
        margin-bottom: 80px;
    }

    /*========== FAQ Page CSS End ==========*/

    /*========== Contact Page CSS Start ==========*/

    .contact-about-sec {
        padding: 100px 0;
    }

    .contact-about-info {
        margin-top: 0;
    }

    .contact-about-sec .contact-form-wp {
        padding: 40px 30px;
    }

    /*========== Contact Page CSS End ==========*/

    /*========== SEO Page CSS Start ==========*/

    .main-seo-content {
        padding: 100px 0;
    }

    /*========== SEO Page CSS End ==========*/
}

@media screen and (max-width: 991px) {
    .menu-mob {
        display: block !important;
    }

    [data-simplebar="init"] .simplebar-scroll-content {
        margin-right: 0px !important;
    }

    .site-header {
        height: 80px;
    }

    .site-header,
    .site-header.sticky_head {
        background-color: var(--white-color);
        box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
    }

    .header-num-link {
        position: absolute;
        top: 50%;
        left: 30px;
        transform: translate(0, -50%);
    }

    .header-num-link img {
        width: 30px;
        transition: var(--transition);
    }

    .header-num-link:hover img {
        filter: brightness(0%);
    }

    .site-branding {
        width: auto;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        height: 100%;
    }

    .site-branding .default-logo {
        position: relative;
        top: 0;
        width: 75px;
    }

    .site-branding .sticky-logo {
        display: none;
    }

    .menu-toggle {
        --menu-toggle-rotate: 45deg;
        --menu-toggle-space: 12px;
        position: fixed;
        top: 26px;
        right: 30px;
        border: none;
        outline: none !important;
        background: transparent;
        width: 40px;
        padding: 0;
        z-index: 105;
    }

    .menu-toggle span {
        display: block;
        width: 100%;
        height: 4px;
        background: var(--primary-color);
        margin-bottom: 8px;
        border-radius: 4px;
        position: relative;
        top: 0;
        opacity: 1;
        transition: var(--transition);
    }

    .toggled .menu-toggle span {
        background: var(--white-color);
    }

    .menu-toggle span:last-child {
        margin: 0;
    }

    .toggled .menu-toggle span:nth-child(1) {
        transform: rotate(var(--menu-toggle-rotate));
        top: var(--menu-toggle-space);
    }

    .toggled .menu-toggle span:nth-child(2) {
        opacity: 0;
    }

    .toggled .menu-toggle span:nth-child(3) {
        transform: rotate(calc(var(--menu-toggle-rotate) * -1));
        top: calc(var(--menu-toggle-space) * -1);
    }

    .header-mobile-menu {
        background: linear-gradient(
            140deg,
            rgba(117, 7, 33, 1) 100%,
            rgba(173, 31, 62, 1) 100%
        );
        padding: 16.3vh 30px 60px 30px;
        flex-direction: column;
        align-items: start;
        justify-content: space-between;
        gap: 30px;
    }

    .header-mobile-menu::before {
        --width: 948px;
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        width: var(--width);
        height: calc(var(--width) * 0.512);
        background-image: url(./assets/images/header-menu-shape.png);
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        opacity: 0.1;
        pointer-events: none;
        z-index: 0;
    }

    .header-mobile-menu::-webkit-scrollbar-thumb {
        background: var(--dark-color);
    }

    .header-mobile-menu::-webkit-scrollbar-track {
        background: var(--white-color);
    }

    .header-mobile-menu .menu-header-menu-container {
        padding: 0 30px;
        width: 100%;
    }

    .header-btn {
        width: 100%;
    }

    .header-btn .sec-btn.lg-btn {
        width: 100%;
        font-size: 16px;
        height: 54px;
        background: var(--white-color);
        color: var(--primary-color);
    }

    .header-btn .sec-btn:hover {
        background-color: var(--dark-color);
        color: var(--white-color);
    }

    .header-menu {
        margin-left: 0;
    }

    .main-navigation
        ul:not(.main-navigation ul ul):not(.main-navigation ul ul ul) {
        flex-direction: column;
        align-items: start;
        gap: 0;
    }

    .main-navigation ul {
        text-align: left;
        display: inline-block;
    }

    .main-navigation ul li {
        display: block;
        margin-left: 0;
        font-size: 20px;
        line-height: 24px;
        margin-bottom: 4.4vh;
    }

    .main-navigation ul li:last-child {
        margin-bottom: 0;
    }

    .main-navigation ul li a {
        font-size: 20px;
        line-height: 24px;
        color: var(--white-color);
        font-weight: 600;
    }

    .main-navigation ul li.menu-item-has-children::after {
        color: inherit;
    }

    .main-navigation ul ul li.menu-item-has-children::after {
        font-size: 16px;
    }

    .main-navigation ul.menu > li.current-menu-item > a,
    .main-navigation ul.menu > li.current-menu-parent > a,
    .main-navigation ul.menu > li.active-sub-menu > a,
    .main-navigation ul.menu > li.current-menu-ancestor > a {
        -webkit-text-stroke-width: 0.6px;
    }

    .main-navigation ul li.menu-item-has-children.active-child-menu::after,
    .main-navigation ul li.menu-item-has-children.active-sub-menu::after {
        transform: translate(0) rotate(-180deg);
    }

    .main-navigation ul li.menu-item-has-children {
        --arrow-space: 28px;
        padding-right: var(--arrow-space);
    }

    .main-navigation ul li.menu-item-has-children::after {
        content: none;
    }

    .main-navigation ul li.menu-item-has-children > a {
        position: relative;
    }

    .main-navigation ul li.menu-item-has-children > a:after {
        content: "\f054";
        position: absolute;
        top: 50%;
        right: calc(var(--arrow-space) * -1);
        transform: translate(0, -50%);
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        font-size: 18px;
        line-height: 1;
        color: var(--white-color);
        pointer-events: none;
        transition: var(--transition);
    }

    .main-navigation ul li.menu-item-has-children.active-sub-menu > a:after {
        transform: translate(0, -50%) rotate(90deg);
    }

    .main-navigation ul ul {
        display: block;
        top: 0;
        left: 15px !important;
        position: relative;
        opacity: 1;
        animation: none;
        background: transparent;
        box-shadow: none;
        width: 100%;
        display: none;
        margin-top: 15px;
    }

    .main-navigation ul ul ul {
        padding-left: 0;
    }

    .main-navigation ul ul li {
        border-bottom: none;
        margin-bottom: 0;
    }

    .main-navigation ul ul li:last-child {
        margin-bottom: 0;
    }

    .main-navigation ul ul li a {
        display: inline-block;
        border: 0;
        padding: 0;
        font-size: 16px;
        line-height: 40px;
        font-weight: 400;
        text-decoration: underline !important;
    }

    .main-navigation ul ul ul li a {
        font-size: 14px;
    }

    .h2-title {
        font-size: 36px;
    }

    .main-banner {
        min-height: 100%;
    }

    .main-banner .banner-content {
        margin-top: 0;
    }

    .banner-content .h3-title {
        margin-bottom: 40px;
    }

    .main-banner .contact-form-wp {
        margin-top: 80px;
    }

    .about-sec {
        padding: 80px 0;
    }

    .about-content {
        margin-top: 0;
        max-width: 100%;
        margin-bottom: 36px;
    }

    .about-content .sec-title {
        margin-bottom: 20px;
    }

    .about-image-box-wp {
        margin-bottom: 36px;
    }

    .services-sec {
        padding: 80px 0;
    }

    .services-list-slider .slick-list {
        width: calc(100% + 400px);
        max-width: unset;
        padding-right: 300px;
        padding-left: 0;
    }

    .services-section-title-wp {
        text-align: left;
    }

    .services-image {
        margin-bottom: 36px;
    }

    .services-content {
        max-width: 100%;
    }

    .services-content .sec-title {
        margin-bottom: 20px;
    }

    .services-sec-wp .services-sec-row:not(:last-child) {
        margin-bottom: 80px;
    }

    .main-services-sec {
        padding-bottom: 80px;
    }

    .we-produly-sec {
        padding: 80px 0;
    }

    .we-produly-logo img {
        max-width: 169px;
        max-height: 80px;
    }

    .join-our-team-sec {
        padding: 80px 0;
    }

    .join-our-team-sec::after {
        content: none;
    }

    .join-our-team-content {
        max-width: 100%;
        margin-top: 36px;
    }

    .join-our-team-content .sec-title {
        margin-bottom: 20px;
    }

    .instagram-feed-sec {
        padding: 80px 0;
    }

    .top-footer {
        padding: 80px 0 144px;
    }

    .top-footer-about {
        margin-right: 0;
        margin-bottom: 60px;
    }

    .bottom-footer {
        padding-bottom: 45px;
    }

    .footer-menu {
        margin-top: 40px;
        display: block;
    }

    .footer-menu ul {
        display: block;
        column-count: 2;
        gap: 0;
        column-gap: 30px;
    }

    .footer-menu ul li:not(:last-child) {
        margin-bottom: 17px;
    }

    .footer-bottom-box {
        padding: 60px 0 60px;
    }

    .footer-bottom-text,
    .copy-right,
    .footer-other-link,
    .footer-bottom-link {
        display: block;
        text-align: left;
    }

    .footer-bottom-link {
        margin: 13px 0;
    }

    .menu-footer-menu-container .employee-portal-link {
        display: none;
    }

    /*========== Commercial Roofing Page CSS Start ==========*/

    .commercial-roofing-list-sec .feature-list-row-wp {
        overflow-x: auto;
        padding-bottom: 8px;
    }

    .commercial-roofing-list-sec .feature-list-row-wp::-webkit-scrollbar {
        width: 100%;
        height: 3px;
    }

    .commercial-roofing-list-sec .feature-list-row-wp::-webkit-scrollbar-track {
        background-color: rgb(255 255 255 / 50%);
        border-radius: 10px;
    }

    .commercial-roofing-list-sec .feature-list-row-wp::-webkit-scrollbar-thumb {
        background: var(--white-color);
        border-radius: 10px;
    }

    .commercial-roofing-list-sec .feature-list-box-wp {
        flex-wrap: nowrap;
    }

    .commercial-roofing-list-sec .feature-list-box {
        width: 220px;
        flex: 0 0 auto;
    }

    .main-services-details-sec {
        margin-bottom: 80px;
    }

    .services-page-about-sec {
        padding: 70px 0;
    }

    .services-details-sec {
        padding: 80px 0;
    }

    .services-page-about-content p {
        font-size: 18px;
        line-height: 32px;
    }

    .services-details-image-box {
        margin-bottom: 36px;
    }

    .services-details-content .sec-title {
        margin-bottom: 20px;
    }

    .services-details-about-row-wp {
        margin-bottom: 60px;
    }

    .services-advantage-row-wp {
        margin-top: 60px;
    }

    .services-advantage-title {
        margin-bottom: 36px;
    }

    .column-2 ul {
        column-count: 1;
    }

    .services-we-specialize-row-wp {
        margin-top: 60px;
    }

    .services-we-specialize-title {
        margin-bottom: 25px;
    }

    .gallery-image-box {
        height: 400px;
    }

    .spray-foam-roofing-sec {
        padding: 80px 0;
    }

    .spray-foam-roofing-content {
        margin-bottom: 36px;
    }

    .spray-foam-roofing-content .sec-title {
        margin-bottom: 20px;
    }

    .spray-foam-roofing-feature-content {
        padding: 40px 30px;
    }

    .spray-foam-roofing-feature-content-btn {
        margin-top: 20px;
    }

    .spray-foam-roofing-feature-content .services-advantage-list-box {
        margin-top: 36px;
    }

    /*========== Commercial Roofing Page CSS End ==========*/

    /*========== Residential Roofing Page CSS Start ==========*/

    .metal-roofing-sec .services-details-sec .services-details-image-box {
        height: 690px;
    }

    /*========== Residential Roofing Page CSS End ==========*/

    /*========== Spray Foam Page CSS Start ==========*/

    .main-spray-form-services-sec {
        padding: 80px 0;
    }

    .main-spray-form-services-sec-title {
        margin-bottom: 40px;
    }

    .spray-form-services-image {
        margin-bottom: 36px;
    }

    .spray-form-services-content .sec-title {
        margin-bottom: 15px;
    }

    .spray-form-services-sec .spray-form-services-row-wp:not(:last-child) {
        margin-bottom: 60px;
    }

    /*========== Spray Foam Page CSS End ==========*/

    /*========== Roof Care & Maintenance Page CSS Start ==========*/

    .main-roof-care-maintenance-services-sec {
        padding: 80px 0;
    }

    .roof-care-maintenance-services-sec
        .roof-care-maintenance-services-row-wp:not(:last-child) {
        margin-bottom: 80px;
    }

    .roof-care-maintenance-services-image {
        margin-bottom: 36px;
    }

    .roof-care-maintenance-content .sec-title {
        margin-bottom: 20px;
    }

    /*========== Roof Care & Maintenance Page CSS End ==========*/

    /*========== FAQ Page CSS Start ==========*/

    .faq-sec {
        padding: 80px 0;
    }

    .faq-box-row .faq-box-wp:not(:last-child) {
        margin-bottom: 60px;
    }

    .faq-box-wp .sec-title {
        margin-bottom: 30px;
    }

    .faq-box-title {
        line-height: 30px;
        padding: 20px 80px 20px 30px;
    }

    .faq-icon {
        right: 30px;
    }

    .faq-content {
        margin-top: 0;
        padding: 0 80px 24px 30px;
    }

    /*========== FAQ Page CSS End ==========*/

    /*========== Contact Page CSS Start ==========*/

    .contact-about-sec {
        padding: 80px 0;
    }

    .contact-about-info {
        margin-bottom: 60px;
    }

    /*========== Contact Page CSS End ==========*/

    /*========== SEO Page CSS Start ==========*/

    .main-seo-content {
        padding: 80px 0;
    }

    .main-seo-content h1 {
        margin-bottom: 15px;
    }

    .excerpt-content h3 {
        margin-top: 20px;
    }

    /*========== SEO Page CSS End ==========*/

    /*========== 404 Page CSS Start ==========*/

    .error-404 img {
        width: 50%;
    }

    /*========== 404 Page CSS End ==========*/
}

@media screen and (max-width: 767px) {
    .services-list-slider .slick-list {
        padding-right: 350px;
    }

    .services-section-title-wp {
        margin: 0 auto 45px;
    }

    /* .we-produly-logo img {
    max-width: 128px;
    max-height: 70px;
  } */

    /*========== Commercial Roofing Page CSS Start ==========*/

    .spray-foam-roofing-content-description ul {
        column-count: 1;
    }

    /*========== Commercial Roofing Page CSS End ==========*/

    /*========== Residential Roofing Page CSS Start ==========*/

    .services-advantage-step-box-wp {
        flex-direction: column;
        gap: 40px;
    }

    .metal-roofing-sec .services-details-sec .services-details-image-box {
        height: 500px;
    }

    /*========== Residential Roofing Page CSS End ==========*/

    /*========== Spray Foam Page CSS Start ==========*/

    .main-spray-form-services-sec .services-advantage-step-box-wp {
        gap: 40px;
    }

    /*========== Spray Foam Page CSS End ==========*/

    /*========== FAQ Page CSS Start ==========*/

    .faq-box-title {
        font-size: 20px;
        padding: 10px 80px 10px 30px;
    }

    /*========== FAQ Page CSS End ==========*/

    /*========== Contact Page CSS Start ==========*/

    .contact-about-info .sec-title {
        margin-bottom: 15px;
    }

    /*========== Contact Page CSS End ==========*/

    /*========== 404 Page CSS Start ==========*/

    .error-404 img {
        width: 100%;
    }

    /*========== 404 Page CSS End ==========*/
}

@media screen and (max-width: 575px) {
    :root {
        --space-80: 60px;
    }

    .site-branding .default-logo {
        width: 60px;
    }

    .header-mobile-menu {
        padding: 12.4vh 30px 60px 30px;
    }

    .header-mobile-menu::before {
        left: -134px;
    }

    .menu-toggle {
        --menu-toggle-space: 9px;
        top: 30px;
        width: 30px;
    }

    .menu-toggle span {
        height: 3px;
        margin-bottom: 6px;
        border-radius: 2px;
    }

    .main-navigation ul li {
        margin-bottom: 4vh;
    }

    .main-navigation ul li.menu-item-has-children::after {
        top: 5px;
        font-size: 15px;
    }

    .main-navigation ul ul li.menu-item-has-children::after {
        font-size: 13px;
    }

    .main-navigation ul ul,
    .main-navigation ul li.menu-item-has-children:hover ul {
        left: 30px !important;
        margin-top: 10px;
        margin-bottom: -2.7vh;
    }

    .h1-title {
        font-size: clamp(40px, 11vw, 50px);
        margin-bottom: 25px;
    }

    .h2-title {
        font-size: 30px;
        line-height: 1.46666666667;
    }

    .h2-title span {
        display: inline;
    }

    .h3-title {
        font-size: 20px;
        line-height: 24px;
    }

    .privacy-content h2,
    .entry-content h2 {
        font-size: 30px;
    }

    .main-banner {
        padding: 156px 0 60px;
    }

    .home .main-banner.back-img,
    .page-template-template-seo .main-banner.back-img {
        background-position: 37% center;
    }

    .banner-content .h3-title {
        line-height: 24px;
    }

    .banner-btn {
        flex-direction: column;
    }

    .banner-btn .sec-btn {
        width: 256px;
    }

    .contact-form-title {
        margin-bottom: 30px;
    }

    .contact-form-title .h3-title {
        line-height: 24px;
    }

    .common-popup .submit-btn,
    .contact-form-wp .submit-btn {
        text-align: left;
        display: block;
    }

    .wpcf7 .wpcf7-spinner {
        left: 103%;
    }

    .about-sec {
        padding: 57px 0;
    }

    .about-content .h3-title {
        line-height: 32px;
        margin-bottom: 3px;
    }

    .about-content {
        margin-bottom: 36px;
    }

    .about-sec::before {
        --width: 573px;
        height: calc(var(--width) * 0.512);
        right: auto;
        left: 60px;
    }

    .services-sec {
        padding: 60px 0;
    }

    .services-sec.seo-page-services-sec .services-bg-image,
    .services-bg-image {
        height: 450px;
    }

    .services-section-title-wp {
        margin: 0 auto 35px;
    }

    .services-section-title-wp .sec-title .h2-title {
        margin-bottom: 21px;
    }

    .services-section-title-wp .sec-title p {
        font-size: 18px;
        line-height: 30px;
    }

    .services-list-slider .slick-list {
        padding-right: 515px;
    }

    .services-list-box-info .h3-title {
        font-size: 24px;
        line-height: 32px;
    }

    .services-image {
        height: 295px;
    }

    .services-sec-wp .services-sec-row:not(:last-child) {
        margin-bottom: 60px;
    }

    .main-services-sec {
        padding-bottom: 60px;
    }

    .we-produly-sec {
        padding: 37px 0 41px;
    }

    .we-produly-sec .sec-title {
        margin-bottom: 30px;
    }

    .we-produly-sec .sec-title .h2-title {
        font-size: 18px;
        line-height: 26px;
    }

    .we-produly-logo-row-wp {
        gap: 30px 42px;
    }

    /* .we-produly-logo img {
    max-width: 126px;
    max-height: 49px;
    width: 100%;
    max-height: 70px;
    object-fit: cover;
  } */

    .join-our-team-sec {
        padding: 60px 0;
    }

    .join-our-team-image {
        height: 295px;
    }

    .join-our-team-description p {
        line-height: 30px;
    }

    .instagram-feed-sec {
        padding: 60px 0;
    }

    .instagram-slider-wp .slick-list {
        padding-right: 545px;
    }

    .top-footer {
        padding: 57px 0 144px;
    }

    .testimonials-slider-title {
        margin-bottom: 20px;
    }

    .testimonial-description-text {
        height: 200px;
        padding-right: 27px;
    }

    .testimonial-slider .slick-arrow {
        bottom: -72px;
    }

    .testimonial-slider-box-wp {
        margin-bottom: 112px;
    }

    .footer-menu {
        margin-top: 30px;
    }

    .footer-menu ul {
        column-gap: 100px;
    }

    /*========== Commercial Roofing Page CSS Start ==========*/

    .main-banner.inner-banner {
        padding: 150px 0 60px;
    }

    .services-page-about-sec {
        padding: 50px 0;
    }

    .services-page-about-content p {
        font-size: 16px;
        line-height: 30px;
    }

    .main-services-details-sec {
        margin-bottom: 60px;
    }

    .services-details-sec {
        padding: 60px 0;
    }

    .services-details-image-box {
        height: 295px;
    }

    .services-advantage-row-wp {
        margin-top: 50px;
    }

    .services-details-about-row-wp {
        margin-bottom: 50px;
    }

    .services-we-specialize-row-wp {
        margin-top: 50px;
    }

    .spray-foam-roofing-sec {
        padding: 60px 0;
    }

    .row.gallery-slider {
        --gutter: 15px;
    }

    .gallery-image-box {
        height: 295px;
    }

    /*========== Commercial Roofing Page CSS End ==========*/

    /*========== Residential Roofing Page CSS Start ==========*/

    .metal-roofing-sec .services-details-sec .services-details-image-box {
        height: auto;
        aspect-ratio: 1 / 1;
    }

    /*========== Residential Roofing Page CSS End ==========*/

    /*========== Spray Foam Page CSS Start ==========*/

    .main-spray-form-services-sec {
        padding: 60px 0;
    }

    .spray-form-services-sec .spray-form-services-row-wp:not(:last-child) {
        margin-bottom: 50px;
    }

    .main-spray-form-services-sec-title {
        margin-bottom: 30px;
    }

    .spray-form-services-image {
        height: 295px;
    }

    /*========== Spray Foam Page CSS End ==========*/

    /*========== Roof Care & Maintenance Page CSS Start ==========*/

    .main-roof-care-maintenance-services-sec {
        padding: 60px 0;
    }

    .roof-care-maintenance-services-sec
        .roof-care-maintenance-services-row-wp:not(:last-child) {
        margin-bottom: 60px;
    }

    .roof-care-maintenance-services-image {
        height: 295px;
    }

    /*========== Roof Care & Maintenance Page CSS End ==========*/

    /*========== FAQ Page CSS Start ==========*/

    .faq-sec {
        padding: 60px 0;
    }

    .faq-box-row .faq-box-wp:not(:last-child) {
        margin-bottom: 50px;
    }

    .faq-box:not(:last-child) {
        margin-bottom: 20px;
    }

    .faq-box-title {
        font-size: 18px;
        padding: 10px 50px 10px 20px;
    }

    .faq-icon {
        right: 20px;
    }

    .faq-content {
        padding: 0 50px 24px 20px;
    }

    /*========== FAQ Page CSS End ==========*/

    /*========== Contact Page CSS Start ==========*/

    .contact-about-sec {
        padding: 60px 0;
    }

    .contact-about-info {
        margin-bottom: 40px;
    }

    .working-time-info {
        margin-bottom: 20px;
    }

    /*========== Contact Page CSS End ==========*/

    /*========== SEO Page CSS Start ==========*/

    .main-seo-content {
        padding: 60px 0;
    }

    .excerpt-content ol,
    .excerpt-content ul {
        margin-left: 20px;
    }

    .excerpt-content h3 {
        margin-top: 0;
    }

    /*========== SEO Page CSS End ==========*/
}

@media screen and (max-width: 460px) {
    .services-list-slider .slick-list {
        padding-right: 420px;
    }

    .services-content-btn {
        gap: 15px;
        flex-direction: column;
        align-items: start;
    }

    .services-content-btn .learn-more-btn {
        order: 1;
    }

    .services-content-btn .sec-btn.lg-btn {
        order: 2;
    }

    .instagram-slider-wp .slick-list {
        padding-right: 450px;
    }

    .footer-menu ul {
        column-gap: 0;
        column-count: 1;
    }
}

@media screen and (max-width: 400px) {
    .site-header {
        height: 70px;
    }

    .header-num-link {
        left: 15px;
    }

    .header-num-link img {
        width: 24px;
    }

    .menu-toggle {
        top: 24px;
        right: 15px;
    }

    .form-input,
    .input-text,
    .select2-container--default
        .select2-selection--single
        .select2-selection__rendered,
    select {
        padding: 0 15px;
    }

    .form-input.wpcf7-textarea {
        padding: 15px;
        height: 100px;
    }

    .form-element i {
        right: 10px;
    }

    .popup-title {
        padding: 10px 65px 10px 15px;
    }

    .header-mobile-menu {
        padding: 16.3vh 20px 30px 20px;
    }

    .header-mobile-menu::before {
        --width: 700px;
        background-size: 100%;
    }

    .header-mobile-menu .menu-header-menu-container {
        padding: 0;
    }

    .main-navigation ul li a {
        font-size: 18px;
    }

    .main-navigation ul li.menu-item-has-children {
        --arrow-space: 20px;
        padding-right: var(--arrow-space);
    }

    .main-navigation ul li.menu-item-has-children > a:after {
        font-size: 16px;
    }

    .main-navigation ul ul,
    .main-navigation ul li.menu-item-has-children:hover ul {
        left: 15px !important;
    }

    .header-btn .sec-btn.lg-btn {
        height: 50px;
    }

    .popup-title .h2-title {
        font-size: 26px;
    }

    .h1-title {
        font-size: clamp(32px, 10vw, 40px);
        margin-bottom: 20px;
    }

    .h2-title {
        font-size: 26px;
    }

    .sec-btn,
    .woocommerce #respond input#submit,
    .woocommerce a.button,
    .woocommerce button.button,
    .woocommerce input.button {
        height: 50px;
    }

    .sec-btn.lg-btn {
        width: 215px;
    }

    .privacy-content h2,
    .entry-content h2 {
        font-size: 26px;
    }

    .entry-title {
        font-size: 26px;
    }

    .page-numbers li a,
    .page-numbers li,
    span.page-numbers,
    .page-numbers {
        width: 40px;
        height: 40px;
        font-size: 16px;
    }

    .banner-content .h3-title {
        margin-bottom: 30px;
    }

    .banner-btn .sec-btn {
        width: 215px;
        height: 50px;
    }

    .banner-btn {
        gap: 15px;
    }

    .main-banner .contact-form-wp {
        margin-top: 60px;
    }

    .contact-form-wp {
        padding: 30px 15px;
    }

    .contact-form-title {
        margin-bottom: 25px;
    }

    .wpcf7-form-control-wrap {
        margin-bottom: 20px;
    }

    .about-content {
        margin-bottom: 30px;
    }

    .about-content .sec-title {
        margin-bottom: 15px;
    }

    .about-image-box-wp {
        margin-bottom: 30px;
    }

    .services-section-title-wp .sec-title .h2-title {
        margin-bottom: 15px;
    }

    .services-list-box {
        padding: 30px 15px;
    }

    .services-list-box-info .h3-title {
        font-size: 20px;
        line-height: 24px;
    }

    .services-list-icon {
        margin-bottom: 20px;
    }

    .services-list-icon img {
        max-width: 100px;
        max-height: 50px;
    }

    .services-list-box-description {
        margin-bottom: 15px;
    }

    .services-list-slider .slick-list {
        padding-right: 440px;
    }

    .services-content .sec-title {
        margin-bottom: 15px;
    }

    .services-image {
        margin-bottom: 30px;
    }

    .we-produly-logo-row-wp {
        gap: 30px;
    }

    .join-our-team-content {
        margin-top: 30px;
    }

    .join-our-team-content .sec-title {
        margin-bottom: 15px;
    }

    .testimonials-slider-title {
        margin-bottom: 15px;
    }

    .testimonial-description-text {
        height: 155px;
        padding-right: 10px;
        margin-bottom: 20px;
    }

    .top-footer {
        padding: 57px 0 120px;
    }

    .top-footer-logo img,
    .top-footer-logo a img {
        max-width: 70px;
        max-height: 70px;
    }

    .top-footer-about {
        margin-bottom: 50px;
    }

    .footer-logo {
        margin-top: -60px;
        margin-bottom: 30px;
    }

    .footer-logo a {
        width: 120px;
    }

    .contact-info a {
        font-size: 22px;
    }

    .footer-menu {
        margin-top: 20px;
    }

    .footer-menu ul li:not(:last-child) {
        margin-bottom: 8px;
    }

    .bottom-footer {
        padding-bottom: 25px;
    }

    .footer-bottom-box {
        padding: 30px 0;
    }

    /*========== Commercial Roofing Page CSS Start ==========*/

    .beer-handle {
        width: 60px;
    }

    .beer-handle:before {
        left: 10px;
        height: 10px;
        width: 10px;
    }

    .beer-handle:after {
        right: 0;
        height: 10px;
        width: 10px;
    }

    .services-details-image-box {
        margin-bottom: 30px;
    }

    .services-details-content .sec-title {
        margin-bottom: 15px;
    }

    .services-advantage-row-wp {
        padding: 30px 15px;
    }

    .services-advantage-list-box ul li {
        margin-bottom: 15px;
    }

    .services-advantage-title {
        margin-bottom: 30px;
    }

    .services-we-specialize-title {
        margin-bottom: 20px;
    }

    .we-specialize-box {
        padding: 30px 15px;
    }

    .gallery-slider-wp .slick-list {
        width: 90%;
        left: 50%;
        transform: translate(-50%, 0);
    }

    .spray-foam-roofing-content {
        margin-bottom: 30px;
    }

    .spray-foam-roofing-content .sec-title {
        margin-bottom: 15px;
    }

    .spray-foam-roofing-feature-content {
        padding: 30px 15px;
    }

    /*========== Commercial Roofing Page CSS End ==========*/

    /*========== Residential Roofing Page CSS Start ==========*/

    .services-advantage-step-box-wp {
        gap: 30px;
    }

    /*========== Residential Roofing Page CSS End ==========*/

    /*========== Spray Foam Page CSS Start ==========*/

    .spray-form-services-image {
        margin-bottom: 30px;
    }

    .main-spray-form-services-sec .services-advantage-step-box-wp {
        gap: 30px;
    }

    /*========== Spray Foam Page CSS End ==========*/

    /*========== Roof Care & Maintenance Page CSS Start ==========*/

    .roof-care-maintenance-services-image {
        margin-bottom: 30px;
    }

    .roof-care-maintenance-content .sec-title {
        margin-bottom: 15px;
    }

    .roof-care-maintenance-content-description p {
        margin-bottom: 10px;
    }

    /*========== Roof Care & Maintenance Page CSS End ==========*/

    /*========== FAQ Page CSS Start ==========*/

    .faq-box-row .faq-box-wp:not(:last-child) {
        margin-bottom: 40px;
    }

    .faq-box-wp .sec-title {
        margin-bottom: 20px;
    }

    .faq-box-title {
        padding: 10px 45px 10px 15px;
    }

    .faq-icon {
        right: 15px;
    }

    .faq-content {
        padding: 0 45px 24px 15px;
    }

    .faq-box:not(:last-child) {
        margin-bottom: 15px;
    }

    /*========== FAQ Page CSS End ==========*/

    /*========== Contact Page CSS Start ==========*/

    .contact-about-sec .contact-form-wp {
        padding: 30px 15px;
    }

    /*========== Contact Page CSS End ==========*/

    /*========== SEO Page CSS Start ==========*/

    .excerpt-content h3 {
        font-size: 22px;
    }

    .excerpt-content h4 {
        font-size: 20px;
    }

    .excerpt-content h5 {
        font-size: 18px;
    }

    .excerpt-content h6 {
        font-size: 16px;
    }

    /*========== SEO Page CSS End ==========*/
}

/*==========Responsive End==========*/

.form-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    position: relative;
    padding-right: 2em;
}

.form-element,
.form-white {
    position: relative;
    display: block;
}

.form-white::before {
    content: "\f078";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    right: 15px;
    top: 10px;
    /*   transform: translateY(-50%); */
    pointer-events: none;
    color: var(--common-color);
    font-size: 14px;
    z-index: 2;
}

.main-banner .form-white:before {
    color: var(--white-color);
}

.form-element::before {
    content: "\f078";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    right: 15px;
    top: 10px;
    /*   transform: translateY(-50%); */
    pointer-events: none;
    color: var(--white-color);
    font-size: 14px;
    z-index: 2;
}

.chatsupport-wrp[data-v-80cacb88] .chatsupport-button {
    right: 70px !important;
    bottom: 40px !important;
}
.chatsupport-wrp[data-v-68132ea5] .chatsupport-button {
    right: 5px !important;
}

/*========== Employee Portal Page CSS Start ==========*/
.employee-portal-sec {
    padding-block: 100px;
}

.employee-portal-video-item {
    width: 100%;
    aspect-ratio: 16 / 9;
    line-height: 0;
}

.employee-portal-btn {
    margin-top: 40px;
}

.employee-portal-btn .sec-btn:hover {
    background-color: var(--common-color);
    color: var(--white-color);
}

.employee-portal-video-wp .row {
    --gutter-y: 25px;
}

.employee-portal-video-item iframe {
    width: 100%;
    height: 100%;
    border-radius: 15px;
}

@media screen and (max-width: 991px) {
    .employee-portal-sec {
        padding-block: 70px;
    }

    .employee-portal-btn {
        margin-top: 30px;
    }
}

/*========== Employee Portal Page CSS End ==========*/

/* employee-poratal section  */

.video-play-btn {
    position: absolute;
    width: 65px;
    height: 65px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /* background-color: var(--white-color); */
    opacity: 1;
    transition: var(--transition);
}

.video-play-btn svg {
    fill: red;
    width: 72px;
    height: 72px;
}

.employee-portal-video-item a {
    display: flex;
    height: 100%;
}

.mask-img {
    mask-position: center;
    mask-size: 100%;
    mask-repeat: no-repeat;
}

.back-img img {
    position: relative;
    border-radius: 15px;
    object-fit: cover;
    height: 100%;
}

.employee-portal-video-item {
    position: relative;
}
