/* === КОРПОРАТИВНЫЙ БАННЕР === */
.hero-banners {
    padding: 2rem 0;
    background: var(--color-bg-pages);
}

.banners-wrapper {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 0.6rem;
    align-items: stretch;
}

/* Одиночный баннер занимает всю ширину */
.banners-wrapper.single-banner {
    grid-template-columns: 1fr;
}

.banners-wrapper.single-banner .banner-left {
    grid-column: 1 / -1;
}

/* === ЛЕВЫЙ СТАТИЧНЫЙ БАННЕР === */
.banner-left {
    background: url('../img/webp/Background_MainBanner.webp') center/cover;
    border-radius: 30px;
    padding: 3rem;
    display: flex;
    align-items: center;
    min-height: 400px;
    position: relative;
}

.banner-content {
    position: relative;
    z-index: 2;
    color: var(--color-text-main);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.banner-content h1 {
    margin-bottom: 1rem;
    color: var(--color-white);
}

.banner-content h5 {
    margin-bottom: 0;
    opacity: 0.9;
    color: var(--color-white);
}

.content-top {
    display: flex;
    flex-direction: column;
}

.buttons-wrapper {
    display: flex;
    gap: 1rem;
    margin-top: 0;
    flex-wrap: wrap;
}



/* === ПРАВЫЙ БАННЕР С ИЗОБРАЖЕНИЕМ === */
.banner-right {
    position: relative;
    border-radius: 30px;
    overflow: hidden;
    min-height: 400px;
}

.corporate-image {
    width: 100%;
    height: 100%;
    position: relative;
}

.corporate-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 30px;
}

/* === БЛОК ПРЕИМУЩЕСТВ === */
.advantages-section {
    background: var(--color-bg-pages);
}

.advantages-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.6rem;
    width: 100%;
}

.advantage-item {
    background: var(--color-white);
    padding: 1.5rem 1.5rem;
    border-radius: 30px;
    text-align: left;
    position: relative;
    overflow: hidden;
    min-height: 140px;
}

.advantage-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-size: contain;
    background-position: bottom right;
    background-repeat: no-repeat;
    opacity: 1;
    z-index: 1;
}

.advantage-item:nth-child(1)::before {
    background-image: url('../img/webp/Corp_plash1.webp');
}

.advantage-item:nth-child(2)::before {
    background-image: url('../img/webp/Corp_plash2.webp');
}

.advantage-item:nth-child(3)::before {
    background-image: url('../img/webp/Corp_plash3.webp');
}

.advantage-item:nth-child(4)::before {
    background-image: url('../img/webp/Corp_plash4.webp');
}

.advantage-content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.advantage-content h5 {
    margin-bottom: 0.75rem;
    color: var(--color-text-main);
}

.advantage-content p {
    color: var(--color-text-plashka);
    margin: 0;
}

/* === БЛОК РЕШЕНИЯ ПРОБЛЕМ === */
.problems-section {
    padding: 80px 0;
    background: var(--color-bg-secondary);
}

.problems-section h2 {
    margin-left: 28px;
    margin-bottom: 26px;
}

.problems-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    margin-bottom: 26px;
}

.problem-card {
    background: var(--color-white);
    padding: 32px;
    border-radius: 30px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 20px;
    height: 275px;
}

.problem-title {
    color: var(--color-secondary);
    margin: 0;
}

.solution {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.solution-title {
    color: var(--color-success);
    margin: 0;
}

.solution-text {
    color: var(--color-text-secondary);
    margin: 0;
    line-height: 1.5;
}

/* === БЛОК ЭТАПОВ РАБОТЫ === */
.workflow-section {
    background: var(--color-bg-secondary);
}

.workflow-section h2 {
    margin-left: 28px;
    margin-bottom: 6px;
    color: var(--color-text-main);
}

.workflow-subtitle {
    margin-left: 28px;
    margin-bottom: 26px;
    color: var(--color-text-secondary);
}

.workflow-grid {
    display: grid;
    grid-template-rows: repeat(2, 1fr);
    gap: 10px;
}

.workflow-step:nth-child(1) {
    grid-column: 1;
    grid-row: 1;
}

.workflow-step:nth-child(2) {
    grid-column: 2 / 4;
    grid-row: 1;
}

.workflow-step:nth-child(3) {
    grid-column: 1 / 3;
    grid-row: 2;
}

.workflow-step:nth-child(4) {
    grid-column: 3;
    grid-row: 2;
}

.workflow-step:nth-child(5) {
    grid-column: 5;
    grid-row: 1 / 3;
}

.workflow-step {
    background: var(--color-white);
    padding: 32px;
    border-radius: 20px;
    text-align: left;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 32px;
}

.workflow-step:nth-child(5) {
    background: url('../img/webp/Corp_Motivation_Back.webp') center/cover;
    position: relative;
    color: var(--color-white);
}

.workflow-step:nth-child(5)::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 20px;
    z-index: 1;
}

.workflow-step:nth-child(5) .step-number,
.workflow-step:nth-child(5) .step-content {
    position: relative;
    z-index: 2;
}

.step-number {
    color: var(--color-success);
    opacity: 0.3;
    margin: 0;
    line-height: 1;
    align-self: flex-start;
}

