.pricing-plans {
    position: relative;
    z-index: 1;
}

.pricing-plans.curve-bottom {
    --divider-height: 9.566638vw;
    --divider-extra-space: 3.25rem;
    padding-bottom: calc(var(--divider-height) + var(--divider-extra-space));
}

.pricing-plans.curve-bottom + .section-padding:not(.pricing-plans) {
    padding-top: 0;
}

.pricing-plan-card__heading {
    color: var(--secondary-color);
    font-size: 1rem;
    font-weight: 400;
    text-align: center;
    display: block;
    padding: 1.375rem 1.25rem;
    font-family: var(--secondary-font);
    line-height: 1em;
    opacity: 0.5;
}

.show.pricing-plan-card__heading {
    opacity: 1;
}

.light-blue .pricing-plan-card__heading {
    background: var(--light-blue);
}

.light-pink .pricing-plan-card__heading {
    background: var(--pink);
}

.light-green .pricing-plan-card__heading {
    background: var(--light-teal);
}

.light-yellow .pricing-plan-card__heading {
    background: var(--yellow);
}

.light-blue.pricing-plan-card:after {
    background: var(--light-blue);
}

.light-pink.pricing-plan-card:after {
    background: var(--pink);
}

.light-green.pricing-plan-card:after {
    background: var(--light-teal);
}

.light-yellow.pricing-plan-card:after {
    background: var(--yellow);
}

.pricing-plans__list {
    box-shadow: 0 0.25rem 1.25rem rgba(5, 58, 94, 0.15);
    border-radius: 1.875rem;
    background: var(--white);
    overflow: hidden;
}

.pricing-plans__heading {
    margin: 0 0 1.5rem;
}

.pricing-plan-card:after {
    content: "";
    position: absolute;
    left: 0;
    top: 3.75rem;
    width: 100%;
    height: 0.3125rem;
    opacity: 0;
}

.show.pricing-plan-card:after {
    opacity: 1;
}

.pricing-plan-card {
    position: relative;
}

.pricing-plan__price {
    color: var(--heading-color);
    font-size: 2.5rem;
    font-weight: 400;
    font-family: var(--secondary-font);
    text-align: center;
    line-height: 1em;
    padding: 3.4375rem 0 6.875rem;
}

.pricing-plan__price sup {
    top: -0.75rem;
    font-size: 1rem;
    font-weight: 700;
    text-transform: uppercase;
    font-family: var(--primary-font);
    letter-spacing: 0.1em;
}

.pricing-plan__card__content {
    padding: 0 0.625rem;
}

.pricing-plan-sidebar__heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    padding: 0.3125rem 0;
    border-bottom: 0.0625rem solid var(--light-grey);
    font-size: 1rem;
    font-weight: 400;
    font-family: var(--secondary-font);
    line-height: 1em;
    width: 100%;
    color: var(--heading-color);
}

.light-blue .pricing-plan-sidebar__heading {
    border-color: var(--light-blue);
}

.light-pink .pricing-plan-sidebar__heading{
    border-color: var(--pink);
}

.light-green .pricing-plan-sidebar__heading {
    border-color: var(--light-teal);
}

.light-yellow .pricing-plan-sidebar__heading{
    border-color: var(--yellow);
}

