@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-Regular.ttf') format('truetype'),
        url('fonts/Poppins-Bold.ttf') format('truetype');
    font-weight: normal;
    /* Adjust based on the specific font weight */
    font-style: normal;
}


:root {
    /* Add these styles to your global stylesheet, which is used across all site pages. You only need to do this once. All elements in the library derive their variables and base styles from this central sheet, simplifying site-wide edits. For instance, if you want to modify how your h2's appear across the site, you just update it once in the global styles, and the changes apply everywhere. */
    --primary: #1a2397;
    /* These are highlight colors for text, box edges, ect. */
    /* Color Palette Tool: https://mycolor.space/?hex=%231A2397&sub=1 */
    --primaryLight: #3279e4;
    --secondary: #eeeded;
    --secondaryLight: #aea9ba;
    --headerColor: #ffffff;
    --bodyTextColor: #000000;
    /* global text color */
    --bodyTextColorWhite: #ffffff;
    --navigationBarColor: #1a2397;
    --linkcolor: #262fac;
    /* 13px - 16px */
    --topperFontSize: clamp(0.8125rem, 1.6vw, 1rem);
    /* 31px - 49px */
    --headerFontSize: clamp(1.9375rem, 3.9vw, 3.0625rem);
    --bodyFontSize: 1rem;
    /* 60px - 100px top and bottom */
    --sectionPadding: clamp(3.75rem, 7.82vw, 6.25rem) 1rem;
}


body {
    font-family: 'Poppins', sans-serif;
    line-height: 1.6;
    margin: 0;
    padding: 0;
    color: #000;
    margin: 0;
    padding: 0;

    /* Set text color*/
}


*,
*:before,
*:after {
    /* prevents padding from affecting height and width */
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

.bcw-topper {
    font-size: var(--topperFontSize);
    line-height: 1.2em;
    text-transform: uppercase;
    text-align: inherit;
    letter-spacing: .1em;
    font-weight: 700;
    /* color: var(--headerColor); to have it match global color style*/
    color: #000000;
    margin-bottom: 0.25rem;
    display: block;
}

.bcw-title {
    font-size: var(--headerFontSize);
    font-weight: 900;
    line-height: 1.2em;
    text-align: inherit;
    max-width: 43.75rem;
    margin: 0 0 1rem 0;
    color: var(--primary);
    position: relative;
}

.bcw-text {
    font-size: var(--bodyFontSize);
    line-height: 1.5em;
    text-align: inherit;
    width: 100%;
    max-width: 40.625rem;
    margin: 0;
    color: var(--bodyTextColor);
}

/* Change text color */
.bcw-color {
    color: var(--primary);
}

/* Global Decorative Line */
.decorative-line {
    border-top: 2px solid var(--primary);
    width: 75vw;
    margin: 20px 0;
    position: relative;
}

/* Global Decorative Line */
.decorative-line-section {
    border-top: 2px solid var(--primary);
    width: 100%;
    margin: 20px 0;
    position: relative;
}


/*-- -------------------------- -->
<--    Other Backgrounds        -->
<--- -------------------------- -*/

/* Apply to pages */
.about-page {
    background-color: #fff8f8;
}

.services-page {
    background-color: #fff8f8;
}

.contact-page {
    background-color: #fff8f8;
}

.portfolio-page {
    background-color: #fff8f8;
}

.home-page {
    background-color: #fff8f8;
}

.about-websites-page {
    background-color: #fff8f8;
}

/* Floating Images (Image width 640px) */
/* Desktop */
@media only screen and (min-width: 1201px) {
    .floating-image {
        position: absolute;
        /* Position the image absolutely within the container */
        top: 15%;
        /* Adjust as needed */
        right: 2%;
        /* Adjust as needed */
        width: 40%;
        /* Adjust size as needed */
        height: auto;
        /* Maintain aspect ratio */
        z-index: 10;
        /* Ensure it is on top of other content */
    }
}

/* Floating Images */
/* Tablet */
@media only screen and (min-width: 768px) and (max-width: 1200px) {
    .floating-image {
        position: absolute;
        /* Position the image absolutely within the container */
        top: 15%;
        /* Adjust as needed */
        right: 2%;
        /* Adjust as needed */
        width: 43%;
        /* Adjust size as needed */
        height: auto;
        /* Maintain aspect ratio */
        z-index: 10;
        /* Ensure it is on top of other content */
    }
}

/* Floating Images */
/* Cell Phone */
@media only screen and (max-width: 767px) {
    .floating-image {
        position: absolute;
        /* Position the image absolutely within the container */
        bottom: 0;
        /* Adjust as needed */
        right: 15%;
        /* Adjust as needed */
        width: 70%;
        /* Adjust size as needed */
        height: auto;
        /* Maintain aspect ratio */
        z-index: 10;
        /* Ensure it is on top of other content */
    }
}

/* Floating Images */
/* Cell Phone */
@media only screen and (max-width: 400px) {
    .floating-image {
        position: absolute;
        /* Position the image absolutely within the container */
        bottom: 0;
        /* Adjust as needed */
        right: 10%;
        /* Adjust as needed */
        width: 80%;
        /* Adjust size as needed */
        height: auto;
        /* Maintain aspect ratio */
        z-index: 10;
        /* Ensure it is on top of other content */
    }
}

/*-- -------------------------- -->
  <---     Standard Navigation    -->
  <---        Plus Dropdown       -->
  <--- -------------------------- -*/

body,
html {
    /* reset margin and padding so there's no gap between the nav and the screen edges */
    margin: 0;
    padding: 0;
}

/* Mobile - 1023px */
@media only screen and (max-width: 63.9375rem) {
    body.bcw-open {
        overflow: hidden;
    }

    #bcw-navigation {
        width: 100%;
        padding: 0.75rem 1rem;
        /* prevents padding and border from affecting height and width */
        box-sizing: border-box;
        background-color: var(--navigationBarColor);
        position: fixed;
        z-index: 100;
    }

    #bcw-navigation:after {
        /* on hover green bar */
        content: "";
        width: 40%;
        max-width: 9.125rem;
        height: 100%;
        /* background: var(--primary); color behind logo */
        opacity: 1;
        position: absolute;
        display: block;
        top: 0;
        left: 0%;
        z-index: -1;
        transition:
            width 0.2s,
            max-width 0.3s,
            background-color 0.3s;
    }

    #bcw-navigation:before {
        /* grey blurrd overlay */
        content: "";
        width: 100%;
        height: 0vh;
        background: rgba(0, 0, 0, 0.6);
        -webkit-backdrop-filter: blur(10px);
        backdrop-filter: blur(10px);
        opacity: 0;
        position: absolute;
        display: block;
        top: 100%;
        right: 0;
        z-index: -11;
        transition:
            height 0.5s,
            opacity 0.3s;
    }

    #bcw-navigation.bcw-active:after {
        width: 100%;
        max-width: 100%;
        background-color: var(--navigationBarColor);
    }

    #bcw-navigation.bcw-active:before {
        height: 150vh;
        opacity: 1;
    }

    #bcw-navigation.bcw-active .bcw-ul-wrapper {
        opacity: 1;
        transform: scaleY(1);
        transition-delay: 0.2s;
    }

    #bcw-navigation.bcw-active .bcw-li {
        transform: translateY(0);
        opacity: 1;
    }

    #bcw-navigation .bcw-logo {
        width: 40%;
        max-width: 9.125rem;
        height: 100%;
        padding: 0.75rem 1rem;
        /* prevents padding and border from affecting height and width */
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 10;
    }

    #bcw-navigation .bcw-logo img {
        width: 100%;
        height: 100%;
        /* ensures the image never overflows the container. It stays contained within it's width and height and expands to fill it then stops once it reaches an edge */
        object-fit: contain;
    }

    #bcw-navigation .bcw-toggle {
        /* 44px - 48px */
        width: clamp(2.75rem, 6vw, 3rem);
        height: clamp(2.75rem, 6vw, 3rem);
        margin: 0 0 0 auto;
        border-radius: 0.25rem;
        background-color: var(--navigationBarColor);
        border: none;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    #bcw-navigation .bcw-active .bcw-line1 {
        top: 50%;
        transform: translate(-50%, -50%) rotate(225deg);
    }

    #bcw-navigation .bcw-active .bcw-line2 {
        top: 50%;
        transform-origin: center;
        transform: translate(-50%, -50%) translateY(0) rotate(-225deg);
    }

    #bcw-navigation .bcw-active .bcw-line3 {
        bottom: 100%;
        opacity: 0;
    }

    #bcw-navigation .bcw-box {
        /* 24px - 28px */
        width: clamp(1.5rem, 2vw, 1.75rem);
        /* 14px - 16px */
        height: clamp(0.875rem, 1.5vw, 1rem);
        position: relative;
    }

    #bcw-navigation .bcw-line {
        width: 100%;
        height: 2px;
        border-radius: 2px;
        background-color: #fff;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }

    #bcw-navigation .bcw-line1 {
        top: 0;
        transform-origin: center;
        transition:
            transform 0.5s,
            top 0.3s,
            left 0.3s;
        animation-duration: 0.7s;
        animation-timing-function: ease;
        animation-fill-mode: forwards;
        animation-direction: normal;
    }

    #bcw-navigation .bcw-line2 {
        top: 50%;
        transform: translateX(-50%) translateY(-50%);
        transition:
            top 0.3s,
            left 0.3s,
            transform 0.5s;
        animation-duration: 0.7s;
        animation-timing-function: ease;
        animation-fill-mode: forwards;
        animation-direction: normal;
    }

    #bcw-navigation .bcw-line3 {
        bottom: 0;
        transition:
            bottom 0.3s,
            opacity 0.3s;
    }

    #bcw-navigation .bcw-ul-wrapper {
        width: 100%;
        opacity: 0;
        background-color: #fff;
        box-shadow: inset rgba(0, 0, 0, 0.2) 0px 8px 24px;
        overflow: hidden;
        position: absolute;
        top: 100%;
        left: 0;
        z-index: -1;
        transform: scaleY(0);
        transform-origin: top;
        transition:
            transform 0.4s,
            opacity 0.3s;
    }

    #bcw-navigation .bcw-ul {
        margin: 0;
        padding: 3rem 0 3rem 0;
        width: 100%;
        height: auto;
        max-height: 65vh;
        overflow: scroll;
        display: flex;
        justify-content: flex-start;
        flex-direction: column;
        align-items: center;
        gap: 1.25rem;
    }

    #bcw-navigation .bcw-li {
        text-align: center;
        list-style: none;
        margin-right: 0;
        /* transition from these values */
        transform: translateY(-4.375rem);
        opacity: 0;
        transition:
            transform 0.6s,
            opacity 0.9s;
    }


    #bcw-navigation .bcw-li:nth-of-type(1) {
        transition-delay: 0.05s;
    }

    #bcw-navigation .bcw-li:nth-of-type(2) {
        transition-delay: 0.1s;
    }

    #bcw-navigation .bcw-li:nth-of-type(3) {
        transition-delay: 0.15s;
    }

    #bcw-navigation .bcw-li:nth-of-type(4) {
        transition-delay: 0.2s;
    }

    #bcw-navigation .bcw-li:nth-of-type(5) {
        transition-delay: 0.25s;
    }

    #bcw-navigation .bcw-li:nth-of-type(6) {
        transition-delay: 0.3s;
    }

    #bcw-navigation .bcw-li:nth-of-type(7) {
        transition-delay: 0.35s;
    }

    #bcw-navigation .bcw-li:nth-of-type(8) {
        transition-delay: 0.4s;
    }

    #bcw-navigation .bcw-li:nth-of-type(9) {
        transition-delay: 0.45s;
    }

    #bcw-navigation .bcw-li:nth-of-type(10) {
        transition-delay: 0.5s;
    }

    #bcw-navigation .bcw-li:nth-of-type(11) {
        transition-delay: 0.55s;
    }

    #bcw-navigation .bcw-li:nth-of-type(12) {
        transition-delay: 0.6s;
    }

    #bcw-navigation .bcw-li:nth-of-type(13) {
        transition-delay: 0.65s;
    }

    /* Mobile Link Text */
    #bcw-navigation .bcw-li-link {
        /* 16px - 24px */
        font-size: clamp(1rem, 2.5vw, 1.5rem);
        line-height: 1.2em;
        text-decoration: none;
        margin: 0;
        color: var(--bodyTextColor);
        display: inline-block;
        position: relative;
    }

    /* Mobile Link Text */
    #bcw-navigation .bcw-li-link-dropdown {
        /* 16px - 24px */
        font-size: clamp(1rem, 2.5vw, 1.5rem);
        line-height: 1.2em;
        text-decoration: none;
        margin: 0;
        color: var(--bodyTextColor);
        display: inline-block;
        position: relative;
    }

    #bcw-navigation .bcw-li-link:before {
        /* active state underline */
        content: "";
        width: 100%;
        height: 1px;
        background: currentColor;
        opacity: 1;
        position: absolute;
        display: none;
        bottom: -0.125rem;
        left: 0;
    }

    #bcw-navigation .bcw-li-link.bcw-active:before {
        display: block;
    }

    #bcw-navigation .bcw-button-solid {
        display: none;
    }
}

/*-- -------------------------- -->
  <---     Navigation Dropdown    -->
  <--- -------------------------- -*/

/* Mobile - 1023px */
@media only screen and (max-width: 63.9375rem) {
    #bcw-navigation .bcw-li {
        text-align: center;
        width: 100%;
        display: block;
    }

    #bcw-navigation .bcw-dropdown {
        position: relative;
        color: var(--bodyTextColor);
    }

    #bcw-navigation .bcw-dropdown.bcw-active .bcw-drop-ul {
        height: auto;
        opacity: 1;
        visibility: visible;
        margin: 0.75rem 0 0 0;
        padding: 0.75rem 0;
    }

    #bcw-navigation .bcw-dropdown.bcw-active .bcw-drop-link {
        opacity: 1;
    }

    #bcw-navigation .bcw-dropdown .bcw-li-link {
        position: relative;
        transition: opacity 0.3s;
    }

    #bcw-navigation .bcw-drop-icon {
        width: 0.9375rem;
        height: auto;
        position: absolute;
        top: 50%;
        right: -1.25rem;
        transform: translateY(-50%);
    }

    #bcw-navigation .bcw-drop-ul {
        width: 100%;
        height: 0;
        margin: 0;
        padding: 0;
        background-color: var(--headerColor);
        overflow: hidden;
        opacity: 0;
        visibility: hidden;
        display: flex;
        justify-content: flex-start;
        flex-direction: column;
        align-items: center;
        gap: 0.75rem;
        transition:
            padding 0.3s,
            margin 0.3s,
            height 0.3s,
            opacity 0.3s,
            visibility 0.3s;
    }

    #bcw-navigation .bcw-drop-li {
        list-style: none;
    }

    /* Mobile menu dropdown link text */
    #bcw-navigation .bcw-li-link.bcw-drop-link {
        /* 14px - 16px */
        font-size: clamp(0.875rem, 2vw, 1.25rem);
        color: var(--bodyTextColor)
    }
}

