* { margin: 0; padding: 0; box-sizing: border-box; }

        :root {
            --brown: #3D2B1F;
            /* Цвет для мобильного меню: чуть темнее бежевого с прозрачностью */
            --glass-menu: rgba(245, 240, 230, 0.8); 
            --speed: 0.5s;
            --ease: cubic-bezier(0.85, 0, 0.15, 1);
        }

        body {
            font-family: 'Montserrat', sans-serif;
            color: var(--brown);
            /* Добавил градиент на фон, чтобы ты увидел эффект стекла */
            min-height: 200vh;
        }

        header {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            padding: 30px 4%;
            display: flex;
            justify-content: space-between;
            align-items: center;
            z-index: 1000;
        }

        .logo-box  img{
            width: 80px;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
        }

        .nav-links {
            display: flex;
            list-style: none;
            gap: 50px;
        }

        .nav-links li a {
            text-decoration: none;
            color: var(--brown);
            font-size: 13px;
            font-weight: 500;
            text-transform: uppercase;
            letter-spacing: 2px;
            position: relative;
            transition: all 0.3s ease;
        }

        .nav-links li a:hover {
            letter-spacing: 4px;
        }

        .nav-links li a::after {
            content: '';
            position: absolute;
            bottom: -2px;
            left: 0;
            width: 100%;
            height: 1px;
            background-color: var(--brown);
            transform: scaleX(0);
            transform-origin: right;
            transition: transform 0.4s var(--ease);
        }

        .nav-links li a:hover::after {
            transform: scaleX(1);
            transform-origin: left;
        }

        /* === БУРГЕР === */
        .burger {
            display: none;
            cursor: pointer;
            z-index: 1100;
        }

        .burger div {
            width: 25px;
            height: 1px;
            background-color: var(--brown);
            margin: 8px 0;
            transition: var(--speed) var(--ease);
        }
        /* Контейнер для переключателей */
.lang-switcher {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: 10px; /* Отступ от пункта Контакты */
}

.lang-btn {
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s ease;
    color: var(--brown);
    opacity: 0.6;
    letter-spacing: 1px;
}

/* Разделительная линия */
.lang-divider {
    color: var(--brown);
    opacity: 0.3;
    font-weight: 300;
}

/* Эффект наведения */
.lang-btn:hover {
    opacity: 1;
    text-shadow: 0 0 1px var(--brown);
}

/* Активный язык */
.lang-btn.active {
    opacity: 1;
    font-weight: 700;
    border-bottom: 1px solid var(--brown);
}

/* Стили для мобильного меню */
@media (max-width: 768px) {
    .lang-switcher {
        margin-left: 0;
        margin-top: 20px;
        gap: 15px;
    }
    .lang-btn {
        font-size: 20px;
    }
}
        /* === МОБИЛЬНОЕ МЕНЮ (ЭФФЕКТ СТЕКЛА) === */
        @media (max-width: 768px) {
            .burger { display: block; }

            .nav-links {
                position: fixed;
                top: 0;
                left: 0;
                width: 100%;
                height: 100vh;
                
                /* САМОЕ ВАЖНОЕ: Прозрачность + Размытие */
                background-color: var(--glass-menu);
                backdrop-filter: blur(15px); 
                -webkit-backdrop-filter: blur(15px); /* Для Сафари */
                
                flex-direction: column;
                justify-content: center;
                align-items: center;
                gap: 40px;
                
                /* Появление сверху с эффектом Fade */
                opacity: 0;
                visibility: hidden;
                transform: translateY(-20px);
                transition: all 0.6s var(--ease);
            }

            .nav-links.active {
                opacity: 1;
                visibility: visible;
                transform: translateY(0);
            }

            .nav-links li a {
                font-size: 28px;
                font-weight: 700; /* Жирный текст для четкости */
                letter-spacing: 5px;
                /* Тень для текста, чтобы он "отрывался" от размытого фона */
                text-shadow: 0 4px 10px rgba(0,0,0,0.05); 
            }

            /* Анимация бургера */
            .open .line1 { transform: translateY(9px) rotate(45deg); }
            .open .line2 { opacity: 0; }
            .open .line3 { transform: translateY(-9px) rotate(-45deg); }
        }
