﻿html {
    background-color: #0a240979; /* Цвет фона за пределами страницы */
}

body {
    font-family: cursive; /* Задает основной шрифт для текста на странице */
    margin: 0; /* Убирает отступы по краям страницы */
    padding: 0; /* Убирает отступы внутри страницы */
    background-color: #ffffff;
    max-width: 1900px;
    position: relative;
    margin-left: auto; /* Центрируем содержимое */
    margin-right: auto; /* Центрируем содержимое */
}

.container_body {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 0px; /* Добавить внутренние отступы по бокам */
    background-color: #ffffff;
}

.body-text {
    background: radial-gradient(circle at top left, #416767, transparent), radial-gradient(circle at bottom right, #69786d, transparent), linear-gradient(90deg, #000000, #ffffff);
    height: 80px;
    color: white; /* Устанавливает белый цвет текста ссылок */
    display: flex; /* Устанавливает флексбокс для выравнивания текстовой группы */
    align-items: center; /* Центрирует элементы текстовой группы по горизонтали */
    text-align: center; /* Центрирует текст внутри текстовой группы */
    flex-direction: row;
    justify-content: space-between;
    padding-bottom: 0px;
    padding-left: 30px;
    font-size: 28px;
}

.container {
    max-width: 1110px;
    margin-left: auto;
    margin-right: auto;
}

.navbar-container {
    max-width: 1110px;
    max-height: 110px;
    margin-left: auto;
    margin-right: auto;

}

.top-background {
    width: 100%;
    height: 150px;
    background: #dbd8be; /* Градиент или другой фон */
}

.bottom-background {
    width: 100%;
    height: 150px;
    background: #dbd8be; /* Градиент или другой фон */
}

header {
    position: absolute; /* Фиксируем навигацию поверх видео */
    width: 100%;
    top: 0;
    left: 0;
    background-color: #0a0a0a00; /* Устанавливает цвет фона для шапки страницы */
    z-index: 1;
}

.navbar {
    display: flex; /* Устанавливает флексбокс для выравнивания элементов навигации */
    justify-content: space-between; /* Размещает элементы на равном расстоянии друг от друга */
    align-items: center; /* Центрирует элементы по вертикали */
    padding: 0 5px; /* Добавляет отступы слева и справа внутри навигационной панели */
    font-family: 'cursive'; /* Задает шрифт для текста навигации */
    font-size: 20px; /* Устанавливает размер шрифта для текста навигации */
    color: #ffffff; /* Устанавливает белый цвет текста навигации */
    padding: 7px;
    position: relative;
    z-index: 1;
}

.logo-image {
    height: 100%; /* Убедитесь, что изображение не выходит за границы логотипа */
    width: auto;
    max-width: 1110px;
    max-height: 110px;
    border-radius: 50%; /* Делает форму круглой */
    overflow: hidden; /* Обрезает содержимое по форме круга */
    position: relative; /* Для теней и эффектов */
    transition: transform 0.6s ease;
    position: relative;

}
    .logo-image:hover {
        transform: rotate(360deg);
    }

.nav-links {
    list-style-type: none; /* Убирает маркеры списка */
    padding: 0; /* Убирает отступы внутри списка */
    display: flex; /* Устанавливает флексбокс для элементов списка */
    align-items: flex-end; /* Выравнивание элементов по нижнему краю */
    list-style-type: none; /* Убираем маркеры списка */
    padding: 0; /* Убираем внутренние отступы */
    margin: 0; /* Убираем внешние отступы */
    gap: 15px; /* Промежуток между элементами */
}

    .nav-links li {
        margin-left: 5px; /* Добавляет отступ слева между элементами списка */
    }

    .nav-links a, .nav-links button {
        text-decoration: none; /* Убирает подчеркивание у ссылок */
        color:white; /* Устанавливает белый цвет текста ссылок */
        padding: 10px 20px; /* Добавляет внутренние отступы у ссылок и кнопок */
        background-color: #92949200; /* Устанавливает прозрачный фон для ссылок и кнопок */
        border: none; /* Убирает границы у ссылок и кнопок */
        cursor: pointer; /* Устанавливает указатель курсора при наведении на ссылку или кнопку */
    }

    .nav-links input[type="text"] {
        padding: 5px; /* Добавляет внутренние отступы внутри текстового поля */
        margin-right: 10px; /* Добавляет отступ справа от текстового поля */
    }

    .nav-links button {
        padding: 5px 10px; /* Добавляет внутренние отступы у кнопки */
        background-color: #47574700; /* Устанавливает прозрачный фон для кнопки */
        border: none; /* Убирает границы у кнопки */
        border-radius: 4px; /* Добавляет скругление углов у кнопки */
        font-size: 20px; /* Устанавливает размер шрифта для кнопки */
        font-family: 'cursive'; /* Задает шрифт для текста на кнопке */
    }

    .nav-links button,
    .nav-links a,
    .nav-links input {
        display: inline-block; /* Унифицируем поведение всех элементов */
        text-align: center; /* Центрируем текст */
        padding: 5px 10px; /* Внутренние отступы */
        line-height: 1.2; /* Высота строки для элементов с переносом */
    }

.dropdown {
    position: relative; /* Устанавливает относительное позиционирование для выпадающего списка */
}

.dropdown-content {
    display: none; /* Скрывает содержимое выпадающего списка */
    position: absolute; /* Устанавливает абсолютное позиционирование для содержимого выпадающего списка */
    background-color: #374037; /* Устанавливает цвет фона для выпадающего списка */
    min-width: 160px; /* Устанавливает минимальную ширину выпадающего списка */
    box-shadow: 0px 8px 16px 0px rgb(253 252 252 / 32%); /* Добавляет тень к выпадающему списку */
    z-index: 1; /* Устанавливает порядок слоев для выпадающего списка */
}

    .dropdown-content a {
        color: white; /* Устанавливает белый цвет текста ссылок в выпадающем списке */
        padding: 12px 16px; /* Добавляет внутренние отступы у ссылок в выпадающем списке */
        text-decoration: none; /* Убирает подчеркивание у ссылок в выпадающем списке */
        display: block; /* Задает блочное отображение для ссылок в выпадающем списке */
    }

        .dropdown-content a:hover {
            background-color: #80866c; /* Изменяет цвет фона ссылки при наведении */
        }

.dropdown:hover .dropdown-content {
    display: block; /* Показывает выпадающее меню при наведении на родительский элемент */
}

/* Стиль для подменю */

.sub-dropdown {
    display: none;
    position: absolute;
    left: 100%;
    top: 0;
    background-color: #374037;
    box-shadow: 0px 8px 16px 0px rgb(253 252 252 / 32%); /* Добавляет тень к выпадающему списку */
    min-width: 300px;
    font-size: 15px;
}

/* Показ подменю при наведении */
.region-link:hover .sub-dropdown {
    display: block;
}

#content {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); /* Автоматическое заполнение колонок */
    gap: 10px; /* Расстояние между элементами */
    grid-auto-rows: auto; /* Высота строк зависит от содержимого */
    grid-auto-flow: dense; /* Заполняет свободное пространство */
    align-items: start; /* Начало всех элементов сверху */
}

