/* Adjust hero spacing for medium-short heights (e.g., 800px) */
@media (max-height: 820px) {
    .hero-section .main-content {
        margin-top: 6vh;
    }
    .hero-section .main-title {
        font-size: clamp(24px, 7.2vw, 50px);
    }
}
/* Fix overlap in hero on short viewport heights */
@media (max-height: 700px) {
    .hero-section .main-content {
        margin-top: 8vh; /* push text down so it won't collide with header/phones */
    }
    .hero-section .main-title {
        font-size: clamp(24px, 7vw, 48px);
        line-height: 1.1;
    }
    .hero-section .main-subtitle {
        font-size: clamp(14px, 3.2vw, 20px);
    }
}

@media (max-height: 620px) {
    .hero-section .main-content {
        margin-top: 11vh;
    }
    .hero-section .main-title {
        font-size: clamp(22px, 6.5vw, 42px);
    }
    .hero-section .main-subtitle {
        font-size: clamp(13px, 3vw, 18px);
    }
}

@media (max-height: 540px) {
    .hero-section .main-content {
        margin-top: 14vh;
    }
    .hero-section .main-title {
        font-size: clamp(20px, 6vw, 36px);
    }
    .hero-section .main-subtitle {
        font-size: clamp(12px, 2.8vw, 16px);
    }
}
/*
Theme Name: SGC Multi Family Office
Description: WordPress тема для SGC Multi Family Office с поддержкой ACF
Version: 1.0
Author: SGC Development Team
*/

/* Сброс стилей */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

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

body {
    font-family: 'Montserrat', sans-serif;
    overflow-x: hidden;
    overflow-y: auto; /* разрешить вертикальную прокрутку */
    min-height: 100vh; /* минимальная высота экрана */
}

/* Основной контейнер */
.hero-section {
    position: relative;
    width: 100vw;
    min-height: 100vh; /* минимальная высота экрана */
    background-color: #1D1D17;
    background-image: 
        linear-gradient(270deg, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, 0.8) 99%),
        linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)),
        url('./assets/images/hero-background-3ae4ea.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-blend-mode: normal, normal;
    display: flex;
    flex-direction: column;
    overflow: visible; /* разрешить переполнение */
}

/* Логотип */
.logo {
    position: absolute;
    top: 0;
    left: 16.56vw; /* 318px / 1920px * 100vw */
    width: 7.29vw; /* 140px / 1920px * 100vw */
    height: 8.33vw; /* 160px / 1920px * 100vw */
    background-color: #94A64B;
    z-index: 10;
}

/* Мобильная шапка - скрыта по умолчанию */
.mobile-header {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4.125rem; /* 66px */
    z-index: 20;
    padding: 0 1.25rem; /* 20px */
    box-sizing: border-box;
}

/* Десктопные элементы видны по умолчанию */
.desktop-logo {
    display: block;
}

.desktop-nav {
    display: flex;
}

.mobile-logo-block {
    position: absolute;
    top: 0.5rem; /* 8px */
    left: 1.25rem; /* 20px */
    width: 4.8rem; /* 77px */
    height: 3.8rem; /* 61px */
    background-color: #94A64B;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mobile-logo-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.25rem; /* 4px */
    width: 100%;
    height: 100%;
    padding: 0.5rem;
}

.mobile-logo-text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.2rem; /* 19px */
    line-height: 1.219;
    letter-spacing: 0.1em;
    text-align: center;
    color: #FFFFFF;
}

.mobile-logo-line {
    width: 2.5rem; /* 40px */
    height: 0.06rem; /* 1px */
    background-color: #FFFFFF;
}

.mobile-logo-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 0.4rem; /* 6px */
    line-height: 1.219;
    letter-spacing: 0.04em;
    text-align: center;
    color: #FFFFFF;
}

.mobile-burger {
    position: absolute;
    top: 1.47rem; /* 23.57px */
    right: 1.25rem; /* 20px */
}

.burger-icon {
    width: 1.875rem; /* 30px */
    height: 1.43rem; /* 22.85px */
    fill: #94A64B;
}

.mobile-contacts {
    position: absolute;
    top: 5.06rem; /* 81px */
    left: 1.25rem; /* 20px */
    display: flex;
    flex-direction: column;
    gap: 0.125rem; /* 2px */
}

.mobile-phone-item {
    display: flex;
    align-items: center;
    gap: 0.625rem; /* 10px */
}

.mobile-flag-icon {
    width: 1.875rem; /* 30px */
    height: 1.875rem; /* 30px */
    display: flex;
    align-items: center;
    justify-content: center;
}

.mobile-flag-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.mobile-phone-number {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.125rem; /* 18px */
    line-height: 1.333;
    color: #FFFFFF;
}

/* Мобильное всплывающее меню */
.mobile-menu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.9);
    z-index: 1000;
    display: none;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.mobile-menu-overlay.active {
    display: block;
    opacity: 1;
}

.mobile-menu-content {
    position: relative;
    width: 100%;
    height: 100%;
    background-color: #000000;
    box-shadow: 0px 8px 20px 0px rgba(0, 0, 0, 0.12);
    border-radius: 0.42vw; /* 8px */
    overflow: hidden;
}

.mobile-menu-header {
    position: relative;
    width: 100%;
    height: 10vh; /* значительно увеличен */
    background-color: rgba(0, 0, 0, 0.8);
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 4vw; /* значительно увеличен */
}

.mobile-menu-logo {
    width: 30vw; /* шире */
    height: 10vh; /* значительно увеличен */
    background-color: #94A64B;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 1vw; /* значительно увеличен */
}

.mobile-menu-logo img {
    width: 10vw; /* значительно увеличен */
    height: 6vh; /* значительно увеличен */
    object-fit: contain;
}

.mobile-menu-close {
    width: 5vw; /* значительно увеличен */
    height: 5vw; /* значительно увеличен */
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.mobile-menu-close img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    fill: #94A64B;
}

.mobile-menu-phones {
    position: absolute;
    top: 12vh; /* значительно увеличен */
    left: 4vw; /* значительно увеличен */
    display: flex;
    flex-direction: column;
    gap: 1vh; /* значительно увеличен */
}

.mobile-menu-phone-item {
    display: flex;
    align-items: center;
    gap: 2vw; /* значительно увеличен */
}

.mobile-menu-flag-icon {
    width: 6vw; /* значительно увеличен */
    height: 6vw; /* значительно увеличен */
    display: flex;
    align-items: center;
    justify-content: center;
}

.mobile-menu-flag-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.mobile-menu-phone-number {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 6vw; /* еще больше */
    line-height: 1.1; /* уменьшен отступ между строками */
    color: #FFFFFF;
}

.mobile-menu-body {
    padding: 20vh 0 0 4vw; /* значительно увеличен */
    display: flex;
    flex-direction: column;
    gap: 8vh; /* значительно увеличен */
}

.mobile-menu-nav {
    display: flex;
    flex-direction: column;
    gap: 2vh; /* уменьшен отступ между элементами */
}

.mobile-menu-item {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 6vw; /* еще больше */
    line-height: 1.1; /* уменьшен отступ между строками */
    color: #EFEEE9;
    text-decoration: none;
    display: block;
    width: 100%;
}

.mobile-menu-contacts {
    display: flex;
    flex-direction: column;
    gap: 2vh; /* уменьшен отступ между элементами */
    width: 100%;
}

.mobile-menu-email,
.mobile-menu-phone {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 6vw; /* еще больше */
    line-height: 1.1; /* уменьшен отступ между строками */
    color: #EFEEE9;
}

.mobile-menu-messengers {
    display: flex;
    flex-direction: column;
    gap: 1vh; /* уменьшен отступ между элементами */
    width: 100%;
}

.mobile-menu-messenger-item {
    display: flex;
    align-items: center;
    gap: 3vw; /* значительно увеличен */
    height: 7vw; /* увеличен для больших иконок */
}

.mobile-menu-messenger-item img {
    width: 7vw; /* увеличен */
    height: 7vw; /* увеличен */
    object-fit: contain;
    fill: #94A64B;
}

.mobile-menu-messenger-item span {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 6vw; /* еще больше */
    line-height: 1.1; /* уменьшен отступ между строками */
    color: #EFEEE9;
}

/* Модальное окно консультации */
.consultation-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 2000;
    display: none;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.consultation-modal.active {
    display: flex;
    opacity: 1;
}

.modal-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(5px);
}

.modal-content {
    position: relative;
    background-color: #FFFFFF;
    border-radius: 1vw;
    width: 90%;
    max-width: 30rem;
    max-height: 90vh;
    margin: auto;
    padding: 2rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
    overflow-y: auto;
}

.modal-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 2rem;
}

.modal-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.5rem;
    line-height: 1.2;
    color: #000000;
    margin: 0;
    text-align: center;
    flex: 1;
}

.modal-close {
    background: none;
    border: none;
    font-size: 2rem;
    color: #000000;
    cursor: pointer;
    padding: 0;
    width: 2rem;
    height: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.consultation-form {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.form-group {
    display: flex;
    flex-direction: column;
}

.form-input {
    width: 100%;
    padding: 1rem;
    border: 1px solid #E0E0E0;
    border-radius: 0.5rem;
    font-family: 'Montserrat', sans-serif;
    font-size: 1rem;
    color: #000000;
    background-color: #FFFFFF;
    box-sizing: border-box;
}

.form-input::placeholder {
    color: #999999;
}

.form-input:focus {
    outline: none;
    border-color: #94A64B;
    box-shadow: 0 0 0 2px rgba(148, 166, 75, 0.2);
}

.form-checkbox {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.checkbox-wrapper {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.checkbox-input {
    display: none;
}

.custom-checkbox-visual {
    width: 20px;
    height: 20px;
    background: #94A64B;
    border: 2px solid #94A64B;
    border-radius: 3px;
    color: white;
    font-size: 14px;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    margin-right: 8px;
    flex-shrink: 0;
}

.checkbox-label {
    font-family: 'Montserrat', sans-serif;
    font-size: 0.875rem;
    line-height: 1.4;
    color: #000000;
    cursor: pointer;
}

.privacy-link {
    color: #94A64B;
    text-decoration: underline;
}

.submit-btn {
    width: 100%;
    padding: 1rem 2rem;
    background-color: #94A64B;
    color: #FFFFFF;
    border: none;
    border-radius: 0.5rem;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1rem;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.submit-btn:hover {
    background-color: #7a8a3e;
}

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
    .consultation-modal {
        align-items: center;
        justify-content: center;
        padding: 1rem;
    }
    
    .modal-content {
        width: calc(100% - 2rem);
        max-width: calc(100% - 2rem);
        height: auto;
        max-height: calc(100vh - 2rem);
        margin: auto;
        padding: 1.5rem;
        border-radius: 0.5rem;
        overflow-y: auto;
        display: flex;
        flex-direction: column;
    }
    
    .modal-header {
        flex-shrink: 0;
        margin-bottom: 2rem;
        padding-bottom: 1rem;
        border-bottom: 1px solid #E0E0E0;
    }
    
    .modal-title {
        font-size: 1.5rem;
        text-align: left;
        line-height: 1.2;
    }
    
    .modal-close {
        font-size: 1.5rem;
        width: 1.5rem;
        height: 1.5rem;
    }
    
    .consultation-form {
        gap: 1.5rem;
        display: flex;
        flex-direction: column;
    }
    
    .form-group {
        flex-shrink: 0;
    }
    
    .form-input {
        padding: 1rem;
        font-size: 1rem;
        height: 3.5rem;
        border-radius: 0.5rem;
        border: 1px solid #E0E0E0;
        background-color: #F5F5F5;
    }
    
    .form-input::placeholder {
        color: #999999;
        font-size: 1rem;
    }
    
    .form-checkbox {
        margin-bottom: 1.5rem;
        flex-shrink: 0;
    }
    
    .checkbox-label {
        font-size: 0.875rem;
        line-height: 1.4;
    }
    
    .submit-btn {
        padding: 1rem 2rem;
        font-size: 1.125rem;
        font-weight: 600;
        height: 3.5rem;
        border-radius: 0.5rem;
        flex-shrink: 0;
    }
}

/* Второй блок - О нас */
.about-section {
    background-color: #EFEEE9;
    padding: 5.6vw 0; /* 90px / 1920px * 100vw */
    min-height: 60.6vw; /* 1164px / 1920px * 100vw */
}

.about-container {
    max-width: 100vw;
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
}

.about-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.92vw; /* 56px / 1920px * 100vw */
    line-height: 1.219;
    color: #004170;
    margin-bottom: 1.15vw; /* 22px / 1920px * 100vw */
    width: 51.82vw; /* 995px / 1920px * 100vw */
}

.about-content {
    display: flex;
    gap: 2.6vw; /* 50px / 1920px * 100vw */
    margin-bottom: 1.17vw; /* 80px / 1920px * 100vw */
}

.about-text {
    flex: 1;
    max-width: 38.28vw; /* 735px / 1920px * 100vw */
}

.about-description {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.333;
    color: #686868;
    margin-bottom: 1.56vw; /* 30px / 1920px * 100vw */
    text-align: left;
}

.about-image {
    width: 26.93vw; /* 517px / 1920px * 100vw */
    height: 27.86vw; /* 535px / 1920px * 100vw */
    border-radius: 2.08vw; /* 40px / 1920px * 100vw */
    overflow: hidden;
    flex-shrink: 0;
}

.pavel-photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.stats-section {
    display: flex;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    margin-bottom: 4.85vw; /* 170px / 1920px * 100vw */
    align-items: center;
}

.stat-item {
    display: flex;
    align-items: center;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
}

.stat-circle {
    position: relative;
    width: 6.25vw; /* 120px / 1920px * 100vw */
    height: 6.25vw; /* 120px / 1920px * 100vw */
    border: 0.052vw solid #94A64B; /* 1px / 1920px * 100vw */
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #FFFFFF;
}

.stat-circle::before {
    content: '';
    position: absolute;
    width: 5.21vw; /* 100px / 1920px * 100vw */
    height: 5.21vw; /* 100px / 1920px * 100vw */
    background-color: #FFFFFF;
    border-radius: 50%;
    z-index: 1;
}

.stat-number {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.4vw; /* 46px / 1920px * 100vw */
    line-height: 0.522;
    color: #004170;
    text-align: center;
    z-index: 2;
    position: relative;
}

.stat-text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.8vw; /* 18px / 1920px * 100vw */
    line-height: 1.333;
    color: #686868;
    max-width: 11vw; /* 160px / 1920px * 100vw */
}

.quote-section {
    background-color: #94A64B;
    border-radius: 1.04vw; /* 20px / 1920px * 100vw */
    padding: 1vw; /* 50px 220px / 1920px * 100vw */
    margin-bottom: 2.6vw; /* 50px / 1920px * 100vw */
    position: relative;
}

.quote-content {
    position: relative;
    padding: 2.08vw 0; /* 40px / 1920px * 100vw */
}

.quote-icon {
    position: absolute;
    width: 3.18vw; /* 61px / 1920px * 100vw */
    height: 2.29vw; /* 44px / 1920px * 100vw */
    object-fit: contain;
    fill: #FFFFFF;
}

.quote-icon.quote-left {
    top: 0;
    left: 0;
}

.quote-icon.quote-right {
    bottom: 0;
    right: 0;
}

.quote-text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #FFFFFF;
    text-align: left;
    margin: 0 3.18vw; /* отступы для кавычек */
    width: 45vw;
    margin-left: 8vw;
}

.author-info {
    text-align: right;
    margin-left: auto;
    max-width: 17.24vw; /* 331px / 1920px * 100vw */
	margin-top: 20px;
    flex-shrink: 0;
}

.author-name {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.56vw; /* 30px / 1920px * 100vw */
    line-height: 1.219;
    color: #94A64B;
    margin-bottom: 0.52vw; /* 10px / 1920px * 100vw */
}

.author-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.333;
    color: #686868;
}

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
    .about-section {
        padding: 4rem 1rem;
        min-height: auto;
    }
    
    .about-container {
        padding: 0 1rem;
    }
    
    .about-title {
        font-size: 2rem;
        width: 100%;
        margin-bottom: 2rem;
        text-align: center;
    }
    
    .about-content {
        flex-direction: column;
        gap: 2rem;
        margin-bottom: 3rem;
    }
    
    .about-text {
        max-width: 100%;
    }
    
    .about-description {
        font-size: 1rem;
        text-align: left;
        margin-bottom: 1rem;
    }
    
    .about-image {
        width: 100%;
        height: 90vw;
        border-radius: 1rem;
        margin: 0 auto;
    }
    
    .stats-section {
        flex-direction: column-reverse;
        gap: 2rem;
        margin-bottom: 3rem;
        align-items: center;
    }
    
    .stat-item {
        text-align: left;
        width: 90vw;
        gap: 1rem;
    }
    
    .stat-circle {
        width: 20vw;
        height: 20vw;
    }
    
    .stat-circle::before {
        width: 3.5rem;
        height: 3.5rem;
    }
    
    .stat-number {
        font-size: 1.5rem;
    }
    
    .stat-text {
        font-size: 3vw;
        max-width: 60%;
    }
    
    .quote-section {
        padding: 2rem 1rem;
        border-radius: 1rem;
        margin-bottom: 2rem;
        position: relative;
    }
    
    .quote-content {
        padding: 1.5rem 0;
    }
    
    .quote-icon {
        width: 2rem;
        height: 1.5rem;
    }
    
    .quote-icon.quote-left {
        top: 0;
        left: 0;
    }
    
    .quote-icon.quote-right {
        bottom: 0;
        right: 0;
    }
    
    .quote-text {
        font-size: 1.1rem;
        margin: 0 2rem;
        text-align: left;
        width: 80%
    }
    
    .author-info {
        text-align: right;
        max-width: 100%;
        margin: 0;
    }
    
    .author-name {
        font-size: 1.5rem;
    }
    
    .author-title {
        font-size: 1rem;
    }
}