/* Desktop - 1024px */
@media only screen and (min-width: 64rem) {
    #bcw-navigation .bcw-dropdown {
        position: relative;
    }

    #bcw-navigation .bcw-dropdown:hover {
        cursor: pointer;
    }

    #bcw-navigation .bcw-dropdown:hover .bcw-drop-ul {
        transform: scaleY(1);
        opacity: 1;
        visibility: visible;
    }

    #bcw-navigation .bcw-dropdown:hover .bcw-drop-li {
        opacity: 1;
        transform: translateY(0);
    }

    #bcw-navigation .bcw-drop-icon {
        width: 0.9375rem;
        height: auto;
        display: inline-block;
    }

    #bcw-navigation .bcw-drop-ul {
        min-width: 12.5rem;
        margin: 0;
        padding: 0;
        background-color: #fff;
        overflow: hidden;
        opacity: 0;
        visibility: hidden;
        border-bottom: 5px solid var(--primary);
        /* if you have 8 or more links in your dropdown nav, uncomment the columns property to make the list into 2 even columns. Change it to 3 or 4 if you need extra columns. Then remove the transition delays on the bcw-drop-li so they don't have weird scattered animations */
        position: absolute;
        top: 100%;
        z-index: -100;
        transform: scaleY(0);
        transform-origin: top;
        transition:
            transform 0.3s,
            visibility 0.3s,
            opacity 0.3s;
    }

    #bcw-navigation .bcw-drop-li {
        list-style: none;
        font-size: 1rem;
        text-decoration: none;
        opacity: 0;
        width: 100%;
        height: auto;
        color: var(--bodyTextColor);
        display: block;
        transform: translateY(-0.625rem);
        transition:
            opacity 0.6s,
            transform 0.6s;
    }

    #bcw-navigation .bcw-drop-li:nth-of-type(1) {
        transition-delay: 0.05s;
    }

    #bcw-navigation .bcw-drop-li:nth-of-type(2) {
        transition-delay: 0.1s;
    }

    #bcw-navigation .bcw-drop-li:nth-of-type(3) {
        transition-delay: 0.15s;
    }

    #bcw-navigation .bcw-drop-li:nth-of-type(4) {
        transition-delay: 0.2s;
    }

    #bcw-navigation .bcw-drop-li:nth-of-type(5) {
        transition-delay: 0.25s;
    }

    #bcw-navigation .bcw-drop-li:nth-of-type(6) {
        transition-delay: 0.3s;
    }

    #bcw-navigation .bcw-drop-li:nth-of-type(7) {
        transition-delay: 0.35s;
    }

    #bcw-navigation .bcw-drop-li:nth-of-type(8) {
        transition-delay: 0.4s;
    }

    #bcw-navigation .bcw-drop-li:nth-of-type(9) {
        transition-delay: 0.45s;
    }

    #bcw-navigation .bcw-drop-li:nth-of-type(10) {
        transition-delay: 0.5s;
    }

    #bcw-navigation .bcw-drop-li:nth-of-type(11) {
        transition-delay: 0.55s;
    }

    #bcw-navigation .bcw-drop-li:nth-of-type(12) {
        transition-delay: 0.6s;
    }

    #bcw-navigation .bcw-drop-li:nth-of-type(13) {
        transition-delay: 0.65s;
    }

    #bcw-navigation .bcw-li-link.bcw-drop-link {
        white-space: nowrap;
        width: 100%;
        font-size: 1rem;
        line-height: 1.5em;
        text-decoration: none;
        padding: 0.75rem;
        /* prevents padding and border from affecting height and width */
        box-sizing: border-box;
        color: var(--bodyTextColor);
        display: block;
        transition:
            color 0.3s,
            background-color 0.3s;
    }

    #bcw-navigation .bcw-li-link.bcw-drop-link:hover {
        background-color: #f7f7f7;
    }

    #bcw-navigation .bcw-li-link.bcw-drop-link:before {
        display: none;
    }
}

/*-- -------------------------- -->
  <---     Desktop Navigation     -->
  <--- -------------------------- -*/

/* Small Desktop - 1024px */
@media only screen and (min-width: 64rem) {
    #bcw-navigation {
        width: 100%;
        /* 23px - 420px */
        padding: 0rem 1rem 0rem clamp(14.6875rem, 23vw, 26.25rem);
        /* prevents padding and border from affecting height and width */
        box-sizing: border-box;
        background-color: var(--navigationBarColor);
        display: flex;
        justify-content: space-between;
        align-items: center;
        position: fixed;
        z-index: 10000;
    }

    #bcw-navigation .bcw-toggle {
        display: none;
    }

    #bcw-navigation .bcw-logo {
        width: 18.4%;
        max-width: 20rem;
        height: 100%;
        /* 32px - 64px */
        padding: 1rem clamp(2rem, 4vw, 4rem);
        /* prevents padding and border from affecting height and width */
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 100;
    }

    #bcw-navigation .bcw-logo img {
        width: 100%;
        height: 100%;
        /* ensures the image never overflows the container. It stays contained within it's width and height and expands to fill it then stops once it reaches an edge */
        object-fit: contain;
    }

    #bcw-navigation .bcw-ul {
        margin: 0;
        padding: 0;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        /* 20px - 36px */
        gap: clamp(1.25rem, 2.6vw, 2.25rem);
    }

    #bcw-navigation .bcw-li {
        list-style: none;
        padding: 2rem 0;
        /* prevent flexbox from squishing it */
        flex: none;
    }

    #bcw-navigation .bcw-li:last-of-type {
        /* pushes the button to the far roght */
        margin-left: auto;
    }

    #bcw-navigation .bcw-li-link {
        /* 14px - 16px */
        font-size: clamp(0.875rem, 1vw, 1rem);
        line-height: 1.5em;
        text-decoration: none;
        margin: 0;
        color: var(--bodyTextColorWhite);
        display: block;
        position: relative;
    }

    #bcw-navigation .bcw-li-link-dropdown {
        /* 14px - 16px */
        font-size: clamp(0.875rem, 1vw, 1rem);
        line-height: 1.5em;
        text-decoration: none;
        margin: 0;
        color: var(--bodyTextColorWhite);
        display: block;
        position: relative;
    }

    #bcw-navigation .bcw-li-link:hover:before {
        width: 100%;
    }

    #bcw-navigation .bcw-li-link.bcw-active:before {
        width: 100%;
    }

    #bcw-navigation .bcw-li-link:before {
        /* active state underline */
        content: "";
        width: 0%;
        height: 2px;
        background: var(--primaryLight);
        opacity: 1;
        position: absolute;
        display: block;
        bottom: 0rem;
        left: 0;
        transition: width 0.3s;
    }

    #bcw-navigation .bcw-button-solid {
        font-size: 1rem;
        /* 46px - 56px */
        line-height: clamp(2.875em, 5.5vw, 3.5em);
        text-decoration: none;
        font-weight: 700;
        text-align: center;
        margin: 0;
        color: #fff;
        min-width: 9.375rem;
        padding: 0 1.5rem;
        background-color: var(--primary);
        border-radius: 0.25rem;
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box;
    }

    #bcw-navigation .bcw-button-solid:before {
        content: "";
        position: absolute;
        height: 100%;
        width: 0%;
        background: #000;
        opacity: 1;
        top: 0;
        left: 0;
        z-index: -1;
        border-radius: 0.25rem;
        transition: width 0.3s;
    }

    #bcw-navigation .bcw-button-solid:hover:before {
        width: 100%;
    }

    #bcw-navigation .bcw-nav-button {
        margin: 0 0 0 auto;
    }
}

/*-- -------------------------- -->
<---          Footer            -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #bcw-footer-309 {
        padding: var(--sectionPadding);
        background-color: var(--navigationBarColor);
        /* Navigation Links */
    }

    #bcw-footer-309 .bcw-container {
        width: 100%;
        /* reset on desktop */
        max-width: 43.75rem;
        margin: auto;
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        flex-wrap: wrap;
        gap: 2.5rem;
    }

    #bcw-footer-309 .bcw-logo-group {
        /* takes up all the space, lets the other ul's wrap below it */
        width: 100%;
        position: relative;
    }

    #bcw-footer-309 .bcw-logo {
        width: 11.125rem;
        height: auto;
        display: block;
        margin-bottom: 1.5rem;
    }

    #bcw-footer-309 .bcw-logo-img {
        width: 100%;
        height: auto;
    }

    #bcw-footer-309 .bcw-logo-img.dark {
        display: none;
    }

    #bcw-footer-309 .bcw-text {
        /* 14px - 16px */
        font-size: clamp(0.875rem, 2.5vw, 1rem);
        line-height: 1.5em;
        margin: 0;
        width: 78%;
        /* changes to 305px at desktop */
        max-width: 26.25rem;
        color: var(--headerColor);
    }

    #bcw-footer-309 .bcw-nav {
        width: 100%;
        padding: 0;
        margin: 0;
        display: flex;
        justify-content: center;
        align-items: flex-start;
        flex-direction: column;
        gap: 0.75rem;
    }

    #bcw-footer-309 .bcw-nav-li {
        list-style: none;
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
    }

    #bcw-footer-309 .bcw-header {
        font-size: 1rem;
        line-height: 1.2em;
        text-transform: uppercase;
        font-weight: 700;
        margin-bottom: 0.75rem;
        color: var(--headerColor);
        position: relative;
        display: block;
        border-bottom: solid 2px var(--primaryLight);
    }

    #bcw-footer-309 .bcw-nav-link {
        font-size: 1rem;
        text-decoration: none;
        line-height: 1.5em;
        color: var(--headerColor);
        position: relative;
        display: inline-block;
        transition: color 0.3s;
    }

    #bcw-footer-309 .bcw-nav-link:before {
        /* underline */
        content: "";
        width: 0%;
        height: 0.125rem;
        background: var(--primaryLight);
        opacity: 1;
        position: absolute;
        display: block;
        bottom: -0.125rem;
        left: 0;
        transition: width 0.3s;
    }

    #bcw-footer-309 .bcw-nav-link:hover:before {
        width: 100%;
    }

    #bcw-footer-309 .bcw-text {
        font-size: 1rem;
        text-decoration: none;
        line-height: 1.5em;
        color: var(--headerColor);
        position: relative;
        display: inline-block;
        transition: color 0.3s;
    }

    #bcw-footer-309 .bcw-icon {
        width: 1.5rem;
        height: auto;
        margin-right: 0.75rem;
    }

    #bcw-footer-309 .bcw-bottom {
        max-width: 80rem;
        margin: auto;
        margin-top: 2rem;
        padding-top: 1.5rem;
        border-top: 1px solid var(--primaryLight);
        display: flex;
        justify-content: center;
        align-items: center;
    }

    #bcw-footer-309 .bcw-copyright,
    #bcw-footer-309 .bcw-copyright-link {
        font-size: 1rem;
        line-height: 1.5em;
        color: var(--headerColor);
    }

    #bcw-footer-309 .bcw-copyright-link {
        text-decoration: none;
        transition: color 0.3s;
    }

    #bcw-footer-309 .bcw-copyright-link:hover {
        color: var(--primaryLight);
    }
}

/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
    #bcw-footer-309 .bcw-container {
        row-gap: 0;
        flex-direction: row;
        justify-content: space-between;
        row-gap: 2.5rem;
    }

    #bcw-footer-309 .bcw-nav {
        width: auto;
    }
}

/* Small Desktop - 1024px */
@media only screen and (min-width: 64rem) {
    #bcw-footer-309 .bcw-container {
        max-width: 80rem;
        flex-wrap: nowrap;
        /* align everything to the right */
        justify-content: flex-end;
        column-gap: 5.25rem;
    }

    #bcw-footer-309 .bcw-logo-group {
        width: 30%;
        max-width: 24.1875rem;
        /* pushes away from everything to the right */
        margin-right: auto;
    }

    #bcw-footer-309 .bcw-text {
        width: 100%;
    }
}



/*-- -------------------------- -->
<---       Side By Side         -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {

    #RPsbs-248,
    #RPsbsr-248 {
        padding: 0 1em;
        padding-bottom: 10%;
        position: relative;
        z-index: 1;
        background-color: var(--navigationBarColor);

    }

    #RPsbs-248 .bcw-container,
    #RPsbsr-248 .bcw-container {
        width: 100%;
        /* changes to 1280px on tablet */
        max-width: 34.375rem;
        padding: var(--sectionPadding);
        padding-left: 0;
        padding-right: 0;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 108px */
        position: relative;
        gap: 10%;
    }

    #RPsbs-248 .bcw-content,
    #RPsbsr-248 .bcw-content {
        /* set text align to left if content needs to be left aligned */
        text-align: left;
        width: 100%;
        /* changes at tablet */
        max-width: 27.125rem;
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: flex-start;

    }

    #RPsbs-248 .bcw-title,
    #RPsbsr-248 .bcw-title {
        max-width: 20ch;
        color: var(--bodyTextColorWhite);
        position: relative;
        /* Ensure the pseudo-element is positioned relative to this element */
        padding-left: 20px;
        /* Space for the vertical line */
    }


    #RPsbs-248 .bcw-text,
    #RPsbsr-248 .bcw-text {
        margin-bottom: 1rem;
        opacity: 0.8;
        color: var(--bodyTextColorWhite);
    }

    #RPsbs-248 .bcw-title,
    #RPsbsr-248 .bcw-title {
        padding-bottom: 2%;
        color: var(--bodyTextColorWhite);
        text-align: left;
    }

    #RPsbs-248 .bcw-title::before,
    #RPsbsr-248 .bcw-title::before {
        content: '';
        /* No text content, just the line */
        position: absolute;
        /* Position it absolutely within the parent */
        left: 0;
        /* Align to the left edge of the parent */
        top: 0;
        bottom: 0;
        /* Stretch to the bottom of the parent element */
        width: 2px;
        /* Width of the vertical line */
        background-color: var(--primaryLight);
        /* Color of the vertical line */
    }


    #RPsbsr-248 .bcw-topper {
        color: var(--bodyTextColorWhite);
    }

    #RPsbs-248 .bcw-text:last-of-type,
    #RPsbsr-248 .bcw-text:last-of-type {
        margin-bottom: 2rem;
    }

    #RPsbs-248 .bcw-button-solid,
    #RPsbsr-248 .bcw-button-solid {
        font-size: 1rem;
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        text-decoration: none;
        font-weight: 700;
        text-align: center;
        margin: 0;
        color: var(--bodyTextColorWhite);
        min-width: 9.375rem;
        padding: 0 1.5rem;
        background-color: var(--bodyTextColor);
        border-radius: 0.25rem;
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box;

    }

    #RPsbs-248 .bcw-button-solid:before,
    #RPsbsr-248 .bcw-button-solid:before {
        content: "";
        position: absolute;
        height: 100%;
        width: 0%;
        background: var(--primaryLight);
        opacity: 1;
        top: 0;
        left: 0;
        z-index: -1;
        border-radius: 0.25rem;
        transition: width 0.3s;
    }

    #RPsbs-248 .bcw-button-solid:hover,
    #RPsbsr-248 .bcw-button-solid:hover {
        color: var(--bodyTextColor);
    }

    #RPsbs-248 .bcw-button-solid:hover:before,
    #RPsbsr-248 .bcw-button-solid:hover:before {
        width: 100%;
    }

    #RPsbs-248 .bcw-picture,
    #RPsbsr-248 .bcw-picture {
        width: 100%;
        max-width: 27.125rem;
        margin: 0;
        position: relative;
        display: block;
        /* width divided by height */
        aspect-ratio: 1.7;
        /* prevents border from adding to height and width */
        box-sizing: border-box;
    }

    #RPsbs-248 .bcw-picture img,
    #RPsbsr-248 .bcw-picture img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        object-fit: cover;
    }
}

