@font-face {
    font-family: 'LoosFontBold';
    src: url('/assets/fonts/LoosFontBold.woff2') format('woff2');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'LoosFontRegular';
    src: url('/assets/fonts/LoosFontRegular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}


* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    border: 0;
    outline: none;
    list-style: none;
    background: none;
    scroll-behavior: smooth;
    object-fit: cover;
}

html,
body {
    margin: 0;
    padding: 0;
    font-family: 'LoosFontRegular', sans-serif;

}

h1,
h2 {
    text-transform: uppercase;
    font-family: 'LoosFontBold', sans-serif;

}

#messageContainer {
    padding: 10px;
    margin-top: 14em;
    display: none;
    font-size: 1.4em;
    display: none;
    text-align: center;
}

#messageContainer p {
    margin-bottom: 1em;
}

#messageContainer button {
    padding: 10px 20px;
    background-color: #ea6c3a;
    color: #fff;
    border: none;
    cursor: pointer;
}

#successMessage {
    color: #3c763d;
    background-color: none;
    border: none;
    text-align: center;
    padding: 20px;
}

.success-message {
    color: #3c763d;
    background-color: none;
    border: none;
}

.mobile-img {
    display: none !important;
}

.mobile-image {
    display: none !important;
}

#sidebarContactForm {
    padding: 6em 2em;
    border: none;
}

#contactForm {
    height: 100%;
}

.desktop-svg {
    display: block;
}

.mobile-svg {
    display: none;
}

.block-image {
    width: 100%;
    height: auto;
    position: absolute;
    left: 0;
    right: 0;
}

/* .font-english,
.font-english * {
    font-family: 'Montserrat', sans-serif;
}

.font-georgian,
.font-georgian * {
    font-family: "BPG Arial", sans-serif;
} */

a {
    text-decoration: none;
}

.lang_title {
    color: rgb(142, 142, 142);
    transition: 0.3s ease-in-out all;
}

.lang_title:hover {
    color: white;
    transition: 0.3s ease-in-out all;
}

.mr10 {
    margin-right: 10px;
}

.mr30 {
    margin-right: 30px;
}

.btn {
    color: white;
    border: 1px solid white;
    padding: 10px 30px;
    cursor: pointer;
    transition: .3s ease-in-out all;
}

.btn:hover {
    background-color: #f75801;
    border: 1px solid #f75801 !important;
    transition: .3s ease-in-out all;
}

/* Стили для бургер-иконки */
.burger-menu {
    display: none;
    cursor: pointer;
    flex-direction: column;
    gap: 0.5rem;
}

.df {
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    height: 100%;
}

.main_grid {
    width: 100%;
    padding: 0 4.1666666667vw;
    margin: 0 auto;
}

.container_grid {
    padding: 4.1666666667vw
}

p.p {
    line-height: 1.2;
}

.flex {
    display: flex;
    align-items: center;
}

.faifs {
    display: flex;
    align-items: flex-start;
}

.aifs {
    align-items: flex-start;
}

.fldc {
    flex-direction: column;
}

.jcsb {
    justify-content: space-between;
}

#about,
#project {
    height: 100vh;
}

h3.h3 {
    font-size: clamp(22px, 1.4791666667vw, 38px);
    font-weight: 500;
    line-height: 150%;
    text-align: left;
    width: 90%;
}

.header_logo {
    width: 120px;
}

.benefits {
    display: flex;
    overflow: hidden;
    cursor: grabbing;
}

.p100 {
    padding: 40px 0px 40px 130px;
}

.reserve-btn {
    padding: 10px 20px;
    background-color: #1c1c1c;
    color: #fff;
    border: none;
    cursor: pointer;
    position: absolute;
    top: 10px;
    right: 10px;
}

.tour-view-btn {
    padding: 10px 20px;
    background-color: #f75801;
    color: #fff;
    border: none;
    cursor: pointer;
    top: 10px;
    position: absolute;
    right: 17%;
}

.benefit_grid {
    display: flex;
    overflow: hidden;
    cursor: grabbing;
}


.orange {
    background-color: #f75801;
    height: 100vh;

}


.baseline {
    align-items: baseline !important;
}

