/*
Theme Name: EASC Child
Template: twentytwentyfive
*/

/* ===== 1. RESET & BASE ===== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

/* ===== 2. GLOBAL CONTAINER ===== */
.container {
    max-width: 1900px;
    margin: 0 auto;
    padding: 0 30px;
}

/* ===== 3. TYPOGRAPHY ===== */

/* 3.1 Базовые заголовки */
h1, h2, h3, h4 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
}

h1 {
    color: #1a2a4f;
    font-size: 4rem;
    font-weight: 500;
    -webkit-text-stroke: 0.5px currentColor;
    text-shadow: 0.5px 0 0 currentColor;
}

/* 3.2 Универсальный заголовок секций (синий градиент) */
.h2-title {
    margin: 30px auto;
    max-width: calc(100% - 80px);
    text-align: center;
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

/* 3.3 Hero заголовок — синяя часть */
.hero h1 .blue-text {
    background: linear-gradient(135deg, #1a2a4f 0%, #2a2a6f 50%, #1a2a4f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-weight: 800;
    font-size: 4rem;
    font-family: 'Montserrat', sans-serif;
}

/* 3.4 Hero заголовок — бронзовая/золотая часть */
.hero h1 .bronze-text {
    font-weight: 800;
    font-size: 4rem;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    text-shadow: none;
    font-family: 'Montserrat', sans-serif;
}

/* 3.5 Основной текст */
body, 
p, 
li, 
span, 
.hero-subtitle, 
.feature p, 
.btn-content small {
    font-family: 'Mulish', sans-serif;
    font-weight: 400;
    color: #0a2540;
}

/* 3.6 Hero подзаголовок */
.hero-subtitle {
    font-size: 1.5rem;
    line-height: 1.4;
    max-width: 90%;
    font-weight: 600;
    letter-spacing: -0.01em;
}

/* 3.7 Текст под иконками в hero */
.feature p {
    font-size: 1.05rem;
    font-weight: 600;
}

/* ===== 4. HEADER ===== */
.site-header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    background: transparent;
    padding: 20px 0;
}

/* ===== 5. HERO SECTION ===== */


.hero .container {
    position: relative;
    z-index: 2;
}


/* 5.1 Hero Features (иконки) */
.hero-features {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin: 30px 0;
    max-width: 780px;
}

.feature {
    text-align: center;
}

/* Сдвиг последней иконки */
.feature:last-child .feature-icon-circle img {
    position: relative;
    top: -4px;
}

/* 5.2 Круги вокруг иконок */
.feature-icon-circle {
    width: 100px;
    height: 100px;
    margin: 0 auto 15px auto;
    border: 4px solid #b8860b;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(184, 134, 11, 0.3);
}

.feature-icon-circle img {
    width: 56px;
    height: 56px;
    filter: brightness(0) saturate(100%) invert(12%) sepia(29%) saturate(3860%) hue-rotate(206deg) brightness(91%) contrast(98%);
}

/* 5.3 Hero Buttons */
.hero-buttons {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
    margin-top: 0;
}

.hero-buttons .btn {
    flex: 1;
    max-width: calc(50% - 12px);
}

/* 5.4 Hero Background Image (плавный переход) */

.hero-bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 60%;
    background-size: cover;
    background-position: 70% center;
    z-index: 1;
    mask-image: linear-gradient(90deg, transparent 0%, transparent 20%, black 50%);
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, transparent 15%, black 40%);
}
    
.hero {
    position: relative;
    background: linear-gradient(90deg, #ffffff 0%, #ffffff 65%, #e6f2ff 100%);
    overflow: hidden;
    padding-top: 120px;
    min-height: 100vh !important;
}
/* ===== 6. BUTTONS ===== */

/* 6.1 База кнопок */
.btn {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    padding: 8px 28px;
    border-radius: 20px;
    text-decoration: none;
    min-width: 240px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(2px);
    transition: all 0.25s ease;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 4px 12px rgba(0, 0, 0, 0.1);
}

/* 6.2 Цветовые схемы */
.btn-primary {
    background: linear-gradient(135deg, #1a2a4f 0%, #2a2a6f 50%, #1a2a4f 100%);
    color: white;
}

.btn-secondary {
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    color: white;
}

/* 6.3 Контент внутри кнопок */
.btn img {
    width: 60px;
    height: 60px;
    filter: brightness(0) invert(1);
}

.btn-content {
    text-align: left;
    margin-left: 14px;
}

.btn-content strong {
    display: block;
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 4px;
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
}

.btn-content small {
    font-size: 17px;
    opacity: 0.9;
}

.btn-primary .btn-content strong,
.btn-primary .btn-content small,
.btn-secondary .btn-content strong,
.btn-secondary .btn-content small {
    color: white;
}

/* 6.4 Hover эффекты */
.btn-primary:hover,
.btn-secondary:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2);
}

.btn:active {
    transform: translateY(0);
}

/* ===== 7. HERO EXTENSIONS ===== */
.hero {
    padding-bottom: 50px;
}

.hero-content,
.hero-features,
.hero-buttons {
    max-width: 900px;
}

/* ===== 7. DIPLOMA BENEFITS SECTION ===== */

/* 7.1 Основной блок */
.diploma-benefits {
    background: linear-gradient(135deg, #1a2a4f 0%, #2a2a6f 50%, #1a2a4f 100%);
    margin: -20px auto 40px auto;
    max-width: calc(100% - 60px);
    border-radius: 32px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25), 0 8px 16px rgba(0, 0, 0, 0.15);
    overflow: hidden;
    position: relative;
    z-index: 5;
}

/* 7.2 Контейнер внутри блока */
.diploma-benefits .container {
    padding: 40px 30px;
}

/* 7.3 Заголовок секции со стрелками */
.diploma-benefits .section-title {
    display: flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    gap: 20px;
    text-align: center;
    color: white;
    font-family: 'Mulish', sans-serif;
    font-size: 2rem;
    font-weight: 600;
    letter-spacing: -0.02em;
    margin-bottom: 30px;
    text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
}

/* 7.4 Стрелки заголовка */
.arrow-left,
.arrow-right {
    width: 80px;
    height: 40px;
    margin: 0 auto;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    flex-shrink: 0;
}

.arrow-left img,
.arrow-right img {
    opacity: 0;
    width: 100%;
    height: 100%;
}

.arrow-left {
    transform: scaleX(-2);
    margin-right: 5px;
}

.arrow-right {
    transform: scaleX(2);
    margin-left: 5px;
}

/* 7.5 Сетка преимуществ */
.benefits-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0;
}

