:root {
    /* Colors */
    --color-primary: #253580;
    --color-tag: #374151;
    --color-tag-bg: #ffffffcc;
    --color-tag-border: #f3f4f699;
    --color-white: #ffffff;
    --color-gray-light: #f8f9fa;
    --color-gray-border: rgba(211, 211, 211, 0.5);
    --color-advantage-title: #243580;
    --color-advantage-text: #6B7280;
    --color-card-title: #4a5565;
    --color-black: #000000;
    /* Audience specific colors */
    --color-audience-bg-start: rgba(255, 255, 255, 0.9);
    --color-audience-bg-end: rgba(255, 255, 255, 0.9);
    --color-audience-item-bg: #ffffffe6;
    --color-audience-item-border: #e5e7eb99;
    --color-audience-after-border: #fd768a33;
    --color-audience-after-start: #fd768a1a;
    --color-audience-after-end: #2535801a;
    /* Cost specific colors */
    --color-cost-bg-start: rgba(255, 255, 255, 0.9);
    --color-cost-bg-middle: #fcfdfe;
    --color-cost-bg-end: rgba(255, 255, 255, 0.9);
    --color-cost-main-bg: #ffffff;
    --color-cost-value: #243580;
    --color-cost-border-light: #fd768a1a;
    --color-cost-border-medium: rgba(199, 120, 79, 0.2);
    --color-cost-progress-bg: #f6f3f4;
    /* Fonts */
    --font-primary: "Comfortaa", cursive, sans-serif;
    --font-size-title: 48px;
    --font-size-title-tablet: 40px;
    --font-size-title-mobile: 36px;
    --font-size-cost-schedule-value: 24px;
    --font-size-cost-schedule-value-desktop: 30px;
    --font-size-cost-additional-price: 24px;
    --font-size-cost-additional-price-desktop: 30px;
    --font-size-cost-main-title: 16px;
    --font-size-cost-subtitle: 20px;
    --font-size-cost-payment-title: 24px;
    --font-size-cost-form-title: 24px;
    --line-height-title: 1.2;
    --font-size-tag: 16px;
    --font-size-content: 18px;
    --font-size-advantage: 16px;
    --font-size-card-mobile: 12px;
    /* Spacing & Border Radius */
    --border-radius-main: 10px;
    --border-radius-special: 14px;
    --border-radius-audience: 15px;
    --border-radius-cost-main: 25px;
    --border-radius-cost-inner: 22px;
    --border-radius-cost-item: 15px;
    --border-radius-cost-step: 50%;
    --padding-special: 15px;
    --padding-tag: 6px 8px;
    --padding-card: 10px 10px 25px 10px;
    --padding-image: 15px 15px 41px 15px;
    --padding-advantages: 20px;
    --padding-audience-item: 20px;
    --padding-audience-after: 25px;
    --padding-cost-main: 4px;
    --padding-cost-container: 25px;
    --padding-cost-container-desktop: 40px;
    --padding-cost-body: 15px;
    --padding-cost-item: 15px;
    --padding-cost-item-desktop: 25px;
    --padding-cost-form: 30px;
    --gap-column: 35px;
    --gap-tag: 10px;
    --gap-advantages: 15px;
    --gap-audience: 15px;
    --gap-cost-header: 20px;
    --gap-cost-column: 15px;
    --gap-cost-body: 10px;
    --gap-cost-schedule: 25px;
    --gap-cost-schedule-desktop: 35px;
    --gap-cost-include: 20px;
    /* Box Shadows */
    --shadow-main: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
    --shadow-main-hover: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
    --shadow-tag: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
    --shadow-tag-hover: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.1) 0px 4px 6px -4px;
    --shadow-audience-hover: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.1) 0px 2px 4px -2px;
    /* Transitions */
    --transition-normal: 0.3s ease;
    --transition-ease-in-out: 0.3s ease-in-out;

    /* Layout */
    --image-ratio: 1;
    --card-width: 140px;
    --cost-icon-size: 16px;
    --cost-icon-size-large: 20px;
    --cost-step-size: 40px;
    --cost-step-size-desktop: 48px;
    --cost-form-icon-size: 56px;
    --cost-form-img-size: 28px;
}
.single-program__bg::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    width: 100vw;
    height: 100%;
    background: linear-gradient(180deg,
                rgba(255, 255, 255, 0.9) 0%,
                oklab(0.97 -0.00371685 -0.0134976 / 0.2) 25%,
                oklab(0.97 -0.00371685 -0.0134976 / 0.2) 75%,
                rgba(255, 255, 255, 0.9) 100%);
    z-index: -1;
}

