body, html {
    margin: 0;
    padding: 0;
    height: 100%;
    background-color: var(--default-color);
}

/* Preloader - Full screen */
#preloader {
    position: fixed;
    width: 100%;
    height: 100%;
    background: var(--background-color);
    display: flex;
    justify-content: center;
    align-items: center;
    transition: opacity 1s ease-out;
    z-index: 99999999;

    top: 0;
    left: 0;
}

/* Animated slider */
.slider {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border: 5px solid transparent;
    border-top: 5px solid var(--default-color);
    animation: spin 1s linear infinite;
}

/* Load animation */
@keyframes spin {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Hide content initially */
#content {
    opacity: 0;
    transition: opacity 1s ease-in;
}

/* Fading */
.fade-out {
    opacity: 0;
    pointer-events: none;
}

.show-content {
    opacity: 1 !important;
}

.webchatStartButtonContainer {
    left: calc(100% - 240px) !important;
}

.webchatContainer {
    right: 25px !important;
}

.bg-body {
    margin-top: 75px;
    padding-top: 50px;
    padding-bottom: 100px;
    height: auto;

    width: 100%;
    padding-right: 25px;
    padding-left: 25px;
    margin-right: auto;
    margin-left: auto;

    background-image: url('//287524.fs1.hubspotusercontent-na1.net/hubfs/287524/raw_assets/public/@marketplace/Drive_Web_Studio/drive-theme-free/images/bg-1.png') !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

.bg-body :where(h1, h2, h3, h4, h5, h6) {
    font-family: var(--default-font) !important;
    font-weight: 900;
}

.bg-body :where(p, small, span, strong) {
    font-family: var(--default-font) !important;
    font-weight: 400;
}

    .bg-body .bg-body__section {
        padding-top: 15px;
    }
    
        .bg-body .bg-body__section .bg-body__section__right {
            height: auto;
        }

            .bg-body .bg-body__section .bg-body__section__right h2 {
                font-size: 30px;
                font-weight: bold;
                color: var(--background-color);
            }

            .bg-body .bg-body__section .bg-body__section__right .bg-body__section__right__buttons .bg-body__section__right__buttons__btn {
                background: var(--background-color);
                color: var(--default-color);
                cursor: pointer;

                position: relative;
                display: flex;
                width: 375px;
                height: 55px;
                align-items: center;
                justify-content: flex-start;
                gap: 1rem;
                text-decoration: none;
                overflow: hidden;
                padding: 1rem;
                border: 1px solid var(--default-color);
                border-radius: 999rem;
                max-width: 400px;
                margin: 0 auto;
                z-index: 0;
            }

            .bg-body .bg-body__section .bg-body__section__right .bg-body__section__right__buttons .bg-body__section__right__buttons__btn::before {
                content: '';
                position: absolute;
                top: 0;
                left: -100%;
                width: 100%;
                height: 100%;
                background: linear-gradient(90deg, var(--background-color),var(--secondary-color));
                z-index: -1;
                transition: all 0.3s ease;
            }

            .bg-body .bg-body__section .bg-body__section__right .bg-body__section__right__buttons .bg-body__section__right__buttons__btn:hover {
                background: linear-gradient(to right, var(--background-color), var(--secondary-color));
            }

            .bg-body .bg-body__section .bg-body__section__right .bg-body__section__right__buttons .bg-body__section__right__buttons__btn::hover::before {
                left: 0;
                transition: left 0.5s ease;
            }

            .bg-body .bg-body__section .bg-body__section__right .bg-body__section__right__buttons .bg-body__section__right__buttons__btn img {
                flex-shrink: 0;
                width: 25px;
                height: auto;
            }

            .bg-body .bg-body__section .bg-body__section__right .bg-body__section__right__buttons .bg-body__section__right__buttons__btn .bg-body__section__right__buttons__btn__content {
                display: flex;
                flex-direction: column;
                justify-content: center;
                flex-grow: 1;
            }

            .bg-body .bg-body__section .bg-body__section__right .bg-body__section__right__buttons .bg-body__section__right__buttons__btn .bg-body__section__right__buttons__btn__content p {
                position: relative;
                margin: 0;
                font-size: 0.7rem;
                font-weight: bold;
                letter-spacing: 1px;
                text-align: left;
            }

            .bg-body .bg-body__section .bg-body__section__right .bg-body__section__right__buttons .bg-body__section__right__buttons__btn .bg-body__section__right__buttons__btn__content small {
                position: relative;
                font-size: 0.5rem;
                color: var(--default-color);
                text-align: left;
            }

        .bg-body .bg-body__section .bg-body__section__left {
            height: auto;
        }

            .bg-body .bg-body__section .bg-body__section__left h2 {
                font-size: 30px;
                font-weight: bold;
                color: var(--background-color);
            }

            .bg-body .bg-body__section .bg-body__section__left p {
                font-size: 20px;
                text-align: left;
            }

            .bg-body .bg-body__section .bg-body__section__left ul {
                list-style: none;
                padding-left: 0;
            }
            
            .bg-body .bg-body__section .bg-body__section__left ul li {
                position: relative;
                padding-left: 40px;
                margin-top: 15px;
            }
            
            .bg-body .bg-body__section .bg-body__section__left ul li::before {
                content: "\F26A"; /* Icon code in bootstrap icons */
                font-family: "bootstrap-icons"; /* Specify the source */
                font-size: 25px;
                color: var(--background-color);
                position: absolute;
                left: 0;
                top: 50%;
                transform: translateY(-50%);
            }

@media (min-width: 300px) and (max-width: 768px) {
    .bg-body {
        margin-top: 50px;
        padding-top: 30px;
        padding-bottom: 50px;

        padding-right: 15px;
        padding-left: 15px;
    }

    .bg-body .bg-body__section .bg-body__section__left {
        margin-top: 50px;
    }
}