/*
 Theme Name:   bbfoundationrepair
 Template:     twentytwentyfive
*/


@import url('https://fonts.googleapis.com/css2?family=Adamina&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');

@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css');


body p,
h1,
h2,
h3,
h4,
h4,
h5,
h6 {
    margin: 0;
}


body {
    font-family: "Poppins", sans-serif;
    !important;
    line-height: 1.8;
    font-size: 18px;
}

.wp-block-template-part {
    display: none;
}

#wp--skip-link--target,
.wp-block-group.alignfull.has-global-padding.is-layout-constrained.wp-block-group-is-layout-constrained {
    margin: 0 !important;
    padding: 0 !important;
}

.entry-content {
    width: 100%;
    margin: 0 !important;
}

.has-global-padding {
    padding-right: 0;
    padding-left: 0;
}

body .is-layout-constrained> :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    max-width: 100%;
}

.wp-site-blocks {
    padding-top: 0;
    padding-bottom: 00;
}

h1.wp-block-post-title {
    display: none;
}

p {
    font-size: 20px;
    font-weight: 400 !important;
    font-family: "Poppins", sans-serif;
    !important;
    line-height: 24px !important;
}

.logo-outer img {
    max-width: 240px;
}

.nav-outer li a {
    font-size: .875rem;
    line-height: 1.25rem;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: #fff !important;
    font-weight: 300 !important;
    opacity: .9;
}

.header-btn a {
    background: #b62020 !important;
}

.header-outer {
    border-bottom: 1px solid #ffffff26;
}

.banner-outer h2 {
    font-size: .875rem;
    line-height: 1.25rem;
    text-transform: uppercase;
    letter-spacing: .1em;
    background: #b62020;
    display: inline-block;
    font-weight: 400 !important;
    padding: 5px 15px;
    border-radius: 8px;
}

.banner-outer h1 {
    font-size: 4.5rem;
    line-height: 1;
    font-family: Oswald, sans-serif !important;
    margin: 25px 0;
}

.text-accent {
    color: #b62020;
}

.banner-outer p {
    font-size: 1.25rem;
    line-height: 1.75rem !important;
    font-family: Oswald, sans-serif !important;
    padding: 0 57% 25px 0;
}

.banner-outer::after {
    content: "";
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: #17355E;
    background: linear-gradient(90deg, rgba(23, 53, 94, 1) 3%, rgba(255, 255, 255, 0) 100%, rgba(255, 255, 255, 0) 100%);
}

.banner-outer .e-con-inner {
    z-index: 1;
}

.btn1 a {
    background: #b62020 !important;
    font-family: Oswald, sans-serif !important;
    font-size: 18px;
    padding: 22px 30px;
    font-weight: 500 !important;
    border: 1px solid #b62020;
}

.btn1.btn2 a {
    background: transparent !important;
    border: 1px solid #ffffff9c;
}

.licensed-outer {
    margin: 40px 0 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 30px;
}

.licensed-outer li {
    color: #fff;
    font-family: "Source Sans 3", system-ui, sans-serif;
    font-size: .875rem;
    line-height: 1.25rem;
    position: relative;
    padding: 0 0 0 20px;
}

.licensed-outer li::after {
    content: "";
    background: #b62020;
    width: 8px;
    height: 8px;
    position: absolute;
    left: 0;
    top: 7px;
    border-radius: 100%;
}

.banner-outer {
    padding: 70px 15px;
    background: url(/wp-content/uploads/2026/03/hero-bg-gJ58Mru2.jpg) no-repeat top center !important;
    background-size: cover !important;
}

.specialized-outer {
    padding: 80px 15px;
}

.sub-title h3 {
    font-size: .875rem;
    line-height: 1.25rem;
    text-transform: uppercase;
    letter-spacing: .1em;
    font-weight: 400 !important;
}

.title-outer h2 {
    font-size: 3rem;
    line-height: 1;
    font-family: Oswald, sans-serif !important;
    margin: 20px 0;
}

.specialized-inner p {
    font-size: 1.125rem;
    line-height: 1.75rem !important;
    font-family: "Source Sans 3", system-ui, sans-serif !important;
    padding: 0 26%;
}

.specialized-img {
    margin: 40px 0;
}

.specialized-img img {
    height: 350px;
    object-fit: cover;
    width: 100%;
    border-radius: 10px;
    box-shadow: 0px 10px 10px #0000000d;
}

.cnoncrete-inner {
    box-shadow: 0 0 10px #0000001c;
    background: #fff;
    border-radius: 10px;

    border: 1px solid #00000036;
    padding: 35px;
}

.cnoncrete-inner h2 {
    font-size: 1.25rem;
    line-height: 1.75rem;
    margin: 20px 0 15px;
    font-family: Oswald, sans-serif !important;
}

.cnoncrete-inner p {
    font-size: 1.125rem;
    line-height: 1.75rem !important;
    font-family: "Source Sans 3", system-ui, sans-serif !important;
}


.combined .cnoncrete-inner {
    background: #1f3c65;
    border-color: #ffffff24;
    padding: 25px 20px;
}

.bluebonnet {
    padding: 0 0 40px;
}

.cnoncrete-outer.cracks .cnoncrete-inner {
    padding: 25px 25px;
}

.cnoncrete-outer.cracks .cnoncrete-inner p {
    font-size: 14px;
    line-height: 22px !important;
}

.foundation {
    padding: 60px 15px 80px;
}

.found-btns1 a {
    font-size: 20px;
    padding: 25px 45px;
    border: 1px solid #14325d;
    border-radius: 7px;
    background: #14325d !important;
    margin: 0 4px;
}

.found-btns1.found-btns2 a {
    background: #ffffff17 !important;
    border-color: #ffffff69;
}

