/* Подключаем кастомные шрифты */
@font-face {
    font-family: 'Marianna';
    src: url('fonts/Marianna.woff') format('woff');
    font-style: normal;
    font-weight: 400;
}
@font-face {
    font-family: 'kursiv';
    src: url('fonts/kursiv.woff') format('woff');
    font-style: italic;
    font-weight: 400;
}

@font-face {
    font-family: 'RGitalic';
    src: url('fonts/RG Italic.woff') format('woff');
    font-style: normal;
    font-weight: 600;
}

@font-face {
    font-family: 'RGsemibold';
    src: url('fonts/RG Semibold.woff') format('woff');
    font-style: normal;
    font-weight: 600;
}

/* 🟨 Soft luxury glow */
.soft-glow-lux {
    box-shadow: 0 0 28px rgba(183, 175, 167, 0.45);
}

/* Базовые стили страницы */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}


body {
    margin: 0;
    font-family: 'RGitalic', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
    background-color: #ffffff; /* светлый фон страницы */
    color: #333333;
}

html, body {
    max-width: 100%;
    overflow-x: hidden;
}

.page-wrapper {
    width: 100%;
    max-width: 450px;
    margin: 0 auto 40px;
    padding: 0 16px 40px;
    overflow: visible !important;
    position: relative;
}

/* HERO */
.hero {
    display: block;
}

.hero__media {
    width: 100%;
    margin: 0;
    border-radius: 0 0 24px 24px; /* скруглены только нижние углы (для 1b) */
    overflow: hidden;
    position: relative;
}

.hero__media--big {
    width: 100%;          /* полностью вписываем в контейнер */
    margin: 20px 0 32px 0;   /* сдвиг через margin, а не top */
    overflow: hidden;     /* обрезаем края как на макете */
    border-radius: 0 !important;
}

/* 🟦 Кнопки на изображении HERO */
.hero-buttons {
    position: absolute;
    bottom: 106px;   /* было 16px → подняли на 20px */
    right: 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;         /* расстояние между кнопками */
    z-index: 5;        /* поверх изображения */
}

.hero-btn {
    background-color: transparent;
    border: 2px solid #b7afa7;
    color: #ffffff;
    font-family: 'Marianna', sans-serif;
    font-family: 'RGsemibold';
    font-size: 13px;
    padding: 1px 15px;
    border-radius: 14px;         /* скругление */
    text-align: center;
    width: auto;
    backdrop-filter: blur(4px);  /* лёгкий эффект стекла */
    cursor: default;
    text-decoration: none !important;
}
.hero-photo {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}

/* Размер изображений регулируем без зума */
.hero-photo--small {
    width: 100%;
    height: auto; /* естественная высота */
}

.hero-photo--big {
    width: 100%;
    height: auto;          /* показать изображение без зума */
    object-fit: contain;   /* вернуть оригинальное разрешение картинки */
}

/* Текст под изображением */
.hero__content {
    margin-top: 28px;
    font-size: 15px;
    line-height: 1.7;
    color: #444444;
}

.hero__lead {
    margin-bottom: 8px;
    font-size: 15px;
    line-height: 1.7;
}

.hero__lead + p {
    font-size: 15px;
    line-height: 1.7;
    color: #444444;
    margin-top: 8px;   /* небольшой отступ сверху */
}

.hero__content p {
    margin-bottom: 10px;
    font-size: 15px;
    line-height: 1.7;
}

/* Выделение полужирного текста только для нужного фрагмента */
.semibold {
    font-family: 'RGsemibold';
    font-weight: 700;
    font-style: normal;     /* принудительно убираем наклон */
    transform: skewX(0deg); /* гарантируем отсутствие визуального наклона */
}

/* Класс для текста RG italic */
.italic {
    font-family: 'RGitalic';
    font-style: normal;     /* делаем текст прямым */
    transform: skewX(0deg); /* убираем наклон визуально */
}