.step-content {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.step-title {
    color: var(--color-primary);
    margin: 0;
}

.step-description {
    color: var(--color-text-main);
    margin: 0;
    line-height: 1.5;
}

.workflow-result {
    margin-top: 34px;
    margin-left: 28px;
}

.workflow-result .text-accent {
    color: var(--color-primary);
}

/* === БЛОК С ИЗОБРАЖЕНИЕМ === */
.corporate-image-section {
    padding: 80px 0;
    background: var(--color-bg-secondary);
}

.corporate-image-section h2 {
    margin-left: 28px;
    margin-bottom: 26px;
    color: var(--color-text-main);
}

/* Таб-бар как на about_us */
.corporate-tabs { display: flex; justify-content: flex-start; margin: 0 0 20px 0; }
.corporate-tabs .top-events-tabs { margin: 0; display: flex; gap: 0.5rem; flex-wrap: wrap; }
/* Визуал табов как в about_us */
.corporate-tabs .events-tab {
    padding: 8px 16px;
    border: 1px solid var(--color-border-light);
    border-radius: 20px;
    background: var(--color-white);
    color: var(--color-text-secondary);
    cursor: pointer;
    transition: all 0.3s ease;
}

.corporate-tabs .events-tab:hover {
    background: var(--color-bg-secondary);
    border-color: var(--color-primary);
}

.corporate-tabs .events-tab.events-tab-active {
    background: var(--color-primary);
    color: var(--color-white);
    border-color: var(--color-primary);
}

.corporate-tabs .events-tab.events-tab-active:hover {
    background: var(--color-hover-green);
    border-color: var(--color-hover-green);
}

.corporate-image-wrapper {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 60px;
    align-items: stretch;
}

.corporate-image-content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    margin-left: 28px;
}

.corporate-image-info {
    display: flex;
    flex-direction: column;
    gap: 40px;
    height: 100%;
}

.info-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    width: fit-content;
}

.corporate-benefits {
    max-width: 430px;
}

.corporate-benefits p {
    margin: 0;
    margin-bottom: 20px;
}

.corporate-button-wrapper {
    display: flex;
    justify-content: flex-start;
    margin-top: 20px;
}

.corporate-button-wrapper .btn {
    width: auto;
}

.corporate-image-visual {
    position: relative;
    border-radius: 30px;
    overflow: hidden;
}

.corporate-image-visual img {
    width: 715px;
    height: 395px;
    object-fit: cover;
    border-radius: 30px;
}

.corporate-tab-group.hidden { display: none; }

/* === БЛОК "ПОЧЕМУ НАС ВЫБИРАЮТ" === */

.choose-us-section {
    background-color: var(--color-bg-secondary);
}

/* (удалён) CTA баннер к темам программ */

.choose-us-grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 10px;
    height: 760px;
}

.choose-us-left-column {
    grid-row: 1 / 3;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.choose-us-item {
    position: relative;
    border-radius: 30px;
    overflow: hidden;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    align-items: flex-end;
    padding: 32px;
    color: var(--color-text-primary);
}

.choose-us-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.choose-us-content {
    position: relative;
    z-index: 2;
}

.choose-us-content h2 {
    margin-bottom: 20px;
    color: var(--color-text-main);
}

.choose-us-content .text-p2 {
    margin-bottom: 12px;
    color: var(--color-text-main);
}

.choose-us-content h4 {
    margin-bottom: 12px;
    color: var(--color-text-main);
}

.choose-us-content .text-p2:last-of-type {
    margin-bottom: 0;
}

.choose-us-main .choose-us-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    position: relative;
}

.choose-us-main .events-tag-burgundy {
    margin-bottom: 20px;
}



.choose-us-main .choose-us-content .text-p2 {
    color: var(--color-text-main);
    margin-bottom: 12px;
}

.choose-us-main .choose-us-content .text-p2:last-of-type {
    margin-bottom: 32px;
}

/* Закрепление текста к верхнему краю для обычных плашек */
.choose-us-1,
.choose-us-2,
.choose-us-3,
.choose-us-4 {
    align-items: flex-start;
}

.choose-us-1 .text-p2,
.choose-us-2 .text-p2,
.choose-us-3 .text-p2,
.choose-us-4 .text-p2 {
    color: var(--color-text-secondary);
}

/* Фоновые изображения для каждой плашки */
.choose-us-main {
    background-image: url('../img/webp/ChooseUs_Main.webp');
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    flex: 1;
}

.choose-us-1 {
    background-image: url('../img/webp/ChooseUs_1.webp');
}

.choose-us-2 {
    background-image: url('../img/webp/ChooseUs_2.webp');
}

.choose-us-3 {
    background-image: url('../img/webp/ChooseUs_3.webp');
}

.choose-us-4 {
    background-image: url('../img/webp/ChooseUs_4.webp');
}

.choose-us-cta {
    display: flex;
    justify-content: flex-start;
}

.choose-us-cta .btn {
    width: 100%;
}

/* === БЛОК ФОРМЫ ОБРАТНОЙ СВЯЗИ ===
   Базовые стили формы — в modular-contact-form.css. Здесь только то, что
   уникально для страницы /corporate/: фоновое изображение левой плашки
   на верхней форме (Corp_request_back.webp) и фоновое изображение левой
   плашки на нижней бордовой форме (Frame 2131330063 (1).png). */

.contact-form-info-card-corporate {
    background: url('../img/webp/Corp_request_back.webp') center/cover;
    border-radius: 30px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 32px;
    position: relative;
}

.contact-form-info-card-corporate::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 30px;
    z-index: 1;
}

.contact-form-info-card-corporate h2 {
    position: relative;
    z-index: 2;
    margin: 0;
}

/* Фон для левой плашки в нижней бордовой форме (страница corporate) */
.contact-form-wrapper.burgundy-form .contact-form-info-card.social-icons-burgundy {
    background-color: var(--color-white);
    background-image: url('../img/Frame 2131330063 (1).png');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover; /* закрывает всю плашку */
    background-origin: border-box; /* фон выравнивается по краю карточки, а не по padding */
    background-clip: border-box;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 0;
    padding: 32px;
    border-radius: 30px;
}


/* Соц. иконки прижаты к низу левой плашки */

.contact-form-wrapper.burgundy-form .contact-form-info-card.social-icons-burgundy .text-p3 {
    color: var(--color-white);
}