.item_benefit {
    width: 300px;
    height: 280px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.image_benefit {
    width: 95%;
    height: 280px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.benefit_number {
    background: white;
    height: 200px;
    width: 200px;
    color: #1c1c1c;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 64px;
    font-weight: bold;
}

.service_icon {
    background: none !important;
    border: 1px solid #fc6323;
}


hr {
    width: 10%;
    height: 5px;
    background: white;
}

.benefit_number.bno {
    color: #f75801;
}

.white {
    color: white;
}

#benefits {
    background-color: #f75801;
    width: 100%;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    padding: 4.1666666667vw;
}

#services {
    background-color: #1c1c1c;
    width: 100%;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    padding: 4.1666666667vw;
}

#terms {
    background-color: #1c1c1c;
    width: 100%;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    padding: 4.1666666667vw;
}

#closeSidebar2 {
    display: none;
}

.close-sidebar {
    position: absolute;
    top: 10px;
    left: 10px;
}

.blog {
    width: 50%;
    height: 400px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 40px;
    position: relative;
    background-size: cover;
    border: 0.1px solid #fc6323;
    transition: background-color 0.3s;
    /* Добавляем плавный переход для background-color */

}


.blog::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1;
}

.blog:hover::before {
    background-color: rgba(0, 0, 0, 0.2);
    /* При наведении делаем полностью прозрачным */
}

.blog_title,
.read {
    position: relative;
    z-index: 2;
}

.read:hover {
    color: #f75801;
    transition: .3s ease-in-out all;
}

.blog_title {
    font-size: 28px;
    color: white;
    width: 70%;
}

img {
    margin: 0;
    padding: 0;
    display: block;
    border: none;
    vertical-align: middle;
}

.blog_container {
    display: flex;
    flex-wrap: wrap;
}

a.read {
    color: white;
    font-weight: 700;
    margin-top: 40px;
}


.block_img {
    width: 100%;
    min-height: 920px;
    object-fit: cover;
}

.mobile-title {
    display: none;
}

.globe-icon {
    width: 25px;
    height: 25px;
}


header.header {
    background-color: #1c1c1c;
    height: 70px;
    display: flex;
    top: 0;
    position: fixed;
    width: 100%;
    z-index: 23;
}

li.li a {
    color: rgb(142, 142, 142);
    font-weight: 500;
    font-size: 1.1em;
}

#map {
    height: 100%;
    width: 100%;
}

li.li a:hover {
    color: #f75801;
}

li.li a.active {
    color: #f75801;
}

ul.menu li {
    margin-right: .9em;
}

#reserve {
    position: relative;
}

.tour {
    height: 100vh;
}

.center-floor-image {
    position: relative;
}


.main-building {
    width: 100%;
    display: block;
    height: auto;
    object-fit: cover;
}

.floor-svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    pointer-events: none;
    z-index: 1;
    /* Устанавливаем z-index, чтобы SVG был под изображениями блоков */
}

#video {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
}

h1.title {
    font-size: clamp(60px, 4.2916666667vw, 100px);
}

h2.title {
    font-size: clamp(70px, 3.2083333333vw, 100px);
}

#video video {
    width: 100%;
    /* чтобы видео занимало всю ширину блока */
    height: 100vh;
    object-fit: cover;
    /* чтобы сохранять пропорции видео */
    object-position: center;
    /* центрировать видео */
}

#video h1.title,
#video a.btn {
    position: absolute;
    z-index: 10;
    color: #fff;
    left: 50%;
    transform: translateX(-50%);
}

.swiper-slide img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.swiper-wrapper {
    justify-content: space-between;
}

