﻿.pricing_section {
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center top;
}

    .pricing_section .shape_dollar_1 {
        top: 46%;
        left: 50px;
        max-width: 60px;
        filter: blur(2px);
    }

    .pricing_section .shape_dollar_2 {
        bottom: 0;
        right: 50px;
        max-width: 60px;
        filter: blur(2px);
    }

    .pricing_section .shape_lines_flow_1 {
        top: 30%;
        right: -130px;
        max-width: 400px;
    }

    .pricing_section .shape_lines_flow_2 {
        bottom: 0;
        left: -54px;
        max-width: 400px;
    }

    .pricing_section .shape_nate_1 {
        top: 60px;
        opacity: 0.4;
        right: -210px;
    }

    .pricing_section .shape_nate_2 {
        left: 0;
        bottom: 60px;
        opacity: 0.4;
    }

    .pricing_section .shape_nate_3 {
        top: 100px;
        left: -290px;
        opacity: 0.4;
    }

    .pricing_section .shape_nate_4 {
        opacity: 0.4;
        bottom: -80px;
        right: -340px;
    }

.pricing_toggle_btn {
    gap: 20px;
    font-size: 18px;
    align-items: center;
    display: inline-flex;
    justify-content: center;
    font-family: 'Poppins', sans-serif;
}

    .pricing_toggle_btn span {
        gap: 6px;
        align-items: center;
        display: inline-flex;
    }

    .pricing_toggle_btn .badge {
        --bs-danger-rgb: 255, 97, 0;
        padding: 0 8px;
        font-size: 12px;
        font-weight: 500;
        line-height: 20px;
        border-radius: 50px;
        display: inline-block;
    }

    .pricing_toggle_btn .switch_btn {
        width: 66px;
        height: 33px;
        padding: 3px;
        position: relative;
        border-radius: 50px;
        display: inline-block;
        border: 1px solid rgba(255, 255, 255, 0.2);
    }

        .pricing_toggle_btn .switch_btn:before {
            top: 3px;
            left: 3px;
            content: '';
            width: 25px;
            height: 25px;
            display: block;
            position: absolute;
            border-radius: 100%;
            transition: all .3s ease-in-out;
            background-color: var(--bs-primary);
        }

    .pricing_toggle_btn.active .switch_btn:before {
        left: auto;
        right: 3px;
    }