.attraction {

    padding: 3px; /* Добавляет внутренние отступы для элемента достопримечательности */
    margin-bottom: 10px; /* Добавляет нижний отступ между элементами достопримечательности */
    background-color: #fff; /* Устанавливает белый цвет фона для элемента достопримечательности */
    border-radius: 4px; /* Добавляет скругление углов для элемента достопримечательности */
    font-size: 16px; /* Размер шрифта */
    font-family: cursive; /* Шрифт для текста */
}

    .attraction img {
        max-width: 100%; /* Ограничивает максимальную ширину изображения до ширины родительского элемента */
        height: auto; /* Автоматически подгоняет высоту изображения в соответствии с его пропорциями */
        border-radius: 4px; /* Добавляет скругление углов для изображения */
    }

.btn-primary {
    background-color: aliceblue; /* Цвет фона кнопки */
    color: #0a0a0a; /* Цвет текста */
    border: 5px; /* Убирает границу у кнопки */
    padding: 10px 20px; /* Внутренние отступы */
    border-radius: 5px; /* Скругленные углы */
    cursor: pointer; /* Указатель курсора при наведении */
    font-size: 16px; /* Размер шрифта */
    font-family: cursive; /* Шрифт для текста */
    font-weight: bold;
    display: flex; /* Flexbox */
    align-items: center; /* Центрирование по вертикали */
    justify-content: center; /* Центрирование по горизонтали */
    transition: background-color 0.3s, transform 0.2s; /* Плавный переход для эффектов */
    box-shadow: 0 4px 8px rgb(0 0 0 / 53%); /* Тень */
    min-width: 100px; /* Минимальная ширина кнопки */
    margin-top: 125px;
    margin-right: 0; /* Убираем внешние отступы */
}

    .btn-primary:hover {
        background-color: #7dc8c896; /* Цвет фона при наведении */
        transform: scale(1.05); /* Увеличение размера при наведении */
    }

