body,
body * {
    font-family: 'Montserrat', sans-serif !important;
    line-height: 1 !important;
}

.referral-form-input-style::placeholder { font-size: 16px !important; opacity: 1; }

.header-shadow {
    box-shadow: 0px 4px 4px 0px #0000001F;
}

.line-height30px
{
    line-height: 30px !important;
}

.profile-img
{
    width: 90%;
    margin: 0 auto;
}

.mobile-only-version
{
    display: none;
}

.logo-size
{
    width: 200px;
}

.member-banner-image
{
    width: 100%;
}

.winner-img
{
    width: 100%;
}

.winner-prize-img1 {
    max-width: 75px;
    margin: 5px 0 0 3px !important;
}

.winner-prize-img2 {
    max-width: 70px;
    margin: 21px 0 0 3px;
}

.winner-prize-img3
{
    max-width: 50px;
}

.winner-prize-img4 {
    max-width: 70px;
    margin: 21px 0 0 3px;
}

.bg-banner-1 {
    background-image: url('./images/home-bg-1.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 40px 0;
}

.bg-banner-2 {
    background-image: url('./images/home-bg-2.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 66px 0;
}

.referral-form-input-style {
    width: 100%;
    border-radius: 8px;
    border: 1px solid #F5F5F5;
    background-color: #F5F5F5;
    padding: 17px;
    font-size: 18px;
}

.cashback-label-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cashback-label-container h3 {
    font-size: 32px;
}

.cashback-label-container h2 {
    font-size: 70px;
}

.cashback-label-blue {
    position: relative;
    background-color: #064787;
    padding: 30px 25px;
    width: 90%;
}

.cashback-label-blue::after {
    content: '';
    position: absolute;
    height: 100%;
    top: 0;
    right: -29px;
    border-top: 90px solid transparent;
    border-bottom: 88px solid transparent;
    border-left: 30px solid #064787;
}

.cashback-label-red {
    position: relative;
    background-color: #DD0713;
    padding: 30px 25px;
    width: 90%;
    margin-left: auto;
}

.cashback-label-red::before {
    content: '';
    position: absolute;
    height: 100%;
    top: 0;
    left: -29px;
    border-top: 90px solid transparent;
    border-bottom: 88px solid transparent;
    border-right: 30px solid #DD0713;
}

.number-badge {
    background-color: #010101;
    color: #fff;
    border-radius: 50%;
    min-width: 81px;
    min-height: 81px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    font-weight: 800;
    margin-right: 24px;
}

.referral-form-input-style::placeholder {
    color: #808080;
    font-size: 10px;
    font-weight: 400;
}

.btn-submit {
    background-color: #000;
    color: #F5F5F5;
    padding: 24px 38px;
    border-radius: 8px;
    font-size: 26px;
    font-weight: 600;
    letter-spacing: 5px;
}

.btn-submit:hover,
.btn-submit:focus {
    background-color: #000000e6 !important;
    color: #F5F5F5 !important;
}

.win-tv-gradient-1 {
    background: #DD0713;
    box-shadow: 0px 9px 14px 0px rgba(0, 0, 0, 0.35);
    position: relative;
    z-index: 10;
}

.win-tv-gradient-1::before {
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -38px;
    border-left: 35px solid transparent;
    border-top: 40px solid #DD0713;
    border-right: 35px solid transparent;
    z-index: 2;
}

.win-tv-gradient-2 {
    background: linear-gradient(90deg, #E8E8E8 0%, #E8E8E8 98.33%);
}

.win-tv-gradient-3 {
    background: linear-gradient(90deg, #E8E8E8 0%, #DD0713 100%);
}

.work-card {
    background-color: white;
    box-shadow: 0px 0px 14px 0px rgba(0, 0, 0, 0.25);
    border-radius: 23px;
    padding: 47px 30px 25px;
    height: 100%;
    display: flex;
    flex-direction: column;
    text-align: center;
}

.work-card>img {
    max-width: 135px;
    margin: 0 auto;
}

.container-fluid.custom-width {
    max-width: 1800px;
}

.winner-bg {
    background-image: url('./images/winner-bg.png');
    background-size: contain;
    background-repeat: repeat;
}

.main-winner-card {
    border: 2px solid #fff;
    box-shadow: 0px 0px 7px 0px #000000CC;
    border-radius: 25px;
    overflow: hidden;
    margin-top: -40px;
    max-width: 288px;
}

.main-winner-prize {
    border-radius: 100px;
    width: 160px;
    height: 160px;
    margin-bottom: -80px;
    padding: 5px;
    background: conic-gradient(#F1E79B 0%,
            #D6B763 7%,
            #AE7A25 14%,
            #C6974F 21%,
            #F1E79B 28%,
            #D6B763 35%,
            #AE7A25 42%,
            #C6974F 49%,
            #F1E79B 56%,
            #D6B763 63%,
            #AE7A25 70%,
            #C6974F 77%,
            #F1E79B 84%,
            #D6B763 91%,
            #F1E79B 100%);
}

.winner-card {
    background-color: white;
    border-radius: 10px;
    padding: 8px;
    height: 100%;
    display: flex;
    flex-direction: column;
    text-align: center;
}

.winner-prize {
    border: 6px solid #074888;
    box-shadow: 0px 0px 7px 0px #000000;
    border-radius: 100px;
    width: 110px;
    height: 110px;
    margin-bottom: -60px;
    padding: 5px;
}


/* border radius utilities */
.br-10 {
    border-radius: 10px;
}

.br-23 {
    border-radius: 23px;
}

/* Font Weight Overrides - Higher Specificity */
.fw-bolder,
.fw-bolder * {
    font-weight: 800 !important;
    font-family: 'Montserrat', sans-serif !important;
}

/* Override Bootstrap font-weight classes with higher specificity */
body .fw-bold,
.fw-bold {
    font-weight: 700 !important;
    font-family: 'Montserrat', sans-serif !important;
}

body .fw-semibold,
.fw-semibold {
    font-weight: 600 !important;
    font-family: 'Montserrat', sans-serif !important;
}

body .fw-medium,
.fw-medium {
    font-weight: 500 !important;
    font-family: 'Montserrat', sans-serif !important;
}

body .fw-normal,
.fw-normal {
    font-weight: 400 !important;
    font-family: 'Montserrat', sans-serif !important;
}

body .fw-light,
.fw-light {
    font-weight: 300 !important;
    font-family: 'Montserrat', sans-serif !important;
}

/* text color utilities */
.text-earn-title {
    color: #0F0F0F;
}

.text-earn-title-2 {
    color: #0F0F0F;
}

.text-gray {
    color: #595959;
}

.text-blue {
    color: #064787;
}

.bg-light-gray {
    background-color: #E6E6E6;
}

.bg-dark-gray-2 {
    background-color: #D2D2D2;
}

.text-shadow-md {
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}

/* max width utilities */
.max-w-80 {
    max-width: 80%;
}

.max-w-250px {
    max-width: 250px;
}

/* Font Size Utilities */
.font-18px {
    font-size: 18px !important;
}

.font-20px {
    font-size: 20px !important;
}

.font-22px {
    font-size: 22px !important;
}

.font-26px {
    font-size: 26px !important;
}

.font-30px {
    font-size: 30px !important;
}

.font-33px {
    font-size: 33px !important;
}

.font-36px {
    font-size: 36px !important;
}

.font-38px {
    font-size: 38px !important;
}

.font-44px {
    font-size: 44px !important;
}

.font-48px {
    font-size: 48px !important;
}

.font-50px {
    font-size: 50px !important;
}


.font-58px {
    font-size: 58px !important;
}

.font-60px {
    font-size: 60px !important;
}

.font-70px {
    font-size: 70px !important;
}


/* Responsive Sizes for Mobile */
@media (max-width: 767px) {
    .font-20px {
        font-size: 16px !important;
    }

    .font-22px {
        font-size: 18px !important;
    }

    .font-26px {
        font-size: 20px !important;
    }

    .font-33px {
        font-size: 26px !important;
    }

    .font-36px {
        font-size: 28px !important;
    }

    .font-38px {
        font-size: 25px !important;
    }

    .font-44px {
        font-size: 32px !important;
    }

    .font-48px {
        font-size: 36px !important;
    }

    .font-50px {
        font-size: 38px !important;
    }

    .font-58px {
        font-size: 42px !important;
    }

    .font-60px {
        font-size: 42px !important;
    }

    .font-70px {
        font-size: 54px !important;
    }

    .btn-submit {
        font-size: 20px !important;
    }
}

@media (min-width: 1600px) {
    .container.custom-width {
        max-width: 1520px;
    }
}

@media (min-width: 1200px) and (max-width: 1599px) {
    .cashback-label-container h3 {
        font-size: 22px;
    }

    .cashback-label-container h2 {
        font-size: 60px;
    }

    .cashback-label-blue,
    .cashback-label-red {
        width: 89%;
    }

    .cashback-label-blue::after {
        border-top: 80px solid transparent;
        border-bottom: 78px solid transparent;
        border-left: 28px solid #064787;
        right: -27px;
    }

    .cashback-label-red::before {
        border-top: 80px solid transparent;
        border-bottom: 78px solid transparent;
        border-right: 28px solid #DD0713;
        left: -27px;
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    .cashback-label-container h3 {
        font-size: 30px;
    }

    .desktop-only-version
    {
        display: none;
    }

    .mobile-only-version
    {
        display: block;
    }

    .cashback-label-container h2 {
        font-size: 60px;
    }

    .cashback-label-blue::after {
        border-top: 85px solid transparent;
        border-bottom: 79px solid transparent;
        border-left: 25px solid #064787;
        right: -24px;
    }

    .cashback-label-red::before {
        border-top: 85px solid transparent;
        border-bottom: 79px solid transparent;
        border-right: 25px solid #DD0713;
        left: -24px;
    }
}

@media (max-width: 768px) {
    .cashback-label-container h3 {
        font-size: 20px;
    }

    .desktop-only-version
    {
        display: none;
    }

    .mobile-only-version
    {
        display: block;
    }

    .cashback-label-container h2 {
        font-size: 40px;
    }

    .cashback-label-blue::after {
        border-top: 66px solid transparent;
        border-bottom: 66px solid transparent;
        border-left: 15px solid #064787;
        right: -14px;
    }

    .cashback-label-red::before {
        border-top: 66px solid transparent;
        border-bottom: 66px solid transparent;
        border-right: 15px solid #DD0713;
        left: -14px;
    }

    .header-section .logo-size {
        max-width: 115px;
    }

    .header-section .phone-number {
        font-size: 22px !important;
    }

    .header-section .company-name {
        font-size: 25px !important;
    }

    .bg-banner-1 {
        padding: 36px 0;
    }

    .bg-banner-1 .text-earn-title-2 {
        font-size: 34px !important;
    }

    .bg-banner-1 form p {
        font-size: 20px !important;
    }

    .btn-submit {
        font-size: 18px !important;
        padding: 22px !important;
        letter-spacing: 2px !important;
    }

    .btn-submit img {
        width: 10px !important;
    }

    .bg-banner-1 .text-earn-title {
        font-size: 28px !important;
    }

    .number-badge {
        min-width: 56px;
        min-height: 56px;
        font-size: 24px;
        margin-right: 14px;
        font-weight: 700;
    }

    .win-tv-gradient-1 h2 {
        font-size: 23px !important;
    }

    .win-tv-gradient-1::before {
        bottom: -20px !important;
    }

    .tv-overlay-text {
        font-size: 14px !important;
        margin-bottom: 15px !important;
    }

    .win-tv-gradient-2 .logo-size {
        max-width: 110px;
    }

    .win-tv-gradient-2 > p {
        font-size: 25px !important;
        margin-top: 5px !important;
    }

    .win-tv-gradient-3 > p {
        font-size: 30px !important;
    }


    .bg-banner-2 .container > h2 {
        font-size: 40px !important;
    }

    .bg-banner-2 .container div h2 {
        font-size: 34px !important;
    }

    .bg-banner-2 .col-12, .bg-banner-2 .container > h2 {
        padding: 0 30px !important;
    }

    .work-card .flex-grow-1>img {
        width: 132px;
        height: 132px;
    }

    .work-card .flex-grow-1 > p {
        font-size: 24px !important;
        color: #064786 !important;
    }

    .work-card .flex-grow-1 p+p {
        font-size: 17px !important;
        color: #000 !important;
    }

    .winner-title.fw-medium {
        font-size: 38px !important;
        font-weight: 300 !important;
    }

    .winner-card-row .col-12 {
        padding: 0 30px !important;
        margin-bottom: 50px !important;
    }

    .winner-card-row .col-12:last-child {
        margin-bottom: 0 !important;
    }

    .winner-card .flex-grow-1 > p {
        font-size: 26px !important;
    }

    .winner-card .flex-grow-1 p+p {
        font-size: 19px !important;
        margin-top: 25px !important;
    }

    .winner-card .flex-grow-1 p+p+p {
        color: #1D1D1B !important;
        font-size: 19px !important;
        font-weight: 300 !important;
        margin-top: 2px !important;
    }

    .introduce-text {
        font-size: 20px !important;
    }

    .btn-get-started {
        background-color: #064786 !important;
        color: #F5F5F5;
        padding: 22px;
        border-radius: 8px;
        font-size: 18px;
        font-weight: 600;
        letter-spacing: 2px;
    }

    .btn-get-started img {
        width: 10px !important;
    }

    .btn-get-started:hover,
    .btn-get-started:focus {
        background-color: #064786e6 !important;
        color: #F5F5F5 !important;
    }

    .btn-start-now {
        background-color: #DC0613 !important;
        color: #F5F5F5;
        padding: 22px;
        border-radius: 8px;
        font-size: 18px;
        font-weight: 600;
        letter-spacing: 2px;
    }

    .btn-start-now img {
        width: 10px !important;
    }

    .btn-start-now:hover,
    .btn-start-now:focus {
        background-color: #DC0613e6 !important;
        color: #F5F5F5 !important;
    }
}

@media (max-width: 432px) {
    .cashback-label-container h3 {
        font-size: 19px;
    }

    .cashback-label-container h2 {
        font-size: 40px;
    }

    .cashback-label-blue,
    .cashback-label-red {
        padding: 20px 15px;
    }
}