.swiper-container {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.swiper-scrollbar {
    display: none !important;
}

.swiper-slide {
    width: 100%;
}

.benefit_grid .swiper-slide {
    width: 21% !important;
}

.benefits .swiper-slide {
    width: 34% !important;
}

.slide {
    width: 100%;
}

.swiper-slide img {
    width: 100% !important;
}

.swiper-button-next,
.swiper-button-prev {
    width: 30px;
    height: 30px;
}

/* Изменение цвета стрелок */
.swiper-button-next::after,
.swiper-button-prev::after {
    color: white;
}

.swiper-button-next,
.swiper-button-prev,
.swiper-pagination {
    z-index: 10;
}

.swiper-container .swiper-pagination {
    position: absolute;
    bottom: 10% !important;
    top: auto !important;
    left: 0;
    width: 100%;
}

.swiper-pagination-bullet {
    width: 30px !important;
    height: 30px !important;
    border: 5px solid white;
}

/* Изменение цвета пагинации */
.swiper-pagination-bullet-active {
    background-color: #f75801 !important;
}

.services-next,
.services-prev {
    position: absolute;
    top: -40px;
    /* Высота стрелки + небольшой отступ сверху */
    right: 10px;
    /* отступ справа */
    transform: translateY(-50%);
    /* центрирует стрелки по вертикали */
    width: 20px !important;
    height: 20px !important;
}

.services-next::after,
.services-prev::after {
    font-size: 20px !important;
}

.arrow_btn_container {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    margin-top: 40px;
}

.wrapper {
    padding: 4.1666666667vw;
}


.arrow_btn {
    display: flex;
    position: relative;
    align-items: center;
    width: 5%;
    margin-bottom: 2em;
}


.mb20 {
    margin-bottom: 20px;
}

.mb40 {
    margin-bottom: 40px;
}

figure {
    overflow: hidden;
}

figure img {
    max-height: 400px;
    object-fit: cover;
}

.news {
    position: relative;
    background: white;
}

.articles {
    position: relative;
    background: white;
    height: auto;
}

.thx {
    height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    background: #fc6323;
    color: white;
}

.ndh {
    padding: 0 5em;
    font-size: 44px;
    font-weight: 800;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column;
}

li.category_li {
    font-size: 14px;
    margin-bottom: 1em;
    display: flex;
    justify-content: space-between;
    color: #434343;
}

.social_wrapper{
    display: flex;
    align-items: center;
}

.social_wrapper img{
    margin-right: .5em;
    height: 30px;
}

li.category_li a{
    color: #434343;
}

li.category_li a.active{
    color: #ea6c3a;
}

.category_li span {
    color: #ea6c3a;
    font-weight: 900;
}

.topic_title {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 1em;
}

.topic_title_section {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 1em;
    border-bottom: 1px solid rgb(242, 242, 242);
    padding: 0 0 1em 0;
}

.ndh_blogs {
    padding: 0 5em;
    font-size: 44px;
    font-weight: 800;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    margin-top: 1em;
}

.categories_cont ul {
    padding: 0 0 0 0.5em;
}

.nhd_title {
    width: 80%;
    text-align: center;
    margin-top: 1em;
}

.share_container {
    padding: 40px;
    text-align: center;
    background: #1c1c1c;
}

.w100 div {
    line-height: 32px;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: -0.003em;
    font-style: normal;
    word-break: break-word;
    color: #242424;
}

.w100 a {
    color: #ea6c3a;
    font-weight: 500;
}

.w100 h1 {
    text-transform: capitalize;
    font-size: 24px;
}

.social-button {
    color: #ea6c3a;
    margin-right: 20px;
}

figcaption {
    display: none;
}

.mt100 {
    margin-top: 100px;
}

.mt90 {
    margin-top: 50px;
}

.mt40 {
    margin-top: 40px;
}

#video h1.title {
    top: 20%;
    font-size: 84px;
    text-align: center;
}

#video a.btn {
    top: 40%;
    padding: 15px 40px;
    background: #fc642345;
    border: 2px solid #fc6323;
    text-decoration: none;
    margin-top: 40px;
}

#video a.btn:hover {
    top: 40%;
    padding: 15px 40px;
    background: #fc6423;
    border: 2px solid #fc6323;
    text-decoration: none;
    margin-top: 40px;
}



.about {
    background-color: white;
}


.number {
    font-size: 50px;
    font-weight: 700;
}

.p40 {
    padding: 40px;
}

.fs {
    align-items: flex-start !important;
}

.w50 {
    width: 50%;
}

.w70 {
    width: 70%;
    margin: 0 !important;
}

.left {
    width: 50%;
}

