/*
Theme Name: Face Up
Theme URI: https://example.com/faceup
Author: Codex
Description: Кастомная тема WordPress для лендинга Face Up.
Version: 1.0.0
Text Domain: faceup
*/

@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@500;700&display=swap");

@font-face {
    font-family: "Gilroy";
    src:
        local("Gilroy Medium"),
        local("Gilroy-Medium"),
        url("./assets/fonts/gilroy/Gilroy-Medium_0.ttf") format("truetype");
    font-style: normal;
    font-weight: 500;
    font-display: swap;
}

@font-face {
    font-family: "Gilroy";
    src:
        local("Gilroy Bold"),
        local("Gilroy-Bold"),
        url("./assets/fonts/gilroy/Gilroy-Bold_0.ttf") format("truetype");
    font-style: normal;
    font-weight: 700;
    font-display: swap;
}

:root {
    --site-max-width: 1600px;
    --desktop-vw: min(100vw, 1600px);
    --bg: #080b0f;
    --bg-header: #080b0f;
    --bg-card: #121519;
    --bg-card-soft: rgba(255, 255, 255, 0.04);
    --border-card: #383a3e;
    --border-soft: rgba(255, 255, 255, 0.16);
    --badge-bg: #26292c;
    --badge-border: #494b4e;
    --text: #ffffff;
    --text-soft: rgba(255, 255, 255, 0.6);
    --accent-start: #fa771c;
    --accent-end: #fa3d1c;
    --container-padding: calc(128px * var(--desktop-vw) / 1600px);
    --header-height: calc(80px * var(--desktop-vw) / 1600px);
    --sticky-offset: calc(144px * var(--desktop-vw) / 1600px);
    --section-space: calc(64px * var(--desktop-vw) / 1600px);
    --space-8: calc(8px * var(--desktop-vw) / 1600px);
    --space-16: calc(16px * var(--desktop-vw) / 1600px);
    --space-24: calc(24px * var(--desktop-vw) / 1600px);
    --space-32: calc(32px * var(--desktop-vw) / 1600px);
    --space-40: calc(40px * var(--desktop-vw) / 1600px);
    --space-48: calc(48px * var(--desktop-vw) / 1600px);
    --space-56: calc(56px * var(--desktop-vw) / 1600px);
    --space-64: calc(64px * var(--desktop-vw) / 1600px);
    --radius-16: calc(16px * var(--desktop-vw) / 1600px);
    --radius-24: calc(24px * var(--desktop-vw) / 1600px);
    --radius-32: calc(32px * var(--desktop-vw) / 1600px);
    --font-14: calc(14px * var(--desktop-vw) / 1600px);
    --font-16: calc(16px * var(--desktop-vw) / 1600px);
    --font-20: calc(20px * var(--desktop-vw) / 1600px);
    --font-24: calc(24px * var(--desktop-vw) / 1600px);
    --font-32: calc(32px * var(--desktop-vw) / 1600px);
    --font-40: calc(40px * var(--desktop-vw) / 1600px);
    --font-64: calc(64px * var(--desktop-vw) / 1600px);
    --font-weight-medium: 500;
    --font-weight-bold: 700;
    --button-height: calc(40px * var(--desktop-vw) / 1600px);
    --size-448: calc(448px * var(--desktop-vw) / 1600px);
    --size-584: calc(584px * var(--desktop-vw) / 1600px);
    --size-592: calc(592px * var(--desktop-vw) / 1600px);
    --size-622: calc(622px * var(--desktop-vw) / 1600px);
    --size-660: calc(660px * var(--desktop-vw) / 1600px);
    --size-696: calc(696px * var(--desktop-vw) / 1600px);
    --size-1344: calc(1344px * var(--desktop-vw) / 1600px);
    --cookie-width: 320px;
    --cookie-bottom: 32px;
    --anchor-offset: var(--header-height);
    --font-main: "Gilroy", "Manrope", sans-serif;
    --transition-fast: 200ms ease-in-out;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: var(--anchor-offset);
}

[id] {
    scroll-margin-top: var(--anchor-offset);
}

body {
    margin: 0;
    min-width: 320px;
    background: var(--bg);
    color: var(--text);
    font-family: var(--font-main);
    font-weight: var(--font-weight-medium);
    font-synthesis: none;
}

img {
    display: block;
    max-width: 100%;
}

a {
    color: inherit;
    text-decoration: none;
}

button,
input,
textarea,
select {
    font: inherit;
}

button {
    background: transparent;
    border: 0;
    color: inherit;
    cursor: pointer;
}

[hidden] {
    display: none !important;
}

.faceup-page {
    width: min(100%, var(--site-max-width));
    margin-inline: auto;
    overflow-x: clip;
}

.container {
    width: 100%;
    max-width: var(--site-max-width);
    margin: 0 auto;
    padding-inline: var(--container-padding);
}

.site-main {
    padding-top: 0;
}

.site-main--default {
    padding: calc(96px * var(--desktop-vw) / 1600px) 0 calc(120px * var(--desktop-vw) / 1600px);
}

.default-page__article {
    max-width: 960px;
    margin: 0 auto;
}

.default-page__title {
    margin: 0 0 32px;
    font-size: var(--font-40);
    line-height: 1.2;
    font-weight: var(--font-weight-bold);
    text-transform: uppercase;
}

.default-page__content {
    color: var(--text-soft);
    font-size: var(--font-20);
    line-height: 1.6;
}

.default-page__content > *:first-child {
    margin-top: 0;
}

.default-page__content > *:last-child {
    margin-bottom: 0;
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(8, 11, 15, 0.96);
    backdrop-filter: blur(12px);
}

.site-header__inner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: var(--header-height);
}

.site-logo {
    position: absolute;
    top: calc(16px * var(--desktop-vw) / 1600px);
    left: 0;
    width: calc(83.375px * var(--desktop-vw) / 1600px);
    height: calc(48px * var(--desktop-vw) / 1600px);
}

