:root {
    --z-font-sans: "Inter", sans-serif;
    --z-background: #fefefe;
    --z-foreground: #282c34;
    --z-card: #eeeeee;
    --z-card-foreground: #282c34;
    --z-primary: #19ccc0;
    --z-primary-foreground: #eeeeee;
    --z-accent: #f3fcfc;
    --z-accent-foreground: #282c34;
    --z-secondary: #f9f9fa;
    --z-secondary-foreground: #595959;
    --z-muted: #a0a0a0;
    --z-muted-foreground: #6c6c6c;
    --z-border: #d1d1d1;
    --z-popover: #eeeeee;
    --z-popover-foreground: #222831;
    --z-shadow-card: rgba(34, 40, 49, 0.15) 2.4px 2.4px 3.2px;
    --z-shadow-primary: rgba(34, 40, 49, 0.1) 0px 1px 2px 0px;
    --z-shadow-secondary: rgba(34, 40, 49, 0.05) 0px 1px 2px 0px;
    --z-radius: 8px;
    --z-radius-md: 16px;
    --z-radius-lg: 24px;
    --z-spacing-xxs: 4px;
    --z-spacing-xs: 8px;
    --z-spacing: 16px;
    --z-spacing-md: 24px;
    --z-spacing-lg: 32px;
    --z-spacing-xl: 40px;
    --z-spacing-xxl: 64px;
    --z-text-xs: 12px;
    --z-text: 14px;
    --z-text-md: 16px;
    --z-text-lg: 18px;
    --z-text-xl: 24px;
    --z-step-size: 60px;
}

#z-root {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    /* border-radius: var(--z-radius-lg); */
    /* box-shadow: var(--z-shadow-card); */
    overflow: hidden;
    background: var(--z-background);
}


/* #z-root .z-form {
    display: flex;
    flex-direction: column;

    & .z-form-body {
        display: grid;
        grid-template-columns: 60% 1fr;
        align-items: start;

        & .z-form-order {
            padding: var(--z-spacing-lg);
            border: 1px solid var(--z-border);
            border-radius: var(--z-radius);

            @media (max-width: 1024px) {
                padding: var(--z-spacing-lg);
            }

            @media (max-width: 767px) {
                padding: var(--z-spacing-md);
            }
        }

        @media (max-width: 1024px) {
            grid-template-columns: 100%;
        }

        & .z-form-billing {
            display: flex;
            align-items: center;
            justify-content: center;
            padding: var(--z-spacing-xl);

            @media (max-width: 1024px) {
                padding: var(--z-spacing-lg);
            }

            @media (max-width: 767px) {
                padding: var(--z-spacing-md);
            }
        }
    }
} */

/* #z-root .z-multi-step {
    display: flex;
    flex-direction: column;
    gap: var(--z-spacing-lg);
    flex: 1 0 100%;
    max-width: 528px;

    & .z-multi-step-indicator {
        display: grid;
        grid-template-columns: repeat(9, 1fr);
        justify-content: center;
        align-items: center;
    }

    & .z-multi-step-body {
        display: flex;
        flex-direction: column;
        flex: 1 0 calc(100% - 48px);
    }

    & .z-multi-step-footer {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex: 0 0 48px;
    }
} */



#z-root .z-form {
    display: flex;
    flex-direction: column;

    & .z-form-body {
        display: grid;
        grid-template-columns: 1fr;
        align-items: start;
    }
}

