@font-face {
    font-family: "Roboto";
    src: url("/static/fonts/Roboto-Regular.ttf") format("TrueType");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: "Franklin Gothic Bold";
    src: url("/static/fonts/Franklin Gothic Bold.ttf") format("TrueType");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: "Roboto-Bold";
    src: url("/static/fonts/Roboto-Bold.ttf") format("TrueType");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: "Roboto-Italic";
    src: url("/static/fonts/Roboto-Italic.ttf") format("TrueType");
    font-weight: normal;
    font-style: italic;
}

.full-width-stripe {
    font-size: 0.7rem;
    display: flex;
    height: 3rem;
    margin-left: calc(-50vw + 50%); /* Центрирование */
    background-color: black; /* Фиолетовый цвет из примера */
    color: white; /* Цвет текста */
    padding: 1% 1%; /* Отступы сверху/снизу */
    font-family: "Franklin Gothic Bold", sans-serif;
    position: relative;
    border: black;
    align-items: center;
    justify-content: start;
}

.sidebar {
    flex-direction: column;
    font-family: Roboto-Bold, serif;
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    width: 35rem;
    height: 100%;
    background: white;
    box-shadow: -2px 0 5px rgba(0, 0, 0, 0.5);
    z-index: 1000;
    overflow-y: auto;
    transition: transform 0.3s ease-in-out;
}
#list li {
    flex: 1;
    display: flex;
    align-items: center; /* Вертикальное центрирование текста */
    justify-content: center; /* Горизонтальное центрирование */
    padding: 0.05rem 0; /* Отступы для красоты */
}

#list {
    justify-content: space-around;
    flex-direction: column;
    flex: 1;
    display: flex;
    color: white;
    font-size: 1.3rem;
}

#sidebar {
    border-top-left-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
    background: black;
}

.closeBar {
    z-index: 10;
    width: 2.5rem;
    height: 2.5rem;
    background-image: url("/static/pictures/cross.png");
    background-size: cover;
    position: absolute;
    top: 2.5rem;
    right: 1.5rem;
    transform: translateY(-50%);
}

.listButton {
    box-shadow: none;
    outline: none;
    background-image: url("/static/pictures/sideButton.png");
    width: 2rem;
    height: 2rem;
    border-style: none;
    background-size: cover;
    position: absolute;
    right: 1.5rem;
    top: 50%;
    transform: translateY(-50%);
}

.center-cropped {
    position: absolute;
    display: flex;
    z-index: 1;
    background-blend-mode: darken;
    background: linear-gradient(
            rgba(0, 0, 0, 0.7),
            rgba(0, 0, 0, 0.7)
    ), url("/static/pictures/back1.jpg"), center center, no-repeat;
    filter: brightness(30%);
    background-size: cover;
    width: 100%;
    height: 100%;
}

main {
    bottom: 0;
    margin: 0;
    color: black;
    font-family: "Roboto-Bold", sans-serif;
}

footer {
    font-family: "Roboto-Italic", sans-serif;
}

a:link {
    color: white;
    text-decoration: none
}

a:visited {
    color: white;
    text-decoration: none
}

a:hover {
    color: white;
    text-decoration: none
}

a:active {
    color: white;
    text-decoration: none
}

body {
    display: flex;
    flex-direction: column;
}

body, html {
    overflow-x: hidden;
    min-height: 100vh;
    margin: 0;
    padding: 0;
    /*height: 100%;*/
}

footer {
    display: flex;
    background: black;
    color: white;
    position: relative;
    width: 100%;
    height: 6rem;
    padding: 1rem 0;
    box-sizing: border-box;
    bottom: 0;
    align-items: center;
    justify-content: center;
}

#photoText {
    margin-bottom: 2rem; /* Отступ снизу для кнопки */
    text-align: center;
    width: auto; /* Ширина по содержимому */
    position: relative; /* Меняем на relative */
    z-index: 2; /* Убеждаемся, что выше фона */
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: Roboto-Bold, serif;
    font-size: 2rem;
    color: white;
    padding: 20px; /* Защита от краев */
    box-sizing: border-box;
    background: transparent;
}

body {
    display: grid;
    grid-template-rows: auto 1fr auto; /* Размеры шапки, содержимого и подвала */
}

body > * {
    min-height: 0;
    min-width: 0; /* Элементы не уменьшат свои размеры */
}

#inWork {
    background-color: black;
    color: white;
    font-size: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

#contacts {
    /*background-color: black;*/
    color: white;
    font-size: 2rem;
    align-items: center;
    /*justify-content: center;*/
    display: flex;
    flex-direction: column;

}
#contList li{
    margin-bottom: 2rem;

}
#contacts .container{
   min-height: 100vh;
}
#contact-container {
    white-space: nowrap;
    overflow-x: auto;
    z-index: 2;
    font-size: 0.5em;
    flex-direction: column;
    align-items: flex-start; /* Выравнивание по левому краю */
    justify-content: flex-start; /* Контент в начале контейнера */
    text-align: left; /* Текст внутри элементов по левому краю */
    padding: 20px;
    margin-top: 20px; /* Отступ от заголовка */
    background: rgba(0, 0, 0, 0.5); /* Фон для лучшей читаемости */
    border-radius: 10px;
    max-width: 80%; /* Ограничение ширины */

}
.container {
    position: relative;
    height: 100vh;
    width: 100%;
    overflow-x: hidden;
}

#head-contact {
    position: relative; /* Меняем на relative */
    z-index: 2; /* Убеждаемся, что выше фона */
    margin: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    font-family: Roboto-Bold, serif;
    font-size: 1em;
    color: white;
    text-align: center;
    padding: 20px; /* Защита от краев */
    box-sizing: border-box;
    background: transparent;
}
/* Новые стили для страницы контактов */
main#contacts .container {
    display: flex;
    flex-direction: column;
    align-items: center; /* Центрирование общего контента */
    /*padding-top: 20vh; !* Отступ сверху *!*/
}
#footer{
    z-index: 2;
}
#head{
    z-index: 2;
}
main#contacts #head-contact {
    z-index: 2;
    height: auto; /* Автоматическая высота */
    padding: 0;
    position: relative;
    margin-bottom: 20px; /* Отступ снизу */
}
main#contacts .center-cropped{
    background-image: url("/static/pictures/back2.jpg");
}
#photoButton{
    margin-top: 0;
    margin-bottom: 20rem;/* Убираем верхний отступ */
    position: relative; /* Относительное позиционирование */
    top: auto; /* Сброс позиции */
    transform: none; /* Отмена трансформации */
    z-index: 3;
    width: 15rem;
    height: 10rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: Roboto-Bold, serif;
    font-size: 2rem;
    color: black;
    text-align: center;
    padding: 20px; /* Защита от краев */
    box-sizing: border-box;
    background: rgba(255, 255, 255, 0.5);
    border-radius: 15rem;
}
#content-wrapper {
    position: relative;
    z-index: 4;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

main#contacts .center-cropped {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background:
            linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)),
            url("/static/pictures/back2.jpg") center center no-repeat;
    background-size: cover;
    filter: brightness(30%);

}
main#contacts .container {
    position: relative;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding-top: 20vh;
    z-index: 2;
}
#about{
    background-color: black;
    color: white;
    font-size: 1.5rem;
    display: flex;
    align-items: start;
    justify-content: start;
}
#textAbout {
    margin-left: 1rem;
    margin-right: 1rem;
}
#textAbout li {
    padding-bottom: 1rem;
}