@media only screen and ((min-width: 0rem) and (max-width: 48rem)) {

    #RPsbs-248 .bcw-button-solid,
    #RPsbsr-248 .bcw-button-solid {
        align-self: center;
    }

    #RPsbs-248 .bcw-content,
    #RPsbsr-248 .bcw-content {
        padding-bottom: 10%;
    }

}


/* Tablet - 768px */
@media only screen and (min-width: 48rem) {

    #RPsbs-248,
    #RPsbsr-248 {
        padding: 0 1em;

    }

    #RPsbs-248 .bcw-container,
    #RPsbsr-248 .bcw-container {
        max-width: 80rem;
        flex-direction: row;
        justify-content: center;
        align-items: center;
    }

    #RPsbs-248 .bcw-content,
    #RPsbsr-248 .bcw-content {
        max-width: 33.875rem;
        margin: 0;
        width: 45%;
    }

    #RPsbs-248 .bcw-picture,
    #RPsbsr-248 .bcw-picture {
        /* 344px - 434px */
        width: clamp(21.5rem, 37.5vw, 27.125rem);
        flex: none;
    }


}


/*-- -------------------------- -->
<---          Services          -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #services-690 {
        padding: var(--sectionPadding);
        padding-bottom: 0;
        padding-top: 5%;
    }

    #services-690 .bcw-container {
        width: 100%;
        max-width: 34.375rem;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: clamp(3rem, 6vw, 4rem);
    }

    #services-690 .bcw-content {
        text-align: left;
        width: 60%;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    #services-690 .bcw-text {
        text-align: left;
    }

    #services-690 .bcw-text a {
        color: var(--linkcolor);
        text-decoration: none;
        font-weight: bold;
    }

    #services-690 .bcw-card-group {
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        flex-direction: column;
        row-gap: 1rem;
    }

    #services-690 .bcw-item {
        list-style: none;
        width: 100%;
        padding: clamp(1.25rem, 4vw, 2.5rem) 1.5rem;
        box-sizing: border-box;
        transition:
            background-color 0.3s,
            transform 0.3s,
            box-shadow 0.3s;
        background-color: var(--secondary);
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        /* Align children to take full height */
    }

    #services-690 .bcw-link {
        text-decoration: none;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
    }

    #services-690 .bcw-picture {
        width: 4rem;
        height: 4rem;
        margin: 0;
        margin-bottom: 1.5rem;
        display: flex;
        justify-content: center;
        align-items: center;
        border-radius: 50%;
        background-color: #fff;
        box-shadow: 0px 12px 30px rgba(26, 26, 26, 0.04);
        position: relative;
        z-index: 1;
        border: 2px solid black;
    }

    #services-690 .bcw-icon {
        height: 2rem;
        width: auto;
    }

    #services-690 .bcw-h3 {
        font-size: 1.25rem;
        font-weight: 900;
        text-align: center;
        line-height: 1.2em;
        margin: 0;
        margin-bottom: 0.75rem;
        color: var(--bodyTextColor);
        transition: color 0.3s;
    }

    #services-690 .bcw-item-text {
        font-size: clamp(0.875rem, 1.5vw, 1rem);
        text-align: center;
        line-height: 1.5em;
        margin: 0;
        color: var(--bodyTextColor);
        transition: color 0.3s;
        flex-grow: 1;
        /* Allow text to grow and fill space */
    }

    #services-690 .bcw-title {
        display: inline-block;
        position: relative;
        color: var(--bodyTextColor);
        margin-bottom: 0;
        padding-bottom: 5%;
        text-align: center;
    }

    #services-690 .bcw-flex-group {
        flex: none;
        display: flex;
        flex-direction: column;
    }

    #services-690 .bcw-title::before {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 3px;
    }

    #services-690 .bcw-title-second-line {
        color: var(--bodyTextColor);
        font-size: var(--headerFontSize);
        font-weight: 900;
        line-height: 1.2em;
        max-width: 43.75rem;
        position: relative;
        text-align: center;
    }
}

/* Tablet - 768px */
@media only screen and (min-width: 771px) {
    #services-690 .bcw-container {
        max-width: 80rem;
    }

    #services-690 .bcw-content {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        gap: 3rem;
        width: 75%;
    }

    #services-690 .bcw-flex-group {
        width: 50%;
    }

    #services-690 .bcw-card-group {
        margin-bottom: 2.5rem;
        flex-direction: row;
        justify-content: center;
        flex-wrap: wrap;
        column-gap: 1.25rem;
    }

    #services-690 .bcw-item {
        width: 30vw;
        max-width: 25.8125rem;
        height: 420px;
        /* Ensure consistent height */
    }
}

/* Mobile */
@media only screen and (max-width: 770px) {
    #services-690 .bcw-item {
        height: 340px;
        /* Ensure consistent height */
    }

    #services-690 .bcw-content {
        align-items: center;
        width: 100%;
    }

    #services-690 .bcw-flex-group {
        align-items: center;
    }

    #services-690 .bcw-title-second-line {
        margin-bottom: 5%;
    }

}



/*-- -------------------------- -->
<---          Contact           -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #contact-1388 {
        padding: var(--sectionPadding);
        /*background-color: #181818;*/
        color: #000;
        position: relative;
        z-index: 1;
        margin-bottom: 10%;

    }

    #contact-1388 .bcw-container {
        width: 80%;
        /* changes to 1280px at tablet */
        max-width: 36.5rem;
        margin: auto;
        margin-top: 5%;
        display: flex;
        justify-content: center;
        align-items: stretch;
        flex-direction: column;
        column-gap: auto;
        /* 48px - 64px */
        gap: clamp(2rem, 3vw, 3rem);
        position: relative;
    }

    #contact-1388 .bcw-content {
        /* set text align to left if content needs to be left aligned */
        text-align: left;
        width: 100%;
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: flex-start;
    }

    #contact-1388 .bcw-title {
        max-width: 23ch;
    }

    #contact-1388 .bcw-text {
        margin-bottom: 1rem;
    }

    #contact-1388 .bcw-text:last-of-type {
        margin-bottom: 2rem;
    }

    #contact-1388 .bcw-ul {
        text-align: left;
        width: 80%;
        margin: 0;
        padding: 0;
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 1.5rem;
        position: relative;
    }

    #contact-1388 .bcw-li {
        list-style: none;
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        gap: 1.25rem;
    }

    #contact-1388 .bcw-li:hover .bcw-icon-wrapper {
        transform: scale(1.1);
    }

    #contact-1388 .bcw-header {
        font-size: 1.25rem;
        font-weight: 700;
        line-height: 1.2em;
        margin-bottom: 0.75rem;
        color: #000;
        display: block;
    }

    #contact-1388 .bcw-link {
        font-size: 1rem;
        line-height: 1.5em;
        text-decoration: none;
        color: #000000;
        /* Color of address, phone number text, etc. */
        display: block;
        position: relative;
    }

    #contact-1388 .bcw-link:hover {
        text-decoration: underline;
    }

    #contact-1388 .bcw-icon-wrapper {
        width: 3.75rem;
        height: 3.75rem;
        margin: 0;
        border-radius: 50%;
        border: 1px solid #bababa;
        display: flex;
        justify-content: center;
        align-items: center;
        /* prevents flexbox from squishing it */
        flex: none;
        transition: transform 0.3s;
    }

    #contact-1388 .bcw-icon {
        width: 1.5rem;
        height: auto;
        display: block;
    }

    #contact-1388 .bcw-form {
        width: 100%;
        max-width: 39.375rem;
        /* 24px - 48px top and bottom */
        /* 16px - 48px left and right */
        padding: clamp(1.5rem, 5.18vw, 3rem) clamp(1rem, 4vw, 3rem);
        /* prevents flexbox from affecting height and width */
        box-sizing: border-box;
        background-color: #b9b9b9;
        /* color of big for box */
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.75rem;
    }

    #contact-1388 .bcw-h3 {
        /* 20px - 39px */
        font-size: clamp(1.25rem, 3vw, 2.4375rem);
        line-height: 1.2em;
        font-weight: 700;
        margin: 0 0 0.25rem 0;
        color: var(--bodyTextColor);

    }

    #contact-1388 .bcw-label {
        /* 14px - 16px */
        font-size: clamp(0.875rem, 1.5vw, 1rem);
        width: 100%;
        color: var(--bodyTextColor);
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        gap: 0.25rem;
    }

    #contact-1388 .bcw-input {
        font-size: 1rem;
        width: 100%;
        height: 3.5rem;
        padding: 0;
        padding-left: 1.5rem;
        color: #000000;
        /* var(--headerColor); /* color input text shows up as */
        background-color: #f7f7f7;
        /* color of input text box */
        border-radius: 0.5rem;
        border: none;
        /* prevents padding from adding to height and width */
        box-sizing: border-box;
    }

    #contact-1388 .bcw-input::placeholder {
        color: #000000;
        /* Color of text e.g. 'phone' */
        opacity: 0.6;
    }

    #contact-1388 .bcw-textarea {
        min-height: 7.5rem;
        padding-top: 1.5rem;
        margin-bottom: 0.75rem;
        font-family: inherit;
    }

    #contact-1388 .bcw-button-solid {
        font-size: 1rem;
        line-height: 3.5rem;
        text-decoration: none;
        font-weight: 700;
        overflow: hidden;
        margin: 0;
        color: var(--bodyTextColorWhite);
        padding: 0 3rem;
        background-color: var(--primary);
        border-radius: 0.25rem;
        display: inline-block;
        position: relative;
        z-index: 1;
        transition: color 0.3s;
    }

    #contact-1388 .bcw-button-solid:before {
        content: "";
        position: absolute;
        display: block;
        height: 100%;
        width: 0%;
        background: var(--primaryLight);
        /* color send message turns to when hovering */
        opacity: 1;
        top: 0;
        left: 0;
        z-index: -1;
        transition: width 0.3s;
    }


    #contact-1388 .bcw-button-solid:hover {
        color: var(--bodyTextColor);
    }

    #contact-1388 .bcw-button-solid:hover:before {
        width: 100%;
    }

    #contact-1388 .bcw-submit {
        width: 100%;
        min-width: 12.5rem;
        border: none;
    }

    #contact-1388 .bcw-submit:hover {
        cursor: pointer;
    }
}

/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
    #contact-1388 .bcw-container {
        max-width: 80rem;
        flex-direction: row;
        justify-content: space-between;
    }

    #contact-1388 .bcw-content {
        width: 47%;
        /* prevents flexbox from squishing it */
        flex: none;
    }

    #contact-1388 .bcw-submit {
        width: auto;
    }
}

/* Desktop - 1024px */
@media only screen and (min-width: 64rem) {
    #contact-1388 .bcw-form {
        width: 46%;
        max-width: 36.125rem;
    }

    #contact-1388 .bcw-submit {
        width: auto;
    }
}

/* Large Desktop - 1500px */
@media only screen and (min-width: 93.75rem) {
    #contact-1388 .bcw-graphic {
        display: block;
    }
}


/*-- -------------------------- -->
<---   Contact Bottom Banner    -->
<--- -------------------------- -*/
/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #cta-51 {
        padding: var(--sectionPadding);
        position: relative;
        /*background-color: #fff8f8;*/
        bottom: -2px;
        /* Adjust to control the overlap (Need this so there is not gap between sections i.e. line*/
    }

    #cta-51 .bcw-container {
        width: 100%;
        max-width: 80rem;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: clamp(3rem, 6vw, 4rem);

    }

    /* Mobile-specific styles */
    @media (max-width: 600px) {
        #cta-51 .bcw-container {
            margin-bottom: 10vh;
        }

    }

    #cta-51 .bcw-content {
        /* set text align to left if content needs to be left aligned */
        text-align: center;
        width: 100%;
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: center;
    }

    #cta-51 .bcw-topper {
        color: var(--bodyTextColor);
    }

    #cta-51 .bcw-title {
        color: var(--bodyTextColor);
    }

    #cta-51 .bcw-text {
        margin-bottom: 1rem;
        color: var(--bodyTextColor);
        opacity: 0.8;
    }

    #cta-51 .bcw-text:last-of-type {
        margin-bottom: 2rem;
    }

    #cta-51 .bcw-button-solid {
        font-size: 1rem;
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        text-decoration: none;
        font-weight: 700;
        text-align: center;
        margin: 0;
        color: #fff;
        min-width: 9.375rem;
        padding: 0 1.5rem;
        background-color: var(--primary);
        border-radius: 0.25rem;
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box;
    }

    #cta-51 .bcw-button-solid:before {
        content: "";
        position: absolute;
        height: 100%;
        width: 0%;
        background: #000000;
        opacity: 1;
        top: 0;
        left: 0;
        z-index: -1;
        border-radius: 0.25rem;
        transition: width 0.3s;
    }

    #cta-51 .bcw-button-solid:hover:before {
        width: 100%;
    }

    #cta-51 .bcw-picture {
        height: 100%;
        width: 100%;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
    }

    #cta-51 .bcw-picture:before {
        /* black color overlay */
        content: "";
        position: absolute;
        display: block;
        height: 100%;
        width: 100%;
        background: #000;
        opacity: 0.8;
        top: 0;
        left: 0;
        z-index: 1;
    }

    #cta-51 .bcw-picture img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        object-fit: cover;
    }
}

/*-- -------------------------- -->
<---            Divider         -->
<--- -------------------------- -*/
.custom-shape-divider-bottom-1724699254 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
}

.custom-shape-divider-bottom-1724699254 svg {
    position: relative;
    display: block;
    width: calc(100% + 1.3px);
    height: 100px;
    transform: rotateY(180deg);
}

.custom-shape-divider-bottom-1724699254 .shape-fill {
    fill: var(--primary);
}


/*-- -------------------------- -->
<---      Top Banner/Text       -->
<---      Page Description      -->
<--- -------------------------- -*/