/* Адаптив под экран меньше 768px */
@media (max-width: 768px) {
    .page-wrapper {
        margin: 0 auto 48px;       /* без верхнего отступа на мобильных */
        padding: 0 16px 32px;      /* отступы по бокам сохраняем */
    }

    .hero__content {
        margin-top: 20px;
        font-size: 14px;
        line-height: 1.6;
    }

    .hero__lead {
        font-size: 15px;
    }
}

/* ============================= */
/* БЛОК: После прохождения курса */
/* ============================= */

/* ============================= */
/* РАЗДЕЛИТЕЛЬ СЕКЦИЙ (ПУНКТИР) */
/* ============================= */

.section-divider {
    margin: 24px 0;          /* вертикальные отступы разделителя */
}

.divider-line {
    width: 100%;
    border-top: 1px dashed #b8b0aa; /* пунктирная линия на всю ширину */
    opacity: 0.7;
}

/*
СТРУКТУРА УПРАВЛЕНИЯ (ВАЖНО):
.section-hero-text2   → управляет положением СЕКЦИИ на странице
.after-course         → визуальная обертка блока
.after-course__content→ ВЕСЬ текст разом
.after-course__title  → только слово "после"
.after-course__subtitle → подзаголовок
.after-course__list   → список
*/

/* Обертка блока (НЕ двигаем вертикалью страницы) */
.after-course {
    padding: 0 4px;
}

/* ГЛАВНЫЙ РЫЧАГ — двигает ВЕСЬ текст внутри блока */
.after-course__content {
    margin-top: -40px;        /* ↑↑ двигай ТУТ весь блок текста */
}

/* Заголовок "после" */
.after-course__title {
    font-family: 'Marianna';
    font-size: 100px;
    color: #b8b0aa;
    text-align: left;

    line-height: 0.9;
    margin-bottom: -32px; /* прижим к подзаголовку */

    /* микро‑смещение только слова */
    margin-left: 0;       /* ← двигай ТУТ */
}

/* Подзаголовок */
.after-course__subtitle {
    font-family: 'RGsemibold';
    font-size: 18px;
    color: #444;
    text-align: center;

    margin-top: 0;        /* ↑↓ двигай ТУТ */
    margin-bottom: 20px;
}

/* Список */
.after-course__list {
    list-style: none;
    padding-left: 0;
    margin-top: 0;        /* ↑↓ двигай список целиком */
}

/* Пункты списка */
.after-course__list li {
    font-family: 'RGitalic';
    font-size: 15px;
    line-height: 1.5;
    margin-bottom: 6px;
}

/* Блок баннера курса */
.course-banner {
    background-color: #b7afa7; /* цвет максимально близкий к макету */
    border-radius: 22px; /* уменьшили округление */
    padding: 6px 20px 0 40px;
    height: 72px; /* фиксируем высоту как в макете */
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;        /* центрируем текст */           /* центрируем плашку в контейнере */
    width: 100%;               /* на всю ширину контейнера */
    align-items: flex-start;
    margin-top: 20px;
}

.course-banner__title {
    font-family: 'Marianna';
    font-size: 60px;
    color: #ffffff;
    margin-top: -25px;
    letter-spacing: 1px;
    text-align: left;
    margin-left: -25px;
}

.course-banner__subtitle {
    font-family: 'RGsemibold';
    font-size: 14px;
    color: #ffffff;
    letter-spacing: 0.7px;
    text-align: left;
    margin-top: -23px;
    margin-left: 45px;
}
/* Модули курса */
/* Контейнер, который прижимает ПРАВЫЕ модули к правой стороне */

/* === БЛОК: МОДУЛИ КУРСА === */