.right {
    width: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.h100 {
    height: 100%;
}

.text_block {
    align-items: flex-start;
}

.description {
    padding: 0px 60px 0px 50px;
    font-size: clamp(16px, 1.1vw, 32px);
    line-height: 1.5em;
    text-align: justify;
}


.contact_block {
    display: flex;
    justify-content: space-between;
}

.map_block {
    display: flex;
    justify-content: space-between;
    height: 100%;
}

.contact_container {
    width: 100%;
    height: 100%;
    padding: 4.1666666667vw;
    display: flex;
    flex-direction: column;

}

.white_board {
    border: 1px solid white;
}


/* Базовые стили для элемента path. Например, можно установить базовый цвет или другие свойства. */
.floor-frame {
    fill: transparent;
    /* Цвет заливки по умолчанию */
    transition: fill 0.3s ease;
    /* Плавное изменение цвета при наведении */
    cursor: pointer;
    /* Изменяет курсор на руку при наведении */
}

/* Стили при наведении на элемент path. */
.floor-frame:hover {
    fill: #ea6c3a7b;
    /* Цвет заливки при наведении */
}

.floor-frame.sold-status:hover {
    fill: rgba(255, 0, 0, 0.49);
    /* Желтый цвет при наведении для элементов с status_id=4 */
}

.highlighted {
    fill: #ea6c3a7b;
    /* Тот же цвет, что и для :hover */
}



/* Убедитесь, что SVG область кликабельна. */
.floor-svg {
    pointer-events: none;
}

/* Делает только path элемент в SVG кликабельным. */
.floor-frame {
    pointer-events: auto;
}

/* Для тултипа */
.tooltip__building {
    text-decoration: none;
    /* Убирает подчеркивание у ссылки */
}

.sidebar-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
    /* Убедитесь, что z-index выше, чем у других элементов на странице, но ниже, чем у сайдбаров */
}

.aib {
    align-items: baseline
}

h3.title {
    font-size: 120%;
    text-transform: uppercase;
}

.contact_block {
    flex-direction: column;
    gap: 10px;
}

.no-scroll {
    overflow: hidden;
    height: 100%;
}

.tour-popup {
    position: fixed;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: white;
    z-index: 999999999999;
    border-left: 2px solid #ea6c3a;
    left: 0;
}



/* Стили для сайдбара */
.sidebar {
    position: fixed;
    top: 100px;
    width: 41%;
    height: 85%;
    background-color: white;
    display: none;
    /* начальное состояние: скрыто */
    opacity: 0;
    /* начальное состояние: полностью прозрачно */
    transition: opacity 0.1s;
    /* плавное изменение прозрачности */
    z-index: 15;
    border-left: 2px solid #ea6c3a;
    left: 71%;
    /* центрирование по горизонтали */
    transform: translateX(-50%);
    /* корректировка центрирования */
}

#sidebar {
    z-index: 999999999;
}

#sidebar2 {
    z-index: 999999999;
    left: 30%;
}

.visible {
    display: block;
    opacity: 1;
}

.hidden {
    display: none;
    opacity: 0;
}


.p20 {
    padding: 0px 20px;
    text-align: right;
}


.apartment_container {
    height: 100%;
    min-height: 500px;
    margin-top: 20px;
}

.apartment_container img {
    width: 50%;
    margin: 0 auto;
}


.close-btn {
    padding: 10px 20px;
    background-color: #ea6c3a;
    color: #fff;
    border: none;
    cursor: pointer;
}

img.close_img {
    width: 20px;
    margin-right: 1em;
    cursor: pointer;
}

.close-3d-view {
    position: absolute;
    top: 1%;
    left: 9%;
}

.back-to-sidebar {
    position: absolute;
    top: 1%;
    left: 1%;
}

.apart_title {
    color: #1c1c1c;
    font-size: 44px;
}

.facilities_item_title {
    margin-bottom: 10px;
    color: rgba(255, 255, 255, 0.711);
}

.facilities_item span {
    color: white;
}

.apart_buttons {
    display: flex;
    justify-content: space-evenly;
    color: #1c1c1c;
}

.apartment_container img.apart_img {
    width: 100%;
}

.social-menu {
    display: none;
}

.w50 {
    width: 50%;
}

.center {
    margin: 0 auto;
}

.apart_title {
    color: #1c1c1c;
    font-size: 44px;
    text-align: center;
    margin-bottom: 30px;
}

.apart_btn_items {
    text-align: center;
}

.apart_btn_items_title {
    font-size: 16px;
    margin-bottom: 10px;
    font-weight: 800;
    color: #fc6323;
}

.apart_btn_items_value {
    font-size: 14px;
}

.benefit_title {
    width: 100%;
    font-weight: 600;
    font-size: 1em;
}


.navigation_steps .step_building,
.navigation_steps .step_floor {
    color: grey;
    cursor: pointer;
    transition: color 0.3s;
}

.error-message {
    color: red;
    display: none;
    /* Скрыть сообщения об ошибках по умолчанию */
    font-size: 0.8rem;
    margin-top: 5px;
    padding: .5em;
}