/* Mobile */
@media only screen and (min-width: 0rem) {

    #bcw-content-831,
    #bcw-content-831-2 {

        width: 100%;
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: center;
        margin-top: 10%;
    }

    #bcw-content-831 .bcw-topper,
    #bcw-content-831-2 .bcw-topper {
        font-size: var(--topperFontSize);
        line-height: 1.2em;
        text-transform: uppercase;
        text-align: inherit;
        letter-spacing: 0.1em;
        font-weight: 700;
        color: var(--bodyTextColor);
        margin-bottom: 0.25rem;
        display: block;

    }

    /* Standard Title */
    #bcw-content-831 .bcw-title,
    #bcw-content-831-2 .bcw-title {
        font-size: var(--headerFontSize);
        font-weight: 900;
        line-height: 1.2em;
        text-align: inherit;
        max-width: 50vw;
        margin: 0 0 1rem 0;
        color: var(--primary);
        position: relative;
        /* Colored Line Underneath */
        padding-bottom: 1%;
        border-bottom: 2px solid var(--primary);
    }

    /* Title with decorative lines */
    #bcw-content-831 .bcw-title-decorative,
    #bcw-content-831-2 .bcw-title-decorative {
        font-size: var(--headerFontSize);
        font-weight: 900;
        line-height: 1.2em;
        margin: 0;
        color: var(--primary);
        position: relative;
        padding: 0 60px;
        /* Padding to make space for the lines */
        display: inline-block;
        /* Keeps the header from stretching full-width */
    }

    /* Second line */
    #bcw-content-831 .bcw-title-decorative-second-line,
    #bcw-content-831-2 .bcw-title-decorative-second-line {
        color: var(--bodyTextColor);
        font-size: var(--headerFontSize);
        font-weight: 900;
        line-height: 1.2em;
        margin-top: 0.5rem;
        /* Space between title and second line */
        margin-bottom: 2%;
        /* Adjust as needed */
        text-align: center;
    }

    #bcw-content-831 .bcw-text,
    #bcw-content-831-2 .bcw-text {
        font-size: var(--bodyFontSize);
        line-height: 1.5em;
        text-align: left;
        width: 90%;
        margin: 0;
        color: var(--bodyTextColor);
        margin-bottom: 3%;
    }


    /* Mobile Phones */
    @media only screen and (max-width: 600px) {

        #bcw-content-831,
        #bcw-content-831-2 {
            margin-bottom: 3%;
        }
    }

}

/*-- -------------------------- -->
<---      Top Banner/Text       -->
<---      Page Description      -->
<--- -------------------------- -*/

/* Mobile */
@media only screen and (min-width: 0rem) {
    #bcw-content-831-secondary {
        /* set text align to left if content needs to be left aligned */
        text-align: center;
        width: 100%;
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: center;
        background-color: var(--secondary);
        padding-bottom: 2%;
    }

    #bcw-content-831-secondary .bcw-topper {
        font-size: var(--topperFontSize);
        line-height: 1.2em;
        text-transform: uppercase;
        text-align: inherit;
        letter-spacing: 0.1em;
        font-weight: 700;
        color: var(--bodyTextColor);
        margin-bottom: 0.25rem;
        display: block;
    }

    /* Standard Title */
    #bcw-content-831-secondary .bcw-title {
        font-size: var(--headerFontSize);
        font-weight: 900;
        line-height: 1.2em;
        text-align: inherit;
        max-width: 50vw;
        margin: 0 0 1rem 0;
        color: var(--primary);
        position: relative;
        /* Colored Line Underneath */
        padding-bottom: 1%;
        border-bottom: 2px solid var(--primary);
    }

    /* Title with decorative lines */
    #bcw-content-831-secondary .bcw-title-decorative {
        font-size: var(--headerFontSize);
        font-weight: 900;
        line-height: 1.2em;
        margin: 0;
        color: var(--primary);
        position: relative;
        padding: 0 60px;
        /* Padding to make space for the lines */
        display: inline-block;
        /* Keeps the header from stretching full-width */
    }

    /* Second line */
    #bcw-content-831-secondary .bcw-title-decorative-second-line {
        color: var(--bodyTextColorWhite);
        font-size: var(--headerFontSize);
        font-weight: 900;
        line-height: 1.2em;
        margin-top: 0.5rem;
        /* Space between title and second line */
        margin-bottom: 2%;
        /* Adjust as needed */
    }

    #bcw-content-831-secondary .bcw-text {
        font-size: var(--bodyFontSize);
        line-height: 1.5em;
        text-align: left;
        width: 90%;
        margin: 0;
        color: var(--bodyTextColor);
        margin-bottom: 3%;
    }

}


/*-- -------------------------- -->
<--- Why Choose Us Side By Side -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {


    #RPsbs-why-us {
        padding: 0 1em;
        position: relative;
        z-index: 1;
    }

    #RPsbs-why-us .bcw-container {
        width: 100%;
        /* changes to 1280px on tablet */
        max-width: 34.375rem;
        padding: var(--sectionPadding);
        padding-left: 0;
        padding-right: 0;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 108px */
        gap: clamp(3rem, 8vw, 6.75rem);
        position: relative;
        margin-bottom: 3%;
    }

    #RPsbs-why-us .bcw-content {
        text-align: left;
        width: 100%;
        max-width: 27.125rem;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    #RPsbs-why-us .bcw-text a {
        color: var(--linkcolor);
        text-decoration: none;
        /* Remove underline */
        font-weight: bold;
        /* Make text bold */
    }

    #RPsbs-why-us .bcw-title {
        display: inline-block;
        position: relative;
        color: var(--primary);
        /*padding-right: 60px;*/
        margin-bottom: 0;
        /*padding-left: 2%;*/

    }


    #RPsbs-why-us .bcw-title-second-line {
        position: relative;
        /* For positioning the pseudo-elements */
        color: var(--bodyTextColor);
        margin-top: 0;
        margin-bottom: 3%;
        /* Space below the title */
        font-size: var(--headerFontSize);
        font-weight: 900;
        line-height: 1.2em;
        text-align: inherit;
        max-width: 43.75rem;
        position: relative;
    }




    #RPsbs-why-us .bcw-text-wrapper {
        display: flex;
        align-items: flex-start;
        /* Align items to the top */
        margin-bottom: 1rem;
        /* Space between this block and the next content */
        position: relative;
        /* For absolute positioning of the icon */
        width: 100%;
        /* Ensure the wrapper takes the full width */
    }

    #RPsbs-why-us .bcw-icon-wrapper {
        position: absolute;
        /* Position icon in the top-left corner */
        top: 0;
        left: 0;
        width: clamp(3.75rem, 7vw, 5rem);
        height: clamp(3.75rem, 7vw, 5rem);
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    #RPsbs-why-us .bcw-icon {
        width: 3rem;
        /* This sets icon size */
        height: auto;
        display: block;
    }

    #RPsbs-why-us .bcw-text-content {
        margin-left: clamp(4rem, 8vw, 6rem);
        /* Ensure there's space for the icon */
        display: flex;
        flex-direction: column;
        /* Stack topper and text vertically */
        align-items: flex-start;
        /* Align topper and text to the left */
    }

    #RPsbs-why-us .bcw-topper {
        opacity: 0.8;
        border-bottom: solid 2px var(--primary)
    }

    #RPsbs-why-us .bcw-text {
        margin-top: 0.5rem;
        /* Space between topper and text */
        opacity: 0.8;
    }

    #RPsbs-why-us .bcw-text:last-of-type {
        margin-bottom: 2rem;
    }

    #RPsbs-why-us .bcw-picture {
        width: 100%;
        margin: 0;
        border: 1px solid #f1f1f4;
        position: relative;
        display: block;
        /* width divided by height */
        aspect-ratio: 1.505;
        /* prevents border from adding to height and width */
        box-sizing: border-box;
    }


    #RPsbs-why-us .bcw-picture img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        object-fit: cover;
    }


    #RPsbs-why-us .bcw-button-solid {
        font-size: 1rem;
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        text-decoration: none;
        font-weight: 700;
        text-align: center;
        margin: 0;
        color: var(--bodyTextColorWhite);
        min-width: 9.375rem;
        padding: 0 1.5rem;
        background-color: var(--primary);
        border-radius: 0.25rem;
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box;

    }


    #RPsbs-why-us .bcw-button-solid:before {
        content: "";
        position: absolute;
        height: 100%;
        width: 0%;
        background: var(--primaryLight);
        opacity: 1;
        top: 0;
        left: 0;
        z-index: -1;
        border-radius: 0.25rem;
        transition: width 0.3s;
    }

    #RPsbs-why-us .bcw-button-solid:hover {
        color: var(--bodyTextColor);
    }

    #RPsbs-why-us .bcw-button-solid:hover:before {
        width: 100%;

    }

}

/* Tablet - 768px */
@media only screen and (min-width: 0px) and (max-width: 999px) {
    #RPsbs-why-us .bcw-button-solid {
        align-self: center;
    }
}

/* Tablet - 768px */
@media only screen and (min-width: 1000px) {


    #RPsbs-why-us .bcw-container {
        max-width: 80rem;
        flex-direction: row;
        justify-content: center;
        align-items: center;
    }


    #RPsbs-why-us .bcw-lines {
        height: 100%;
        width: 35%;
        display: block;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        z-index: -1;
    }



    #RPsbs-why-us .bcw-picture {
        /* 344px - 434px */
        width: clamp(21.5rem, 37.5vw, 27.125rem);
        flex: none;
    }


    #RPsbs-why-us .bcw-content {
        max-width: 33.875rem;
        margin: 0;
        width: 45%;
    }
}

/*-- -------------------------- -->
<--- Our Difference Side By Side-->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {


    #RPsbs-our-difference {
        padding: 0 1em;
        position: relative;
        z-index: 1;
        background-color: #fff8f8;
    }

    #RPsbs-our-difference .bcw-container {
        width: 100%;
        /* changes to 1280px on tablet */
        max-width: 34.375rem;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 108px */
        gap: clamp(3rem, 8vw, 6.75rem);
        position: relative;
        margin-bottom: 0;

    }

    #RPsbs-our-difference .bcw-content {
        text-align: left;
        width: 100%;
        max-width: 27.125rem;
        display: flex;
        flex-direction: column;
        align-items: flex-start;

    }

    #RPsbs-our-difference .bcw-text a {
        color: var(--linkcolor);
        text-decoration: none;
        /* Remove underline */
        font-weight: bold;
        /* Make text bold */
    }

    #RPsbs-our-difference .bcw-title {
        display: inline-block;
        position: relative;
        color: var(--primary);
        /*padding-right: 60px;*/
        margin-bottom: 5%;
        /*padding-left: 2%; */
    }



    #RPsbs-our-difference .bcw-title-second-line {
        position: relative;
        /* For positioning the pseudo-elements */
        color: var(--bodyTextColor);
        margin-top: 0;
        margin-bottom: 3%;
        /* Space below the title */
        font-size: var(--headerFontSize);
        font-weight: 900;
        line-height: 1.2em;
        text-align: inherit;
        max-width: 43.75rem;
        position: relative;
    }


    #RPsbs-our-difference .bcw-text {
        margin-top: 0.5rem;
        /* Space between topper and text */
        opacity: 0.8;
    }


    #RPsbs-our-difference .bcw-text-wrapper {
        display: flex;
        align-items: flex-start;
        /* Align items to the top */
        margin-bottom: 1rem;
        /* Space between this block and the next content */
        position: relative;
        /* For absolute positioning of the icon */
        width: 100%;
    }

    #RPsbs-our-difference .bcw-icon-wrapper {
        position: absolute;
        /* Position icon in the top-left corner */
        top: 0;
        left: 0;
        width: clamp(3.75rem, 7vw, 5rem);
        height: clamp(3.75rem, 7vw, 5rem);
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    #RPsbs-our-difference .bcw-icon {
        width: 3rem;
        /* This sets icon size */
        height: auto;
        display: block;
    }

    #RPsbs-our-difference .bcw-text-content {
        margin-left: clamp(4rem, 8vw, 6rem);
        /* Ensure there's space for the icon */
        display: flex;
        flex-direction: column;
        /* Stack topper and text vertically */
        align-items: flex-start;
        /* Align topper and text to the left */
    }

    #RPsbs-our-difference .bcw-topper {
        opacity: 0.8;
    }

    #RPsbs-our-difference .bcw-topper-left {
        font-size: var(--topperFontSize);
        line-height: 1.2em;
        text-transform: uppercase;
        text-align: inherit;
        letter-spacing: .1em;
        font-weight: 700;
        /* color: var(--headerColor); to have it match global color style*/
        color: #000000;
        margin-bottom: 0.25rem;
        display: block;
        margin-top: 10%;
    }

    #RPsbs-our-difference .bcw-text:last-of-type {
        margin-bottom: 0;
    }


    #RPsbs-our-difference .bcw-picture {
        width: 100%;
        height: auto;
        margin: 0;
        position: relative;
        display: block;
        /* width divided by height */
        aspect-ratio: 1.42;
        /* prevents border from adding to height and width */
        box-sizing: border-box;
        margin-bottom: 2%;
        align-self: center;
    }

    #RPsbs-our-difference .bcw-picture img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        object-fit: cover;
    }


    #RPsbs-our-difference .bcw-button-solid {
        font-size: 1rem;
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        text-decoration: none;
        font-weight: 700;
        text-align: center;
        margin: 0;
        color: var(--bodyTextColorWhite);
        min-width: 9.375rem;
        padding: 0 1.5rem;
        background-color: var(--bodyTextColor);
        border-radius: 0.25rem;
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box;
    }


    #RPsbs-our-difference .bcw-button-solid:before {
        content: "";
        position: absolute;
        height: 100%;
        width: 0%;
        background: var(--primaryLight);
        opacity: 1;
        top: 0;
        left: 0;
        z-index: -1;
        border-radius: 0.25rem;
        transition: width 0.3s;
    }


    #RPsbs-our-difference .bcw-button-solid:hover:before {
        width: 100%;
    }

}

/* Tablet - 768px */
@media only screen and (min-width: 62rem) {


    #RPsbs-our-difference .bcw-container {
        max-width: 80rem;
        flex-direction: row;
        justify-content: center;
        align-items: center;
    }


    #RPsbs-our-difference .bcw-lines {
        height: 100%;
        width: 35%;
        display: block;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        z-index: -1;
    }



    #RPsbs-our-difference .bcw-picture {
        /* 344px - 434px */
        width: clamp(21.5rem, 37.5vw, 27.125rem);
        flex: none;
    }


    #RPsbs-our-difference .bcw-content {
        max-width: 33.875rem;
        margin: 0;
        width: 45%;
    }
}

/* Mobile-only reversal (so two pictues don't end up on top of eachother*/
@media (max-width: 1050px) {

    #RPsbs-our-difference .bcw-container.mobile-reverse {
        flex-direction: column-reverse;
    }
}