#z-root .z-multi-step {
    display: flex;
    flex-direction: column;
    gap: var(--z-spacing-xxl);
    flex: 1 0 100%;

    & .z-multi-step-indicator-wrapper {
        justify-content: center;
        display: flex;

        & .z-multi-step-indicator {
            display: grid;
            grid-template-columns: repeat(15, 1fr) !important;
            justify-content: center;
            align-items: center;
            justify-items: center;
            max-width: 1024px;
            width: 100%;

            & .z-step {
                grid-column: span 2;
            }

            & .z-step:last-child {
                grid-column: span 1 !important;
            }

            @media (max-width: 1024px) {
                max-width: 768px;

            }
        }
    }

    & .z-multi-step-body {
        display: grid;
        grid-template-columns: 60% 1fr;
        align-items: start;
        gap: var(--z-spacing-xl) !important;

        & .z-form-billing-form-wrapper {
            display: flex;
            flex-direction: column;
            gap: var(--z-spacing-xl);
            justify-content: space-between;
            overflow: hidden;

            & .z-form-billing-form {
                flex: 1 1 100%;
                overflow: hidden;
                padding: var(--z-spacing);
            }

            & .z-multi-step-footer {
                flex: 0 0 48px
            }
        }

        & .z-form-order {
            padding: var(--z-spacing-md);
            border: 1px solid var(--z-border);
            border-radius: var(--z-radius);

            @media (max-width: 1024px) {
                padding: var(--z-spacing-lg);
            }

            @media (max-width: 767px) {
                padding: var(--z-spacing-md);
            }
        }

        @media (max-width: 1024px) {
            grid-template-columns: 100%;
        }

        & .z-form-billing {
            display: flex;
            align-items: center;
            justify-content: center;
            padding: var(--z-spacing-xl);

            @media (max-width: 1024px) {
                padding: var(--z-spacing-lg);
            }

            @media (max-width: 767px) {
                padding: var(--z-spacing-md);
            }
        }
    }

    & .z-multi-step-footer {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex: 0 0 48px;
    }
}


#z-root .z-multi-step-indicator .z-step {
    display: grid;
    grid-template-columns: auto 1fr !important;
    align-items: center;
    width: 100%;

    & .z-step-label {
        background: #f3f4f6;
        color: var(--z-secondary-foreground);
        border-radius: 50%;
        width: var(--z-step-size);
        height: var(--z-step-size);
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 4px;
        transition: background 0.2s, color 0.2s;
        border: 2px solid transparent;
        font-family: var(--z-font-sans);
        font-size: var(--z-text-lg);
        font-weight: 400;
        position: relative;

        &::before {
            content: attr(data-z-label);
            position: absolute;
            bottom: -24px;
            left: 50%;
            transform: translateX(-50%);
            z-index: 0;
            font-family: var(--z-font-sans);
            font-size: var(--z-text-xs) !important;
            font-weight: 500;
            line-height: 1em;
            color: var(--z-foreground);
            opacity: 0.5;

            @media all and (max-width:767px) {
                content: ""
            }
        }

        @media all and (max-width:1024px) {
            font-size: var(--z-text) !important;
            width: calc(var(--z-step-size) - 20px);
            height: calc(var(--z-step-size) - 20px);
        }
    }

    &[z-step-status="completed"] {
        cursor: pointer;

        & .z-step-label::before {
            opacity: 1;
        }
    }

    &:not(:last-child) .z-step-line {
        background: var(--z-card) !important;
        height: 2px;
        width: 100%;
        grid-column: span 1;
    }

    &[z-step-status="active"] .z-step-label {
        background: var(--z-primary);
        color: var(--z-primary-foreground);
        border-color: var(--z-primary);
        cursor: pointer;

        &::before {
            opacity: 1;
        }
    }

    &[z-step-status="completed"] .z-step-label {
        background: var(--z-primary);
        color: var(--z-primary-foreground);
        border-color: var(--z-primary);
    }

    &[z-step-status="completed"] .z-step-line {
        background: var(--z-primary);
    }
}

#z-root .z-multi-step .z-multi-step-item {
    & .z-multi-step-wrapper {
        display: flex;
        flex-direction: column;
        gap: var(--z-spacing-md);

        & .z-multi-step-header {
            display: flex;
            flex-direction: column;
            gap: var(--z-spacing-xs);
        }

        & .z-multi-step-content {
            flex: 1 1 100%;
            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
            align-content: flex-start;
            gap: var(--z-spacing);
            min-height: 240px;
        }
    }
}

#z-root .z-step-label {
    font-family: var(--z-font-sans);
    font-size: var(--z-text);
    font-weight: 500;
    line-height: 1em;
    color: var(--z-secondary-foreground);
    margin: 0 !important;
    /* text-transform: uppercase; */
    word-spacing: 2px;
    letter-spacing: 1px;
}

#z-root .z-headline {
    font-family: var(--z-font-sans);
    font-size: var(--z-text-xl);
    font-weight: 700;
    line-height: 1.1em;
    color: var(--z-foreground);
    margin: 0 !important;

    @media (max-width: 1024px) {
        font-size: var(--z-text-lg);
    }

    @media (max-width: 767px) {
        font-size: var(--z-text-lg);
    }
}

#z-root .z-sub-headline {
    font-family: var(--z-font-sans);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.4em;
    color: var(--z-secondary-foreground);
    margin: 0 !important;

    @media (max-width: 767px) {
        font-size: 1rem;
    }
}