.site-logo__image {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.site-nav {
    display: flex;
    align-items: center;
    justify-content: center;
}

.site-nav__mobile-action {
    display: none;
}

.site-nav__list {
    display: flex;
    align-items: center;
    gap: var(--space-16);
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-nav__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: var(--space-8) 10px;
    color: var(--text);
    font-size: var(--font-16);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
    white-space: nowrap;
    transition: opacity var(--transition-fast);
}

.site-nav__link:hover,
.site-nav__link:focus-visible {
    opacity: 0.6;
}

.site-header__action {
    position: absolute;
    top: calc(20px * var(--desktop-vw) / 1600px);
    right: 0;
}

.site-header__burger {
    display: none;
    position: absolute;
    top: 24px;
    right: 0;
    width: 32px;
    height: 32px;
    padding: 0;
}

.site-header__burger-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 32px;
    height: 32px;
    transform: translate(-50%, -50%);
    transition: opacity var(--transition-fast);
}

.site-header__burger-icon--close {
    opacity: 0;
}

.cta-button {
    position: relative;
    isolation: isolate;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: var(--button-height);
    padding: var(--space-8) 12px;
    border-radius: var(--radius-16);
    background: linear-gradient(78deg, var(--accent-start) 0%, var(--accent-end) 100%);
    color: var(--text);
    font-size: var(--font-16);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
}

.cta-button::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: inherit;
    background: linear-gradient(0deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.2) 100%);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--transition-fast);
}

.cta-button__label {
    position: relative;
    z-index: 1;
}

.cta-button:hover,
.cta-button:focus-visible {
    text-decoration: none;
}

.cta-button:hover::before,
.cta-button:focus-visible::before {
    opacity: 1;
}

.cta-button.is-static {
    cursor: default;
}

.cta-button--small {
    min-width: 189px;
}

.section-title {
    margin: 0;
    font-size: var(--font-40);
    font-weight: var(--font-weight-bold);
    line-height: 1.2;
    text-transform: uppercase;
}

.section-title--center {
    width: 100%;
    max-width: var(--size-696);
    margin-inline: auto;
    text-align: center;
}

.intro-section .section-title--center,
.stats-section .section-title--center,
.subscription-section .section-title--center {
    max-width: var(--size-1344);
}

.section-subtitle {
    margin: 0;
    color: var(--text);
    font-size: var(--font-24);
    font-weight: var(--font-weight-medium);
    line-height: 1.3334;
}

.section-subtitle--center {
    width: 100%;
    max-width: var(--size-1344);
    margin-inline: auto;
    text-align: center;
}

.section-kicker {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: calc(34px * var(--desktop-vw) / 1600px);
    padding: var(--space-8) var(--space-16) 6px;
    border: 1px solid var(--badge-border);
    border-radius: 32px;
    background: var(--badge-bg);
    color: var(--text);
    font-size: var(--font-16);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
    text-align: center;
}

.hero-section {
    position: relative;
    padding-top: var(--space-64);
}

.hero-section__content {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-32);
    text-align: center;
}

.section-title--hero {
    width: 100%;
    font-size: var(--font-64);
    line-height: 1.125;
}

.hero-section__text {
    width: 100%;
    margin: 0;
    font-size: var(--font-24);
    font-weight: var(--font-weight-medium);
    line-height: 1.3334;
}

.hero-section__action {
    display: flex;
    justify-content: center;
}

.hero-section__visual {
    width: 100%;
    margin-top: var(--space-24);
}

.hero-section__visual img {
    width: 100%;
    height: auto;
}

.intro-section,
.stats-section,
.report-section,
.insights-section,
.program-section,
.subscription-section,
.profile-section,
.faq-section,
.final-cta-section {
    padding-block: var(--section-space);
}

.intro-section {
    position: relative;
    min-height: 200vh;
}

.intro-section .container {
    position: relative;
    position: sticky;
    top: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--space-24);
    min-height: 100vh;
    padding-block: var(--section-space);
    box-sizing: border-box;
}

.intro-section__content {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-16);
    width: 100%;
}

.intro-section__content::before {
    content: "";
    position: absolute;
    top: clamp(-376px, calc(-220px - (var(--desktop-vw) * 0.1)), -180px);
    left: 50%;
    width: clamp(560px, calc(var(--desktop-vw) * 0.7), 1344px);
    height: clamp(560px, calc(var(--desktop-vw) * 0.7), 1344px);
    background: url("./assets/figma/blur-about.svg") center/contain no-repeat;
    transform: translateX(-50%);
    pointer-events: none;
}

.intro-section__title {
    position: relative;
    z-index: 1;
}

.intro-section__title-text--desktop {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
}

.intro-section__title-line {
    display: block;
}

.intro-section__title-text--mobile,
.intro-section__copy-text--mobile {
    display: none;
}

.intro-section__copy {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: var(--size-1344);
    text-align: center;
}

.intro-section__copy p {
    margin: 0;
    font-size: var(--font-24);
    font-weight: var(--font-weight-medium);
    line-height: 1.3334;
}

.intro-section__word {
    opacity: 0.2;
    transition: opacity 160ms linear;
    will-change: opacity;
}

.intro-section__copy p + p {
    margin-top: var(--space-32);
}

.stats-section .container {
    display: flex;
    flex-direction: column;
    gap: var(--space-48);
    align-items: center;
}

.stats-section__header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-24);
    width: 100%;
}

.stats-section__text-mobile {
    display: none;
}

.report-section__text-mobile {
    display: none;
}

.insights-section__text-mobile,
.insight-card__text-mobile {
    display: none;
}

.program-section__text-mobile {
    display: none;
}

.profile-section__text-mobile {
    display: none;
}

.profile-section__title-mobile {
    display: none;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--space-24);
    width: 100%;
}

.stats-card,
.subscription-card {
    background: var(--bg-card);
    border: 1px solid var(--border-card);
    border-radius: var(--radius-16);
}

.stats-card {
    min-height: calc(318px * var(--desktop-vw) / 1600px);
    padding: var(--space-24);
}

.stats-card__meta {
    display: flex;
    align-items: center;
    gap: var(--space-16);
}

.stats-card__icon {
    width: calc(48px * var(--desktop-vw) / 1600px);
    height: calc(48px * var(--desktop-vw) / 1600px);
    flex: 0 0 calc(48px * var(--desktop-vw) / 1600px);
}