/* 7.6 Карточка преимущества */
.benefit-item {
    padding: 20px 20px;
    text-align: center;
    border-right: 1px solid rgba(255, 255, 255, 0.15);
}

.benefit-item:last-child {
    border-right: none;
}

/* 7.7 Иконка с градиентом (маска) */
.benefit-icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 20px auto;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.benefit-icon img {
    opacity: 0;
    width: 80px;
    height: 80px;
}

/* 7.8 Заголовок карточки */
.benefit-item h3 {
    color: white;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 10px;
    min-height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 7.9 Текст карточки */
.benefit-item p {
    color: rgba(255, 255, 255, 0.8);
    font-family: 'Mulish', sans-serif;
    font-size: 1rem;
    line-height: 1.4;
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ===== 8. OFFLINE LEARNING SECTION ===== */

/* 8.1 Блок с обводкой */
.offline-learning {
    margin: 40px auto;
    max-width: calc(100% - 80px);
    position: relative;
    z-index: 5;
}

/* 8.2 Карточка блока */
.offline-card {
    background: transparent;
    border: 2px solid #d4af37;
    border-radius: 32px;
    padding: 40px;
    display: flex;
    align-items: center;
    gap: 40px;
    position: relative;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25), 0 8px 16px rgba(0, 0, 0, 0.15);
}

/* 8.3 Иконка в круге */
.offline-icon {
    flex-shrink: 0;
}

.icon-circle {
    width: 120px;
    height: 120px;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(184, 134, 11, 0.3);
}

.icon-mask {
    width: 70px;
    height: 70px;
    background: white;
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.icon-mask img {
    opacity: 0;
    width: 70px;
    height: 70px;
}

/* 8.4 Контент */
.offline-content {
    flex: 1;
}

.offline-content h2 {
    font-family: 'Montserrat', sans-serif;
    font-size: 2.2rem;
    font-weight: 500;
    margin-bottom: 25px;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

/* 8.5 Список с галочками */
.offline-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.offline-list li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 15px;
    font-family: 'Mulish', sans-serif;
    font-size: 1.1rem;
    line-height: 1.4;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.check-icon {
    width: 28px;
    height: 28px;
    background: linear-gradient(135deg, #2ecc71 0%, #27ae60 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    flex-shrink: 0;
    margin-top: 2px;
}

.check-icon img {
    opacity: 0;
    width: 28px;
    height: 28px;
}

/* 8.6 Кнопка */
.offline-button {
    flex-shrink: 0;
}

.btn-offline {
    display: inline-block;
    padding: 20px 36px;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    border-radius: 20px;
    text-decoration: none;
    text-align: center;
    transition: all 0.3s ease;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12), 0 2px 4px rgba(0, 0, 0, 0.05);
    min-width: 260px;
}

.btn-offline strong {
    display: block;
    color: white;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.3rem;
    font-weight: 700;
    margin-bottom: 8px;
}

.btn-offline small {
    display: block;
    color: rgba(255, 255, 255, 0.9);
    font-family: 'Mulish', sans-serif;
    font-size: 1rem;
}

.btn-offline:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2);
}

/* ===== 9. ALTERNATIVE SOLUTION SECTION ===== */

/* 9.1 Основной блок */
.alternative-solution {
    margin: 40px auto;
    max-width: calc(100% - 80px);
    position: relative;
    z-index: 5;
}

/* 9.2 Карточка блока */
.alternative-card {
    background: #ffffff;
    border: 2px solid #d4af37;
    border-radius: 32px;
    padding: 0;
    display: flex;
    position: relative;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25), 0 8px 16px rgba(0, 0, 0, 0.15);
    min-height: 600px;
}

/* 9.3 Левая часть - фоновое изображение */
.alternative-bg {
    width: 20%;
    background-size: cover;
    background-position: center;
    position: relative;
    z-index: 1;
}

.alternative-bg::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    background: linear-gradient(90deg, rgba(255,255,255,0) 0%, #ffffff 100%);
    pointer-events: none;
}

/* 9.4 Центральная часть */
.alternative-center {
    flex: 1;
    padding: 50px 40px;
    position: relative;
    z-index: 2;
    background: white;
}

.alternative-center h2 {
    margin-bottom: 30px;
}

/* 9.4.1 Заголовки центральной части */
.main-title {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.8rem;
    font-weight: 500;
    color: #1a2a4f;
    margin-bottom: 10px;
}

.sub-title {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 2.2rem;
    font-weight: 800;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

/* 9.4.2 Текстовые блоки */
.alternative-text-blocks {
    margin-bottom: 30px;
}

.block-1,
.block-2 {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    font-weight: 700;
    color: #1a2a4f;
    line-height: 1.5;
}

.block-1 {
    margin-bottom: 15px;
}

/* 9.4.3 Список с зелёными галочками */
.alternative-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.alternative-list li {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 10px;
    margin-bottom: 15px;
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #1a2a4f;
}

.check-icon-gold {
    width: 24px;
    height: 24px;
    background: linear-gradient(135deg, #2ecc71 0%, #27ae60 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    flex-shrink: 0;
}

.check-icon-gold img {
    opacity: 0;
    width: 24px;
    height: 24px;
}

/* 9.5 Правая часть */
.alternative-right {
    width: 30%;
    background: linear-gradient(135deg, #f8f9fa 0%, #eef2f7 100%);
    padding: 50px 30px;
    border-left: 1px solid rgba(0, 0, 0, 0.05);
}

/* 9.5.1 Заголовок правой части */
.alternative-right h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a2a4f;
    margin-bottom: 20px;
}

/* 9.5.2 Текст правой части */
.alternative-right > p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #1a2a4f;
    line-height: 1.5;
    margin-bottom: 30px;
}

/* 9.5.3 Блок признания */
.recognition-block {
    margin-top: 20px;
}

.russia-flag {
    width: 60px;
    height: 60px;
    margin-bottom: 15px;
}

.recognition-block h4 {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: 10px;
}

.recognition-block p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #1a2a4f;
    line-height: 1.5;
}

/* ===== 10. SAFETY SECTION TITLE ===== */
.safety-title {
    margin: 60px auto 40px auto;
    max-width: calc(100% - 80px);
    text-align: center;
}

.safety-heading {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    letter-spacing: -0.02em;
}

/* ===== 11. FEATURES CARDS SECTION ===== */

/* 11.1 Секция */
.features-cards {
    margin: 40px auto;
    max-width: calc(100% - 80px);
}

/* 11.2 Сетка карточек */
.cards-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 24px;
}

/* 11.3 Карточка */
.feature-card {
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 20px;
    padding: 24px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.feature-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
}