#z-root .z-text {
    font-family: var(--z-font-sans);
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.45em;
    color: var(--z-foreground);
    margin: 0 !important;
}

#z-root .z-button {
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: var(--z-radius);
    height: 40px;
    padding: var(--z-spacing);
    font-family: var(--z-font-sans);
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.2em;
    cursor: pointer;
    box-shadow: var(--z-shadow-md);
    transition: all 350ms ease-in-out 0ms;

    &[z-component-id="z-button-back"] {
        background-color: #e2e8f0;
        color: var(--z-secondary-foreground);
        padding: var(--z-spacing);

        &:hover {
            background-color: var(--z-primary);
            color: var(--z-primary-foreground);
        }
    }

    &[z-component-id="z-button-continue"] {
        gap: var(--z-spacing-xs);
        background-color: var(--z-primary);
        color: var(--z-primary-foreground);

        &:hover {
            background-color: var(--z-primary);
            color: var(--z-primary-foreground);
        }

        & svg {
            width: 16px;
        }
    }

    &:disabled {
        background-color: #e2e8f0;
        color: var(--z-secondary-foreground);
        cursor: not-allowed;
        box-shadow: none;
        pointer-events: none;
    }
}

#z-root .z-conditional-box {
    flex: 1 0 100%;
    display: flex;
    flex-direction: column;
    gap: var(--z-spacing-md);

    & .z-form-group {
        flex: 1;
    }

    & .z-conditional-item {
        flex: 1 1 100%;
        display: none;
        flex-direction: row;
        flex-wrap: wrap;
        align-content: flex-start;
        gap: var(--z-spacing-md);
        padding: 20px;
        background-color: var(--z-card);
        border-radius: var(--z-radius);
    }
}

#z-root .z-form-group {
    flex: 1 0 100%;
    display: flex;
    flex-direction: row;
    gap: var(--z-spacing-xs);
    align-items: flex-start;
    justify-content: flex-start;
    position: relative;

    & .z-form-field {
        flex: 1 0 calc(100% - 28px);
    }

    & .z-tooltip {
        flex: 0 0 20px;
        /* margin-top: calc(24px + 11.5px); */
        position: relative;
        top: calc(100% - 30px);
        right: 0px;
    }
}