.program-single h2 {
    font-family: var(--font-primary);
    padding: 30px 0 15px;
    font-size: var(--font-size-title-mobile);
    font-weight: 700;
    text-align: center;
}

.program-header {
    display: grid;
    gap: 10px;
    margin-bottom: 80px;
}

.program-header__title {
    font-family: var(--font-primary);
    color: var(--color-primary);
    font-size: var(--font-size-title-tablet);
    line-height: 1.2;
    word-wrap: break-word;
    word-break: break-all;
    padding: 15px 0 0;
}

.program-header__image {
    position: relative;
    margin: 15px 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    padding: var(--padding-image);
    background-color: var(--color-white);
    box-shadow: #fff0 0 0 0 0, #fff0 0 0 0 0, #fff0 0 0 0 0, #fff0 0 0 0 0, rgb(0 0 0 / .1) 0 10px 15px -3px, rgb(0 0 0 / .1) 0 4px 6px -4px;
    transition: all var(--transition-normal);
    -webkit-transition: all var(--transition-normal);
    cursor: pointer;
    aspect-ratio: 140 / 140;
    will-change: transform;
    transform: rotate(-3deg);
    -webkit-transform: rotate(-3deg);
}

.program-header__image:hover {
    box-shadow: var(--shadow-main-hover);
    transform: scale3d(1.05, 1.05, 1.05);
}

.program-header__img {
    width: 100%;
    height: auto;
    aspect-ratio: 140 / 140;
    object-fit: cover;
    border-radius: var(--border-radius-main);
}

.program-header__image-title {
    margin-top: 15px;
}

.program-header__cards {
    margin: 0 0 15px;
    overflow: hidden;
    display: grid;
    display: -ms-grid;
    grid-template-columns: 1fr 1fr;
    gap: 5px;
    padding: 35px 25px;
}

.program-header__card {
    position: relative;
    width: var(--card-width);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    padding: var(--padding-card);
    background-color: var(--color-white);
    box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.1) 0px 4px 6px -4px;
    transition: all var(--transition-normal);
    -webkit-transition: all var(--transition-normal);
    cursor: pointer;
    aspect-ratio: 140 / 140;
    will-change: transform;
}

.program-header__card:hover {
    z-index: 99 !important;
    scale: 1.05;
    box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.1) 0px 8px 10px -6px;
}

.program-header__card img {
    width: 100%;
    height: auto;
    aspect-ratio: 140 / 140;
    object-fit: cover;
    border-radius: var(--border-radius-main);
}

.program-header__card-title {
    font-family: var(--font-primary);
    color: var(--color-card-title);
    word-wrap: break-word;
    font-size: var(--font-size-card-mobile);
    position: relative;
    z-index: 1;
}

.program-header__card.is-hidden-mobile {
    display: none !important;
}

.program-header__column--content {
    color: var(--color-tag);
    font-size: var(--font-size-content);
}

.program-header__tags {
    display: none;
    align-items: center;
    gap: var(--gap-advantages);
}

.program-header__tag {
    display: flex;
    align-items: center;
    gap: 10px;
    background-color: var(--color-tag-bg);
    border: 1px solid var(--color-tag-border);
    border-radius: var(--border-radius-main);
    padding: var(--padding-tag);
    box-shadow: var(--shadow-tag);
    transition: box-shadow var(--transition-normal);
}

@supports (backdrop-filter: blur(8px)) or (-webkit-backdrop-filter: blur(8px)) {
    .program-header__tag {
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        background-color: var(--color-tag-bg);
    }
}

.program-header__tag:hover {
    box-shadow: var(--shadow-tag-hover);
}

.program-header__tag-image {
    width: 18px;
    height: 18px;
}

.program-header_tag-title {
    font-size: var(--font-size-tag);
    font-weight: 400;
    line-height: 1;
    color: var(--color-tag);
}

.program-header__column--advantages {
    padding: var(--padding-advantages);
    border: 1px solid #fd768a1a;
    border-radius: var(--border-radius-special);
    background-color: #ffffff99;
    background-color: var(--color-gray-light);
    box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 5px 10px -4px, rgba(0, 0, 0, 0.1) 0px 2px 3px -2px;
}

@supports (backdrop-filter: blur(8px)) or (-webkit-backdrop-filter: blur(8px)) {
    .program-header__column--advantages {
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
    }
}

