.checklist {
    ul {
        padding-left: 0;
        list-style: none;
        text-align: left;
        margin-bottom: 0;
    }

    li {
        position: relative;
        color: $body-color;
        font-family: $body-font;
        font-size: 18px;
        font-weight: 400;
        line-height: 28px;
        padding-left: 40px;


        // &:before {
        //     content: url('assets/img/icon/checkmark.svg');
        //     font-family: $icon-font;
        //     position: absolute;
        //     left: 0;
        //     top: 0px;
        //     font-size: 32px;
        //     font-weight: 600;
        //     color: $theme-color;
        //     margin-right: 10px;
        // }

        &:not(:last-child) {
            margin-bottom: 10px;
        }
    }

    &.mb-45 {
        @include lg {
            margin-bottom: 40px;
        }
    }

    &.style4 {
        ul {
            li {
                padding-left: 35px;
                &:before { 
                    content: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_254_4024)'%3E%3Cpath d='M14.166 2.78135C12.9403 2.07231 11.5172 1.6665 9.99935 1.6665C5.39697 1.6665 1.66602 5.39746 1.66602 9.99984C1.66602 14.6022 5.39697 18.3332 9.99935 18.3332C14.6017 18.3332 18.3327 14.6022 18.3327 9.99984C18.3327 9.42909 18.2753 8.87167 18.166 8.33317' stroke='%230B59DB' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M6.66602 10.4165C6.66602 10.4165 7.91602 10.4165 9.58268 13.3332C9.58268 13.3332 14.215 5.69428 18.3327 4.1665' stroke='%230B59DB' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_254_4024'%3E%3Crect width='20' height='20' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C!-- Code injected by live-server --%3E%3Cscript%3E // %3C!%5BCDATA%5B %3C-- For SVG support if ('WebSocket' in window) %7B (function () %7B function refreshCSS() %7B var sheets = %5B%5D.slice.call(document.getElementsByTagName('link')); var head = document.getElementsByTagName('head')%5B0%5D; for (var i = 0; i %3C sheets.length; ++i) %7B var elem = sheets%5Bi%5D; var parent = elem.parentElement %7C%7C head; parent.removeChild(elem); var rel = elem.rel; if (elem.href && typeof rel != 'string' %7C%7C rel.length == 0 %7C%7C rel.toLowerCase() == 'stylesheet') %7B var url = elem.href.replace(/(&%7C%5C%3F)_cacheOverride=%5Cd+/, ''); elem.href = url + (url.indexOf('%3F') %3E= 0 %3F '&' : '%3F') + '_cacheOverride=' + (new Date().valueOf()); %7D parent.appendChild(elem); %7D %7D var protocol = window.location.protocol === 'http:' %3F 'ws://' : 'wss://'; var address = protocol + window.location.host + window.location.pathname + '/ws'; var socket = new WebSocket(address); socket.onmessage = function (msg) %7B if (msg.data == 'reload') window.location.reload(); else if (msg.data == 'refreshcss') refreshCSS(); %7D; if (sessionStorage && !sessionStorage.getItem('IsThisFirstTime_Log_From_LiveServer')) %7B console.log('Live reload enabled.'); sessionStorage.setItem('IsThisFirstTime_Log_From_LiveServer', true); %7D %7D)(); %7D else %7B console.error('Upgrade your browser. This Browser is NOT supported WebSocket for Live-Reloading.'); %7D // %5D%5D%3E%3C/script%3E%3C/svg%3E%0A");
                    font-family: var(--icon-font);
                    position: absolute;
                    left: 0;
                    top: -3px; 
                    font-size: 32px;
                    font-weight: 600;
                    color: var(--theme-color);
                    margin-right: 10px;
                }
            }
        }
    }

    &.style5 {
        ul {
            li {
                &:before {
                    content: url("data:image/svg+xml,%3Csvg width='25' height='24' viewBox='0 0 25 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.5 1.5C6.65 1.5 2 6.15 2 12C2 17.85 6.65 22.5 12.5 22.5C18.35 22.5 23 17.85 23 12C23 6.15 18.35 1.5 12.5 1.5ZM12.5 21C7.55 21 3.5 16.95 3.5 12C3.5 7.05 7.55 3 12.5 3C17.45 3 21.5 7.05 21.5 12C21.5 16.95 17.45 21 12.5 21Z' fill='%23EB5757'/%3E%3Cpath d='M16.55 17.25L12.5 13.2L8.45 17.25L7.25 16.05L11.3 12L7.25 7.95L8.45 6.75L12.5 10.8L16.55 6.75L17.75 7.95L13.7 12L17.75 16.05L16.55 17.25Z' fill='%23EB5757'/%3E%3C/svg%3E%0A");
                }
            }
        }
    }
}

.mega-hover {
    position: relative;
    overflow: hidden;
    z-index: 2;

    &:after,
    &:before {
        content: "";
        position: absolute;
        pointer-events: none;
        opacity: 1;
        z-index: -1;
    }

    &:before {
        top: 0;
        right: 51%;
        bottom: 0;
        left: 50%;
        background: rgba(255, 255, 255, 0.2);
    }

    &:after {
        top: 50%;
        right: 0;
        bottom: 50%;
        left: 0;
        background: rgba(255, 255, 255, 0.3);
    }

    &:hover {
        &:before {
            left: 0;
            right: 0;
            opacity: 0;
            transition: all 900ms linear;
        }

        &:after {
            top: 0;
            bottom: 0;
            opacity: 0;
            transition: all 900ms linear;
        }
    }
}