.contact-form-wrapper.burgundy-form .contact-form-info-card.social-icons-burgundy h2 {
    color: var(--color-white);
}
/* Изменяем позиционирование фонового изображения на планшетах */
@media screen and (max-width: 1024px) {
    .contact-form-wrapper.burgundy-form .contact-form-info-card.social-icons-burgundy {
        background-position: top left;
        background-size: cover;
    }

    .contact-form-wrapper.burgundy-form .contact-form-info-card.social-icons-burgundy .contact-social-links {
        margin-top: auto;
        filter: brightness(0) invert(1);
    }
    
}

/* === БЛОК ЛУЧШИХ РЕШЕНИЙ === */

.best-solutions-title {
    margin-left: 28px;
    margin-bottom: 26px;
}

.best-solutions-cards-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 1.25rem;
    margin-bottom: 1.25rem;
}

/* Карточка решения */
.solution-card {
    border-radius: 30px;
    padding: 28px;
    display: flex;
    align-items: flex-start;
    gap: 1.5rem;
    position: relative;
}

/* Первая и вторая карточки высотой 335px */
.solution-card-1,
.solution-card-2 {
    height: 335px;
    flex-direction: row;
}

/* Третья карточка высотой 412px и занимает всю ширину */
.solution-card-3 {
    height: 412px;
    grid-column: 1 / -1;
    flex-direction: row;
    gap: 1.5rem;
}

/* Фоновые изображения для карточек */
.solution-card-1 {
    background: url('../img/webp/Corp_education.webp') center/cover;
}

.solution-card-2 {
    background: url('../img/webp/Corp_1993.webp') center/cover;
}

.solution-card-3 {
    background: url('../img/webp/Corp_diploms.webp') center/cover;
}

/* Информация о преподавателе */
.solution-info {
    display: flex;
    flex-direction: column;
    height: 100%;
    order: 1;
    justify-content: space-between;
}

/* Информация для 1 и 2 карточек - слева с отступом от аватарки */
.solution-card-1 .solution-info,
.solution-card-2 .solution-info {
    margin-right: 200px;
    padding-right: 1.5rem;
}

/* Заголовочная часть (имя + должность) для 1 и 2 карточек */
.solution-card-1 .solution-header,
.solution-card-2 .solution-header {
    flex-shrink: 0;
}

/* Правое достижение для 3 карточки */
.solution-card-3 .solution-feature-right {
    position: absolute;
    bottom: 28px;
    right: 28px;
    max-width: 400px;
    margin: 0;
}

.solution-card-3 .solution-feature-right p {
    margin: 0;
    color: var(--color-text-secondary);
    position: relative;
    padding-left: 1.5rem;
    text-align: right;
}


.solution-info h4 {
    margin-top: 0;
    margin-bottom: 0.75rem;
    color: var(--color-text-primary);
}

.solution-position {
    margin-bottom: 1.25rem;
    margin-top: 0.5rem;
    color: var(--color-text-secondary);
}



/* Специальные стили для кнопок в 1 и 2 карточках */
.solution-card-1 .solution-info .more,
.solution-card-2 .solution-info .more {
    position: absolute;
    bottom: 28px;
    left: 28px;
    background: transparent;
    border: none;
    color: var(--color-text-main);
    text-decoration: underline;
    padding: 0;
    margin: 0;
    align-self: auto;
}

.solution-card-1 .solution-info .more:hover,
.solution-card-2 .solution-info .more:hover {
    background: transparent;
    cursor: pointer;
    opacity: 0.8;
}





/* === АДАПТИВНАЯ ВЕРСИЯ ПРЕПОДАВАТЕЛЕЙ === */

/* Скрываем адаптивную версию на десктопе */
.solutions-adaptive-wrapper {
    display: none;
}

/* Группа решения (только информация) */
.solution-adaptive-group {
    margin-bottom: 1.25rem;
}