#z-root .z-form-field {
    flex: 1 1 100%;
    display: flex;
    flex-direction: column;
    gap: var(--z-spacing-xs);

    & .z-label {
        display: flex !important;
        flex-direction: column;
        align-items: flex-start !important;
        justify-content: center !important;
        font-family: var(--z-font-sans);
        font-size: var(--z-text);

        &:is(.z-checkbox, .z-radio) {
            padding: var(--z-spacing-lg) var(--z-spacing-xl) !important;
            outline: 1px solid var(--z-border);
        }

        &:has(.z-label-text, .z-description) {
            gap: var(--z-spacing-xs);
            padding: var(--z-spacing-lg) var(--z-spacing-xl) !important;
        }

        & .z-label-text {
            font-size: 0.875rem;
            font-weight: 500;
            line-height: 1.2em;
            color: var(--z-card-foreground) !important;
            font-family: inherit !important;
            font-size: var(--z-text-md);
        }

        & .z-description {
            font-size: 0.75rem;
            font-weight: 400 !important;
            line-height: 1.4em;
            color: var(--z-muted) !important;
            font-family: inherit !important;
            font-size: var(--z-text);

            &:empty {
                display: none !important
            }
        }
    }

    & .z-input {
        min-width: 200px;
        font-family: var(--z-font-sans);
        border-radius: 8px;
        font-size: var(--z-text);
        font-weight: 400;
        line-height: 1em;
        padding: 0px 16px;
        min-height: 48px;
        height: auto;
        border: 1px solid var(--z-border);
        box-shadow: var(--z-shadow-primary);
        background: var(--z-background);
        color: var(--z-foreground);
        transition: border-color 0.2s;

        &:focus {
            /* border-color: var(--z-primary); */
            outline: 2px solid var(--z-primary);
            outline-offset: 2px;

        }

        &::placeholder {
            color: var(--z-secondary-foreground);
            opacity: 0.5;
            font-weight: 400;
        }
    }

    & .z-checkbox {
        font-family: var(--z-font-sans);
        font-size: 0.875rem;
        font-weight: 500;
        line-height: 1em;
        display: flex;
        align-items: center;
        justify-content: space-between;
        background: var(--z-secondary);
        border: 0px solid var(--z-border);
        border-radius: var(--z-radius-md);
        padding: 0px var(--z-spacing);
        min-height: 48px;
        height: auto;
        cursor: pointer;
        transition: background 0.2s, color 0.2s;

        &.z-label:has(input:checked) {
            background: var(--z-accent) !important;
            outline: 2px solid var(--z-primary);
        }

        &:has(input:disabled) {
            cursor: not-allowed;
            opacity: 0.5;
        }

        &:hover {
            background: var(--z-accent);
            color: var(--z-accent-foreground);
        }

        & input[type="checkbox"] {
            position: absolute;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            top: 0;

            &:disabled {
                cursor: not-allowed;
                opacity: 0.5;
            }
        }
    }

    .z-radio {
        font-family: var(--z-font-sans);
        font-size: 14px;
        font-weight: 500;
        line-height: 1em;
        display: flex;
        align-items: center;
        justify-content: space-between;
        background: var(--z-secondary);
        border: 0px solid var(--z-border);
        border-radius: var(--z-radius-md);
        padding: 0px var(--z-spacing);
        min-height: 48px;
        height: auto;
        cursor: pointer;
        transition: background 0.2s, color 0.2s;

        &.z-label:has(input:checked) {
            background: var(--z-accent) !important;
            outline: 2px solid var(--z-primary);
        }

        &:has(input:disabled) {
            cursor: not-allowed;
            opacity: 0.5;
        }

        &:hover {
            background: var(--z-accent);
            color: var(--z-accent-foreground);
        }

        & input[type="radio"] {
            position: absolute;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            top: 0;

            &:disabled {
                cursor: not-allowed;
                opacity: 0.5;
            }
        }
    }

    & .z-textarea {
        font-family: var(--z-font-sans);
        font-weight: 400;
        font-size: 0.875rem;
        line-height: 1.2em;
        padding: 8.5px 12px;
        border: 1px solid var(--z-border);
        border-radius: 8px;
        background: #fff;
        color: var(--z-foreground);
        min-height: 80px;
        resize: vertical;

        &:focus {
            border-color: var(--z-primary);
            outline: none;
        }
    }

    & .z-select {
        font-family: var(--z-font-sans);
        font-weight: 400;
        font-size: 1rem;
        line-height: 1.2em;
        padding: 8.5px 16px;
        border: 1px solid var(--z-border);
        border-radius: 8px;
        background: #fff;
        color: var(--z-foreground);
        transition: border-color 0.2s;
        appearance: none;
        -webkit-appearance: none;
        -moz-appearance: none;
        cursor: pointer;
        min-height: 48px;
        height: auto;

        &:has(option:checked[value=""]) {
            color: rgba(75, 59, 42, 0.5);
            font-weight: 400;
        }

        &:focus {
            border-color: var(--z-primary);
            outline: none;
        }

        option {
            font-family: var(--z-font-sans);
            font-size: 1rem;
            color: var(--z-secondary-foreground);
            background: var(--z-card);
        }
    }
}


#z-root .z-tooltip {
    flex: 0 0 20px;
    height: 20px;
    width: 20px;
    position: relative;
    display: inline-block;
    cursor: pointer;

    &:hover .z-tooltip-content {
        opacity: 1;
        pointer-events: auto;
    }

    & .z-tooltip-content {
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: start;
        min-width: none;
        width: max-content !important;
        max-width: 360px;
        padding: 8px 12px;
        border: 1px solid var(--z-border);
        border-radius: 8px;
        background: #e2e8f0;
        color: var(--z-popover-foreground);
        font-family: var(--z-font-sans);
        box-shadow: var(--z-shadow-secondary);
        font-size: 0.875rem;
        line-height: 1.2em;
        opacity: 0;
        pointer-events: none;
        position: absolute;
        top: 24px;
        right: 0;
        z-index: 10;
        transition: opacity 350ms ease-in-out;
    }
}