/* 11.4 Иконка карточки */
.feature-card .card-icon {
    margin-bottom: 20px;
}

.icon-mask-card {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.icon-mask-card img {
    opacity: 0;
    width: 60px;
    height: 60px;
}

/* 11.5 Контент карточки */
.feature-card .card-content h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a2a4f;
    margin-bottom: 12px;
    line-height: 1.3;
}

.feature-card .card-content p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #4a5568;
    line-height: 1.4;
}

/* ===== 12. PRICE TITLE SECTION ===== */
.price-title {
    margin: 60px auto 40px auto;
    max-width: calc(100% - 80px);
    text-align: center;
}

.price-heading {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    letter-spacing: -0.02em;
}

/* ===== 13. PRICE CARDS SECTION ===== */

/* 13.1 Секция */
.price-cards {
    margin: 40px auto;
    max-width: calc(100% - 80px);
}

/* 13.2 Сетка карточек */
.price-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

/* 13.3 Карточка */
.price-card {
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 24px;
    padding: 28px 20px;
    text-align: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    display: flex;
    flex-direction: column;
}

.price-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
}

/* 13.4 Заголовок карточки */
.price-card h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a2a4f;
    margin-bottom: 20px;
    line-height: 1.3;
}

/* 13.5 Цены */
.price-value {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    font-weight: 800;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: 8px;
}

/* Градиент только для чисел */
.gradient-number {
    font-family: 'Montserrat', sans-serif;
    font-weight: 800;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.price-period {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #1a2a4f;
    margin-bottom: 15px;
}

.price-or {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #1a2a4f;
    margin: 5px 0;
}

/* Диапазон цен */
.price-range {
    margin-bottom: 15px;
}

.price-from,
.price-to,
.price-from-to {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.3rem;
    font-weight: 700;
    color: #1a2a4f;
}

.price-from {
    margin-bottom: 5px;
}

/* 13.6 Описание */
.price-description {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #1a2a4f;
    line-height: 1.4;
    margin-bottom: 20px;
    flex-grow: 1;
}

/* 13.7 Кнопка */
.price-btn {
    display: inline-block;
    padding: 10px 20px;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    color: white;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.3rem;
    font-weight: 700;
    text-decoration: none;
    border-radius: 30px;
    transition: all 0.3s ease;
    margin-top: auto;
}

.price-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* 13.8 Общая тень для карточек */
.feature-card,
.price-card {
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15), 0 8px 16px rgba(0, 0, 0, 0.08);
}

/* ===== 14. POPULAR DIRECTIONS TITLE ===== */
.popular-title {
    margin: 60px auto 40px auto;
    max-width: calc(100% - 80px);
    text-align: center;
}

.popular-heading {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    letter-spacing: -0.02em;
}

/* ===== 15. PROGRAMS SECTION ===== */

/* 15.1 Основной блок */
.programs-section {
    margin: 40px auto;
    max-width: calc(100% - 80px);
}

.programs-card {
    background: #ffffff;
    border-radius: 32px;
    padding: 50px 40px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15), 0 8px 16px rgba(0, 0, 0, 0.08);
}

/* 15.2 Заголовки категорий */
.programs-category {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    text-align: center;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin: 40px 0 30px 0;
    letter-spacing: -0.02em;
}

.programs-category:first-of-type {
    margin-top: 0;
}

/* 15.3 Сетка программ */
.programs-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 30px 20px;
}

/* 15.4 Карточка программы */
.program-item {
    text-align: center;
    transition: transform 0.3s ease;
}

.program-item:hover {
    transform: translateY(-5px);
}

/* 15.5 Иконка программы */
.program-icon {
    width: 70px;
    height: 70px;
    margin: 0 auto 15px auto;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.program-icon img {
    opacity: 0;
    width: 70px;
    height: 70px;
}

/* 15.6 Текст программы */
.program-item p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    font-weight: 600;
    color: #1a2a4f;
    line-height: 1.3;
}

/* ===== 16. WHY BULGARIA TITLE ===== */
.why-bulgaria-heading {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    letter-spacing: -0.02em;
}

/* ===== 17. WHY BULGARIA CARDS ===== */

/* 17.1 Секция */
.why-bulgaria-cards {
    margin: 40px auto;
    max-width: calc(100% - 80px);
}

/* 17.2 Сетка карточек */
.bulgaria-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 30px 20px;
}

/* 17.3 Карточка */
.bulgaria-item {
    text-align: center;
    transition: transform 0.3s ease;
}

.bulgaria-item:hover {
    transform: translateY(-5px);
}

/* 17.4 Иконка */
.bulgaria-icon {
    width: 70px;
    height: 70px;
    margin: 0 auto 15px auto;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.bulgaria-icon img {
    opacity: 0;
    width: 70px;
    height: 70px;
}

/* 17.5 Текст */
.bulgaria-item p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    font-weight: 600;
    color: #1a2a4f;
    line-height: 1.3;
}

/* ===== 18. CTA SECTION ===== */

/* 18.1 Основной блок */
.cta-section {
    margin: 40px auto;
    max-width: calc(100% - 80px);
}

/* 18.2 Карточка CTA */
.cta-card {
    background: linear-gradient(135deg, #0f1a35 0%, #1a2a4f 100%);
    border-radius: 32px;
    padding: 30px 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25), 0 8px 16px rgba(0, 0, 0, 0.15);
}

/* 18.3 Текстовая часть */
.cta-content {
    flex: 1;
}

.cta-content h2 {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    color: white;
    margin-bottom: 20px;
    letter-spacing: -0.02em;
}

.cta-content p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: rgba(255, 255, 255, 0.9);
    line-height: 1.5;
    max-width: 500px;
}

/* 18.4 Кнопки CTA */
.cta-buttons {
    display: flex;
    gap: 24px;
    flex-shrink: 0;
}

.cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    padding: 16px 28px;
    border-radius: 20px;
    text-decoration: none;
    transition: all 0.3s ease;
    min-width: 240px;
    border: 1px solid rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(2px);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 4px 12px rgba(0, 0, 0, 0.1);
}

.cta-primary {
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    color: white;
}

.cta-secondary {
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    color: white;
}

.cta-btn img {
    width: 56px;
    height: 56px;
    filter: brightness(0) invert(1);
}

.cta-btn-content {
    text-align: left;
}

.cta-btn-content strong {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.3rem;
    font-weight: 700;
    margin-bottom: 4px;
    color: white;
}

.cta-btn-content small {
    display: block;
    font-family: 'Mulish', sans-serif;
    font-size: 1rem;
    opacity: 0.9;
    color: white;
}

.cta-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.2);
}

.cta-btn:active {
    transform: translateY(0);
}