.logo-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.52vw; /* 10px / 1920px * 100vw */
    width: 100%;
    height: 100%;
    padding: 1.56vw 0; /* 30px / 1920px * 100vw */
}

.logo-text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.5vw; /* 48px / 1920px * 100vw */
    line-height: 1.219;
    letter-spacing: 0.1em;
    text-align: center;
    color: #FFFFFF;
}

.logo-line {
    width: 5.89vw; /* 113.02px / 1920px * 100vw */
    height: 0.1vw; /* 2px / 1920px * 100vw */
    background-color: #FFFFFF;
}

.logo-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 0.57vw; /* 11px / 1920px * 100vw */
    line-height: 1.219;
    letter-spacing: 0.04em;
    text-align: center;
    color: #FFFFFF;
}

/* Навигация */
.navigation {
    position: absolute;
    top: 2.4vw; /* 46px / 1920px * 100vw */
    left: 28.07vw; /* 539px / 1920px * 100vw */
    width: 55.42vw; /* 1064px / 1920px * 100vw */
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 3.85vw; /* 74px / 1920px * 100vw */
    z-index: 10;
}

.menu {
    display: flex;
    align-items: center;
    gap: 2.6vw; /* 50px / 1920px * 100vw */
}

.menu-item {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.219;
    text-decoration: none;
    color: #FFFFFF;
    transition: color 0.3s ease;
}

.menu-item.active {
    color: #94A64B;
}

.menu-item:hover {
    color: #94A64B;
}

.contacts {
    display: flex;
    align-items: center;
    gap: 2.6vw; /* 50px / 1920px * 100vw */
}

.phone-item {
    display: flex;
    align-items: center;
    gap: 0.52vw; /* 10px / 1920px * 100vw */
}

.flag-icon {
    width: 1.56vw; /* 30px / 1920px * 100vw */
    height: 1.56vw; /* 30px / 1920px * 100vw */
    display: flex;
    align-items: center;
    justify-content: center;
}

.flag-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.phone-number {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.219;
    color: #FFFFFF !important;
    text-decoration: none;
    -webkit-tap-highlight-color: transparent;
}

.messengers {
    display: flex;
    align-items: center;
    gap: 0.52vw; /* 10px / 1920px * 100vw */
}

.messenger-icon {
    width: 1.56vw; /* 30px / 1920px * 100vw */
    height: 1.56vw; /* 30px / 1920px * 100vw */
    display: flex;
    align-items: center;
    justify-content: center;
}

.messenger-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Декоративные линии */
.decorative-line {
    position: absolute;
    height: 0.052vw; /* 1px / 1920px * 100vw */
    background-color: rgba(255, 255, 255, 0.5);
    z-index: 5;
}

.line-1 {
    top: 4.8vw; /* 99px / 1920px * 100vw */
    left: 0;
    width: 15.63vw; /* 300px / 1920px * 100vw */
}

.line-2 {
    top: 4.8vw; /* 99px / 1920px * 100vw */
    left: 24.79vw; /* 476px / 1920px * 100vw */
    width: 75.21vw; /* 1444px / 1920px * 100vw */
}

/* Основной контент */
.main-content {
    position: absolute;
    top: 13.13vw; /* 252px / 1920px * 100vw */
    left: 16.56vw; /* 318px / 1920px * 100vw */
    z-index: 10;
}

.main-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 3.96vw; /* 76px / 1920px * 100vw */
    line-height: 1.219;
    color: #FFFFFF;
    margin-bottom: 1.15vw; /* 22px / 1920px * 100vw */
    width: 37.6vw; /* 722px / 1920px * 100vw */
    display: flex;
    flex-direction: column;
}

.title-line {
    display: block;
    margin-bottom: 0.2em;
}

.main-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #FFFFFF;
    margin-bottom: 1.15vw; /* 22px / 1920px * 100vw */
    width: 28.49vw; /* 547px / 1920px * 100vw */
}

.service-tag {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.219;
    color: #94A64B;
    margin-bottom: 2.55vw; /* 49px / 1920px * 100vw */
    width: 18.39vw; /* 353px / 1920px * 100vw */
    padding-top:6vw;
}

.consultation-btn {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.52vw; /* 10px / 1920px * 100vw */
    padding: 1.56vw 3.91vw; /* 30px 75px / 1920px * 100vw */
    width: 21.25vw; /* 408px / 1920px * 100vw */
    height: 3.65vw; /* 70px / 1920px * 100vw */
    background-color: #94A64B;
    border: none;
    border-radius: 0.52vw; /* 10px / 1920px * 100vw */
    cursor: pointer;
    transition: all 0.3s ease;
}

.consultation-btn:hover {
    background-color: #7a8a3e;
    transform: translateY(-0.1vw);
}

.consultation-btn span {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.333;
    color: #FFFFFF;
}

.arrow-icon {
    width: 0.74vw; /* 14.25px / 1920px * 100vw */
    height: 0.74vw; /* 14.25px / 1920px * 100vw */
    stroke: #FFFFFF;
    stroke-width: 3px;
}

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
    .hero-section {
        min-height: 100vh;
        height: auto;
        padding: 0;
        padding-bottom: 6rem;
        background-image: 
            linear-gradient(270deg, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, 0.8) 99%),
            linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)),
            url('./assets/images/hero-background-3ae4ea.png');
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        overflow: visible;
    }
    
    /* Скрыть десктопные элементы */
    .desktop-logo {
        display: none;
    }
    
    .desktop-nav {
        display: none;
    }
    
    .decorative-line {
        display: none;
    }
    
    /* Показать мобильные элементы */
    .mobile-header {
        display: block;
    }
    
    .main-content {
        position: static;
        text-align: center;
        padding: 0 1rem;
        width: 100%;
        max-width: 100%;
        margin: 0 auto;
        padding-top: 22vh;
        padding-bottom: 2rem;
        min-height: auto;
    }
    
    .main-title {
        font-size: 18vw;
        font-weight: 700;
        line-height: 1.1;
        width: auto;
        max-width: 100%;
        margin: 0 auto;
        margin-bottom: 0;
        text-align: center;
        padding-top: 0;
        padding-left: 0;
        padding-right: 0;
        display: flex;
        flex-direction: column;
    }
    
    .title-line {
        display: block;
        margin-bottom: 0.1em;
    }
    
    .main-subtitle {
        font-size: 6vw;
        font-weight: 500;
        line-height: 1.2;
        width: auto;
        max-width: 100%;
        margin: 0 auto;
        margin-bottom: 2rem;
        text-align: center;
        padding-top: 2rem; /* уменьшен отступ */
        padding-left: 0;
        padding-right: 0;
    }
    
    .service-tag {
        font-size: 5vw;
        font-weight: 500;
        line-height: 1.2;
        width: auto;
        max-width: 100%;
        margin: 0 auto;
        margin-bottom: 2rem;
        text-align: center;
        padding-top: 0;
        padding-left: 0;
        padding-right: 0;
    }
    
    .consultation-btn {
        width: 95vw;
        max-width: 95%;
        height: 18vw;
        padding: 1rem 2rem;
        margin: 0 auto;
        margin-top: 2rem;
        margin-bottom: 2rem;
        font-size: 1.1rem;
        display: block;
    }
    
    .consultation-btn span {
        font-size: 5vw; /* увеличен размер текста */
        font-weight: 500;
    }
    
    .arrow-icon {
        width: 0.89rem; /* 14.25px */
        height: 0.89rem; /* 14.25px */
    }
    .mobile-phone-number
    {
        font-size: 5vw;
    }
}

/* Адаптивность для планшетов */
@media (min-width: 769px) and (max-width: 1024px) {
    .main-title {
        font-size: 3rem;
    }
    
    .main-subtitle {
        font-size: 1.1rem;
    }
    
    .service-tag {
        font-size: 1.1rem;
    }
    
    .consultation-btn {
        width: 18rem;
        height: 3.2rem;
    }
    
    .consultation-btn span {
        font-size: 1rem;
    }
}

/* Блок "Наши решения и варианты сотрудничества" */
.solutions-section {
    background-color: #1D1D17;
    padding: 4.69vw 0; /* 90px / 1920px * 100vw */
    position: relative;
}

.solutions-section::before {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 60vw;
    height: 60vw;
    background-image: url('assets/images/lines.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom right;
    z-index: 1;
}

.solutions-section::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 60vw;
    height: 60vw;
    background-image: url('assets/images/lines.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom right;
    transform: rotate(180deg);
    z-index: 1;
}

.solutions-container {
    max-width: 120rem; /* 1920px */
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
    position: relative;
    z-index: 2;
}

.solutions-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.92vw; /* 56px / 1920px * 100vw */
    line-height: 1.22;
    color: #94A64B;
    margin: 0 0 2.34vw 0; /* 45px / 1920px * 100vw */
    text-align: left;
}

.solutions-description {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #D4D4D4;
    margin: 0 0 4.69vw 0; /* 90px / 1920px * 100vw */
    text-align: left;
    max-width: 52.81vw; /* 1014px / 1920px * 100vw */
}


.solutions-cards {
    display: flex;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    justify-content: space-between;
}

.solution-card {
    flex: 1;
    max-width: 32.66vw; /* 627px / 1920px * 100vw */
    background: transparent;
    border: 0.1vw solid #94A64B; /* 2px / 1920px * 100vw */
    border-radius: 2.29vw; /* 44px / 1920px * 100vw */
    padding: 0.63vw; /* 12px / 1920px * 100vw */
}

.card-content {
    border-radius: 2.08vw; /* 40px / 1920px * 100vw */
    padding: 0.58vw; /* 40px / 1920px * 100vw */
    height: auto; /* 297px / 1920px * 100vw */
    display: flex;
    flex-direction: column;
    padding-bottom: 0;
}

.card-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.56vw; /* 30px / 1920px * 100vw */
    line-height: 1.22;
    color: #94A64B;
    margin: 0 0 1.25vw 0; /* 24px / 1920px * 100vw */
    text-align: left;
}

.card-features {
    list-style: none;
    padding: 0;
    margin: 0;
    flex: 1;
}

.feature-item {
    display: flex;
    align-items: flex-start;
    gap: 0.63vw; /* 12px / 1920px * 100vw */
    margin-bottom: 0.83vw; /* 16px / 1920px * 100vw */
}

.feature-item:last-child {
    margin-bottom: 0;
}

.check-icon {
    width: 1.25vw; /* 24px / 1920px * 100vw */
    height: 1.25vw; /* 24px / 1920px * 100vw */
    flex-shrink: 0;
    margin-top: 0.1vw; /* 2px / 1920px * 100vw */
}

.feature-item span {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.89;
    color: #EFEEE9;
    text-align: left;
}