.navigation_steps .active {
    color: #1c1c1c;
    font-weight: bold;
}

.black {
    color: #1c1c1c;
}

.w70 {
    width: 70%;
    margin: 0 auto;
}

.w90 {
    width: 90%;
    margin: 0 auto;
}

.border {
    border: 1px solid #1c1c1c;
}

.full {
    width: 100%;
}

.apart_sidebar_header {
    margin-top: 50px;
}

.navigation_steps {
    text-align: center;
    margin: 50px 0px;
}

.step_building {
    margin-right: 20px;
}

.render-floor-image {
    position: relative;
    overflow: hidden;
    height: 100%;
    /* Укажите необходимую высоту контейнера */
    perspective: 1200px;
}

.render-building {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform-origin: center bottom;
    transition: transform 1.5s, opacity 1s;
    opacity: 0;
}

.render-building.side-view {
    opacity: 1;
    transform: scale(1);
}

.render-building.top-view {
    transform: translateY(100%) scale(1.2);
}

.buttons {
    position: absolute;
    top: 39%;
    right: 6%;
    z-index: 6;
}

.rotate-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgb(28 28 28);
    padding: 10px;
    border: none;
    cursor: pointer;
    z-index: 1000;
    color: white;
    width: 60px;
    height: 60px;
    box-shadow: rgba(37, 37, 37, 0.46) 3px 9px 1px;
    transition: all 0.3s ease-in-out 0s;
    margin-bottom: 20px;
    margin-right: 10px;
    border: 1px solid white;
}

.rotate-btn:hover {
    background-color: #f75801;
    transition: .3s ease-in-out all;
    box-shadow: 3px 2px 1px #25252575;

}

.rotate-btn.active {
    background-color: #f75801;
}


img.icon {
    width: 70%;
}

.tooltipster-punk.tooltipster-sidetip .tooltipster-box {
    background-color: #f75801 !important;
    border: none !important;
}

.tooltipster-punk.tooltipster-sidetip .tooltipster-arrow-background {
    border-color: #f75801 !important;
}

.map {
    margin-top: 40px;
    height: 100%;
    overflow: hidden;
}

form {
    width: 100%;
    margin: 0 auto;
    border: 1px solid #1c1c1c;
    padding: 40px;
}

input {
    border-bottom: 1px solid #1c1c1c;
    height: 100px;
    font-size: 18px;
    width: 100%;
    transition-duration: .25s;
    transition-timing-function: ease-in-out;
}

h3.title {
    font-size: 24px;
}

.submit {
    color: #1c1c1c;
    border: 1px solid #1c1c1c;
    margin-top: 20px;
    padding: 20px 40px;
    transition: .3s ease-in-out all;
}

.submit:hover {
    background-color: #f75801;
    color: white;
    border: 1px solid #f75801;
    transition: .3s ease-in-out all;
}

/*Preloader with counter*/
/* .preloader {
    transition: transform 0.5s ease-out;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #1c1c1c;
    width: 100%;
    height: 100%;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
}

.preloader-content {
    text-align: center;
}

.preloader-text {
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 44px;
    text-transform: uppercase;
    color: white;
}

.progress-bar {
    width: 80%;
    max-width: 300px;
    background-color: #fff;
    border-radius: 5px;
    overflow: hidden;
    height: 20px;
    margin: 0 auto;
}

.progress {
    background-color: #ea6c3a;
    height: 100%;
    width: 0;
}

.preloader-percentage {
    margin-top: 10px;
    color:white;
    font-weight: 600;
} */

#preloader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #1c1c1c;
    z-index: 9999;
    display: flex;
    justify-content: center;
    align-items: center;
}

.animated-logo {
    stroke: #fc6323;
    stroke-width: 1;
    fill: transparent;
}

#preloader svg {
    width: 200px;
    height: 200px;
}

.modal {
    display: none;
    position: fixed;
    z-index: 10;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: #1c1c1c7d;
}

.modal-content {
    position: relative;
    background-color: #fc6323;
    margin: 10% auto;
    padding: 1px;
    width: 100%;
    max-width: 1000px;
}


#muteToggle {
    position: absolute;
    bottom: 4%;
    left: 9%;
    color: white;
    border: none;
    padding: 5px 10px;
    cursor: pointer;
    transition: background-color 0.3s;
}

.i_icon {
    max-width: 75px;
    max-height: 75px;

}