/* ===== 19. PAGE-SPECIFIC STYLES ===== */

/* 19.1 Страница бакалавриата */
.hero.page-bakalavriat .bronze-text {
    font-size: 2.8rem;
}

.hero.page-bakalavriat .hero-bg {
    width: 58%;
    background-position: 90% center;
}

/* 19.2 Переопределение теней кнопок */
.btn {
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

.btn-primary:hover,
.btn-secondary:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

/* ===== 20. FORMAT LEARNING SECTION ===== */

/* 20.1 Основной блок */
.format-learning {
    margin: 60px auto;
    max-width: calc(100% - 80px);
}

/* 20.2 Заголовок */
.format-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    text-align: center;
    margin-bottom: 40px;
    letter-spacing: -0.02em;
}

/* 20.3 Сетка карточек */
.format-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

/* 20.4 Карточка формата (базовые стили) */
.format-card {
    background: #ffffff;
    border-radius: 24px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 35px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.08), 0 4px 8px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.format-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 30px rgba(0, 0, 0, 0.12);
}

/* 20.5 Иконка */
.format-icon {
    flex-shrink: 0;
}

.format-icon-mask {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.format-icon-mask img {
    opacity: 0;
    width: 80px;
    height: 80px;
}

/* 20.6 Контент карточки */
.format-content {
    flex: 1;
    padding-left: 10px;
}

.format-content h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a2a4f;
    margin-bottom: 10px;
}

.format-content p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #4a5568;
    line-height: 1.4;
}

/* 20.7 Карточка с галочками (checklist) */
.format-checklist {
    display: flex;
    align-items: center;
    justify-content: center;
}

.format-checklist-items {
    width: 100%;
}

.check-item {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    font-weight: 500;
    color: #1a2a4f;
}

.check-item .check-icon-gold {
    width: 30px;
    height: 30px;
    background: linear-gradient(135deg, #2ecc71 0%, #27ae60 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    flex-shrink: 0;
}

.check-item .check-icon-gold img {
    opacity: 0;
    width: 40px;
    height: 40px;
}

/* ===== 21. UNIVERSITIES SECTION ===== */

/* 21.1 Основной блок */
.universities {
    margin: 60px auto;
    max-width: calc(100% - 80px);
}

/* 21.2 Сетка */
.universities-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

/* 21.3 Карточка университета */
.university-card {
    background: #ffffff;
    border-radius: 32px;
    padding: 40px 30px 0 30px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12), 0 8px 16px rgba(0, 0, 0, 0.08);
    transition: transform 0.3s ease;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.university-card:hover {
    transform: translateY(-5px);
}

/* 21.4 Бейдж */
.uni-badge {
    display: inline-block;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    padding: 6px 16px;
    border-radius: 30px;
    font-family: 'Montserrat', sans-serif;
    font-size: 0.8rem;
    font-weight: 700;
    color: #1a2a4f;
    margin-bottom: 20px;
    letter-spacing: 0.5px;
}

/* 21.5 Заголовок университета */
.uni-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    color: #1a2a4f;
    text-align: center;
    margin-bottom: 15px;
    line-height: 1.3;
}

/* 21.6 Подзаголовок */
.uni-subtitle {
    font-family: 'Mulish', sans-serif;
    font-size: 1.5rem;
    color: #1a2a4f;
    text-align: center;
    margin-bottom: 30px;
    line-height: 1.5;
}

/* 21.7 Секция с направлениями */
.uni-section {
    margin-bottom: 25px;
}

.uni-section-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.3rem;
    font-weight: 700;
    color: #d4af37;
    margin-bottom: 15px;
    border-left: 3px solid #d4af37;
    padding-left: 12px;
}

/* 21.8 Список с точками */
.uni-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px 20px;
}

.uni-list li {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #1a2a4f;
    position: relative;
    padding-left: 18px;
}

.uni-list li::before {
    content: '•';
    position: absolute;
    left: 0;
    color: #d4af37;
    font-size: 1.2rem;
    font-weight: 700;
}

/* 21.9 Изображение университета */
.uni-image {
    margin-top: auto;
    text-align: center;
    padding: 25px 0 0 0;
    margin-left: -30px;
    margin-right: -30px;
    margin-bottom: 0;
    border-radius: 0 0 32px 32px;
    overflow: hidden;
}

.uni-image img {
    width: 100%;
    height: auto;
    display: block;
}

/* ===== 21.10 УНИВЕРСИТЕТЫ — ВАРИАНТЫ ОФОРМЛЕНИЯ ===== */

/* Блок 1 (синий бейдж) */
.university-card:first-child .uni-badge {
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    color: white;
    font-size: 1.3rem;
    box-shadow: 0 4px 12px rgba(26, 42, 79, 0.3);
}

.university-card:first-child .uni-list li::before {
    color: #1a2a4f;
}

.university-card:first-child .uni-section-title {
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    border-left-color: #1a2a4f;
}

/* Блок 2 (золотистый бейдж) */
.university-card:last-child .uni-badge {
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    color: white;
    font-size: 1.3rem;
    box-shadow: 0 4px 12px rgba(212, 175, 55, 0.3);
}

.university-card:last-child .uni-list li::before {
    color: #d4af37;
}

/* ===== 22. THREE BLOCKS SECTION ===== */

/* 22.1 Основной блок */
.three-blocks {
    margin: 60px auto;
    max-width: calc(100% - 80px);
}

/* 22.2 Сетка */
.three-blocks-grid {
    display: flex;
    align-items: center;
    gap: 0;
    background: #ffffff;
    border-radius: 32px;
    padding: 40px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08), 0 8px 16px rgba(0, 0, 0, 0.05);
}

/* 22.3 Блок 1 (45%) */
.block-large {
    width: 45%;
    display: flex;
    align-items: center;
    gap: 25px;
    padding-right: 30px;
    border-right: 1px solid rgba(0, 0, 0, 0.1);
}

.block-icon-large {
    flex-shrink: 0;
}

.block-icon-mask {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.block-icon-mask img {
    opacity: 0;
    width: 80px;
    height: 80px;
}

.block-content h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    color: #1a2a4f;
    margin-bottom: 10px;
}

.bronze-text-block {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 500;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

/* 22.4 Блок 2 (30%) */
.block-text {
    width: 30%;
    padding: 0 30px;
    border-right: 1px solid rgba(0, 0, 0, 0.1);
}

.block-text p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #1a2a4f;
    line-height: 1.5;
}

/* 22.5 Блок 3 (25%) */
.block-small {
    width: 25%;
    display: flex;
    align-items: center;
    gap: 15px;
    padding-left: 30px;
}