.hero{
    height: 806px;
    background-image: url('../img/fonehero.png');
    background-position: center;
    background-size: cover;
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-left: 80px;
}
.hero h1{
    font-size: 130px;
    font-family: Great Vibes;
    line-height: 0.9;
    font-weight: 500;
}
.hero span{
    font-size: 30px;
    text-transform: uppercase;
    font-weight: 300;
    margin-bottom: 30px;
}
.hero p{
    font-family: Raleway;
      font-size: 20px;
}
.tex1{
    margin-bottom: 80px;
    width: 600px;
    margin-top: 20px;
}

.tex2{
    width: 700px;
}
.btn {
    display: inline-flex;    /* Позволяет кнопке быть гибкой */
    align-items: center;
    justify-content: center;
    text-align: center;
    
    background-color: #37271d;
    color: white;
    
    /* ВАЖНО: используем padding вместо фиксированной высоты */
    padding: 15px 25px; 
    min-height: 50px;       /* Минимальная высота, если текст в одну строку */
    
    width: auto;            /* Чтобы кнопка не растягивалась зря */
    max-width: 100%;        /* Чтобы не выходила за края экрана */
    
    line-height: 1.4;       /* Межстрочный интервал для многострочного текста */
    text-decoration: none;
    border-radius: 10px;
    text-transform: uppercase;
    font-size: 15px;
    transition: 0.3s;
    margin-top: 20px;
}
.btn:hover{
    background-color: #604a3a;
}
.sec2 i{
    font-family: Great Vibes;
    font-size: 90px;
    font-style: normal;
}
.sec2{
    display: flex;
    padding: 150px  100px;
    gap: 50px;

}
.sec2 h2{
    font-size: 40px;
    font-family: Gabriela;
    text-transform: uppercase;
    padding-bottom: 40px;
    margin-top: 40px;
}
.sec2 b{
    color: rgb(144, 113, 64);
}
.sec2 p{
    font-family: Raleway;
    font-weight: 400;
    font-size: 20px;
    padding-bottom: 40px;
}
.sec2 div{
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;    
}


.sec2 img {
    width: 540px;
    height: 650px;
}



/* Общий контейнер для текстовой секции */
.sec3 {
    padding: 100px 80px;
    background-color: #fdfaf7; /* Легкий кремовый фон для разделения блоков */
    display: flex;
    justify-content: center;
}

.container-text {
    max-width: 900px;
    text-align: center;
}

/* Блок с цитатой/акцентом */
.quote-block {
    margin-bottom: 80px;
    position: relative;
}

.accent-letter {
    font-family: 'Great Vibes', cursive;
    font-size: 120px;
    color: rgba(144, 113, 64, 0.2);
    position: absolute;
    top: -60px;
    left: 50%;
    transform: translateX(-50%);
}

.quote-text {
    font-family: 'Raleway', sans-serif;
    font-size: 32px;
    font-weight: 300;
    line-height: 1.4;
    color: var(--brown);
}

/* Сетка с описанием */
.benefits-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    margin-bottom: 80px;
    text-align: left;
}

.benefit-item h3 {
    font-family: 'Gabriela', serif;
    font-size: 24px;
    text-transform: uppercase;
    margin-bottom: 20px;
    color: #907140; /* Золотисто-коричневый как в sec2 */
    border-bottom: 1px solid #d3c7b9;
    display: inline-block;
    padding-bottom: 5px;
}

.benefit-item p {
    font-family: 'Raleway', sans-serif;
    font-size: 18px;
    line-height: 1.8;
    font-weight: 400;
}