#muteToggle img {
    width: 50%;
}

.right svg {
    position: absolute;
    width: 83%;
    top: 7%;
}

#contacts {
    height: 100vh;
}

#project,
#blog,
#contacts {
    background-color: white;
    /* или другой цвет вашего фона, чтобы при прокрутке поверх #about он полностью закрывал его */
}

#project,
#benefits,
#services,
#gallery,
#terms,
#blog,
#contacts {
    z-index: 10;
    position: relative;
}

.sticky-section {
    position: sticky;
    z-index: 10;
    /* Удостоверьтесь, что секция будет поверх остального содержимого */
    background: white;
    /* Или другой цвет фона, если нужно */
    top: 0;
}

.content-to-scroll {
    position: relative;
    z-index: 5;
    /* Убедитесь, что это значение меньше, чем у sticky-section */
}

#block-buttons {
    display: flex;
    flex-direction: column;
    position: absolute;
    left: 6%;
    /* Расположение слева от основного контейнера */
    top: 47%;
    /* Расположение по середине вертикально */
    transform: translateY(-50%);
}

.block-button {
    width: 40px;
    height: 40px;
    color: white;
    font-weight: 800;
    background-color: #1c1c1c;
    border: 2px solid #f75801;
    border-radius: 50%;
    margin-bottom: 10px;
    text-align: center;
    cursor: pointer;
    transition: background-color 0.3s, color 0.3s;
}

.block-button.active {
    background-color: #f75801;
    /* Оранжевый цвет при активации */
    color: #fff;
    /* Цвет текста при активации */
    border: 2px solid #f75801;
    /* Обводка при активации */
}

.block-button:hover {
    background-color: #f75801;
    /* Оранжевый цвет при наведении */
    color: #fff;
    /* Цвет текста при наведении */
}

button#callButton {
    font-weight: 800;
    position: fixed;
    bottom: 5%;
    right: 2%;
    opacity: 0;
    transition: opacity 0.5s;
    background: #fc6323;
    width: 200px;
    height: 70px;
    z-index: 999;
    border-radius: 10px;
    color: white;
    transition: opacity 0.5s;
    cursor: pointer;
}

#popup {
    font-weight: 800;
    position: fixed;
    bottom: 5%;
    right: 2%;
    transition: opacity 0.5s;
    background: #ffffff;
    width: 50%;
    height: auto;
    z-index: 999;
    border-radius: 10px;
    color: white;
    transition: opacity 0.5s;
}

form#requestCall {
    border: none !important;
}

#validMsg3 {
    color: #0b9200;
    font-size: .8em;
    font-weight: 400;
    margin-top: 3%;
}

#errorMsg3 {
    color: #920016;
    font-size: .8em;
    font-weight: 400;
    margin-top: 3%;
}

.hidden {
    display: none;
}

.unhide {
    display: block;
}

.hide {
    display: none;
}

.iti {
    width: 100% !important;
}

.phone-icon {
    animation: shake 0.5s infinite;
    /* Анимация тряски */
}

i.phone-icon {
    color: white !important;
}

@keyframes shake {
    0% {
        transform: translateX(0);
    }

    25% {
        transform: translateX(-4px) rotate(-4deg);
    }

    50% {
        transform: translateX(4px) rotate(4deg);
    }

    75% {
        transform: translateX(-2px) rotate(-2deg);
    }

    100% {
        transform: translateX(2px) rotate(2deg);
    }
}


/* Анимация появления */
@keyframes fade-up {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* Общий стиль для переключателя */
.switcher {
    display: flex;
    align-items: center;
    position: absolute;
    z-index: 22;
    right: 2.5%;
    top: 50%;
    transform: rotate(90deg);
}

/* Стиль для label */
.switch-label {
    position: relative;
    display: inline-block;
    width: 80px;
    height: 44px;
}

/* Стиль для checkbox */
#view-switch {
    opacity: 0;
    width: 0;
    height: 0;
}

/* Стиль для слайдера */
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #1c1c1c;
    -webkit-transition: .4s;
    transition: .4s;
}

.slider:before {
    position: absolute;
    content: "";
    height: 36px;
    width: 36px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
}

/* Добавление цвета при включении переключателя */
#view-switch:checked+.slider {
    background-color: #ea6c3a;
}