.block-icon-small {
    flex-shrink: 0;
}

.block-icon-mask-small {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.block-icon-mask-small img {
    opacity: 0;
    width: 80px;
    height: 80px;
}

.block-small-content p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #1a2a4f;
    line-height: 1.4;
}

/* ===== 23. PAGE-SPECIFIC STYLES ===== */

/* -------------------- 23.1 BACHELOR PAGE (БАКАЛАВРИАТ) -------------------- */

/* Сетка для блока "Почему Болгария" на странице бакалавриата */
.page-bakalavriat .bulgaria-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 30px 20px;
    width: 100%;
}

.page-bakalavriat .why-bulgaria-cards .container {
    max-width: 100%;
    padding: 0;
}

/* Горизонтальные карточки (иконка слева от текста) */
.page-bakalavriat .bulgaria-grid-horizontal {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 30px;
}

.page-bakalavriat .bulgaria-item-horizontal {
    display: flex;
    align-items: center;
    gap: 15px;
    border-radius: 20px;
    padding: 20px;
    transition: transform 0.3s ease;
}

.page-bakalavriat .bulgaria-item-horizontal:hover {
    transform: translateY(-5px);
}

.page-bakalavriat .bulgaria-icon-horizontal {
    width: 70px;
    height: 70px;
    flex-shrink: 0;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.page-bakalavriat .bulgaria-icon-horizontal img {
    opacity: 0;
    width: 70px;
    height: 70px;
}

.page-bakalavriat .bulgaria-item-horizontal p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    font-weight: 600;
    color: #1a2a4f;
    line-height: 1.3;
    margin: 0;
}

/* Hero секция на странице бакалавриата */
.hero.page-bakalavriat h1 {
    line-height: 1;
}

.hero.page-bakalavriat .bronze-text {
    line-height: 1;
}

/* ===== 23. PAGE-SPECIFIC STYLES (continued) ===== */

/* -------------------- 23.2 MASTER PAGE (МАГИСТРАТУРА) -------------------- */

/* Плавающий блок в hero-секции */
.hero {
    position: relative;
}

.hero-float-block {
    position: absolute;
    bottom: 60px;
    right: 30px;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 100%);
    border-radius: 20px;
    padding: 10px 10px;
    display: flex;
    align-items: center;
    gap: 6px;
    z-index: 10;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
    backdrop-filter: blur(2px);
}

/* Hero Features — 5 колонок вместо 4 */
.page-magistratura .hero-features {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 15px;
    max-width: 100%;
}

.float-icon {
    flex-shrink: 0;
}

.float-icon-mask {
    width: 90px;
    height: 90px;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.float-icon-mask img {
    opacity: 0;
    width: 100px;
    height: 100px;
}

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

.float-title-white {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: white;
    margin-bottom: 5px;
}

.float-title-gold {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    font-weight: 600;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

/* Простой текст вместо списков */
.page-magistratura .uni-simple-text {
    margin: 20px 0;
}

.page-magistratura .uni-simple-text p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #1a2a4f;
    line-height: 1.5;
    margin: 0;
}

/* Подзаголовок карточки университета */
.page-magistratura .university-card .uni-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    font-weight: 600;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    text-align: center;
    margin-bottom: 25px;
}

/* Стили для блока стоимости */
.page-magistratura.price-block .three-blocks-grid {
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    border-radius: 32px;
    padding: 40px;
    display: flex;
    gap: 30px;
}

.page-magistratura.price-block .block-large {
    width: 40%;
    display: flex;
    gap: 20px;
    border-right: 1px solid rgba(255, 255, 255, 0.2);
    padding-right: 30px;
}

.page-magistratura.price-block .block-checklist {
    width: 35%;
    border-right: 1px solid rgba(255, 255, 255, 0.2);
    padding-right: 30px;
}

.page-magistratura.price-block .block-small {
    width: 25%;
    display: flex;
    align-items: center;
    gap: 15px;
}

.page-magistratura.price-block .block-content h3 {
    color: white;
    font-size: 2rem;
    margin-bottom: 10px;
}

.page-magistratura.price-block .price-gold {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 600;
    color: white;
    margin-bottom: 15px;
}

.page-magistratura.price-block .gradient-number {
    font-weight: 800;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.page-magistratura.price-block .price-description-text {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: rgba(255, 255, 255, 0.8);
    line-height: 1.4;
}

/* Галочки в блоке стоимости */
.page-magistratura.price-block .checklist-custom {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.page-magistratura.price-block .check-custom {
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
}

.page-magistratura.price-block .check-custom span {
    color: white !important;
}

.page-magistratura.price-block .check-icon-gold-small {
    width: 30px;
    height: 30px;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    flex-shrink: 0;
}

.page-magistratura.price-block .check-icon-gold-small img {
    opacity: 0;
    width: 50px;
    height: 50px;
}

/* Третий блок стоимости */
.page-magistratura.price-block .block-small-content p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: white !important;
    line-height: 1.4;
}

/* Иконки золотые */
.page-magistratura.price-block .gold-icon {
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
}

/* Увеличенная иконка в третьем блоке */
.page-magistratura.price-block .block-icon-mask-small {
    width: 100px;
    height: 100px;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

/* Подвал блока стоимости */
.price-footer-text {
    text-align: center;
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.price-footer-text p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: rgba(255, 255, 255, 0.8);
}

/* Сетка для блока "Почему Болгария" на странице магистратуры */
.page-magistratura .bulgaria-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 30px 20px;
    width: 100%;
}

.page-magistratura .why-bulgaria-cards .container {
    max-width: 100%;
    padding: 0;
}

/* Заголовки внутри карточек */
.page-magistratura .bulgaria-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.3rem;
    font-weight: 700;
    color: #1a2a4f;
    margin-bottom: 12px;
    margin-top: 15px;
    line-height: 1.3;
}

/* ===== 24. DOUBLE BLOCK SECTION (HOW IT WORKS PAGE) ===== */

/* 24.1 Основной блок */
.double-block {
    margin: 60px auto;
    max-width: calc(100% - 80px);
}

/* 24.2 Контейнер */
.double-container {
    display: flex;
    border-radius: 32px;
    overflow: hidden;
}

/* 24.3 Левый блок (жёлтый фон) */
.double-left {
    flex: 1;
    background: #fef8e7;
    padding: 50px 40px;
    display: flex;
    gap: 25px;
    border-radius: 32px 0 0 32px;
}

/* 24.4 Правый блок (синий фон) */
.double-right {
    flex: 1;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    padding: 50px 40px;
    display: flex;
    gap: 25px;
    border-radius: 0 32px 32px 0;
}