.section-modules {
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.module {
    width: 100%;
    max-width: 100%;
    margin-top: -10px;
}

/* Индивидуальные смещения модулей */
.section-modules .module:nth-child(2) {
    margin-top: -40px;
}

.section-modules .module:nth-child(3) {
    margin-top: -20px;
}

.section-modules .module:nth-child(4) {
    margin-top: -20px;
}

.section-modules .module:nth-child(5) {
    margin-top: -30px;
}

.section-modules .module:nth-child(6) {
    margin-top: -30px;
}

.module--left {
    text-align: left;
}

.module--right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

/* Заголовок модуля */
.module-header {
    display: flex;
    align-items: flex-end;
    gap: 4px;
}

.module--right .module-header {
    justify-content: flex-end;
}

.module-number {
    font-family: 'Marianna';
    font-size: 92px;
    line-height: 0.95;
    color: #b8b0aa;
}

.module-name {
    font-family: 'RGsemibold';
    font-size: 16px;
    line-height: 1.2;
    max-width: 210px;
    margin-left: -20px;
    margin-bottom: 30px
}

/* Список */
.module-list {
    margin-top: -20px;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.module-item {
    display: grid;
    grid-template-columns: 16px auto;
    column-gap: 0;
    font-family: 'RGitalic';
    font-size: 15px;
    line-height: 1.4;
    align-items: start;
}

.module--right .module-list {
    width: 260px;
    align-items: flex-start;
}

.module--right .module-item {
    text-align: left;
    max-width: 260px;
}


/* === БЛОК: ДОПОЛНИТЕЛЬНО === */

.section-additional {
    margin-top: -5px; /* общий отступ блока */
}

.additional-title {
    font-family: 'Marianna';
    font-size: 60px;
    color: #b8b0aa;
    text-align: left;

    margin: 0;
    margin-left: 2px;
}

.additional-content {
    margin-top: -20px; /* расстояние от заголовка до списка */
}

.additional-list .additional-item {
    display: grid;
    grid-template-columns: 16px auto;
    column-gap: 0px;
    font-family: 'RGitalic';
    font-size: 15px;
    line-height: 1.45;
    margin-bottom: 0;
    text-align: left;
    margin-left: 10px;
}
/* === ГАЛЕРЕЯ 1 (rv) — корректная версия === */

.section-gallery {
    margin-top: -5px; /* основной отступ галереи от предыдущего блока */
}

.gallery {
    width: 100%;
    display: flex;
    justify-content: flex-end; /* прижимаем галерею вправо */
}

.gallery-track {
    width: 240px;
    aspect-ratio: 240 / 310;  /* ключ для авторасширения */
    overflow: hidden;
    position: relative;
    border-radius: 20px;
    background-color: transparent;
    box-shadow: 0 0 25px rgba(0, 0, 0, 0.35);
}

.gallery-image {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.35s ease;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
}

.gallery-image.active {
    opacity: 1;
}

/* === ГАЛЕРЕЯ 2 (ok) — корректная версия === */
.section-gallery-ok {
    margin-top: 30px;
}

.gallery-ok {
    width: 100%;
    display: flex;
    justify-content: flex-end;
}

.gallery-track-ok {
    width: 240px;
    aspect-ratio: 240 / 310;
    overflow: hidden;
    position: relative;
    border-radius: 20px;
    background-color: transparent;
    box-shadow: 0 0 25px rgba(0, 0, 0, 0.35);
}

.gallery-image-ok {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.35s ease;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
}

.gallery-image-ok.active {
    opacity: 1;
}


/* === ГАЛЕРЕЯ 3 (o) — корректная версия === */

.section-gallery-o {
    margin-top: 20px; /* индивидуальный отступ галереи 3 */
}

.gallery-o {
    width: 100%;
    display: flex;
    justify-content: flex-end;
}

.gallery-track-o {
    width: 240px;
    aspect-ratio: 240 / 310;
    overflow: hidden;
    position: relative;
    border-radius: 20px;
    background-color: transparent;
    box-shadow: 0 0 25px rgba(0, 0, 0, 0.35);
}

.gallery-image-o {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.35s ease;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
}

.gallery-image-o.active {
    opacity: 1;
}

/* === ГАЛЕРЕЯ 4 (ry) — корректная версия === */

.section-gallery-ry {
    margin-top: 20px; /* индивидуальный отступ галереи 4 */
}

.gallery-ry {
    width: 100%;
    display: flex;
    justify-content: flex-end;
}

.gallery-track-ry {
    width: 240px;
    aspect-ratio: 240 / 310;
    overflow: hidden;
    position: relative;
    border-radius: 20px;
    background-color: transparent;
    box-shadow: 0 0 25px rgba(0, 0, 0, 0.35);
}

.gallery-image-ry {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.35s ease;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 20px;
}

.gallery-image-ry.active {
    opacity: 1;
}

/* КНОПКИ — общие для всех галерей */
.gallery-btn,
.gallery-btn-ok-left,
.gallery-btn-ok-right,
.gallery-btn-o-left,
.gallery-btn-o-right,
.gallery-btn-ry-left,
.gallery-btn-ry-right{
    background: none;
    border: none;
    font-size: 32px;
    color: #8a8178;
    cursor: pointer;
    padding: 20px;
}

.works-title {
    font-family: 'Marianna';
    font-size: 60px;
    color: #b8b0aa;
    text-align: left;
    margin-top: -5px;
    margin-left: 2px;
}
/* 🟩 Поднимаем блок с текстом // доступ к курсу... */
.additional-extra {
    position: relative;
    top: 0; /* вертикальная позиция теперь через .section-gap и block-shift */
}


/* === ТАРИФ: SOLO — корректная архитектура === */

.section-tariff {
    margin-top: 20px; /* положение всей карточки на странице */
}

/* сама плашка */
.tariff-card {
    background-color: #d6d0cc;
    border-radius: 26px;
    padding: 6px 10px 15px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;   /* ← центрируем содержимое */
    gap: 15px; /* базовый вертикальный ритм */
}

/* Увеличиваем высоту офлайн‑плашек на 20px */
.section-tariff-pair .tariff-card {
    padding: 6px 20px 35px;
}

/* ───── header (ТАРИФ : SOLO) ───── */
.tariff-header {
    margin-top: 0;   /* ↑↓ двигай заголовок */
}

.tariff-title {
    font-family: 'RGsemibold';
    font-size: 17px;
    color: #ffffff;
    text-align: center;
    margin: 0;
}

/* ───── content (описание) ───── */
.tariff-content {
    margin-top: -20px;   /* ↑↓ двигай описание */
}

.tariff-desc {
    font-family: 'RGitalic';
    font-size: 15px;
    color: #ffffff;
    line-height: 1.35;
    margin: 0;
    text-align: center;
}

/* ───── footer (цена) ───── */
.tariff-footer {
    margin-top: -6px;              /* ↑↓ двигай цену */
    display: flex;
    flex-direction: column;        /* цена и старая цена вертикально */
    align-items: center;
    gap: 6px;                      /* расстояние между плашкой и старой ценой */
}

.tariff-price {
    width: 120px;
    height: 36px;
    background-color: #6b5b53;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'RGsemibold';
    font-size: 18px;
    box-shadow: 0 0 28px rgba(47, 45, 45, 0.45);
}

/* старая цена */
.tariff-old-price {
    font-family: 'RGsemibold';
    font-size: 17px;
    color: #9a9a9a;                /* серый текст */
    text-decoration: line-through;
    text-decoration-color: #c94b4b;/* красная линия */
    text-decoration-thickness: 1px;
    text-align: center;
    opacity: 0.95;
}

/* Точечная настройка ТАРИФ: ALL IN */
.section-tariff + .section-tariff {
    margin-top: 10px; /* регулируй расстояние между SOLO и ALL IN */
}



/* === ДНИ ОФЛАЙН-КУРСА — корректная архитектура === */

.section-day {
    margin-top: 20px; /* положение каждого дня на странице */
}

/* Индивидуальное смещение ДНЯ 2 */
.section-day + .section-day {
    margin-top: 10px;
}

/* контейнер плашки дня */
.day-header {
    margin-left: 130px; /* горизонтальное положение овала */
}

/* овал "1 ДЕНЬ / 2 ДЕНЬ" */
.day-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 4px 18px;
    border: 2px solid #8a8178;
    border-radius: 999px;
    font-family: 'RGsemibold';
    font-size: 16px;
    color: #333333;
    background-color: transparent;
}

/* текст под плашкой */
.day-content {
    margin-top: 10px; /* расстояние от овала до расписания */
}

/* === ОТЗЫВЫ И РАБОТЫ УЧЕНИЦ — корректная архитектура === */

/* секция целиком */
.section-reviews-title {
    margin-top: 20px; /* положение блока на странице */
}

/* контейнер заголовка "отзывы" */
.reviews-title-header {
    margin-left: 2px; /* горизонталь заголовка */
}

/* основной заголовок */
.reviews-title-main {
    font-family: 'Marianna';
    font-size: 70px;
    line-height: 0.85;
    color: #b8b0aa;
    text-align: left;
    margin: 0;
}

/* контейнер подзаголовка */
.reviews-title-subwrap {
    margin-top: -25px; /* расстояние между заголовком и подзаголовком */
    margin-left: 75px; /* горизонталь подзаголовка */
}

/* подзаголовок */
.reviews-title-sub {
    font-family: 'RGsemibold';
    font-size: 18px;
    color: #444444;
    letter-spacing: 0.5px;
    margin: 0;
}


/* === FAQ — корректная архитектура === */

/* секция FAQ целиком */
.section-faq {
    margin-top: 40px;
    margin-bottom: 40px;
}

/* обёртка заголовка */
.faq-title-wrap {
    margin-left: 15px;   /* горизонталь заголовка */
    margin-top: -20px; /* поднимаем заголовок на 10px */
}

/* заголовок "частые вопросы" */
.faq-title {
    font-family: 'Marianna';
    font-weight: 400;
    font-size: 65px;
    color: #b8b0aa;
    text-align: left;
    margin: 0;
}

/* контейнер списка вопросов */
.faq-content {
    padding: 0 10px;     /* внутренние отступы списка */
    margin-top: -10px; /* поднимаем список вопросов на 10px */
}

/* один пункт FAQ */
.faq-item {
    margin: 0 15px -20px; /* отступ между вопросами 3px */
}

/* кнопка-вопрос */
.faq-question {
    width: 100%;
    background: none;
    border: none;
    text-align: left;
    font-family: 'RGitalic';
    font-size: 17px;
    padding: 15px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
}

/* КРУГ ВОКРУГ СТРЕЛКИ */
.faq-arrow-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #f3f0ed;
    margin-left: 12px;
    flex-shrink: 0;
    position: relative;   /* ← обязательно */
    top: 3px;
    z-index: 5;           /* ← добавляем этот слой */
    box-shadow: 0 0 28px rgba(183, 175, 167, 0.45) !important;
}