#z-root .z-form .z-form-billing {
    & div#payment {
        font-family: var(--z-font-sans);
        border-radius: var(--z-radius-md) !important;
    }

    & div#payment {
        font-family: var(--z-font-sans);
        background: transparent !important;
        overflow: hidden;
        border: 1px solid var(--z-border)
    }

    & div#payment ul.wc_payment_methods.payment_methods.methods {
        background: var(--z-secondary) !important;
        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
    }

    & div#payment .form-row.place-order {
        background: var(--z-card) !important;
        margin: 0;
        border-radius: 0 !important;

        & #place_order {
            display: flex;
            align-items: center;
            justify-content: center;
            border: none;
            border-radius: var(--z-radius);
            height: 40px;
            padding: 0 var(--z-spacing-md);
            font-family: var(--z-font-sans);
            font-size: 0.875rem;
            font-weight: 500;
            line-height: 1.2em;
            cursor: pointer;
            box-shadow: var(--z-shadow-md);
            transition: all 350ms ease-in-out 0ms;
            background-color: var(--z-primary);
            color: var(--z-primary-foreground);

            &:hover {
                background-color: var(--z-accent);
                color: var(--z-accent-foreground);
            }
        }
    }
}

#z-root .z-partner-info-box {
    border-radius: var(--z-radius);
    border: 1px solid var(--z-primary);
    background: var(--z-primary-light);
    box-shadow: var(--z-shadow-card, 0 2px 8px rgba(0, 0, 0, 0.05));
    padding: var(--z-spacing-lg);
    margin-bottom: var(--z-spacing-md);

    .flex {
        display: flex;
        gap: var(--z-spacing);
        align-items: flex-start;
        justify-content: flex-start;

        .icon {
            height: 40px;
            width: 40px;
            border-radius: 50%;
            background: var(--z-primary);
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;

            svg {
                height: 20px;
                width: 20px;
                color: var(--z-primary-foreground, #fff);
            }
        }

        .info {
            display: flex;
            flex-direction: column;
            gap: var(--z-spacing-xs);

            h3 {
                font-family: var(--z-font-sans);
                font-weight: 600;
                color: var(--z-foreground);
                font-size: var(--z-text-md);
                margin: 0;
            }

            p {
                font-size: var(--z-text);
                color: var(--z-secondary-foreground);
                margin: 0;
            }
        }
    }
}

.z-step-slide-in-right {
    animation: z-step-slide-in-right 0.4s;
}

.z-step-slide-in-left {
    animation: z-step-slide-in-left 0.4s;
}

.z-step-slide-out-left {
    animation: z-step-slide-out-left 0.4s;
}

.z-step-slide-out-right {
    animation: z-step-slide-out-right 0.4s;
}

@keyframes z-step-slide-in-right {
    from {
        opacity: 0;
        transform: translateX(60px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes z-step-slide-in-left {
    from {
        opacity: 0;
        transform: translateX(-60px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes z-step-slide-out-left {
    from {
        opacity: 1;
        transform: translateX(0);
    }

    to {
        opacity: 0;
        transform: translateX(-60px);
    }
}

@keyframes z-step-slide-out-right {
    from {
        opacity: 1;
        transform: translateX(0);
    }

    to {
        opacity: 0;
        transform: translateX(60px);
    }
}

/* ORDER REVIEW CSS */

#z-root .z-or-container {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: start;
    width: 100%;
    gap: var(--z-spacing-xs);
    position: relative;
}

#z-root .z-grid {
    display: grid;
    grid-template-columns: 1fr max-content;
    gap: var(--z-spacing-xs);
    width: 100%;
    padding: 2.5px 0;
    justify-items: stretch;
    align-items: start;

    & .z-grid-item {
        display: flex;
    }
}

#z-root .z-or-divider {
    width: 100%;
    height: 1px;
    background-color: var(--z-border);
}

/* scope */

#z-root .z-or-products {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: start;
    gap: var(--z-spacing-xs);

    & .z-or-product-info {
        display: flex;
        justify-content: start;
        align-items: center;
        font-size: var(--z-text);
        font-family: var(--z-font-sans);
        font-weight: 600;
        color: var(--z-foreground) !important;
    }

    & .z-or-product-total {
        display: flex;
        justify-content: end;
        align-items: center;
        font-size: var(--z-text);
        font-family: var(--z-font-sans);
        font-weight: 500;
        color: var(--z-foreground) !important;
    }
}

#z-root .z-or-fees {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: start;
    gap: var(--z-spacing-xxs);

    & .z-or-fee-info {
        display: flex;
        justify-content: start;
        align-items: flex-start;
        flex-direction: column;
        gap: var(--z-spacing-xxs);

        & .z-or-fee-name {
            margin: 0 !important;
            font-size: var(--z-text);
            font-family: var(--z-font-sans);
            font-weight: 500;
            color: var(--z-foreground) !important;
        }

        & .z-or-fee-quote {
            font-size: var(--z-text-xs);
            font-family: var(--z-font-sans);
            font-weight: 300;
            color: var(--z-muted) !important;
            margin: 0px !important;
        }
    }

    & .z-or-fee-total {
        display: flex;
        justify-content: end;
        align-items: center;
        font-size: var(--z-text);
        font-family: var(--z-font-sans);
        font-weight: 500;
        color: var(--z-foreground) !important;
    }
}

#z-root .z-or-sv {
    gap: 8px
}