/* Мобильная версия для блока решений */
@media (max-width: 768px) {
    .solutions-section {
        padding: 2rem 0;
    }
    
    .solutions-section::before {
        width: 50vw;
        height: 50vw;
        background-image: url('assets/images/lines2.png');
        background-position: bottom right;
    }
    
    .solutions-section::after {
        width: 200vw;
        height: 200vw;
        background-image: url('assets/images/lines2.png');
        background-position: bottom right;
    }
    
    .solutions-container {
        padding: 0 1rem;
    }
    
    .solutions-title {
        font-size: 2rem;
        margin-bottom: 1rem;
        text-align: center;
    }
    
    .solutions-description {
        font-size: 1rem;
        margin-bottom: 2rem;
        text-align: center;
        max-width: 100%;
    }
    
    
    .solutions-cards {
        flex-direction: column;
        gap: 1rem;
    }
    
    .solution-card {
        max-width: 100%;
    }
    
    .card-content {
        height: auto;
        padding: 1.5rem;
    }
    
    .card-title {
        font-size: 1.25rem;
        margin-bottom: 1rem;
    }
    
    .feature-item {
        gap: 0.75rem;
        margin-bottom: 0.75rem;
    }
    
    .check-icon {
        width: 1.5rem;
        height: 1.5rem;
    }
    
    .feature-item span {
        font-size: 0.9rem;
    }
}

/* Блок "Наш подход к решению задач клиента" */
.approach-section {
    background-color: #FFFFFF;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 4.69vw 0; /* 90px / 1920px * 100vw */
    position: relative;
}

.approach-section::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 60vw;
    height: 60vw;
    background-image: url('assets/images/lines.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom right;
    transform: rotate(270deg);
    z-index: 1;
}

.approach-container {
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
    position: relative;
    z-index: 2;
}

.approach-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.92vw; /* 56px / 1920px * 100vw */
    line-height: 1.22;
    color: #004170;
    margin: 0 0 2.34vw 0; /* 45px / 1920px * 100vw */
    text-align: left;
}

.approach-description {
    margin: 0 0 4.69vw 0; /* 90px / 1920px * 100vw */
    text-align: left;
}

.approach-description p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #686868;
    margin: 0;
    text-align: left;
}

.approach-steps {
    display: flex;
    gap: 2.08vw; /* 40px / 1920px * 100vw */
    align-items: flex-start;
    overflow-x: auto;
    margin-top: -10vw; /* -40px / 1920px * 100vw - поднимаем весь контейнер */
    padding-top: 10vw;
    padding-bottom: 3vw; /* 60px / 1920px * 100vw - место для номеров */
    width: 100vw;
}

.approach-step {
    flex: 0 0 11.93vw; /* 229px / 1920px * 100vw */
    height: 6.93vw; /* 133px / 1920px * 100vw */
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.step-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.2;
    color: #FFFFFF;
    text-align: center;
    margin: 0;
    padding: 0.52vw 0.26vw; /* 10px 5px / 1920px * 100vw */
    border-radius: 0 0 0.52vw 0.52vw; /* 10px / 1920px * 100vw */
    width: 100%;
    box-sizing: border-box;
    height: 2.6vw; /* 50px / 1920px * 100vw */
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1vw;
}

.step-number {
    width: 2.08vw; /* 40px / 1920px * 100vw */
    height: 2.08vw; /* 40px / 1920px * 100vw */
    background-color: #94A64B;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.56vw; /* 30px / 1920px * 100vw */
    line-height: 1.22;
    color: #FFFFFF;
    position: absolute;
    bottom: 0; /* -20px / 1920px * 100vw - половина высоты номера */
    left: 50%;
    transform: translateX(-50%);
}

.approach-step:last-child .step-number {
    background-color: #004170;
}

/* Ступенчатое расположение блоков */
.approach-step.step-1 {
    margin-top: 0;
}

.approach-step.step-2 {
    margin-top: 0; /* -10px / 1920px * 100vw */
}

.approach-step.step-3 {
    margin-top: 0; /* -20px / 1920px * 100vw */
}

.approach-step.step-4 {
    margin-top: 0; /* -30px / 1920px * 100vw */
}

.approach-step.step-5 {
    margin-top: 0; /* -40px / 1920px * 100vw */
}

/* Мобильная версия для блока подхода */
@media (max-width: 768px) {
    .approach-section {
        padding: 2rem 0;
    }
    
    .approach-section::before {
        width: 50vw;
        height: 50vw;
        background-image: url('assets/images/lines2.png');
        background-position: bottom right;
        transform: rotate(180deg);
    }
    
    .approach-container {
        padding: 0;
    }
    
    .approach-title {
        font-size: 2rem;
        margin-bottom: 1rem;
        text-align: center;
        padding: 0 1rem;
    }
    
    .approach-description {
        margin-bottom: 2rem;
        text-align: left;
        padding: 0 1rem;
    }
    
    .approach-description p {
        font-size: 1rem;
        text-align: left;
    }
    
    .approach-steps {
        flex-direction: column;
        gap: 1.5rem;
        align-items: flex-start;
        margin-top: -2rem; /* поднимаем весь контейнер на мобильных */
        padding-bottom: 2rem; /* место для номеров */
    }
    
    .approach-step {
        flex: none;
        width: 100%;
        max-width: none;
        height: 120px; /* увеличиваем высоту блоков */
        min-height: auto;
        position: relative; /* для позиционирования номеров */
    }
    
    .step-icon {
        height: 150px;
    }
    
    .step-title {
        font-size: 4vw;
        margin-top: -1rem; /* поднимаем текст еще выше */
        margin-bottom: 0;
    }
    
    .step-connector {
        display: none;
    }
    
    .step-number {
        width: 3rem;
        height: 3rem;
        font-size: 1.8rem;
        position: absolute;
        bottom: -1.5rem;
        left: 50%;
        transform: translateX(-50%);
        margin-top: 0;
    }
    
    /* Ступенчатое расположение блоков на мобильных */
    .approach-step.step-1 {
        margin-top: 0;
        margin-left: 0;
        margin-right: 0;
        width: 60%; /* ограничиваем ширину */
    }
    
    .approach-step.step-2 {
        margin-top: -0.5rem; /* -8px */
        margin-left: auto;
        margin-right: 0;
        width: 60%;
    }
    
    .approach-step.step-3 {
        margin-top: -1rem; /* -16px */
        margin-left: 0;
        margin-right: 0;
        width: 60%;
    }
    
    .approach-step.step-4 {
        margin-top: -1.5rem; /* -24px */
        margin-left: auto;
        margin-right: 0;
        width: 60%;
    }
    
    .approach-step.step-5 {
        margin-top: -2rem; /* -32px */
        margin-left: 0;
        margin-right: 0;
        width: 60%;
    }
}

/* Блок "Наши услуги Мультисемейного офиса" */
.services-section {
    background-color: #EFEEE9;
    padding: 4.69vw 0; /* 90px / 1920px * 100vw */
    position: relative;
}

.services-container {
    max-width: 120rem; /* 1920px */
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
    position: relative;
}

.services-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.92vw; /* 56px / 1920px * 100vw */
    line-height: 1.22;
    color: #004170;
    margin: 0 0 1.67vw 0; /* 32px / 1920px * 100vw */
    text-align: left;
}

.services-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #004170;
    margin: 0 0 4.17vw 0; /* 80px / 1920px * 100vw */
    text-align: left;
}

.services-description {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.56vw; /* 30px / 1920px * 100vw */
    line-height: 1.22;
    color: #004170;
    margin: 0 0 3.13vw 0; /* 60px / 1920px * 100vw */
    text-align: left;
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    justify-content: space-between;
    align-items: center;
}

.service-card {
    background-color: #FFFFFF;
    border-radius: 1.04vw; /* 20px / 1920px * 100vw */
    width: 12.08vw; /* 232px / 1920px * 100vw */
    height: 8.13vw; /* 156px / 1920px * 100vw */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1.15vw 0.57vw; /* 22px 11px / 1920px * 100vw */
    box-sizing: border-box;
    position: relative;
}

.service-icon {
    width: 2.08vw; /* 40px / 1920px * 100vw */
    height: 2.08vw; /* 40px / 1920px * 100vw */
    margin-bottom: 1.15vw; /* 22px / 1920px * 100vw */
    display: flex;
    align-items: center;
    justify-content: center;
}

.service-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.service-card-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #004170;
    text-align: center;
    margin: 0;
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Мобильная версия для блока услуг */
@media (max-width: 768px) {
    .services-section {
        padding: 2rem 0;
    }
    
    .services-container {
        padding: 0 1rem;
    }
    
    .services-title {
        font-size: 2rem;
        margin-bottom: 1rem;
        text-align: center;
    }
    
    .services-subtitle {
        font-size: 1.25rem;
        margin-bottom: 2rem;
        text-align: center;
    }
    
    .services-description {
        font-size: 1.5rem;
        margin-bottom: 2rem;
        text-align: center;
    }
    
    .services-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 1rem;
        justify-items: center;
    }
    
    .service-card {
        width: 50%;
        height: 120px;
        border-radius: 1rem;
        padding: 1rem;
    }
    
    .service-icon {
        width: 2rem;
        height: 2rem;
        margin-bottom: 0.5rem;
    }
    
    .service-card-title {
        font-size: 0.9rem;
    }
}

/* Блок "Недвижимость, сделки и управление" */
.real-estate-section {
    background-color: #1D1D17;
    padding: 4.69vw 0; /* 90px / 1920px * 100vw */
    position: relative;
}

.real-estate-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 60vw;
    height: 60vw;
    background-image: url('assets/images/lines.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom right;
    transform: rotate(180deg);
    z-index: 1;
}

.real-estate-section::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 60vw;
    height: 60vw;
    background-image: url('assets/images/lines.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom right;
    z-index: 1;
}

.real-estate-container {
    max-width: 120rem; /* 1920px */
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
    position: relative;
    z-index: 2;
}

.real-estate-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 3.13vw; /* 60px / 1920px * 100vw */
}

.header-left {
    display: flex;
    flex-direction: column;
    gap: 1.67vw; /* 32px / 1920px * 100vw */
}

.services-badge {
    display: flex;
    align-items: center;
    gap: 0.52vw; /* 10px / 1920px * 100vw */
}

.services-badge img {
    width: 1.25vw; /* 24px / 1920px * 100vw */
    height: 1.04vw; /* 20px / 1920px * 100vw */
}

.services-badge span {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #004170;
}
.real-estate-section .services-badge span {
    color: white;
}

.real-estate-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.92vw; /* 56px / 1920px * 100vw */
    line-height: 1.22;
    color: #94A64B;
    margin: 0;
    text-align: left;
}

.consultation-btn-secondary {
    background-color: #94A64B;
    border: none;
    border-radius: 0.52vw; /* 10px / 1920px * 100vw */
    padding: 1.56vw 3.91vw; /* 30px 75px / 1920px * 100vw */
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #FFFFFF;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    transition: all 0.3s ease;
}

.consultation-btn-secondary:hover {
    background-color: #7a8a3a;
    transform: translateY(-2px);
}

@media (max-width: 768px) {
    .consultation-btn-secondary:hover {
        transform: translateX(-50%) translateY(-2px);
    }
    
    .consultation-btn-secondary:active {
        transform: translateX(-50%) translateY(0);
    }
}

.consultation-btn-secondary::after {
    content: '';
    width: 0.74vw; /* 14.25px / 1920px * 100vw */
    height: 0.74vw; /* 14.25px / 1920px * 100vw */
    background-image: url('assets/images/arrow-icon.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    filter: brightness(0) invert(1);
}

.real-estate-cards {
    display: flex;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    align-items: flex-start;
}

.real-estate-card {
    flex: 1;
    max-width: 21.25vw; /* 408px / 1920px * 100vw */
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}

.card-header {
    display: flex;
    align-items: flex-start;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    margin-bottom: 1.56vw; /* 30px / 1920px * 100vw */
}

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

.icon-circle {
    width: 4.17vw; /* 80px / 1920px * 100vw */
    height: 4.17vw; /* 80px / 1920px * 100vw */
    background-color: #94A64B;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.icon-circle img {
    width: 2.08vw; /* 40px / 1920px * 100vw */
    height: 2.08vw; /* 40px / 1920px * 100vw */
    object-fit: contain;
    filter: brightness(0) invert(1); /* делаем иконку белой */
}

.card-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #FFFFFF;
    text-align: left;
    flex: 1;
}

.card-content {
    text-align: left;
    padding-left: 0;
    margin: 0;
    list-style: none;
    counter-reset: item;
}

.card-content li {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #EFEEE9;
    margin: 0 0 0.52vw 0; /* 0 0 10px 0 / 1920px * 100vw */
    text-align: left;
    position: relative;
    padding-left: 1.5vw; /* 30px / 1920px * 100vw */
    counter-increment: item;
}

.card-content li:before {
    content: counter(item) ".";
    position: absolute;
    left: 0;
    top: 0;
    color: #FFFFFF;
    font-weight: 700;
}

.card-content li:last-child {
    margin-bottom: 0;
}

/* Мобильная версия для блока недвижимости */
@media (max-width: 768px) {
    .real-estate-section {
        padding: 2rem 0 6rem 0;
    }
    
    .real-estate-section::before,
    .real-estate-section::after {
        width: 50vw;
        height: 50vw;
        background-image: url('assets/images/lines2.png');
    }
    
    .real-estate-container {
        padding: 0 1rem;
    }
    
    .real-estate-header {
        flex-direction: column;
        align-items: center;
        gap: 1rem;
        margin-bottom: 2rem;
    }
    
    .header-left {
        align-items: center;
        gap: 1rem;
    }
    
    .real-estate-section {
        position: relative;
    }
    
    .consultation-btn-secondary {
        position: absolute;
        bottom: -3rem;
        left: 50%;
        transform: translateX(-50%);
        z-index: 10;
    }
    
    .services-badge {
        gap: 0.5rem;
    }
    
    .services-badge img {
        width: 1.5rem;
        height: 1.25rem;
    }
    
    .services-badge span {
        font-size: 1rem;
    }
    
    .real-estate-title {
        font-size: 2rem;
        text-align: center;
    }
    
    .consultation-btn-secondary {
        border-radius: 0.5rem;
        padding: 1rem 2rem;
        font-size: 1rem;
        gap: 1rem;
    }
    
    .consultation-btn-secondary::after {
        width: 1rem;
        height: 1rem;
    }
    
    .real-estate-cards {
        flex-direction: column;
        gap: 2rem;
    }
    
    .real-estate-card {
        max-width: 100%;
        height: auto;
        min-height: 200px;
    }
    
    .card-header {
        gap: 1rem;
        margin-bottom: 1rem;
    }
    
    .icon-circle {
        width: 4rem;
        height: 4rem;
    }
    
    .icon-circle img {
        width: 2rem;
        height: 2rem;
    }
    
    .card-title {
        font-size: 1.25rem;
        margin: 0 0 1rem 0;
    }
    
    .card-content {
        text-align: left;
    }
    
    .card-content li {
        font-size: 1rem;
        margin-bottom: 0.5rem;
        padding-left: 2rem;
    }
}