/* Плашка с информацией на белом фоне */
.solution-adaptive-info {
    background: var(--color-white);
    border-radius: 30px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.solution-adaptive-info .solution-header {
    flex-shrink: 0;
    margin-bottom: 1.5rem;
}


.solution-adaptive-info .btn {
    align-self: flex-start;
    margin-top: auto;
}


/* === АДАПТИВНЫЕ МЕДИА-ЗАПРОСЫ === */

/* Большие экраны */
@media screen and (min-width: 1400px) {
    .hero-banners {
        padding: 2.5rem 0 10px 0;
    }
    
    .banner-right {
        min-height: 450px;
    }
}

/* Большие ноутбуки */
@media screen and (max-width: 1366px) {
    .hero-banners { 
        padding: 2rem 0; 
    }
    .banner-left, .banner-right { 
        min-height: 420px; 
    }
    
    /* Блок "Почему нас выбирают" */
    .choose-us-section { 
        padding-top: 120px; 
    }
    .choose-us-grid { 
        height: 680px; 
    }
}

/* Средние ноутбуки */
@media screen and (max-width: 1200px) {
    .hero-banners { 
        padding: 1.8rem 0; 
    }
    .banner-left, .banner-right { 
        min-height: 380px; 
    }
    
    /* Блок "Почему нас выбирают" */
    .choose-us-section { 
        padding-top: 100px; 
    }
    .choose-us-grid { 
        height: 620px; 
    }
    .choose-us-item { 
        padding: 28px; 
    }

}

/* Планшеты */
@media screen and (max-width: 1024px) {
    .hero-banners { 
        padding: 1.5rem 0; 
    }
    .banner-left, .banner-right { 
        min-height: 320px; 
    }
    .banner-left { 
        padding: 2rem; 
    }
    
    /* Преимущества */
    .advantages-section { 
        padding: 2rem 0; 
    }
    .advantages-wrapper {
        grid-template-columns: repeat(2, 1fr);
        gap: 1rem;
    }
    .advantage-item { 
        min-height: 150px; 
    }
    
    /* Проблемы */
    .problems-section {
        padding: 80px 0;
    }
    .problems-section h2 {
        margin-left: 20px;
    }
    .problems-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .problem-card {
        padding: 24px;
    }
    
    /* Этапы работы */
    .workflow-section {
        padding: 80px 0;
    }
    .workflow-section h2 {
        margin-left: 20px;
        margin-bottom: 4px;
    }
    .workflow-subtitle {
        margin-left: 20px;
        margin-bottom: 20px;
    }
    .workflow-grid {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(3, 1fr);
        gap: 16px;
    }
    .workflow-step:nth-child(1) {
        grid-column: 1;
        grid-row: 1;
    }
    .workflow-step:nth-child(2) {
        grid-column: 2;
        grid-row: 1;
    }
    .workflow-step:nth-child(3) {
        grid-column: 1;
        grid-row: 2;
    }
    .workflow-step:nth-child(4) {
        grid-column: 2;
        grid-row: 2;
    }
    .workflow-step:nth-child(5) {
        grid-column: 1 / 3;
        grid-row: 3;
    }
    .workflow-step {
        padding: 24px;
    }
    
    /* Блок с изображением */
    .corporate-image-section {
        padding: 80px 0;
    }
    .corporate-image-section h2 {
        margin-left: 20px;
    }
    .corporate-image-wrapper {
        gap: 40px;
        min-height: 400px;
    }
    
    /* Блок "Почему нас выбирают" */
    .choose-us-section { 
        padding: 80px 0; 
    }
    .choose-us-grid {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto auto auto;
        height: auto;
    }
    .choose-us-left-column {
        grid-row: 1 / 2;
        grid-column: 1 / 3;
        gap: 16px;
    }
    .choose-us-main {
        min-height: 380px;
    }
    .choose-us-cta {
        padding: 0 24px;
    }
    
    /* Форма обратной связи — отступы и инсайды теперь в modular-contact-form.css */

    /* Блок лучших решений */
    /* Скрываем основные плашки решений */
    .best-solutions-cards-wrapper {
        display: none;
    }
    
    /* Показываем адаптивную версию */
    .solutions-adaptive-wrapper {
        display: block;
    }
    
    .best-solutions-section {
        padding: 80px 0 0 0;
    }
    
    .best-solutions-title {
        margin-left: 20px;
    }
}

/* Мобильные устройства */
@media screen and (max-width: 768px) {
    .corporate-image-visual img {
        border-radius: 20px;
    }

    .content-top{
        gap: 12px;
        margin-bottom: 20px;
    }

    .hero-banners { 
        padding: 1rem 0; 
    }
    .banners-wrapper {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    .banner-left {
        min-height: 250px;
        padding: 1.5rem;
    }
    .buttons-wrapper {
        flex-direction: column;
        gap: 0.8rem;
    }
    .banner-right { 
        min-height: 250px; 
    }
    
    /* Преимущества */
    .advantages-section { 
        padding: 1.5rem 0; 
    }
    .advantages-wrapper {
        grid-template-columns: 1fr;
        gap: 0.75rem;
    }
    .advantage-item {
        min-height: 120px;
        padding: 20px;
        border-radius: 20px;

    }
    
    /* Проблемы */
    .problems-section {
        padding: 60px 0;
    }
    .problems-section h2 {
        margin-left: 16px;
        margin-bottom: 20px;
    }
    .problem-card {
        padding: 20px;
        gap: 16px;
        border-radius: 20px;
    }
    
    /* Этапы работы */
    .workflow-section {
        padding: 60px 0;
    }
    .workflow-section h2 {
        margin-left: 16px;
        margin-bottom: 4px;
    }
    .workflow-subtitle {
        margin-left: 16px;
        margin-bottom: 20px;
    }
    .workflow-grid {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-bottom: 40px;
    }
    .workflow-step:nth-child(1),
    .workflow-step:nth-child(2),
    .workflow-step:nth-child(3),
    .workflow-step:nth-child(4),
    .workflow-step:nth-child(5) {
        grid-column: 1;
        grid-row: auto;
    }
    .workflow-step {
        padding: 20px;
    }
    
    /* Блок с изображением */
    .corporate-image-section {
        padding: 60px 0;
    }
    .corporate-image-section h2 {
        margin-left: 16px;
        margin-bottom: 17px;
    }
    .corporate-image-wrapper {
        grid-template-columns: 1fr;
        gap: 20px;
        min-height: 350px;
    }
    .corporate-image-content {
        order: 2;
        background: var(--color-white);
        border-radius: 20px;
        padding: 32px;
        margin-left: 0;
    }
    .corporate-image-visual {
        order: 1;
    }
    .info-tags {
        gap: 8px;
    }
    
    /* Блок "Почему нас выбирают" */
    .choose-us-section {
        padding-top: 40px;
        padding-bottom: 0;
    }
    .choose-us-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .choose-us-left-column {
        grid-row: auto;
        grid-column: auto;
        gap: 16px;
    }
    .choose-us-main {
        grid-row: auto;
        grid-column: auto;
    }
    .choose-us-item {
        padding: 24px;
        min-height: 180px;
    }
    
    .choose-us-cta {
        padding: 0 24px;
    }
    
    /* Форма обратной связи — основные стили в modular-contact-form.css.
       Здесь — только page-specific: фон левой плашки в бордовой форме. */
    .contact-form-wrapper.burgundy-form .contact-form-info-card.social-icons-burgundy {
        background-size: auto;
    }
    
    /* Блок лучших решений */
    
    .solution-adaptive-info {
        border-radius: 20px;
        padding: 20px;
    }
    
    .solution-adaptive-info .solution-header {
        margin-bottom: 1rem;
    }
    
    .best-solutions-section {
        padding: 60px 0 0 0;
    }
    
    .best-solutions-title {
        margin-left: 15px;
    }
    
    .best-solutions-cards-wrapper {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .solution-card {
        padding: 20px;
        border-radius: 20px;
        flex-direction: column;
        text-align: center;
        height: auto !important;
    }
    

    
    .solution-info {
        align-items: center;
        text-align: center;
    }
    
    .solution-feature-right {
        position: static;
        max-width: none;
        margin-top: 1rem;
        background: transparent;
        padding: 0;
        box-shadow: none;
    }

}

/* Малые планшеты и большие мобильные */
@media screen and (max-width: 640px) {
    .hero-banners { 
        padding: 0.9rem 0; 
    }
    .banner-left {
        min-height: 220px;
        padding: 1.3rem;
    }
    .banner-right { 
        min-height: 220px; 
    }
    
    /* Преимущества */
    .advantages-section { 
        padding: 1.3rem 0; 
    }
    .advantages-wrapper {
        grid-template-columns: 1fr;
        gap: 0.6rem;
    }
    .advantage-item {
        min-height: 110px;
        padding: 0.9rem;
    }
    
    /* Проблемы */
    .problems-section {
        padding: 50px 0;
    }
    .problems-section h2 {
        margin-left: 12px;
        margin-bottom: 16px;
    }
    .problem-card {
        padding: 16px;
        gap: 12px;
    }
    
    /* Этапы работы */
    .workflow-section {
        padding: 50px 0;
    }
    .workflow-section h2 {
        margin-left: 12px;
        margin-bottom: 3px;
    }
    .workflow-subtitle {
        margin-left: 12px;
        margin-bottom: 16px;
    }
    .workflow-grid {
        gap: 12px;
        margin-bottom: 30px;
    }
    .workflow-step {
        padding: 16px;
    }
    
    /* Блок с изображением */
    .corporate-image-section {
        padding: 50px 0;
    }
    .corporate-image-section h2 {
        margin-left: 12px;
        margin-bottom: 13px;
    }
    .corporate-image-wrapper {
        gap: 20px;
        min-height: 300px;
    }
    .corporate-image-content {
        gap: 30px;
        background: var(--color-white);
        border-radius: 20px;
        padding: 28px;
        margin-left: 0;
    }
    .corporate-image-info {
        gap: 24px;
    }
    
    .corporate-benefits {
        margin-top: 30px;
    }
    
    .corporate-button-wrapper {
        margin-top: 32px;
    }
    
    /* Блок "Почему нас выбирают" */
    .choose-us-section {
        padding-top: 50px;
        padding-bottom: 0;
    }
    .choose-us-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }
    .choose-us-main {
        grid-row: auto;
        grid-column: auto;
    }
    .choose-us-item {
        padding: 22px;
        min-height: 160px;
        border-radius: 20px;
    }
    
    /* Мобильная структура для главной плашки */
    .choose-us-main {
        min-height: 200px;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
    }
    .choose-us-main .choose-us-content {
        order: 2;
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
        width: 100%;
    }
    .choose-us-main .choose-us-content h2 { 
        margin-bottom: 20px; 
    }
    .choose-us-main .choose-us-content .text-p2 { 
        margin-bottom: 16px; 
    }
    .choose-us-main .choose-us-content .text-p2:last-of-type { 
        margin-bottom: 32px; 
    }
    
    .choose-us-cta {
        padding: 0 22px;
    }
    
    /* Форма обратной связи — стили в modular-contact-form.css */

    /* Блок лучших решений */

    .solution-adaptive-info {
        border-radius: 15px;
        padding: 15px;
    }
    
    .solution-adaptive-info .solution-header {
        margin-bottom: 0.75rem;
    }
    
    .best-solutions-section {
        padding: 80px 0 0 0;
    }
    
    .best-solutions-title {
        margin-left: 10px;
    }
    
    .solution-card {
        padding: 12px;
        border-radius: 12px;
        gap: 0.75rem;
        flex-direction: column;
        text-align: center;
    }
}


/* === БЛОК КЕЙСОВ === */

.cases-section {
    margin-top: 80px;
    padding: 0;
}

.cases-section h2 {
    margin: 0 0 26px 28px;
}

.case-card .case-image {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    border-radius: 20px;
    overflow: hidden;
    margin-bottom: 24px;
    z-index: 2;
}

.case-card .case-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.case-card h5 {
    position: relative;
    text-align: center;
    margin: 0 0 32px 0;
    z-index: 2;
    /* Фиксированная высота заголовка на 3 строки */
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: calc(1.3em * 3);
}

.cases-wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

/* Навигация слайдера кейсов — на десктопе скрыта, видна с ≤1024 (где включён scroll-snap).
   Стрелки расположены НАД слайдером, прижаты вправо (как .reviews-navigation на главной). */
.cases-navigation {
    display: none;
    gap: 12px;
    justify-content: flex-end;
    margin: 0 0 20px 0;
    padding: 0 20px;
}
.cases-nav-btn {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--color-white);
    border: 1px solid var(--color-border-light, #e5e5e5);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 0.2s ease, opacity 0.2s ease;
    padding: 0;
}
.cases-nav-btn:hover { background: var(--color-bg-secondary, #f4f5f7); }
.cases-nav-btn:disabled { opacity: 0.35; cursor: default; }
.cases-nav-btn .arrow-icon {
    width: 24px;
    height: 22px;
    display: block;
    transition: transform 0.2s ease;
    filter: invert(62%) sepia(93%) saturate(334%) hue-rotate(93deg) brightness(92%) contrast(89%);
}
.cases-nav-prev .arrow-icon { transform: scaleX(-1); }

.case-card {
    position: relative;
    border-radius: 30px;
    padding: 40px;
    background: var(--color-white);
    min-height: 500px;
    display: flex;
    flex-direction: column;
}

.case-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--color-white);
    border-radius: 30px;
    z-index: 1;
}

.case-content {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

/* Выравнивание высоты блока описания проблемы (после тега "Проблема") */
.case-problem {
    line-height: 1.5;
    min-height: 240px; /* фикс для выравнивания высоты блока "Проблема" на десктопе */
}

.case-content .text-p2 {
    text-align: center; 
}

.case-tags {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-bottom: 8px;
}

.case-card h4 {
    margin: 0 0 16px 0;
    color: var(--color-text-main);
    text-align: center;
}

.case-result {
    text-align: center;
}

.case-result p {
    margin: 0 0 8px 0;
    color: var(--color-text-main);
}

.case-result p:last-child {
    margin-bottom: 0;
}

.case-result p strong {
    color: var(--color-text-main);
}

/* Единая высота блока "Решение" */
.case-solution {
    line-height: 1.5;
    min-height: 220px;
}

@media screen and (max-width: 1024px) {
    .case-solution { min-height: 160px; }
}

@media screen and (max-width: 768px) {
    .case-solution { min-height: 140px; }
}

.arrow-down {
    color: var(--color-primary);
    font-weight: bold;
}

.arrow-up {
    color: var(--color-primary);
    font-weight: bold;
}




/* Адаптивные стили для блока кейсов */
@media screen and (max-width: 1024px) {
    .cases-section {
        margin-top: 80px;
    }
    
    .cases-section h2 {
        margin: 0 0 17px 0;
    }
    
    .case-card .case-image {
        border-radius: 16px;
        margin-bottom: 20px;
    }
    
    .case-card h5 {
        margin-bottom: 28px;
        min-height: calc(1.3em * 3);
    }
    
    /* Горизонтальный скролл кейсов на 1024px */
    .cases-wrapper {
        display: grid;
        grid-template-columns: none; /* отключаем фиксированный шаблон */
        grid-auto-flow: column;      /* авто-поток колонками */
        grid-auto-columns: 360px;    /* ширина карточки в ленте */
        gap: 24px;
        overflow-x: auto;
        overflow-y: hidden;
        padding: 0 20px 20px 20px;
        scroll-snap-type: x mandatory;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
    }
    .cases-wrapper::-webkit-scrollbar { display: none; }

    /* Стрелки навигации над слайдером */
    .cases-navigation { display: flex; }
    
    .case-card {
        padding: 32px;
        min-height: 600px;
        width: 100%;              /* занимает auto-column */
        scroll-snap-align: start;
    }

    .case-problem {
        min-height: 210px;
    }
}

/* Промежуточный breakpoint для средних планшетов */
@media screen and (max-width: 900px) {
    .case-card .case-image {
        border-radius: 14px;
    }
    
    .case-card {
        min-height: 520px;
    }
}

@media screen and (max-width: 768px) {
    .cases-section h2 {
        margin: 0 0 14px 0;
    }
    
    /* Горизонтальный скролл для кейсов */
    .cases-wrapper {
        display: flex;
        grid-template-columns: none;
        gap: 20px;
        overflow-x: auto;
        padding: 0 20px 20px 20px;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none; /* Firefox */
        -ms-overflow-style: none; /* IE and Edge */
    }
    
    .cases-wrapper::-webkit-scrollbar {
        display: none;
    }
    
    .case-card {
        flex: 0 0 320px;
        padding: 28px;
        min-height: 480px;
        scroll-snap-align: start;
    }
    
    .case-card .case-image {
        border-radius: 12px;
        margin-bottom: 16px;
    }
    
    .case-card h5 {
        margin-bottom: 24px;
        min-height: calc(1.3em * 3);
    }
    
    .case-content {
        gap: 20px;
    }

    .case-problem {
        min-height: 180px;
    }
}

/* Промежуточный breakpoint для больших мобильных */
@media screen and (max-width: 640px) {
    .case-card {
        flex: 0 0 300px;
        padding: 26px;
        min-height: 440px;
    }
    
    .case-card .case-image {
        border-radius: 10px;
    }
}

@media screen and (max-width: 480px) {
    .cases-section {
        margin-top: 40px;
    }
    
    .cases-section h2 {
        margin: 0 0 10px 0;
    }
    
    .case-card {
        flex: 0 0 280px;
        padding: 24px;
        min-height: 400px;
    }
    
    .case-card .case-image {
        border-radius: 10px;
        margin-bottom: 12px;
    }
    
    .case-card h5 {
        margin-bottom: 20px;
        min-height: calc(1.3em * 3);
    }
    
    .case-content {
        gap: 16px;
    }
    
    .case-tags {
        gap: 6px;
        margin-bottom: 6px;
    }
}

/* Очень маленькие экраны */
@media screen and (max-width: 360px) {
    .case-card .case-image {
        border-radius: 8px;
        margin-bottom: 10px;
    }
    
    .case-card h5 {
        margin-bottom: 16px;
    }
    
    .case-card {
        padding: 20px;
        min-height: 360px;
    }
    
    .case-content {
        gap: 14px;
    }
    
    .case-tags {
        gap: 4px;
        margin-bottom: 4px;
    }
}

/* === БЛОК FAQ === */
.faq-section {
    margin-top: 80px;
    position: relative;
}


/* Слой для оверлея */
.faq-section::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.faq-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
    align-items: start;
    position: relative;
    z-index: 2;
}

.faq-header {
    position: sticky;
    top: 2rem;
    background: url('../img/webp/Corp_FAQ_back.webp') center/cover;
    border-radius: 30px;
    padding: 32px;
    overflow: hidden;
    height: 100%;
}

.faq-header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.faq-header h2 {
    margin: 0;
    position: relative;
    z-index: 2;
}

.faq-header h2 .text-accent {
    color: var(--color-text-green);
}

/* .faq-accordion / .faq-item / .faq-question / .faq-arrow / .faq-answer —
   общие стили в assets/css/faq.css. Здесь — только page-specific layout
   обёрток .faq-wrapper / .faq-header (двухколоночный grid с заголовком справа). */

/* === АДАПТИВНОСТЬ FAQ (только page-specific .faq-header / .faq-wrapper) === */

@media screen and (max-width: 1024px) {
    .faq-wrapper {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
    .faq-header {
        position: static;
        padding: 1.5rem;
        border-radius: 20px;
    }
    .faq-header h2 {
        margin-bottom: 2rem;
        margin-left: 0;
    }
}

@media screen and (max-width: 768px) {
    .faq-section {
        margin-top: 80px;
    }
    .faq-wrapper {
        gap: 1.5rem;
    }
    .faq-header {
        padding: 1.25rem;
        border-radius: 15px;
    }
    .faq-header h2 {
        margin-left: 0;
    }
}

@media screen and (max-width: 480px) {
    .faq-wrapper {
        gap: 1rem;
    }
    .faq-header {
        padding: 1rem;
        border-radius: 12px;
    }
}

/* === БЛОК ТЕМ КОРПОРАТИВНЫХ ПРОГРАММ === */
.corporate-programs-section {
    padding-top: 80px;
    background: var(--color-bg-secondary);
}

/* Корректная остановка якоря под фиксированной шапкой */
#corporate-programs-title { scroll-margin-top: 120px; }
@media screen and (max-width: 1024px) { #corporate-programs-title { scroll-margin-top: 100px; } }
@media screen and (max-width: 768px) { #corporate-programs-title { scroll-margin-top: 80px; } }

/* Коррекция прокрутки к нижней форме */
#burgundy-form-wrapper { scroll-margin-top: 120px; }
@media screen and (max-width: 1024px) { #burgundy-form-wrapper { scroll-margin-top: 100px; } }
@media screen and (max-width: 768px) { #burgundy-form-wrapper { scroll-margin-top: 80px; } }

.corporate-programs-section h2 {
    margin-left: 28px;
    margin-bottom: 6px;
}

.programs-intro {
    margin-left: 28px;
    margin-bottom: 26px;
    color: var(--color-text-secondary);
}

.programs-states { 
    margin-left: 28px; 
    margin-bottom: 10px; 
}

.programs-loading { color: var(--color-text-muted); }
.programs-error { color: var(--color-error); }
.programs-empty { color: var(--color-text-secondary); }

.programs-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 16px;
}

.program-card {
    background: var(--color-white);
    border-radius: 30px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 20px;
    min-height: 180px;
    height: auto;
    position: relative;
    overflow: hidden;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.program-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-sm);
}

/* Фоновые иконки для каждой категории */
.program-card::before {
    content: '';
    position: absolute;
    bottom: 16px;
    right: 16px;
    width: 48px;
    height: 48px;
    background-size: 48px 48px;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0.1;
    z-index: 1;
}

.program-card-accounting::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%2332770A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='16' height='20' x='4' y='2' rx='2'/%3E%3Cline x1='8' x2='16' y1='6' y2='6'/%3E%3Cline x1='16' x2='16' y1='14' y2='18'/%3E%3Cpath d='M16 10h.01'/%3E%3Cpath d='M12 10h.01'/%3E%3Cpath d='M8 10h.01'/%3E%3Cpath d='M12 14h.01'/%3E%3Cpath d='M8 14h.01'/%3E%3Cpath d='M12 18h.01'/%3E%3Cpath d='M8 18h.01'/%3E%3C/svg%3E");
}

.program-card-budget::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%2332770A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 18v-7'/%3E%3Cpath d='M11.12 2.198a2 2 0 0 1 1.76.006l7.866 3.847c.476.233.31.949-.22.949H3.474c-.53 0-.695-.716-.22-.949z'/%3E%3Cpath d='M14 18v-7'/%3E%3Cpath d='M18 18v-7'/%3E%3Cpath d='M3 22h18'/%3E%3Cpath d='M6 18v-7'/%3E%3C/svg%3E");
}

.program-card-hr::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%2332770A' stroke-width='2'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'%3E%3C/path%3E%3Cpolyline points='14,2 14,8 20,8'%3E%3C/polyline%3E%3Cline x1='16' y1='13' x2='8' y2='13'%3E%3C/line%3E%3Cline x1='16' y1='17' x2='8' y2='17'%3E%3C/line%3E%3Cpolyline points='10,9 9,9 8,9'%3E%3C/polyline%3E%3C/svg%3E");
}

.program-card-foreign::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%2332770A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z'/%3E%3Cpath d='M12 22V12'/%3E%3Cpolyline points='3.29 7 12 12 20.71 7'/%3E%3Cpath d='m7.5 4.27 9 5.15'/%3E%3C/svg%3E");
}

.program-card-ifrs::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%2332770A' stroke-width='2'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='2' y1='12' x2='22' y2='12'%3E%3C/line%3E%3Cpath d='M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z'%3E%3C/path%3E%3C/svg%3E");
}