.pricing-plan-sidebar__heading:after {
    content: "\e902";
    position: relative;
    font-family: 'my-emma-icons' !important;
    width: 2.8125rem;
    height: 2.8125rem;
    border: 0.1875rem solid var(--light-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 3.125rem;
    font-size: 0.75rem;
    color: var(--heading-color);
}

.light-blue .pricing-plan-sidebar__heading:after {
    border-color: var(--light-blue);
}

.light-pink .pricing-plan-sidebar__heading:after {
    border-color: var(--pink);
}

.light-green .pricing-plan-sidebar__heading:after {
    border-color: var(--light-teal);
}

.light-yellow .pricing-plan-sidebar__heading:after {
    border-color: var(--yellow);
}

.pricing-plan-sidebar__col ul {
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    padding: 0.625rem 0;
    height: 100%;
    justify-content: space-between;
}

.pricing-plan-sidebar__col ul li {
    padding: 0;
    margin: 0;
    font-size: 0.9375rem;
    font-weight: 400;
    color: var(--grey);
    display: flex;
    min-height: 2rem;
    align-items: center;
    justify-content: space-between;
}

.pricing-plan-sidebar__col ul li button {
    width: 1.625rem;
    height: 1.625rem;
    color: var(--white) !important;
    background: var(--light-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 3.125rem;
    font-size: 0.875rem;
}

.pricing-plan-sidebar__col ul li button:before {
    content: "\e915";
    font-family: 'my-emma-icons';
}

.pricing-plan-sidebar__col ul li:before {
    display: none;
}

.pricing-plan-sidebar__col ul li i {
    color: var(--light-blue);
    font-size: 1.625rem;
}

.pricing-plan-sidebar__col {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 0;
}

.pricing-plan-sidebar__col:first-child {
    border-top: 0.0625rem solid var(--light-grey);
}

.active.pricing-plan-sidebar__col {
    border-bottom: 0.0625rem solid var(--light-grey);
    padding: 0 0 0.375rem;
}

.light-blue .active.pricing-plan-sidebar__col {
    border-color: var(--light-blue);
}

.light-pink .active.pricing-plan-sidebar__col{
    border-color: var(--pink);
}

.light-green .active.pricing-plan-sidebar__col {
    border-color: var(--light-teal);
}

.light-yellow .active.pricing-plan-sidebar__col{
    border-color: var(--yellow);
}

.pricing-plan-sidebar__content {
    width: calc(79% - 1.375rem);
    padding-right: 0.5rem;
    border-right: 0.0625rem solid var(--light-grey);
}

.pricing-plan-sidebar__info {
    width: calc(21% + 1.375rem);
}

.pricing-plan-sidebar__col.active .pricing-plan__btn {
    position: absolute;
    left: 0;
    top: 10.75rem;
    width: 100%;
    text-align: center;
}

.pricing-plan__btn button {
    display: none;
}

.pricing-plan__btn .btn-secondary {
    padding: 1.0625rem 3.25rem 1.0625rem 2.375rem;
}

.pricing-plan__btn .btn-secondary:after {
    right: 2.0625rem;
}

.pricing-plan-sidebar__info ul li {
    justify-content: center;
    text-align: center;
}

.pricing-plan-sidebar__info ul li i.icon-z-cross {
    font-size: 1.5rem;
    opacity: 0.3;
}

.pricing-plan-sidebar__info ul li i.icon-z-check {
    font-size: 1.875rem;
}

.pricing-plan-sidebar__content,
.pricing-plan-sidebar__info {
    display: none;
}

.active .pricing-plan-sidebar__content,
.active .pricing-plan-sidebar__info {
    display: block;
}

.pricing-plan__card__content {
    display: none;
}

.show .pricing-plan__card__content {
    display: block;
}

.light-blue .pricing-plan-sidebar__col ul li i {
    color: var(--light-blue);
}

.light-pink .pricing-plan-sidebar__col ul li i {
    color: var(--pink);
}

.light-green .pricing-plan-sidebar__col ul li i {
    color: var(--light-teal);
}

.light-yellow .pricing-plan-sidebar__col ul li i {
    color: var(--yellow);
}

.pricing-plan-card__heading:hover {
    cursor: pointer;
    opacity: 1;
}

@media(min-width: 768px) {
    .pricing-plans.curve-bottom {
        --divider-height: 8.658825vw;
        --divider-extra-space: 4.75rem;
    }

    .pricing-plans__list {
        position: relative;
    }

    .pricing-plan-card {
        position: unset;
        width: 100%;
    }

    .pricing-plan-card__heading {
        width: 25%;
        position: absolute;
        left: 0;
        font-size: 1.25rem;
        top: 0;
        z-index: 3;
    }

    .pricing-plan-card:nth-child(2) .pricing-plan-card__heading {
        left: 25%;
    }

    .pricing-plan-card:nth-child(3) .pricing-plan-card__heading {
        left: 50%;
    }

    .pricing-plan-card:nth-child(4) .pricing-plan-card__heading {
        left: 75%;
    }

    .pricing-plan-card.show {
        position: relative;
    }

    .pricing-plan-card:after {
        top: 4rem;
    }

    .pricing-plan__card__content {
        padding: 0 2rem 2rem;
    }

    .pricing-plan__price {
        text-align: left;
        padding: 7.5rem 0 3.125rem;
    }

    .pricing-plan-sidebar__col.active .pricing-plan__btn {
        left: -2rem;
        top: 7.25rem;
        text-align: right;
    }

    .pricing-plan-sidebar__heading {
        font-size: 1.25rem;
    }

    .pricing-plan-sidebar__content {
        width: calc(52% - 1rem);
    }

    .pricing-plan-sidebar__info {
        width: calc(48% + 1rem);
    }

    .pricing-plan-sidebar__col ul {
        gap: 0.5rem;
    }

    .pricing-plan-sidebar__col:last-child .pricing-plan-sidebar__heading {
        border-bottom: none;
    }

    .pricing-plans__heading {
        margin: 0 0 2.125rem;
    }
}

@media(min-width: 1200px) {
    .pricing-plans.curve-bottom {
        --divider-height: 5.252562vw;
        --divider-extra-space: 3.25rem;
    }

    .pricing-plan-card__heading:hover {
        cursor: default;
    }    

    .pricing-plans__list {
        padding-left: 19.5rem;
        box-shadow: none;
        background: transparent;
        display: flex;
        gap: 2rem;
        overflow: unset;
    }

    .pricing-plan__card__content {
        display: block;
        padding: 0 1rem;
    }

    .pricing-plan-card__heading {
        position: relative;
        left: 0 !important;
        width: 100%;
        opacity: 1;
    }

    .pricing-plan-card {
        width: calc(25% - 0.625rem);
        border-radius: 1.875rem;
        background: var(--white);
        box-shadow: 0 0.25rem 1.25rem rgba(5, 58, 94, 0.15);
        overflow: hidden;
    }

    .pricing-plan-sidebar__col.active .pricing-plan__btn {
        display: none;
    }

    .pricing-plan__price {
        text-align: center;
        padding: 2.1875rem 0 1.5625rem;
    }

    .pricing-plan-card:after {
        display: none;
    }

    .pricing-plan-sidebar__col .pricing-plan-sidebar__heading {
        justify-content: center;
    }

    .pricing-plan-sidebar__col .pricing-plan-sidebar__heading span {
        display: none !important;
    }


    .pricing-plan-sidebar__col .pricing-plan-sidebar__content {
        display: none !important;
    }

    .pricing-plan-sidebar__info {
        width: 100%;
    }

    .pricing-plan-sidebar__col ul li {
        font-size: 1rem;
    }

    .pricing-plans__desktop-sidebar {
        position: absolute;
        left: 0;
        bottom: 0;
        width: 18.125rem;
    }

    .pricing-plan-sidebar__content {
        width: 100%;
        padding-right: 0;
        border-right: none;
    }

    .pricing-plan-sidebar__item ul {
        padding: 0;
        margin: 0;
        display: flex;
        flex-direction: column;
        gap: 0.875rem;
        padding: 0.625rem 0;
        height: 100%;
        justify-content: space-between;
    }

    .pricing-plan-sidebar__item ul li {
        padding: 0;
        margin: 0;
        font-size: 1rem;
        font-weight: 400;
        color: var(--grey);
        display: flex;
        min-height: 2rem;
        align-items: center;
        justify-content: space-between;
    }

    .pricing-plan-sidebar__item ul li button {
        width: 1.625rem;
        height: 1.625rem;
        color: var(--white);
        background: var(--light-teal);
        display: flex;
        align-items: center;
        justify-content: center;
        border: none;
        border-radius: 3.125rem;
        font-size: 0.875rem;
    }

    .pricing-plan-sidebar__item ul li button:before {
        content: "\e915";
        font-family: 'my-emma-icons';
    }

    .pricing-plan-sidebar__item ul li:before {
        display: none;
    }

    .pricing-plan-sidebar__heading {
        font-size: 1.125rem;
        cursor: pointer;
    }

    .pricing-plan-sidebar__col ul {
        gap: 0.875rem;
        height: auto;
    }

    .pricing-plan-sidebar__col.active .pricing-plan-sidebar__info {
        display: block !important;
    }

    .pricing-plan__desktop-btn {
        padding: 0.8125rem 0;
        text-align: center;        
        border-top: 0.0625rem solid var(--light-grey);
        border-bottom: 0.0625rem solid var(--light-grey);
    }

    .light-blue .pricing-plan__desktop-btn {
        border-color: var(--light-blue);
    }
    
    .light-pink .pricing-plan__desktop-btn{
        border-color: var(--pink);
    }
    
    .light-green .pricing-plan__desktop-btn {
        border-color: var(--light-teal);
    }
    
    .light-yellow .pricing-plan__desktop-btn{
        border-color: var(--yellow);
    }

    .light-blue .pricing-plan__desktop-btn .btn-link:before {
        background-color: var(--light-blue);
    }
    
    .light-pink .pricing-plan__desktop-btn .btn-link:before {
        background-color: var(--pink);
    }
    
    .light-green .pricing-plan__desktop-btn .btn-link:before {
        background-color: var(--light-teal);
    }
    
    .light-yellow .pricing-plan__desktop-btn .btn-link:before {
        background-color: var(--yellow);
    }

    .light-blue .pricing-plan__desktop-btn .btn-link:after {
        color: var(--light-blue);
    }

    .light-pink .pricing-plan__desktop-btn .btn-link:after {
        color: var(--pink);
    }

    .light-green .pricing-plan__desktop-btn .btn-link:after {
        color: var(--light-teal);
    }

    .light-yellow .pricing-plan__desktop-btn .btn-link:after {
        color: var(--yellow);
    }

    .pricing-plan__price span {
        font-size: 1.9375rem;
    }

    .pricing-plan-sidebar__col:first-child,
    .active.pricing-plan-sidebar__col {
        border-top: none;
    }

    .pricing-plan-sidebar__item.active {
        border-bottom: 0.0625rem solid var(--light-grey);
    }

    .pricing-plans__heading {
        margin: 0 0 3.375rem;
    }

    .pricing-plan-sidebar__item:last-child .pricing-plan-sidebar__heading {
        border-bottom: none !important;
    }

    .pricing-plan-sidebar__col ul li button {
        background: var(--light-teal);
    }

    .pricing-plan-sidebar__heading::after {
        border: 0.1875rem solid var(--light-teal);
    }
}

@media(min-width: 1600px) {
    .pricing-plans.curve-bottom {
        --divider-height: 5.833333vw;
    }

    .pricing-plan-card__heading {
        font-size: 1.875rem;
    }

    .pricing-plan__card__content {
        padding: 0 2rem;
    }

    .pricing-plans__list {
        padding-left: 28.5rem;
    }

    .pricing-plan-sidebar__heading {
        font-size: 1.5rem;
        padding: 0.5625rem 0;
    }

    .pricing-plan-sidebar__item ul li,
    .pricing-plan-sidebar__col ul li {
        font-size: 1.25rem;
    }

    .pricing-plans__desktop-sidebar {
        width: 26.4375rem;
    }
}