/*-- -------------------------- -->
<--- Our Images Side By Side-->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #RPsbs-our-images {
        padding: 0 1em;
        padding-top: 0;
        position: relative;
        z-index: 1;
        background-color: #fff8f8;
    }

    #RPsbs-our-images .bcw-container {
        width: 100%;
        max-width: 34.375rem;
        padding: var(--sectionPadding);
        padding-left: 0;
        padding-right: 0;
        padding-bottom: 0;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 2%;
        position: relative;
        margin-bottom: 7%;
        padding-top: 3%;
    }

    #RPsbs-our-images .bcw-content {
        text-align: left;
        width: 100%;
        max-width: 27.125rem;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        padding-bottom: 3%;
        padding-top: 0;
        margin-top: 0;
    }

    #RPsbs-our-images .bcw-text a {
        color: var(--linkcolor);
        text-decoration: none;
        font-weight: bold;
    }

    #RPsbs-our-images .bcw-title {
        display: inline-block;
        position: relative;
        color: var(--primary);
        margin-bottom: 0;
    }

    #RPsbs-our-images .bcw-title-second-line {
        position: relative;
        color: var(--bodyTextColor);
        margin-top: 0;
        margin-bottom: 3%;
        font-size: var(--headerFontSize);
        font-weight: 900;
        line-height: 1.2em;
        text-align: inherit;
        max-width: 43.75rem;
        position: relative;
    }

    #RPsbs-our-images .bcw-text {
        margin-top: 0.5rem;
        opacity: 0.8;
    }

    #RPsbs-our-images .bcw-text-wrapper {
        display: flex;
        align-items: flex-start;
        margin-bottom: 1rem;
        position: relative;
        width: 100%;
    }

    #RPsbs-our-images .bcw-icon-wrapper {
        position: absolute;
        top: 0;
        left: 0;
        width: clamp(3.75rem, 7vw, 5rem);
        height: clamp(3.75rem, 7vw, 5rem);
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    #RPsbs-our-images .bcw-icon {
        width: 3rem;
        height: auto;
        display: block;
    }

    #RPsbs-our-images .bcw-text-content {
        margin-left: clamp(4rem, 8vw, 6rem);
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    #RPsbs-our-images .bcw-topper {
        opacity: 0.8;
    }

    #RPsbs-our-images .bcw-topper-left {
        font-size: var(--topperFontSize);
        line-height: 1.2em;
        text-transform: uppercase;
        text-align: inherit;
        letter-spacing: .1em;
        font-weight: 700;
        color: #000000;
        margin-bottom: 0.25rem;
        display: block;
        margin-top: 10%;
    }

    #RPsbs-our-images .bcw-text:last-of-type {
        margin-bottom: 2rem;
    }

    #RPsbs-our-images .bcw-picture_1,
    #RPsbs-our-images .bcw-picture_2 {
        width: 100%;
        margin: 0;
        border: 1px solid #000000;
        position: relative;
        display: block;
        aspect-ratio: 1;
        /* Adjust this if needed */
        box-sizing: border-box;
        margin-bottom: 2%;
    }

    #RPsbs-our-images .bcw-picture_2 {
        aspect-ratio: 1;
        /* Adjust this if needed */
        margin-bottom: 2%;
    }

    #RPsbs-our-images .bcw-picture_1 img,
    #RPsbs-our-images .bcw-picture_2 img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        object-fit: cover;
    }
}

/* Tablet - 768px */
@media only screen and (min-width: 62rem) {
    #RPsbs-our-images .bcw-container {
        max-width: 80rem;
        flex-direction: row;
        justify-content: center;
        align-items: flex-start;
        /* Ensures images align to the top */
        margin-top: 0;
        gap: clamp(3rem, 8vw, 6.75rem);
    }

    #RPsbs-our-images .bcw-picture {
        width: clamp(21.5rem, 37.5vw, 27.125rem);
        flex: none;
        margin-top: 0;
    }

    #RPsbs-our-images .bcw-content {
        max-width: 33.875rem;
        margin: 0;
        width: 45%;
    }
}



/*-- -------------------------- -->
<-           Portfolio          -->
<- (Paneled Images w/ Links)    -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #portfolio-448 {
        padding: var(--sectionPadding);
        padding-top: 5%;
        position: relative;
    }

    #portfolio-448 .bcw-container {
        width: 100%;
        /* changes at 1280px at tablet */
        max-width: 34.375rem;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: clamp(3rem, 6vw, 4rem);

    }

    #portfolio-448 .bcw-content {
        align-items: center;
        display: flex;
        /*flex-direction: row; /* Aligns children horizontally (titles on the left, text on the right) */
        flex-direction: column;
        align-items: center;
        /* Aligns items at the start (top) of the container */
        width: 60%;
        /* Takes up full width of its container */
    }

    #portfolio-448 .bcw-title {
        display: inline-block;
        position: relative;
        color: var(--primary);
        /*padding-left: 10px; /* Adjust as needed for spacing */
        margin-bottom: 0;
        text-align: center;
        /* Ensures text is left-aligned */
    }

    #portfolio-448 .bcw-flex-group {
        display: flex;
        flex-direction: column;
        /* Align items in a vertical column */
        /*margin-right: 5%; /* Add spacing between the title column and text column */
    }

    #portfolio-448 .bcw-title::before {
        content: "";
        position: absolute;
        left: 0;
        /* Vertical line aligned to the left edge of the title */
        top: 0;
        bottom: 0;
        width: 3px;
        /* Width of the vertical line */
        /*background-color: var(--primary); /* Line color */
    }

    #portfolio-448 .bcw-title-second-line {
        color: var(--bodyTextColor);
        font-size: var(--headerFontSize);
        font-weight: 900;
        line-height: 1.2em;
        max-width: 43.75rem;
        /* Ensures text does not exceed this width */
        position: relative;
        text-align: left;
        /* Ensures text is left-aligned */
    }

    #portfolio-448 .bcw-text {
        flex: 1;
        /* Takes up remaining space in the flex container */
        text-align: left;
        /* Aligns text to the left */
    }


    #portfolio-448 .bcw-card-group {
        width: 100%;
        padding: 0;
        margin: 0;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        /* 16px - 20px */
        column-gap: clamp(1rem, 1.5vw, 1.25rem);
        /* 24px - 60px */
        row-gap: clamp(1.5rem, 5vw, 3.75rem);
    }

    #portfolio-448 .bcw-item {
        list-style: none;
        width: 100%;
        max-width: 22.5rem;
        position: relative;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        box-shadow: 2px 2px 5px rgba(.5, .5, .8, 0.3);
        /* Horizontal offset, Vertical offset, Blur radius, Color */
    }


    #portfolio-448 .bcw-item:hover .bcw-flex:before {
        opacity: 1;
    }

    #portfolio-448 .bcw-picture {
        width: 100%;
        /* changes at desktop */
        height: 15.625rem;
        /*border-radius: 0.5rem;
      background-color: var(--primary);
      /* clips the corners of the image */
        overflow: hidden;
        display: block;
        position: relative;
        top: 0;
        left: 0;
        z-index: -1;
    }

    #portfolio-448 .bcw-picture img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        /* makes it behave like a background image */
        object-fit: cover;
        /* positions top of image to the top of the container */
        object-position: top;
        transition:
            transform 0.9s,
            opacity 0.5s;
    }

    #portfolio-448 .bcw-flex {
        text-align: center;
        width: 100%;
        padding: 0 1.5rem 1.5rem 1.5rem;
        /* prevents padding and border from affecting height and width */
        box-sizing: border-box;
        background-color: #fff;
        box-shadow: 0px 24px 54px rgba(87, 107, 147, 0.12);
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        position: relative;
        border-bottom: solid 4px var(--primary)
    }



    #portfolio-448 .bcw-wrapper {
        /* 80px - 120px */
        width: clamp(5rem, 9.2vw, 7.5rem);
        height: clamp(5rem, 9.2vw, 7.5rem);
        /* 20px - 24px */
        margin: 0 0 clamp(1.25rem, 1.5vw, 1.5rem);
        /* we use the same clamp value for height & width, but multiple by -.5 so it will be a negative value, and be half of the height.  Negative margins pull things toward the element so they overlap them, in this case we want the .bcw-wrapper to overlap .bcw-flex by half its height, so we use the same clamp for height and half it for the margin top value */
        margin-top: calc(clamp(5rem, 9.2vw, 7.5rem) * -0.5);
        border-radius: 50%;
        border: 4px solid var(--primary);
        background-color: #fff;
        /* prevents border from affecting height and width */
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        z-index: 10;
    }

    #portfolio-448 .bcw-icon {
        /* 48px - 64px */
        width: clamp(3rem, 4.3vw, 4rem);
        height: auto;
        display: block;
    }

    #portfolio-448 .bcw-h1 {
        /* 20px - 25px */
        font-size: clamp(1.25rem, 1.9vw, 1.5625rem);
        line-height: 1.2em;
        font-weight: 400;
        margin: 0 0 0.5rem 0;
        margin-bottom: 2%;
        color: var(--bodyTextColor);
    }

    #portfolio-448 .bcw-h2 {
        /* 20px - 25px */
        line-height: 1em;
        font-weight: 50;
        margin: 0 0 0.5rem 0;
        margin-bottom: 8%;
        color: #3e3e3e;
    }

    #portfolio-448 .bcw-item-text {
        /* 14px - 16px */
        font-size: clamp(0.875rem, 1.5vw, 1rem);
        line-height: 1.5em;
        font-weight: 400;
        /* 20px - 24px */
        margin: 0 0 clamp(1.25rem, 1.5vw, 1.5rem);
        /*color: var(--bodyTextColor); */
        /* Set service box internal text color */
        color: #000000;
    }

    #portfolio-448 .bcw-link {
        /* 16px - 20px */
        font-size: clamp(1rem, 1.5vw, 1.25rem);
        line-height: 1.5em;
        font-weight: 350;
        text-decoration: none;
        margin: 0;
        display: inline-block;
        position: relative;
        color: var(--linkcolor);
    }

    #portfolio-448 .bcw-link:hover:before {
        width: 100%;
    }


    #portfolio-448 .bcw-button-solid {
        font-size: 1rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: 700;
        overflow: hidden;
        margin: 0;
        color: #fff;
        padding: 0 3rem;
        background-color: var(--primary);
        border-radius: 0.25rem;
        display: inline-block;
        position: relative;
        z-index: 1;
        transition: color 0.3s;
    }

    #portfolio-448 .bcw-button-solid:before {
        content: "";
        position: absolute;
        display: block;
        height: 100%;
        width: 0%;
        background: var(--primaryLight);
        /* color send message turns to when hovering */
        opacity: 1;
        top: 0;
        left: 0;
        z-index: -1;
        transition: width 0.3s;
    }

    #portfolio-448 .bcw-button-solid:hover {
        color: var(--bodyTextColor);
    }

    #portfolio-448 .bcw-button-solid:hover:before {
        width: 100%;
    }



}

/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
    #portfolio-448 .bcw-container {
        max-width: 80rem;
    }

    #portfolio-448 .bcw-card-group {
        flex-direction: row;
    }

    #portfolio-448 .bcw-item {
        width: 47%;
    }
}

/* Small Desktop - 1024px */
@media only screen and (min-width: 64rem) {
    #portfolio-448 .bcw-card-group {
        flex-wrap: nowrap;
    }

    #portfolio-448 .bcw-item {
        width: 100%;
        /* 144px - 274px */
    }

    #portfolio-448 .bcw-picture {
        /* 224px - 428px */
        height: clamp(14rem, 28vw, 26.75rem);
    }
}

/* Mobile - 1024px */
@media only screen and (max-width: 40rem) {

    #portfolio-448 .bcw-content {
        flex-direction: column;
        width: 100%;
        /* Takes up full width of its container */
    }

    #portfolio-448 .bcw-title-second-line {
        margin-bottom: 5%;
    }


}


/*-- -------------------------- -->
<---       Services Page        -->
<--   And other content pages   -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #content-page-852 {
        padding: var(--sectionPadding);
        /* background-color: #181818; */
        ;
        /* clips the wave background from causing overflow issues when it goes off screen */
        overflow: hidden;
        position: relative;
        z-index: 1;
    }

    #content-page-852 .bcw-container {
        width: 100%;
        margin: auto;
        margin-top: 5%;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: clamp(3rem, 6vw, 4rem);
        position: relative;
    }

    #content-page-852 .bcw-content {
        /* set text align to left if content needs to be left aligned */
        text-align: left;
        width: 100%;
        max-width: 60rem;
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: flex-start;
    }

    #content-page-852 .bcw-title {
        font-size: var(--headerFontSize);
        font-weight: 900;
        line-height: 1.2em;
        text-align: inherit;
        width: 100%;
        max-width: 100%;
        margin: 0 0 1rem 0;
        color: var(--bodyTextColor);
        position: relative;
    }

    #content-page-852 h2,
    #content-page-852 h3,
    #content-page-852 h4,
    #content-page-852 h5,
    /* Set color/style of header text */
    #content-page-852 h6 {
        font-weight: 700;
        text-align: inherit;
        margin: 0 0 1rem 0;
        color: var(--bodyTextColor);

    }

    #content-page-852 h2 {
        font-size: 2rem;
        margin-top: 2rem;
    }

    #content-page-852 h3 {
        font-size: 1.5rem;
        color: var(--bodyTextColor);

    }

    #content-page-852 h4,
    #content-page-852 h5,
    #content-page-852 h6 {
        font-size: 1.25rem;
    }

    #content-page-852 .bcw-button-solid {
        margin-bottom: 2rem;
    }

    #content-page-852 .bcw-no-margin {
        margin: 0;
    }

    #content-page-852 .bcw-color {
        color: var(--primary);

    }

    #content-page-852 p {
        font-size: var(--bodyFontSize);
        line-height: 1.5em;
        text-align: inherit;
        width: 100%;
        margin: 0 0 1rem 0;
        color: var(--bodyTextColor);

    }

    #content-page-852 p:last-of-type {
        margin-bottom: 2rem;
    }

    #content-page-852 p a {
        font-size: inherit;
        line-height: inherit;
        text-decoration: underline;
        color: var(--bodyTextColor);

    }

    #content-page-852 ol,
    #content-page-852 ul {
        padding-left: 1.5rem;
        margin: 0 0 2rem 0;
        color: var(--bodyTextColor);
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    #content-page-852 ul li {
        list-style: none;
        color: inherit;
        position: relative;
    }

    #content-page-852 ul li:before {
        /* custom list bullet */
        content: "";
        width: 3px;
        height: 3px;
        background: currentColor;
        opacity: 1;
        border-radius: 50%;
        position: absolute;
        display: block;
        top: 0.625rem;
        left: -0.75rem;
    }


}