/* Блок "Инвестиции и управление бизнесом" */
.investments-section {
    background-color: #EFEEE9;
    padding: 4.69vw 0; /* 90px / 1920px * 100vw */
    position: relative;
}

.investments-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 60vw;
    height: 60vw;
    background-image: url('assets/images/lines.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom right;
    transform: rotate(180deg);
    z-index: 1;
}

.investments-section::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 60vw;
    height: 60vw;
    background-image: url('assets/images/lines.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom right;
    z-index: 1;
}

.investments-container {
    max-width: 120rem; /* 1920px */
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
    position: relative;
    z-index: 2;
}

.investments-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 3.13vw; /* 60px / 1920px * 100vw */
}

.investments-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.92vw; /* 56px / 1920px * 100vw */
    line-height: 1.22;
    color: #94A64B;
    margin: 0;
    text-align: left;
}

.investments-section .services-badge img {
    filter: brightness(0) saturate(100%) invert(27%) sepia(51%) saturate(2878%) hue-rotate(194deg) brightness(89%) contrast(97%);
}

.investments-section .services-badge span {
    color: #004170;
}

.investments-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    align-items: flex-start;
}

.investment-card {
    flex: 1;
    min-width: 30.6vw; /* 627px / 1920px * 100vw */
    max-width: 32.6vw; /* 627px / 1920px * 100vw */
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}

.investment-card:nth-child(3),
.investment-card:nth-child(4),
.investment-card:nth-child(5) {
    min-width: 20.25vw; /* 408px / 1920px * 100vw */
    max-width: 21.25vw; /* 408px / 1920px * 100vw */
}

.investment-card .card-header {
    display: flex;
    align-items: flex-start;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    margin-bottom: 0.56vw; /* 30px / 1920px * 100vw */
}

.investment-card .card-icon {
    flex-shrink: 0;
}

.investment-card .icon-circle {
    width: 4.17vw; /* 80px / 1920px * 100vw */
    height: 4.17vw; /* 80px / 1920px * 100vw */
    background-color: #94A64B;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.investment-card .icon-circle img {
    width: 2.08vw; /* 40px / 1920px * 100vw */
    height: 2.08vw; /* 40px / 1920px * 100vw */
    object-fit: contain;
    filter: brightness(0) invert(1); /* делаем иконку белой */
}

.investment-card .card-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #004170;
    margin: 0;
    text-align: left;
    flex: 1;
}

.investment-card .card-content {
    text-align: left;
    margin-bottom: 25px;
}

.investment-card .card-content p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #686868;
    margin: 0;
    text-align: left;
}

/* Мобильная версия для блока инвестиций */
@media (max-width: 768px) {
    .investments-section {
        padding: 2rem 0 6rem 0;
    }
    
    .investments-section::before,
    .investments-section::after {
        width: 50vw;
        height: 50vw;
        background-image: url('assets/images/lines2.png');
    }
    
    .investments-container {
        padding: 0 1rem;
    }
    
    .investments-header {
        flex-direction: column;
        align-items: center;
        gap: 1rem;
        margin-bottom: 2rem;
    }
    
    .header-left {
        align-items: center;
        gap: 1rem;
    }
    
    .investments-title {
        font-size: 2rem;
        text-align: center;
    }
    
    .consultation-btn-secondary {
        position: absolute;
        bottom: -3rem;
        left: 50%;
        transform: translateX(-50%);
        z-index: 10;
    }
    
    .investments-cards {
        flex-direction: column;
        gap: 2rem;
    }
    
    .investment-card {
        min-width: 100%;
        max-width: 100%;
    }
    
    .investment-card:nth-child(3),
    .investment-card:nth-child(4),
    .investment-card:nth-child(5) {
        min-width: 100%;
        max-width: 100%;
    }
    
    .investment-card .card-header {
        gap: 1rem;
        margin-bottom: 1rem;
    }
    
    .investment-card .icon-circle {
        width: 4rem;
        height: 4rem;
    }
    
    .investment-card .icon-circle img {
        width: 2rem;
        height: 2rem;
    }
    
    .investment-card .card-title {
        font-size: 1.25rem;
    }
    
    .investment-card .card-content p {
        font-size: 1rem;
    }
}

/* Блок "Другие услуги, которые мы оказываем" */
.other-services-section {
    background-color: #1D1D17;
    background-image: url('assets/images/rolls.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 4.69vw 0; /* 90px / 1920px * 100vw */
    position: relative;
}


.other-services-container {
    max-width: 120rem; /* 1920px */
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
    position: relative;
    z-index: 2;
}

.other-services-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 3.13vw; /* 60px / 1920px * 100vw */
}

.other-services-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.92vw; /* 56px / 1920px * 100vw */
    line-height: 1.22;
    color: #94A64B;
    margin: 0;
    text-align: left;
}

.other-services-section .services-badge span {
    color: #EFEEE9;
}

.other-services-cards {
    display: flex;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    align-items: stretch;
}

.first-card-container {
    display: flex;
    flex-direction: column;
    min-width: 28vw; /* 408px / 1920px * 100vw */
}

.other-service-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    min-width: 21.25vw; /* 408px / 1920px * 100vw */
    max-width: 25vw; /* 408px / 1920px * 100vw */
}

.cards-column {
    display: flex;
    flex-direction: column;
    min-width: 25vw; /* 408px / 1920px * 100vw */
}

.other-service-card .card-header {
    display: flex;
    align-items: flex-start;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    margin-bottom: 0.5vw; /* 30px / 1920px * 100vw */
}

.other-service-card .card-icon {
    flex-shrink: 0;
}

.other-service-card .icon-circle {
    width: 4.17vw; /* 80px / 1920px * 100vw */
    height: 4.17vw; /* 80px / 1920px * 100vw */
    background-color: #94A64B;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.other-service-card .icon-circle img {
    width: 2.08vw; /* 40px / 1920px * 100vw */
    height: 2.08vw; /* 40px / 1920px * 100vw */
    object-fit: contain;
    filter: brightness(0) invert(1); /* делаем иконку белой */
}

.other-service-card .card-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #FFFFFF;
    margin: 0;
    text-align: left;
    flex: 1;
}

.other-service-card .card-content {
    text-align: left;
    list-style: none;
    counter-reset: item;
    padding-left: 0;
    margin: 0;
}

.other-service-card .card-content li {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #EFEEE9;
    margin-bottom: 2vw; /* 10px / 1920px * 100vw */
    padding-left: 1.56vw; /* 30px / 1920px * 100vw */
    position: relative;
    counter-increment: item;
}

.other-service-card .card-content li:before {
    content: counter(item) ".";
    position: absolute;
    left: 0;
    top: 0;
    color: #FFFFFF;
    font-weight: 700;
}

/* Мобильная версия для блока других услуг */
@media (max-width: 768px) {
    .other-services-section {
        padding: 2rem 0 6rem 0;
    }
    
    
    .other-services-container {
        padding: 0 1rem;
    }
    
    .other-services-header {
        flex-direction: column;
        align-items: center;
        gap: 1rem;
        margin-bottom: 2rem;
    }
    
    .header-left {
        align-items: center;
        gap: 1rem;
    }
    
    .other-services-title {
        font-size: 2rem;
        text-align: center;
    }
    
    .consultation-btn-secondary {
        position: absolute;
        bottom: -3rem;
        left: 50%;
        transform: translateX(-50%);
        z-index: 10;
    }
    
    .other-services-cards {
        flex-direction: column;
        gap: 2rem;
    }
    
    .first-card-container {
        min-width: 100%;
        max-width: 100%;
    }
    
    .other-service-card {
        min-width: 100%;
        max-width: 100%;
    }
    
    .cards-column {
        gap: 1rem; /* уменьшенный отступ для мобильных */
        min-width: 100%;
        max-width: 100%;
    }
    
    .other-service-card .card-header {
        gap: 1rem;
        margin-bottom: 1rem;
    }
    
    .other-service-card .icon-circle {
        width: 4rem;
        height: 4rem;
    }
    
    .other-service-card .icon-circle img {
        width: 2rem;
        height: 2rem;
    }
    
    .other-service-card .card-title {
        font-size: 1.25rem;
    }
    
    .other-service-card .card-content li {
        font-size: 1rem;
        margin-bottom: 0.5rem;
        padding-left: 2rem;
    }
}

/* Блок "Дополнительные услуги" */
.additional-services-section {
    background-color: #EFEEE9;
    padding: 4.69vw 0; /* 90px / 1920px * 100vw */
    position: relative;
}


.additional-services-container {
    max-width: 120rem; /* 1920px */
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
    position: relative;
    z-index: 2;
}

.additional-services-header {
    display: flex;
    align-items: end;
    justify-content: space-between;
    margin-bottom: 3.13vw; /* 60px / 1920px * 100vw */
}

.additional-services-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.92vw; /* 56px / 1920px * 100vw */
    line-height: 1.22;
    color: #94A64B;
    margin: 0;
    text-align: left;
}

.additional-services-section .services-badge img {
    filter: brightness(0) saturate(100%) invert(27%) sepia(51%) saturate(2878%) hue-rotate(194deg) brightness(89%) contrast(97%);
}

.additional-services-section .services-badge span {
    color: #004170;
}

.additional-services-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    align-items: flex-start;
}

.additional-service-card {
    flex: 1;
    min-width: 21.25vw; /* 408px / 1920px * 100vw */
    max-width: 21.25vw; /* 408px / 1920px * 100vw */
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}

.additional-service-card .card-header {
    display: flex;
    align-items: flex-start;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    margin-bottom: 1.56vw; /* 30px / 1920px * 100vw */
}

.additional-service-card .card-icon {
    flex-shrink: 0;
}

.additional-service-card .icon-circle {
    width: 4.17vw; /* 80px / 1920px * 100vw */
    height: 4.17vw; /* 80px / 1920px * 100vw */
    background-color: #94A64B;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.additional-service-card .icon-circle img {
    width: 2.08vw; /* 40px / 1920px * 100vw */
    height: 2.08vw; /* 40px / 1920px * 100vw */
    object-fit: contain;
    filter: brightness(0) invert(1); /* делаем иконку белой */
}

.additional-service-card .card-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #004170;
    margin: 0;
    text-align: left;
    flex: 1;
}

.additional-service-card .card-content {
    text-align: left;
    list-style: none;
    counter-reset: item;
    padding-left: 0;
    margin: 0;
}

.additional-service-card .card-content li {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #686868;
    margin-bottom: 0.52vw; /* 10px / 1920px * 100vw */
    padding-left: 1.56vw; /* 30px / 1920px * 100vw */
    position: relative;
    counter-increment: item;
}

.additional-service-card .card-content li:before {
    content: counter(item) ".";
    position: absolute;
    left: 0;
    top: 0;
    color: #004170;
    font-weight: 700;
}

/* Мобильная версия для блока дополнительных услуг */
@media (max-width: 768px) {
    .additional-services-section {
        padding: 2rem 0 6rem 0;
    }
    
    
    .additional-services-container {
        padding: 0 1rem;
    }
    
    .additional-services-header {
        flex-direction: column;
        align-items: center;
        gap: 1rem;
        margin-bottom: 2rem;
    }
    
    .header-left {
        align-items: center;
        gap: 1rem;
    }
    
    .additional-services-title {
        font-size: 2rem;
        text-align: center;
    }
    
    .consultation-btn-secondary {
        position: absolute;
        bottom: -3rem;
        left: 50%;
        transform: translateX(-50%);
        z-index: 10;
    }
    
    .additional-services-cards {
        flex-direction: column;
        gap: 2rem;
    }
    
    .additional-service-card {
        min-width: 100%;
        max-width: 100%;
    }
    
    .additional-service-card .card-header {
        gap: 1rem;
        margin-bottom: 1rem;
    }
    
    .additional-service-card .icon-circle {
        width: 4rem;
        height: 4rem;
    }
    
    .additional-service-card .icon-circle img {
        width: 2rem;
        height: 2rem;
    }
    
    .additional-service-card .card-title {
        font-size: 1.25rem;
    }
    
    .additional-service-card .card-content li {
        font-size: 1rem;
        margin-bottom: 0.5rem;
        padding-left: 2rem;
    }
}

/* Форма обратной связи */
.contact-form-section {
    background-image: url('assets/images/contact-form-background-12e9d3.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    min-height: 24.38vw; /* 468px / 1920px * 100vw */
}

.contact-form-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 1;
}

.contact-form-container {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 24.38vw; /* 468px / 1920px * 100vw */
    padding: 4.69vw 0; /* 90px / 1920px * 100vw */
}

.contact-form-content {
    text-align: center;
    max-width: 80rem; /* 1280px */
    width: 100%;
    padding: 0 2rem;
}

.contact-form-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.92vw; /* 56px / 1920px * 100vw */
    line-height: 1.22;
    color: #94A64B;
    margin: 0 0 0.52vw 0; /* 10px / 1920px * 100vw */
    text-align: center;
}

.contact-form-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #EFEEE9;
    margin: 0 0 2.08vw 0; /* 40px / 1920px * 100vw */
    text-align: center;
}

.contact-form {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
}

.form-fields {
    display: flex;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    align-items: center;
}

.form-input {
    width: 95%; /* 407px / 1920px * 100vw */
    height: 3.13vw; /* 60px / 1920px * 100vw */
    background-color: rgba(0, 0, 0, 0.5);
    border: 1px solid #94A64B;
    border-radius: 0.31vw; /* 6px / 1920px * 100vw */
    padding: 0 1.04vw; /* 20px / 1920px * 100vw */
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #EFEEE9;
    outline: none;
    transition: all 0.3s ease;
}

.form-input::placeholder {
    color: #EFEEE9;
    opacity: 1;
}

.form-input:focus {
    border-color: #94A64B;
    box-shadow: 0 0 0 2px rgba(148, 166, 75, 0.2);
}

.form-submit-btn {
    width: 21.2vw; /* 407px / 1920px * 100vw */
    height: 3.13vw; /* 60px / 1920px * 100vw */
    background-color: #94A64B;
    border: 1px solid #94A64B;
    border-radius: 0.31vw; /* 6px / 1920px * 100vw */
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #FFFFFF;
    cursor: pointer;
    transition: all 0.3s ease;
}

.form-submit-btn:hover {
    background-color: #7a8a3a;
    border-color: #7a8a3a;
}

.form-consent {
    display: flex;
    align-items: center;
    justify-content: center;
}