.program-card-procurement::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%2332770A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344'/%3E%3Cpath d='m9 11 3 3L22 4'/%3E%3C/svg%3E");
}

.program-card-law::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%2332770A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m16 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z'/%3E%3Cpath d='m2 16 3-8 3 8c-.87.65-1.92 1-3 1s-2.13-.35-3-1Z'/%3E%3Cpath d='M7 21h10'/%3E%3Cpath d='M12 3v18'/%3E%3Cpath d='M3 7h2c2 0 5-1 7-2 2 1 5 2 7 2h2'/%3E%3C/svg%3E");
}

.program-card-defense::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%2332770A' stroke-width='2'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'%3E%3C/path%3E%3C/svg%3E");
}

.program-card-finance::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%2332770A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 11h8a4 4 0 0 0 0-8H9v18'/%3E%3Cpath d='M6 15h8'/%3E%3C/svg%3E");
}

.program-card-management::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%2332770A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m11 17 2 2a1 1 0 1 0 3-3'/%3E%3Cpath d='m14 14 2.5 2.5a1 1 0 1 0 3-3l-3.88-3.88a3 3 0 0 0-4.24 0l-.88.88a1 1 0 1 1-3-3l2.81-2.81a5.79 5.79 0 0 1 7.06-.87l.47.28a2 2 0 0 0 1.42.25L21 4'/%3E%3Cpath d='m21 3 1 11h-2'/%3E%3Cpath d='M3 3 2 14l6.5 6.5a1 1 0 1 0 3-3'/%3E%3Cpath d='M3 4h8'/%3E%3C/svg%3E");
}

