/* CREZOVA landing pricing. Native plans, billing cycles and checkout remain the source of truth. */
.cz-landing .cz-home-pricing {
    --cz-pricing-ink: #20172D;
    --cz-pricing-muted: #655D70;
    --cz-pricing-paper: #FFFFFF;
    --cz-pricing-surface: #F7F4FB;
    --cz-pricing-line: #E6E0ED;
    --cz-pricing-violet: #763CD4;
    --cz-pricing-violet-text: #6330B5;
    --cz-pricing-pink-text: #C51D51;
    --cz-pricing-shadow: 0 8px 25px rgba(43, 24, 64, .045);
    color: var(--cz-pricing-ink);
    scroll-margin-block-start: 6rem;
}
.cz-landing .cz-home-pricing :is(.cz-pricing-tabs, .cz-pricing-billing, .cz-pricing-grid, .cz-pricing-card, .cz-pricing-card-inner, .cz-pricing-credit-grid, .cz-pricing-credit-card, .cz-pricing-form, .cz-pricing-form button) {
    box-sizing: border-box;
}
.cz-landing .cz-home-pricing .cz-pricing-tabs-wrap {
    margin-block: 1.5rem 0;
}
.cz-landing .cz-home-pricing .cz-pricing-panels {
    margin-block-start: 1rem;
}
.cz-landing .cz-home-pricing .cz-pricing-tabs {
    gap: .25rem;
    max-inline-size: 100%;
    padding: .3125rem;
    border: 1px solid var(--cz-pricing-line);
    border-radius: .875rem;
    background: var(--cz-pricing-surface);
    box-shadow: none;
}
.cz-landing .cz-home-pricing .cz-pricing-tabs li {
    min-inline-size: 0;
    border-radius: .625rem;
    background: transparent;
    color: var(--cz-pricing-muted);
}
.cz-landing .cz-home-pricing .cz-pricing-tabs a {
    min-block-size: 44px;
    padding: .6875rem 1.75rem;
    border-radius: .625rem;
    color: var(--cz-pricing-muted);
    font-size: .875rem;
    font-weight: 600;
    line-height: 1.5;
    text-align: center;
    white-space: normal;
    transition: color .16s ease, background-color .16s ease;
}
.cz-landing .cz-home-pricing .cz-pricing-tabs a:hover {
    background: var(--cz-pricing-paper);
    color: var(--cz-pricing-violet-text);
}
.cz-landing .cz-home-pricing .cz-pricing-tabs .subscription-plan-tab-bg {
    background: #763CD4 !important;
    color: #FFFFFF;
    box-shadow: 0 2px 5px rgba(63, 29, 111, .12);
}
.cz-landing .cz-home-pricing .cz-pricing-tabs .subscription-plan-tab-bg a {
    background: transparent;
    color: #FFFFFF;
}
.cz-landing .cz-home-pricing .cz-pricing-billing {
    gap: .625rem;
    margin-block: 1rem 1.25rem;
    padding-inline: 0;
}
.cz-landing .cz-home-pricing .cz-pricing-billing .radio-container-payment {
    display: flex;
    align-items: center;
    min-block-size: 44px;
    padding-inline-start: .8125rem;
    border: 1px solid var(--cz-pricing-line);
    border-radius: .625rem;
    background: var(--cz-pricing-paper);
    transition: border-color .16s ease, background-color .16s ease;
}
.cz-landing .cz-home-pricing .cz-pricing-billing .radio-container-payment:has(input:checked) {
    border-color: #B8A0DB;
    background: var(--cz-pricing-surface);
}
.cz-landing .cz-home-pricing .cz-pricing-billing input[type="radio"]:not(.hidden) {
    display: block;
    position: static;
    appearance: auto;
    opacity: 1;
    flex: 0 0 16px;
    inline-size: 16px;
    block-size: 16px;
    margin: 0;
    padding: 0;
    accent-color: #763CD4;
    cursor: pointer;
}
.cz-landing .cz-home-pricing .cz-pricing-billing label {
    display: inline-flex;
    align-items: center;
    min-block-size: 44px;
    padding: .625rem .875rem .625rem .5rem;
    color: var(--cz-pricing-muted);
    font-size: .8125rem;
    font-weight: 550;
    line-height: 1.5;
}
.cz-landing .cz-home-pricing .cz-pricing-billing label::before,
.cz-landing .cz-home-pricing .cz-pricing-billing label::after {
    content: none;
}
.cz-landing .cz-home-pricing .cz-pricing-billing input:checked + label {
    color: var(--cz-pricing-violet-text);
    font-weight: 650;
}
.cz-landing .cz-home-pricing .cz-pricing-grid:not(.hidden),
.cz-landing .cz-home-pricing .cz-pricing-credit-grid:not(.hidden) {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: center;
    gap: 1.25rem;
    inline-size: 100%;
    max-inline-size: 72rem;
    margin: 1.25rem auto 0;
    padding: 0;
}
.cz-landing .cz-home-pricing .cz-pricing-card,
.cz-landing .cz-home-pricing .cz-pricing-credit-card {
    position: relative;
    flex: 0 0 calc((100% - 2.5rem) / 3);
    min-inline-size: 0;
    max-inline-size: none;
    inline-size: auto;
    block-size: auto;
    margin: 0;
    border-radius: 1.125rem;
    overflow: visible;
    box-shadow: var(--cz-pricing-shadow);
    transition: box-shadow .18s ease;
}
.cz-landing .cz-home-pricing .cz-pricing-card:not(.hidden) {
    display: flex;
    padding: 1px;
    border: 0;
    background: var(--cz-pricing-line);
}
.cz-landing .cz-home-pricing .cz-pricing-card.card-border {
    background: linear-gradient(145deg, #E22861 0%, #A26EF7 48%, #763CD4 100%) !important;
    padding: 1px;
    border-radius: 1.125rem;
    box-shadow: 0 8px 30px rgba(118, 60, 212, .09);
}
.cz-landing .cz-home-pricing .cz-pricing-card:hover,
.cz-landing .cz-home-pricing .cz-pricing-credit-card:hover {
    z-index: 2;
    box-shadow: 0 12px 32px rgba(43, 24, 64, .085);
}
.cz-landing .cz-home-pricing .cz-pricing-card:focus-within,
.cz-landing .cz-home-pricing .cz-pricing-credit-card:focus-within {
    z-index: 3;
}
.cz-landing .cz-home-pricing .cz-pricing-card-inner {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-inline-size: 0;
    inline-size: 100%;
    block-size: auto;
    padding: 1.875rem;
    border: 0;
    border-radius: calc(1.125rem - 1px);
    background: var(--cz-pricing-paper);
    color: var(--cz-pricing-ink);
    overflow: visible;
    box-shadow: none;
}
.cz-landing .cz-home-pricing .cz-pricing-name {
    min-block-size: 1.5em;
    margin: 0;
    color: var(--cz-pricing-ink);
    font-size: 1.1875rem;
    font-weight: 650;
    line-height: 1.5;
    letter-spacing: -.02em;
    overflow-wrap: anywhere;
}
.cz-landing .cz-home-pricing .cz-pricing-price {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-block-size: 5.125rem;
    min-inline-size: 0;
    margin-block: .625rem 1.125rem;
    color: var(--cz-pricing-ink);
    font-variant-numeric: tabular-nums;
    line-height: 1.2;
}
.cz-landing .cz-home-pricing .cz-pricing-amount {
    color: var(--cz-pricing-ink);
    font-size: clamp(2.25rem, 3vw, 2.75rem);
    font-weight: 750;
    line-height: 1.15;
    letter-spacing: -.045em;
    overflow-wrap: anywhere;
    word-break: normal;
}
.cz-landing .cz-home-pricing .cz-pricing-cycle {
    color: var(--cz-pricing-muted);
    font-size: .8125rem;
    font-weight: 450;
    line-height: 1.55;
    letter-spacing: 0;
    white-space: normal;
}
.cz-landing .cz-home-pricing .cz-pricing-was {
    color: var(--cz-pricing-muted);
    font-size: .75rem;
    font-weight: 450;
    line-height: 1.6;
}
.cz-landing .cz-home-pricing .cz-pricing-card.card-border .cz-pricing-amount {
    background-image: none !important;
    color: var(--cz-pricing-pink-text) !important;
    -webkit-text-fill-color: currentColor;
}
.cz-landing .cz-home-pricing .cz-pricing-form {
    min-inline-size: 0;
    inline-size: 100%;
    margin: 0;
}
.cz-landing .cz-home-pricing .cz-pricing-form button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .625rem;
    inline-size: 100%;
    min-inline-size: 0;
    min-block-size: 48px;
    block-size: auto;
    margin: 0;
    padding: .8125rem 1rem;
    border: 1px solid transparent;
    border-radius: .625rem;
    background: #21172F;
    color: #FFFFFF;
    font-family: inherit;
    font-size: .875rem;
    font-weight: 650;
    line-height: 1.5;
    text-align: center;
    white-space: normal;
    overflow-wrap: anywhere;
    box-shadow: none;
    transition: background-color .16s ease, box-shadow .16s ease;
}
.cz-landing .cz-home-pricing .cz-pricing-card.card-border .cz-pricing-form button {
    background: #763CD4 !important;
}
.cz-landing .cz-home-pricing .cz-pricing-card:not(.card-border) .cz-pricing-form button {
    background: #21172F !important;
}
.cz-landing .cz-home-pricing .cz-pricing-card .cz-pricing-form button:hover,
.cz-landing .cz-home-pricing .cz-pricing-credit-card .cz-pricing-form button:hover {
    background: #6330B5 !important;
    color: #FFFFFF;
    box-shadow: 0 4px 12px rgba(118, 60, 212, .13);
}
.cz-landing .cz-home-pricing .cz-pricing-form button:disabled {
    cursor: wait;
    opacity: .65;
    box-shadow: none;
}
.cz-landing .cz-home-pricing .cz-pricing-features {
    gap: .625rem;
    min-inline-size: 0;
    margin-block-start: 1.5rem;
    padding-block-start: 1.375rem;
    border-block-start: 1px solid var(--cz-pricing-line);
    color: var(--cz-pricing-muted);
    font-size: .875rem;
    font-weight: 450;
    line-height: 1.6;
}
.cz-landing .cz-home-pricing .cz-pricing-feature {
    align-items: flex-start;
    gap: .625rem;
    color: var(--cz-pricing-muted);
    font-size: .875rem;
    font-weight: 450;
    line-height: 1.6;
}
.cz-landing .cz-home-pricing .cz-pricing-feature > svg {
    flex-shrink: 0;
    margin-block-start: .3rem;
    color: var(--cz-pricing-violet-text);
}
.cz-landing .cz-home-pricing .cz-pricing-feature > .break-words {
    min-inline-size: 0;
    overflow-wrap: anywhere;
}
.cz-landing .cz-home-pricing .cz-pricing-features .group:has(> svg) {
    flex-shrink: 0;
}
.cz-landing .cz-home-pricing .cz-pricing-features .group > svg {
    color: var(--cz-pricing-muted);
}
.cz-landing .cz-home-pricing .cz-pricing-features .group > .absolute {
    z-index: 20;
    max-inline-size: min(22rem, calc(100vw - 3rem));
    padding-block-start: .5rem;
}
.cz-landing .cz-home-pricing .cz-pricing-credit-card {
    padding: 1.875rem;
    border: 1px solid var(--cz-pricing-line);
    background: var(--cz-pricing-paper) !important;
    color: var(--cz-pricing-ink);
}
.cz-landing .cz-home-pricing .cz-pricing-credit-card:not(.hidden) {
    display: flex;
    flex-direction: column;
}
.cz-landing .cz-home-pricing .cz-pricing-credit-card > .flex {
    flex: 1 1 auto;
    min-inline-size: 0;
    inline-size: 100%;
    gap: 1.5rem;
}
.cz-landing .cz-home-pricing .cz-pricing-credit-card .cz-pricing-form {
    margin-block-start: auto;
}
.cz-landing .cz-home-pricing .cz-pricing-credit-name {
    margin: 0 0 .625rem;
    color: var(--cz-pricing-ink);
    font-family: inherit;
    font-size: 1.1875rem;
    font-weight: 650;
    line-height: 1.5;
    letter-spacing: -.02em;
    overflow-wrap: anywhere;
}
.cz-landing .cz-home-pricing .cz-pricing-credit-amount {
    color: var(--cz-pricing-ink);
    font-size: 2.75rem;
    font-weight: 750;
    line-height: 1.2;
    letter-spacing: -.045em;
    font-variant-numeric: tabular-nums;
    overflow-wrap: anywhere;
    word-break: normal;
}
.cz-landing .cz-home-pricing .cz-pricing-empty {
    box-sizing: border-box;
    max-inline-size: 40rem;
    margin: 2rem auto 0;
    padding: 2rem;
    border: 1px solid var(--cz-pricing-line);
    border-radius: 1rem;
    background: var(--cz-pricing-surface);
    color: var(--cz-pricing-ink);
    text-align: center;
    overflow-wrap: anywhere;
}
.cz-landing .cz-home-pricing .cz-pricing-empty p {
    max-inline-size: 42ch;
    margin: 0 auto;
    color: var(--cz-pricing-muted);
    font-size: .9375rem;
    line-height: 1.7;
}
.cz-landing .cz-home-pricing .cz-pricing-empty a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-block-size: 44px;
    margin-block-start: .875rem;
    padding: .625rem 1rem;
    border: 1px solid var(--cz-pricing-line);
    border-radius: .625rem;
    background: var(--cz-pricing-paper);
    color: var(--cz-pricing-violet-text);
    font-size: .875rem;
    font-weight: 600;
    line-height: 1.5;
}
.cz-landing .cz-home-pricing .cz-pricing-empty a:hover {
    border-color: var(--cz-pricing-violet);
    text-decoration: underline;
    text-underline-offset: 4px;
}
.cz-landing .cz-home-pricing :is(a, button, input, [tabindex]):focus-visible {
    outline: 3px solid var(--cz-pricing-violet);
    outline-offset: 4px;
}
.cz-landing .cz-home-pricing .cz-pricing-billing .radio-container-payment:focus-within {
    border-color: var(--cz-pricing-violet);
}
.dark .cz-landing .cz-home-pricing {
    --cz-pricing-ink: #F4EFF9;
    --cz-pricing-muted: #C2B7CF;
    --cz-pricing-paper: #20172D;
    --cz-pricing-surface: #2B203A;
    --cz-pricing-line: #493856;
    --cz-pricing-violet: #D0B2FC;
    --cz-pricing-violet-text: #D0B2FC;
    --cz-pricing-pink-text: #FF9DBB;
    --cz-pricing-shadow: 0 8px 25px rgba(0, 0, 0, .1);
}
.dark .cz-landing .cz-home-pricing .cz-pricing-card:not(.card-border) .cz-pricing-form button,
.dark .cz-landing .cz-home-pricing .cz-pricing-credit-card .cz-pricing-form button {
    border-color: #6F5488;
    background: #342342 !important;
    color: #F4EFF9;
}
.dark .cz-landing .cz-home-pricing .cz-pricing-card .cz-pricing-form button:hover,
.dark .cz-landing .cz-home-pricing .cz-pricing-credit-card .cz-pricing-form button:hover {
    background: #6330B5 !important;
    color: #FFFFFF;
}
@media (min-width: 768px) and (max-width: 1100px) {
    .cz-landing .cz-home-pricing .cz-pricing-card,
    .cz-landing .cz-home-pricing .cz-pricing-credit-card {
        flex-basis: calc((100% - 1.25rem) / 2);
    }
    .cz-landing .cz-home-pricing .cz-pricing-card-inner,
    .cz-landing .cz-home-pricing .cz-pricing-credit-card {
        padding: 1.625rem;
    }
}
@media (max-width: 767px) {
    .cz-landing .cz-home-pricing .cz-pricing-tabs a {
        padding-inline: 1.25rem;
        font-size: .8125rem;
    }
    .cz-landing .cz-home-pricing .cz-pricing-billing {
        gap: .5rem;
        margin-block: 1rem 1.25rem;
    }
    .cz-landing .cz-home-pricing .cz-pricing-grid:not(.hidden),
    .cz-landing .cz-home-pricing .cz-pricing-credit-grid:not(.hidden) {
        gap: 1.125rem;
        max-inline-size: 28rem;
        margin-block-start: 1.25rem;
    }
    .cz-landing .cz-home-pricing .cz-pricing-card,
    .cz-landing .cz-home-pricing .cz-pricing-credit-card {
        flex-basis: 100%;
    }
    .cz-landing .cz-home-pricing .cz-pricing-card-inner,
    .cz-landing .cz-home-pricing .cz-pricing-credit-card {
        padding: 1.625rem;
    }
    .cz-landing .cz-home-pricing .cz-pricing-price {
        min-block-size: 4.5rem;
        margin-block-end: 1rem;
    }
    .cz-landing .cz-home-pricing .cz-pricing-amount,
    .cz-landing .cz-home-pricing .cz-pricing-credit-amount {
        font-size: 2.625rem;
    }
    .cz-landing .cz-home-pricing .cz-pricing-empty {
        padding: 1.5rem 1.25rem;
    }
    .cz-landing .cz-home-pricing .cz-pricing-features {
        gap: .625rem;
        margin-block-start: 1.375rem;
        padding-block-start: 1.25rem;
    }
}
@media (prefers-reduced-motion: reduce) {
    .cz-landing .cz-home-pricing *,
    .cz-landing .cz-home-pricing *::before,
    .cz-landing .cz-home-pricing *::after {
        transition-duration: 0s !important;
        animation-duration: 0s !important;
    }
}