/*-- -------------------------- -->
<---            FAQ             -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #faq-1109 {
        padding: var(--sectionPadding);
        position: relative;
    }

    #faq-1109 .bcw-container {
        width: 100%;
        /* changes to 1280px at desktop */
        max-width: 36.5rem;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 32px - 48px */
        gap: clamp(2rem, 6vw, 3rem);
    }

    #faq-1109 .bcw-content {
        /* set text align to left if content needs to be left aligned */
        text-align: center;
        width: 100%;
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: center;
    }

    #faq-1109 .bcw-text {
        text-align: left;
    }

    #faq-1109 .bcw-title {
        /* 32px - 48px */
        margin: 0 0 clamp(2rem, 5vw, 3rem);
    }

    #faq-1109 .bcw-picture {
        width: 100%;
        /* 360px - 400px */
        height: clamp(22.5rem, 54vw, 25rem);
        display: block;
        position: relative;
    }

    #faq-1109 .bcw-picture img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    #faq-1109 .bcw-faq-group {
        width: 100%;
        max-width: 40.625rem;
        padding: 0;
        margin: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        gap: 0.75rem;
    }

    #faq-1109 .bcw-faq-item {
        list-style: none;
        width: 100%;
        background-color: var(--secondary);
        /* clips all corners of the button that overlap the rounded border */
        overflow: hidden;
        transition: border-bottom 0.3s;
    }

    #faq-1109 .bcw-faq-item.active .bcw-button {
        color: var(--primary);
    }

    #faq-1109 .bcw-faq-item.active .bcw-button:before {
        background-color: var(--primary);
        transform: rotate(315deg);
    }

    #faq-1109 .bcw-faq-item.active .bcw-button:after {
        background-color: var(--primary);
        transform: rotate(-315deg);
    }

    #faq-1109 .bcw-faq-item.active .bcw-item-p {
        height: auto;
        /* 20px - 24px bottom */
        /* 16px - 24px left & right */
        padding: 0 clamp(1rem, 2vw, 1.5rem) clamp(1.25rem, 1.3vw, 1.5rem);
        opacity: 1;
    }

    #faq-1109 .bcw-button {
        /* 16px - 20px */
        font-size: clamp(1rem, 2.5vw, 1.25rem);
        line-height: 1.2em;
        text-align: left;
        font-weight: bold;
        /* 20px - 24px */
        padding: clamp(1.25rem, 2vw, 1.5rem);
        background-color: #e4e4e4;
        border: none;
        color: var(--bodyTextColor);
        display: block;
        width: 100%;
        position: relative;
        transition:
            background-color 0.3s,
            color 0.3s;
    }

    #faq-1109 .bcw-button:hover {
        cursor: pointer;
    }

    #faq-1109 .bcw-button:before {
        /* left line */
        content: "";
        width: 0.5rem;
        height: 0.125rem;
        background-color: var(--bodyTextColor);
        opacity: 1;
        border-radius: 50%;
        position: absolute;
        display: block;
        top: 50%;
        right: 1.5rem;
        transform: rotate(45deg);
        /* animate the transform from the left side of the x axis, and the center of the y */
        transform-origin: left center;
        transition: transform 0.5s;
    }

    #faq-1109 .bcw-button:after {
        /* right line */
        content: "";
        width: 0.5rem;
        height: 0.125rem;
        background-color: var(--bodyTextColor);
        opacity: 1;
        border-radius: 50%;
        position: absolute;
        display: block;
        top: 50%;
        right: 1.3125rem;
        transform: rotate(-45deg);
        /* animate the transform from the right side of the x axis, and the center of the y */
        transform-origin: right center;
        transition: transform 0.5s;
    }

    #faq-1109 .bcw-button-text {
        width: 80%;
        display: block;
    }


    #faq-1109 .bcw-item-p {
        /* 14px - 16px */
        font-size: clamp(0.875rem, 1.5vw, 1rem);
        line-height: 1.5em;
        width: 90%;
        height: 0;
        margin: 0;
        /* 16px - 24px */
        padding: 0 clamp(1rem, 2vw, 1.5rem);
        opacity: 0;
        color: var(--bodyTextColor);
        /* clips the text so it doesn't show up */
        overflow: hidden;
        transition:
            opacity 0.3s,
            padding-bottom 0.3s;
    }

    #faq-1109 .bcw-item-p a {
        color: var(--linkcolor);
        text-decoration: none;
        /* Remove underline */
        font-weight: bold;
        /* Make text bold */
    }
}

/* Desktop - 1024px */
@media only screen and (min-width: 64rem) {
    #faq-1109 .bcw-container {
        max-width: 80rem;
        flex-direction: row;
        justify-content: space-between;
        align-items: stretch;
    }

    #faq-1109 .bcw-content {
        width: 40%;
        text-align: left;
        align-items: flex-start;
        /* prevents flexbox from squishing it */
        flex: none;
        /* sends it to the right in the 2nd position */
        order: 2;
    }
}


/*-- -------------------------- -->
<---           Steps            -->
<---        No Pictures         -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #steps-585 {
        padding: var(--sectionPadding);
        margin-top: 10%;
        background-color: var(--secondary);
    }

    #steps-585 .bcw-container {
        width: 100%;
        /* changes to 1280px at tablet */
        max-width: 34.375rem;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: clamp(3rem, 6vw, 4rem);
    }

    #steps-585 .bcw-content {
        /* set text align to left if content needs to be left aligned */
        text-align: left;
        width: 100%;
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: flex-start;
    }

    #steps-585 .bcw-card-group {
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
    }

    #steps-585 .bcw-item {
        list-style: none;
        min-height: 20rem;
        /* 16px - 24px left & right */
        padding: 1rem clamp(1rem, 1.8vw, 1.5rem);
        border-bottom: 1px solid var(--primary);
        /* prevents padding and border from affecting height and width */
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    #steps-585 .bcw-item:last-of-type {
        border: none;
    }

    #steps-585 .bcw-title {
        display: inline-block;
        position: relative;
        color: var(--primary);
        /*padding-right: 60px;*/
        margin-bottom: 0;
        /*padding-left: 2%; */
    }

    #steps-585 .bcw-title-second-line {
        position: relative;
        /* For positioning the pseudo-elements */
        color: var(--bodyTextColor);
        margin-top: 0;
        margin-bottom: 3%;
        /* Space below the title */
        font-size: var(--headerFontSize);
        font-weight: 900;
        line-height: 1.2em;
        text-align: inherit;
        max-width: 43.75rem;
        position: relative;
    }

    #steps-585 .bcw-h3 {
        font-size: 1.5rem;
        font-weight: 500;
        line-height: 1.2em;
        text-align: left;
        margin: 0 0 0.75rem 0;
        color: var(--bodyTextColor);
        display: block;
    }

    #steps-585 .bcw-item-text {
        font-size: 1rem;
        line-height: 1.5em;
        text-align: left;
        margin: 0;
        color: var(--bodyTextColor);
    }

    #steps-585 .bcw-number {
        font-size: 3.8125rem;
        font-weight: 900;
        line-height: 1.2em;
        /* auto pushes against other elements in a flexbox, this one forces it to be at the bottom of the flexbox */
        margin: auto 0 0 0;
        color: var(--primary);
        display: block;
    }
}

/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
    #steps-585 .bcw-container {
        max-width: 80rem;
    }

    #steps-585 .bcw-card-group {
        flex-direction: row;
        flex-wrap: wrap;
    }

    #steps-585 .bcw-item {
        width: 48%;
    }

    #steps-585 .bcw-item:nth-of-type(3) {
        border-bottom: none;
    }
}

/* Small Desktop - 1024px */
@media only screen and (min-width: 64rem) {
    #steps-585 .bcw-card-group {
        flex-wrap: nowrap;
    }

    #steps-585 .bcw-item {
        border-bottom: none;
        border-right: 1px solid var(--primary);
    }
}


/*-- -------------------------- -->
<---    Offerings Side By Side  -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {


    #RPsbs-offerings {
        padding: 0 1em;
        position: relative;
        z-index: 1;
        background-color: #fff8f8;

    }

    #RPsbs-offerings .bcw-container {
        width: 100%;
        /* changes to 1280px on tablet */
        max-width: 34.375rem;
        padding: var(--sectionPadding);
        padding-left: 0;
        padding-right: 0;
        padding-top: 2%;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 108px */
        gap: clamp(3rem, 8vw, 6.75rem);
        position: relative;

    }

    #RPsbs-offerings .bcw-content {
        text-align: left;
        width: 100%;
        max-width: 27.125rem;
        display: flex;
        flex-direction: column;
        align-items: flex-start;

    }

    #RPsbs-offerings .bcw-text a {
        color: var(--linkcolor);
        text-decoration: none;
        /* Remove underline */
        font-weight: bold;
        /* Make text bold */
    }



    #RPsbs-offerings .bcw-text-wrapper {
        display: flex;
        align-items: flex-start;
        /* Align items to the top */
        margin-bottom: 1rem;
        /* Space between this block and the next content */
        position: relative;
        /* For absolute positioning of the icon */
        width: 100%;
        /* Ensure the wrapper takes the full width */
    }

    #RPsbs-offerings .bcw-icon-wrapper {
        position: absolute;
        /* Position icon in the top-left corner */
        top: 0;
        left: 0;
        width: clamp(3.75rem, 7vw, 5rem);
        height: clamp(3.75rem, 7vw, 5rem);
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    #RPsbs-offerings .bcw-icon {
        width: 3rem;
        /* This sets icon size */
        height: auto;
        display: block;
    }

    #RPsbs-offerings .bcw-text-content {
        margin-left: clamp(4rem, 8vw, 6rem);
        /* Ensure there's space for the icon */
        display: flex;
        flex-direction: column;
        /* Stack topper and text vertically */
        align-items: flex-start;
        /* Align topper and text to the left */
    }

    #RPsbs-offerings .bcw-topper {
        opacity: 0.8;
        border-bottom: solid 2px var(--primary);
    }

    #RPsbs-offerings .bcw-text {
        margin-top: 0.5rem;
        /* Space between topper and text */
        opacity: 0.8;
    }

    #RPsbs-offerings .bcw-text:last-of-type {
        margin-bottom: 2rem;
    }

    #RPsbs-offerings .bcw-picture {
        width: 100%;
        margin: 0;
        border: 1px solid #f1f1f4;
        position: relative;
        display: block;
        /* width divided by height */
        aspect-ratio: 1.505;
        /* prevents border from adding to height and width */
        box-sizing: border-box;
    }


    #RPsbs-offerings .bcw-picture img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        object-fit: cover;
    }


    #RPsbs-offerings .bcw-button-solid {
        font-size: 1rem;
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        text-decoration: none;
        font-weight: 700;
        text-align: center;
        margin: 0;
        color: var(--bodyTextColorWhite);
        min-width: 9.375rem;
        padding: 0 1.5rem;
        background-color: var(--bodyTextColor);
        border-radius: 0.25rem;
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box;
    }


    #RPsbs-offerings .bcw-button-solid:before {
        content: "";
        position: absolute;
        height: 100%;
        width: 0%;
        background: var(--primaryLight);
        opacity: 1;
        top: 0;
        left: 0;
        z-index: -1;
        border-radius: 0.25rem;
        transition: width 0.3s;
    }


    #RPsbs-offerings .bcw-button-solid:hover:before {
        width: 100%;
    }

}

/* Tablet - 768px */
@media only screen and (min-width: 62rem) {


    #RPsbs-offerings .bcw-container {
        max-width: 80rem;
        flex-direction: row;
        justify-content: center;
        align-items: center;
    }


    #RPsbs-offerings .bcw-lines {
        height: 100%;
        width: 35%;
        display: block;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        z-index: -1;
    }



    #RPsbs-offerings .bcw-picture {
        /* 344px - 434px */
        width: clamp(21.5rem, 37.5vw, 27.125rem);
        flex: none;
    }


    #RPsbs-offerings .bcw-content {
        max-width: 33.875rem;
        margin: 0;
        width: 45%;
    }
}

/* Mobile Phones and Small Tablets */
@media only screen and (max-width: 62rem) {

    #RPsbs-offerings .bcw-container {
        gap: 0;
    }

}


/*-- -------------------------- -->
<---    Offerings Side By Side  -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {


    #RPsbs-offerings-secondary {
        top: -2px;
        padding: 0 1em;
        position: relative;
        z-index: 1;
        background-color: var(--secondary);
        padding-bottom: 5%;
    }

    #RPsbs-offerings-secondary .bcw-container {
        width: 100%;
        /* changes to 1280px on tablet */
        max-width: 34.375rem;
        padding: var(--sectionPadding);
        padding-left: 0;
        padding-right: 0;
        padding-top: 2%;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 108px */
        gap: clamp(3rem, 8vw, 6.75rem);
        position: relative;
        padding-bottom: 0;
    }

    #RPsbs-offerings-secondary .bcw-content {
        text-align: left;
        width: 100%;
        max-width: 27.125rem;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    #RPsbs-offerings-secondary .bcw-text a {
        color: var(--linkcolor);
        text-decoration: none;
        /* Remove underline */
        font-weight: bold;
        /* Make text bold */
    }



    #RPsbs-offerings-secondary .bcw-text-wrapper {
        display: flex;
        align-items: flex-start;
        /* Align items to the top */
        margin-bottom: 1rem;
        /* Space between this block and the next content */
        position: relative;
        /* For absolute positioning of the icon */
        width: 100%;
        /* Ensure the wrapper takes the full width */
    }

    #RPsbs-offerings-secondary .bcw-icon-wrapper {
        position: absolute;
        /* Position icon in the top-left corner */
        top: 0;
        left: 0;
        width: clamp(3.75rem, 7vw, 5rem);
        height: clamp(3.75rem, 7vw, 5rem);
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    #RPsbs-offerings-secondary .bcw-icon {
        width: 3rem;
        /* This sets icon size */
        height: auto;
        display: block;
    }

    #RPsbs-offerings-secondary .bcw-text-content {
        margin-left: clamp(4rem, 8vw, 6rem);
        /* Ensure there's space for the icon */
        display: flex;
        flex-direction: column;
        /* Stack topper and text vertically */
        align-items: flex-start;
        /* Align topper and text to the left */
    }

    #RPsbs-offerings-secondary .bcw-topper {
        opacity: 0.8;
        color: var(--bodyTextColor);
        border-bottom: solid 2px var(--primary);
    }

    #RPsbs-offerings-secondary .bcw-text {
        margin-top: 0.5rem;
        /* Space between topper and text */
        opacity: 0.8;
        color: var(--bodyTextColor)
    }

    #RPsbs-offerings-secondary .bcw-text:last-of-type {
        margin-bottom: 2rem;
    }

    #RPsbs-offerings-secondary .bcw-picture {
        width: 100%;
        margin: 0;
        border: 1px solid #f1f1f4;
        position: relative;
        display: block;
        /* width divided by height */
        aspect-ratio: 1.505;
        /* prevents border from adding to height and width */
        box-sizing: border-box;
    }


    #RPsbs-offerings-secondary .bcw-picture img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        object-fit: cover;
    }


    #RPsbs-offerings-secondary .bcw-button-solid {
        font-size: 1rem;
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        text-decoration: none;
        font-weight: 700;
        text-align: center;
        margin: 0;
        color: var(--bodyTextColorWhite);
        min-width: 9.375rem;
        padding: 0 1.5rem;
        background-color: var(--bodyTextColor);
        border-radius: 0.25rem;
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box;
    }


    #RPsbs-offerings-secondary .bcw-button-solid:before {
        content: "";
        position: absolute;
        height: 100%;
        width: 0%;
        background: var(--primaryLight);
        opacity: 1;
        top: 0;
        left: 0;
        z-index: -1;
        border-radius: 0.25rem;
        transition: width 0.3s;
    }


    #RPsbs-offerings-secondary .bcw-button-solid:hover:before {
        width: 100%;
    }

}

/* Tablet - 768px */
@media only screen and (min-width: 62rem) {


    #RPsbs-offerings-secondary .bcw-container {
        max-width: 80rem;
        flex-direction: row;
        justify-content: center;
        align-items: center;
    }


    #RPsbs-offerings-secondary .bcw-picture {
        /* 344px - 434px */
        width: clamp(21.5rem, 37.5vw, 27.125rem);
        flex: none;
    }


    #RPsbs-offerings-secondary .bcw-content {
        max-width: 33.875rem;
        margin: 0;
        width: 45%;
        height: 275px;
    }
}