/* Двигаем слайдер вправо при включении переключателя */
#view-switch:checked+.slider:before {
    -webkit-transform: translateX(36px);
    -ms-transform: translateX(36px);
    transform: translateX(36px);
}



/* Стиль для текста переключателя */
.switch-label-text {
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding-left: 10px;
}

.dron-view-label,
.day-view-label {
    color: #666;
    font-size: 14px;
}

/* Стиль для текста при активации переключателя */
#view-switch:checked~.switch-label-text .dron-view-label {
    color: #2196F3;
}

#view-switch:checked~.switch-label-text .day-view-label {
    color: #666;
}

/* Округление краев слайдера */
.slider {
    border-radius: 34px;
}

.slider:before {
    border-radius: 50%;
}

.slider i {
    color: #1c1c1c;
    /* цвет иконки */
}

#view-switch:checked+.slider i {
    display: block;
    /* показать иконку при активном переключателе */
}

.blog_info_item_cont {
    display: flex;
    justify-content: start;
    align-items: center;
}

.blog_info_item_cont .blog_info_item {
    margin-right: 0.5em;
}

.blog_title_info_cont {
    width: 100%;
    padding: .2em 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: solid 1px #F2F2F2;
    border-bottom: solid 1px #F2F2F2;
    position: relative;
    margin: 1em 0;
}

.story_text{
    width: 100%;
}

.blog_info_item {
    display: flex;
    justify-content: start;
    align-items: center;
}

.blog_info_item img {
    margin-right: 0.2em;
    width: 20px;
}

.views {
    font-size: .3em;
    font-weight: 500;
    color: #6B6B6B;
}

.block_content_cont {
    padding: 0 14em;
}

.ndh_title_cont {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.ndh_title_cont .views {
    padding: .5em 0;
    border-top: solid 1px #F2F2F2;
}

.articles_cont {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 1em;
    gap: 10px;
}


.blog_item {
    display: flex;
    border-bottom: solid 1px #F2F2F2;
    padding: 1em 1em 0 0;
    justify-content: space-between;
}

.blog_item:hover .article_title {
    transition: .3s ease-in-out all;
    color: #ea6c3a;
}

.category_view {
    padding: 2px 8px;
    color: #242424;
    background-color: #F2F2F2;
    border-radius: 15px;
}

img.article_item_img {
    width: 100px;
    height: 100px;
    object-fit: cover;
    margin-left: 1em;
}

.article_title {
    font-size: 20px;
    color: #1c1c1c;
    padding: .5em 0;
    font-weight: 900;
}

.article_description {
    font-size: 16px;
    line-height: 32px;
    font-weight: 500;
    letter-spacing: -0.003em;
    font-style: normal;
    word-break: break-word;
    color: #434343;
}

.article_item {
    width: 32%;
}

.more_articles_cont{
    margin-top: 1em;
}

img.blog_cover {
    width: 100%;
    object-fit: cover;
    max-height: 400px;
    margin-top: 1em;
}

.article_item img {
    width: 100%;
    object-fit: cover;
    max-height: 190px;
}

h3.more_articles {
    font-size: 24px;
    padding: 1em 0;
    border-top: solid 1px #F2F2F2;
    border-bottom: solid 1px #F2F2F2;
    width: 100%;
}

.left_blog {
    border-right: solid 1px #F2F2F2;
}

.right_blog {
    width: 35%;
}

hr.hr2 {
    width: 100%;
    height: 1px;
    background-color: #1c1c1c;
}

.dropdown-content {
    position: absolute;
    background-color: rgba(255, 255, 255, 1);
    box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
    z-index: 1;
    top: 0;
    right: 0;
}

#shareIcon {
    position: relative;
}

.dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
}

.dropdown-content a {
    font-size: 14px;
    display: flex;
    color: #6B6B6B;
    align-items: center;
    justify-content: flex-start;
    font-weight: 300;
    transition: .3s ease-in-out;
}

.dropdown-content a:hover {
    transition: .3s ease-in-out;
    color: #ea6c3a;
}

.dropdown-content svg {
    fill: #6B6B6B;
    margin-right: 0.5em;
}

.articles_info_cont {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0.5em 0;
}

.articles_info_cont .blog_info_item {
    margin-right: .5em;
}

.share_text{
    position: relative;
}

.share_icon:hover+.share_text {
    transition: .3s ease-in-out;
    color: #ea6c3a;
}

img.info_icons {
    width: 20px;
}
