/* Dots Moving Animation */
.header-content,
.inside-content,
.navbar,
.btn-groups {
    position: relative;
    z-index: 5;
}

.dotes_animation .dots {
    position: absolute;
    border-radius: 50%;
    z-index: 1;
    will-change: transform;
}

.dotes_animation .dots::before {
    content: "";
    border-radius: 50%;
    position: absolute;
}

.dotes_animation .dotes_1 {
    width: 120px;
    height: 120px;
    top: 115px;
    left: 75px;
    animation: reverce_dots_anim_round 20s linear infinite;
    will-change: transform;
}

.dotes_animation .dotes_1::before {
    width: 8px;
    height: 8px;
    background: #ff6b64;
    top: 0;
    left: 0;
}

.dotes_animation .dotes_2 {
    width: 90px;
    height: 60px;
    top: 47px;
    left: 65%;
    animation: anim_round 9s infinite linear;
}

.dotes_animation .dotes_2::before {
    width: 6px;
    height: 6px;
    background: #ff6b64;
    top: 0;
    left: 0;
}

.dotes_animation .dotes_3 {
    width: 120px;
    height: 120px;
    top: 175px;
    right: 165px;
    animation: reverce_dots_anim_round 20s linear infinite;
    will-change: transform;
}

.dotes_animation .dotes_3::before {
    width: 10px;
    height: 10px;
    background: #c47bea;
    top: 0;
    right: 0;
}

.dotes_animation .dotes_4 {
    width: 100px;
    height: 140px;
    top: 33%;
    left: 290px;
    animation: anim_round 8s infinite linear;
}

.dotes_animation .dotes_4::before {
    width: 6px;
    height: 6px;
    background: #ffb135;
    top: 0;
    left: 0;
}

.dotes_animation .dotes_5 {
    width: 120px;
    height: 120px;
    top: 37%;
    left: 68%;
    animation: reverce_dots_anim_round 15s infinite linear;
}

.dotes_animation .dotes_5::before {
    width: 10px;
    height: 10px;
    background: #ffb135;
    top: 0;
    left: 0;
}

.dotes_animation .dotes_6 {
    width: 120px;
    height: 120px;
    top: 40%;
    right: 90px;
    animation: anim_round 17s infinite linear;
}

.dotes_animation .dotes_6::before {
    width: 4px;
    height: 4px;
    background: #c47bea;
    top: 0;
    right: 0;
}

.dotes_animation .dotes_7 {
    width: 120px;
    height: 120px;
    bottom: 10%;
    left: 200px;
    animation: reverce_dots_anim_round 14s infinite linear;
}

.dotes_animation .dotes_7::before {
    width: 4px;
    height: 4px;
    background: #5c5fff;
    top: 0;
    left: 0;
}

.dotes_animation .dotes_8 {
    width: 120px;
    height: 120px;
    bottom: 15%;
    right: 250px;
    animation: reverce_dots_anim_round 10s infinite linear;
}

.dotes_animation .dotes_8::before {
    width: 12px;
    height: 12px;
    background: #ffa168;
    top: 0;
    left: 0;
}

.dotes_animation .dotes_9 {
    width: 120px;
    height: 120px;
    bottom: 12%;
    left: 600px;
    animation: reverce_dots_anim_round 20s infinite linear;
}

.dotes_animation .dotes_9::before {
    width: 12px;
    height: 12px;
    background: #f19d99;
    top: 0;
    left: 0;
}

.dotes_animation .dotes_10 {
    width: 120px;
    height: 120px;
    top: 350px;
    left: 25px;
    animation: reverce_dots_anim_round 10s infinite linear;
}

.dotes_animation .dotes_10::before {
    width: 9px;
    height: 9px;
    background: #6a49f2;
    top: 0;
    left: 0;
}

@keyframes anim_round {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}

@keyframes reverce_dots_anim_round {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(-360deg);
    }
}



/* star animation */
.apps-icon-star {
    position: relative;
}

.apps-icon-star .elements1 {
    position: absolute;
    left: 430px;
    top: -30px;
    animation: mymove 10s infinite;
}

.apps-icon-star .elements2 {
    position: absolute;
    bottom: 10px;
    left: -49px;
    animation: mymove 15s infinite;
}

@keyframes mymove {
    50% {
        transform: rotate(180deg);
    }
}


.whychoose_section .element .element1 {
    left: 120px;
    bottom: 100px;
    animation: mymove 15s infinite;
    position: absolute;
}

.whychoose_section .element .element2 {
    right: 70px;
    top: 200px;
    animation: mymove 10s infinite;
    position: absolute;
}

.floating-star-left-1 {
    position: absolute;
    left: 0px;
    top: 200px;
    animation: mymove 15s infinite;
}

.floating-star-left-2 {
    position: absolute;
    right: 0px;
    bottom: 600px;
    animation: mymove 15s infinite;
}

.loader-wrap {
    display: block;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 340px;
    gap: 32px;
    padding: 2rem 0;
}

.logo-svg {
    overflow: visible;
}

.seg {
    opacity: 0;
}

.seg-1 {
    animation: fadeIn 0.4s 0.1s ease forwards;
}

.seg-2 {
    animation: fadeIn 0.4s 0.25s ease forwards;
}

.seg-3 {
    animation: fadeIn 0.4s 0.4s ease forwards;
}

.seg-4 {
    animation: fadeIn 0.4s 0.55s ease forwards;
}

.seg-5 {
    animation: fadeIn 0.4s 0.7s ease forwards;
}

.seg-6 {
    animation: fadeIn 0.4s 0.85s ease forwards;
}

.seg-7 {
    animation: fadeIn 0.4s 1.0s ease forwards;
}

.text-shen {
    opacity: 0;
    animation: slideUp 0.5s 1.15s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.text-hrm {
    opacity: 0;
    animation: slideUp 0.5s 1.35s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: scale(0.85);
    }

    to {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes slideUp {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.load-dots {
    display: flex;
    gap: 8px;
    align-items: center;
    opacity: 0;
    animation: fadeIn 0.4s 1.6s ease forwards;
}

.load-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #DD472C;
    animation: pulse 1.2s 1.6s ease-in-out infinite;
}

.load-dot:nth-child(2) {
    animation-delay: 1.8s;
    background: #C82F2E;
}

.load-dot:nth-child(3) {
    animation-delay: 2.0s;
    background: #A81F23;
}

@keyframes pulse {

    0%,
    100% {
        transform: scale(1);
        opacity: 0.4;
    }

    50% {
        transform: scale(1.35);
        opacity: 1;
    }
}

.progress-bar {
    width: 220px;
    height: 3px;
    background: var(--color-border-tertiary);
    border-radius: 99px;
    overflow: hidden;
    opacity: 0;
    animation: fadeIn 0.3s 1.6s ease forwards;
}

.progress-fill {
    height: 100%;
    width: 0%;
    background: linear-gradient(90deg, #DD472C, #F15B2A);
    border-radius: 99px;
    animation: fill 2.2s 1.65s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

@keyframes fill {
    0% {
        width: 0%;
    }

    60% {
        width: 70%;
    }

    85% {
        width: 88%;
    }

    100% {
        width: 100%;
    }
}

.loading-text {
    font-size: 13px;
    color: var(--color-text-secondary);
    letter-spacing: 0.08em;
    opacity: 0;
    animation: fadeIn 0.4s 1.65s ease forwards;
}

#preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffffff;
    z-index: 999999;
    display: flex;         /* already have this in .loader-wrap */
    align-items: center;
    justify-content: center;
}