.consent-checkbox {
    display: flex;
    align-items: center;
    gap: 0.52vw; /* 10px / 1920px * 100vw */
    cursor: pointer;
}

.consent-checkbox input[type="checkbox"] {
    display: none;
}

.checkmark {
    width: 0.94vw; /* 18px / 1920px * 100vw */
    height: 0.94vw; /* 18px / 1920px * 100vw */
    background-color: #94A64B;
    border-radius: 0.21vw; /* 4px / 1920px * 100vw */
    position: relative;
    flex-shrink: 0;
}

.consent-checkbox input[type="checkbox"]:checked + .checkmark::after {
    content: '✓';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #FFFFFF;
    font-size: 0.7vw; /* 13px / 1920px * 100vw */
    font-weight: bold;
}

.consent-text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.73vw; /* 14px / 1920px * 100vw */
    line-height: 1.43;
    color: #EFEEE9;
    opacity: 0.6;
}

/* Мобильная версия для формы обратной связи */
@media (max-width: 768px) {
    .contact-form-section {
        min-height: auto;
        padding: 2rem 0;
    }
    
    .contact-form-container {
        min-height: auto;
        padding: 2rem 0;
    }
    
    .contact-form-content {
        padding: 0 1rem;
    }
    
    .contact-form-title {
        font-size: 2rem;
        margin-bottom: 1rem;
    }
    
    .contact-form-subtitle {
        font-size: 1.25rem;
        margin-bottom: 2rem;
    }
    
    .contact-form {
        gap: 1.5rem;
    }
    
    .form-fields {
        flex-direction: column;
        gap: 1rem;
        width: 100%;
    }
    
    .form-input {
        width: 100%;
        max-width: 300px;
        height: 3rem;
        font-size: 1rem;
        padding: 0 1rem;
    }
    
    .form-submit-btn {
        width: 100%;
        max-width: 300px;
        height: 3rem;
        font-size: 1.25rem;
    }
}

/* Сообщение об успешной отправке */
.form-success-message {
    background-color: #D4EDDA;
    color: #155724;
    border: 1px solid #C3E6CB;
    border-radius: 0.31vw; /* 6px / 1920px * 100vw */
    padding: 1.04vw; /* 20px / 1920px * 100vw */
    margin-bottom: 1.56vw; /* 30px / 1920px * 100vw */
    text-align: center;
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
}

.form-success-message p {
    margin: 0;
}

/* Мобильные стили для сообщения об успехе */
@media (max-width: 768px) {
    .form-success-message {
        padding: 1rem;
        margin-bottom: 1.5rem;
        font-size: 1rem;
    }
}



/* Футер */
.footer {
    background-color: #1D1D17;
    padding: 0;
    margin-top: auto;
}

.footer-container {
    max-width: 120rem; /* 1920px */
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
}

.footer-content {
    padding: 2.5vw 0; /* 48px / 1920px * 100vw */
}

.footer-main {
    display: flex;
    gap: 4.17vw; /* 80px / 1920px * 100vw */
    align-items: flex-start;
}

.footer-left {
    display: flex;
    flex-direction: column;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    flex: 1;
}

.footer-center {
    display: flex;
    flex-direction: column;
    gap: 1.04vw; /* 20px / 1920px * 100vw */
    flex: 1;
}

.footer-right {
    display: flex;
    flex-direction: column;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    flex: 1;
}

.footer-logo {
    display: flex;
    align-items: flex-start;
}

.logo-block {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.31vw; /* 6px / 1920px * 100vw */
    background-color: #94A64B;
    padding: 0.52vw; /* 10px / 1920px * 100vw */
    border-radius: 0.26vw; /* 5px / 1920px * 100vw */
}

.logo-text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.35vw; /* 26px / 1920px * 100vw */
    line-height: 1.22;
    letter-spacing: 0.1em;
    color: #FFFFFF;
    text-align: center;
}

.logo-line {
    width: 5.89vw; /* 113px / 1920px * 100vw */
    height: 1px;
    background-color: #FFFFFF;
}

.logo-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 0.36vw; /* 7px / 1920px * 100vw */
    line-height: 1.22;
    letter-spacing: 0.04em;
    color: #FFFFFF;
    text-align: center;
}

.company-name {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #EFEEE9;
}

.nav-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #FFFFFF;
    margin: 0;
}

.nav-links {
    display: flex;
    flex-direction: column;
    gap: 1.04vw; /* 20px / 1920px * 100vw */
}

.nav-link {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #EFEEE9;
    text-decoration: none;
    transition: color 0.3s ease;
}

.nav-link:hover {
    color: #94A64B;
}

.contact-info {
    display: flex;
    flex-direction: column;
    gap: 1.04vw; /* 20px / 1920px * 100vw */
}

.contact-item {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #EFEEE9;
}

.social-links {
    display: flex;
    flex-direction: column;
    gap: 0.52vw; /* 10px / 1920px * 100vw */
}

.social-link {
    display: flex;
    align-items: center;
    gap: 1.04vw; /* 20px / 1920px * 100vw */
    text-decoration: none;
    transition: opacity 0.3s ease;
}

.social-link:hover {
    opacity: 0.8;
}

.social-link img {
    width: 1.25vw; /* 24px / 1920px * 100vw */
    height: 1.25vw; /* 24px / 1920px * 100vw */
    filter: brightness(0) saturate(100%) invert(58%) sepia(15%) saturate(1234%) hue-rotate(45deg) brightness(95%) contrast(89%);
}

.social-link span {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #EFEEE9;
}

.scroll-to-top {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.scroll-btn {
    width: 2.08vw; /* 40px / 1920px * 100vw */
    height: 2.08vw; /* 40px / 1920px * 100vw */
    background-color: #262623;
    border: 1px solid #94A64B;
    border-radius: 0.52vw; /* 10px / 1920px * 100vw */
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.scroll-btn:hover {
    background-color: #94A64B;
}

.scroll-btn img {
    width: 0.74vw; /* 14px / 1920px * 100vw */
    height: 0.74vw; /* 14px / 1920px * 100vw */
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%);
}

.footer-line {
    width: 100%;
    height: 1px;
    background-color: #686868;
}

.copyright {
    display: flex;
    justify-content: center;
    padding: 1.25vw 0; /* 24px / 1920px * 100vw */
}

.copyright p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #FFFFFF;
    margin: 0;
}

/* Блок с куки-согласием */
.cookies-banner {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    background-color: #FFFFFF !important;
    padding: 2.08vw 0 !important; /* 40px / 1920px * 100vw */
    z-index: 9999 !important;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1) !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.cookies-banner.hidden {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

.cookies-content {
    max-width: 120rem; /* 1920px */
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2.08vw; /* 40px / 1920px * 100vw */
}

.cookies-text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.73vw; /* 14px / 1920px * 100vw */
    line-height: 1.43;
    color: #686868;
    margin: 0;
    flex: 1;
}

.cookies-actions {
    display: flex;
    align-items: center;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
}

.cookies-link {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.73vw; /* 14px / 1920px * 100vw */
    line-height: 1.43;
    color: #94A64B;
    text-decoration: none;
    transition: color 0.3s ease;
}

.cookies-link:hover {
    color: #7a8a3a;
}

.cookies-accept-btn {
    background-color: #94A64B;
    border: none;
    border-radius: 0.52vw; /* 10px / 1920px * 100vw */
    padding: 0.52vw 1.04vw; /* 10px 20px / 1920px * 100vw */
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #FFFFFF;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.cookies-accept-btn:hover {
    background-color: #7a8a3a;
}

/* Мобильная версия для футера */
@media (max-width: 768px) {
    .footer-container {
        padding: 0 1rem;
    }
    
    .footer-content {
        padding: 2rem 0;
    }
    
    .footer-main {
        flex-direction: column;
        gap: 2rem;
    }
    
    .footer-left,
    .footer-center,
    .footer-right {
        gap: 1rem;
    }
    
    .logo-block {
        padding: 0.75rem;
        border-radius: 0.5rem;
    }
    
    .logo-text {
        font-size: 1.5rem;
    }
    
    .logo-line {
        width: 6rem;
        height: 2px;
    }
    
    .logo-subtitle {
        font-size: 0.4rem;
    }
    
    .footer-info {
        gap: 1.5rem;
    }
    
    .company-name {
        font-size: 1rem;
    }
    
    .footer-navigation {
        flex-direction: column;
        gap: 2rem;
    }
    
    .nav-title {
        font-size: 1.25rem;
    }
    
    .nav-links {
        gap: 1rem;
    }
    
    .nav-link {
        font-size: 1rem;
    }
    
    .contact-info {
        gap: 1rem;
    }
    
    .contact-item {
        font-size: 1rem;
    }
    
    .social-links {
        gap: 0.5rem;
    }
    
    .social-link img {
        width: 1.5rem;
        height: 1.5rem;
    }
    
    .social-link span {
        font-size: 1rem;
    }
    
    .scroll-btn {
        width: 2.5rem;
        height: 2.5rem;
    }
    
    .scroll-btn img {
        width: 1rem;
        height: 1rem;
    }
    
    .copyright p {
        font-size: 1rem;
    }
    
    .cookies-banner {
        padding: 1rem 0;
    }
    
    .cookies-content {
        padding: 0 1rem;
        flex-direction: column;
        gap: 1rem;
        text-align: center;
    }
    
    .cookies-text {
        font-size: 0.875rem;
    }
    
    .cookies-actions {
        gap: 1rem;
    }
    
    .cookies-link {
        font-size: 0.875rem;
    }
    
    .cookies-accept-btn {
        font-size: 1rem;
        padding: 0.75rem 1.5rem;
    }
}

/* Страница "О нас" */
.about-hero {
    background-image: url('assets/images/about-hero-background-30a9a7.jpg');
    min-height: 50vh; /* Уменьшаем высоту в 2 раза */
}

.about-hero::before {
    background-color: rgba(0, 0, 0, 0.95); /* Максимальное затемнение */
}

/* Активная ссылка в навигации */
.nav-link.active,
.menu-item.active,
.mobile-nav-link.active,
.mobile-menu-item.active {
    color: #94A64B !important;
}
.about-main-subtitle {
    width: 35vw;
}

/* Второй блок страницы "О нас" - Our Mission is Clear */
.about-mission-section {
    background-color: #EFEEE9;
    padding: 4.69vw 0; /* 90px / 1920px * 100vw */
}

.about-mission-container {
    max-width: 120rem; /* 1920px */
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
}

.about-mission-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.92vw; /* 56px / 1920px * 100vw */
    line-height: 1.22;
    color: #004170;
    margin: 0 0 2.19vw 0; /* 42px / 1920px * 100vw */
    text-align: left;
}

.about-mission-content {
    display: flex;
    gap: 3.13vw; /* 60px / 1920px * 100vw */
    align-items: flex-start;
}

.about-mission-text {
    flex: 1;
    max-width: 38.28vw; /* 735px / 1920px * 100vw */
}

.about-mission-text p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #686868;
    margin: 0 0 1.04vw 0; /* 20px / 1920px * 100vw */
}

.about-mission-text p:last-child {
    margin-bottom: 0;
}

.about-mission-quote {
    background-color: #94A64B;
    border-radius: 1.56vw; /* 30px / 1920px * 100vw */
    padding: 2.08vw; /* 40px / 1920px * 100vw */
    width: 26.88vw; /* 516px / 1920px * 100vw */
    height: 15.36vw; /* 295px / 1920px * 100vw */
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.about-quote-icon {
    position: absolute;
    width: 3.13vw; /* 60px / 1920px * 100vw */
    height: 2.29vw; /* 44px / 1920px * 100vw */
}

.about-quote-icon img {
    width: 100%;
    height: 100%;
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%);
}

.about-quote-icon-left {
    top: 1.56vw; /* 30px / 1920px * 100vw */
    left: 2.08vw; /* 40px / 1920px * 100vw */
}

.about-quote-icon-right {
    bottom: 1.56vw; /* 30px / 1920px * 100vw */
    right: 2.08vw; /* 40px / 1920px * 100vw */
}

.about-quote-text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #FFFFFF;
    margin: 0;
    text-align: center;
    max-width: 22.71vw; /* 436px / 1920px * 100vw */
}

/* Мобильная версия для второго блока */
@media (max-width: 768px) {
    .about-mission-section {
        padding: 3rem 0;
    }
    
    .about-mission-container {
        padding: 0 1rem;
    }
    
    .about-mission-title {
        font-size: 2rem;
        margin-bottom: 2rem;
    }
    
    .about-mission-content {
        flex-direction: column;
        gap: 2rem;
    }
    
    .about-mission-text {
        max-width: 100%;
    }
    
    .about-mission-text p {
        font-size: 1rem;
        margin-bottom: 1rem;
    }
    
    .about-mission-quote {
        width: 100%;
        height: auto;
        min-height: 200px;
        padding: 2rem;
    }
    
    .about-quote-icon {
        width: 2rem;
        height: 1.5rem;
    }
    
    .about-quote-icon-left {
        top: 1rem;
        left: 1rem;
    }
    
    .about-quote-icon-right {
        bottom: 1rem;
        right: 1rem;
    }
    
    .about-quote-text {
        font-size: 1.25rem;
        max-width: 100%;
    }
    .about-main-subtitle {
            width: auto;
    }
}

/* Третий блок страницы "О нас" - Our Experts Waiting For You */
.about-experts-section {
    background-color: #FFFFFF;
    padding: 4.17vw 0; /* 80px / 1920px * 100vw */
}

.about-experts-container {
    max-width: 120rem; /* 1920px */
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
}

.about-experts-badge {
    display: flex;
    align-items: center;
    gap: 0.26vw; /* 5px / 1920px * 100vw */
}

.about-badge-slash {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #686868;
}

.about-badge-text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #004170;
}

.about-experts-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.92vw; /* 56px / 1920px * 100vw */
    line-height: 1.22;
    color: #94A64B;
    margin: 0 0 1.56vw 0; /* 30px / 1920px * 100vw */
    text-align: left;
    width: 30vw;
}

.about-experts-description {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #686868;
    margin: 0 0 2.08vw 0; /* 40px / 1920px * 100vw */
    text-align: left;
}

.about-experts-content {
    display: flex;
    gap: 3.13vw; /* 60px / 1920px * 100vw */
    align-items: flex-start;
}

.about-experts-left {
    flex: 1;
    max-width: 32.4vw; /* 622px / 1920px * 100vw */
    display: flex;
    flex-direction: column;
    gap: 0.9vw; /* 50px / 1920px * 100vw */
}

.about-experts-service {
    width: 100%;
}