.program-card-office::before {
    background-image: url("data:image/svg+xml,%3Csvg version='1.0' xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 512 512' preserveAspectRatio='xMidYMid meet'%3E%3Cg transform='translate(0,512) scale(0.1,-0.1)' fill='%2332770A' stroke='none'%3E%3Cpath d='M3110 5113 c-161 -58 -2703 -1062 -2724 -1076 -15 -11 -37 -38 -47 -61 -18 -39 -19 -99 -19 -1492 0 -1600 -4 -1497 62 -1547 22 -16 501 -182 1378 -477 740 -249 1359 -454 1377 -457 24 -4 232 55 785 222 414 125 771 237 793 249 27 14 47 35 63 66 l22 44 0 1976 0 1976 -22 44 c-13 25 -37 53 -55 63 -43 25 -1537 477 -1572 476 -14 0 -33 -3 -41 -6z m710 -521 l655 -199 0 -1833 0 -1833 -659 -199 -658 -200 -574 193 c-316 106 -573 194 -571 195 2 2 250 -26 553 -62 302 -36 572 -63 600 -61 60 4 105 32 128 81 15 31 16 186 16 1731 0 1861 5 1724 -60 1778 -17 15 -46 29 -65 33 -22 4 -332 -44 -942 -146 -1007 -169 -977 -162 -1014 -243 -18 -40 -19 -87 -19 -1197 l0 -1155 -285 -97 -285 -97 2 1261 3 1261 1255 493 c690 271 1257 493 1260 494 3 0 300 -89 660 -198z m-830 -2192 c0 -1169 -3 -1470 -12 -1470 -7 0 -398 45 -867 100 -470 55 -864 100 -875 100 -36 0 -3 17 99 50 102 33 155 64 177 103 10 17 14 273 18 1182 l5 1160 715 122 c393 66 721 121 728 122 9 1 12 -299 12 -1469z'/%3E%3C/g%3E%3C/svg%3E");
}