.row-Images-group {
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 0; /* Задает промежуток между элементами */
}

.video-container {
    position: relative;  /*задает относительное позиционирование контейнера, позволяя его потомкам с абсолютным позиционированием быть связанными с этим контейнером */
    max-width: 100%;
    width: 100%;

    margin: 0;
    line-height: 1;
    border: none;
}

#headerVideo {
    width: 100%; /* Видео растягивается на всю ширину контейнера */
    /*height: 100%;*/ /* Видео растягивается на всю высоту контейнера */
    object-fit: cover; /* Масштабирует видео, сохраняя его пропорции, чтобы оно покрывало весь контейнер, возможно, обрезая края */
    display: block; /* Убирает возможные лишние пробелы, которые могли бы возникнуть, если видео вело бы себя как строчный элемент */
    height: auto; /* Автоматически подстраиваем высоту, чтобы сохранить пропорции */
    max-height: 100%; /* Ограничиваем высоту видео размером контейнера */

}

.video-overlay {
    position: absolute; /* Абсолютное позиционирование позволяет разместить текст поверх видео и в пределах контейнера `.video-container` */
    top: 50%; /* Смещает элемент вниз на 50% от высоты контейнера, центрируя его вертикально */
    left: 50%; /* Смещает элемент вправо на 50% от ширины контейнера, центрируя его горизонтально */
    transform: translate(-50%, -50%); /* Сдвигает элемент вверх и влево на 50% его собственной ширины и высоты, окончательно центрируя его относительно контейнера */
    color: #e0e0e0; /* Устанавливает белый цвет текста */
    text-align: center; /* Центрирует текст внутри элемента по горизонтали */
    padding: 20px; /* Добавляет отступы вокруг текста внутри элемента, чтобы он не был прижат к краям */
    pointer-events: none; /* Отключает возможность взаимодействия с элементом, позволяя кликать на элементы под ним, например, на видео */
    font-family: 'cursive'; /* Задает шрифт  */
    font-size: 16px; /* Задает размер шрифта для заголовка */
}

/* Секция под видео */
.content-section {
    display: flex; /* Устанавливает флексбокс для выравнивания элементов секции */
    justify-content: space-around; /* Размещает элементы на равном расстоянии друг от друга */
    align-items: center; /* Центрирует элементы по вертикали */
    margin-top: 20px; /* Добавляет отступ сверху от видео */
}

.text {
    display: flex; /* Устанавливает флексбокс для выравнивания текстовой группы */
    align-items: center; /* Центрирует элементы текстовой группы по горизонтали */
    text-align: center; /* Центрирует текст внутри текстовой группы */
    flex-direction: column;
    justify-content: space-between;
    padding-top: 50px;
    padding-bottom: 50px;
    font-size: 18px;
    color: #2c4a4a; /* Устанавливает цвет текста */
}