#z-root .z-or-subtotal {
    width: 100%;

    & .z-or-subtotal-info {
        font-size: var(--z-text);
        font-family: var(--z-font-sans);
        font-weight: 300;
        color: var(--z-muted) !important;
        margin: 0px !important;
    }

    & .z-or-subtotal-total {
        display: flex;
        justify-content: end;
        align-items: center;
        font-size: var(--z-text);
        font-family: var(--z-font-sans);
        font-weight: 600;
        color: var(--z-foreground) !important;
    }
}

#z-root .z-or-taxes {
    width: 100%;

    & .z-or-tax {
        display: grid;
        grid-template-columns: 1fr max-content;
        gap: var(--z-spacing);
        width: 100%;
        justify-items: stretch;
        align-items: start;

        & .z-or-tax-label {
            display: flex;
            justify-content: start;
            align-items: center;
            font-size: var(--z-text);
            font-family: var(--z-font-sans);
            font-weight: 300;
            color: var(--z-muted) !important;
            margin: 0px !important;
        }

        & .z-or-tax-amount {
            display: flex;
            justify-content: end;
            align-items: center;
            font-size: var(--z-text);
            font-family: var(--z-font-sans);
            font-weight: 600;
            color: var(--z-foreground) !important;
        }
    }
}

#z-root .z-or-total-order {
    width: 100%;
    font-weight: bold;
    padding: 12px 0px;

    & .z-or-total-label {
        display: flex;
        justify-content: start;
        align-items: flex-start;
        flex-direction: column;
        gap: var(--z-spacing-xxs);

        & span.z-or-total-label-text {
            font-size: var(--z-text-lg);
            font-family: var(--z-font-sans);
            font-weight: 600;
            color: var(--z-foreground) !important;
        }

        & .z-or-total-vat-info {
            font-size: var(--z-text-xs);
            font-family: var(--z-font-sans);
            font-weight: 400;
            color: var(--z-muted) !important;
        }
    }

    & .z-or-total-amount {
        display: flex;
        justify-content: end;
        align-items: center;
        font-size: var(--z-text-xl);
        font-family: var(--z-font-sans);
        font-weight: 600;
        color: var(--z-primary) !important;
    }
}

#z-root .z-or-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: var(--z-spacing-md);

    & .z-or-heading {
        font-family: var(--z-font-sans);
        font-size: var(--z-text-lg);
        font-weight: 700;
        color: var(--z-foreground);
        margin: 0 !important;
    }
}

#z-root .z-or-partner-badge {
    background-color: var(--z-accent);
    border: 1px solid var(--z-primary);
    border-radius: var(--z-radius-lg);
    padding: var(--z-spacing-xxs) var(--z-spacing) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    width: max-content;
    margin: 0 !important;

    & .z-or-partner-badge-title {
        font-family: var(--z-font-sans) !important;
        font-size: var(--z-text) !important;
        font-weight: 500 !important;
        color: var(--z-primary) !important;
        margin: 0 !important;
    }
}

/*  */

#z-root #order_review_heading {
    display: none !important;
}


/*  */

.form-video-popup-col {
    width: 50%;
}

.form-video-popup-col img {
    width: 100%;
}

.z-form-group.form-video-popup {
    gap: 20px !important;
}

.form-video-popup-image1,
.form-video-popup-image2 {
    cursor: pointer;
}

.form-video-popup-col a.zfvp_btn {
    color: #000;
    text-decoration: underline;
    font-size: 14px;
}

.form-video-popup-col a.zfvp_btn:hover {
    color: #00adb5;
}

.z-or-info-ssl {
    padding: var(--z-spacing);
    background-color: var(--z-secondary);
    border-radius: var(--z-radius);

    & p {
        font-size: var(--z-text-xs);
        color: var(--z-muted-foreground);
        text-align: center;
        margin: 0;
    }
}