@supports (background-color: oklab(0.92 0 0)) {
    .program-header__column--advantages {
        background-color: oklab(0.999994 0.0000455677 0.0000200868 / 0.6);
        border-color: oklab(0.729884 0.16093 0.0369245 / 0.1);
    }
}

.program-header__advantages-list {
    position: relative;
    margin: 0 !important;
    display: flex;
    display: -ms-flexbox;
    flex-direction: column;
    gap: var(--gap-advantages);
}

.program-header__advantages-item {
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    align-items: start;
    gap: 0 10px;
    color: var(--color-tag);
    font-size: var(--font-size-advantage);
}

.program-header__advantages-item::before {
    content: "";
    position: relative;
    grid-column: 1;
    grid-row: 1 / span 2;
    min-width: 24px;
    width: 24px;
    height: 24px;
    background-image: url(/wp-content/themes/vittoriavita/images/programs/program-header-advantages-check.svg);
    background-repeat: no-repeat;
    background-position: center;
}

.program-header__advantages-title {
    color: var(--color-advantage-title);
    font-weight: 700;
}



.program-header__column--button {
    margin-top: 20px;
}

.program-header__button.header__buttons--blue {
    padding: 12px 24px;
}

.show-mob {
    display: flex;
    flex-direction: column;
    gap: var(--gap-advantages);
    margin-bottom: 15px;
}

.show-pc {
    display: none;
}

.program-step__blue,
.program-step__pink {
    border-radius: var(--border-radius-main);
    padding: 10px;
}

.program-step__blue {
    background-color: #eff6ff80;
}

.program-step__pink {
    background-color: #fdf2f880;
}

@supports (background-color: oklab(0.92 0 0)) {
    .program-step__blue {
        background-color: oklab(0.97 -0.00371685 -0.0134976 / 0.5);
    }

    .program-step__pink {
        background-color: oklab(0.971 0.0134023 -0.00404691 / 0.5);
    }
}

.program-step__blue p,
.program-step__pink p {
    margin: 0;
}

@media screen and (min-width: 768px) {
    .program-header__image {
        width: 50%;
        margin: 15px auto;
    }

    .show-mob {
        display: none;
    }

    .show-pc {
        display: block;
    }
}

@media screen and (min-width: 992px) {
    .single-program__bg::before {
    width: calc(100vw - 17px);
}
    .program-single .steps-items {
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }

    .program-header {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: minmax(min-content, 80px) auto;
        align-items: start;
        gap: 0 var(--gap-column);
    }

    .program-header__column--image {
        grid-row: 1 / 5;
        grid-column: 2 / 3;
        align-self: baseline;
    }

    .program-header__column--content {
        grid-column: 1 / 2;
                margin-top: 15px;
    }

    .program-header__title {
        font-size: var(--font-size-title);
        line-height: var(--line-height-title);
        grid-column: 1 / 2;
    }

    .program-header__column--advantages,
    .program-header__column--button {
        grid-column: 1 / 2;
    }

    .program-header__card.is-hidden-mobile {
        display: flex !important;
    }

    .program-header__cards {
        grid-template-columns: 1fr 1fr 1fr;
    }

    .program-header__image {
        margin-bottom: 40px;
    }

    .program-header__tags {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
    }
}

@media screen and (min-width: 1200px) {
    .program-header {
        gap: 0 50px;
    }
}

.program-audience {
    position: relative;
    padding: 30px 0;
}
.program-audience__description {
    color: var(--color-tag);
    text-align: center;
}

.program-audience__list {
    margin: 30px 0;
    display: grid;
    gap: var(--gap-audience);
}

.program-audience__item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: var(--padding-audience-item);
    border: 1px solid var(--color-audience-item-border);
    border-radius: var(--border-radius-audience);
    background-color: var(--color-audience-item-bg);
    -webkit-transition: all var(--transition-normal);
    transition: all var(--transition-normal);
    cursor: pointer;
}

@supports (backdrop-filter: blur(8px)) or (-webkit-backdrop-filter: blur(8px)) {
    .program-audience__item {
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        background-color: var(--color-audience-item-bg);
    }
}

@supports (background-color: oklab(0.92 0 0)) {
    .program-audience__item {
        background-color: oklab(0.999994 0.0000455678 0.0000200868 / 0.9);
        border-color: oklab(0.928 -0.000571842 -0.00597269 / 0.6);
    }
}

.program-audience__item:hover {
    background-color: oklab(0.999994 0.0000455678 0.0000200868 / 0.9);
    border-color: oklab(0.729884 0.16093 0.0369245 / 0.3);
    box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.1) 0px 2px 4px -2px;
}