/* СТРЕЛКА ВНУТРИ КРУГА */
.faq-arrow-icon {
    font-size: 15px;
    line-height: 1;
    color: #6b5b53;
    position: relative;
    top: -3px;      /* идеальный подъём */
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-6px);
    transition: max-height 0.45s ease, opacity 0.45s ease, transform 0.45s ease, background-color 0.45s ease;
    position: relative;
    top: -8px;
    left: 10px;
    background-color: rgba(183, 175, 167, 0.12);
    padding: 12px 14px;
    border-radius: 10px;
}

.faq-item.open .faq-answer {
    max-height: 800px;
    opacity: 1;
    transform: translateY(0);
    background-color: rgba(183, 175, 167, 0.18);
}

/* Плавный поворот стрелки */
.faq-arrow-circle {
    transition: transform 0.35s ease;
}

.faq-item.open .faq-arrow-circle {
    transform: rotate(180deg);
}
/* Ensure .hero-btn and its states have no underline */
.hero-btn {
    text-decoration: none !important;
}
.hero-btn:hover,
.hero-btn:active,
.hero-btn:visited {
    text-decoration: none !important;
}
 
/* 🟦 Плавный ЗУМ‑ИН / ЗУМ‑АУТ для кнопок онлайн / офлайн */
@keyframes soft-zoom {
    0%   { transform: scale(1); }
    50%  { transform: scale(1.06); }  /* лёгкое увеличение */
    100% { transform: scale(1); }
}

