/* Global section */
html{
    /*scrollbar-gutter: stable;*/
}

hr {
  border: 0;
  border-radius: 1px;
  border-top: 1px solid white;
  opacity: 0.3;
}

body {
    font-family: 'Inter', sans-serif;
    background-color: #000006;
    /*width: 70%;*/
    color: #FFFFFF;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    flex-direction: column;
    scrollbar-gutter: stable;
    min-height: 100dvh;
    overflow-x: hidden;
}

body a {
    font-weight: 500;
    text-decoration: none;
    font-size: 25px;
    color: #FFFFFF;
}

body a:hover, a:active {
    color: #CCCCCC;
}

body img {
    border-radius: 15px;
    max-width: 100%;
    max-height: 100%;
}

:root {
    --swiper-navigation-size: 30px !important
}

.mobile_menu {
    display: none;
}

.mobile_footer {
    display: none;
}

.caption {
    font-size: 64px;
    font-weight: 600;
    /*margin-top: 15px;
    margin-bottom: 10px;*/
}

header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background-color: #090911;
  width: 100%;
}

main {
    /*width: 75%;*/
    display: flex;
    flex-direction: column;
    /*margin: 0 auto;*/
    flex-grow: 1 !important;
}

footer {
    background-color: #090911;
    width: 100%;
    margin-top: auto;
    height: 395px
}
/* End global section */

/* Top menu section */
.top_menu {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /*height: 75px;*/
}

.top_menu_left_side {
    margin-left: 50px;
}

.top_menu_logo {
}

.top_menu_right_side {
    display: flex;
    flex-wrap: wrap;
    gap: 50px;
    /*width: 30%;*/
    width: 555px;
    /*justify-content: space-between;*/
    text-align: right;
    /*margin-right: 111px;*/
}

.top_menu_item {
    /*flex: 1;*/
}
/* End top menu section */

/* Footer menu section */


.footer_menu_logo {
    margin-left: 50px;
    margin-top: 35px;
    margin-bottom: 50px;
}

.footer_menu {
    display: flex;
    /*justify-content: space-between;*/
    align-items: center;
    height: 150px;
    gap: 80px;
    margin-left: 60px;
}

.footer_menu_left_side {
    display: flex;
    flex-direction: column;
    /*margin-left: 64px;*/
    height: 150px;
    gap: 20px;
}

.footer_menu_item {
    /*flex: 1;*/
    align-content: center;
}
/* End footer menu section */

@media (max-width: 768px) {
    header {
        background-color: #1D1D1D;
    }

    hr {
        opacity: 0.15;
    }

    .top_menu {
        height: 32px;
        align-items: normal !important;
    }

    .top_menu img {
        height: 32px;
    }

    .top_menu_left_side {
        margin-left: 12px;
    }

    .top_menu_right_side {
        display: none;
    }

    .mobile_menu {
        display: flex;
        position: fixed !important;
        bottom: 0px;
        left: 50%;
        transform: translateX(-50%) translateY(0) !important;
        width: 100%;
        max-width: 400px;
        height: 60px;
        transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out !important;
        opacity: 1 !important;
        z-index: 9999 !important;
        justify-content: space-evenly;
        gap: 15px;
        background-color: #1D1D1D;
    }

    .mobile_menu_item {
        /*flex: 1 !important; /* Все 4 кнопки поделят ширину плашки поровну */
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
    }

    .mobile_menu_item img {
        height: 60px;
        border-radius: 0;
    }

    .mobile_menu.menu-hidden {
        /* translateX(-50%) сохраняем для центрирования, а translateY(150%) уводит плашку вниз */
        transform: translateX(-50%) translateY(150%) !important;
        opacity: 0 !important; /* Дополнительно плавно тушим её */
    }

    .mobile_footer {
        display: flex;
        flex-direction: column;
        background-color: #1D1D1D;
        gap: 10px;
        height: 107px;
        justify-content: center;
    }

    .mobile_footer_title {
        margin-left: 20px;
        font-size: 17px;
    }

    .mobile_footer_items {
        display: flex;
        margin-left: 20px;
        gap: 5px;
    }

    .mobile_footer_item {
        background-color: #001EE0;
        border-radius: 5px;
        width: 25px;
        height: 25px;
        align-items: center;
        justify-content: center;
    }

    footer {
        display: none;
    }

    .footer_menu {
        margin-left: 15px;
        gap: 25px;
    }

    .footer_menu_item a {
        font-size: 18px;
    }
}
