/* v11 isolated legal english plan styles */
.lePlanWrap {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px !important;
    align-items: stretch !important;
}

.lePlanCard {
    position: relative !important;
    overflow: hidden !important;
    border: 1px solid #d8c8ff !important;
    border-radius: 28px !important;
    background: linear-gradient(180deg, #ffffff 0%, #fbf8ff 100%) !important;
    box-shadow: 0 16px 34px rgba(63, 5, 167, .12) !important;
}

.lePlanCard::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 10px !important;
    background: linear-gradient(90deg, #3f05a7, #6b2cf5, #ff7a1a) !important;
}

.lePlanInner {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    padding: clamp(24px, 3vw, 34px) !important;
}

.lePlanTop {
    min-height: 190px !important;
}

.lePlanLabel {
    display: inline-flex !important;
    align-items: center !important;
    margin-bottom: 14px !important;
    border-radius: 999px !important;
    padding: 8px 15px !important;
    background: linear-gradient(135deg, #ff2f1f, #ff8a00) !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 1000 !important;
    box-shadow: 0 8px 18px rgba(216, 41, 35, .20) !important;
}

.lePlanTitle {
    margin: 0 0 10px !important;
    color: #2f0079 !important;
    font-size: clamp(30px, 3vw, 40px) !important;
    font-weight: 1000 !important;
    line-height: 1.2 !important;
}

.lePlanDesc {
    margin: 0 !important;
    color: #66708a !important;
    font-size: 16px !important;
    line-height: 1.85 !important;
}

.lePlanGift {
    display: inline-flex !important;
    margin-top: 12px !important;
    border-radius: 999px !important;
    padding: 7px 14px !important;
    background: #fff2d3 !important;
    color: #9a5e00 !important;
    font-weight: 900 !important;
}

.lePlanBlock {
    margin-top: 24px !important;
}

.lePlanBlockTitle {
    margin: 0 0 12px !important;
    color: #330079 !important;
    font-size: 20px !important;
    font-weight: 1000 !important;
}

.lePlanTopics {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

.lePlanTopic {
    min-height: 56px !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid #e7ddff !important;
    border-radius: 16px !important;
    padding: 10px 8px !important;
    background: #fff !important;
    color: #330079 !important;
    font-size: 17px !important;
    font-weight: 900 !important;
    text-align: center !important;
}

.lePlanStats {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    overflow: hidden !important;
    border: 1px solid #d8c8ff !important;
    border-radius: 18px !important;
    background: #fff !important;
}

.lePlanStat {
    padding: 16px 8px !important;
    text-align: center !important;
    border-right: 1px solid #d8c8ff !important;
}

.lePlanStat:last-child {
    border-right: none !important;
}

.lePlanStat span {
    display: block !important;
    color: #66708a !important;
    font-size: 14px !important;
}

.lePlanStat strong {
    display: block !important;
    margin-top: 4px !important;
    color: #3f05a7 !important;
    font-size: clamp(22px, 2.4vw, 30px) !important;
    font-weight: 1000 !important;
}

.lePlanPrivileges {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 1px !important;
    overflow: hidden !important;
    border-radius: 16px !important;
    background: #d8c8ff !important;
}

.lePlanPrivilege {
    min-height: 56px !important;
    display: flex !important;
    align-items: center !important;
    padding: 14px 16px !important;
    background: #fbf9ff !important;
    color: #330079 !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.45 !important;
}

.lePlanBuy {
    margin-top: auto !important;
    padding-top: 26px !important;
}

.lePlanPrice {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px 18px !important;
    align-items: baseline !important;
    margin-bottom: 16px !important;
}

.lePlanOld {
    color: #9aa3b5 !important;
    font-size: 17px !important;
    text-decoration: line-through !important;
}

.lePlanNow {
    color: #d82923 !important;
    font-size: clamp(30px, 3vw, 40px) !important;
    font-weight: 1000 !important;
}

.lePlanBtn {
    display: block !important;
    width: 100% !important;
    border-radius: 999px !important;
    padding: 14px 30px !important;
    background: linear-gradient(180deg, #ff982f, #ff6b12) !important;
    box-shadow: 0 8px 0 rgba(170, 72, 0, .20) !important;
    color: #fff !important;
    font-size: 20px !important;
    font-weight: 1000 !important;
    text-align: center !important;
    text-decoration: none !important;
}

.lePlanRecommend {
    position: absolute !important;
    right: 18px !important;
    top: 18px !important;
    z-index: 2 !important;
    border-radius: 999px !important;
    padding: 6px 12px !important;
    background: #fff2d3 !important;
    color: #9a5e00 !important;
    font-size: 13px !important;
    font-weight: 1000 !important;
}

@media (max-width: 980px) {
    .lePlanWrap {
        grid-template-columns: 1fr !important;
    }

    .lePlanTop {
        min-height: auto !important;
    }
}

@media (max-width: 720px) {
    .lePlanTopics,
    .lePlanStats,
    .lePlanPrivileges {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .lePlanPrice {
        display: block !important;
    }

    .lePlanNow {
        display: block !important;
        margin-top: 4px !important;
    }
}


/* v12 legal detail polish */
.lePlanStats {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.lePlanStat {
    border-right: none !important;
    border-bottom: 1px solid #d8c8ff !important;
}

.lePlanStat:nth-child(odd) {
    border-right: 1px solid #d8c8ff !important;
}

.lePlanStat:nth-child(3),
.lePlanStat:nth-child(4) {
    border-top: 2px solid #bfa8ff !important;
    border-bottom: none !important;
}

.lePlanPrivileges {
    display: block !important;
    border-radius: 0 !important;
    border-top: 2px solid #3f05a7 !important;
    border-bottom: 2px solid #3f05a7 !important;
    background: transparent !important;
}

.lePlanPrivilege {
    min-height: auto !important;
    display: block !important;
    border-bottom: 1px solid #d8c8ff !important;
    padding: 13px 4px !important;
    background: transparent !important;
    color: #330079 !important;
}

.lePlanPrivilege:last-child {
    border-bottom: none !important;
}

.lePlanPrice {
    justify-content: space-between !important;
    gap: 10px !important;
}

.lePlanNow {
    font-size: clamp(24px, 2.2vw, 32px) !important;
    white-space: nowrap !important;
}

.lePlanOld {
    font-size: 15px !important;
    white-space: nowrap !important;
}

.advanced-gift-highlight51 {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 16px 0 18px !important;
    border: 1px solid rgba(255, 215, 104, .75) !important;
    border-radius: 999px !important;
    padding: 10px 18px !important;
    background: rgba(255, 215, 104, .16) !important;
    color: #ffd768 !important;
    font-size: clamp(18px, 2vw, 24px) !important;
    font-weight: 1000 !important;
    box-shadow: 0 10px 24px rgba(255, 215, 104, .12) !important;
}

@media (max-width: 720px) {
    .lePlanPrice {
        display: flex !important;
        align-items: baseline !important;
    }

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

    .lePlanOld {
        font-size: 14px !important;
    }
}


/* v21 legal English privilege checkmarks and spacing */
.lePlanPrivilege {
    position: relative !important;
    padding-left: 34px !important;
}

.lePlanPrivilege::before {
    content: "✓" !important;
    position: absolute !important;
    left: 10px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: inline-grid !important;
    place-items: center !important;
    width: 18px !important;
    height: 18px !important;
    border-radius: 50% !important;
    background: #0d46c1 !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 1000 !important;
}

.lePlanWrap {
    margin-bottom: 20px !important;
}