.stats-card__percent {
    background: linear-gradient(86deg, var(--accent-start) 0%, var(--accent-end) 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-size: var(--font-32);
    font-weight: var(--font-weight-bold);
    line-height: 1.25;
}

.stats-card__title,
.subscription-card__title,
.insight-card__title {
    margin: var(--space-32) 0 0;
    color: var(--text);
    font-size: var(--font-32);
    font-weight: var(--font-weight-bold);
    line-height: 1.25;
    text-transform: uppercase;
}

.stats-card__text,
.subscription-card__text,
.faq-item__answer,
.accent-list li {
    margin: var(--space-16) 0 0;
    color: var(--text);
    font-size: var(--font-20);
    font-weight: var(--font-weight-medium);
    line-height: 1.2;
}

.report-section__grid,
.program-section__grid,
.profile-section__grid,
.final-cta-section__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-24);
    align-items: center;
    justify-content: space-between;
}

.report-section__content,
.program-section__content,
.profile-section__content,
.final-cta-section__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-32);
    width: 100%;
    max-width: var(--size-660);
    padding-block: var(--space-56);
}

.report-section__content .section-title,
.program-section__content .section-title,
.profile-section__content .section-title,
.final-cta-section__content .section-title {
    width: 100%;
}

.report-section__content .section-subtitle,
.program-section__content .section-subtitle,
.profile-section__content .section-subtitle,
.final-cta-section__content .section-subtitle {
    width: 100%;
}

.accent-list {
    width: 100%;
    max-width: 396px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.accent-list li {
    position: relative;
    padding-left: var(--space-32);
}

.accent-list li::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: var(--space-24);
    height: var(--space-24);
    background: url("./assets/figma/icon-dot.svg") center/contain no-repeat;
}

.accent-list li + li {
    margin-top: var(--space-16);
}

.accent-list--compact {
    max-width: none;
}

.report-section__action {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

.report-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: space-between;
}

.report-section__content {
    max-width: var(--size-660);
}

.helper-text,
.program-section__note,
.profile-section__caption {
    margin: 0;
    color: var(--text-soft);
    font-size: var(--font-16);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
}

.report-section__visual,
.profile-section__visual,
.final-cta-section__visual {
    position: relative;
}

.final-cta-section__info {
    display: flex;
    flex-direction: column;
    gap: var(--space-16);
    width: 100%;
}

.final-cta-section__visual {
    width: 100%;
    max-width: var(--size-660);
}

.report-section__visual--report {
    width: 100%;
    max-width: var(--size-660);
    aspect-ratio: 660 / 618;
    min-height: auto;
}

.report-section__visual--report::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: clamp(720px, calc(var(--desktop-vw) * 0.75), 1440px);
    height: clamp(720px, calc(var(--desktop-vw) * 0.75), 1440px);
    background: url("./assets/figma/blur-report.svg") center/contain no-repeat;
    transform: translate(-50%, -50%);
    pointer-events: none;
}

.program-section__visual-wrap::before,
.final-cta-section__visual::before {
    content: "";
    position: absolute;
    inset: 50% auto auto 50%;
    width: clamp(360px, calc(var(--desktop-vw) * 0.35), 672px);
    height: clamp(360px, calc(var(--desktop-vw) * 0.35), 672px);
    border-radius: 50%;
    background: radial-gradient(circle, rgba(250, 89, 28, 0.24) 0%, rgba(250, 89, 28, 0.08) 30%, rgba(8, 11, 15, 0) 68%);
    transform: translate(-50%, -50%);
    filter: blur(24px);
    pointer-events: none;
}

.report-section__visual::before,
.program-section__visual-wrap::before,
.final-cta-section__visual::before {
    z-index: 0;
}

.final-cta-section__visual::before {
    inset: auto;
    top: -54px;
    left: 50px;
    width: clamp(360px, calc(var(--desktop-vw) * 0.35), 672px);
    height: clamp(360px, calc(var(--desktop-vw) * 0.35), 672px);
    background: url("./assets/figma/blur-final-cta.svg") center/contain no-repeat;
    transform: none;
    filter: none;
}

.report-section__visual--report img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.report-section__visual--report picture {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
}

.insights-section .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-48);
}

.insights-list {
    display: flex;
    flex-direction: column;
    gap: var(--space-48);
    width: 100%;
    position: relative;
}

.insight-card {
    position: sticky;
    top: var(--sticky-offset);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-48);
    align-items: center;
    justify-content: space-between;
    min-height: calc(704px * var(--desktop-vw) / 1600px);
    padding: var(--space-56);
    border: 1px solid var(--border-card);
    border-radius: var(--radius-32);
    background: var(--bg-card);
}

.insight-card:nth-child(1) {
    z-index: 1;
}

.insight-card:nth-child(2) {
    z-index: 2;
}

.insight-card:nth-child(3) {
    z-index: 3;
}

.insight-card__content {
    display: flex;
    flex-direction: column;
    gap: var(--space-24);
    width: 100%;
    max-width: var(--size-592);
}

.insight-card--1 .insight-card__content {
    gap: var(--space-48);
}

.insight-card__text-group {
    display: flex;
    flex-direction: column;
    gap: var(--space-24);
}

.insight-card__title {
    margin: 0;
}

.insight-card__text {
    margin: 0;
    color: var(--text);
    font-size: var(--font-20);
    font-weight: var(--font-weight-medium);
    line-height: 1.2;
}

.insight-card__visual img {
    width: 100%;
    aspect-ratio: 592 / 592;
    object-fit: cover;
    border-radius: var(--radius-24);
}

.insight-card__visual picture {
    display: block;
    width: 100%;
}

.program-section__visual-wrap {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-24);
    width: 100%;
    max-width: var(--size-660);
}

.program-section__visual-wrap::before {
    content: "";
    position: absolute;
    top: -344px;
    left: -270px;
    z-index: 0;
    width: clamp(720px, calc(var(--desktop-vw) * 0.75), 1440px);
    height: clamp(720px, calc(var(--desktop-vw) * 0.75), 1440px);
    background: url("./assets/figma/blur-program.svg") center/contain no-repeat;
    transform: none;
    filter: none;
    pointer-events: none;
}

.program-section__info {
    display: flex;
    flex-direction: column;
    gap: var(--space-24);
    width: 100%;
}

.program-section__copy {
    display: flex;
    flex-direction: column;
    gap: var(--space-16);
    width: 100%;
}

.cta-button--program {
    min-width: 283px;
}