.program-card-personnel::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%2332770A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 2v4a2 2 0 0 0 2 2h4'/%3E%3Cpath d='M15 18a3 3 0 1 0-6 0'/%3E%3Cpath d='M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7z'/%3E%3Ccircle cx='12' cy='13' r='2'/%3E%3C/svg%3E");
}

.program-card-military::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%2332770A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15.477 12.89 1.515 8.526a.5.5 0 0 1-.81.47l-3.58-2.687a1 1 0 0 0-1.197 0l-3.586 2.686a.5.5 0 0 1-.81-.469l1.514-8.526'/%3E%3Ccircle cx='12' cy='8' r='6'/%3E%3C/svg%3E");
}

.program-card-custom::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24' fill='none' stroke='%2332770A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z'/%3E%3Cpath d='m15 5 4 4'/%3E%3C/svg%3E");
}

.program-title {
    margin: 0;
    color: var(--color-text-main);
    overflow: hidden;
    position: relative;
    z-index: 2;
    transition: color 0.2s ease;
}

/* Убрано ограничение строк у заголовков всех карточек */

.program-title:hover {
    color: var(--color-primary);
}

.program-pdf {
    position: relative;
    z-index: 2;
    margin-top: auto; /* фиксируем блок ссылки у низа карточки */
}