.hero-btn {
    animation: soft-zoom 2.4s ease-in-out infinite;
}
 
.tariff-price a {
    color: #ffffff !important;
    text-decoration: none !important;
}

.gallery-wrapper {
    position: relative;
    z-index: 5;
    overflow: visible;
}

/* === ФИКС ДЛЯ ВСЕХ ГАЛЛЕРЕЙ С ABSOLUTE-КАРТИНКАМИ === */

.gallery-track,
.gallery-track-ok,
.gallery-track-o,
.gallery-track-ry,
.gallery-track-ry5 {
    position: relative;
    width: 240px;
    height: 310px;
    overflow: hidden;
    border-radius: 20px;
}

/* У всех картинок 100% по высоте + absolute */
.gallery-image,
.gallery-image-ok,
.gallery-image-o,
.gallery-image-ry,
.gallery-image-ry5 {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity .6s ease-in-out, filter .6s ease-in-out;
    filter: blur(4px);
}

.gallery-image.active,
.gallery-image-ok.active,
.gallery-image-o.active,
.gallery-image-ry.active,
.gallery-image-ry5.active {
    opacity: 1;
    filter: blur(0px);
}

/* === TYPEWRITER (STABLE, NO LAYOUT SHIFT) === */
.typewriter {
    display: inline-block;
    white-space: nowrap;
    opacity: 0;
    animation: safeTyping 1.4s ease-out forwards;
}

