/* Лендинг /longevity/ (Figma «longevity», Frame 765, ширина 1920).
   Десктоп свёрстан по координатам макета: размер N px из Figma = calc(N * var(--lp)).
   --lp = 1px при ширине страницы 1920 и пропорционально меньше на узких экранах (до 992px).
   Ниже 992px — отдельная раскладка в обычных px.
   Файл подключается раньше app.min.css: правила для общих классов (кнопки, карточка врача)
   пишем через .longevity / .longevity-team, чтобы перебить сборку по специфичности. */

.longevity {
    container-type: inline-size;
    --lp: min(1px, 100cqw / 1920);
    --lgv-dark: var(--color-text-main, #312a23);
    --lgv-text: #383838;
    --lgv-muted: var(--color-text-muted, #817a74);
    --lgv-gold: var(--color-primary, #c5a059);
    --lgv-gold-deep: #ab813e;
    --lgv-cream: #fcf9f5;
    --lgv-brown: #33261f;
    --lgv-gradient: linear-gradient(135.64deg, var(--grad-gold-start, #e1c48c) 0%, var(--grad-gold-mid, #c5a059) 47.1%, var(--grad-gold-end, #b8860b) 100%);
    --lgv-glass: rgb(205 205 205 / 29%);
    overflow-x: clip;
    color: var(--lgv-dark);
    font-family: var(--ff-body, 'Raleway'), sans-serif;
}

.longevity :where(p, ul, ol, h1, h2, h3) {
    margin: 0;
    padding: 0;
}

/* Глобальное p:not(:last-child) { margin-block-end: 1rem } из сборки. */
.longevity p:not(:last-child) {
    margin-block-end: 0;
}

.longevity :where(ul, ol) {
    list-style: none;
}

.longevity :where(img) {
    display: block;
    max-width: none;
}

/* ---------- общие элементы ---------- */

.longevity-title {
    font-family: var(--ff-heading, 'Playfair Display'), serif;
    font-size: max(30px, calc(48 * var(--lp)));
    font-weight: 400;
    line-height: 1.2917;
    color: var(--lgv-dark);
}

.longevity-title--54 {
    line-height: 1.125;
}

.longevity-title--59 {
    line-height: 1.229;
}

.longevity-title em {
    font-style: italic;
}

.longevity-gold {
    color: transparent;
    background: var(--lgv-gradient);
    -webkit-background-clip: text;
    background-clip: text;
}

/* Курсив во второй строке заголовка: в макете градиент натянут на весь текстовый блок, строке достаётся его нижняя половина. */
.longevity-title br + .longevity-gold {
    background-size: 100% 200%;
    background-position: 0 100%;
}

/* Курсив в начале или в конце однострочного заголовка: в макете это часть градиента на всю строку. */
.longevity-gold--start {
    background-size: 250% 100%;
    background-position: 0 0;
}

.longevity-gold--end {
    background-size: 250% 100%;
    background-position: 100% 0;
}

.longevity-accent {
    color: var(--lgv-gold-deep);
}

.longevity-glass {
    background: var(--lgv-glass);
    border: 1px solid var(--color-white, #fff);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
}

/* Кнопки сайта (.button--*) с габаритами макета: 64px высота, круг 52px. */
.longevity .button {
    flex-shrink: 0;
    vertical-align: top;
}

/* ---------- 1. Hero ---------- */

.longevity-hero {
    position: relative;
    height: calc(1028 * var(--lp));
    overflow: hidden;
    color: var(--color-white, #fff);
    background: #8a6f58;
}

.longevity-hero::after {
    position: absolute;
    inset: 0;
    content: "";
    background: rgb(0 0 0 / 38%);
}

.longevity-hero__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.longevity .longevity-hero__container {
    position: relative;
    z-index: 1;
    max-width: calc(1920 * var(--lp));
    height: 100%;
    margin-inline: auto;
}

.longevity-hero__logo {
    position: absolute;
    inset: 0 auto auto 0;
    width: calc(760 * var(--lp));
    height: calc(300 * var(--lp));
    font-family: var(--ff-heading, 'Playfair Display'), serif;
    font-weight: 400;
}

.longevity-hero__logo-line {
    position: absolute;
    top: calc(134 * var(--lp));
    left: calc(51 * var(--lp));
    width: calc(214 * var(--lp));
    height: max(2px, calc(3 * var(--lp)));
    background: currentColor;
}

.longevity-hero__logo-top,
.longevity-hero__logo-bottom {
    position: absolute;
    line-height: calc(86 * var(--lp));
    text-transform: uppercase;
    white-space: nowrap;
}

.longevity-hero__logo-top {
    top: calc(86 * var(--lp));
    left: calc(331 * var(--lp));
    font-size: calc(96 * var(--lp));
}

.longevity-hero__logo-bottom {
    top: calc(208 * var(--lp));
    left: calc(34 * var(--lp));
    font-size: calc(128 * var(--lp));
    font-style: italic;
}

.longevity-hero__badge {
    position: absolute;
    top: calc(393 * var(--lp));
    left: calc(31 * var(--lp));
    width: calc(625 * var(--lp));
    height: calc(145 * var(--lp));
    padding: calc(19 * var(--lp)) calc(38 * var(--lp)) 0;
    border-radius: calc(19 * var(--lp));
}

.longevity-hero__badge-title {
    font-family: var(--ff-heading, 'Playfair Display'), serif;
    font-size: calc(48 * var(--lp));
    font-weight: 700;
    line-height: 1.125;
}

.longevity-hero__badge-text {
    margin-top: calc(12 * var(--lp));
}

.longevity-hero__badge-text,
.longevity-hero__title,
.longevity-hero__subtitle {
    font-size: max(16px, calc(28 * var(--lp)));
    font-weight: 600;
    line-height: 1.2857;
    letter-spacing: 0.03em;
}

.longevity-hero__title,
.longevity-hero__subtitle {
    position: absolute;
    left: calc(31 * var(--lp));
    font-weight: 700;
}

.longevity-hero__title {
    top: calc(577 * var(--lp));
    width: calc(777 * var(--lp));
}

.longevity-hero__subtitle {
    top: calc(661 * var(--lp));
    white-space: nowrap;
}

.longevity-hero__actions {
    position: absolute;
    top: calc(892 * var(--lp));
    left: calc(31 * var(--lp));
    display: flex;
    gap: calc(37 * var(--lp));
}

.longevity-hero__list {
    position: absolute;
    top: calc(538 * var(--lp));
    left: calc(1200 * var(--lp));
    display: flex;
    flex-direction: column;
    gap: calc(32 * var(--lp));
    width: calc(660 * var(--lp));
    height: calc(418 * var(--lp));
    padding: calc(35 * var(--lp)) calc(24 * var(--lp)) 0 calc(67 * var(--lp));
    border-radius: calc(19 * var(--lp));
    font-size: max(16px, calc(28 * var(--lp)));
    line-height: 1.2857;
    letter-spacing: 0.03em;
}

.longevity-hero__list li {
    position: relative;
}

.longevity-hero__list li::before {
    position: absolute;
    top: 0.62em;
    left: calc(-22 * var(--lp));
    width: calc(5 * var(--lp));
    height: calc(5 * var(--lp));
    content: "";
    background: currentColor;
    border-radius: 50%;
}

/* Перенос строк как в макете */
.longevity-hero__list li:nth-child(2) {
    max-width: calc(440 * var(--lp));
}

.longevity-hero__list li:nth-child(3) {
    max-width: calc(540 * var(--lp));
}

.longevity-hero__list li:nth-child(4) {
    max-width: calc(500 * var(--lp));
}

/* ---------- 2. Intro ---------- */

.longevity-intro {
    padding-top: calc(130 * var(--lp));
}

.longevity .longevity-intro__container,
.longevity .longevity-philosophy__container,
.longevity .longevity-factors__container,
.longevity .longevity-approach__container,
.longevity .longevity-steps__container,
.longevity .longevity-composition__container,
.longevity .longevity-tasks__container,
.longevity .longevity-choose__container,
.longevity .longevity-club__container,
.longevity .longevity-directions__container,
.longevity .longevity-shop__container {
    position: relative;
    max-width: calc(1920 * var(--lp));
    margin-inline: auto;
    padding-inline: calc(31 * var(--lp));
}

.longevity .longevity-intro__container {
    display: flex;
    align-items: flex-start;
}

.longevity-intro__image {
    width: calc(583 * var(--lp));
    height: calc(600 * var(--lp));
    object-fit: cover;
}

.longevity-intro__list {
    width: calc(786 * var(--lp));
    margin: calc(12 * var(--lp)) 0 0 calc(148 * var(--lp));
}

.longevity-intro__item {
    padding-block: calc(24 * var(--lp) - 1px) calc(24 * var(--lp));
    font-size: max(17px, calc(28 * var(--lp)));
    font-weight: 600;
    line-height: 1.2857;
    letter-spacing: 0.03em;
    border-top: 1px solid var(--lgv-muted);
}

.longevity-intro__item:last-child {
    border-bottom: 1px solid var(--lgv-muted);
}

/* ---------- 3. Философия ---------- */

.longevity-philosophy {
    padding-block: calc(180 * var(--lp)) calc(202 * var(--lp));
}

.longevity-philosophy__lead,
.longevity-philosophy__text {
    font-size: max(16px, calc(28 * var(--lp)));
    line-height: 1.2857;
    letter-spacing: 0.03em;
    color: var(--lgv-text);
}

.longevity-philosophy__lead {
    width: calc(950 * var(--lp));
    margin-top: calc(91 * var(--lp));
}

.longevity-philosophy b,
.longevity-philosophy .longevity-accent {
    font-weight: 600;
}

.longevity-philosophy__collage {
    position: relative;
    height: calc(759 * var(--lp));
    margin-top: calc(78 * var(--lp));
}

/* На десктопе обёртка не участвует в раскладке: картинки позиционируются от коллажа. */
.longevity-philosophy__images {
    display: contents;
}

.longevity-philosophy__main,
.longevity-philosophy__serum,
.longevity-philosophy__hands,
.longevity-philosophy__text {
    position: absolute;
}

.longevity-philosophy__main {
    top: 0;
    left: calc(389 * var(--lp));
    width: calc(651 * var(--lp));
    height: calc(759 * var(--lp));
}

.longevity-philosophy__serum {
    top: calc(309 * var(--lp));
    left: calc(188 * var(--lp));
    width: calc(366 * var(--lp));
    height: calc(366 * var(--lp));
}

.longevity-philosophy__hands {
    top: calc(129 * var(--lp));
    left: calc(953 * var(--lp));
    width: calc(625 * var(--lp));
    height: calc(268 * var(--lp));
}

.longevity-philosophy__text {
    left: calc(1114 * var(--lp));
}

.longevity-philosophy__text--top {
    top: 0;
    width: calc(629 * var(--lp));
}

.longevity-philosophy__text--bottom {
    top: calc(455 * var(--lp));
    width: calc(718 * var(--lp));
}

/* ---------- 4. Что влияет на старение ---------- */

.longevity-factors {
    position: relative;
    height: calc(1284 * var(--lp));
    overflow: hidden;
}

.longevity-factors__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.longevity .longevity-factors__container {
    height: 100%;
}

.longevity-factors__head {
    position: relative;
    z-index: 1;
    padding-top: calc(74 * var(--lp));
}

.longevity-factors__aside {
    position: absolute;
    top: calc(90 * var(--lp));
    left: calc(1266 * var(--lp));
    width: calc(576 * var(--lp));
    font-size: max(16px, calc(28 * var(--lp)));
    line-height: 1.2857;
    letter-spacing: 0.03em;
    color: var(--lgv-text);
}

.longevity-factors__map {
    position: absolute;
    inset: 0;
}

.longevity-factors__center {
    position: absolute;
    top: calc(568 * var(--lp));
    left: calc(475 * var(--lp));
    display: flex;
    align-items: flex-start;
    justify-content: center;
    width: calc(959 * var(--lp));
    height: calc(418 * var(--lp));
    padding: calc(84 * var(--lp)) calc(60 * var(--lp)) 0;
    font-size: max(15px, calc(28 * var(--lp)));
    font-weight: 500;
    line-height: 1.2857;
    letter-spacing: 0.03em;
    color: var(--lgv-text);
    text-align: center;
    background: rgb(255 255 255 / 12%);
    border-color: var(--lgv-gold-deep);
    border-radius: calc(130 * var(--lp));
}

.longevity-factors__item {
    position: absolute;
    top: calc(var(--y) * var(--lp));
    left: calc(var(--x) * var(--lp));
    width: calc(var(--w) * var(--lp));
    font-size: max(15px, calc(28 * var(--lp)));
    font-weight: 500;
    line-height: 1.2857;
    letter-spacing: 0.03em;
    color: var(--lgv-text);
    text-align: center;
}

.longevity-factors__item::before {
    position: absolute;
    top: calc(var(--dot-y) * var(--lp));
    left: calc(var(--dot-x) * var(--lp));
    width: calc(22 * var(--lp));
    height: calc(22 * var(--lp));
    content: "";
    background: var(--lgv-gold-deep);
    border-radius: 50%;
}

/* ---------- 5. Как изменился подход ---------- */

.longevity-approach {
    padding-top: calc(105 * var(--lp));
}

.longevity-approach__head {
    display: flex;
    align-items: flex-start;
}

.longevity-approach__head .longevity-title {
    width: calc(1136 * var(--lp));
}

.longevity-approach__aside {
    width: calc(675 * var(--lp));
    margin-top: calc(51 * var(--lp));
    font-size: max(16px, calc(28 * var(--lp)));
    line-height: 1.0357;
    letter-spacing: 0.03em;
    color: var(--lgv-text);
}

.longevity-approach__bar {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-top: calc(80 * var(--lp));
    padding-inline: calc(38 * var(--lp)) calc(58 * var(--lp));
}

.longevity-approach__switch {
    position: relative;
    display: flex;
    gap: calc(17 * var(--lp));
    width: calc(409 * var(--lp));
    height: calc(76 * var(--lp));
    padding: calc(10 * var(--lp)) calc(20 * var(--lp)) calc(10 * var(--lp)) calc(12 * var(--lp));
    background: var(--lgv-gradient);
    border-radius: calc(40 * var(--lp));
}

.longevity-approach__thumb {
    position: absolute;
    top: calc(10 * var(--lp));
    left: calc(12 * var(--lp));
    width: calc(180 * var(--lp));
    height: calc(56 * var(--lp));
    background: var(--color-white, #fff);
    border-radius: calc(57 * var(--lp));
    transition: transform 0.5s var(--easing-standard, ease);
}

.longevity-approach__switch[data-active="now"] .longevity-approach__thumb {
    transform: translateX(calc(197 * var(--lp)));
}

.longevity-approach__tab {
    position: relative;
    z-index: 1;
    width: calc(180 * var(--lp));
    height: 100%;
    padding: 0;
    font-family: inherit;
    font-size: max(15px, calc(24 * var(--lp)));
    font-weight: 500;
    color: var(--color-white, #fff);
    cursor: pointer;
    background: none;
    border: 0;
    transition: color 0.5s var(--easing-standard, ease);
}

.longevity-approach__tab[aria-selected="true"] {
    color: var(--lgv-dark);
}

.longevity-approach__panels {
    display: grid;
    margin: calc(26 * var(--lp)) calc(37 * var(--lp)) 0 calc(38 * var(--lp));
}

.longevity-approach__panel {
    display: grid;
    grid-area: 1 / 1;
    grid-template-columns: 1fr calc(791 * var(--lp));
    column-gap: calc(40 * var(--lp));
    padding: calc(34 * var(--lp)) calc(52 * var(--lp)) calc(26 * var(--lp)) calc(35 * var(--lp));
    background: var(--lgv-cream);
    border-radius: calc(28 * var(--lp));
    transition: opacity 0.5s var(--easing-standard, ease), visibility 0.5s;
}

/* Оба состояния лежат в одной ячейке: высота блока не прыгает при переключении. */
.longevity-approach__panel[hidden] {
    display: grid;
    visibility: hidden;
    opacity: 0;
}

.longevity-approach__content {
    padding-top: calc(16 * var(--lp));
}

.longevity-approach__list {
    display: flex;
    flex-direction: column;
    gap: calc(36 * var(--lp));
}

.longevity-approach__item {
    position: relative;
    display: flex;
    align-items: center;
    min-height: calc(24 * var(--lp));
    padding-left: calc(45 * var(--lp));
    font-size: max(15px, calc(20 * var(--lp)));
    line-height: 1.4;
    letter-spacing: 0.03em;
    color: #000;
}

.longevity-approach__panel--now .longevity-approach__item {
    max-width: calc(840 * var(--lp));
}

.longevity-approach__panel--now .longevity-approach__item::before {
    position: absolute;
    top: 50%;
    left: 0;
    width: calc(24 * var(--lp));
    height: calc(24 * var(--lp));
    content: "";
    background: url("../img/longevity/icon-tick.svg") center / contain no-repeat;
    transform: translateY(-50%);
}

.longevity-approach__panel--before .longevity-approach__item::before {
    position: absolute;
    top: 50%;
    left: calc(1 * var(--lp));
    width: calc(27 * var(--lp));
    height: 2px;
    content: "";
    background: var(--lgv-gold-deep);
}

.longevity-approach__panel--now .longevity-approach__item:nth-child(1) { max-width: calc(730 * var(--lp)); }
.longevity-approach__panel--now .longevity-approach__item:nth-child(2) { max-width: calc(625 * var(--lp)); }
.longevity-approach__panel--before .longevity-approach__item:nth-child(1) { max-width: calc(730 * var(--lp)); }
.longevity-approach__panel--before .longevity-approach__item:nth-child(2) { max-width: calc(675 * var(--lp)); }
.longevity-approach__panel--before .longevity-approach__item:nth-child(3) { max-width: calc(800 * var(--lp)); }
.longevity-approach__panel--before .longevity-approach__item:nth-child(4) { max-width: calc(650 * var(--lp)); }

.longevity-approach__result {
    width: calc(783 * var(--lp));
    margin-top: calc(44 * var(--lp));
    padding: calc(22 * var(--lp)) calc(35 * var(--lp)) calc(19 * var(--lp));
    color: var(--color-white, #fff);
    background: var(--lgv-dark);
    border-radius: calc(28 * var(--lp));
}

.longevity-approach__result-title,
.longevity-approach__result-text {
    font-size: max(15px, calc(20 * var(--lp)));
    line-height: 1.4;
    letter-spacing: 0.03em;
}

.longevity-approach__result-title {
    font-weight: 700;
}

.longevity-approach__result-text {
    max-width: calc(700 * var(--lp));
    margin-top: calc(16 * var(--lp));
}

.longevity-approach__panel--before .longevity-approach__result-text {
    max-width: calc(530 * var(--lp));
}

.longevity-approach__media {
    position: relative;
}

.longevity-approach__image {
    width: 100%;
    height: calc(637 * var(--lp));
    object-fit: cover;
    border-radius: calc(28 * var(--lp));
}

.longevity-approach__button {
    margin: calc(60 * var(--lp)) 0 0 calc(38 * var(--lp));
}

.longevity-approach__tag {
    position: absolute;
    top: calc(536 * var(--lp));
    left: calc(157 * var(--lp));
    width: calc(497 * var(--lp));
    height: calc(48 * var(--lp));
    padding: calc(4 * var(--lp)) 0 0 calc(19 * var(--lp));
    font-size: max(16px, calc(28 * var(--lp)));
    font-weight: 600;
    line-height: 1.2857;
    letter-spacing: 0.03em;
    color: var(--color-white, #fff);
    white-space: nowrap;
    background: rgb(137 137 137 / 29%);
    border-radius: calc(19 * var(--lp));
}

/* ---------- 6. Путь пациента ---------- */

.longevity-steps {
    padding-block: calc(216 * var(--lp)) calc(197 * var(--lp));
}

.longevity-steps__list {
    display: grid;
    grid-template-columns: calc(397 * var(--lp)) repeat(3, calc(379 * var(--lp))) 1fr;
    margin-top: calc(91 * var(--lp));
}

.longevity-steps__item {
    position: relative;
}

.longevity-steps__item:not(:last-child)::after {
    position: absolute;
    top: calc(28 * var(--lp));
    left: calc(120 * var(--lp));
    width: calc(215 * var(--lp));
    height: 1px;
    content: "";
    background: var(--lgv-text);
}

.longevity-steps__number {
    display: inline-block;
    font-family: var(--ff-heading, 'Playfair Display'), serif;
    font-size: max(28px, calc(40 * var(--lp)));
    font-style: italic;
    line-height: 1.2;
}

.longevity-steps__text {
    margin-top: calc(16 * var(--lp));
    font-size: max(15px, calc(20 * var(--lp)));
    line-height: 1.4;
    letter-spacing: 0.03em;
}

.longevity-steps__item:nth-child(1) .longevity-steps__text { max-width: calc(317 * var(--lp)); }
.longevity-steps__item:nth-child(2) .longevity-steps__text { max-width: calc(329 * var(--lp)); }
.longevity-steps__item:nth-child(3) .longevity-steps__text { max-width: calc(342 * var(--lp)); }
.longevity-steps__item:nth-child(4) .longevity-steps__text { max-width: calc(323 * var(--lp)); }
.longevity-steps__item:nth-child(5) .longevity-steps__text { max-width: calc(276 * var(--lp)); }

.longevity-steps__button {
    margin: calc(92 * var(--lp)) 0 0 calc(14 * var(--lp));
}

/* ---------- 7. Состав программы ---------- */

.longevity-composition {
    padding-block: calc(67 * var(--lp)) calc(42 * var(--lp));
    background: var(--lgv-cream);
}

.longevity-composition__grid {
    display: grid;
    grid-template-columns: calc(832 * var(--lp)) calc(481 * var(--lp)) calc(481 * var(--lp));
    grid-auto-rows: calc(212 * var(--lp));
    gap: calc(28 * var(--lp)) calc(23 * var(--lp));
    margin-top: calc(44 * var(--lp));
}

.longevity-composition__card {
    position: relative;
    z-index: 0;
    overflow: hidden;
    padding: calc(13 * var(--lp)) calc(20 * var(--lp)) 0;
    border-radius: calc(28 * var(--lp));
    transition: transform 0.4s var(--easing-standard, ease), box-shadow 0.4s var(--easing-standard, ease);
}

.longevity-composition__card:hover {
    z-index: 1;
    box-shadow: var(--shadow-soft, 0 10px 30px rgb(49 42 35 / 8%));
    transform: scale(1.03);
}

.longevity-composition__card--main {
    grid-row: span 2;
    width: calc(807 * var(--lp));
    padding: calc(44 * var(--lp)) 0 0 calc(45 * var(--lp));
    border-radius: calc(36 * var(--lp));
}

.longevity-composition__image {
    position: absolute;
    inset: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.longevity-composition__title {
    font-family: var(--ff-heading, 'Playfair Display'), serif;
    font-size: max(28px, calc(48 * var(--lp)));
    line-height: 1.2917;
    color: var(--lgv-dark);
}

.longevity-composition__subtitle {
    margin: calc(44 * var(--lp)) 0 0 calc(-5 * var(--lp));
    font-size: max(16px, calc(24 * var(--lp)));
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.03em;
    color: var(--lgv-text);
}

.longevity-composition__text {
    max-width: calc(300 * var(--lp));
    margin-top: calc(10 * var(--lp));
    font-size: max(14px, calc(20 * var(--lp)));
    line-height: 1.4;
    letter-spacing: 0.03em;
    color: var(--lgv-text);
}

.longevity-composition__card--main .longevity-composition__text {
    max-width: calc(530 * var(--lp));
    margin-top: calc(8 * var(--lp));
    line-height: 1.6;
}

/* ---------- 8. Задачи программы ---------- */

.longevity-tasks {
    padding-top: calc(194 * var(--lp));
}

.longevity-tasks__list {
    width: calc(786 * var(--lp));
    margin-top: calc(46 * var(--lp));
}

.longevity-tasks__item {
    position: relative;
    border-top: 1px solid var(--lgv-muted);
    transition: min-height 0.5s var(--easing-standard, ease), border-color 0.5s;
}

.longevity-tasks__item.is-open {
    min-height: calc(224 * var(--lp));
    border-top-color: #000;
}

.longevity-tasks__heading {
    font: inherit;
}

.longevity-tasks__toggle {
    display: block;
    width: 100%;
    padding: calc(24 * var(--lp) - 1px) 0 calc(24 * var(--lp));
    font-family: inherit;
    font-size: max(17px, calc(28 * var(--lp)));
    font-weight: 600;
    line-height: 1.2857;
    letter-spacing: 0.03em;
    color: var(--lgv-muted);
    text-align: left;
    cursor: pointer;
    background: none;
    border: 0;
    transition: color 0.4s, padding 0.5s var(--easing-standard, ease);
}

.longevity-tasks__toggle:hover,
.longevity-tasks__item.is-open .longevity-tasks__toggle {
    color: var(--lgv-dark);
}

.longevity-tasks__item.is-open .longevity-tasks__toggle {
    padding-block: calc(29 * var(--lp) - 1px) calc(29 * var(--lp));
}

.longevity-tasks__panel {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.5s var(--easing-standard, ease);
}

.longevity-tasks__item.is-open .longevity-tasks__panel {
    grid-template-rows: 1fr;
}

.longevity-tasks__panel-inner {
    overflow: hidden;
}

.longevity-tasks__text {
    max-width: calc(525 * var(--lp));
    padding-bottom: calc(29 * var(--lp));
    font-size: max(15px, calc(20 * var(--lp)));
    line-height: 1.2;
    letter-spacing: 0.03em;
}

.longevity-tasks__image {
    position: absolute;
    top: -1px;
    left: calc(100% + 18 * var(--lp));
    width: calc(648 * var(--lp));
    height: calc(224 * var(--lp));
    object-fit: cover;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.5s var(--easing-standard, ease);
}

.longevity-tasks__item.is-open .longevity-tasks__image {
    opacity: 1;
}

.longevity-tasks__item:last-child {
    border-bottom: 1px solid var(--lgv-muted);
}

/* Нумерованные пункты (задачи и привилегии клуба) */
.longevity-gains {
    display: grid;
    grid-template-columns: calc(537 * var(--lp)) calc(465 * var(--lp)) calc(465 * var(--lp)) 1fr;
    margin-top: calc(145 * var(--lp));
}

.longevity-gains__number {
    display: block;
    font-family: var(--ff-heading, 'Playfair Display'), serif;
    font-size: max(30px, calc(48 * var(--lp)));
    font-style: italic;
    line-height: 1.125;
    color: var(--lgv-gold);
}

.longevity-gains__title {
    margin-top: calc(10 * var(--lp));
    font-size: max(16px, calc(24 * var(--lp)));
    font-weight: 600;
    line-height: 1.1667;
    letter-spacing: 0.03em;
}

.longevity-gains__text {
    margin-top: calc(16 * var(--lp));
    font-size: max(15px, calc(20 * var(--lp)));
    line-height: 1.2;
    letter-spacing: 0.03em;
    color: var(--lgv-muted);
}

.longevity-gains__item:nth-child(1) .longevity-gains__title { max-width: calc(343 * var(--lp)); }
.longevity-gains__item:nth-child(2) .longevity-gains__title { max-width: calc(318 * var(--lp)); }
.longevity-gains__item:nth-child(3) .longevity-gains__title { max-width: calc(352 * var(--lp)); }
.longevity-gains__item:nth-child(4) .longevity-gains__title { max-width: calc(285 * var(--lp)); }
.longevity-gains__item:nth-child(1) .longevity-gains__text { max-width: calc(424 * var(--lp)); }
.longevity-gains__item:nth-child(2) .longevity-gains__text { max-width: calc(352 * var(--lp)); }
.longevity-gains__item:nth-child(3) .longevity-gains__text { max-width: calc(333 * var(--lp)); }
.longevity-gains__item:nth-child(4) .longevity-gains__text { max-width: calc(371 * var(--lp)); }

.longevity-gains--club {
    grid-template-columns: calc(537 * var(--lp)) calc(465 * var(--lp)) calc(427 * var(--lp)) 1fr;
    margin-top: calc(75 * var(--lp));
}

.longevity-gains--club .longevity-gains__item:nth-child(1) .longevity-gains__title { max-width: calc(372 * var(--lp)); }
.longevity-gains--club .longevity-gains__item:nth-child(3) .longevity-gains__title { max-width: calc(282 * var(--lp)); }
.longevity-gains--club .longevity-gains__item:nth-child(4) .longevity-gains__title { max-width: calc(354 * var(--lp)); }
.longevity-gains--club .longevity-gains__item:nth-child(3) .longevity-gains__text { max-width: calc(314 * var(--lp)); }
.longevity-gains--club .longevity-gains__item:nth-child(4) .longevity-gains__text { max-width: calc(306 * var(--lp)); }

/* ---------- 9. Команда врачей (блок doctors сайта) ---------- */

.longevity-team.doctors {
    padding-block: calc(147 * var(--lp)) 0;
    margin: 0;
}

.longevity-team__text {
    max-width: calc(432 * var(--lp));
    font-size: max(15px, calc(20 * var(--lp)));
    line-height: 1.4;
    letter-spacing: 0.03em;
}

.longevity-team__text:first-child {
    max-width: calc(425 * var(--lp));
}

.longevity-team__text + .longevity-team__text {
    margin-top: calc(77 * var(--lp));
}

.longevity-team .doctor-card__label {
    align-self: flex-start;
    font-size: max(13px, calc(18 * var(--lp)));
    font-style: italic;
    line-height: 1.3333;
    letter-spacing: 0.03em;
    color: transparent;
    background: var(--lgv-gradient);
    -webkit-background-clip: text;
    background-clip: text;
}

.longevity-team .doctor-card__more {
    display: none;
}

/* Карточки и управление слайдером — по макету; ниже 992px остаётся вид блока врачей сайта. */
@media (min-width: 62em) {
    .longevity-team .doctors__container {
        max-width: calc(1920 * var(--lp));
        margin-inline: auto;
        padding-inline: calc(32 * var(--lp)) calc(31 * var(--lp));
    }

    .longevity-team .doctors__heading {
        block-size: auto;
        margin: 0 0 calc(52 * var(--lp));
    }

    .longevity-team .doctors__layout {
        display: grid;
        grid-template-columns: calc(589 * var(--lp)) minmax(0, 1fr);
        gap: 0;
    }

    .longevity-team .doctors__info {
        position: static;
        grid-column: auto;
        display: block;
        max-inline-size: none;
    }

    /* Кнопка — внизу левой колонки, на одной линии с управлением слайдером. */
    .longevity-team__button {
        grid-column: 1;
        grid-row: 2;
        align-self: end;
        justify-self: start;
        margin-top: calc(48 * var(--lp));
    }

    .longevity-team .doctors__slider-wrapper {
        grid-column: auto;
        grid-row: 1 / span 2;
    }

    .longevity-team .doctors__slide {
        box-sizing: border-box;
        width: calc(400 * var(--lp));
        padding-right: calc(14 * var(--lp));
    }

    .longevity-team .doctor-card,
    .longevity-team [class*=active] .doctor-card {
        inline-size: 100%;
        margin-block-start: 0;
        transform: none;
    }

    .longevity-team .doctor-card__photo {
        height: calc(538 * var(--lp));
        padding-block-end: 0;
        background-color: #d9d9d9;
    }

    .longevity-team .doctor-card__photo-link,
    .longevity-team .doctor-card__photo .image-placeholder {
        height: 100%;
        aspect-ratio: auto;
    }

    .longevity-team .doctor-card__photo-img {
        height: 100%;
    }

    .longevity-team .doctor-card__info {
        inset-inline: 0;
        inset-block-end: 0;
        min-height: calc(156 * var(--lp));
        padding: calc(46 * var(--lp)) calc(18 * var(--lp)) calc(14 * var(--lp));
        background-color: rgb(255 255 255 / 73%);
    }

    .longevity-team .doctor-card__label {
        position: absolute;
        top: calc(16 * var(--lp));
        left: calc(18 * var(--lp));
    }

    .longevity-team .doctor-card__name {
        margin: 0;
        font-size: max(16px, calc(24 * var(--lp)));
        line-height: 1.3333;
        letter-spacing: 0.03em;
    }

    .longevity-team .doctor-card__position {
        margin-top: calc(2 * var(--lp));
        font-size: max(13px, calc(18 * var(--lp)));
        line-height: 1.3333;
        letter-spacing: 0.03em;
    }

    /* Ссылку .doctor-card__link анимирует GSAP инлайн-стилями (показ по наведению);
       в макете «Подробнее» видна всегда — выводим отдельную ссылку. */
    .longevity-team .doctor-card__link {
        display: none;
    }

    .longevity-team .doctor-card__more {
        display: block;
        align-self: flex-start;
        margin-top: calc(19 * var(--lp));
        font-size: max(13px, calc(18 * var(--lp)));
        line-height: 1.3333;
        letter-spacing: 0.03em;
        color: var(--lgv-gold);
        text-transform: uppercase;
    }

    .longevity-team .doctors__controls {
        gap: calc(8 * var(--lp));
        margin: calc(64 * var(--lp)) calc(55 * var(--lp)) 0 calc(159 * var(--lp));
        padding: calc(8 * var(--lp));
    }

    .longevity-team .doctors__pagination {
        margin-right: calc(16 * var(--lp));
    }
}

/* ---------- 10. Пациенты выбирают ---------- */

.longevity-choose {
    padding-block: calc(162 * var(--lp));
}

.longevity-choose__layout {
    display: flex;
    align-items: flex-start;
    margin-top: calc(74 * var(--lp));
}

.longevity-choose__image {
    width: calc(338 * var(--lp));
    height: calc(587 * var(--lp));
    margin-left: calc(-1 * var(--lp));
    object-fit: cover;
}

.longevity-choose__list {
    display: grid;
    flex: 1;
    grid-template-columns: calc(755 * var(--lp)) 1fr;
    grid-template-rows: calc(214 * var(--lp)) calc(206 * var(--lp)) auto;
    margin-left: calc(47 * var(--lp));
}

.longevity-choose__item {
    position: relative;
    padding-top: calc(29 * var(--lp));
}

.longevity-choose__item::before {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(635 * var(--lp));
    height: 1px;
    content: "";
    background: #000;
}

.longevity-choose__title {
    max-width: calc(720 * var(--lp));
    font-size: max(17px, calc(28 * var(--lp)));
    font-weight: 600;
    line-height: 1.2857;
    letter-spacing: 0.03em;
}

.longevity-choose__item:nth-child(2) .longevity-choose__title {
    max-width: calc(600 * var(--lp));
}

.longevity-choose__text {
    max-width: calc(596 * var(--lp));
    margin-top: calc(29 * var(--lp));
    font-size: max(15px, calc(20 * var(--lp)));
    line-height: 1.2;
    letter-spacing: 0.03em;
}

.longevity-choose__item:nth-child(3) .longevity-choose__text,
.longevity-choose__item:nth-child(4) .longevity-choose__text {
    max-width: calc(669 * var(--lp));
}

/* ---------- 11. Клуб привилегий ---------- */

.longevity-club {
    padding-block: calc(39 * var(--lp)) calc(139 * var(--lp));
    background: var(--lgv-cream);
}

.longevity-club__head {
    display: grid;
    grid-template-columns: calc(971 * var(--lp)) calc(801 * var(--lp));
    align-items: start;
}

.longevity-club__eyebrow {
    font-size: max(14px, calc(20 * var(--lp)));
    font-weight: 700;
    line-height: 1.27;
    letter-spacing: 0.132em;
    color: var(--lgv-gold-deep);
    text-transform: uppercase;
}

.longevity-club .longevity-title {
    margin-top: calc(39 * var(--lp));
}

.longevity-club__title-main,
.longevity-directions__title-main {
    color: var(--lgv-text);
}

.longevity-club__text {
    max-width: calc(587 * var(--lp));
    margin-top: calc(22 * var(--lp));
    font-size: max(15px, calc(20 * var(--lp)));
    line-height: 1.4;
    letter-spacing: 0.03em;
}

.longevity-club__button {
    margin-top: calc(66 * var(--lp));
}

.longevity-club__image {
    width: 100%;
    height: calc(319 * var(--lp));
    margin-top: calc(7 * var(--lp));
    object-fit: cover;
}

.longevity-club__discounts {
    display: grid;
    grid-template-columns: calc(770 * var(--lp)) calc(770 * var(--lp));
    column-gap: calc(231 * var(--lp));
    align-items: start;
    margin-top: calc(66 * var(--lp));
    padding-left: calc(2 * var(--lp));
}

.longevity-club__column {
    display: flex;
    flex-direction: column;
    gap: calc(47 * var(--lp));
}

.longevity-club__discount {
    background: var(--color-white, #fff);
    border: 1px solid var(--lgv-gold-deep);
}

.longevity-club__row {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: calc(83 * var(--lp) - 2px);
    min-height: 56px;
    padding: 0 calc(35 * var(--lp)) 0 calc(26 * var(--lp));
}

.longevity-club__value {
    font-family: var(--ff-heading, 'Playfair Display'), serif;
    font-size: max(30px, calc(48 * var(--lp)));
    font-style: italic;
    line-height: 1.125;
    color: var(--lgv-gold);
    white-space: nowrap;
}

.longevity-club__name {
    position: absolute;
    top: 50%;
    left: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: calc(4 * var(--lp));
    width: max-content;
    max-width: 60%;
    text-align: center;
    transform: translate(-50%, -50%);
}

.longevity-club__service {
    font-size: max(16px, calc(24 * var(--lp)));
    font-weight: 600;
    line-height: 1.0875;
    color: var(--lgv-brown);
}

.longevity-club__note {
    font-size: max(14px, calc(20 * var(--lp)));
    line-height: 1.2;
    letter-spacing: 0.03em;
    color: var(--lgv-muted);
}

.longevity-club__toggle {
    display: flex;
    width: calc(42 * var(--lp));
    min-width: 32px;
    height: calc(42 * var(--lp));
    min-height: 32px;
    padding: 0;
    cursor: pointer;
    background: none;
    border: 0;
    transition: transform 0.4s var(--easing-standard, ease);
}

.longevity-club__toggle svg {
    width: 100%;
    height: 100%;
}

.longevity-club__toggle-v {
    transform-origin: 21px 21px;
    transition: transform 0.4s var(--easing-standard, ease);
}

.longevity-club__discount.is-open .longevity-club__toggle-v {
    transform: scaleY(0);
}

.longevity-club__panel {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.5s var(--easing-standard, ease);
}

.longevity-club__discount.is-open .longevity-club__panel {
    grid-template-rows: 1fr;
}

.longevity-club__procedures {
    display: flex;
    flex-direction: column;
    gap: calc(24 * var(--lp));
    overflow: hidden;
    padding: 0 calc(40 * var(--lp)) 0 calc(76 * var(--lp));
}

.longevity-club__discount.is-open .longevity-club__procedures {
    padding-block: calc(23 * var(--lp)) calc(25 * var(--lp));
}

.longevity-club__procedures li {
    position: relative;
    max-width: calc(380 * var(--lp));
    font-size: max(14px, calc(20 * var(--lp)));
    line-height: 1.2;
    letter-spacing: 0.03em;
    color: var(--lgv-muted);
}

.longevity-club__procedures li::before {
    position: absolute;
    top: 0.42em;
    left: calc(-50 * var(--lp));
    width: calc(7 * var(--lp));
    min-width: 5px;
    height: calc(7 * var(--lp));
    min-height: 5px;
    content: "";
    background: var(--lgv-gold-deep);
    border-radius: 50%;
}

/* ---------- 12. Ключевые направления ---------- */

.longevity-directions {
    padding-top: calc(38 * var(--lp));
}

.longevity .longevity-directions__container {
    padding-left: calc(33 * var(--lp));
}

.longevity-directions__grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: calc(52 * var(--lp)) calc(71 * var(--lp));
    width: calc(1813 * var(--lp));
    margin-top: calc(89 * var(--lp));
}

.longevity-directions__item {
    grid-column: span 2;
    height: calc(510 * var(--lp));
}

.longevity-directions__item:nth-child(n + 4) {
    grid-column: span 3;
    height: calc(382 * var(--lp));
}

.longevity-directions__card {
    position: relative;
    display: block;
    height: 100%;
    overflow: hidden;
    color: inherit;
    text-decoration: none;
}

.longevity-directions__image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s var(--easing-standard, ease);
}

a.longevity-directions__card:hover .longevity-directions__image {
    transform: scale(1.04);
}

.longevity-directions__body {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    min-height: calc(228 * var(--lp));
    padding: calc(16 * var(--lp)) calc(30 * var(--lp)) calc(19 * var(--lp)) calc(21 * var(--lp));
    background: rgb(255 255 255 / 93%);
}

.longevity-directions__item:nth-child(n + 4) .longevity-directions__body {
    min-height: calc(183 * var(--lp));
    padding: calc(40 * var(--lp)) calc(30 * var(--lp)) calc(19 * var(--lp)) calc(20 * var(--lp));
}

.longevity-directions__eyebrow {
    align-self: flex-start;
    margin-bottom: calc(22 * var(--lp));
    font-size: max(15px, calc(24 * var(--lp)));
    font-weight: 600;
    line-height: 1.1667;
}

.longevity-directions__name {
    font-size: max(18px, calc(32 * var(--lp)));
    font-weight: 600;
    line-height: 0.875;
    letter-spacing: 0.03em;
    color: var(--lgv-dark);
}

.longevity-directions__text {
    max-width: calc(461 * var(--lp));
    margin-top: calc(19 * var(--lp));
    font-size: max(14px, calc(20 * var(--lp)));
    line-height: 1.2;
    letter-spacing: 0.03em;
    color: var(--lgv-muted);
}

.longevity-directions__item:nth-child(2) .longevity-directions__text,
.longevity-directions__item:nth-child(3) .longevity-directions__text {
    max-width: calc(404 * var(--lp));
}

.longevity-directions__item:nth-child(n + 4) .longevity-directions__text {
    max-width: calc(785 * var(--lp));
    margin-top: calc(24 * var(--lp));
}

.longevity-directions__item:nth-child(4) .longevity-directions__text {
    max-width: calc(713 * var(--lp));
}

/* ---------- 13. Nobelle Shop ---------- */

.longevity-shop {
    margin-top: calc(122 * var(--lp));
    padding-block: calc(55 * var(--lp)) calc(60 * var(--lp));
    color: var(--color-white, #fff);
    background: var(--lgv-dark);
}

.longevity .longevity-shop__container {
    padding-left: calc(33 * var(--lp));
}

.longevity-shop__head {
    display: grid;
    grid-template-columns: calc(643 * var(--lp)) calc(1065 * var(--lp));
}

.longevity-shop__intro {
    padding-top: calc(11 * var(--lp));
}

.longevity-shop .longevity-title {
    color: var(--color-white, #fff);
}

.longevity-shop__text {
    max-width: calc(425 * var(--lp));
    margin-top: calc(56 * var(--lp));
    font-size: max(15px, calc(20 * var(--lp)));
    line-height: 1.4;
    letter-spacing: 0.03em;
}

.longevity-shop__tags {
    display: flex;
    flex-wrap: wrap;
    gap: calc(29 * var(--lp)) calc(69 * var(--lp));
}

/* Ряды тегов «лесенкой», как в макете: каждый второй ряд сдвинут. */
.longevity-shop__tags li:nth-child(6n + 4) {
    margin-left: calc(162 * var(--lp));
}

.longevity-shop__tag {
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(255 * var(--lp));
    height: calc(75 * var(--lp));
    min-height: 48px;
    padding-inline: 8px;
    font-size: max(14px, calc(20 * var(--lp)));
    line-height: 1.4;
    letter-spacing: 0.03em;
    color: var(--lgv-dark);
    text-align: center;
    text-decoration: none;
    background: linear-gradient(#fff, #fff) padding-box, var(--lgv-gradient) border-box;
    border: 1px solid transparent;
    border-radius: calc(17 * var(--lp));
    transition: box-shadow 0.4s var(--easing-standard, ease), transform 0.4s var(--easing-standard, ease);
}

.longevity-shop__tag:hover {
    box-shadow: var(--shadow-gold-button-hover, 0 8px 22px rgb(140 100 40 / 28%));
    transform: translateY(-2px);
}

.longevity-shop__gallery {
    display: grid;
    grid-template-columns: repeat(2, calc(885 * var(--lp)));
    gap: calc(48 * var(--lp));
    margin-top: calc(62 * var(--lp));
}

.longevity-shop__image {
    width: 100%;
    height: calc(409 * var(--lp));
    object-fit: cover;
}

.longevity .longevity-shop__button {
    width: calc(324 * var(--lp));
    min-width: max-content;
    margin: calc(52 * var(--lp)) 0 0 calc(-2 * var(--lp));
}
.padding_container{
    padding-bottom:50px
}

/* ======================================================
   Планшет и мобильные: макета нет, блоки встают в колонку.
   ====================================================== */

@media (max-width: 61.99875em) {
    .longevity .longevity-intro__container,
    .longevity .longevity-philosophy__container,
    .longevity .longevity-factors__container,
    .longevity .longevity-approach__container,
    .longevity .longevity-steps__container,
    .longevity .longevity-composition__container,
    .longevity .longevity-tasks__container,
    .longevity .longevity-choose__container,
    .longevity .longevity-club__container,
    .longevity .longevity-directions__container,
    .longevity .longevity-shop__container {
        max-width: none;
        padding-inline: 24px;
    }

    .longevity-title {
        font-size: 32px;
    }

    .longevity-title br {
        display: none;
    }

    /* Hero */
    .longevity-hero {
        height: auto;
    }

    .longevity .longevity-hero__container {
        display: flex;
        flex-direction: column;
        gap: 24px;
        max-width: none;
        padding: 40px 24px 48px;
    }

    .longevity-hero__logo,
    .longevity-hero__logo-line,
    .longevity-hero__logo-top,
    .longevity-hero__logo-bottom,
    .longevity-hero__badge,
    .longevity-hero__title,
    .longevity-hero__subtitle,
    .longevity-hero__actions,
    .longevity-hero__list {
        position: static;
        width: auto;
        height: auto;
    }

    .longevity-hero__logo {
        display: grid;
        grid-template-columns: 64px auto;
        align-items: center;
        column-gap: 16px;
    }

    .longevity-hero__logo-line {
        height: 2px;
    }

    .longevity-hero__logo-top {
        font-size: 48px;
        line-height: 1;
    }

    .longevity-hero__logo-bottom {
        grid-column: 1 / -1;
        font-size: 56px;
        line-height: 1;
    }

    .longevity-hero__badge {
        align-self: flex-start;
        padding: 16px 24px;
        border-radius: 16px;
    }

    .longevity-hero__badge-title {
        font-size: 32px;
    }

    .longevity-hero__badge-text {
        margin-top: 8px;
    }

    .longevity-hero__badge-text,
    .longevity-hero__title,
    .longevity-hero__subtitle,
    .longevity-hero__list {
        font-size: 18px;
    }

    .longevity-hero__subtitle {
        margin-top: -12px;
        white-space: normal;
    }

    .longevity-hero__actions {
        flex-wrap: wrap;
        gap: 16px;
    }

    .longevity-hero__list {
        gap: 16px;
        padding: 24px 24px 24px 44px;
        border-radius: 16px;
    }

    .longevity-hero__list li:nth-child(n) {
        max-width: none;
    }

    .longevity-hero__list li::before {
        left: -18px;
        width: 5px;
        height: 5px;
    }

    /* Intro */
    .longevity-intro {
        padding-top: 48px;
    }

    .longevity .longevity-intro__container {
        flex-direction: column;
        gap: 32px;
    }

    .longevity-intro__image {
        width: 100%;
        max-width: 583px;
        height: auto;
        aspect-ratio: 583 / 600;
    }

    .longevity-intro__list {
        width: 100%;
        margin: 0;
    }

    .longevity-intro__item {
        padding-block: 16px;
        font-size: 18px;
    }

    /* Философия */
    .longevity-philosophy {
        padding-block: 64px;
    }

    .longevity-philosophy__lead,
    .longevity-philosophy__text {
        font-size: 18px;
    }

    .longevity-philosophy__lead {
        width: auto;
        margin-top: 24px;
    }

    /* Коллаж — уменьшенная копия десктопного (1390 × 759 от левого края сыворотки), тексты под ним. */
    .longevity-philosophy__collage {
        display: flex;
        flex-direction: column;
        gap: 16px;
        height: auto;
        margin-top: 32px;
    }

    .longevity-philosophy__images {
        position: relative;
        display: block;
        aspect-ratio: 1390 / 759;
        margin-bottom: 8px;
    }

    .longevity-philosophy__main {
        top: 0;
        left: 14.46%;
        width: 46.83%;
        height: 100%;
    }

    .longevity-philosophy__serum {
        top: 40.7%;
        left: 0;
        width: 26.33%;
        height: auto;
        aspect-ratio: 1;
    }

    .longevity-philosophy__hands {
        top: 17%;
        left: 55.04%;
        width: 44.96%;
        height: auto;
        aspect-ratio: 625 / 268;
    }

    .longevity-philosophy__text {
        position: static;
        width: auto;
    }

    /* Факторы */
    .longevity-factors {
        height: auto;
        padding-block: 48px;
    }

    .longevity .longevity-factors__container,
    .longevity-factors__map {
        position: relative;
        height: auto;
    }

    .longevity-factors__head {
        padding-top: 0;
    }

    .longevity-factors__aside,
    .longevity-factors__center,
    .longevity-factors__item {
        position: static;
        width: auto;
        height: auto;
        font-size: 18px;
    }

    .longevity-factors__aside {
        margin-top: 16px;
    }

    .longevity-factors__map {
        inset: auto;
        margin-top: 32px;
    }

    .longevity-factors__center {
        padding: 32px 24px;
        border-radius: 48px;
    }

    .longevity-factors__list {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 32px 16px;
        margin-top: 32px;
    }

    .longevity-factors__item {
        position: relative;
        top: auto;
        left: auto;
        padding-top: 28px;
    }

    .longevity-factors__item::before {
        top: 0;
        left: 50%;
        width: 16px;
        height: 16px;
        transform: translateX(-50%);
    }

    .longevity-factors__item br {
        display: none;
    }

    /* Подход */
    .longevity-approach {
        padding-top: 48px;
    }

    .longevity-approach__head {
        flex-direction: column;
        gap: 16px;
    }

    .longevity-approach__head .longevity-title,
    .longevity-approach__aside {
        width: auto;
    }

    .longevity-approach__aside {
        margin-top: 0;
        font-size: 18px;
        line-height: 1.3;
    }

    .longevity-approach__bar {
        flex-wrap: wrap;
        gap: 16px;
        margin-top: 32px;
        padding-inline: 0;
    }

    .longevity-approach__switch {
        gap: 8px;
        width: 296px;
        height: 60px;
        padding: 8px;
        border-radius: 32px;
    }

    .longevity-approach__thumb {
        top: 8px;
        left: 8px;
        width: 136px;
        height: 44px;
        border-radius: 24px;
    }

    .longevity-approach__switch[data-active="now"] .longevity-approach__thumb {
        transform: translateX(144px);
    }

    .longevity-approach__tab {
        width: 136px;
        font-size: 18px;
    }

    .longevity-approach__panels {
        margin: 24px 0 0;
    }

    .longevity-approach__button {
        margin: 32px 0 0;
    }

    .longevity-approach__panel {
        grid-template-columns: 1fr;
        row-gap: 24px;
        padding: 24px;
        border-radius: 24px;
    }

    .longevity-approach__content {
        padding-top: 0;
    }

    .longevity-approach__list {
        gap: 20px;
    }

    .longevity-approach__panel .longevity-approach__item:nth-child(n) {
        max-width: none;
        padding-left: 36px;
        font-size: 16px;
    }

    .longevity-approach__panel--now .longevity-approach__item::before {
        width: 24px;
        height: 24px;
    }

    .longevity-approach__panel--before .longevity-approach__item::before {
        width: 24px;
    }

    .longevity-approach__result {
        width: auto;
        margin-top: 24px;
        padding: 20px 24px;
        border-radius: 20px;
    }

    .longevity-approach__panel .longevity-approach__result-title,
    .longevity-approach__panel .longevity-approach__result-text {
        max-width: none;
        font-size: 16px;
    }

    .longevity-approach__result-text {
        margin-top: 8px;
    }

    .longevity-approach__media {
        order: -1;
    }

    .longevity-approach__image {
        height: auto;
        aspect-ratio: 791 / 637;
        border-radius: 20px;
    }

    .longevity-approach__tag {
        top: auto;
        bottom: 16px;
        left: 16px;
        width: auto;
        height: auto;
        padding: 6px 16px;
        font-size: 16px;
        border-radius: 14px;
    }

    /* Путь пациента */
    .longevity-steps {
        padding-block: 64px;
    }

    .longevity-steps__list {
        grid-template-columns: repeat(2, 1fr);
        gap: 32px 24px;
        margin-top: 32px;
    }

    .longevity-steps__item::after {
        display: none;
    }

    .longevity-steps__item:nth-child(n) .longevity-steps__text {
        max-width: none;
        margin-top: 8px;
        font-size: 16px;
    }

    .longevity-steps__button {
        margin: 40px 0 0;
    }

    /* Состав программы */
    .longevity-composition {
        padding-block: 48px;
    }

    .longevity-composition__grid {
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: auto;
        gap: 16px;
        margin-top: 24px;
    }

    .longevity-composition__card {
        min-height: 180px;
        padding: 16px 20px 20px;
        border-radius: 20px;
    }

    .longevity-composition__card--main {
        grid-column: 1 / -1;
        grid-row: auto;
        width: auto;
        min-height: 360px;
        padding: 32px 24px;
        border-radius: 24px;
    }

    .longevity-composition__subtitle {
        margin: 24px 0 0;
        font-size: 18px;
    }

    .longevity-composition__text {
        max-width: 70%;
        font-size: 16px;
    }

    .longevity-composition__card--main .longevity-composition__text {
        max-width: 60%;
    }

    /* Задачи */
    .longevity-tasks {
        padding-top: 64px;
    }

    .longevity-tasks__list {
        width: auto;
        margin-top: 24px;
    }

    .longevity-tasks__item.is-open {
        min-height: 0;
    }

    .longevity-tasks__toggle {
        padding-block: 16px;
        font-size: 18px;
    }

    .longevity-tasks__item.is-open .longevity-tasks__toggle {
        padding-block: 16px 12px;
    }

    .longevity-tasks__text {
        max-width: none;
        padding-bottom: 16px;
        font-size: 16px;
    }

    .longevity-tasks__image {
        position: static;
        display: none;
        width: 100%;
        height: auto;
        aspect-ratio: 648 / 224;
        margin-bottom: 16px;
    }

    .longevity-tasks__item.is-open .longevity-tasks__image {
        display: block;
    }

    .longevity-gains,
    .longevity-gains--club {
        grid-template-columns: repeat(2, 1fr);
        gap: 32px 24px;
        margin-top: 48px;
    }

    .longevity-gains .longevity-gains__item:nth-child(n) .longevity-gains__title,
    .longevity-gains .longevity-gains__item:nth-child(n) .longevity-gains__text {
        max-width: none;
    }

    .longevity-gains__title {
        font-size: 18px;
    }

    .longevity-gains__text {
        margin-top: 8px;
        font-size: 16px;
    }

    .longevity-gains__title br {
        display: none;
    }

    /* Команда */
    .longevity-team.doctors {
        padding-top: 64px;
    }

    .longevity-team .doctors__heading {
        margin-bottom: 24px;
    }

    .longevity-team__text,
    .longevity-team__text:first-child {
        max-width: none;
        font-size: 16px;
    }

    .longevity-team__text + .longevity-team__text {
        margin-top: 16px;
    }

    .longevity-team__button {
        margin-top: 8px;
    }

    /* Пациенты выбирают */
    .longevity-choose {
        padding-block: 64px;
    }

    .longevity-choose__layout {
        flex-direction: column;
        gap: 32px;
        margin-top: 32px;
    }

    .longevity-choose__image {
        width: 100%;
        max-width: 338px;
        height: auto;
        margin: 0;
        aspect-ratio: 338 / 587;
    }

    .longevity-choose__list {
        display: flex;
        flex-direction: column;
        gap: 24px;
        width: 100%;
        margin: 0;
    }

    .longevity-choose__item::before {
        width: 100%;
    }

    .longevity-choose__item {
        padding-top: 16px;
    }

    .longevity-choose__item:nth-child(n) .longevity-choose__title,
    .longevity-choose__item:nth-child(n) .longevity-choose__text {
        max-width: none;
    }

    .longevity-choose__title {
        font-size: 18px;
    }

    .longevity-choose__text {
        margin-top: 12px;
        font-size: 16px;
    }

    /* Клуб */
    .longevity-club {
        padding-block: 48px;
    }

    .longevity-club__head {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .longevity-club .longevity-title {
        margin-top: 16px;
    }

    .longevity-club__text {
        max-width: none;
        margin-top: 16px;
        font-size: 16px;
    }

    .longevity-club__button {
        margin-top: 32px;
    }

    .longevity-club__image {
        height: auto;
        margin: 0;
        aspect-ratio: 801 / 319;
    }

    .longevity-club__discounts {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-top: 48px;
        padding: 0;
    }

    .longevity-club__column {
        gap: 16px;
    }

    .longevity-club__row {
        height: auto;
        min-height: 72px;
        padding: 12px 16px;
        gap: 12px;
    }

    .longevity-club__name {
        position: static;
        flex: 1;
        width: auto;
        max-width: none;
        transform: none;
    }

    .longevity-club__value {
        font-size: 30px;
    }

    .longevity-club__service {
        font-size: 17px;
    }

    .longevity-club__note,
    .longevity-club__procedures li {
        font-size: 15px;
    }

    .longevity-club__procedures {
        gap: 12px;
        padding: 0 16px 0 44px;
    }

    .longevity-club__discount.is-open .longevity-club__procedures {
        padding-block: 8px 20px;
    }

    .longevity-club__procedures li {
        max-width: none;
    }

    .longevity-club__procedures li::before {
        left: -20px;
    }

    /* Направления */
    .longevity-directions {
        padding-top: 64px;
    }

    .longevity-directions__grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
        width: auto;
        margin-top: 32px;
    }

    .longevity-directions__item,
    .longevity-directions__item:nth-child(n + 4) {
        grid-column: auto;
        height: 420px;
    }

    .longevity-directions__body,
    .longevity-directions__item:nth-child(n + 4) .longevity-directions__body {
        min-height: 0;
        padding: 16px 20px 20px;
    }

    .longevity-directions__eyebrow {
        margin-bottom: 8px;
        font-size: 15px;
    }

    .longevity-directions__name {
        font-size: 22px;
        line-height: 1.1;
    }

    .longevity-directions__item:nth-child(n) .longevity-directions__text {
        max-width: none;
        margin-top: 8px;
        font-size: 15px;
    }

    .longevity-directions__text br {
        display: none;
    }

    /* Магазин */
    .longevity-shop {
        margin-top: 64px;
        padding-block: 48px;
    }

    .longevity-shop__head {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .longevity-shop__intro {
        padding: 0;
    }

    .longevity-shop__text {
        max-width: none;
        margin-top: 16px;
        font-size: 16px;
    }

    .longevity-shop__tags {
        gap: 12px;
    }

    .longevity-shop__tags li:nth-child(6n + 4) {
        margin-left: 0;
    }

    .longevity-shop__tag {
        width: auto;
        height: 48px;
        padding-inline: 20px;
        font-size: 16px;
        border-radius: 14px;
    }

    .longevity-shop__gallery {
        grid-template-columns: 1fr 1fr;
        gap: 16px;
        margin-top: 32px;
    }

    .longevity-shop__image {
        height: auto;
        aspect-ratio: 885 / 409;
    }

    .longevity-shop__button {
        margin: 32px 0 0;
    }
}

@media (max-width: 47.99875em) {
    .longevity .longevity-intro__container,
    .longevity .longevity-philosophy__container,
    .longevity .longevity-factors__container,
    .longevity .longevity-approach__container,
    .longevity .longevity-steps__container,
    .longevity .longevity-composition__container,
    .longevity .longevity-tasks__container,
    .longevity .longevity-choose__container,
    .longevity .longevity-club__container,
    .longevity .longevity-directions__container,
    .longevity .longevity-shop__container {
        padding-inline: 16px;
    }

    .longevity-title {
        font-size: 28px;
    }

    .longevity .longevity-hero__container {
        padding-inline: 16px;
    }

    .longevity-hero__logo-top {
        font-size: 36px;
    }

    .longevity-hero__logo-bottom {
        font-size: 44px;
    }

    .longevity-hero__logo {
        grid-template-columns: 48px auto;
    }

    .longevity-hero__badge-title {
        font-size: 26px;
    }

    .longevity-hero__badge-text,
    .longevity-hero__title,
    .longevity-hero__subtitle,
    .longevity-hero__list {
        font-size: 16px;
    }

    .longevity-factors__list,
    .longevity-steps__list,
    .longevity-gains,
    .longevity-gains--club,
    .longevity-directions__grid,
    .longevity-shop__gallery {
        grid-template-columns: 1fr;
    }

    .longevity-composition__grid {
        grid-template-columns: 1fr;
    }

    .longevity-composition__card--main .longevity-composition__text {
        max-width: none;
    }

    .longevity-directions__item,
    .longevity-directions__item:nth-child(n + 4) {
        height: 380px;
    }

    .longevity-club__value {
        font-size: 26px;
    }

    .longevity-club__service {
        font-size: 16px;
    }
}