.about-service-header {
    display: flex;
    align-items: center;
    gap: 1.04vw; /* 20px / 1920px * 100vw */
    margin-bottom: 1.56vw; /* 30px / 1920px * 100vw */
}

.about-service-icon {
    width: 3.13vw; /* 60px / 1920px * 100vw */
    height: 3.13vw; /* 60px / 1920px * 100vw */
    background-color: #94A64B;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.about-service-icon img {
    width: 1.56vw; /* 30px / 1920px * 100vw */
    height: 2.08vw; /* 40px / 1920px * 100vw */
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%);
}

.about-service-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #004170;
    margin: 0;
    text-align: left;
}

.about-service-content {
    margin-left: 0;
}

.about-service-description {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #686868;
    margin: 0;
    text-align: left;
}

.about-experts-image {
    width: 26.93vw; /* 517px / 1920px * 100vw */
    height: 32.4vw; /* 622px / 1920px * 100vw */
    border-radius: 2.08vw; /* 40px / 1920px * 100vw */
    overflow: hidden;
}

.about-experts-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.about-consultation-btn {
    background-color: #94A64B;
    border: none;
    border-radius: 0.52vw; /* 10px / 1920px * 100vw */
    padding: 1.56vw 3.91vw; /* 30px 75px / 1920px * 100vw */
    display: flex;
    align-items: center;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    cursor: pointer;
    transition: all 0.3s ease;
    align-self: flex-start;
}

.about-consultation-btn:hover {
    background-color: #7a8a3a;
}

.about-consultation-btn span {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #FFFFFF;
}

.about-arrow-icon {
    width: 0.74vw; /* 14px / 1920px * 100vw */
    height: 0.74vw; /* 14px / 1920px * 100vw */
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%);
}

/* Мобильная версия для третьего блока */
@media (max-width: 768px) {
    .about-experts-section {
        padding: 3rem 0;
    }
    
    .about-experts-container {
        padding: 0 1rem;
    }
    
    .about-experts-badge {
        gap: 0.5rem;
        margin-bottom: 1rem;
    }
    
    .about-badge-slash,
    .about-badge-text {
        font-size: 1rem;
    }
    
    .about-experts-title {
        font-size: 2rem;
        margin-bottom: 1rem;
        text-align: center;
        width: 100%;
    }
    
    .about-experts-description {
        font-size: 1rem;
        margin-bottom: 1.5rem;
    }
    
    .about-experts-content {
        flex-direction: column;
        gap: 2rem;
    }
    
    .about-experts-left {
        max-width: 100%;
        gap: 1.5rem;
    }
    
    .about-experts-service {
        order: 2;
        width: 100%;
        display: none; /* Скрываем сервис на мобилке */
    }
    
    .about-consultation-btn {
        order: 3;
        display: none; /* Скрываем кнопку на мобилке */
    }
    
    .about-experts-image {
        order: 1;
    }
    
    .about-service-header {
        gap: 1rem;
        margin-bottom: 1rem;
    }
    
    .about-service-icon {
        width: 3rem;
        height: 3rem;
        border-radius: 50%;
    }
    
    .about-service-icon img {
        width: 1.25rem;
        height: 1.5rem;
    }
    
    .about-service-title {
        font-size: 1.25rem;
        margin-bottom: 1rem;
    }
    
    .about-service-description {
        font-size: 1rem;
    }
    
    .about-experts-image {
        width: 100%;
        height: 300px;
        border-radius: 1rem;
    }
    
    .about-consultation-btn {
        padding: 1rem 2rem;
        gap: 1rem;
        border-radius: 0.5rem;
        align-self: flex-start;
    }
    
    .about-consultation-btn span {
        font-size: 1rem;
    }
    
    .about-arrow-icon {
        width: 1rem;
        height: 1rem;
    }
}

/* Копия сервиса и кнопки для мобильной версии - скрыта на десктопе */
.about-experts-mobile-copy {
    display: none;
}

/* Мобильная версия копии */
@media (max-width: 768px) {
    .about-experts-mobile-copy {
        display: block;
        background-color: #FFFFFF;
        padding: 3rem 0;
    }
    
    .about-experts-mobile-container {
        max-width: 120rem;
        margin: 0 auto;
        padding: 0 1rem;
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
    }
    
    .about-experts-service-mobile {
        width: 100%;
    }
    
    .about-service-header-mobile {
        display: flex;
        align-items: center;
        gap: 1rem;
        margin-bottom: 1rem;
    }
    
    .about-service-icon-mobile {
        width: 3rem;
        height: 3rem;
        background-color: #94A64B;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
    }
    
    .about-service-icon-mobile img {
        width: 1.25rem;
        height: 1.5rem;
        filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%);
    }
    
    .about-service-title-mobile {
        font-family: 'Montserrat', sans-serif;
        font-weight: 700;
        font-size: 1.25rem;
        line-height: 1.25;
        color: #004170;
        margin: 0;
        text-align: left;
    }
    
    .about-service-content-mobile {
        margin-left: 0;
    }
    
    .about-service-description-mobile {
        font-family: 'Montserrat', sans-serif;
        font-weight: 500;
        font-size: 1rem;
        line-height: 1.33;
        color: #686868;
        margin: 0;
        text-align: left;
    }
    
    .about-consultation-btn-mobile {
        background-color: #94A64B;
        border: none;
        border-radius: 0.5rem;
        padding: 1rem 2rem;
        display: flex;
        align-items: center;
        gap: 1rem;
        cursor: pointer;
        transition: all 0.3s ease;
        align-self: center;
    }
    
    .about-consultation-btn-mobile:hover {
        background-color: #7a8a3a;
    }
    
    .about-consultation-btn-mobile span {
        font-family: 'Montserrat', sans-serif;
        font-weight: 500;
        font-size: 1rem;
        line-height: 1.33;
        color: #FFFFFF;
    }
    
    .about-arrow-icon-mobile {
        width: 1rem;
        height: 1rem;
        filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%);
    }
}

/* ===== СТИЛИ ДЛЯ СТРАНИЦЫ БЛОГА ===== */

/* Hero секция для блога */
.blog-hero-section {
    background-image: 
        linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
        url('./assets/images/blog-hero-background.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 50vh; /* Высота согласно Figma */
}

/* Логотип для блога */
.blog-logo {
    background-color: #94A64B;
}

/* Навигация для блога */
.blog-navigation .menu-item.active {
    color: #94A64B;
}

/* Мобильная шапка для блога */
.blog-mobile-header {
    background: transparent;
}

/* Декоративные линии для блога */
.blog-decorative-line-1 {
    position: absolute;
    top: 4.8vw; /* 99px / 1920px * 100vw */
    left: 0;
    width: 15.625vw; /* 300px / 1920px * 100vw */
    height: 0.052vw; /* 1px / 1920px * 100vw */
    background: rgba(255, 255, 255, 0.5);
}

.blog-decorative-line-2 {
    position: absolute;
    top: 4.8vw; /* 99px / 1920px * 100vw */
    right: 0;
    width: 75.208vw; /* 1444px / 1920px * 100vw */
    height: 0.052vw; /* 1px / 1920px * 100vw */
    background: rgba(255, 255, 255, 0.5);
}

/* Основной контент для блога */
.blog-main-content {
    position: absolute;
    top: 10vw; /* поднял выше */
    left: 16.56vw; /* 318px / 1920px * 100vw - как в Figma */
    max-width: 40.57vw; /* 779px / 1920px * 100vw */
    text-align: left;
}

/* Заголовок блога */
.blog-main-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 5vw; /* увеличил размер */
    line-height: 1.219;
    color: #FFFFFF;
    margin-bottom: 2.6vw; /* 50px / 1920px * 100vw */
    text-align: left;
}

.blog-main-title .title-line {
    display: block;
}

/* Подзаголовок блога */
.blog-main-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.8vw; /* увеличил размер */
    line-height: 1.25;
    color: #FFFFFF;
    text-align: left;
    width: 45vw; /* 779px / 1920px * 100vw */
}

/* Адаптивность для блога */
@media (max-width: 1440px) {
    .blog-main-title {
        font-size: 5.5vw; /* увеличил размер */
    }
    
    .blog-main-subtitle {
        font-size: 2vw; /* увеличил размер */
    }
    
    .blog-main-content {
        top: 10vw; /* поднял выше */
        left: 16.56vw; /* оставляем левое выравнивание */
        max-width: 50vw;
    }
}

@media (max-width: 1024px) {
    .blog-main-title {
        font-size: 6vw; /* увеличил размер */
        margin-bottom: 2.93vw;
        text-align: center; /* центрируем с планшета */
    }
    
    .blog-main-subtitle {
        font-size: 2.2vw; /* увеличил размер */
        text-align: center; /* центрируем с планшета */
    }
    
    .blog-main-content {
        top: 12vw; /* поднял выше */
        left: 50%;
        transform: translateX(-50%);
        max-width: 90vw;
        text-align: center; /* центрируем с планшета */
    }
    
    .blog-decorative-line-1,
    .blog-decorative-line-2 {
        display: none;
    }
}

@media (max-width: 768px) {
    .blog-main-title {
        font-size: 7vw; /* увеличил размер */
        margin-bottom: 2.6vw;
    }
    
    .blog-main-subtitle {
        font-size: 2.5vw; /* увеличил размер */
    }
    
    .blog-main-content {
        top: 15vw; /* поднял выше */
        left: 50%;
        transform: translateX(-50%);
        max-width: 95vw;
    }
}

@media (max-width: 480px) {
    .blog-main-title {
        font-size: 16vw; /* увеличил размер */
        margin-bottom: 3.13vw;
    }
    
    .blog-main-subtitle {
        font-size: 5vw; /* увеличил размер */
        padding-top: 0;
        max-width: 100vw;
    }
    
    .blog-main-content {
        top: -15vw; /* поднял выше */
        left: 50%;
        transform: translateX(-50%);
        max-width: 95vw;
    }
    .blog-hero-section {
        min-height: 50vh; /* Высота согласно Figma */
    }
}

/* ===== БЛОК НОВОСТЕЙ ===== */
.news-section {
    background-color: #FFFFFF;
    padding: 5.21vw 0; /* 100px / 1920px * 100vw */
}

.news-container {
    max-width: 120rem; /* 1920px */
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
}

.news-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.04vw; /* 20px / 1920px * 100vw */
    margin-bottom: 1.56vw; /* 30px / 1920px * 100vw */
}

.news-card {
    background-color: #FFFFFF;
    border-radius: 1.56vw; /* 30px / 1920px * 100vw */
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 29.38vw; /* 564px / 1920px * 100vw */
}

.news-image {
    height: 13.02vw; /* 250px / 1920px * 100vw */
    overflow: hidden;
}

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

.news-content {
    padding: 1.56vw; /* 30px / 1920px * 100vw */
    display: flex;
    flex-direction: column;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    flex: 1;
}

.news-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25em;
    color: #94A64B;
    margin: 0;
}

.news-title a {
    color: #94A64B;
    text-decoration: none;
}

.news-title a:hover {
    color: #94A64B;
    text-decoration: none;
}

.news-description {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33em;
    color: #686868;
    margin: 0;
    flex: 1;
}

.news-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.63vw; /* 12px / 1920px * 100vw */
}

.news-date {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33em;
    color: #686868;
    width: 6.67vw; /* 128px / 1920px * 100vw */
}