/* 24.5 Иконки */
.double-icon {
    flex-shrink: 0;
}

.double-icon-mask {
    width: 100px;
    height: 100px;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.double-icon-mask img {
    opacity: 0;
    width: 100px;
    height: 100px;
}

/* 24.6 Контент */
.double-content {
    flex: 1;
}

/* 24.6.1 Левый блок — контент */
.double-left .double-content h2 {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: 20px;
    line-height: 1.3;
}

.double-left .double-content p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #4a5568;
    line-height: 1.5;
}

/* 24.6.2 Правый блок — контент */
.double-right .double-content h2 {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: 20px;
    line-height: 1.3;
}

.double-right .double-content p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: rgba(255, 255, 255, 0.9);
    line-height: 1.5;
    margin-bottom: 25px;
}

/* 24.7 Кнопка */
.double-btn {
    display: inline-block;
    padding: 14px 32px;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    color: white;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    text-decoration: none;
    border-radius: 40px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.double-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

/* ===== 23.3 HOW IT WORKS PAGE (КАК ЭТО РАБОТАЕТ) ===== */

/* Стили для hero-секции */
.page-how-it-works .hero-bg {
    width: 55%;
    background-size: cover;
    background-position: 85% 50%;
}

.page-how-it-works .bronze-text {
    font-size: 2.6rem !important;
    line-height: 1.2 !important;
    display: inline-block;
    margin-bottom: 20px;
}

.page-how-it-works .hero-subtitle.dark-blue {
    font-size: 1.5rem !important;
}

/* 3 карточки под текстом в hero */
.page-how-it-works .hero-cards {
    display: flex;
    gap: 30px;
    margin-top: 40px;
    flex-wrap: wrap;
}

.page-how-it-works .hero-card {
    display: flex;
    align-items: center;
    gap: 15px;
    background: #ffffff;
    padding: 15px 25px;
    border-radius: 20px;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
    flex: 1;
    transition: transform 0.3s ease;
}

.page-how-it-works .hero-card:hover {
    transform: translateY(-3px);
}

.page-how-it-works .hero-card-icon {
    flex-shrink: 0;
}

.page-how-it-works .hero-card-icon-mask {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.page-how-it-works .hero-card-icon-mask img {
    opacity: 0;
    width: 50px;
    height: 50px;
}

.page-how-it-works .hero-card-text p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.05rem;
    font-weight: 600;
    color: #1a2a4f;
    line-height: 1.3;
    margin: 0;
}

/* ===== 25. STEPS SEVEN SECTION (HOW IT WORKS PAGE) ===== */

/* 25.1 Основной блок */
.steps-seven {
    margin: 30px auto;
    max-width: calc(100% - 80px);
    background: #ffffff;
    border-radius: 32px;
    padding: 20px 20px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

/* 25.2 Сетка шагов */
.steps-seven-grid {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0;
    position: relative;
}

/* 25.3 Элемент шага */
.step-seven-item {
    flex: 1;
    text-align: center;
    position: relative;
    padding: 20px 15px;
}

/* 25.4 Номер шага (круг с цифрой) */
.step-number {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.2rem;
    font-weight: 800;
    color: white;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    margin: 0 auto 15px auto;
}

/* 25.5 Иконка шага */
.step-icon {
    display: flex;
    justify-content: center;
    margin-bottom: 15px;
}

.step-icon-mask {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.step-icon-mask img {
    opacity: 0;
    width: 60px;
    height: 60px;
}

/* 25.6 Заголовок шага */
.step-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.3rem;
    font-weight: 700;
    color: #1a2a4f;
    margin-bottom: 10px;
    line-height: 1.3;
}

/* 25.7 Описание шага */
.step-description {
    font-family: 'Mulish', sans-serif;
    font-size: 1rem;
    color: #4a5568;
    line-height: 1.4;
}

/* 25.8 Подзаголовок шага */
.step-subtitle {
    font-family: 'Mulish', sans-serif;
    font-size: 1rem;
    font-weight: 600;
    color: #d4af37;
    margin-top: 20px;
    line-height: 1.4;
}

/* 25.9 Стрелка между элементами */
.step-arrow {
    position: absolute;
    top: 10%;
    right: -15px;
    transform: translateY(-50%) scaleX(-2.5);
    width: 30px;
    height: 30px;
    z-index: 2;
}

.step-arrow img {
    width: 100%;
    height: auto;
    filter: brightness(0) saturate(100%) invert(12%) sepia(29%) saturate(3860%) hue-rotate(206deg) brightness(91%) contrast(98%);
}

/* У последнего элемента убираем стрелку */
.step-seven-item:last-child .step-arrow {
    display: none;
}

/* ===== 26. DOUBLE ADVANTAGES SECTION (HOW IT WORKS PAGE) ===== */

/* 26.1 Основная сетка */
.double-advantages {
    margin: 60px auto;
    max-width: calc(100% - 80px);
}

.double-advantages-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}

/* 26.2 Левый блок */
.advantages-left {
    background: #ffffff;
    border-radius: 32px;
    padding: 40px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

.advantages-left-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.8rem;
    font-weight: 700;
    text-align: center;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: 30px;
}

/* 26.2.1 Две колонки с галочками */
.advantages-two-cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    margin-bottom: 30px;
}

.advantage-col h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.2rem;
    font-weight: 700;
    color: #1a2a4f;
    margin-bottom: 15px;
}

/* 26.2.2 Списки */
.check-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.check-list li {
    font-family: 'Mulish', sans-serif;
    font-size: 0.9rem;
    color: #4a5568;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.check-icon {
    width: 18px;
    height: 18px;
    filter: brightness(0) saturate(100%) invert(12%) sepia(29%) saturate(3860%) hue-rotate(206deg) brightness(91%) contrast(98%);
}

/* 26.2.3 Оранжевый блок */
.advantage-orange-block {
    background: #fef5e8;
    border-radius: 24px;
    padding: 20px;
    margin-bottom: 15px;
}

.advantage-orange-block h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.2rem;
    font-weight: 700;
    color: #1a2a4f;
    margin-bottom: 10px;
}

.orange-items {
    display: flex;
    flex-direction: row;
    gap: 10px;
    justify-content: space-between;
    flex-wrap: wrap;
}

.orange-item {
    display: flex;
    align-items: center;
    gap: 5px;
    flex: 1;
    min-width: 180px;
}