.found-btns h3 {
    font-size: .875rem;
    line-height: 1.25rem;
    opacity: .5;
    font-family: "Source Sans 3", system-ui, sans-serif !important;
    font-weight: 400 !important;
    margin: 10px 0 0;
    text-align: center;
}

.elementor-element.elementor-element-ed2d194.e-con-full.found-btns.e-flex.e-con.e-child {
    padding: 20px 0 0;
}

.footer-outer {
    padding: 60px 15px 0;
}

.fooer01 img {
    max-width: 300px;
}

.fooer01 p {
    font-size: .875rem;
    padding: 20px 12% 0 0;
}

.fooer02 h2 {
    font-family: Oswald, sans-serif !important;
    font-size: 1.125rem;
    font-weight: 600 !important;
}

.foundation-li,
.address {
    padding: 0;
    list-style: none;
    margin: 20px 0 0;
}

.foundation-li li a,
.address li,
.address li a,
.flex.gap-6 a {
    color: #A4B0C1;
    font-size: 14px;
}

.foundation-li li {
    line-height: 24px;
}

.address li strong {
    font-size: 17px;
    color: #c93636;
    text-align: center;
    width: 15px;
}

.address li {
    display: flex;
    align-items: center;
    gap: 14px;
}

.copyright {
    border-top: 1px solid #ffffff1f;
    padding: 20px 0 30px;
    margin: 40px 0 0;
}

.copyright .fooer01 p {
    padding: 0;
}

.flex.gap-6 a {
    margin: 0 0 0 15px;
}

.nav-outer .sub-menu li a {
    color: #000 !important;
    padding: 10px 13px !important;
}








@media screen and (max-width:1380px) {
    .nav-outer li a {
        font-size: 0.775rem;
        padding: 0 7px !important;
    }

    .banner-outer h1 {
        font-size: 3.5rem;
    }

    .banner-outer p {
        font-size: 1.25rem;
        padding: 0 48% 25px 0;
    }

    .specialized-inner p {
        font-size: 1.125rem;
        padding: 0 20%;
    }

    .title-outer h2 {
        font-size: 2.5rem;
        margin: 20px 0;
    }

















}

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


    .header-btn {
        display: none;
    }

    .banner-outer p {
        font-size: 1.05rem;
        padding: 0 36% 25px 0;
    }

    .specialized-inner p {
        font-size: 1.125rem;
        padding: 0 10%;
    }

    .title-outer h2 {
        font-size: 35px;
        margin: 20px 0;
    }

    .specialized-img img {
        height: 260px;
    }

    .cnoncrete-inner {
        padding: 20px;
    }

    .cnoncrete-inner p {
        font-size: 16px;
        line-height: 20px !important;
    }

    .cnoncrete-inner h2 {
        font-size: 19px;
        margin: 20px 0 4px;
    }

    .combined .cnoncrete-inner {
        padding: 20px 15px;
    }

    .cnoncrete-outer.cracks .cnoncrete-inner {
        padding: 20px 15px;
    }

    .bluebonnet {
        padding: 0 0 10px;
    }

    .specialized-outer {
        padding: 50px 15px;
    }

    .foundation {
        padding: 30px 15px 50px;
    }

    .fooer01 img {
        max-width: 200px;
    }













}

@media screen and (max-width:767px) {
    .logo-outer img {
        max-width: 190px;
    }

    .hfe-nav-menu-icon {
        filter: brightness(0) invert(1);
    }

    .nav-outer {
        position: absolute;
        right: 0;
        width: auto;
        max-width: min-content;
    }

    .nav-outer .hfe-nav-menu {
        width: 40px;
    }


    .nav-outer ul {
        width: 100% !important;
    }

    .nav-outer li a {
        color: #000 !important;
        font-size: 14px;
        padding: 10px !important;
        font-weight: 500 !important;
    }

    .banner-outer h2 {
        font-size: 11px;
        padding: 2px 15px;
    }

    .banner-outer h1 {
        font-size: 48px;
    }

    .banner-outer p {
        font-size: 1.05rem;
        padding: 0 20% 25px 0;
    }

    .btn1 a {
        font-size: 15px;
        padding: 14px 20px;
    }

    .sub-title h3 {
        font-size: 12px;
    }

    .title-outer h2 {
        font-size: 35px;
        margin: 10px 0;
    }

    .specialized-inner p {
        font-size: 16px;
        padding: 0;
        line-height: 20px !important;
    }

    .specialized-img {
        margin: 10px 0;
    }

    .found-btns1 a {
        font-size: 16px;
        padding: 15px 35px;
        margin: 0 4px;
    }

    .privacy {
        display: inline-block;
    }

    .copyright {
        margin: 20px 0 0;
        gap: 0;
    }

    .nav-outer .hfe-nav-menu__submenu-arrow {
        overflow: hidden;
    }

}

@media screen and (max-width:639px) {
    .banner-outer h1 {
        font-size: 38px;
    }

    .banner-outer p {
        font-size: 1.05rem;
        padding: 0 0% 25px 0;
    }

    .banner-outer {
        padding: 40px 15px;
    }

    .specialized-outer {
        padding: 30px 15px;
    }

    .title-outer h2 {
        font-size: 26px;
        margin: 10px 0;
    }





















}

@media screen and (max-width:479px) {
    .banner-outer h1 {
        font-size: 32px;
    }

    .licensed-outer {
        gap: 10px;
        flex-wrap: wrap;
    }

    .title-outer h2 {
        font-size: 24px;
        margin: 10px 0;
    }

    .foundation {
        padding: 20px 15px 30px;
    }

    .logo-outer img {
        max-width: 160px;
    }

}

.seo-footer-section {
    padding-bottom: 50px !important;
}