.news-arrow {
    width: 2.29vw; /* 44px / 1920px * 100vw */
    height: 2.29vw; /* 44px / 1920px * 100vw */
    background-color: #94A64B;
    border: none;
    border-radius: 0.52vw; /* 10px / 1920px * 100vw */
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.news-arrow:hover {
    background-color: #7a8a3e;
}

.news-arrow img {
    width: 0.59vw; /* 11.33px / 1920px * 100vw */
    height: 0.92vw; /* 17.58px / 1920px * 100vw */
    filter: brightness(0) invert(1);
}

.news-pagination {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
}

.load-more-btn {
    width: 13.02vw; /* 250px / 1920px * 100vw */
    height: 3.33vw; /* 64px / 1920px * 100vw */
    border: 0.1vw solid #94A64B; /* 2px / 1920px * 100vw */
    background-color: transparent;
    border-radius: 0.78vw; /* 15px / 1920px * 100vw */
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33em;
    color: #94A64B;
    cursor: pointer;
    transition: all 0.3s ease;
}

.load-more-btn:hover {
    background-color: #94A64B;
    color: #FFFFFF;
}

.pagination-controls {
    display: flex;
    align-items: center;
    gap: 0.52vw; /* 10px / 1920px * 100vw */
}

.pagination-btn {
    width: 2.5vw; /* 48px / 1920px * 100vw */
    height: 2.5vw; /* 48px / 1920px * 100vw */
    border: none;
    border-radius: 0.52vw; /* 10px / 1920px * 100vw */
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33em;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.pagination-btn.active {
    background-color: #EFEEE9;
    color: #004170;
}

.pagination-btn:not(.active):not(.arrow-btn) {
    background-color: transparent;
    border: 0.052vw solid #EFEEE9; /* 1px / 1920px * 100vw */
    color: #686868;
}

.arrow-btn {
    background-color: #FFFFFF;
    border: 0.052vw solid #94A64B; /* 1px / 1920px * 100vw */
}

.arrow-btn img {
    width: 0.39vw; /* 7.55px / 1920px * 100vw */
    height: 0.61vw; /* 11.72px / 1920px * 100vw */
    filter: brightness(0) saturate(100%) invert(27%) sepia(51%) saturate(2878%) hue-rotate(194deg) brightness(89%) contrast(97%);
}

/* Мобильные стили для блока новостей */
@media (max-width: 768px) {
    .news-section {
        padding: 2rem 0;
    }
    
    .news-container {
        padding: 0 1rem;
    }
    
    .news-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
        margin-bottom: 2rem;
    }
    
    .news-card {
        border-radius: 1rem;
        height: auto;
    }
    
    .news-image {
        height: 12rem;
    }
    
    .news-content {
        padding: 1rem;
        gap: 1rem;
    }
    
    .news-title {
        font-size: 1.25rem;
    }
    
    .news-description {
        font-size: 1rem;
    }
    
    .news-footer {
        gap: 0.5rem;
    }
    
    .news-date {
        font-size: 1rem;
        width: auto;
    }
    
    .news-arrow {
        width: 2.5rem;
        height: 2.5rem;
        border-radius: 0.5rem;
    }
    
    .news-arrow img {
        width: 0.75rem;
        height: 1rem;
    }
    
    .news-pagination {
        gap: 1.5rem;
    }
    
    .load-more-btn {
        width: 12rem;
        height: 3rem;
        border: 2px solid #94A64B;
        border-radius: 0.75rem;
        font-size: 1rem;
    }
    
    .pagination-controls {
        gap: 0.5rem;
    }
    
    .pagination-btn {
        width: 2.5rem;
        height: 2.5rem;
        border-radius: 0.5rem;
        font-size: 1rem;
    }
    
    .pagination-btn:not(.active):not(.arrow-btn) {
        border: 1px solid #EFEEE9;
    }
    
    .arrow-btn {
        border: 1px solid #94A64B;
    }
    
    .arrow-btn img {
        width: 0.5rem;
        height: 0.75rem;
    }
}

/* ===== СТИЛИ ДЛЯ СТРАНИЦЫ СТАТЬИ ===== */

/* Hero секция для статьи */
.article-hero-section {
    background-image: 
        linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
        url('./assets/images/article-hero-background-1b0fac.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 55vh; /* 598px / 1920px * 100vh */
}

/* Логотип для статьи */
.article-logo {
    background-color: #94A64B;
}

/* Навигация для статьи */
.article-navigation .menu-item.active {
    color: #94A64B;
}

/* Мобильная шапка для статьи */
.article-mobile-header {
    background: transparent;
}

/* Декоративные линии для статьи */
.article-decorative-line-1 {
    position: absolute;
    top: 4.8vw; /* 99px / 1920px * 100vw */
    left: 0;
    width: 15.625vw; /* 300px / 1920px * 100vw */
    height: 0.052vw; /* 1px / 1920px * 100vw */
    background: rgba(255, 255, 255, 0.5);
}

.article-decorative-line-2 {
    position: absolute;
    top: 4.8vw; /* 99px / 1920px * 100vw */
    right: 0;
    width: 75.208vw; /* 1444px / 1920px * 100vw */
    height: 0.052vw; /* 1px / 1920px * 100vw */
    background: rgba(255, 255, 255, 0.5);
}

/* Основной контент для статьи */
.article-main-content {
    position: absolute;
    top: 13.02vw; /* 250px / 1920px * 100vw */
    left: 16.56vw; /* 318px / 1920px * 100vw */
    width: 65vw; /* 1285px / 1920px * 100vw */
}

/* Заголовок статьи */
.article-main-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 3.96vw; /* 76px / 1920px * 100vw */
    line-height: 1.219;
    color: #FFFFFF;
    text-align: left;
    width: 100%;
}

.article-main-title .title-line {
    display: block;
}

/* Адаптивность для статьи */
@media (max-width: 1440px) {
    .article-main-title {
        font-size: 5.28vw; /* 76px / 1440px * 100vw */
    }
    
    .article-main-content {
        top: 15vw;
        left: 16.56vw;
        max-width: 70vw;
    }
}

@media (max-width: 1024px) {
    .article-hero-section {
        background-size: cover;
        background-position: center top;
    }
    
    .article-main-title {
        font-size: 7.42vw; /* 76px / 1024px * 100vw */
        text-align: center;
    }
    
    .article-main-content {
        top: 20vw;
        left: 50%;
        transform: translateX(-50%);
        max-width: 90vw;
        text-align: center;
    }
    
    .article-decorative-line-1,
    .article-decorative-line-2 {
        display: none;
    }
}

@media (max-width: 768px) {
    .article-hero-section {
        background-size: cover;
        background-position: center top;
        min-height: 50vh;
    }
    
    .article-main-title {
        font-size: 9.9vw; /* 76px / 768px * 100vw */
    }
    
    .article-main-content {
        top: 25vw;
        left: 50%;
        transform: translateX(-50%);
        max-width: 95vw;
    }
}

@media (max-width: 480px) {
    .article-hero-section {
        background-size: cover;
        background-position: center top;
        min-height: 45vh;
    }
    
    .article-main-title {
        font-size: 8vw; /* 76px / 480px * 100vw */
    }
    
    .article-main-content {
        top: -10vw;
        left: 50%;
        transform: translateX(-50%);
        max-width: 95vw;
        width: 100%;
    }
}

/* ===== КОНТЕНТ СТАТЬИ ===== */
.article-content-section {
    background-color: #FFFFFF;
    padding: 2.34vw 0; /* 45px / 1920px * 100vw */
}

.article-content-container {
    max-width: 85vw; /* Увеличил ширину */
    margin: 0 auto;
    padding: 0 7.5vw; /* Уменьшил боковые отступы */
    display: flex;
    flex-direction: column;
    gap: 2.08vw; /* 40px / 1920px * 100vw */
}

.article-meta {
    display: flex;
    align-items: center;
    gap: 2.6vw; /* 50px / 1920px * 100vw */
    padding-top: 4.69vw; /* 90px / 1920px * 100vw */
}

.meta-item {
    display: flex;
    align-items: center;
    gap: 0.52vw; /* 10px / 1920px * 100vw */
}

.meta-label {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33em;
    color: #686868;
}

.meta-value {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33em;
    color: #94A64B;
}

.share-btn {
    width: 1.25vw; /* 24px / 1920px * 100vw */
    height: 1.25vw; /* 24px / 1920px * 100vw */
    background-color: #FFFFFF;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.share-btn img {
    width: 100%;
    height: 100%;
    filter: brightness(0) saturate(100%) invert(41%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%);
}

.article-text {
    display: flex;
    flex-direction: column;
    gap: 1.25vw; /* 24px / 1920px * 100vw */
}

.article-text p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33em;
    color: #686868;
    margin: 0;
}
.article-text h1,
.article-text h2,
.article-text h3,
.article-text h4,
.article-text h5,
.article-text h6 {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    color: #94A64B;
    margin: 1.5em 0 0.5em 0;
}

.article-text h2 {
    font-size: 1.5vw; /* 28px / 1920px * 100vw */
}

.article-text h3 {
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
}

.article-text h4 {
    font-size: 1.1vw; /* 21px / 1920px * 100vw */
}

.article-subsection {
    display: flex;
    flex-direction: column;
    gap: 0.73vw; /* 14px / 1920px * 100vw */
}

.subsection-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.56vw; /* 30px / 1920px * 100vw */
    line-height: 1.22em;
    color: #94A64B;
    margin: 0;
}

.subsection-text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33em;
    color: #686868;
    margin: 0;
}

.article-image {
    width: 100%;
    height: 26.35vw; /* 506px / 1920px * 100vw */
    border-radius: 2.08vw; /* 40px / 1920px * 100vw */
    overflow: hidden;
}

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

/* Мобильные стили для контента статьи */
@media (max-width: 768px) {
    .article-content-section {
        padding: 2rem 0;
    }
    
    .article-content-container {
        max-width: 100%;
        padding: 0 1rem;
        gap: 2rem;
    }
    
    .article-meta {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
        padding-top: 2rem;
    }
    
    .meta-item {
        gap: 0.5rem;
    }
    
    .meta-label,
    .meta-value {
        font-size: 1rem;
    }
    
    .share-btn {
        width: 1.5rem;
        height: 1.5rem;
    }
    
    .article-text {
        gap: 1.5rem;
    }
    
    .article-text p {
        font-size: 1rem;
    }
    
    .article-text h2 {
        font-size: 1.5rem;
    }
    
    .article-text h3 {
        font-size: 1.25rem;
    }
    
    .article-text h4 {
        font-size: 1.1rem;
    }
    
    .article-subsection {
        gap: 1rem;
    }
    
    .subsection-title {
        font-size: 1.5rem;
    }
    
    .subsection-text {
        font-size: 1rem;
    }
    
    .article-image {
        height: 15rem;
        border-radius: 1rem;
    }
}

/* ===== СТИЛИ ДЛЯ СТРАНИЦЫ КОНТАКТОВ ===== */

/* Hero секция для контактов */
.contacts-hero-section {
    background-image: 
        linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
        url('./assets/images/contacts-hero-background-30a9a7.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 55vh; /* Высота согласно Figma */
}

/* Логотип для контактов */
.contacts-logo {
    background-color: #94A64B;
}

/* Навигация для контактов */
.contacts-navigation .menu-item.active {
    color: #94A64B;
}

/* Мобильная шапка для контактов */
.contacts-mobile-header {
    background: transparent;
}

/* Декоративные линии для контактов */
.contacts-decorative-line-1 {
    position: absolute;
    top: 4.8vw; /* 99px / 1920px * 100vw */
    left: 0;
    width: 15.625vw; /* 300px / 1920px * 100vw */
    height: 0.052vw; /* 1px / 1920px * 100vw */
    background: rgba(255, 255, 255, 0.5);
}

.contacts-decorative-line-2 {
    position: absolute;
    top: 4.8vw; /* 99px / 1920px * 100vw */
    right: 0;
    width: 75.208vw; /* 1444px / 1920px * 100vw */
    height: 0.052vw; /* 1px / 1920px * 100vw */
    background: rgba(255, 255, 255, 0.5);
}

/* Основной контент для контактов */
.contacts-main-content {
    position: absolute;
    top: 10vw; /* поднял выше */
    left: 16.56vw; /* 318px / 1920px * 100vw - как в Figma */
    max-width: 40.57vw; /* 779px / 1920px * 100vw */
    text-align: left;
}

/* Заголовок контактов */
.contacts-main-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 5vw; /* увеличил размер */
    line-height: 1.219;
    color: #FFFFFF;
    margin-bottom: 2.6vw; /* 50px / 1920px * 100vw */
    text-align: left;
}

.contacts-main-title .title-line {
    display: block;
}

/* Подзаголовок контактов */
.contacts-main-subtitle {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.6vw; /* увеличил размер */
    line-height: 1.25;
    color: #FFFFFF;
    text-align: left;
    width: 45vw; /* 779px / 1920px * 100vw */
}

/* Адаптивность для контактов */
@media (max-width: 1440px) {
    .contacts-main-title {
        font-size: 5.5vw; /* увеличил размер */
    }
    
    .contacts-main-subtitle {
        font-size: 2vw; /* увеличил размер */
    }
    
    .contacts-main-content {
        top: 15vw;
        left: 16.56vw; /* оставляем левое выравнивание */
        max-width: 50vw;
    }
}

@media (max-width: 1024px) {
    .contacts-hero-section {
        background-size: cover;
        background-position: center top;
    }
    
    .contacts-main-title {
        font-size: 6vw; /* увеличил размер */
        margin-bottom: 2.93vw;
        text-align: center; /* центрируем с планшета */
    }
    
    .contacts-main-subtitle {
        font-size: 2.2vw; /* увеличил размер */
        text-align: center; /* центрируем с планшета */
    }
    
    .contacts-main-content {
        top: 20vw;
        left: 50%;
        transform: translateX(-50%);
        max-width: 90vw;
        text-align: center; /* центрируем с планшета */
    }
    
    .contacts-decorative-line-1,
    .contacts-decorative-line-2 {
        display: none;
    }
}

@media (max-width: 768px) {
    .contacts-hero-section {
        background-size: cover;
        background-position: center top;
        min-height: 50vh;
    }
    
    .contacts-main-title {
        font-size: 7vw; /* увеличил размер */
        margin-bottom: 2.6vw;
    }
    
    .contacts-main-subtitle {
        font-size: 2.5vw; /* увеличил размер */
    }
    
    .contacts-main-content {
        top: 25vw;
        left: 50%;
        transform: translateX(-50%);
        max-width: 95vw;
    }
}

@media (max-width: 480px) {
    .contacts-hero-section {
        background-size: cover;
        background-position: center top;
        min-height: 45vh;
    }
    
    .contacts-main-title {
        font-size: 16vw; /* увеличил размер */
        margin-bottom: 3.13vw;
    }
    
    .contacts-main-subtitle {
        font-size: 6vw; /* увеличил размер */
        padding-top: 0;
        max-width: 100vw;
        width: 100%;
    }
    
    .contacts-main-content {
        top: -10vw; /* поднял выше */
        left: 50%;
        transform: translateX(-50%);
        max-width: 95vw;
        width: 100%;
    }
}
.contact-info-section {
    background-color: #EFEEE9;
    padding: 4.69vw 0;
}

.contact-info-container {
    max-width: 120rem;
    margin: 0 auto;
    padding: 0 16.56vw;
}

.contact-info-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.92vw;
    line-height: 1.22em;
    color: #004170;
    margin: 0 0 2.08vw 0;
}

.contact-cards {
    display: flex;
    gap: 1.56vw;
    flex-wrap: wrap;
}

.contact-card {
    background-color: #FFFFFF;
    border-radius: 1.56vw;
    padding: 2.08vw 1.56vw 1.04vw;
    width: 16vw;
    height: 16vw;
    display: flex;
    flex-direction: column;
    gap: 1.56vw;
}

.contact-card-header {
    display: flex;
    align-items: center;
    gap: 1.56vw;
}

.contact-icon {
    width: 3.49vw;
    height: 3.49vw;
    background-color: #94A64B;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.contact-icon img {
    width: 1.72vw;
    height: 1.83vw;
    filter: brightness(0) invert(1);
}

.contact-card-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.56vw;
    line-height: 1.22em;
    color: #94A64B;
    margin: 0;
}

.contact-card-text {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.25vw;
    line-height: 1.25em;
    color: #686868;
    margin: 0;
    flex: 1;
}

.contact-phones {
    display: flex;
    flex-direction: column;
    gap: 0.31vw;
}

.contact-phones .phone-item {
    display: flex;
    align-items: center;
    gap: 0.52vw;
}

.contact-phones .flag-icon {
    width: 2.08vw;
    height: 2.08vw;
    display: flex;
    align-items: center;
    justify-content: center;
}

.contact-phones .flag-icon img {
    width: 1.72vw;
    height: 1.2vw;
}

.contact-phones .phone-number {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 1.25vw;
    line-height: 1.25em;
    color: #686868!important;
}

@media (max-width: 768px) {
    .contact-info-section {
        padding: 2rem 0;
    }
    
    .contact-info-container {
        padding: 0 1rem;
    }
    
    .contact-info-title {
        font-size: 2rem;
        margin-bottom: 2rem;
        text-align: center;
    }
    
    .contact-cards {
        flex-direction: column;
        gap: 1rem;
    }
    
    .contact-card {
        width: 100%;
        height: auto;
        padding: 1.5rem 1rem 1rem;
        border-radius: 1rem;
        gap: 1rem;
    }
    
    .contact-card-header {
        gap: 1rem;
    }
    
    .contact-icon {
        width: 3rem;
        height: 3rem;
    }
    
    .contact-icon img {
        width: 1.5rem;
        height: 1.5rem;
    }
    
    .contact-card-title {
        font-size: 1.25rem;
    }
    
    .contact-card-text {
        font-size: 1rem;
    }
    
    .contact-phones {
        gap: 0.5rem;
    }
    
    .contact-phones .phone-item {
        gap: 0.5rem;
    }
    
    .contact-phones .flag-icon {
        width: 2rem;
        height: 2rem;
    }
    
    .contact-phones .flag-icon img {
        width: 1.5rem;
        height: 1rem;
    }
    
    .contact-phones .phone-number {
        font-size: 1rem;
    }
}

