/* Pricing comparison restoration. Loaded after all theme layers. */
body .home-page > .pricing.container {
    width: 100%;
    max-width: 1320px !important;
    padding: 0 12px !important;
    overflow: visible !important;
    background: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body .home-page .pricing .pricing-compare-row {
    align-items: stretch;
    margin-right: -12px !important;
    margin-left: -12px !important;
}

body .home-page .pricing .pricing-compare-row > [class*="col-"] {
    display: flex;
    padding-right: 12px !important;
    padding-left: 12px !important;
}

body .home-page .pricing .pricing-compare-row > [class*="col-"] > .item {
    width: 100%;
    min-width: 0;
}

body .home-page .pricing .pricing-compare-row > [class*="col-"]:not(:first-child) > .item {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    background: #ffffff !important;
    border: 1px solid rgba(18, 140, 126, .12) !important;
    border-top: 0 !important;
    border-radius: 28px !important;
    box-shadow: 0 12px 32px rgba(21, 25, 23, .10) !important;
}

body .home-page .pricing .pricing-compare-row > [class*="col-"]:not(:first-child) > .item:hover {
    transform: translateY(-3px) !important;
    border-color: rgba(18, 140, 126, .30) !important;
    box-shadow: 0 18px 38px rgba(7, 94, 84, .13) !important;
}

body .home-page .pricing .pricing-compare-row > [class*="col-"]:first-child > .item {
    overflow: visible;
    padding-right: 0 !important;
    padding-left: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

body .home-page .pricing .pricing-feature-comparison {
    min-height: 150px;
    padding-right: 20px !important;
    padding-left: 20px !important;
    justify-content: flex-start !important;
}

body .home-page .pricing .pricing-feature-comparison h1 {
    max-width: 190px;
    margin: 0;
    font-size: 34px !important;
    line-height: 1.08;
}

body .home-page .pricing .pricing-compare-row > [class*="col-"]:first-child > .item > ul > li.fs-14 {
    color: #128c7e !important;
}

body .home-page .pricing .pricing-compare-row > [class*="col-"]:first-child > .item > ul > li.fs-14 i {
    color: #ffd600 !important;
}

body .home-page .pricing .pricing-top {
    min-height: 150px;
}

body .home-page .pricing .pricing-compare-row .item.py-5 {
    padding-top: 32px !important;
    padding-bottom: 24px !important;
}

body .home-page .pricing .pricing-compare-row li.fs-14.pt-5 {
    padding-top: 22px !important;
    padding-bottom: 5px !important;
}

body .home-page .pricing .pricing-compare-row li.py-2 {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
}

body .home-page .pricing .pricing-head h1,
body .home-page .pricing .pricing-price,
body .home-page .pricing .pricing-feature-comparison h1,
body .home-page .pricing .pricing-compare-row li {
    overflow-wrap: normal;
    word-break: normal;
}

body .home-page .pricing .pricing-head .text-gray-600,
body .home-page .pricing .pricing-price .text-gray-600 {
    line-height: 1.45;
}

body .home-page .pricing .pricing-compare-row .item > ul {
    flex: 1 1 auto;
    margin-bottom: 12px;
}

body .home-page .pricing .pricing-compare-row .item > .px-4:last-child {
    margin-top: auto;
}

body .home-page .pricing .featured {
    padding: 9px 0 !important;
    color: #151917 !important;
    background: #ffd600 !important;
    border-radius: 28px 28px 0 0 !important;
}

body .home-page .pricing .btn-dark {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    body .home-page .pricing .pricing-compare-row {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding: 6px 0 18px;
        scrollbar-color: #128c7e #e8f5ee;
        scrollbar-width: thin;
    }

    body .home-page .pricing .pricing-compare-row > .col-md-3 {
        flex: 0 0 285px;
        max-width: 285px;
    }

    body .home-page .pricing .pricing-compare-row > .col-md-3:first-child {
        flex-basis: 245px;
        max-width: 245px;
    }
}

@media (max-width: 767.98px) {
    body .home-page > .pricing.container {
        width: calc(100% - 24px) !important;
        padding: 30px 0 !important;
    }

    body .home-page .pricing .pricing-compare-row {
        display: block;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    body .home-page .pricing .pricing-compare-row > .col-md-3 {
        display: block;
        width: 100%;
        max-width: 100%;
        padding: 0 !important;
    }

    body .home-page .pricing .pricing-compare-row > .col-md-3:first-child {
        display: none;
    }

    body .home-page .pricing .pricing-compare-row > .col-md-3:not(:first-child) > .item {
        border-radius: 22px !important;
    }

    body .home-page .pricing .pricing-top {
        min-height: 0;
    }

    body .home-page .pricing .pricing-compare-row .item.py-5 {
        padding-top: 28px !important;
        padding-bottom: 22px !important;
    }

    body .home-page .pricing .pricing-compare-row li.fs-14.pt-5 {
        padding-top: 20px !important;
    }

    body .home-page .pricing .pricing-head h1 {
        font-size: 28px !important;
        line-height: 1.15;
    }

    body .home-page .pricing .pricing-feature-name {
        min-width: 0;
        padding-right: 14px;
        line-height: 1.4;
    }

    body .home-page .pricing .pricing-feature-icon {
        flex: 0 0 auto;
    }

    body .home-page .pricing .featured {
        border-radius: 22px 22px 0 0 !important;
    }
}

/* Apply the glass treatment on the standalone /pricing page too. */
body .pricing.container {
    position: relative;
    overflow: hidden;
    padding: 54px 32px !important;
    border: 1px solid rgba(10, 122, 69, .14) !important;
    border-top: 0 !important;
    border-radius: 30px !important;
    background: linear-gradient(135deg, rgba(234, 245, 239, .92), rgba(255, 255, 255, .96) 52%, rgba(229, 243, 236, .88)) !important;
    box-shadow: 0 22px 54px rgba(10, 74, 46, .10) !important;
}

body .pricing .pricing-compare-row > [class*="col-"]:not(:first-child) > .item {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .9) !important;
    border-radius: 24px !important;
    background: linear-gradient(145deg, rgba(255, 255, 255, .82), rgba(235, 248, 240, .62)) !important;
    box-shadow: 0 16px 38px rgba(10, 74, 46, .10), inset 0 1px 0 rgba(255, 255, 255, .95) !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

body .pricing .pricing-compare-row > [class*="col-"]:not(:first-child) > .item::before {
    position: absolute;
    top: -45%;
    left: -20%;
    width: 72%;
    height: 55%;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(89, 202, 137, .20), transparent 68%);
    content: "";
    pointer-events: none;
}

body .pricing .pricing-compare-row > [class*="col-"]:not(:first-child) > .item:hover {
    transform: translateY(-8px) !important;
    border-color: rgba(10, 122, 69, .28) !important;
    box-shadow: 0 24px 48px rgba(10, 74, 46, .16), inset 0 1px 0 rgba(255, 255, 255, .98) !important;
}

body .pricing .pricing-head,
body .pricing .pricing-price,
body .pricing .pricing-compare-row .item > ul,
body .pricing .pricing-compare-row .item > .px-4:last-child { position: relative; z-index: 1; }
body .pricing .pricing-head h1 { color: #0a4a2e !important; font-weight: 800 !important; letter-spacing: -.8px; }
body .pricing .pricing-price .fs-45 { color: #173e35 !important; font-size: 43px !important; }
body .pricing .pricing-compare-row li.py-2 { border-color: rgba(10, 74, 46, .10) !important; }
body .pricing .featured { z-index: 3; padding: 10px 0 !important; border-radius: 23px 23px 0 0 !important; background: linear-gradient(135deg, #0A4A2E 0%, #0A7A45 50%, #1F4A33 100%) !important; color: #fff !important; box-shadow: 0 7px 18px rgba(10, 74, 46, .20) !important; }
body .pricing .btn-dark { position: relative; z-index: 1; border: 0 !important; border-radius: 14px !important; box-shadow: 0 10px 18px rgba(10, 74, 46, .19) !important; }

@media (max-width: 767.98px) {
    body .pricing.container { padding: 38px 18px !important; border-radius: 22px !important; }
    body .pricing .pricing-compare-row > [class*="col-"]:not(:first-child) > .item { border-radius: 20px !important; }
}

/* Standalone Pricing page: readable text and compact testimonial spacing. */
.pricing-page-content { margin: 82px 0 46px; }
.pricing-page-content .pricing > .d-flex h1,
.pricing-page-content .pricing .pricing-feature-comparison h1,
.pricing-page-content .pricing .pricing-head h1 { color: #173e35 !important; }
.pricing-page-content .pricing > .d-flex h5,
.pricing-page-content .pricing .text-gray-600,
.pricing-page-content .pricing .pricing-feature-name,
.pricing-page-content .pricing .pricing-compare-row li { color: #47665c !important; }
.pricing-page-content .pricing .item { color: #23493d !important; }
.pricing-page-content .pricing .pricing-feature-head { color: #0a4a2e !important; }
.pricing-page-content .pricing.container { margin-bottom: 28px !important; }
.pricing-page-content .rating.container { margin-bottom: 0 !important; }
.pricing-page-content .pricing .btn-dark {
    color: #fff !important;
    background: linear-gradient(135deg, #0A4A2E 0%, #0A7A45 50%, #1F4A33 100%) !important;
    border-color: #0A4A2E !important;
}
.pricing-page-content .pricing .btn-dark:hover,
.pricing-page-content .pricing .btn-dark:focus {
    color: #fff !important;
    background: linear-gradient(135deg, #1F4A33 0%, #0A7A45 55%, #0A4A2E 100%) !important;
}
.pricing-page-content .rating .item {
    border: 1px solid rgba(255,255,255,.16) !important;
    background: linear-gradient(135deg, #0A4A2E 0%, #0A7A45 50%, #1F4A33 100%) !important;
    box-shadow: 0 14px 28px rgba(10, 74, 46, .18) !important;
    color: #fff !important;
}
.pricing-page-content .rating .item h3,
.pricing-page-content .rating .item .text-gray-600 { color: #fff !important; }

@media (max-width: 991.98px) { .pricing-page-content { margin: 82px 0 34px; }.pricing-page-content .pricing.container { margin-bottom: 22px !important; } }
@media (max-width: 767.98px) { .pricing-page-content { margin: 62px 0 22px; }.pricing-page-content .rating.container { padding-bottom: 0 !important; } }

/* Feature comparison card hover */
body .pricing .pricing-compare-row > [class*="col-"]:first-child > .item {
    transition: background .25s ease, color .25s ease, box-shadow .25s ease, transform .25s ease;
}

body .pricing .pricing-compare-row > [class*="col-"]:first-child > .item:hover {
    color: #fff !important;
    background: linear-gradient(135deg, #0A4A2E 0%, #0A7A45 50%, #1F4A33 100%) !important;
    border-color: #0A4A2E !important;
    box-shadow: 0 18px 36px rgba(10, 74, 46, .24) !important;
    transform: translateY(-4px);
}

body .pricing .pricing-compare-row > [class*="col-"]:first-child > .item:hover h1,
body .pricing .pricing-compare-row > [class*="col-"]:first-child > .item:hover li,
body .pricing .pricing-compare-row > [class*="col-"]:first-child > .item:hover .text-over-all,
body .pricing .pricing-compare-row > [class*="col-"]:first-child > .item:hover i {
    color: #fff !important;
}

/* Glass pricing card refresh */
body .home-page > .pricing.container {
    position: relative;
    overflow: hidden;
    padding: 54px 32px !important;
    border: 1px solid rgba(10, 122, 69, .14) !important;
    border-top: 0 !important;
    border-radius: 30px !important;
    background: linear-gradient(135deg, rgba(234, 245, 239, .92), rgba(255, 255, 255, .96) 52%, rgba(229, 243, 236, .88)) !important;
    box-shadow: 0 22px 54px rgba(10, 74, 46, .10) !important;
}

body .home-page .pricing .pricing-compare-row > [class*="col-"]:not(:first-child) > .item {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .9) !important;
    border-radius: 24px !important;
    background: linear-gradient(145deg, rgba(255, 255, 255, .82), rgba(235, 248, 240, .62)) !important;
    box-shadow: 0 16px 38px rgba(10, 74, 46, .10), inset 0 1px 0 rgba(255, 255, 255, .95) !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease !important;
}

body .home-page .pricing .pricing-compare-row > [class*="col-"]:not(:first-child) > .item::before {
    position: absolute;
    top: -45%;
    left: -20%;
    width: 72%;
    height: 55%;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(89, 202, 137, .20), transparent 68%);
    content: "";
    pointer-events: none;
}

body .home-page .pricing .pricing-compare-row > [class*="col-"]:not(:first-child) > .item:hover {
    transform: translateY(-8px) !important;
    border-color: rgba(10, 122, 69, .28) !important;
    box-shadow: 0 24px 48px rgba(10, 74, 46, .16), inset 0 1px 0 rgba(255, 255, 255, .98) !important;
}

body .home-page .pricing .pricing-head,
body .home-page .pricing .pricing-price,
body .home-page .pricing .pricing-compare-row .item > ul,
body .home-page .pricing .pricing-compare-row .item > .px-4:last-child {
    position: relative;
    z-index: 1;
}

body .home-page .pricing .pricing-head h1 {
    color: #0a4a2e !important;
    font-weight: 800 !important;
    letter-spacing: -.8px;
}

body .home-page .pricing .pricing-price .fs-45 {
    color: #173e35 !important;
    font-size: 43px !important;
}

body .home-page .pricing .pricing-compare-row li.py-2 {
    border-color: rgba(10, 74, 46, .10) !important;
}

body .home-page .pricing .pricing-feature-icon.text-success {
    color: #0a7a45 !important;
}

body .home-page .pricing .featured {
    z-index: 3;
    padding: 10px 0 !important;
    border-radius: 23px 23px 0 0 !important;
    background: linear-gradient(135deg, #0A4A2E 0%, #0A7A45 50%, #1F4A33 100%) !important;
    color: #fff !important;
    box-shadow: 0 7px 18px rgba(10, 74, 46, .20) !important;
}

body .home-page .pricing .btn-dark {
    position: relative;
    z-index: 1;
    border: 0 !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 18px rgba(10, 74, 46, .19) !important;
}

@media (max-width: 767.98px) {
    body .home-page > .pricing.container {
        padding: 38px 18px !important;
        border-radius: 22px !important;
    }

    body .home-page .pricing .pricing-compare-row > [class*="col-"]:not(:first-child) > .item {
        border-radius: 20px !important;
    }
}