.program-section__visual {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: calc(48px * var(--desktop-vw) / 1600px) minmax(0, 1fr) calc(48px * var(--desktop-vw) / 1600px);
    align-items: center;
    gap: var(--space-16);
    width: 100%;
    max-width: var(--size-660);
    min-height: calc(440px * var(--desktop-vw) / 1600px);
}

.program-section__arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: calc(48px * var(--desktop-vw) / 1600px);
    height: calc(48px * var(--desktop-vw) / 1600px);
    padding: 12px;
    border-radius: var(--radius-16);
    background: linear-gradient(87deg, var(--accent-start) 0%, var(--accent-end) 100%);
}

.program-section__arrow img {
    width: var(--space-24);
    height: var(--space-24);
}

.program-section__slider-stage {
    position: relative;
    width: 100%;
    aspect-ratio: 534 / 440;
    height: auto;
}

.program-phone {
    position: relative;
    top: 3px;
    width: 210.563px;
    height: 433.996px;
    margin: 0 auto;
    box-shadow:
        0 79.235px 22.176px rgba(0, 0, 0, 0),
        0 50.581px 20.182px rgba(0, 0, 0, 0.02),
        0 28.405px 17.192px rgba(0, 0, 0, 0.07),
        0 12.707px 12.707px rgba(0, 0, 0, 0.12),
        0 3.239px 6.977px rgba(0, 0, 0, 0.14);
}

.program-phone__side-buttons {
    position: absolute;
    top: 76.708px;
    left: -1.546px;
    width: 213.652px;
    height: 344.417px;
    pointer-events: none;
}

.program-phone__button {
    position: absolute;
    background: #f0ece3;
    box-shadow:
        inset -0.515px 0 0 rgba(97, 96, 93, 0.85),
        inset 0.515px 0 0 rgba(255, 255, 255, 0.8);
}

.program-phone__button--right {
    top: 101.422px;
    right: -0.001px;
    width: 2.574px;
    height: 51.482px;
    border-radius: 0 1.03px 1.03px 0;
}

.program-phone__button--left-top,
.program-phone__button--left-middle,
.program-phone__button--left-bottom {
    left: 0.001px;
    width: 2.574px;
    border-radius: 1.03px 0 0 1.03px;
}

.program-phone__button--left-top {
    top: 0.001px;
    height: 15.959px;
}

.program-phone__button--left-middle {
    top: 30.89px;
    height: 28.83px;
}

.program-phone__button--left-bottom {
    top: 68.472px;
    height: 28.83px;
}

.program-phone__button::before,
.program-phone__button::after {
    content: "";
    position: absolute;
    top: 1px;
    bottom: 1px;
}

.program-phone__button::before {
    left: 0;
    width: 0.515px;
    background: rgba(97, 96, 93, 0.85);
    filter: blur(0.515px);
}

.program-phone__button::after {
    right: 0.515px;
    width: 0.515px;
    background: rgba(255, 255, 255, 0.8);
    filter: blur(0.257px);
}

.program-phone__frame {
    position: absolute;
    inset: 0;
    overflow: hidden;
    border-radius: 31.919px;
    background: linear-gradient(180deg, #e7e3bf 0%, #b5ae9c 18%, #7f786c 48%, #5c564f 100%);
    box-shadow:
        0 0 0 1.544px rgba(195, 195, 195, 0.32),
        0 0 0 0.515px rgba(82, 75, 64, 0.95),
        inset 0 0 0 0.515px rgba(255, 255, 255, 0.16),
        inset 0 0 0 2.574px rgba(255, 255, 255, 0.08);
}

.program-phone__frame::before {
    content: "";
    position: absolute;
    inset: 3.09px;
    border: 0.206px solid rgba(255, 255, 255, 0.92);
    border-radius: 31.919px;
}

.program-phone__cutout {
    position: absolute;
    background: linear-gradient(180deg, #817e73 0%, #c3beac 100%);
}

.program-phone__cutout--top {
    top: 0;
    left: 163.711px;
    width: 3.089px;
    height: 2.059px;
}

.program-phone__cutout--left-top {
    top: 44.791px;
    left: 0;
    width: 2.059px;
    height: 3.089px;
}

.program-phone__cutout--left-bottom {
    top: 389.206px;
    left: 0;
    width: 2.059px;
    height: 3.089px;
}

.program-phone__cutout--bottom-left {
    left: 32.434px;
    bottom: 0;
    width: 2.574px;
    height: 2.059px;
}

.program-phone__cutout--right-bottom {
    top: 389.206px;
    right: 0.002px;
    width: 2.059px;
    height: 3.089px;
}

.program-phone__screen-frame {
    position: absolute;
    top: 2.057px;
    left: 2.057px;
    width: 206.444px;
    height: 429.878px;
    border-radius: 29.86px;
    background: #000100;
    box-shadow:
        0 0 0 2.059px rgba(135, 145, 148, 0.58),
        inset 0 0 0 0.515px rgba(255, 255, 255, 0.12);
}

.program-phone__notch {
    position: absolute;
    top: 5.995px;
    left: 70.71px;
    z-index: 3;
    width: 57.145px;
    height: 15.959px;
    border-radius: 999px;
    background: #000100;
}

.program-phone__screen {
    position: absolute;
    z-index: 2;
    top: 6.361px;
    left: 5.998px;
    width: 198.562px;
    height: 420.631px;
    overflow: hidden;
    border-radius: 25.741px;
    background: #000100;
}

.program-swiper,
.program-swiper .swiper-wrapper,
.program-swiper .swiper-slide {
    width: 100%;
    height: 100%;
}

.program-swiper__slide {
    overflow: hidden;
    border-radius: 25.741px;
}

.program-swiper__slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 25.741px;
}

.program-swiper__slide picture {
    display: block;
    width: 100%;
    height: 100%;
}

.program-section__note {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: var(--size-448);
    text-align: center;
    font-size: 20px;
}

.subscription-section .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-48);
}

.subscription-section__info {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-24);
    width: 100%;
}

.subscription-section__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-16);
    width: 100%;
    max-width: var(--size-696);
}

.subscription-section .section-subtitle--center {
    max-width: var(--size-622);
}

.subscription-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-24);
    width: 100%;
}