.pdf-link {
    color: var(--color-text-burgundy);
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: opacity 0.2s ease;
}

.pdf-link:hover {
    opacity: 1;
}

.pdf-link svg {
    flex-shrink: 0;
}

/* Адаптивность блока программ */
@media screen and (max-width: 1024px) {
    .corporate-programs-section { padding: 80px 0; }
    .corporate-programs-section h2 { margin-left: 20px; }
    .programs-intro { margin-left: 20px; margin-bottom: 18px; }
    .programs-grid { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; }
    .program-card { min-height: 160px; height: auto; padding: 20px; }
}

@media screen and (max-width: 768px) {
    .corporate-programs-section { padding: 60px 0; }
    .corporate-programs-section h2 { margin-left: 16px; }
    .programs-intro { margin-left: 16px; margin-bottom: 16px; }
    .programs-grid { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; }
    .program-card { min-height: 150px; height: auto; padding: 18px; border-radius: 20px; }
    .program-card::before { width: 36px; height: 36px; background-size: 36px 36px; bottom: 12px; right: 12px; }
    
    .contact-form-wrapper.burgundy-form .contact-form-info-card.social-icons-burgundy {border-radius: 20px;}
}

@media screen and (max-width: 480px) {
    .corporate-programs-section { padding: 50px 0; }
    .corporate-programs-section h2 { margin-left: 12px; }
    .programs-intro { margin-left: 12px; margin-bottom: 13px; }
    .programs-grid { grid-template-columns: 1fr; gap: 12px; }
    .program-card { min-height: 140px; height: auto; padding: 16px; }
    .program-card::before { width: 32px; height: 32px; background-size: 32px 32px; bottom: 10px; right: 10px; }
}