.program-audience__item:hover {
    background-color: #ffffffe6;
    border-color: #fd768a4d;
    box-shadow: var(--shadow-audience-hover);
}

@supports (background-color: oklab(0.92 0 0)) {
    .program-audience__item:hover {
        background-color: oklab(0.999994 0.0000455678 0.0000200868 / 0.9);
        border-color: oklab(0.729884 0.16093 0.0369245 / 0.3);
    }
}

.program-audience__after-block {
    border: 1px solid var(--color-audience-after-border);
    border-radius: var(--border-radius-audience);
    padding: var(--padding-audience-after);
    background-image: linear-gradient(to right bottom,
            var(--color-audience-after-start) 0%,
            var(--color-audience-after-end) 100%);
    background-image: -webkit-linear-gradient(top left,
            var(--color-audience-after-start) 0%,
            var(--color-audience-after-end) 100%);
    background-image: -moz-linear-gradient(top left,
            var(--color-audience-after-start) 0%,
            var(--color-audience-after-end) 100%);
    background-image: -o-linear-gradient(top left,
            var(--color-audience-after-start) 0%,
            var(--color-audience-after-end) 100%);
}

@supports (border-color: oklab(0.729884 0.16093 0.0369245 / 0.2)) {
    .program-audience__after-block {
        border-color: oklab(0.729884 0.16093 0.0369245 / 0.2);
        background-image: linear-gradient(to right bottom,
                oklab(0.729884 0.16093 0.0369245 / 0.1) 0%,
                oklab(0.36342 -0.000455797 -0.127774 / 0.1) 100%);
    }
}

.program-audience__after-text {
    color: var(--color-tag);
}

@media screen and (min-width: 768px) {
    .program-audience__list {
        grid-template-columns: 1fr 1fr;
    }
}

@media screen and (min-width: 992px) {
    .program-audience__list {
        grid-template-columns: 1fr 1fr 1fr;
    }
}

.program-cost {
    position: relative;
    padding: 30px 0;
}
.program-cost__description {
    color: var(--color-tag);
    text-align: center;
}


.program-cost__main-block {
    padding: var(--padding-cost-main);
    border-radius: var(--border-radius-cost-main);
    box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.25) 0px 25px 50px -11px;
    margin: 25px 0;
    background-image: linear-gradient(to right bottom, #fd768a33 0%, #25358033 50%, #fefafb33 100%);

}