@keyframes safeTyping {
    0% {
        clip-path: inset(0 100% 0 0);
        opacity: 0;
        filter: blur(3px);
    }
    40% {
        opacity: 1;
    }
    100% {
        clip-path: inset(0 0 0 0);
        opacity: 1;
        filter: blur(0);
    }
}

/* ============================= */
/* АНИМАЦИЯ ПЛАШЕК "ПРОГРАММА" */
/* Запуск ТОЛЬКО по скроллу     */
/* ============================= */

/* Начальное состояние плашек (до скролла) */
.course-banner {
    opacity: 0;
    transform: translateY(10px);
    filter: blur(6px);
}

/* Запуск анимации ТОЛЬКО при появлении в зоне видимости */
.course-banner.is-visible {
    animation: glowFadeIn 0.9s ease-out forwards;
}

/* небольшая задержка для второй плашки (офлайн) */
.section-program-offline .course-banner.is-visible {
    animation-delay: 0.25s;
}

/* Опциональная ручная задержка (если понадобится) */
.glow-fade--delay {
    animation-delay: 0.25s;
}

@keyframes glowFadeIn {
    0% {
        opacity: 0;
        transform: translateY(14px);
        filter: blur(8px);
        box-shadow: none;
    }
    60% {
        opacity: 1;
        transform: translateY(0);
        filter: blur(0);
        box-shadow: 0 0 32px rgba(183, 175, 167, 0.45);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
        filter: blur(0);
        box-shadow: 0 0 22px rgba(183, 175, 167, 0.30);
    }
}
/* === ОФЛАЙН ТАРИФЫ: 20000 / 27000 === */

.section-tariff-pair {
    margin-top: 20px;              /* положение пары тарифов */
    display: flex;
    justify-content: space-between;/* разнос по краям */
    align-items: flex-start;       /* один уровень по верху */
    gap: 16px;
}

/* общие стили карточек уже есть (.tariff-card) */

/* левая плашка */
.tariff-card-left {
    align-self: flex-start;        /* можно двигать отдельно */
}

/* правая плашка */
.tariff-card-right {
    align-self: flex-start;        /* можно двигать отдельно */
}

/* заголовочная часть (ТАРИФ + подзаголовок) */
.section-tariff-pair .tariff-header {
    display: flex;
    flex-direction: column;   /* КЛЮЧ: вертикальная колонка */
    align-items: center;
    margin-top: 0;
    text-align: center;
    gap: 4px;
}

/* подзаголовок manicure / manicure + inst */
.tariff-sub {
    font-family: 'RGitalic';
    font-size: 15px;
    color: #ffffff;
    margin-top: -4px;              /* ↑↓ двигай подзаголовок */
    text-align: center;
}

/* цена */
.section-tariff-pair .tariff-footer {
    margin-top: -10px;              /* ↑↓ двигай цену */
}