/* Блок призыва к действию */
.cta-block {
    border-top: 1px solid #d3c7b9;
    padding-top: 50px;
}

.format-text {
    font-family: 'Raleway', sans-serif;
    font-size: 18px;
    margin-bottom: 30px;
}

.format-text i {
    font-family: 'Great Vibes', cursive;
    font-size: 30px;
    font-style: normal;
    color: #907140;
    margin: 0 5px;
}
/* Для больших кнопок в секциях */
.btn-large {
    padding: 20px 40px;
    font-size: 18px;
    display: flex;         /* На мобильных лучше flex */
    width: fit-content;    /* Ширина по тексту */
    margin: 0 auto;        /* Центрирование */
}
@media (max-width: 768px) {
    .btn-large {
        width: 100%;       /* На мобильных кнопка на всю ширину — так удобнее нажимать */
        padding: 18px 20px;
        font-size: 16px;
    }
}
/* Адаптивность */
@media (max-width: 768px) {
    .sec3 { padding: 60px 20px; }
    .benefits-grid { grid-template-columns: 1fr; gap: 40px; }
    .quote-text { font-size: 24px; }
}
/* Секция 4: Услуги */
.sec4 {
    padding: 100px 80px;
    background-color: #fff;
    text-align: center;
}

.section-title {
    font-family: 'Gabriela', serif;
    font-size: 45px;
    text-transform: uppercase;
    margin-bottom: 60px;
    letter-spacing: 2px;
}

.section-title b { color: #907140; }

.services-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

.service-card {
    padding: 50px 30px;
    border: 1px solid #eee;
    transition: all 0.4s ease;
    background: #fdfaf8;
}

.service-card:hover {
    border-color: #907140;
    box-shadow: 0 20px 40px rgba(144, 113, 64, 0.05);
}

.service-type {
    font-family: 'Montserrat', sans-serif;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: #907140;
}

.service-card h3 {
    font-family: 'Gabriela', serif;
    margin: 20px 0;
    font-size: 24px;
}

.service-card p {
    font-family: 'Raleway', sans-serif;
    line-height: 1.6;
    color: #555;
}
.sec5 {
    padding: 120px 8%; /* Увеличили боковые отступы всей секции */
    background-color: #3D2B1F; 
    color: #fff;
    display: flex;
    justify-content: center;
}

.instrument-box {
    max-width: 1200px; /* Расширили общий контейнер */
    width: 100%;
}

.instrument-info {
    display: flex;
    flex-direction: column; /* Текст теперь идет свободным потоком */
    gap: 60px;
    align-items: center;
    text-align: center;
}

.instrument-content {
    max-width: 900px; /* Ограничиваем ширину текста для удобства чтения */
}

.accent-script {
    font-family: 'Great Vibes', cursive;
    font-size: 85px; /* Сделали чуть крупнее */
    color: #c1a38f;
    display: block;
    margin-bottom: 10px;
}

.instrument-description {
    font-family: 'Raleway', sans-serif;
    font-size: 24px; /* Увеличили кегль */
    font-weight: 300;
    line-height: 1.6;
    letter-spacing: 0.5px;
}

.topics-list {
    width: 100%;
    border-top: 1px solid rgba(193, 163, 147, 0.3);
    padding-top: 50px;
}

.topics-list h4 {
    font-family: 'Gabriela', serif;
    font-size: 22px;
    margin-bottom: 40px;
    color: #c1a38f;
    text-transform: uppercase;
    letter-spacing: 2px;
}

/* Сетка для тем, чтобы они не жались в один столбец */
.topics-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 30px;
    list-style: none;
    padding: 0;
}

.topics-grid li {
    font-family: 'Raleway', sans-serif;
    font-size: 18px;
    position: relative;
    padding: 20px;
    border: 1px solid rgba(193, 163, 147, 0.2); /* Легкая рамка для каждой темы */
    transition: 0.3s;
}