.orange-icon-mask {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.orange-icon-mask img {
    opacity: 0;
    width: 50px;
    height: 50px;
}

.orange-text p {
    font-family: 'Mulish', sans-serif;
    font-size: 1em;
    color: #1a2a4f;
    margin: 0;
}

/* 26.2.4 Нижний элемент */
.advantage-bottom-item {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 20px;
    background: #f0f4f8;
    border-radius: 20px;
}

.bottom-icon-mask {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%) !important;
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.bottom-icon-mask img {
    opacity: 0;
    width: 50px;
    height: 50px;
}

.bottom-text p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #1a2a4f;
    margin: 0;
}

/* 26.2.5 Элемент галочки (маска) */
.check-item {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem !important;
    color: #1a2a4f;
}

.check-icon-gold {
    width: 20px;
    height: 20px;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%) !important;
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    flex-shrink: 0;
}

/* 26.3 Правый блок */
.advantages-right {
    background: #ffffff;
    border-radius: 32px;
    padding: 40px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

.advantages-right-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: 30px;
}

.right-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 50px;
}

.right-item {
    text-align: center;
}

.right-icon-mask {
    width: 60px;
    height: 60px;
    margin: 0 auto 15px auto;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.right-icon-mask img {
    opacity: 0;
    width: 60px;
    height: 60px;
}

.right-item p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #1a2a4f;
    line-height: 1.3;
}

/* 26.4 Переопределение сетки для страницы "Как это работает" */
.page-how-it-works .bulgaria-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 30px 20px;
}

/* ===== 27. IMPORTANT BLOCK (HOW IT WORKS PAGE) ===== */

/* 27.1 Основной блок */
.important-block {
    margin: 40px auto;
    max-width: calc(100% - 200px);
}

/* 27.2 Карточка */
.important-card {
    background: #fef5e8;
    border-radius: 32px;
    padding: 30px 40px;
    display: flex;
    align-items: center;
    gap: 25px;
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}

/* 27.3 Иконка */
.important-icon {
    flex-shrink: 0;
}

.important-icon-mask {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.important-icon-mask img {
    opacity: 0;
    width: 60px;
    height: 60px;
}

/* 27.4 Текст */
.important-text p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.5rem;
    font-weight: 600;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    line-height: 1.5;
    margin: 0;
}

/* ===== 28. CARDS + FAQ SECTION (HOW IT WORKS PAGE) ===== */

/* 28.1 Основной блок */
.cards-faq {
    margin: 60px auto;
    max-width: calc(100% - 80px);
}

/* 28.2 Сетка */
.cards-faq-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}

/* 28.3 Левый блок (карточки) */
.cards-block {
    background: #ffffff;
    border-radius: 32px;
    padding: 40px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

.cards-block-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: 30px;
    text-align: center;
}

/* 28.3.1 Сетка карточек (4 колонки) */
.cards-grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 20px;
}

/* 28.3.2 Карточка */
.card-item {
    text-align: center;
}

.card-icon-mask {
    width: 50px;
    height: 50px;
    margin: 0 auto 15px auto;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.card-icon-mask img {
    opacity: 0;
    width: 50px;
    height: 50px;
}

.card-item h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #1a2a4f;
    margin-bottom: 10px;
}

.card-item p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #4a5568;
    line-height: 1.4;
}

/* 28.3.3 Мелкий текст под карточками */
.cards-small-text {
    font-family: 'Mulish', sans-serif;
    font-size: 1rem;
    color: #4a5568;
    text-align: center;
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px solid rgba(0, 0, 0, 0.05);
}

/* 28.4 Правый блок (FAQ) */
.faq-block {
    background: #ffffff;
    border-radius: 32px;
    padding: 40px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

.faq-block-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: 30px;
    text-align: center;
}

/* 28.4.1 Список вопросов */
.faq-list {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

/* 28.4.2 Элемент FAQ */
.faq-item {
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    cursor: pointer;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.3rem;
    font-weight: 600;
    color: #1a2a4f;
}

.faq-question:hover {
    color: #d4af37;
}

.faq-plus {
    font-size: 1.3rem;
    font-weight: 600;
    transition: transform 0.3s ease;
}

/* 28.4.3 Ответ */
.faq-answer {
    display: none;
    padding-bottom: 15px;
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #4a5568;
    line-height: 1.5;
}

.faq-item.active .faq-answer {
    display: block;
}

/* ===== 29. DIPLOMA BLOCK (HOW IT WORKS PAGE) ===== */

/* 29.1 Основной блок */
.diploma-block {
    margin: 40px auto;
    max-width: calc(100% - 80px);
    position: relative;
    z-index: 5;
}

/* 29.2 Карточка */
.diploma-card {
    background: #1a2a4f;
    border-radius: 32px;
    padding: 0;
    display: flex;
    position: relative;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25), 0 8px 16px rgba(0, 0, 0, 0.15);
    min-height: 400px;
}

/* 29.3 Фоновое изображение */
.diploma-bg {
    width: 30%;
    background-size: contain;
    background-position: center 70% !important;
    position: relative;
    z-index: 1;
}

.diploma-bg::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    background: linear-gradient(90deg, rgba(26, 42, 79, 0) 0%, #1a2a4f 100%);
    pointer-events: none;
}

/* 29.4 Контентная часть */
.diploma-content {
    flex: 1;
    padding: 60px 120px;
    position: relative;
    z-index: 2;
    background: transparent;
}

.diploma-content h2 {
    font-family: 'Montserrat', sans-serif;
    font-size: 2.2rem;
    font-weight: 700;
    color: white;
    margin-bottom: 20px;
    line-height: 1.2;
}

.diploma-content p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.5rem;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 30px;
    line-height: 1.5;
}

/* 29.5 Кнопка */
.diploma-btn {
    display: inline-block;
    padding: 14px 32px;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    color: #1a2a4f;
    font-family: 'Montserrat', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    text-decoration: none;
    border-radius: 40px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.diploma-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
    background: linear-gradient(135deg, #e8b86b 0%, #f0c674 50%, #d4af37 100%);
}

/* ===== 30. PARTNERSHIP PAGE (СТРАНИЦА ПАРТНЁРСТВО) ===== */

/* -------------------- 30.1 HERO SECTION -------------------- */
.page-partnership .hero-bg {
    mask-image: linear-gradient(90deg, transparent 20%, transparent 60%, black 80%);
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, transparent 17%, black 60%);
}

.page-partnership .bronze-text {
    font-size: 2.7rem !important;
}

.page-partnership .hero-subtitle.dark-blue {
    font-size: 1.5rem;
}

.page-partnership .hero-buttons .btn {
    white-space: nowrap;
}

.page-partnership .btn-content strong {
    font-size: 1.05rem;
}

.page-partnership .btn-content small {
    font-size: 1rem;
}

.page-partnership .hero-buttons {
    margin-top: 20px;
}