@supports (backdrop-filter: blur(24px)) or (-webkit-backdrop-filter: blur(24px)) {
    .program-cost__main-block {
        backdrop-filter: blur(24px);
        -webkit-backdrop-filter: blur(24px);
        background-image: linear-gradient(to right bottom, #fd768a33 0%, #25358033 50%, #fefafb33 100%);
    }
}

/* Fallback for oklab in main-block */
@supports (background: linear-gradient(to right bottom, oklab(0.729884 0.16093 0.0369245 / 0.2) 0%, oklab(0.36342 -0.000455797 -0.127774 / 0.2) 50%)) {
    .program-cost__main-block {
        background-image: linear-gradient(to right bottom,
                oklab(0.729884 0.16093 0.0369245 / 0.2) 0%,
                oklab(0.36342 -0.000455797 -0.127774 / 0.2) 50%,
                oklab(0.988407 0.00450304 0.000020504 / 0.2) 100%);
    }
}

.program-cost__main-container {
    padding: var(--padding-cost-container);
    background-color: var(--color-cost-main-bg);
    border-radius: var(--border-radius-cost-inner);
}

.program-cost__separator-line {
    border-image: linear-gradient(to right,
            var(--color-white) 0%,
            #fce3e8 50%,
            var(--color-white) 100%) 1;
    margin: 50px;
}

.program-cost__main-header {
    display: grid;
    gap: var(--gap-cost-header);
}

.program-cost__main-column {
    display: flex;
    flex-direction: column;
    gap: var(--gap-cost-column);
}

.program-cost__column-header {
    display: flex;
    align-items: center;
    gap: 5px;
    background-image: linear-gradient(to right, #fd768a0d 0%, #fd768a1a 100%);
    width: fit-content;
    padding: 5px 15px;
    border-radius: var(--border-radius-cost-item);
}

/* Fallback for oklab in column-header */
@supports (background-image: linear-gradient(to right, oklab(0.729884 0.16093 0.0369245 / 0.05) 0%, oklab(0.729884 0.16093 0.0369245 / 0.1) 100%)) {
    .program-cost__column-header {
        background-image: linear-gradient(to right,
                oklab(0.729884 0.16093 0.0369245 / 0.05) 0%,
                oklab(0.729884 0.16093 0.0369245 / 0.1) 100%);
    }
}

.program-cost__main-icon {
    width: var(--cost-icon-size);
    height: var(--cost-icon-size);
}

.program-cost__main-title {
    margin: 0;
    font-size: var(--font-size-cost-main-title);
}

.program-cost__main-value {
    font-size: var(--font-size-title);
    color: var(--color-cost-value);
    font-family: var(--font-primary);
    font-weight: 700;
    line-height: 1;
}

.program-cost__main-column.program-cost__main-numbers {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    background-image: linear-gradient(to right, #fd768a0d 0%, #fd768a1a 100%);
    width: fit-content;
    height: fit-content;
    padding: var(--padding-cost-body);
    border: 1px solid var(--color-cost-border-light);
    border-radius: var(--border-radius-cost-item);
}

/* Fallback for oklab in main-numbers */
@supports (background-image: linear-gradient(to right, oklab(0.729884 0.16093 0.0369245 / 0.05) 0%, oklab(0.729884 0.16093 0.0369245 / 0.1) 100%)) {
    .program-cost__main-column.program-cost__main-numbers {
        background-image: linear-gradient(to right,
                oklab(0.729884 0.16093 0.0369245 / 0.05) 0%,
                oklab(0.729884 0.16093 0.0369245 / 0.1) 100%);
        border-color: oklab(0.729884 0.16093 0.0369245 / 0.1);
    }
}

.program-cost__main-numbers-icon {
    width: var(--cost-icon-size);
    height: var(--cost-icon-size);
}

.program-cost__main-numbers-content {
    display: flex;
    flex-direction: column;
    color: #374151;
}

.program-cost__main-body {
    background-image: linear-gradient(to right bottom, #fd768a0d 0%, #ffffff80 50%, #fefafb0d 100%);
    border: 1px solid var(--color-cost-border-light);
    border-radius: var(--border-radius-cost-item);
    padding: var(--padding-cost-body);
    display: flex;
    gap: var(--gap-cost-body);
}

/* Fallback for oklab in main-body */
@supports (background-image: linear-gradient(to right bottom, oklab(0.729884 0.16093 0.0369245 / 0.05) 0%, oklab(0.999994 0.0000455678 0.0000200868 / 0.5) 50%)) {
    .program-cost__main-body {
        background-image: linear-gradient(to right bottom,
                oklab(0.729884 0.16093 0.0369245 / 0.05) 0%,
                oklab(0.999994 0.0000455678 0.0000200868 / 0.5) 50%,
                oklab(0.988407 0.00450304 0.000020504 / 0.05) 100%);
        border-color: oklab(0.729884 0.16093 0.0369245 / 0.1);
    }
}

.program-cost__body-image {
    background-image: linear-gradient(to right bottom, #fd768a33 0%, #fd768a1a 100%);
    border-radius: var(--border-radius-main);
    min-width: var(--cost-step-size);
    width: var(--cost-step-size);
    height: var(--cost-step-size);
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Fallback for oklab in body-image */
@supports (background-image: linear-gradient(to right bottom, oklab(0.729884 0.16093 0.0369245 / 0.2) 0%, oklab(0.729884 0.16093 0.0369245 / 0.1) 100%)) {
    .program-cost__body-image {
        background-image: linear-gradient(to right bottom,
                oklab(0.729884 0.16093 0.0369245 / 0.2) 0%,
                oklab(0.729884 0.16093 0.0369245 / 0.1) 100%);
    }
}

.program-cost__body-icon {
    min-width: var(--cost-icon-size-large);
    width: var(--cost-icon-size-large);
    height: var(--cost-icon-size-large);
}

span.program-cost__main-subtitle {
    display: block;
    font-size: var(--font-size-cost-subtitle);
    color: var(--color-primary);
    margin-bottom: 5px;
}
.program-cost__main-description {
    color: #374151;
}
.program-cost__payment-title {
    font-family: var(--font-primary);
    text-align: center;
    font-size: var(--font-size-cost-payment-title);
    margin: 20px 0 30px;
}

.program-cost__schedule-items {
    display: grid;
    gap: var(--gap-cost-schedule);
    margin-bottom: 30px;
}

.program-cost__schedule-item {
    display: flex;
    flex-direction: column;
    gap: 10px;
    backdrop-filter: blur(8px);
    background-color: oklab(0.999994 0.0000455678 0.0000200868 / 0.95);
    box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.1) 0px 1px 2px -1px;
    border: 1px solid;
    border-color: oklab(0.999994 0.0000455677 0.0000200868 / 0.6);
    border-radius: 15px;
    padding: 15px;
}

.program-cost__schedule-item {
    display: flex;
    flex-direction: column;
    gap: var(--gap-cost-body);
    background-color: #fffffff2;
    box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.1) 0px 1px 2px -1px;
    border: 1px solid #ffffff99;
    border-radius: var(--border-radius-cost-item);
    padding: var(--padding-cost-item);
    transition: all var(--transition-normal);
    cursor: pointer;
}

@supports (backdrop-filter: blur(8px)) or (-webkit-backdrop-filter: blur(8px)) {
    .program-cost__schedule-item {
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        background-color: #fffffff2;
    }
}

/* Fallback for oklab in schedule-item */
@supports (background-color: oklab(0.92 0 0)) {
    .program-cost__schedule-item {
        background-color: oklab(0.999994 0.0000455678 0.0000200868 / 0.95);
        border-color: oklab(0.999994 0.0000455677 0.0000200868 / 0.6);
    }
}
.program-cost__schedule-item:hover{
    box-shadow:rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.1) 0px 4px 6px -4px;

}
.program-cost__schedule-container {
    display: flex;
    gap: var(--gap-cost-body);
}

.program-cost__step-number {
    color: var(--color-white);
    min-width: var(--cost-step-size);
    width: var(--cost-step-size);
    height: var(--cost-step-size);
    border-radius: var(--border-radius-cost-step);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--font-size-cost-main-title);
    font-weight: 700;
}

.program-cost__schedule-content {
    display: flex;
    flex-direction: column;
    gap: var(--gap-cost-body);
}

.program-cost__schedule-header {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.program-cost__schedule-title {
    color: var(--color-black);
}

.program-cost__schedule-text {
    color: var(--color-advantage-text);
}

.program-cost__schedule-value {
    font-size: var(--font-size-cost-schedule-value);
    font-weight: 700;
}

.program-cost__schedule-progress-bar {
    height: 4px;
    width: 100%;
    border-radius: 2px;
    background: var(--color-cost-progress-bg);
    display: flex;
    overflow: hidden;
}

/* Fallback for oklch */
@supports (background: oklch(.967 .003 264.542)) {
    .program-cost__schedule-progress-bar {
        background: oklch(.967 .003 264.542);
    }
}

.progress-segment {
    height: 100%;
    display: block;
    transition: width var(--transition-normal);
}

.progress-segment:first-child {
    border-radius: 2px 0 0 2px;
}

.progress-segment:last-child {
    border-radius: 0 2px 2px 0;
}

.program-cost__main_additional {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-image: linear-gradient(to right, #2535800d 0%, #fd768a0d 100%);
    border: 1px solid #e5e7eb80;
    border-radius: var(--border-radius-cost-item);
    padding: var(--padding-cost-body);
    color: var(--color-primary);
    font-size: var(--font-size-tag);
    font-weight: 700;
    margin-bottom: 30px;
}

@supports (background-image: linear-gradient(to right, oklab(0.36342 -0.000455797 -0.127774 / 0.05) 0%, oklab(0.729884 0.16093 0.0369245 / 0.05) 100%)) {
    .program-cost__main_additional {
        background-image: linear-gradient(to right,
                oklab(0.36342 -0.000455797 -0.127774 / 0.05) 0%,
                oklab(0.729884 0.16093 0.0369245 / 0.05) 100%);
        border-color: oklab(0.928 -0.000571842 -0.00597269 / 0.5);
    }
}

.program-cost__main_additional-price {
    font-size: var(--font-size-cost-additional-price);
}

.program-cost__additional-payments {
    background-image: linear-gradient(to right, #2535800d 0%, #fd768a0d 100%);
    border: 1px solid #e5e7eb80;
    border-radius: var(--border-radius-cost-item);
    padding: var(--padding-cost-body);
}

/* Fallback for oklab in additional-payments */
@supports (background-image: linear-gradient(to right, oklab(0.36342 -0.000455797 -0.127774 / 0.05) 0%, oklab(0.729884 0.16093 0.0369245 / 0.05) 100%)) {
    .program-cost__additional-payments {
        background-image: linear-gradient(to right,
                oklab(0.36342 -0.000455797 -0.127774 / 0.05) 0%,
                oklab(0.729884 0.16093 0.0369245 / 0.05) 100%);
        border-color: oklab(0.928 -0.000571842 -0.00597269 / 0.5);
    }
}

.program-cost__additional-title {
    display: block;
    color: var(--color-primary);
    font-size: var(--font-size-tag);
    font-weight: 700;
}

.program-cost__additional-payment {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid var(--color-white);
    padding: 12px 0;
}

.program-cost__additional-price {
    font-weight: 700;
    color: var(--color-cost-value);
    white-space: nowrap;
}

.program-cost__additional-payment:last-child {
    border-bottom: none;
}

.program_include__title {
    font-family: var(--font-primary);
    text-align: center;
    font-size: var(--font-size-cost-payment-title);
    margin: 20px 0 30px;
}

.program_include__items {
    display: flex;
    flex-direction: column;
    gap: var(--gap-cost-include);
}

.program_include__item {
    background-color: #ffffffe6;
    box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.1) 0px 1px 2px -1px;
    border: 1px solid #0000001a;
    border-left: 4px solid #25358066;
    border-radius: var(--border-radius-cost-item);
    padding: var(--padding-audience-after);
    -webkit-transition: all var(--transition-normal);
    transition: all var(--transition-normal);
}

@supports (backdrop-filter: blur(8px)) or (-webkit-backdrop-filter: blur(8px)) {
    .program_include__item {
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        background-color: #ffffffe6;
    }
}

/* Fallback for oklab in include-item */
@supports (background-color: oklab(0.92 0 0)) {
    .program_include__item {
        background-color: oklab(0.999994 0.0000455678 0.0000200868 / 0.9);
        border-color: rgba(0, 0, 0, 0.1);
        border-left-color: oklab(0.363448 -0.00046885 -0.1278 / 0.4);
    }
}

.program_include__item:hover {
    box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 4px 6px -1px, rgba(0, 0, 0, 0.1) 0px 2px 4px -2px;
    border-left-color: #253580b3;
}

@supports (border-left-color: oklab(0.363448 -0.00046885 -0.1278 / 0.7)) {
    .program_include__item:hover {
        border-left-color: oklab(0.363448 -0.00046885 -0.1278 / 0.7);
    }
}

.program_include__header {
    display: flex;
    align-items: center;
    gap: var(--gap-cost-body);
    margin-bottom: 15px;
}

.program_include__icon {
    width: var(--cost-icon-size-large);
    height: var(--cost-icon-size-large);
}

.program_include__subtitle {
    font-size: var(--font-size-cost-subtitle);
    color: var(--color-cost-value);
}

.program_include__list {
    background-image: linear-gradient(to right, #fd768a0d 0%, #2535800d 100%);
    padding: var(--padding-cost-body);
    border-radius: var(--border-radius-main);
    margin-bottom: 15px;
}

@supports (background-image: linear-gradient(to right, oklab(0.729884 0.16093 0.0369245 / 0.05) 0%, oklab(0.36342 -0.000455797 -0.127774 / 0.05) 100%)) {
    .program_include__list {
        background-image: linear-gradient(to right,
                oklab(0.729884 0.16093 0.0369245 / 0.05) 0%,
                oklab(0.36342 -0.000455797 -0.127774 / 0.05) 100%);
    }
}

.program_include__list ul {
    position: relative;
    margin: 0 !important;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--gap-advantages);
    list-style: none;
}

.program_include__list ul li {
    margin: 0;
    padding: 0;
    display: flex;
    gap: var(--gap-cost-body);
    align-items: center;
    color: var(--color-tag);
    font-size: var(--font-size-advantage);
    position: relative;
}

.program_include__list ul li:before {
    content: "";
    position: relative;
    left: 0;
    top: 0;
    min-width: var(--cost-icon-size-large);
    width: var(--cost-icon-size-large);
    height: var(--cost-icon-size-large);
    background-image: url(/wp-content/themes/vittoriavita/images/program-include-check.svg);
    background-repeat: no-repeat;
}

.program-cost__form {
    background-image: linear-gradient(to right bottom, #fd768a0d 0%, #ffffffe6 50%, #2535800d 100%);
    box-shadow: rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.1) 0px 4px 6px -4px;
    border: 1px solid #fd768a1a;
    border-radius: var(--border-radius-cost-item);
    padding: var(--padding-cost-form);
    margin: 30px auto 0;
    max-width: 896px;
}

/* Fallback for oklab in form */
@supports (background-image: linear-gradient(to right bottom, oklab(0.729884 0.16093 0.0369245 / 0.05) 0%, oklab(0.999994 0.0000455678 0.0000200868 / 0.9) 50%)) {
    .program-cost__form {
        background-image: linear-gradient(to right bottom,
                oklab(0.729884 0.16093 0.0369245 / 0.05) 0%,
                oklab(0.999994 0.0000455678 0.0000200868 / 0.9) 50%,
                oklab(0.36342 -0.000455797 -0.127774 / 0.05) 100%);
        border-color: oklab(0.729884 0.16093 0.0369245 / 0.1);
    }
}

.program-cost__form-body {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--gap-advantages);
}

.program-cost__form-icon {
    background-image: linear-gradient(to right bottom, #fd768a1a 0%, #fd768a0d 100%);
    border-radius: var(--border-radius-cost-step);
    width: var(--cost-form-icon-size);
    height: var(--cost-form-icon-size);
    display: flex;
    align-items: center;
    justify-content: center;
}

@supports (background-image: linear-gradient(to right bottom, oklab(0.729884 0.16093 0.0369245 / 0.1) 0%, oklab(0.729884 0.16093 0.0369245 / 0.05) 100%)) {
    .program-cost__form-icon {
        background-image: linear-gradient(to right bottom,
                oklab(0.729884 0.16093 0.0369245 / 0.1) 0%,
                oklab(0.729884 0.16093 0.0369245 / 0.05) 100%);
    }
}

.program-cost__form-img {
    width: var(--cost-form-img-size);
    min-width: var(--cost-form-img-size);
    height: var(--cost-form-img-size);
}

.program-cost__form-title {
    font-family: var(--font-primary);
    font-size: var(--font-size-cost-form-title);
    color: var(--color-cost-value);
}

.program-cost__form-text {
    text-align: center;
}

.program-cost__form-button {
    text-align: center;
}

.program-cost__form-button .header__buttons--blue {
    padding: 12px 24px;
}

@media screen and (min-width: 768px) {
    .program-cost__schedule-content {
        flex-direction: row;
        justify-content: space-between;
        width: 100%;
    }
}

@media screen and (min-width: 992px) {
    .program-cost__main-container {
        padding: var(--padding-cost-container-desktop);
    }

    .program-cost__main-header {
        grid-template-columns: 1fr 1fr;
        justify-content: space-between;
        align-items: center;
    }

    .program-cost__main-column.program-cost__main-numbers {
        justify-self: end;
    }

    .program-cost__main-block {
        margin: 40px 0;
    }

    .program-cost__schedule-items {
        gap: var(--gap-cost-schedule-desktop);
    }

    .program-cost__schedule-item {
        padding: var(--padding-cost-item-desktop);
    }

    .program-cost__step-number {
        min-width: var(--cost-step-size-desktop);
        width: var(--cost-step-size-desktop);
        height: var(--cost-step-size-desktop);
        font-size: 20px;
    }

    .program-cost__schedule-value {
        font-size: var(--font-size-cost-schedule-value-desktop);
    }

    .program-cost__main_additional-price {
        font-size: var(--font-size-cost-additional-price-desktop);
    }
}
.program-steps{
    padding: 0 0 30px 0;
}
.program-steps .steps-items{
        margin: 50px 0 0 0;
}
.program-team{
  padding: 30px 0  
}
.program-faq {
    position: relative;
    padding: 0 0 30px 0;
}

.program-faq::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    height: 100%;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.9) 0%, rgba(252, 253, 254, 1) 50%, rgba(255, 255, 255, 0.9) 100%);
    z-index: -1;
}
.mwm-aal-container{
    display: none;
}


.single-program .faq__content ul {
	list-style: none;
	margin: 0 0 20px 0px;
}

.single-program .faq__content ol {
	list-style: none;
	counter-reset: my-counter;
	margin: 0 0 30px 0px;
}

.single-program .faq__content ol li {
	counter-increment: my-counter;
	position: relative;
	padding-left: 60px;
	margin-bottom: 30px;
}

.single-program .faq__content ol li::before {
	content: counter(my-counter);
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	font-size: 14px;
	font-weight: 700;
	color: #253580;
	background: #2535801a;
	left: 10px;
	top: 0px;
	width: 32px;
	height: 32px;
	border-radius: 10px;
}

.single-program .faq__content ul li {
	position: relative;
	padding-left: 30px;
	margin-bottom: 20px;
}

.single-program .faq__content ul li::before {
	content: "";
	position: absolute;
	left: 10px;
	top: 8px;
	width: 8px;
	height: 8px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background-color: #253580;
}