/* Mobile Phones and Small Tablets */
@media only screen and (max-width: 62rem) {

    #RPsbs-offerings-secondary .bcw-container {
        gap: 0;
        padding-top: 0;
    }

}

/*-- -------------------------- -->
<--- About Comapany Side By Side -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {


    #RPsbs-company-history {
        padding: 0 1em;
        padding-top: 5%;
        padding-bottom: 3%;
        position: relative;
        z-index: 1;
        background-color: var(--secondary);
    }

    #RPsbs-company-history .bcw-container {
        width: 100%;
        /* changes to 1280px on tablet */
        max-width: 34.375rem;
        padding-top: var(--sectionPadding);
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 108px */
        gap: clamp(3rem, 8vw, 6.75rem);
        position: relative;
    }

    #RPsbs-company-history .bcw-content {
        text-align: left;
        width: 100%;
        max-width: 27.125rem;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    #RPsbs-company-history .bcw-title {
        display: flex;
        align-items: center;
        position: relative;
        color: var(--primary);
        padding-left: 20px;
        /* Space on the right for the lines */
        margin-bottom: 5%;
    }

    /* Standard Title */
    #RPsbs-company-history .bcw-title-top {
        font-size: var(--headerFontSize);
        font-weight: 900;
        line-height: 1.2em;
        text-align: center;
        /* Center the text horizontally */
        max-width: 50vw;
        margin: 0 auto 1rem auto;
        /* Center the element itself */
        color: var(--primary);
    }


    #RPsbs-company-history .bcw-title::before {
        content: '';
        position: absolute;
        background: var(--primary);
        /* Line color */
        width: 2px;
        /* Width of the vertical line */
        height: 100%;
        left: 0;
        /* Adjust this to move the line closer or further from the text */
    }

    #RPsbs-company-history .bcw-title h1 {
        margin: 0;
    }

    #RPsbs-company-history .bcw-title-text {
        margin-left: 20px;
        /* Space between the title and the text */
        display: flex;
        flex-direction: column;
    }

    #RPsbs-company-history .bcw-title-text p {
        margin: 0;
        font-size: 0.4em;
        /* Adjust text size as needed */
        line-height: 1.2;
        color: var(--bodyTextColor)
    }

    #RPsbs-company-history .bcw-text-wrapper {
        display: flex;
        align-items: flex-start;
        /* Align items to the top */
        margin-bottom: 1rem;
        /* Space between this block and the next content */
        width: 100%;
        /* Ensure the wrapper takes the full width */
    }


    #RPsbs-company-history .bcw-text-content {
        margin-left: 0;
        /* Ensure there's space for the icon */
        display: flex;
        flex-direction: column;
        /* Stack topper and text vertically */
        align-items: flex-start;
        /* Align topper and text to the left */
    }

    #RPsbs-company-history .bcw-topper {
        opacity: 0.8;
        border-bottom: 2px solid var(--primary);
        /* Adjust the width, style, and color as needed */
    }

    #RPsbs-company-history .bcw-text {
        margin-top: 0.5rem;
        /* Space between topper and text */
        opacity: 0.8;
    }

    #RPsbs-company-history .bcw-text:last-of-type {
        margin-bottom: 2rem;
    }


    #RPsbs-company-history .bcw-button-solid {
        font-size: 1rem;
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        text-decoration: none;
        font-weight: 700;
        text-align: center;
        margin: 0;
        color: #fff;
        min-width: 9.375rem;
        padding: 0 1.5rem;
        background-color: var(--primary);
        border-radius: 0.25rem;
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box;
    }

    #RPsbs-company-history .bcw-button-solid:before {
        content: "";
        position: absolute;
        height: 100%;
        width: 0%;
        background: #000;
        opacity: 1;
        top: 0;
        left: 0;
        z-index: -1;
        border-radius: 0.25rem;
        transition: width 0.3s;
    }

    #RPsbsr-248 .bcw-button-solid:hover:before {
        width: 100%;
    }
}

/* Tablet - 768px */
@media only screen and (min-width: 48rem) {


    #RPsbs-company-history .bcw-container {
        max-width: 80rem;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        padding-top: 5%;
    }

    #RPsbs-company-history .bcw-content {
        max-width: 33.875rem;
        margin: 0;
        width: 45%;
    }
}


/* Mobile - up to 360px */
@media only screen and (max-width: 48rem) {

    #About,
    #Portfolio,
    #Our_Difference,
    #FAQ {
        padding: 0 1em;
        padding-top: 5%;
        position: relative;
        z-index: 1;
        background-color: #fff8f8;
    }


    #Portfolio .spacer-2,
    #Our_Difference .spacer-3,
    #FAQ .spacer-4 {
        height: 75px;
        /* Adjust this value to increase/decrease space */
    }

    #About .spacer-1 {
        height: 40px;
    }



}

/* Tablet - 768px */
@media only screen and (min-width: 48rem) {

    #About .spacer-1,
    #Portfolio .spacer-2,
    #Our_Difference .spacer-3,
    #FAQ .spacer-4 {
        height: 30px;
        /* Adjust this value to increase/decrease space */
    }

    #Our_Difference .spacer-3 {
        height: 100px;
    }
}


/*-- -------------------------- -->
<---          Arrows            -->
<--- -------------------------- -*/
#SBS-Arrow-Advance .container {
    display: flex;
    flex-direction: column;
    /* Stack content and arrows vertically */
    align-items: center;
    width: 100%;
    margin-bottom: 5%;
}

#SBS-Arrow-Advance .content {
    display: flex;
    overflow: hidden;
    /*width: 100%;*/
    position: relative;
}

#SBS-Arrow-Advance .section {
    width: 100%;
    transition: opacity 0.5s;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
}

#SBS-Arrow-Advance .section.active {
    opacity: 1;
    position: relative;
}

.arrow-container {
    display: flex;
    justify-content: center;
    margin-top: 1%;
    /* Add spacing between testimonials and arrows */
}

#SBS-Arrow-Advance .arrow {
    width: 50px;
    height: 45px;
    line-height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    color: rgb(0, 0, 0);
    font-size: 50px;
    cursor: pointer;
    transition: background-color 0.3s;
    outline: none;
    /* Prevent default outline on click */
    -webkit-tap-highlight-color: transparent;
    /* Remove tap highlight on mobile */
    margin: 0 50%;
    /* Add space between the arrows */
    background-color: #fff8f8;
}

/* Additional styles for better visual appearance */
@media only screen and (max-width: 768px) {
    #SBS-Arrow-Advance .arrow {
        font-size: 40px;
        height: 65px;
        border: none;
    }

    #SBS-Arrow-Advance .arrow-container {
        flex-direction: row;
        /* Ensure arrows are side by side on mobile */
        margin-top: 10px;
        /* Adjust spacing for mobile */
    }
}




/*-- -------------------------- -->
<---          Reviews           -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {

    #reviews-566 .cs-container {
        width: 90%;
        /* changes to 1280px at tablet */
        max-width: 34.375rem;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: clamp(3rem, 6vw, 4rem);
    }

    #reviews-566 .cs-content {
        /* Center content horizontally within its container */
        display: flex;
        flex-direction: column;
        align-items: center;
        /* Center horizontally within the container */
        text-align: center;
        /* Center text (if any) within the content */
        width: 100%;
        max-width: 32.625rem;
        /* Limit the maximum width */
        margin: 0 auto;
        /* Center the entire element horizontally within its parent */
    }


    #reviews-566 .cs-item {
        list-style: none;
        width: 100%;
        /* 32px - 60px top & bottom */
        /* 16px - 48px left & right */
        padding: clamp(2rem, 6.15vw, 3.75rem) clamp(1rem, 4.15vw, 3rem);
        background-color: var(--secondary);
        /* prevents padding from adding to height and width */
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: flex-start;
        flex-direction: column;
        position: relative;
    }

    #reviews-566 .cs-item-text {
        /* 14px - 16px */
        font-size: clamp(0.875rem, 1.5vw, 1rem);
        line-height: 1.5em;
        margin: 0;
        /* 40px - 64px */
        margin-bottom: clamp(2.5rem, 8vw, 4rem);
        color: var(--bodyTextColor);
    }

    #reviews-566 .cs-flex-group {
        margin-top: auto;
        display: flex;
        justify-content: flex-start;
        align-items: center;
        gap: 1.25rem;
    }

    #reviews-566 .cs-profile {
        width: 5rem;
        height: 5rem;
        border-radius: 50%;
        /* clips image corners to make circle */
        overflow: hidden;
        position: relative;
        display: block;
    }

    #reviews-566 .cs-profile img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        /* makes the image behave like a background image */
        object-fit: cover;
    }

    #reviews-566 .cs-name {
        /* 16px - 20px */
        font-size: clamp(1rem, 2vw, 1.25rem);
        line-height: 1.5em;
        font-weight: 700;
        margin: 0 0 0.5rem 0;
        color: var(--bodyTextColor);
        display: block;
    }

    #reviews-566 .cs-job {
        /* 13px - 16px */
        font-size: clamp(0.8125rem, 1.6vw, 1rem);
        line-height: 1.2em;
        font-weight: 400;
        text-transform: uppercase;
        letter-spacing: 0.01em;
        margin: 0;
        color: var(--bodyTextColor);
        display: block;
    }
}

/* Tablet - 768px */
@media only screen and (min-width: 48em) {

    #reviews-566 {
        padding: var(--sectionPadding);
    }

    #reviews-566 .cs-container {
        max-width: 80rem;
    }

    #reviews-566 .cs-card-group {
        flex-direction: row;
        justify-content: space-between;
        align-items: stretch;
    }
}

/*-- -------------------------- -->
<---            CTA             -->
<--- -------------------------- -*/
/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #cta-697 {
        padding: var(--sectionPadding);
        padding-top: 2%;
        padding-bottom: 0;
        background-color: var(--primary);
        position: relative;
        z-index: 1;
        bottom: -5px;
    }

    #cta-697 .cs-container {
        width: 100%;
        max-width: 80rem;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: 1.2rem;
    }

    #cta-697 .cs-content {
        /* set text align to left if content needs to be left aligned */
        text-align: center;
        width: 100%;
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: center;
        /* 48px - 64px */
        gap: 1.2rem;
    }

    #cta-697 .cs-title {
        color: var(--bodyTextColorWhite);
    }

    #cta-697 .cs-button-solid {
        font-size: 1rem;
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        text-decoration: none;
        font-weight: 700;
        text-align: center;
        margin: 0;
        color: var(--bodyTextColorWhite);
        min-width: 9.375rem;
        padding: 0 1.5rem;
        background-color: var(--bodyTextColor);
        border-radius: 0.25rem;
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box;
    }

    #cta-697 .cs-button-solid:before {
        content: "";
        position: absolute;
        height: 100%;
        width: 0%;
        background: var(--primaryLight);
        opacity: 1;
        top: 0;
        left: 0;
        z-index: -1;
        border-radius: 0.25rem;
        transition: width 0.3s;
    }

    #cta-697 .cs-button-solid:hover {
        color: var(--bodyTextColor);
    }

    #cta-697 .cs-button-solid:hover:before {
        width: 100%;
    }

    #cta-697 .cs-background {
        width: 100%;
        height: 100%;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
        /* makes it act like a background image */
        object-fit: cover;
    }
}

/* Small Desktop - 1024px */
@media only screen and (min-width: 64rem) {
    #cta-697 .cs-content {
        text-align: left;
    }
}


/*-- -------------------------- -->
<--- Why Choose Us Side By Side -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {


    #SBS-Portfolio {
        padding: 0 1em;
        position: relative;
        z-index: 1;
    }

    #SBS-Portfolio .bcw-container {
        width: 100%;
        /* changes to 1280px on tablet */
        max-width: 34.375rem;
        padding: var(--sectionPadding);
        padding-left: 0;
        padding-right: 0;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 108px */
        gap: 2%;
        position: relative;
        margin-bottom: 3%;
        padding-top: 0;
    }

    #SBS-Portfolio .bcw-content {
        text-align: center;
        width: 100%;
        max-width: 27.125rem;
        display: flex;
        flex-direction: column;
        align-items: center;
        padding-top: 3%;
    }


    #SBS-Portfolio .bcw-title {
        display: inline-block;
        position: relative;
        color: var(--primary);
        /*padding-right: 60px;*/
        margin-bottom: 0;
        /*padding-left: 2%;*/

    }

    #SBS-Portfolio .bcw-text-content {
        margin-left: clamp(4rem, 8vw, 6rem);
        /* Ensure there's space for the icon */
        display: flex;
        flex-direction: column;
        /* Stack topper and text vertically */
        align-items: flex-start;
        /* Align topper and text to the left */
    }


    #SBS-Portfolio .bcw-text {
        margin-top: 0.5rem;
        /* Space between topper and text */
        opacity: 0.8;
    }

    #SBS-Portfolio .bcw-text:last-of-type {
        margin-bottom: 2rem;
    }

    #SBS-Portfolio .bcw-picture {
        width: 100%;
        margin: 0;
        position: relative;
        display: block;
        /* width divided by height */
        aspect-ratio: 1.3;
        /* prevents border from adding to height and width */
        box-sizing: border-box;
    }

    #SBS-Portfolio .bcw-picture img {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
        object-fit: cover;
    }

    #SBS-Portfolio .bcw-button-solid {
        font-size: 1rem;
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        text-decoration: none;
        font-weight: 700;
        text-align: center;
        margin: 0;
        color: var(--bodyTextColorWhite);
        min-width: 9.375rem;
        padding: 0 1.5rem;
        background-color: var(--primary);
        border-radius: 0.25rem;
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box;
    }


    #SBS-Portfolio .bcw-button-solid:before {
        content: "";
        position: absolute;
        height: 100%;
        width: 0%;
        background: var(--primaryLight);
        opacity: 1;
        top: 0;
        left: 0;
        z-index: -1;
        border-radius: 0.25rem;
        transition: width 0.3s;
    }

    #SBS-Portfolio .bcw-button-solid:hover {
        color: var(--bodyTextColor);
    }

    #SBS-Portfolio .bcw-button-solid:hover:before {
        width: 100%;

    }

}

/* Tablet - 768px */
@media only screen and (min-width: 48rem) {


    #SBS-Portfolio .bcw-container {
        max-width: 80rem;
        flex-direction: row;
        justify-content: center;
        align-items: center;
    }


    #SBS-Portfolio .bcw-lines {
        height: 100%;
        width: 35%;
        display: block;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        z-index: -1;
    }



    #SBS-Portfolio .bcw-picture {
        /* 344px - 434px */
        width: clamp(21.5rem, 37.5vw, 27.125rem);
        flex: none;
    }


    #SBS-Portfolio .bcw-content {
        max-width: 33.875rem;
        margin: 0;
        width: 45%;
    }
}