/* -------------------- 30.2 BULGARIA GRID OVERRIDE -------------------- */
.page-partnership .bulgaria-grid {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: 10px 10px;
}

/* -------------------- 30.3 PARTNERSHIP MODEL SECTION -------------------- */

/* 30.3.1 Основной блок */
.partnership-model {
    margin: 60px auto;
    max-width: calc(100% - 80px);
}

/* 30.3.2 Сетка */
.partnership-grid {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 30px;
}

/* 30.3.3 Левый блок - 4 шага */
.model-steps {
    background: #ffffff;
    border-radius: 32px;
    padding: 40px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

.model-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: 40px;
}

/* 30.3.4 Сетка шагов */
.steps-four-grid {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 20px;
    position: relative;
    flex-wrap: wrap;
}

/* 30.3.5 Элемент шага */
.step-four-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 15px;
    position: relative;
    padding: 15px;
    flex: 1;
    min-width: 180px;
}

/* 30.3.6 Номер шага */
.step-four-number {
    font-family: 'Montserrat', sans-serif;
    font-size: 1.3rem;
    font-weight: 800;
    color: white;
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    margin: 0 auto;
}

/* 30.3.7 Иконка шага */
.step-four-icon {
    margin: 0 auto;
}

.step-four-icon-mask {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.step-four-icon-mask img {
    opacity: 0;
    width: 60px;
    height: 60px;
}

/* 30.3.8 Текст шага */
.step-four-text {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    font-weight: 600;
    color: #1a2a4f;
    line-height: 1.3;
    margin: 0;
    max-width: 180px;
}

/* 30.3.9 Стрелка между шагами */
.step-four-arrow {
    position: absolute;
    right: -15px;
    top: 34px;
    transform: translateY(-50%) scaleX(-3.5);
    width: 25px;
    height: 25px;
}

.step-four-arrow img {
    width: 100%;
    height: auto;
    filter: brightness(0) saturate(100%) invert(12%) sepia(29%) saturate(3860%) hue-rotate(206deg) brightness(91%) contrast(98%);
}

.step-four-item:last-child .step-four-arrow {
    display: none;
}

/* -------------------- 30.4 RIGHT BLOCK (ПОЧЕМУ БОЛГАРИЯ) -------------------- */

/* 30.4.1 Правый блок */
.why-bulgaria-partner {
    background: #ffffff;
    border-radius: 32px;
    padding: 10px 20px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

/* 30.4.2 Список с галочками */
.partner-check-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.partner-check-list li {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    color: #1a2a4f;
}

/* 30.4.3 Иконка галочки */
.partner-check-icon {
    width: 26px;
    height: 26px;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    flex-shrink: 0;
}

.partner-check-icon img {
    opacity: 0;
    width: 26px;
    height: 26px;
}

/* ===== 30.5 PARTNER BENEFITS SECTION (ПРЕИМУЩЕСТВА ДЛЯ УНИВЕРСИТЕТОВ И ПАРТНЁРОВ) ===== */

/* 30.5.1 Основной блок */
.partner-benefits {
    margin: 60px auto;
    max-width: calc(100% - 80px);
}

/* 30.5.2 Сетка */
.partner-benefits-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
}

/* 30.5.3 Карточка преимущества */
.benefits-card {
    background: #ffffff;
    border-radius: 32px;
    padding: 40px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
}

/* 30.5.4 Заголовок карточки */
.benefits-card-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: 30px;
}

/* 30.5.5 Сетка 3x2 (6 элементов) */
.benefits-grid-6 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 20px;
}

/* 30.5.6 Элемент сетки */
.benefit-grid-item {
    text-align: center;
}

/* 30.5.7 Иконка */
.benefit-grid-icon {
    margin-bottom: 15px;
}

.benefit-grid-icon-mask {
    width: 60px;
    height: 60px;
    margin: 0 auto;
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    mask-size: contain;
    mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
}

.benefit-grid-icon-mask img {
    opacity: 0;
    width: 60px;
    height: 60px;
}

/* 30.5.8 Текст */
.benefit-grid-item p {
    font-family: 'Mulish', sans-serif;
    font-size: 1.3rem;
    font-weight: 600;
    color: #1a2a4f;
    line-height: 1.3;
    margin: 0;
}

/* ===== 32. HEADER (ШАПКА) ===== */

/* 32.1 Основной блок шапки */
.site-header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    padding: 40px 0;
    background: transparent;
    margin-bottom: 100px;
}

/* 32.2 Внутренний контейнер */
.site-header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
}

/* 32.3 Логотип */
.site-logo {
    flex-shrink: 0;
}

.site-logo img {
    height: 100px;
    width: auto;
    display: block;
}

/* 32.4 Контейнер кнопок */
.header-buttons {
    display: flex;
    gap: 15px;
    flex-shrink: 0;
}

/* 32.5 Базовый стиль кнопки */
.header-btn {
    display: inline-block;
    padding: 10px 20px;
    border-radius: 10px;
    text-decoration: none;
    text-align: center;
    transition: all 0.3s ease;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 0.5px;
}

/* 32.6 Кнопка первичная (синий градиент) */
.header-btn-primary {
    background: linear-gradient(135deg, #1a2a4f 0%, #2a3a6f 50%, #3a4a8f 100%);
    color: white;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

/* 32.7 Кнопка вторичная (золотой градиент) */
.header-btn-secondary {
    background: linear-gradient(135deg, #d4af37 0%, #f0c674 50%, #e8b86b 100%);
    color: white;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

/* 32.8 Эффект при наведении */
.header-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15);
}

/* 32.9 Текст кнопок */
.header-btn span {
    color: white;
    font-family: 'Mulish', sans-serif !important;
    font-weight: 700 !important;
}

.header-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.header-btn-icon {
    width: 22px;
    height: 22px;
    flex-shrink: 0;
    filter: brightness(0) invert(1);

/* ===== HEADER: Партнёрство ===== */
.header-contacts {
    display: flex;
    gap: 20px;
    align-items: center;
    flex-shrink: 0;
}

.header-contact-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: 'Mulish', sans-serif;
    font-size: 1rem;
    color: #1a2a4f;
    white-space: nowrap;
}
.header-contact-item span, a {
    font-weight: 600 !important;
}

.header-contact-icon {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    filter: brightness(0) saturate(100%) invert(12%) sepia(29%) saturate(3860%) hue-rotate(206deg) brightness(91%) contrast(98%);
}

.header-contact-item a,
.header-contact-item span {
    color: #1a2a4f;
    text-decoration: none;
    font-weight: 500;
}

.header-contact-item a:hover {
    color: #d4af37;
}