.bg-img {
    position: absolute;
    inset: 0;
    height: 100%;
    width: 100%;

    img {
        width: 100%;
        height: 100%;
    }
}

.th-video {
    position: relative;
    border-radius: 10px;

    img {
        border-radius: inherit;
    }

    .play-btn {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
}

.rounded-10 {
    border-radius: 10px;
}

.rounded-20 {
    border-radius: 20px;

    @include sm {
        border-radius: 10px;
    }
}

.btn-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 30px;
}

.filter-menu {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 24px;
    text-align: center;
    margin-top: -20px;
    margin-bottom: 60px;

    @include lg {
        margin-bottom: 50px;
    }

    @include md {
        margin-top: -10px;
        margin-bottom: 45px;
        gap: 6px;
    }

    .tab-btn {
        background-color: $smoke-color;
        border: none;
        border-radius: 8px;
        padding: 5px 20px;
        font-family: $body-font;
        font-weight: 400;
        font-size: 14px;
        color: $title-color;
        transition: all 0.4s ease-in-out;

        &:hover,
        &.active {
            background-color: $theme-color;
            color: $white-color;
        }
    }

    .th-btn {
        border-radius: 8px;
        padding: 15px 30px;
        background-color: $smoke-color;
        color: $body-color;
        min-width: auto;

        &:before {
            background-color: $theme-color;
        }

        &:hover,
        &.active {
            border-color: $theme-color;
            color: $white-color;

            &:before {
                border-radius: 3px;
            }
        }

        @include md {
            padding: 13px 20px;
        }
    }
}

@include lg {
    p {
        &.mb-40 {
            margin-bottom: 35px;
        }

        &.mb-45 {
            margin-bottom: 38px;
        }
    }
}


.global-image {
    position: relative;
    overflow: hidden;
    border-radius: 40px;

    &:before {
        content: '';
        z-index: 1;
        position: absolute;
        background: $theme-color;
        display: block;
        width: 100%;
        height: 100%;
        border-radius: 40px;
        transform-origin: 100% 50%;
        transform: scaleX(0) translateX(0);
        animation: 1s overlay ease-in-out forwards;
    }

    img {
        width: 100%;
        height: 100%;
        border-radius: 40px;
        animation: 1s .5s loaded cubic-bezier(.49, 0, .5, 1) forwards;
        transform: scale(0.8);
        opacity: 0;
        display: block;
    }
}


@keyframes loaded {
    from {
        transform: scale(0.8);
        opacity: 0;
    }

    to {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes overlay {
    0% {
        transform: scaleX(0);
    }

    55% {
        transform: scaleX(1);
    }

    100% {
        transform: translateX(-100%);
    }
}

.call-btn {
    display: flex;
    align-items: center;
    gap: 20px;

    .btn-title {
        font-size: 16px;
        color: $white-color;
        font-weight: 500;
    }
}


.mouse-pointer {
    position: fixed;
    top: 50%;
    left: -100px;
    transform: translate(-50%, -50%);
    width: 25px;
    height: 25px;
    pointer-events: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 9999;
    transition-duration: .9s;
    transition-timing-function: cubic-bezier(.19, .94, .336, 1);
    border-radius: 50%;
    background: $theme-color;
    overflow: hidden;

    &:before {
        content: "";
        inset: 3px;
        position: absolute;
        background: $white-color;
        border-radius: inherit;
        border: 1px solid $theme-color;
    }

    .icon {
        color: #fff;
        font-size: 14px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-100%, -50%);
        opacity: 0;
        transition: .4s cubic-bezier(.225, 1, .316, .99);

        i {
            margin: 0px 3px;
        }
    }
}

/* custom-mouse-pointer */



.mouse-pointer.large {
    display: none;
}

.mouse-pointer.small {
    width: 25px;
    height: 25px;
}

.mouse-pointer.right {
    width: 50px;
    height: 50px;
}

.mouse-pointer.right.large .icon {
    opacity: 0;
}

.mouse-pointer.right.large {
    background: transparent !important;
}

.mouse-pointer.zoom,
.mouse-pointer.open {
    width: 80px;
    height: 80px;
}


.mouse-pointer .icon i {
    margin: 0px 3px;
}

.mouse-pointer.right .icon {
    opacity: 1;
    transition-delay: .2s;
}


.touch .mouse-pointer {
    display: none;
}

.mouse-pointer.transparent {
    display: none;
    transition: all 500ms ease;
}

/* custom-mouse-pointer-end */


// .cursor {
//     width: 25px;
//     height: 25px;
//     border-radius: 100%;
//     border: 1px solid $theme-color;
//     transition: all 200ms ease-out;
//     position: fixed;
//     pointer-events: none;
//     left: 0;
//     top: 0;
//     z-index: 999999;
//     transform: translate(calc(-50% + 15px), -50%);

//     &.hover {
//         display: none;
//     }

// }

// .cursor2 {
//     width: 10px;
//     height: 10px;
//     border-radius: 100%;
//     background-color: $theme-color;
//     opacity: .3;
//     position: fixed;
//     transform: translate(-50%, -50%);
//     pointer-events: none;
//     z-index: 999999;
//     transition: width .3s, height .3s, opacity .3s;

//     &.hover {
//         display: none;
//     }
// }