.maincontent {
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
    border: none;
}


/* -- Soffit-fascia Style -- */

        /* -- General -- */
        :root {
            --rsf_gold: #E09D30;
        }

        .rsf_content-wrapper,
        .rsf_content-wrapper-md,
        .rsf_content-wrapper-sm {
            width: 100%;
            margin-left: auto;
            margin-right: auto;
        }

        .rsf_content-wrapper {
            max-width: 1700px;
        }

        .rsf_content-wrapper-md {
            max-width: 1550px;
        }

        .rsf_content-wrapper-sm {
            max-width: 1400px;
        }

        .sf-section h1,
        .sf-section h2,
        .sf-section h3 {
            font-family: 'Urbanist', 'Montserrat', 'Poppins', sans-serif;
            margin: 20px 0 30px;
            line-height: 1.05em;
        }


        .sf-section h2 {
            font-size: 2.8rem;
            font-weight: 500;
        }
        .rsf_h2-alt {
            position: relative;
            display: block;
            text-align: left;
            padding-left: 70px;
        }

        .rsf_h2-alt::before {
            content: "";
            position: absolute;
            top: 25px;
            left: 0;
            width: 50px;
            height: 6px;
            background-color: var(--rsf_gold);
        }

        .rsf_h2-sub {
            display: block;
            font-size: .6em;
            line-height: 1.05em;
            color: var(--rsf_gold);
            margin-top: 10px;
        }

        .sf-section h3 {
            font-size: 1.33rem;
            font-weight: 700;
            text-transform: uppercase;
        }

        .sf-section p {
            font-size: 1rem;
            line-height: 1.35em;
            font-weight: 500;
        }


        .rsf_p-alt {
            padding-left: 70px;
            margin-left: 0;
        }

        .rsf_text-enlarge {
            font-size: 1.5em;
            font-weight: 700;
        }

        .rsf_text-italic {
            font-style: italic;
            font-weight: 400;
        }

        .rsf_text-thin {
            font-weight: 300;
        }

        .rsf_main-global {
            position: relative;
            padding: 125px 3%;
            z-index: 0;
        }

        .rsf_main-wrapper {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
        }

        .rsf_main-wrapper-reverse {
            flex-direction: row-reverse;
        }

        .rsf_main-left {
            width: 40%;
            padding: 25px;
        }

        .rsf_main-right {
            width: 60%;
            padding: 25px;
        }

        .rsf_main-image {
            display: block;
            max-width: 550px;
            width: 100%;
            height: auto;
            margin: 20px auto;
            background-color: #eee;
            border-radius: 50%;
        }

        .rsf_main-text-center {
            text-align: center;
        }

        /* -- Soffit/Fascia - Hero -- */

        .rsf_hero-global {
            padding-top: 100px;
            padding-bottom: 100px;
            background-color: #eee;
            background-image: linear-gradient(180deg, rgba(255, 255, 255, .85) 15%, rgba(255, 255, 255, .15) 85%), url(/imageserver/Reusable/SoffitFascia/rsf_intro_bg.webp);
            background-size: cover;
            background-position: center;
            text-align: center;
        }

        .rsf_hero-line {
            width: 100%;
            height: 4px;
            background: linear-gradient(90deg, transparent, var(--rsf_gold), transparent);
            margin: 0 auto;
            border: none;
            -webkit-animation: lineExpand 1s ease-in-out .75s backwards;
            animation: lineExpand 1s ease-in-out .75s backwards;
        }

        .rsf_hero-wrapper h1 {
            font-size: 3rem;
            line-height: 1.05em;
            color: #111;
            font-weight: 300;
            margin: 50px auto;
            -webkit-animation: fadeInFromLeft 1s ease-in-out .15s backwards;
            animation: fadeInFromLeft 1s ease-in-out .15s backwards;
        }

        .rsf_h1-highlight {
            font-weight: 700;
        }

        .rsf_h1-company {
            display: block;
            font-size: .6em;
            line-height: 1.05em;
            margin-top: 20px;
            font-weight: 300;
            font-style: italic;
            -webkit-animation: fadeInFromRight 1s ease-in-out 1.15s backwards;
            animation: fadeInFromRight 1s ease-in-out 1.15s backwards;
        }

        @keyframes lineExpand {
            from {
                width: 0;
            }

            to {
                width: 100%;
            }
        }

        @keyframes fadeInFromLeft {
            from {
                opacity: 0;
                transform: translateX(-20px);
            }

            to {
                opacity: 1;
                transform: translateX(0);
            }
        }

        @keyframes fadeInFromRight {
            from {
                opacity: 0;
                transform: translateX(20px);
            }

            to {
                opacity: 1;
                transform: translateX(0);
            }
        }



        /* -- Soffit/Fascia - Intro -- */

        .rsf_intro-wrapper {
            position: relative;
            max-width: 1250px;
            width: 95%;
            margin: -50px auto 0;
            padding: 40px 30px;
            border-radius: 10px;
            background: linear-gradient(135deg, #050505 40%, #111 40%);
            color: #fff;
            font-style: italic;
            z-index: 0;
        }

        .rsf_intro-wrapper::after {
            content: "";
            position: absolute;
            top: 10px;
            bottom: 10px;
            left: 10px;
            right: 10px;
            border-radius: 10px;
            border: 2px solid var(--rsf_gold);
            z-index: -1;
        }


        /* -- Soffit/Fascia - About -- */

        .rsf_about-global {
            z-index: 1;
        }

        .rsf_about-list {
            list-style: none;
            margin: 50px auto 20px;
            padding: 0;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
        }

        .rsf_about-item {
            max-width: 600px;
            width: 49%;
            margin: 20px .5%;
            padding: 0;
            text-align: center;
            background-color: #f6f6f6;
            box-shadow: 0 5px 5px rgba(0, 0, 0, .25);
            border-radius: 10px;
        }

        .rsf_about-header {
            position: relative;
            background-size: cover;
            background-position: center;
            background-color: #eee;
            height: 350px;
        }

        .rsf_about-header::after {
            content: "";
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translate(-50%, 50%);
            width: 80px;
            height: 10px;
            background-color: var(--rsf_gold);
        }

        #rsf_about_soffit {
            background-image: url(/imageserver/Reusable/SoffitFascia/about-soffit.webp);
        }

        #rsf_about_fascia {
            background-image: url(/imageserver/Reusable/SoffitFascia/about-fascia.webp);
        }

        .rsf_about-header h3 {
            position: absolute;
            left: 20px;
            bottom: 20px;
            background-color: #111;
            color: #fff;
            margin: 0;
            padding: 20px;
        }

        .rsf_about-img {
            display: block;
            max-width: 600px;
            width: 100%;
            height: auto;
            margin: 0 auto;
            border-radius: 10px 10px 0 0;
        }

        .rsf_about-body {
            padding: 60px 30px;
        }

        .rsf_about-body p {
            font-size: .95rem;
        }



        /* -- Soffit/Fascia - Issues -- */

        .rsf_issues-global.rsf_main-global {
            background-color: #353535;
            background-image: url(/imageserver/Reusable/SoffitFascia/rsf_issues_bg.webp);
            background-size: cover;
            background-position: center;
            background-blend-mode: multiply;
            margin-top: -300px;
            padding-top: 250px;
        }

        .rsf_issues-wrapper h2 {
            color: #fff;
        }

        .rsf_issues-list {
            display: flex;
            flex-wrap: wrap;
            margin: 50px auto 20px;
            padding: 0;
            list-style: none;
        }

        .rsf_issues-item {
            display: flex;
            align-items: flex-start;
            width: 32.3333333333%;
            margin: 10px .5%;
            padding: 25px 15px;
            background-color: #fff;
            border-radius: 10px;
            text-align: left;
        }

        .rsf_issues-icon {
            fill: #454545;
            margin: -5px 15px 0 0;
        }

        .rsf_issues-content {
            width: 100%;
        }

        .rsf_issues-content h3 {
            font-size: 1.05rem;
            margin: 0 0 10px;
        }

        .rsf_issues-content p {
            font-size: .9rem;
            margin: 0;
        }



        /* -- Soffit/Fascia - Process -- */

        .rsf_process-global {
            background: linear-gradient(135deg, #050505 10%, #111 10%, #111 75%, #050505 75%);
        }

        .rsf_process-wrapper h2 {
            color: #fff;
        }

        .rsf_process-list {
            list-style: none;
            margin: 50px auto 20px;
            padding: 0;
            display: flex;
            flex-wrap: wrap;
        }

        .rsf_process-item {
            width: 24%;
            margin: 20px .5%;
            padding: 25px 15px;
            border-radius: 10px;
        }

        .rsf_process-num {
            position: relative;
            display: block;
            font-size: 2em;
            margin-bottom: 40px;
            font-weight: 900;
        }

        .rsf_process-num::after {
            content: "";
            position: absolute;
            width: 100%;
            height: 4px;
            background-color: var(--rsf_gold);
            top: 50%;
            left: 0;
            transform: translateY(-50%);
        }

        .rsf_process-num-inner {
            position: relative;
            background-color: #111;
            padding-right: 5px;
            z-index: 1;
        }

        .rsf_process-item h3 {
            margin: 0 0 10px;
            color: #fff;
        }

        .rsf_process-item p {
            font-size: .95rem;
            margin: 0;
            color: #fff;
        }


        /* -- Soffit/Fascia - Hire -- */

        .rsf_hire-global {
            padding-top: 80px;
            padding-bottom: 80px;
        }



        /* -- Responsiveness -- */

        @media (max-width: 1600px) {
            .rsf_hero-global {
                padding-top: 150px;
                padding-bottom: 200px;
            }
        }

        @media (max-width: 1200px) {

            .rsf_issues-item,
            .rsf_process-item {
                width: 49%;
            }
        }

        @media (max-width: 1050px) {
            .rsf_main-wrapper {
                max-width: 981px;
                width: 100%;
                margin-left: auto;
                margin-right: auto;
            }

            .rsf_main-left,
            .rsf_main-right {
                width: 100%;
                padding: 0;
            }

            .rsf_main-right {
                max-width: 981px;
                margin-left: auto;
                margin-right: auto;
            }

            .rsf_main-image {
                max-width: 500px;
                margin-bottom: 40px;
            }
        }

        @media (max-width: 850px) {
            .rsf_about-item {
                width: 100%;
                margin-left: auto;
                margin-right: auto;
            }
        }

        @media (max-width: 750px) {
            .maincontent h2 {
                font-size: 2.4rem;
            }

            .rsf_h2-alt,
            .rsf_p-alt {
                padding-left: 0;
            }

            .rsf_h2-alt::before {
                top: -15px;
            }

            .rsf_main-global {
                padding: 100px 20px;
            }

            .rsf_hero-global {
                padding-top: 120px;
                padding-bottom: 170px;
            }

            .rsf_hero-wrapper h1 {
                font-size: 3rem;
            }

            .rsf_issues-item,
            .rsf_process-item {
                width: 100%;
                margin-left: auto;
                margin-right: auto;
            }
        }

        @media (max-width: 550px) {
            .maincontent h2 {
                font-size: 2rem;
            }

            .rsf_main-text-center {
                text-align: left;
            }

            .rsf_hero-global {
                padding-top: 80px;
                padding-bottom: 130px;
            }

            .rsf_hero-wrapper h1 {
                font-size: 2.4rem;
            }

            .rsf_about-header {
                height: 300px;
            }

            .rsf_about-header h3 {
                font-size: 1.2rem;
            }

            .rsf_about-body {
                text-align: left;
                padding-left: 20px;
                padding-right: 20px;
            }
        }