.subscription-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-32);
    min-height: calc(318px * var(--desktop-vw) / 1600px);
    padding: var(--space-24);
    border: none;
    box-shadow: inset 0 0 0 1px var(--border-card);
}

.subscription-card__icon {
    display: block;
    flex: 0 0 auto;
    width: calc(48px * var(--desktop-vw) / 1600px);
    height: calc(48px * var(--desktop-vw) / 1600px);
}

.subscription-card__info {
    display: flex;
    flex-direction: column;
    gap: var(--space-16);
    width: 384px;
    max-width: 100%;
}

.subscription-card__title,
.subscription-card__text {
    margin: 0;
}

.subscription-card__title {
    white-space: nowrap;
}

.profile-section__info {
    display: flex;
    flex-direction: column;
    gap: var(--space-24);
    width: 100%;
}

.profile-section__copy {
    display: flex;
    flex-direction: column;
    gap: var(--space-16);
    width: 100%;
}

.profile-section__cta {
    display: flex;
    flex-direction: column;
    gap: var(--space-16);
    width: 100%;
}

.profile-section__person {
    display: flex;
    flex-direction: column;
    gap: var(--space-8);
    width: 100%;
}

.profile-section__person h3 {
    margin: 0;
    color: var(--text);
    font-size: var(--font-20);
    font-weight: var(--font-weight-medium);
    line-height: 1.2;
}

.profile-section__person p {
    margin: 0;
    color: var(--text-soft);
    font-size: var(--font-16);
    font-weight: var(--font-weight-medium);
    line-height: 1.5;
}

.profile-section__visual {
    display: flex;
    flex-direction: column;
    gap: var(--space-24);
    align-items: center;
    width: 100%;
    max-width: var(--size-660);
}

.profile-section__visual img {
    display: block;
    width: 100%;
    aspect-ratio: 660 / 440;
    object-fit: cover;
    border-radius: 32px;
}

.profile-section__caption {
    width: 100%;
    text-align: center;
}

.faq-section .container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-48);
}

.faq-section__info {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--space-24);
    width: 100%;
}

.faq-list {
    width: 100%;
}

.faq-item + .faq-item {
    margin-top: var(--space-24);
}

.faq-item {
    cursor: pointer;
    overflow: hidden;
    padding: var(--space-32) var(--space-32) var(--space-32) var(--space-56);
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-32);
    background: var(--bg-card-soft);
    transition: background var(--transition-fast), border-color var(--transition-fast);
}

.faq-item__header {
    display: flex;
    align-items: center;
    width: 100%;
    gap: var(--space-24);
    padding: 0;
    text-align: left;
}

.faq-item__header h3 {
    flex: 1 1 auto;
    margin: 0;
    color: var(--text);
    font-size: var(--font-32);
    font-weight: var(--font-weight-bold);
    line-height: 1;
}

.faq-item__icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: calc(48px * var(--desktop-vw) / 1600px);
    height: calc(48px * var(--desktop-vw) / 1600px);
    flex: 0 0 calc(48px * var(--desktop-vw) / 1600px);
    padding: 12px;
    border-radius: var(--radius-16);
    background: rgba(255, 255, 255, 0.16);
}

.faq-item__icon img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: var(--space-24);
    height: var(--space-24);
    transform: translate(-50%, -50%);
    transition: opacity 150ms ease-in-out;
}

.faq-item__icon-arrow--up {
    opacity: 0;
}

.faq-item.is-open .faq-item__icon-arrow--down {
    opacity: 0;
}

.faq-item.is-open .faq-item__icon-arrow--up {
    opacity: 1;
}

.faq-item__content {
    height: 0;
    overflow: hidden;
    opacity: 0;
    transition: height 150ms ease-in-out, opacity 150ms ease-in-out;
}

.faq-item__content-inner {
    padding-top: var(--space-24);
}

.faq-item__answer {
    margin: 0;
    max-width: 1256px;
}

.final-cta-section__visual img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    aspect-ratio: 660 / 453;
    object-fit: cover;
}

.final-cta-section__visual picture {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
}

.site-footer {
    padding: var(--space-64) 0 var(--space-40);
}

.site-footer__card {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-64);
    justify-content: space-between;
    padding: var(--space-56);
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-32);
    background: var(--bg-card-soft);
}

.site-footer__column {
    min-width: 0;
}

.site-footer__group {
    display: flex;
    flex-direction: column;
    gap: var(--space-24);
    width: 100%;
}

.site-footer__title {
    margin: 0;
    color: #fdfeff;
    font-size: var(--font-32);
    font-weight: var(--font-weight-bold);
    line-height: 1;
    text-transform: uppercase;
}

.site-footer__list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-footer__list li + li {
    margin-top: var(--space-16);
}

.site-footer__list a,
.site-footer__list span {
    color: var(--text);
    font-size: var(--font-20);
    font-weight: var(--font-weight-medium);
    line-height: 1.2;
}

.site-footer__copy {
    width: 100%;
    margin-top: var(--space-40);
    font-size: var(--font-16);
    font-weight: var(--font-weight-medium);
    line-height: 1;
    opacity: 0.4;
    text-align: center;
}

.cookie-banner {
    position: fixed;
    right: 32px;
    bottom: var(--cookie-bottom);
    z-index: 60;
    width: min(var(--cookie-width), 100vw);
}

.cookie-banner[hidden] {
    display: none !important;
}

.cookie-banner__body {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 24px;
    min-height: 136px;
    padding: 20px;
    border: 1px solid var(--border-card);
    border-radius: 16px;
    background: var(--bg-card);
}

.cookie-banner__top {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 12px;
    width: 100%;
}

.cookie-banner__info {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 248px;
}

.cookie-banner__text {
    margin: 0;
    color: var(--text);
    font-size: 16px;
    font-weight: var(--font-weight-medium);
    line-height: 20px;
}

.cookie-banner__close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    padding: 0;
    transition: opacity var(--transition-fast);
}

.cookie-banner__close img {
    width: 100%;
    height: 100%;
}

.cookie-banner__accept {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 74px;
    min-width: 74px;
    height: 36px;
    min-height: 36px;
    padding: 6px 10px;
    border-radius: 14px;
    background-image: linear-gradient(84.6302deg, var(--accent-start) 0%, var(--accent-end) 100%);
    transition: opacity var(--transition-fast);
}