/* ===== ЮРИДИЧЕСКИЕ УСЛУГИ БЛОК ===== */
.legal-services-section {
    background-color: #EFEEE9;
    padding: 4.69vw 0; /* 90px / 1920px * 100vw */
    position: relative;
}

.legal-services-container {
    max-width: 120rem; /* 1920px */
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
    position: relative;
    z-index: 2;
}

.legal-services-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 4.17vw; /* 80px / 1920px * 100vw */
}

.legal-services-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.92vw; /* 56px / 1920px * 100vw */
    line-height: 1.22;
    color: #94A64B;
    margin: 0;
}

.legal-services-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    align-items: flex-start;
}

.legal-service-card {
    border-radius: 1.04vw; /* 20px / 1920px * 100vw */
    padding: 1.56vw; /* 30px / 1920px * 100vw */
    flex: 1;
    min-width: 21.25vw; /* 408px / 1920px * 100vw */
    max-width: 21.25vw; /* 408px / 1920px * 100vw */
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}

.legal-service-card .card-header {
    display: flex;
    align-items: flex-start;
    gap: 1.04vw; /* 20px / 1920px * 100vw */
    margin-bottom: 1.04vw; /* 20px / 1920px * 100vw */
}

.legal-service-card .card-icon {
    position: relative;
    flex-shrink: 0;
}

.legal-service-card .icon-circle {
    width: 4.17vw; /* 80px / 1920px * 100vw */
    height: 4.17vw; /* 80px / 1920px * 100vw */
    border: 1px solid #94A64B;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.legal-service-card .icon-circle::before {
    content: '';
    position: absolute;
    width: 3.49vw; /* 67px / 1920px * 100vw */
    height: 3.49vw; /* 67px / 1920px * 100vw */
    background-color: #94A64B;
    border-radius: 50%;
    top: 0.31vw; /* 6px / 1920px * 100vw */
    left: 0.31vw; /* 6px / 1920px * 100vw */
}

.legal-service-card .icon-circle img {
    position: relative;
    z-index: 2;
    width: 2.08vw; /* 40px / 1920px * 100vw */
    height: 2.08vw; /* 40px / 1920px * 100vw */
    object-fit: contain;
    filter: brightness(0) invert(1);
}

.legal-service-card .card-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #004170;
    margin: 0;
    text-align: left;
    flex: 1;
}

.legal-service-card .card-content {
    text-align: left;
}

.legal-service-card .card-content p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #686868;
    margin: 0;
    text-align: left;
}

/* Мобильная версия для юридических услуг */
@media (max-width: 768px) {
    .legal-services-section {
        padding: 2rem 0 6rem 0;
    }
    
    .legal-services-container {
        padding: 0 1rem;
    }
    
    .legal-services-header {
        flex-direction: column;
        align-items: center;
        gap: 1rem;
        margin-bottom: 2rem;
    }
    
    .header-left {
        align-items: center;
        gap: 1rem;
    }
    
    .legal-services-title {
        font-size: 2rem;
        margin-top: 0;
        text-align: center;
    }
    
    .legal-services-cards {
        gap: 1rem;
    }
    
    .legal-service-card {
        min-width: 100%;
        max-width: 100%;
    }
    
    .legal-service-card .card-header {
        gap: 1rem;
        margin-bottom: 1rem;
    }
    
    .legal-service-card .icon-circle {
        width: 4rem;
        height: 4rem;
    }
    
    .legal-service-card .icon-circle::before {
        width: 3.5rem;
        height: 3.5rem;
        top: 0.25rem;
        left: 0.25rem;
    }
    
    .legal-service-card .icon-circle img {
        width: 2rem;
        height: 2rem;
    }
    
    .legal-service-card .card-title {
        font-size: 1.25rem;
    }
    
    .legal-service-card .card-content p {
        font-size: 1rem;
    }
}

/* ===== НАЛОГООБЛОЖЕНИЕ И СТРУКТУРИРОВАНИЕ БЛОК ===== */
.tax-section {
    background-color: #1D1D17;
    padding: 4.69vw 0; /* 90px / 1920px * 100vw */
    position: relative;
}

.tax-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 60vw;
    height: 60vw;
    background-image: url('assets/images/lines.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom right;
    transform: rotate(180deg);
    z-index: 1;
}

.tax-section::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 60vw;
    height: 60vw;
    background-image: url('assets/images/lines.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom right;
    z-index: 1;
}

.tax-container {
    max-width: 120rem; /* 1920px */
    margin: 0 auto;
    padding: 0 16.56vw; /* 318px / 1920px * 100vw */
    position: relative;
    z-index: 2;
}

.tax-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 3.13vw; /* 60px / 1920px * 100vw */
}

.tax-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 2.92vw; /* 56px / 1920px * 100vw */
    line-height: 1.22;
    color: #94A64B;
    margin: 0;
}

.tax-cards {
    display: flex;
    flex-wrap: wrap;
    gap: 0.56vw; /* 30px / 1920px * 100vw */
    align-items: flex-start;
}

.tax-card {
    flex: 1;
    min-width: 32.6vw; /* 627px / 1920px * 100vw */
    max-width: 32.6vw; /* 627px / 1920px * 100vw */
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}

.tax-card .card-header {
    display: flex;
    align-items: flex-start;
    gap: 1.56vw; /* 30px / 1920px * 100vw */
    margin-bottom: 0.56vw; /* 30px / 1920px * 100vw */
}

.tax-card .card-icon {
    flex-shrink: 0;
}

.tax-card .icon-circle {
    width: 4.17vw; /* 80px / 1920px * 100vw */
    height: 4.17vw; /* 80px / 1920px * 100vw */
    background-color: #94A64B;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.tax-card .icon-circle img {
    width: 2.08vw; /* 40px / 1920px * 100vw */
    height: 2.08vw; /* 40px / 1920px * 100vw */
    object-fit: contain;
    filter: brightness(0) invert(1); /* делаем иконку белой */
}

.tax-card .card-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 1.25vw; /* 24px / 1920px * 100vw */
    line-height: 1.25;
    color: #FFFFFF;
    margin: 0;
    text-align: left;
    flex: 1;
}

.tax-card .card-content {
    text-align: left;
    margin-bottom: 25px;
}

.tax-card .card-content p {
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    font-size: 0.94vw; /* 18px / 1920px * 100vw */
    line-height: 1.33;
    color: #EFEEE9;
    margin: 0;
    text-align: left;
}

/* Стили для бейджа в налоговом блоке */
.tax-section .services-badge img {
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(0deg) brightness(100%) contrast(100%);
}

.tax-section .services-badge span {
    color: #EFEEE9;
}

/* Мобильная версия для налогового блока */
@media (max-width: 768px) {
    .tax-section {
        padding: 2rem 0 6rem 0;
    }
    
    .tax-section::before,
    .tax-section::after {
        width: 50vw;
        height: 50vw;
        background-image: url('assets/images/lines2.png');
    }
    
    .tax-container {
        padding: 0 1rem;
    }
    
    .tax-header {
        flex-direction: column;
        align-items: center;
        gap: 1rem;
        margin-bottom: 2rem;
    }
    
    .header-left {
        align-items: center;
        gap: 1rem;
    }
    
    .tax-title {
        font-size: 2rem;
        margin-top: 0;
        text-align: center;
    }
    
    .tax-cards {
        gap: 1rem;
    }
    
    .tax-card {
        min-width: 100%;
        max-width: 100%;
    }
    
    .tax-card .card-header {
        gap: 1rem;
        margin-bottom: 1rem;
    }
    
    .tax-card .icon-circle {
        width: 4rem;
        height: 4rem;
    }
    
    .tax-card .icon-circle img {
        width: 2rem;
        height: 2rem;
    }
    
    .tax-card .card-title {
        font-size: 1.25rem;
    }
    
    .tax-card .card-content p {
        font-size: 1rem;
    }
}
.contact-form .wpcf7 form > p {
    display: flex;
    gap: 1vw;
}
.form-consent
{
    margin-top: 1vw;
    color: white;
}
.form-consent p
{
    display: flex;
}
.form-checkbox p
{
    display: flex;
    margin: 1vw 0;
}
.checkbox-label
{
    margin-top: -1.5vw;
}
fieldset
{
    display: none;
}
sgc-processed
{
    display: none!important;
}
.form-group
{
    margin-bottom: 1vw;
}

@media (max-width: 768px)
{
    .contact-form .wpcf7 form > p
    {
        display: inline-grid;
    }
    .form-consent p
    {
        display: inline;
        margin-top: 5vw;
    }
    .form-group
    {
        margin-bottom: 3vw;
    }
    .checkbox-label
    {
        margin-top: -5.5vw;
    }
    
}

/* ===== СТИЛИ ДЛЯ HERO-СЕКЦИИ СТРАНИЦ ===== */
.page-hero-section {
    background: linear-gradient(270deg, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, 0.8) 99%),
    linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)),
    url('./assets/images/hero-background-3ae4ea.png');
    background-size: cover;
    background-position: center;
    min-height: 50vh;
    position: relative;
    display: flex;
    align-items: center;
}

/* ===== СТИЛИ ДЛЯ ЗАГОЛОВКОВ СТРАНИЦ ===== */
.page-main-content {
    position: absolute;
    left: 16.5vw;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: auto;
}

.page-main-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 64px;
    font-weight: 700;
    line-height: 1.1;
    margin: 0;
    color: white;
}

.page-title-line {
    display: block;
    text-shadow: 0 2px 4px rgba(0,0,0,0.3);
}

@media (max-width: 768px) {
    .page-hero-section {
        min-height: 40vh;
    }
    
    .page-main-content {
        left: 20px;
        right: 20px;
        max-width: none;
        top: 60%;
    }
    
    .page-main-title {
        font-size: 36px;
    }
}

/* Стили для сообщения об ошибках под формой */
.form-error-message {
    color: #721c24;
    padding: 15px;
    background: #f8d7da;
    border: 1px solid #f5c6cb;
    border-radius: 5px;
    margin: 15px 0;
    font-size: 14px;
    line-height: 1.4;
}

.form-error-message p {
    margin: 0;
    font-weight: bold;
}

/* Стили для сообщения благодарности */
.form-success-message {
    color: #155724;
    padding: 20px;
    background: #d4edda;
    border: 1px solid #c3e6cb;
    border-radius: 5px;
    margin: 20px 0;
    text-align: center;
    font-size: 16px;
    line-height: 1.4;
}

.form-success-message h3 {
    margin: 0 0 10px 0;
    color: #155724;
    font-size: 20px;
    font-weight: bold;
}

.form-success-message p {
    margin: 0;
    font-size: 16px;
}

.custom-checkbox,
.sgc-custom-checkbox,
.consent-checkbox .checkmark {
    display: none !important;
}

/* Скрываем стандартные сообщения CF7 */
.wpcf7-validation-errors,
.wpcf7-acceptance-missing,
.wpcf7-response-output {
    display: none !important;
}
.screen-reader-response
{
    color:white;
    margin-bottom: 3vh;
}
.screen-reader-response ul
{
    display: none;
}
.wpcf7-not-valid-tip
{
    display: none;
}

/* Убираем подчёркивание у телефонов и ссылок на мобилке */
a[href^="tel:"],
.phone-number,
.contact-phones a,
.header-phone a,
.footer a[href^="tel:"] {
    text-decoration: none !important;
}

/* Убираем автоматическое форматирование телефонов Safari на iOS */
a[href^="tel:"]:hover,
a[href^="tel:"]:focus,
a[href^="tel:"]:active {
    text-decoration: none !important;
}

/* Отключаем стандартное подчёркивание всех ссылок на мобилке */
@media (max-width: 768px) {
    a {
        -webkit-tap-highlight-color: transparent;
    }
    
    a[href^="tel:"] {
        text-decoration: none !important;
        border: none !important;
        outline: none !important;
    }
}

/* Убираем подчёркивание в мобильном меню */
.mobile-menu-overlay a,
.mobile-menu-content a,
.mobile-menu-phones a,
.mobile-menu-phone-number,
.mobile-menu-contacts a,
.mobile-menu-nav a {
    text-decoration: none !important;
}

.mobile-menu-overlay a[href^="tel:"] {
    text-decoration: none !important;
    color:white
}

/* Социальные ссылки в мобильном меню */
.mobile-menu-contacts .social-link,
.mobile-menu-overlay .social-link {
    text-decoration: none !important;
}

/* Исправляем наезжание текста на номер при маленькой высоте для blog и contacts */
@media (max-height: 800px) {
    .blog-hero-section .hero-content,
    .contacts-hero-section .hero-content {
        margin-top: 6vh !important;
    }
}

@media (max-height: 700px) {
    .blog-hero-section .hero-content,
    .contacts-hero-section .hero-content {
        margin-top: 8vh !important;
    }
    
    .blog-hero-section .hero-title,
    .contacts-hero-section .hero-title {
        font-size: clamp(24px, 7vw, 48px) !important;
        line-height: 1.1 !important;
    }
    
    .blog-hero-section .hero-subtitle,
    .contacts-hero-section .hero-subtitle {
        font-size: clamp(14px, 3.2vw, 20px) !important;
    }
}

@media (max-height: 620px) {
    .blog-hero-section .hero-content,
    .contacts-hero-section .hero-content {
        margin-top: 11vh !important;
    }
    
    .blog-hero-section .hero-title,
    .contacts-hero-section .hero-title {
        font-size: clamp(22px, 6.5vw, 42px) !important;
    }
    
    .blog-hero-section .hero-subtitle,
    .contacts-hero-section .hero-subtitle {
        font-size: clamp(13px, 3vw, 18px) !important;
    }
}

@media (max-height: 550px) {
    .blog-hero-section .hero-content,
    .contacts-hero-section .hero-content {
        margin-top: 13vh !important;
    }
    
    .blog-hero-section .hero-title,
    .contacts-hero-section .hero-title {
        font-size: clamp(20px, 6vw, 38px) !important;
    }
}