.pricing_block {
    gap: 70px;
    display: flex;
    padding: 50px;
    align-items: flex-start;
    justify-content: space-between;
    transition: var(--bs-transition);
    background-color: var(--bs-secondary);
    border-radius: var(--bs-border-radius-lg);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

    .pricing_block:hover {
        border-color: rgba(255, 255, 255, 0.14);
    }

    .pricing_block:not(:last-child) {
        margin-bottom: 20px;
    }

    .pricing_block .pricing_icon {
        width: 60px;
        height: 60px;
        flex: 0 0 auto;
        align-items: center;
        display: inline-flex;
        justify-content: center;
        background-size: 100% 100%;
        background-repeat: no-repeat;
        background-position: center center;
    }

        .pricing_block .pricing_icon img {
            max-width: 30px;
        }

    .pricing_block .pricing_info ul {
        gap: 30px;
    }

        .pricing_block .pricing_info ul > li {
            line-height: 1;
            font-size: 20px;
            color: var(--bs-white);
            font-family: 'Poppins', sans-serif;
        }

            .pricing_block .pricing_info ul > li small {
                display: block;
                font-size: 16px;
                padding-bottom: 12px;
                color: var(--bs-body-color);
                font-family: 'Poppins', sans-serif;
            }

    .pricing_block .features_title {
        line-height: 1;
        font-size: 16px;
        margin-bottom: 30px;
        color: var(--bs-body-font-color);
        font-family: 'Poppins', sans-serif;
    }

    .pricing_block .pricing_features .iconlist_block {
        gap: 6px;
    }

        .pricing_block .pricing_features .iconlist_block > li {
            font-size: 18px;
        }

            .pricing_block .pricing_features .iconlist_block > li.del {
                opacity: 0.3;
            }

            .pricing_block .pricing_features .iconlist_block > li .iconlist_icon {
                color: var(--bs-primary);
            }

    .pricing_block .btn {
        margin-top: 75px;
    }

    .pricing_block .pricing_amount {
        width: 330px;
        flex: 0 0 auto;
        padding: 70px 40px;
        color: var(--bs-white);
        background-color: var(--bs-secondary);
        clip-path: polygon(0 0, 75% 0%, 100% 50%, 75% 100%, 0 100%);
    }

        .pricing_block .pricing_amount [class*="pricing_amount_"] > * {
            display: block;
        }

        .pricing_block .pricing_amount span {
            font-size: 50px;
            line-height: 60px;
            font-family: 'Poppins', sans-serif;
        }

        .pricing_block .pricing_amount small {
            font-size: 20px;
            line-height: 30px;
            font-family: 'Poppins', sans-serif;
        }

    .pricing_block .pricing_title {
        font-size: 26px;
        line-height: 36px;
    }

    .pricing_block hr {
        margin: 39px 0 48px;
        background-color: var(--bs-secondary);
    }

    .pricing_block:not(.active) .pricing_amount_monthly {
        display: none;
    }

    .pricing_block.active .pricing_amount_yearly {
        display: none;
    }

    .pricing_block.style_2 {
        padding: 50px 180px 50px 0;
    }

        .pricing_block.style_2 > * {
            max-width: 370px;
        }

    .pricing_block .btn svg path {
        transition: .3s;
    }

    .pricing_block .btn:hover svg path {
        fill: var(--bs-dark);
    }

.ps_pricing_block {
    padding: 30px;
    display: flex;
    flex-wrap: warp;
    border-radius: 20px;
    color: var(--bs-white);
}

    .ps_pricing_block.bg-grd {
        background: radial-gradient(665.36% 228.53% at 29.58% 35.96%, #8234c5 0%, #742db3 15.2250766754%, #60249b 36.1630946398%, #521e8b 50.4717707634%, #3f1674 70.3187346458%, #230952 100%);
    }

    .ps_pricing_block.bg-grd-2 {
        background: radial-gradient(416.61% 143.66% at 29.58% 35.96%, #d9ff43 0%, #c5e544 15.2250766754%, #b7d24b 36.1630946398%, #9eb73e 50.4717707634%, #768b24 70.3187346458%, #111501 100%);
    }

    .ps_pricing_block > * {
        width: 50%;
        flex: 0 0 auto;
    }

    .ps_pricing_block .pricing_description {
        padding: 30px;
        border-radius: 10px;
        background-color: var(--bs-dark);
    }

    .ps_pricing_block .pricing_feature_list {
        gap: 15px;
        padding-left: 30px;
        border-radius: 10px;
    }

        .ps_pricing_block .pricing_feature_list > li {
            padding: 20px;
            border-radius: 10px;
            background-color: var(--bs-dark);
        }

    .ps_pricing_block .pricing_title {
        line-height: 1;
        font-size: 28px;
        margin-bottom: 16px;
    }

    .ps_pricing_block p {
        font-size: 16px;
        font-weight: 500;
        line-height: 26px;
        margin-bottom: 30px;
    }

    .ps_pricing_block .price_value {
        line-height: 1;
        font-size: 28px;
        font-family: var(--bs-heading-font-family);
    }

    .ps_pricing_block .iconlist_block {
        margin-bottom: 45px;
    }

        .ps_pricing_block .iconlist_block > li {
            font-size: 16px;
            font-weight: 500;
            line-height: 24px;
        }

    .ps_pricing_block .btn {
        width: 100%;
        padding: 16px 30px;
    }

.role {
    color: #FF6100 !important;
}
/* Team card typography/spacing, matching your first card */
.team_block.style_2 .team_member_content .team_member_name {
    margin-bottom: .25rem;
}

.team_block.style_2 .team_member_content p {
    margin-bottom: .5rem;
    line-height: 1.55;
}

    .team_block.style_2 .team_member_content p.text-muted {
        margin-bottom: .5rem;
        font-weight: 500;
    }
/* Make each pair breathe and add a soft divider */
.pricing_block .rwc-feature-pair + .rwc-feature-pair {
    border-top: 1px solid rgba(255,255,255,0.08);
    padding-top: .75rem;
    margin-top: .75rem;
}

/* Keep titles readable and from wrapping awkwardly */
.pricing_block .features_title {
    font-size: 1rem;
    line-height: 1.4;
    white-space: normal; /* change to nowrap if you want single-line labels */
}

/* Ensure lists align nicely with the titles */
.pricing_block .unordered_list_block {
    padding-left: 0; /* your theme likely already does this */
}
/* Tiny helper styles */
.pricing_block.is-hidden {
    display: none !important;
}

.pricing_block.is-highlight {
    outline: 2px solid #0d6efd;
    box-shadow: 0 0 0 3px rgba(13,110,253,.35);
}

.pricing-reset {
    cursor: pointer;
}

.dropdown-toggle::after {
    border-top: none !important;
}

.less {
    margin-top: -200px !important;
}

/* Make cards breathe on small screens */
.pricing_block.style_2 {
    padding: 1.25rem;
    border-radius: 12px;
}

    /* Equal height cards */
    .pricing_block.style_2 .pricing_features {
        margin-top: 1rem;
    }

/* Badge/amount text scale on small screens */
@media (max-width: 575.98px) {
    .pricing_amount_value span {
        font-size: 1.05rem;
    }

    .pricing_title {
        font-size: 1.05rem;
    }
}

/* Feature rows: compact spacing on phones */
.rwc-feature-pair {
    --pair-gap: .35rem;
    margin-bottom: var(--pair-gap);
}

    .rwc-feature-pair .features_title {
        font-size: .95rem;
        line-height: 1.25;
    }

.iconlist_text {
    font-size: .95rem;
}

/* Allow long labels to wrap nicely */
.features_title, .iconlist_text {
    word-break: break-word;
}

/* Pretty star color */
.fa-star {
    color: #f2c94c;
}

/* If you have a sticky header, smooth anchor landings */
#pricing-nonhybrid, #pricing-hybrid, #investor-portfolio, #account-management {
    scroll-margin-top: 80px;
}
/* ===========================
   Responsive tweaks (Tablet & Mobile)
   Keep existing styles. Append these.
   =========================== */

/* -------- Tablet (<= 991.98px) -------- */
@media (max-width: 991.98px) {
    /* So cards aren’t huge on tablets */
    .pricing_block {
        gap: 24px;
        padding: 24px;
    }

        .pricing_block.style_2 {
            padding: 24px;
        }

        /* Narrower price pane so text has room */
        .pricing_block .pricing_amount {
            width: 260px;
            padding: 32px 24px;
            /* keep the chevron look but make it gentler on tablet */
            clip-path: polygon(0 0, 85% 0%, 100% 50%, 85% 100%, 0 100%);
        }

        /* Slightly tighter headings/dividers on tablet */
        .pricing_block .pricing_title {
            font-size: 1.15rem;
            line-height: 1.45;
        }

        .pricing_block hr {
            margin: 24px 0 28px;
        }
}

/* -------- Small tablets & large phones (<= 767.98px) -------- */
@media (max-width: 767.98px) {
    /* Remove the big negative top spacing on mobile stacks */
    .pricing_section.less {
        margin-top: 0 !important;
    }

    /* Stack the card content vertically */
    .pricing_block {
        flex-direction: column;
        align-items: stretch;
        gap: 18px;
        padding: 20px;
    }

        /* Price pane becomes full-width block on top */
        .pricing_block .pricing_amount {
            width: 100%;
            padding: 16px;
            clip-path: none;
            border-radius: 12px;
        }

        .pricing_block .pricing_info > hr {
            margin: 16px 0 20px;
        }

        .pricing_block .pricing_title {
            font-size: 1.1rem;
            line-height: 1.35;
        }

        /* Feature label/value columns should stack */
        .pricing_block .rwc-feature-pair > [class^="col-"],
        .pricing_block .rwc-feature-pair > [class*=" col-"] {
            flex: 0 0 100%;
            max-width: 100%;
        }

        .pricing_block .features_title {
            margin-bottom: .35rem;
        }

    /* Decoration shapes: hide on small to avoid overflow */
    .pricing_section .decoration_item {
        display: none !important;
    }
}

/* -------- Phones (<= 575.98px) -------- */
@media (max-width: 575.98px) {
    /* Slightly smaller numbers & headings (you already scale; reinforce here) */
    .pricing_amount_value span {
        font-size: 1.02rem;
    }

    .pricing_title {
        font-size: 1.03rem;
    }

    /* Compact list text and spacing */
    .iconlist_text {
        font-size: .95rem;
    }

    .rwc-feature-pair {
        margin-bottom: .5rem;
    }
}

/* Improve anchor landing with sticky headers on all sizes */
#pricing, #account-management {
    scroll-margin-top: 80px;
}


body {
    font-family: 'Poppins', 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    color: #e0e0e0;
}

.bg-secondary {
    background-color: #2f2f2f !important;
}

.bg-third {
    background-color: #FF6100 !important;
}

.pricing-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

    .pricing-card:hover {
        transform: translateY(-4px);
        box-shadow: 0 12px 28px rgba(255, 255, 255, 0.08);
    }

.price-panel {
    position: relative;
}

    .price-panel::after {
        content: "";
        position: absolute;
        right: -40px;
        top: 50%;
        transform: translateY(-50%);
        width: 0;
        height: 0;
        border-top: 100px solid transparent;
        border-bottom: 100px solid transparent;
        border-left: 40px solid #2f2f2f;
    }

.price-panel-second {
    position: relative;
}

    .price-panel-second::after {
        content: "";
        position: absolute;
        right: -40px;
        top: 50%;
        transform: translateY(-50%);
        width: 0;
        height: 0;
        border-top: 100px solid transparent;
        border-bottom: 100px solid transparent;
        border-left: 40px solid #FF6100;
    }

.features-list {
    font-size: 1rem;
}

    .features-list .feature-item {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0.75rem 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }

        .features-list .feature-item span {
            color: #ffffff;
        }

.text-white {
    color: #ffffff !important;
}

.text-white-50 {
    color: #d0d0d0 !important;
}

/* --- RESPONSIVE FIXES --- */
@media (max-width: 768px) {
    .price-panel::after {
        display: none;
    }

    .price-panel {
        border-bottom: 1px solid #3a3a3a;
        padding: 2rem 1rem !important;
    }

    .price-value h2 {
        font-size: 2rem !important;
    }

    .price-value span {
        font-size: 1rem !important;
    }

    .pricing-card .col-md-8 {
        padding: 2rem 1.25rem !important;
    }

    .pricing-card h3 {
        font-size: 1.2rem !important;
    }

    .pricing-card p {
        font-size: 0.95rem !important;
        line-height: 1.6;
        margin-bottom: 1.5rem;
    }

    /* Make each feature row vertical */
    .features-list .feature-item {
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
        padding: 0.8rem 0;
    }

        .features-list .feature-item span:last-child {
            margin-top: 0.3rem;
            opacity: 0.95;
            font-size: 0.95rem;
        }

    .btn {
        font-size: 0.95rem !important;
        padding: 0.75rem 1rem !important;
    }
}

@media (max-width: 480px) {
    .price-value h2 {
        font-size: 1.8rem !important;
    }

    .pricing-card p {
        font-size: 0.9rem !important;
    }

    .features-list .feature-item span {
        font-size: 0.9rem;
    }

    .pricing-card .col-md-8 {
        padding: 1.25rem 1rem !important;
    }

    .btn {
        font-size: 0.9rem !important;
    }
}
}