.text-group {
    display: flex; /* Устанавливает флексбокс для выравнивания текстовой группы */
    align-items: center; /* Центрирует элементы текстовой группы по горизонтали */
    text-align: center; /* Центрирует текст внутри текстовой группы */
    flex-direction: row;
    justify-content: space-between;
    padding-top: 50px;
    padding-bottom: 0px;
    font-size: 38px;
    color: #2c4a4a; /* Устанавливает цвет текста */
}

    .text-group img {
        height: auto; /* Автоматически подгоняет высоту изображения в соответствии с его пропорциями */
    }

.map-image {
    width: 600px; /* Устанавливает ширину для карты */
}

.place-image {
    width: 600px; /* Устанавливает ширину для изображения места */
    border-radius: 8px; /* Добавляет скругление углов для изображения места */
}

.cat-image {
    width: 230px;
}

.UsersPhotos {
    width: 550px; /* Устанавливает ширину для изображения места */
    border-radius: 0px; /* Добавляет скругление углов для изображения места */
}

.slider-container {
    width: 100%;
    overflow: hidden; /* Скрываем части изображений, которые выходят за границы контейнера */
    position: relative; /* Позиционируем контейнер для кнопок управления */
}

.slider {
    display: flex; /* Используем flexbox для отображения изображений в ряд */
    transition: transform 0.5s ease; /* Плавная анимация при смене изображений */
}

.Slider_UsersPhotos {
    width: 100%; /* Изображение занимает всю ширину контейнера */
    flex: 0 0 100%; /* Каждый элемент flex занимает 100% ширины контейнера */
    object-fit: cover; /* Изображение масштабируется, чтобы заполнить контейнер, сохраняя пропорции */
    height: 27vw !important;
    /* Высота будет составлять 50% от ширины экрана */
}

.frame {
    height: 10px;
    background: #132316;
}

@media (max-width: 768px) {
    body {
        max-width: 100%; /* Используем всю ширину экрана */
        padding: 10px; /* Добавляем небольшой отступ */
    }


    .container_body, .container {
        max-width: 100%; /* Убираем ограничения по ширине */
        padding: 0 15px; /* Добавляем отступы */
    }

    .body-text {
        flex-direction: column; /* Перестраиваем элементы в колонку */
        align-items: flex-start; /* Выравниваем элементы по началу */
        font-size: 20px; /* Уменьшаем размер шрифта */
    }

    #content {
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); /* Уменьшаем минимальную ширину колонок */
        gap: 5px; /* Уменьшаем расстояние между элементами */
    }

    .btn-primary {
        padding: 8px 16px; /* Уменьшаем размер кнопки */
        font-size: 14px; /* Уменьшаем размер шрифта */
        margin-top: 10px; /* Уменьшаем верхний отступ */
    }

    .row-Images-group {
        flex-direction: column; /* Располагаем элементы в колонку */
        gap: 10px; /* Добавляем расстояние между элементами */
    }

    .video-container {
        width: 100%; /* Используем всю ширину экрана */
    }

    .video-overlay {
        display: none;
    }

    .content-section {
        flex-direction: column; /* Перестраиваем элементы в колонку */
        gap: 20px; /* Добавляем промежуток между элементами */
        text-align: center; /* Центрируем текст */
    }

    .text-group {
        flex-direction: column; /* Располагаем текстовые группы в колонку */
        font-size: 24px; /* Уменьшаем размер шрифта */
    }

    .map-image, .place-image {
        width: 100%; /* Масштабируем изображения до ширины экрана */
    }

    .cat-image, .UsersPhotos {
        width: 100%; /* Масштабируем изображения */
    }


    .navbar {
        flex-direction: column; /* Меню располагается вертикально */
        align-items: center; /* Центруем элементы */
        text-align: center; /* Выравниваем текст по центру */
    }

    .nav-links {
        flex-direction: column; /* Элементы навигации располагаются вертикально */
        gap: 10px; /* Увеличиваем промежуток между элементами */
        width: 100%;
    }

        .nav-links li {
            width: 100%; /* Элементы навигации занимают всю ширину */
        }

        .nav-links a,
        .nav-links button {
            text-align: center; /* Выравниваем текст по центру */
            width: 100%; /* Растягиваем элементы на всю ширину */
            padding: 0px;
        }

    .logo-image {
        display: none;
    }
}