.topics-grid li:hover {
    background: rgba(193, 163, 147, 0.1);
    border-color: #c1a38f;
}

/* Адаптивность для мобилок */
@media (max-width: 768px) {
    .sec5 { padding: 80px 20px; }
    .accent-script { font-size: 60px; }
    .instrument-description { font-size: 20px; }
    .topics-grid { grid-template-columns: 1fr; }
}
.sec-reviews {
    padding: 120px 4%;
    background-color: #fdfaf8;
    overflow: hidden; /* Чтобы лишние отзывы не создавали скролл */
    text-align: center;
}

.section-title {
    font-family: 'Gabriela', serif;
    font-size: 40px;
    margin-bottom: 60px;
    text-transform: uppercase;
}

.section-title b {
    color: #907140;
}

.slider-container {
    max-width: 1150px;
    margin: 0 auto;
    position: relative;
    padding: 10px 0;
}

.slider-track {
    display: flex;
    gap: 30px; /* Расстояние между карточками */
    transition: transform 0.8s cubic-bezier(0.25, 1, 0.5, 1);
    will-change: transform;
}

.review-card {
    min-width: calc(50% - 15px); /* Две карточки на экране */
    background: #fff;
    padding: 50px 40px;
    border: 1px solid rgba(144, 113, 64, 0.1);
    text-align: left;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: 0 15px 40px rgba(61, 43, 31, 0.03);
    opacity: 0.6; /* Неактивные чуть тусклее */
    transform: scale(0.96);
    transition: 0.6s;
}

.review-card.active-focus {
    opacity: 1;
    transform: scale(1);
    border-color: rgba(144, 113, 64, 0.4);
}

.quote-icon {
    font-family: 'Gabriela', serif;
    font-size: 80px;
    color: #907140;
    line-height: 40px;
    margin-bottom: 20px;
    display: block;
}

.review-card p {
    font-family: 'Raleway', sans-serif;
    font-size: 18px;
    line-height: 1.8;
    font-style: italic;
    color: #3D2B1F;
    margin-bottom: 30px;
}

.client-info {
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: #c1a38f;
    border-top: 1px solid #f5f5f5;
    padding-top: 20px;
}

.slider-nav {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 50px;
}

.nav-btn {
    width: 55px;
    height: 55px;
    border-radius: 50%;
    border: 1px solid #907140;
    background: transparent;
    color: #907140;
    font-size: 20px;
    cursor: pointer;
    transition: 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-btn:hover {
    background: #907140;
    color: #fff;
}

/* Адаптация для телефонов */
@media (max-width: 768px) {
    .review-card {
        min-width: 100%; /* Один отзыв на весь экран */
    }
    .section-title {
        font-size: 28px;
    }
}
.sec-contacts {
    min-height: 100vh;
    background-image: linear-gradient(rgba(61, 43, 31, 0.8), rgba(61, 43, 31, 0.8)), url('../img/posledni.jpg');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 80px 4%;
}

.contact-glass-card {
    background: rgba(255, 255, 255, 0.03);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 80px 60px;
    max-width: 800px;
    width: 100%;
    text-align: center;
    border-radius: 4px;
    box-shadow: 0 40px 100px rgba(0,0,0,0.2);
}

.contact-title {
    font-family: 'Gabriela', serif;
    font-size: 60px;
    color: #fff;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.contact-title b {
    color: #c1a38f;
}

.contact-subtitle {
    font-family: 'Raleway', sans-serif;
    font-size: 18px;
    color: #d3c7b9;
    margin-bottom: 20px;
    letter-spacing: 1px;
}

.contact-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    margin-bottom: 60px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    padding: 40px 0;
}

.contact-label {
    display: block;
    font-family: 'Montserrat', sans-serif;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 3px;
    color: #c1a38f;
    margin-bottom: 20px;
}

.social-row {
    display: flex;
    justify-content: center;
    gap: 15px;
}