.cookie-banner__accept:hover,
.cookie-banner__accept:focus-visible,
.cookie-banner__close:hover,
.cookie-banner__close:focus-visible {
    opacity: 0.8;
}

.cookie-banner__accept-label {
    color: var(--text);
    font-size: 14px;
    font-weight: var(--font-weight-medium);
    line-height: 18px;
    text-align: center;
}

@media (max-width: 768px) {
    :root {
        --mobile-vw: clamp(360px, 100vw, 768px);
        --mobile-scale: calc(var(--mobile-vw) / 360px);
        --container-padding: calc(16px * var(--mobile-scale));
        --header-height: calc(64px * var(--mobile-scale));
        --sticky-offset: calc(80px * var(--mobile-scale));
        --section-space: calc(32px * var(--mobile-scale));
        --space-8: calc(8px * var(--mobile-scale));
        --space-16: calc(16px * var(--mobile-scale));
        --space-24: calc(24px * var(--mobile-scale));
        --space-32: calc(32px * var(--mobile-scale));
        --space-40: calc(40px * var(--mobile-scale));
        --space-48: calc(48px * var(--mobile-scale));
        --space-56: calc(56px * var(--mobile-scale));
        --space-64: calc(64px * var(--mobile-scale));
        --radius-16: calc(16px * var(--mobile-scale));
        --radius-24: calc(24px * var(--mobile-scale));
        --radius-32: calc(32px * var(--mobile-scale));
        --font-14: calc(14px * var(--mobile-scale));
        --font-16: calc(16px * var(--mobile-scale));
        --font-20: calc(20px * var(--mobile-scale));
        --font-24: calc(24px * var(--mobile-scale));
        --font-32: calc(24px * var(--mobile-scale));
        --font-40: calc(24px * var(--mobile-scale));
        --font-64: calc(40px * var(--mobile-scale));
        --button-height: calc(40px * var(--mobile-scale));
        --size-448: 100%;
        --size-584: 100%;
        --size-592: 100%;
        --size-622: calc(328px * var(--mobile-scale));
        --size-660: 100%;
        --size-696: 100%;
        --size-1344: 100%;
        --mobile-4: calc(4px * var(--mobile-scale));
        --mobile-10: calc(10px * var(--mobile-scale));
        --mobile-34: calc(34px * var(--mobile-scale));
        --mobile-40: calc(40px * var(--mobile-scale));
        --mobile-48: calc(48px * var(--mobile-scale));
        --mobile-328: calc(328px * var(--mobile-scale));
        --mobile-280: calc(280px * var(--mobile-scale));
        --mobile-360: calc(360px * var(--mobile-scale));
        --mobile-440: calc(440px * var(--mobile-scale));
        --mobile-560: calc(560px * var(--mobile-scale));
        --cookie-width: calc(328px * var(--mobile-scale));
        --cookie-bottom: calc(16px * var(--mobile-scale));
        --anchor-offset: var(--header-height);
    }

    .site-main--default {
        padding: var(--space-56) 0 calc(72px * var(--mobile-scale));
    }

    .site-header {
        position: relative;
        z-index: 80;
        background: #080b0f;
        backdrop-filter: none;
    }

    .site-header .container {
        padding-inline: var(--container-padding);
    }

    .site-header__inner {
        justify-content: space-between;
        min-height: var(--header-height);
    }

    .site-header__action {
        display: none;
    }

    .site-logo {
        position: relative;
        top: auto;
        left: auto;
        z-index: 81;
        width: calc(83.375px * var(--mobile-scale));
        height: var(--mobile-48);
    }

    .site-header__burger {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        position: relative;
        top: auto;
        right: auto;
        z-index: 81;
        width: var(--mobile-40);
        height: var(--mobile-40);
        padding: var(--mobile-4);
    }

    .site-nav {
        position: fixed;
        inset: 0;
        z-index: 70;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        justify-content: space-between;
        height: 100dvh;
        padding: calc(88px * var(--mobile-scale)) var(--container-padding) var(--space-24);
        background: #080b0f;
        transform: translateX(100%);
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition:
            transform 200ms ease-in-out,
            opacity 200ms ease-in-out,
            visibility 0s linear 200ms;
    }

    body.is-menu-open .site-nav {
        transform: translateX(0);
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transition-delay: 0s;
    }

    body.is-menu-open .site-header__burger-icon--menu {
        opacity: 0;
    }

    body.is-menu-open .site-header__burger-icon--close {
        opacity: 1;
    }

    body.is-menu-open {
        overflow: hidden;
    }

    .site-nav__list {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: var(--space-16);
        width: 100%;
    }

    .site-nav__item,
    .site-nav__link {
        width: auto;
    }

    .site-nav__link {
        justify-content: center;
        padding: var(--space-8) var(--mobile-10);
        font-size: var(--font-24);
        line-height: calc(32px * var(--mobile-scale));
        text-align: center;
    }

    .site-nav__mobile-action {
        display: flex;
        width: 100%;
    }

    .cta-button--nav {
        width: 100%;
        justify-content: center;
    }

    .hero-section {
        padding-top: var(--space-32);
    }

    .hero-section__content {
        gap: var(--space-16);
    }

    .hero-section__visual {
        height: var(--mobile-440);
        margin-top: var(--space-24);
    }

    .hero-section__visual img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .section-title--hero {
        font-size: var(--font-64);
        line-height: calc(48px * var(--mobile-scale));
    }

    .hero-section__text,
    .section-subtitle,
    .intro-section__copy p {
        font-size: var(--font-16);
        line-height: var(--space-24);
    }

    .section-title,
    .default-page__title {
        font-size: var(--font-24);
        line-height: calc(32px * var(--mobile-scale));
    }

    .section-kicker {
        min-height: var(--mobile-34);
        padding: var(--space-8) var(--space-16) calc(6px * var(--mobile-scale));
        font-size: var(--font-16);
        line-height: var(--space-24);
    }

    .intro-section .container,
    .stats-section .container,
    .subscription-section .container,
    .faq-section .container,
    .insights-section .container {
        gap: var(--space-24);
    }

    .intro-section__content {
        gap: var(--space-16);
    }

    .intro-section {
        min-height: 200vh;
    }

    .intro-section .container {
        min-height: 100vh;
    }

    .intro-section__content::before {
        top: 50%;
        left: 50%;
        width: var(--mobile-360);
        height: var(--mobile-360);
        background: url("./assets/figma/blur-about-mobile.svg") center/contain no-repeat;
        transform: translate(-50%, -50%);
    }

    .intro-section__title {
        max-width: var(--mobile-328);
        font-size: var(--font-24);
        line-height: calc(32px * var(--mobile-scale));
    }

    .intro-section__title-text--desktop,
    .intro-section__copy-text--desktop {
        display: none;
    }

    .intro-section__title-text--mobile,
    .intro-section__copy-text--mobile {
        display: inline;
    }

    .intro-section__copy {
        max-width: var(--mobile-328);
    }

    .intro-section__copy p + p {
        margin-top: var(--space-24);
    }

    .stats-section__header,
    .subscription-section__info,
    .faq-section__info {
        gap: var(--space-24);
    }

    .stats-section__text-desktop {
        display: none;
    }

    .stats-section__text-mobile {
        display: inline;
    }

    .report-section__text-desktop {
        display: none;
    }

    .report-section__text-mobile {
        display: inline;
    }

    .insights-section__text-desktop,
    .insight-card__text-desktop {
        display: none;
    }

    .insights-section__text-mobile,
    .insight-card__text-mobile {
        display: inline;
    }

    .program-section__text-desktop {
        display: none;
    }

    .program-section__text-mobile {
        display: inline;
    }

    .profile-section__text-desktop {
        display: none;
    }

    .profile-section__text-mobile {
        display: inline;
    }

    .profile-section__title-desktop {
        display: none;
    }

    .profile-section__title-mobile {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
    }

    .profile-section__title-mobile > span {
        display: block;
        width: 100%;
    }

    .stats-section__header .section-subtitle,
    .subscription-section .section-subtitle--center {
        max-width: var(--mobile-328);
    }

    .subscription-section .section-title--center {
        max-width: var(--mobile-328);
    }

    .stats-grid,
    .subscription-grid {
        grid-template-columns: minmax(0, 1fr);
        justify-items: center;
        gap: var(--space-24);
    }

    .stats-card,
    .subscription-card {
        width: 100%;
        max-width: var(--mobile-328);
        min-height: 0;
        padding: var(--space-24);
        border-radius: var(--radius-16);
    }

    .stats-card__meta,
    .subscription-card {
        gap: var(--space-16);
    }

    .stats-card__icon,
    .subscription-card__icon {
        width: var(--mobile-48);
        height: var(--mobile-48);
        flex-basis: var(--mobile-48);
    }

    .stats-card__percent {
        font-size: calc(32px * var(--mobile-scale));
        line-height: calc(40px * var(--mobile-scale));
    }

    .stats-card__title,
    .subscription-card__title,
    .insight-card__title {
        font-size: var(--font-24);
        line-height: calc(32px * var(--mobile-scale));
    }

    .stats-card__title {
        margin-top: var(--space-16);
    }

    .subscription-card__title,
    .insight-card__title {
        margin-top: 0;
    }

    .stats-card__text,
    .subscription-card__text,
    .faq-item__answer,
    .accent-list li,
    .insight-card__text,
    .program-section__note,
    .helper-text,
    .profile-section__caption {
        font-size: var(--font-16);
        line-height: var(--space-24);
    }

    .stats-card__text {
        margin-top: var(--space-8);
    }

    .subscription-card {
        gap: var(--space-16);
    }

    .subscription-card__info {
        gap: var(--space-8);
        width: 100%;
        max-width: var(--mobile-280);
    }

    .subscription-card__title {
        white-space: normal;
    }

    .report-section__grid,
    .program-section__grid,
    .profile-section__grid,
    .final-cta-section__grid,
    .insight-card,
    .site-footer__card {
        grid-template-columns: minmax(0, 1fr);
    }

    .report-section__content,
    .program-section__content,
    .profile-section__content,
    .final-cta-section__content {
        align-items: center;
        gap: var(--space-32);
        max-width: none;
        padding-block: 0;
        text-align: center;
    }

    .report-section__content .section-title,
    .program-section__content .section-title,
    .profile-section__content .section-title,
    .final-cta-section__content .section-title,
    .report-section__content .section-subtitle,
    .program-section__content .section-subtitle,
    .profile-section__content .section-subtitle,
    .final-cta-section__content .section-subtitle {
        max-width: var(--mobile-328);
    }

    .report-section__action,
    .profile-section__cta,
    .profile-section__info,
    .profile-section__copy,
    .program-section__info,
    .program-section__copy,
    .final-cta-section__info,
    .profile-section__person {
        align-items: center;
        text-align: center;
    }

    .accent-list {
        max-width: var(--mobile-328);
        text-align: left;
    }

    .accent-list li {
        padding-left: var(--space-32);
    }

    .accent-list li + li {
        margin-top: var(--space-16);
    }

    .report-section__visual--report,
    .final-cta-section__visual,
    .profile-section__visual {
        max-width: none;
    }

    .report-section__visual--report {
        height: var(--mobile-560);
        aspect-ratio: auto;
    }

    .report-section__visual--report::before {
        top: auto;
        bottom: var(--space-32);
        left: 50%;
        width: var(--mobile-560);
        height: var(--mobile-560);
        background: url("./assets/figma/blur-report-mobile.svg") center/contain no-repeat;
        transform: translateX(-50%);
    }

    .report-section__visual--report img {
        height: 100%;
        border-radius: var(--radius-32);
    }

    .insights-section > .container > .section-title {
        max-width: var(--mobile-328);
    }

    .insights-list {
        gap: var(--space-16);
    }

    .insight-card {
        position: relative;
        top: auto;
        gap: var(--space-16);
        min-height: 0;
        padding: var(--space-24);
        border-radius: var(--radius-32);
    }

    .insight-card__content,
    .insight-card__text-group {
        gap: var(--space-16);
        max-width: none;
    }

    .insight-card--1 .insight-card__content {
        gap: var(--space-32);
    }

    .insight-card--3 .insight-card__content {
        gap: var(--space-24);
    }

    .insight-card__visual img {
        border-radius: var(--radius-16);
    }

    .program-section__content {
        gap: var(--space-32);
    }

    .profile-section__content {
        gap: var(--space-32);
    }

    .final-cta-section__content {
        gap: var(--space-32);
        padding-block: var(--space-56);
    }

    .final-cta-section .cta-button--small {
        min-width: 0;
    }

    .profile-section__visual,
    .profile-section__caption {
        max-width: var(--mobile-328);
    }

    .profile-section .cta-button--small {
        min-width: 0;
    }

    .cta-button--program {
        min-width: 0;
    }

    .program-section__visual-wrap {
        gap: var(--space-24);
        max-width: none;
    }

    .program-section__visual-wrap::before,
    .final-cta-section__visual::before {
        top: 50%;
        left: 50%;
        width: var(--mobile-360);
        height: var(--mobile-360);
        transform: translate(-50%, -50%);
    }

    .program-section__visual-wrap::before {
        width: var(--mobile-560);
        height: var(--mobile-560);
        background: url("./assets/figma/blur-program-mobile.svg") center/contain no-repeat;
    }

    .final-cta-section__visual {
        max-width: var(--mobile-328);
    }

    .final-cta-section__visual::before {
        inset: auto;
        bottom: calc(-23px * var(--mobile-scale));
        top: auto;
        left: 50%;
        width: var(--mobile-360);
        height: var(--mobile-360);
        background: url("./assets/figma/blur-final-cta-mobile.svg") center/contain no-repeat;
        transform: translateX(-50%);
    }

    .program-section__visual {
        grid-template-columns: var(--mobile-48) minmax(0, 1fr) var(--mobile-48);
        gap: var(--space-16);
        max-width: none;
        min-height: var(--mobile-440);
        align-items: center;
        overflow: visible;
    }

    .program-section__arrow {
        position: relative;
        z-index: 2;
        flex: 0 0 var(--mobile-48);
        width: var(--mobile-48);
        height: var(--mobile-48);
        padding: calc(12px * var(--mobile-scale));
        border-radius: var(--radius-16);
    }

    .program-section__slider-stage {
        position: relative;
        height: var(--mobile-440);
        aspect-ratio: auto;
        overflow: visible;
    }

    .program-phone {
        position: absolute;
        top: 50%;
        left: 50%;
        margin: 0;
        transform: translate(-50%, -50%) scale(calc(1.01384 * var(--mobile-scale)));
        transform-origin: center center;
    }

    .program-section__note {
        max-width: var(--mobile-328);
        text-align: center;
    }

    .profile-section__visual img,
    .final-cta-section__visual img {
        border-radius: var(--radius-32);
    }

    .faq-section {
        padding-bottom: var(--space-32);
    }

    .faq-section .container {
        gap: var(--space-48);
    }

    .faq-section .section-title--center {
        max-width: var(--mobile-328);
    }

    .faq-list {
        display: flex;
        flex-direction: column;
        gap: var(--space-16);
    }

    .faq-item + .faq-item {
        margin-top: 0;
    }

    .faq-item {
        padding: var(--space-24);
        border-radius: var(--radius-32);
    }

    .faq-item__header {
        align-items: center;
        gap: var(--space-24);
        padding: 0;
    }

    .faq-item__header h3 {
        font-size: var(--font-16);
        line-height: var(--space-24);
    }

    .faq-item__content {
        padding: 0;
    }

    .faq-item__icon {
        width: var(--mobile-40);
        height: var(--mobile-40);
        flex-basis: var(--mobile-40);
        padding: var(--space-8);
        border-radius: var(--radius-16);
    }

    .faq-item__icon img {
        width: var(--space-24);
        height: var(--space-24);
    }

    .faq-item__content-inner {
        padding-top: var(--space-24);
    }

    .site-footer {
        padding: var(--space-32) 0 var(--space-24);
    }

    .site-footer .container {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .site-footer__card {
        width: 100%;
        max-width: var(--mobile-328);
        gap: var(--space-64);
        padding: var(--space-24);
        border-radius: var(--radius-32);
    }

    .site-footer__column,
    .site-footer__group {
        width: 100%;
        gap: var(--space-24);
    }

    .site-footer__title {
        font-size: calc(32px * var(--mobile-scale));
        line-height: calc(40px * var(--mobile-scale));
    }

    .site-footer__list {
        gap: var(--space-8);
        display: flex;
        flex-direction: column;
    }

    .site-footer__list li + li {
        margin-top: 0;
    }

    .site-footer__list a,
    .site-footer__list span {
        display: block;
        width: 100%;
        padding-block: var(--space-8);
    }

    .site-footer__list--menu a {
        font-size: var(--font-20);
        line-height: var(--space-24);
    }

    .site-footer__list--contacts a,
    .site-footer__list--contacts span {
        font-size: var(--font-16);
        line-height: var(--space-24);
    }

    .site-footer__copy,
    .default-page__content {
        font-size: var(--font-16);
        line-height: var(--font-16);
    }

    .site-footer__copy {
        max-width: var(--mobile-328);
    }

    .cookie-banner {
        left: auto;
        right: var(--container-padding);
        bottom: var(--cookie-bottom);
        width: min(calc(270px * var(--mobile-scale)), calc(100vw - (var(--container-padding) * 2)));
    }

    .cookie-banner__body {
        gap: calc(4px * var(--mobile-scale));
        min-height: auto;
        padding: calc(16px * var(--mobile-scale));
    }

    .cookie-banner__text {
        font-size: calc(14px * var(--mobile-scale));
        line-height: calc(18px * var(--mobile-scale));
    }

    .cookie-banner__accept {
        width: calc(72px * var(--mobile-scale));
        min-width: calc(72px * var(--mobile-scale));
        height: calc(34px * var(--mobile-scale));
        min-height: calc(34px * var(--mobile-scale));
        padding: calc(6px * var(--mobile-scale)) calc(10px * var(--mobile-scale));
        border-radius: calc(14px * var(--mobile-scale));
    }

    .cookie-banner__info {
        max-width: calc(220px * var(--mobile-scale));
    }

    .cookie-banner__close {
        width: calc(15px * var(--mobile-scale));
        height: calc(15px * var(--mobile-scale));
        flex-basis: calc(15px * var(--mobile-scale));
    }

    .cookie-banner__accept-label {
        font-size: calc(12px * var(--mobile-scale));
        line-height: calc(16px * var(--mobile-scale));
    }
}