/*-- -------------------------- -->
<---          Reviews           -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #reviews-355 {
        padding: var(--sectionPadding);
    }

    #reviews-355 .cs-container {
        width: 100%;
        max-width: 90rem;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: clamp(3rem, 6vw, 4rem);
    }

    #reviews-355 .cs-content {
        /* set text align to left if content needs to be left aligned */
        text-align: center;
        width: 100%;
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: center;
    }

    #reviews-355 .cs-card-group {
        padding: 0;
        margin: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        /* 16px - 20px */
        gap: clamp(1rem, 2.5vw, 1.15rem);
    }

    #reviews-355 .cs-item {
        list-style: none;
        width: 100%;
        max-width: 39.375rem;
        margin: 0;
        /* 24px - 32px top & bottom */
        /* 16px - 40px left & right */
        padding: clamp(1.5rem, 3.15vw, 2rem) clamp(1rem, 3.15vw, 2.5rem);
        background-color: var(--secondary);
        /* prevents padding from adding to height and width */
        box-sizing: border-box;
        display: flex;
        justify-content: center;
        align-items: flex-start;
        flex-direction: column;
        position: relative;
    }

    #reviews-355 .cs-quote {
        width: 2.5rem;
        height: auto;
        margin-bottom: 2rem;
        display: block;
    }

    #reviews-355 .cs-review {
        /* 14px - 20px */
        font-size: clamp(0.875rem, 1.5vw, 1rem);
        line-height: 1.5em;
        margin: 0;
        /* 20px - 40px */
        margin-bottom: clamp(1.25rem, 3vw, 2.5rem);
        color: var(--bodyTextColorInverted);
    }

    #reviews-355 .cs-name {
        /* 20px - 25px */
        font-size: clamp(1.25rem, 3vw, 1.5625rem);
        line-height: 1.2em;
        font-weight: 700;
        margin: 0;
        /* in case one card has more text than the other, this pushes up against the review text so the name and title are always at the bottom. Only works if parent is a flexbox */
        margin-top: auto;
        color: var(--primary);
        display: block;
    }

    #reviews-355 .cs-job {
        /* 14px - 16px */
        font-size: clamp(0.875rem, 1.6vw, 1rem);
        line-height: 1.5em;
        margin: 0;
        color: var(--bodyTextColorInverted);
        display: block;
    }
}

/* Tablet - 768px */
@media only screen and (min-width: 1100px) {
    #reviews-355 .cs-card-group {
        flex-direction: row;
        justify-content: center;
        align-items: stretch;
        flex-wrap: wrap;
    }

    #reviews-355 .cs-item {
        width: 45%;
    }
}



/*-- -------------------------- -->
<---          Services          -->
<--- -------------------------- -*/
/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #services-1188 {
        padding: var(--sectionPadding);
    }

    #services-1188 .cs-container {
        max-width: 80rem;
        width: 100%;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: clamp(3rem, 6vw, 4rem);
    }

    #services-1188 .cs-content {
        width: 100%;
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: center;
        /* set text align to left if content needs to be left aligned */
        text-align: center;
    }

    #services-1188 .cs-card-group {
        /* changes to 1280px at desktop */
        max-width: 56.25rem;
        width: 100%;
        margin: 0;
        padding: 0;
        display: grid;
        justify-content: center;
        gap: 1rem;
    }

    #services-1188 .cs-item {
        list-style: none;
        max-width: 23rem;
        height: 14rem;
        width: 100%;
        margin: 0;
        box-sizing: border-box;
        background-color: var(--secondary);
        padding: 1rem;
        border: 1px solid #e8e8e8;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: left;
    }

    #services-1188 .cs-picture {
        width: 5rem;
        height: 5rem;
        margin-bottom: 1.25rem;
        box-sizing: border-box;
        /* prevents border from affecting height and width */
        background-color: #f7f7f7;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        /* prevents flexbox from squishing it */
        flex: none;
    }

    #services-1188 .cs-icon {
        width: 1.875rem;
        height: auto;
        display: block;
    }

    #services-1188 .cs-h3 {
        font-size: 1.25rem;
        line-height: 1.5em;
        margin: 0;
        margin-bottom: 0.5rem;
        color: var(--bodyTextColor);

        text-align: center;
    }

    #services-1188 .cs-item-text {
        /* 14px - 16px */
        font-size: clamp(0.875rem, 1.5vw, 1rem);
        line-height: 1.5em;
        margin: 0;
        color: var(--bodyTextColor);
        text-align: center;
    }

    #services-1188 .cs-button-solid {
        font-size: 1rem;
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        font-weight: 700;
        min-width: 9.375rem;
        margin: 0;
        /* prevents padding from adding to the width */
        box-sizing: border-box;
        padding: 0 1.5rem;
        color: #fff;
        background-color: var(--primary);
        text-decoration: none;
        display: inline-block;
        position: relative;
        z-index: 1;
        text-align: center;
        border-radius: .2em;
    }

    #services-1188 .cs-button-solid:before {
        content: "";
        width: 0%;
        height: 100%;
        background: #000;
        opacity: 1;
        border-radius: 0.25rem;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
        transition: width 0.3s;
    }

    #services-1188 .cs-button-solid:hover:before {
        width: 100%;
    }
}

/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
    #services-1188 .cs-card-group {
        grid-template-columns: repeat(3, 1fr);
        gap: 1.25rem;
        max-width: 70rem;
    }

    #services-1188 .cs-item {
        margin: 0;
        height: 18rem;
    }
}

/* Large Desktop - 1300px */
@media only screen and (min-width: 81.25rem) {
    #services-1188 .cs-card-group {
        max-width: 80rem;
    }

    #services-1188 .cs-item {
        max-width: none;
        padding: 2rem 1.5rem;
    }
}

/*-- -------------------------- -->
<---          Pricing           -->
<--- -------------------------- -*/

/* Mobile - 360px */
@media only screen and (min-width: 0rem) {
    #pricing-603 {
        padding: var(--sectionPadding);
    }


    #pricing-603 .cs-container {
        width: 100%;
        max-width: 80rem;
        margin: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 48px - 64px */
        gap: 1rem;
        position: relative;
    }

    #pricing-603 .cs-content {
        /* set text align to left if content needs to be left aligned */
        text-align: center;
        width: 100%;
        display: flex;
        flex-direction: column;
        /* centers content horizontally, set to flex-start to left align */
        align-items: center;
    }

    #pricing-603 .cs-toggle-group {
        width: auto;
        margin: 2rem auto 0;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    #pricing-603 .cs-plan {
        font-size: 1rem;
        line-height: 1.5em;
        margin: 0;
        padding: 0;
        color: var(--headerColor);
    }

    #pricing-603 .cs-plan:hover {
        cursor: pointer;
    }

    #pricing-603 .cs-toggle {
        width: 3.875rem;
        height: 2.25rem;
        border-radius: 2.5rem;
        background-color: var(--primaryLight);
        margin: 0 0.75rem;
        position: relative;
        /* prevent flexbox from squishing it */
        flex: none;
    }

    #pricing-603 .cs-toggle:hover {
        cursor: pointer;
    }

    #pricing-603 .cs-toggle.active:before {
        opacity: 1;
    }

    #pricing-603 .cs-toggle.active .cs-toggle-switch {
        left: 2rem;
    }

    #pricing-603 .cs-toggle:before {
        /* top right box */
        content: "";
        width: 100%;
        height: 100%;
        background: linear-gradient(90deg, #ffba43 -24.69%, #e12213 126.23%);
        opacity: 0;
        position: absolute;
        display: block;
        top: 0;
        left: 0;
        border-radius: 2.5rem;
        transition: opacity 0.3s;
    }

    #pricing-603 .cs-toggle-switch {
        width: 1.5rem;
        height: 1.5rem;
        display: block;
        border-radius: 50%;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        left: 0.375rem;
        transition: left 0.3s;
        background: #fff;
    }

    #pricing-603 .cs-card-group {
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        /* 16px - 20px */
        gap: clamp(1rem, 1.8vw, 1.25rem);
        row-gap: 2.5rem;
        perspective: 700px;
        transform-style: preserve-3d;
    }

    #pricing-603 .cs-card-group.active.cs-option1 {
        /* when the active class is on the cs-card-group, run these styles */
        transform: scale(0);
        position: absolute;
        left: 0;
        bottom: 0;
        opacity: 0;
        visibility: hidden;
    }

    #pricing-603 .cs-card-group.active.cs-option1 .cs-item {
        /* when the active class is on the cs-card-group, run these styles */
        opacity: 0;
        transform: translateY(1.25rem) rotateY(90deg);
        transition: opacity 0.3s,
            transform 0.6s;
    }

    #pricing-603 .cs-card-group.active.cs-option2 {
        /* when the active class is on the cs-card-group, run these styles */
        visibility: visible;
        pointer-events: all;
        opacity: 1;
        position: relative;
        left: auto;
        top: auto;
        transform: scale(1);
    }

    #pricing-603 .cs-card-group.active.cs-option2 .cs-item {
        /* when the active class is on the cs-card-group, run these styles */
        opacity: 1;
        transform: translateY(0rem) rotateY(0deg);
    }

    #pricing-603 .cs-option1 {
        /* default styles when there is no active class on the cs-card-group */
        opacity: 1;
        visibility: visible;
        left: left;
        bottom: auto;
        transform: scale(1);
        transform-origin: left top;
        transition: transform 0.6s,
            opacity 0.3s,
            visibility 0.3s;
    }

    #pricing-603 .cs-option1 .cs-item {
        /* default styles when there is no active class on the cs-card-group */
        opacity: 1;
        transform: translateY(0rem) rotateY(0deg);
        transition: opacity 0.3s,
            transform 0.6s;
    }

    #pricing-603 .cs-option1 .cs-item:nth-of-type(2) {
        transition-delay: 0.2s;
    }

    #pricing-603 .cs-option1 .cs-item:nth-of-type(3) {
        transition-delay: 0.4s;
    }

    #pricing-603 .cs-option2 {
        /* default styles when there is no active class on the cs-card-group */
        visibility: hidden;
        pointer-events: none;
        opacity: 0;
        position: absolute;
        left: 0;
        /* reset on tablet */
        top: 62.5rem;
        transform: scale(0);
        transform-origin: left top;
        transition: transform 0.6s,
            opacity 0.3s,
            visibility 0.3s,
            bottom 0.6s;
    }

    #pricing-603 .cs-option2 .cs-item {
        /* default styles when there is no active class on the cs-card-group */
        opacity: 0;
        transform: translateY(1.25rem) rotateY(90deg);
        transition: opacity 0.3s,
            transform 0.6s;
    }

    #pricing-603 .cs-option2 .cs-item:nth-of-type(2) {
        transition-delay: 0.2s;
    }

    #pricing-603 .cs-option2 .cs-item:nth-of-type(3) {
        transition-delay: 0.4s;
    }

    #pricing-603 .cs-item {
        list-style: none;
        width: 100%;
        /* matches the -88px the cs-price-box's margin top to offset it */
        margin: 5.5rem 0 0 0;
        /* 80px - 100px top *
              /* 16px - 56px left & right */
        /* 16px - 48px bottom */
        padding: clamp(5rem, 9vw, 6.25rem) clamp(1rem, 2.3vw, 3.5rem) clamp(1rem, 5vw, 3rem);
        padding-top: 0;
        background-color: var(--secondary);
        /* prevents padding and border from affecting height and width */
        box-sizing: border-box;

        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    #pricing-603 .cs-price-box {
        width: 100%;
        padding: clamp(1.5rem, 4vw, 2rem) clamp(1.5rem, 3vw, 3rem);
        /* prevents padding and border from affecting height and width */
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 0.75rem;
    }

    #pricing-603 .cs-package {
        /* 16px - 20px */
        font-size: var(--bodyFontSize);
        line-height: 1.2em;
        text-align: center;
        font-weight: 700;
        margin: 0;
        color: var(--bodyTextColor);
    }

    #pricing-603 .cs-price {
        /* 24px - 32px */
        font-size: clamp(1.5rem, 2.5vw, 2rem);
        line-height: 1.2em;
        text-align: center;
        font-weight: 700;
        margin: 0;
        color: var(--bodyTextColorWhite);
    }

    #pricing-603 .cs-desc {
        font-size: 0.75rem;
        line-height: 1.2em;
        text-align: center;
        margin: 0;
        color: var(--bodyTextColorWhite);
        opacity: 0.8;
    }

    #pricing-603 .cs-item-text {
        font-size: var(--bodyFontSize);
        line-height: 1.5em;
        text-align: left;
        font-weight: 400;
        /* 16px - 24px */
        margin: 0 0 clamp(1rem, 2vw, 1.5rem);
        color: var(--bodyTextColor);
    }

    #pricing-603 .cs-included {
        /* 16px - 20px */
        font-size: var(--bodyFontSize);
        line-height: 1.2em;
        text-align: left;
        font-weight: 700;
        /* 16px - 24px */
        margin: 0 0 clamp(1rem, 2vw, 1.5rem);
        color: var(--bodyTextColor);
    }

    #pricing-603 .cs-ul {
        /* 32px - 48px */
        margin: 0 0 clamp(2rem, 5vw, 3rem);
        padding: 0;
        display: flex;
        flex-direction: column;
        align-items: flex-end;
        gap: 1rem;
    }

    #pricing-603 .cs-li {
        font-size: 1rem;
        list-style: none;
        line-height: 1.5em;
        width: 100%;
        margin: 0;
        padding: 0;
        color: var(--bodyTextColor);
        display: flex;
        justify-content: flex-start;
        /* push everything to the top so if the li goes to two lines the icon stays at the top */
        align-items: flex-start;
        gap: 1rem;
    }

    #pricing-603 .cs-icon {
        width: 1.2rem;
        height: auto;
        /* push icon a little from the top so it looks centered */
        margin-top: 0.1875rem;
        display: block;
    }

    #pricing-603 .cs-button-solid {
        font-size: 1rem;
        /* 46px - 56px */
        line-height: clamp(2.875rem, 5.5vw, 3.5rem);
        text-decoration: none;
        font-weight: 700;
        text-align: center;
        margin: 0;
        color: #fff;
        min-width: 9.375rem;
        padding: 0 1.5rem;
        background-color: var(--primary);
        border-radius: 0.25rem;
        display: inline-block;
        position: relative;
        z-index: 1;
        /* prevents padding from adding to the width */
        box-sizing: border-box;
    }

    #pricing-603 .cs-button-solid:before {
        content: "";
        position: absolute;
        height: 100%;
        width: 0%;
        background: #000;
        opacity: 1;
        top: 0;
        left: 0;
        z-index: -1;
        border-radius: 0.25rem;
        transition: width 0.3s;
    }

    #pricing-603 .cs-button-solid:hover:before {
        width: 100%;
    }

    #pricing-603 .cs-price-button {
        /* 14px - 18px */
        font-size: clamp(0.875rem, 1.5vw, 1.125rem);
        /* 36px - 50px */
        line-height: clamp(2.25rem, 4.5vw, 3.125rem);
        font-weight: 400;

        width: 30%;
        height: clamp(2.25rem, 4.5vw, 3.125rem);
        /* pushes button to the bottom of the cs-item */
        margin-top: auto;
        border-radius: 0.25rem;
        align-self: center;
    }
}

/* Tablet - 768px */
@media only screen and (min-width: 48rem) {
    #pricing-603 .cs-card-group {
        flex-direction: row;
        justify-content: space-between;
        align-items: stretch;
    }

    #pricing-603 .cs-option2 {
        top: auto;
        bottom: 0;
    }
}