.social-link, .email-link {
    font-family: 'Raleway', sans-serif;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    transition: 0.3s;
}

.social-link:hover, .email-link:hover {
    color: #c1a38f;
}


.btn-main {
    display: block; /* Изменяем на block для корректной работы ширины */
    background-color: #c1a38f;
    color: #3b3028;
    padding: 20px 0; /* Убираем 50px по бокам */
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    border-radius: 0;
    cursor: pointer;
    transition: 0.4s;
    border: none;
    width: 100%; 
    text-align: center;
    text-decoration: none;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    position: relative; 
}
.btn-main svg{
    position: absolute;
    left: 20px;
}
.btn-main:hover {
    background-color: #fff;
    transform: translateY(-5px);
}

.cta-note {
    margin-top: 15px;
    font-family: 'Raleway', sans-serif;
    font-size: 12px;
    color: rgba(255, 255, 255, 0.4);
}

/* Мобильная версия */
@media (max-width: 768px) {
    .contact-glass-card { padding: 40px 20px; }
    .contact-title { font-size: 40px; }
    .contact-grid { grid-template-columns: 1fr; gap: 30px; }
}
@media (max-width: 1200px){
    .hero h1{
        font-size: 100px;
    }
    .tex2{
        width: 400px;
    }
    .tex1{
        width: 400px;
    }
    .sec2{
        flex-direction: column-reverse;
        align-items: center;
        padding: 70px;
    }
}
@media (max-width: 900px){
    .hero h1{
        font-size: 70px;
    }
    .hero span{
        font-size: 20px;
    }
    .hero p{
        font-size: 17px;
    }
}
@media (max-width: 800px){
    .hero{
        background-position: right 20%;
        justify-content: end;
        padding-bottom: 40px;
        color: white;
    }
    .hero h1{
        text-shadow: 0 2px 6px rgba(0, 0, 0, 0.7);
        color: white;
    }
    .hero p{
                text-shadow: 0 2px 6px rgba(0, 0, 0, 0.7);

    }
}
@media (max-width: 700px){
    .hero{
        background-position: 90% 20%;
    }
    .created{
        flex-direction: column;
        align-items: center;
        gap: 20px;
        padding: 20px 0;

    }
    .cre1{
        width: 280px;
        text-align: center;
    }
}
@media (max-width: 600px){
    .hero{
        background-position: 70% 20%;
    }
    .sec2 img{
        width: 100%;
        height: 100%;
    }
    .sec4{
        padding: 40px;
    }
}
@media (max-width: 500px){
    .tex1{
        width: 100%;
    }
    .tex2{
        width: 100%;
    }
    .hero{
        padding-left: 40px;
        padding-right: 20px;
    }
    .sec2{
        padding: 40px;
    }
}
@media (max-width: 400px){
    .hero h1{
        font-size: 60px;
    }
}
.created{
    background-color: #d7ccc4;
    padding:15px 20px;
    display: flex;
    justify-content: space-between;

}
.created a{
    color: #ff0000;
}
/* Кнопка Наверх */
.back-to-top {
    position: fixed;
    bottom: 35px;
    right: 30px;
    width: 50px;
    height: 50px;
    background-color: var(--glass-menu); /* Используем вашу переменную стекла */
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(61, 43, 31, 0.2);
    color: var(--brown);
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s var(--ease);
    box-shadow: 0 10px 25px rgba(0,0,0,0.05);
}

.back-to-top.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.back-to-top:hover {
    background-color: var(--brown);
    color: #fff;
    transform: translateY(-5px);
}

/* На мобильных устройствах немного уменьшим */
@media (max-width: 768px) {
    .back-to-top {
        bottom: 20px;
        right: 20px;
        width: 45px;
        height: 45px;
    }
}
@media (max-width: 460px){
    .btn-main{
        padding:0 20px 0 50px;
    }
    .btn-main svg{
        left: 10px;
    }

}
