:root {
    --text-padding-sm: 20px;
    --text-padding-md: 60px;
    --text-padding-lg: 120px;
    --text-padding-xl: 220px;

    --pricing-max-width: 930px;

    --dark-background: #242833;
    --grey-background: #474a53;
    --text-secondary-color: #9b9b9b;

    --text-vertical-padding: 50px;
    --text-horizontal-padding: 30px;
    --image-padding: 30px;

    --text-vertical-padding-xs: 30px;
    --text-horizontal-padding-xs: 15px;
    --image-padding-xs: 15px;

    --vertical-padding-100: 100px;
    --vertical-padding-50: 50px;

    --pricing-block-min-height: 400px;

}

.vp_100{
    padding-top: var(--vertical-padding-100);
    padding-bottom: var(--vertical-padding-100);
}

.vp_50{
    padding-top: var(--vertical-padding-50);
    padding-bottom: var(--vertical-padding-50);
}

.pb_100{
    padding-bottom: 100px;
}


body{
    background-color: white;
}
.pointer{
    cursor: pointer;
}
.nl2br{
    white-space: pre-line;
}
.ttu{
    text-transform: uppercase;
}
.fixedBackground {
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.backgroundCover{
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

/* height */
.min_height_300{
    position: relative;
    min-height: 300px;
}
.min_height_400{
    position: relative;
    min-height: 400px;
}

@media (min-width: 768px) {
    .h-md-100 {
        height: 100% !important;
    }
}

.asColor_dark, 
.asbColor_dark,
.asbiColor_dark  {
    background-color: var(--dark-background);
    color: white;
}
.asColor_dark .text-secondary,
.asbColor_dark .text-secondary{
    color: rgba(255,255,255,0.55) !important;
}

.asColor_grey,
.asbColor_grey {
    background-color: var(--grey-background);
    color: white;
}

.asColor_grey .text-secondary,
.asbColor_grey .text-secondary{
    color: rgba(255,255,255,0.6) !important;
}

.as_default .as_image, 
.as_image,
img{
    width: 100%;
}

.as_header,
.asb_header,
.asbi_header{
    margin-bottom: 1em; 
}

.as_header.italic,
.asb_header.italic,
.asbi_header.italic {
    font-style: oblique; 
}

.no-select {
    user-select: none;
    -webkit-user-select: none; /* Для Safari */
    -moz-user-select: none; /* Для Firefox */
    -ms-user-select: none; /* Для IE/Edge */
}

.montserrat-100 {
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 100;
    font-style: normal;
  }


.image-hover-container {
    position: relative;
    overflow: hidden; /* Обрезает увеличенное изображение */
    display: inline-block; /* или block, в зависимости от вашей верстки */
    width: 100%;
}

.hover-zoom {
    transition: transform 0.5s ease;
    transform-origin: center center; /* Увеличение от центра */
}

.hover-zoom:hover {
    transform: scale(1.05); /* Увеличение на 5% */
}



.asb_square_image_link .image-hover-container::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0); /* Изначально прозрачный */
    transition: all 0.5s ease;
    z-index: 3; /* Затемнение поверх изображения */
    pointer-events: none; /* Чтобы не блокировало hover */
}

.asb_square_image_link .hover-zoom {
    display: block;
    width: 100%;
    height: auto;
    position: relative; 
    z-index: 1; /* ниже затемнения */
}

.asb_square_image_link  .image-hover-container:hover::before {
    background: rgba(0, 0, 0, 0.3); 
}



.asb_square_image_link{
    display: flex;
    flex-direction: column;
}

.asb_square_image_link h3{
    font-size: 1.4rem;
    font-family: "Montserrat", sans-serif;
    font-weight: 300;
    font-style: normal;
    min-height: 2.4em;
    display: flex;
    flex-direction: row;
    justify-content: center;
    margin-top: 2em;
}
.h3_content{
      margin-top: auto;
      text-align: center;
      width: 100%;
}

.image-hover-container{
   margin-top: auto;
}

.article_layout h1{
    font-size: 2.1rem;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 200;
    text-transform: uppercase;
    width: 100%;
    text-align: center;
    padding: 0 1rem;
    margin: 1rem auto;
}

.article_layout .PageDescription{
    font-size: 1.6rem;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 300;
    line-height: 1.2em;
    width: 100%;
    text-align: center;
    margin: 1rem auto;
}

.as_grid_links {
    padding: 0 2rem;
}

.as_grid_links .as_description{
    font-size: 1.1rem;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
}

/* as_gallery */
.as_gallery .gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    grid-auto-rows: 420px; /* Фиксированная высота */
    gap: 15px;
}

.as_gallery .grid-horizontal {
    grid-column: span 2;
}

.as_gallery .grid-vertical {
    grid-column: span 1;
}

.as_gallery .gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gallery-item {
    cursor: pointer;
    transition: transform 0.3s ease;
}

.gallery-item:hover {
    transform: scale(1.02);
}


/* as_gallery_line */
.as_gallery_line .gallery-horizontal {
    display: flex;
    overflow-x: auto;
    gap: 15px;
    padding: 15px 0;
    scrollbar-width: thin;
    scrollbar-color: #888 transparent;
    scrollbar-width: none; /* Скрываем скроллбар для Firefox */
    align-items: center;
    height: 280px;
    
    -webkit-overflow-scrolling: touch; /* Плавный скролл на iOS */
    touch-action: pan-y; /* Разрешаем только вертикальные жесты */
    scroll-snap-type: x mandatory; /* Опционально: притягивает к элементам при скролле */
}

/* Скрываем скроллбар для WebKit браузеров */
.as_gallery_line .gallery-horizontal::-webkit-scrollbar {
    display: none;
}

@media (max-width: 768px) {
    .gallery-line-wrapper .scroll-btn {
        display: none !important;
    }
    
    .as_gallery_line .gallery-horizontal {
        -webkit-overflow-scrolling: touch;
        touch-action: pan-y;
        scroll-snap-type: x mandatory;

        height: 180px;
    }
    
    .as_gallery_line .gallery-item {
        scroll-snap-align: start;
    }
}



.as_gallery_line .gallery-horizontal::-webkit-scrollbar-thumb {
    background-color: #888;
    border-radius: 3px;
}
.as_gallery_line .gallery-item {
    flex: 0 0 auto;
    position: relative;
    transition: transform 0.3s ease;
    height: 100%; /* Занимает всю высоту родителя (.gallery-horizontal) */
    width: auto; /* Ширина подстраивается под пропорции изображения */
    scroll-snap-align: start; /* Совместимо с snap-scroll */
    will-change: transform; /* Улучшаем производительность анимаций */
}


.as_gallery_line .gallery-item img {
    height: 100%; /* Фиксированная высота = высоте .gallery-horizontal */
    width: auto; /* Ширина вычисляется автоматически */
    object-fit: contain; /* Изображение не обрезается */
    border-radius: 4px;
    display: block; /* Убирает лишние отступы */
}

.as_gallery_line .gallery-item:hover {
    transform: scale(1.02);
    z-index: 1;
}

/* Индикатор скролла для мобильных: */
@media (max-width: 768px) {
    .gallery-line-wrapper {
        position: relative;
        overflow: hidden;
    }
    
    .gallery-line-wrapper::after {
        content: '';
        position: absolute;
        bottom: 5px;
        left: 50%;
        transform: translateX(-50%); 
        width: 100px;
        height: 4px;
        background: rgba(0,0,0,0.2);
        border-radius: 2px;
    }
    
    .gallery-line-wrapper::before {
        content: '';
        position: absolute;
        bottom: 5px;
        left: 0;
        height: 4px;
        background: rgba(0,0,0,0.5);
        border-radius: 2px;
        width: 0;
        transition: width 0.2s ease;
    }
}


.gallery-line-wrapper{
    position: relative;
}
.gallery-line-wrapper .scroll-btn {
  position: absolute;
  z-index: 2;
  background: rgba(0,0,0,0.5);
  border: none;
  border-radius: 50%;
  color: white;
  cursor: pointer;
  transition: all 0.3s;
  width: 50px;
  height: 50px;
  top: 50%;
  margin-top: -25px;
}

.gallery-line-wrapper .scroll-left {
  left: 10px;
}

.gallery-line-wrapper .scroll-right {
  right: 10px;
}

.gallery-line-wrapper .scroll-btn:hover {
  background: rgba(0,0,0,0.8);
  transform: scale(1.1);
}

.gallery-line-wrapper .scroll-btn {
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.gallery-line-wrapper .scroll-btn[style*="display: block"] {
    opacity: 1;
    pointer-events: all;
}

.gallery-line-wrapper:hover .scroll-btn[style*="display: block"] {
    opacity: 1;
}

@media (max-width: 768px) {
    .gallery-line-wrapper .scroll-btn {
        display: none !important;
    }
}

.gallery-line-wrapper .scroll-btn {
    transition: opacity 0.3s ease, visibility 0.3s ease;
    visibility: visible;
}

.gallery-line-wrapper .scroll-btn[style*="display: none"] {
    opacity: 0;
    visibility: hidden;
    transition-delay: 0.1s;
}

/* ------------------------------------------- */

/* отключение анимации gallery-modal */
/* .gallery-modal {
    transition: none !important;
} */

/* Отключаем анимацию для backdrop */
.modal-backdrop.fade {
    opacity: 0.5 !important;
    /* transition: none !important; */
}

/* Гарантируем, что модальное окно будет поверх всего */
.modal {
    z-index: 1060 !important;
}

:root {
    --top-modal-button-top: 30px;
    --top-modal-button-side: 30px;
}


/* .gallery-modal .btn-link   */
.gallery-modal .btn-link {
    color: white;
    transition: all 0.2s;
    background: rgba(0, 0, 0, 0.3);
    border-radius: 50%;
    border: none;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    /* top: 50%; */
    bottom: 20px;
    /* transform: translateY(-50%); */
    z-index: 10;
}

.gallery-modal .btn-link:hover {
    color: white;
    background: rgba(0, 0, 0, 0.6);
    text-decoration: none;
}

.gallery-modal .btn-link.prev {
    left: 10px;
}

.gallery-modal .btn-link.next {
    right: 10px;
}

@media only screen and (max-width: 767px){
    .gallery-modal .btn-link.prev {
        left: 0;
    }

    .gallery-modal .btn-link.next {
        right: 0;
    }
}


/*  close gallery modal*/

/* Убираем стандартные стили Bootstrap для .btn-close */
.gallery-modal .custom-close.btn-close {
    background-image: none;
    opacity: 1;
}

.gallery-modal .custom-close {
    right: calc(var(--top-modal-button-side) - 24px);
    top: calc(var(--top-modal-button-top) - 24px);
    position: relative;
    z-index: 10;
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
}


 .gallery-modal .custom-close.btn::after { 
    content: "";
    width: 48px;
    height: 48px;
    background: rgba(0, 0, 0, 0.5);
    position: absolute;
    transform-origin: center;
    border-radius: 50%;
    z-index:-1;

    /* top: 0;
    left: 0; */

    top: 50%;
    left: 50%;
    margin-left: -24px;
    margin-top: -24px;
} 

.gallery-modal .custom-close svg {
    width: 48px;
    height: 48px;
    display: block;
    /* margin: auto;  */
    /* margin-top: 2px;
    margin-left: 2px; */
}



/* Кнопка полноэкранного режима */
.gallery-modal .btn-link.fullscreen {
    left: var(--top-modal-button-side);
    top: var(--top-modal-button-top);
    transform: none;
    width: 48px;
    height: 48px;
    background: rgba(0, 0, 0, 0.5);
}


.gallery-modal .btn-link.fullscreen svg {
    width: 24px;
    height: 24px;
}

/* Стили для полноэкранного режима */
.gallery-modal.fullscreen .modal-dialog,
.gallery-modal:fullscreen .modal-dialog {
    width: 100vw;
    height: 100vh;
    margin: 0;
    max-width: none;
}

.gallery-modal.fullscreen .text-content,
.gallery-modal.fullscreen .thumbnails-container,
.gallery-modal:fullscreen .text-content,
.gallery-modal:fullscreen .thumbnails-container {
    display: none !important;
}

.gallery-modal.fullscreen .image-container,
.gallery-modal:fullscreen .image-container {
    padding: 0;
}

.gallery-modal.fullscreen .modal-header,
.gallery-modal:fullscreen .modal-header {
    display: none;
}

.gallery-modal.fullscreen #galleryModalCounter,
.gallery-modal:fullscreen #galleryModalCounter {
    display: none;
}

.gallery-modal.fullscreen .btn-link.fullscreen,
.gallery-modal:fullscreen .btn-link.fullscreen {
    top: 20px;
    left: 20px;
    background: rgba(0, 0, 0, 0.7);
}

.gallery-modal.touch-device .image-container {
    touch-action: pan-y; /* Разрешаем вертикальный скролл */
}

.gallery-modal.touch-device .gallery-modal img {
    user-select: none; /* Предотвращаем выделение изображения при касании */
    -webkit-user-drag: none;
}

.gallery-modal .image-container {
    overflow: hidden; /* Важно для анимации сдвига */
    position: relative; /* Для позиционирования изображений */
    overscroll-behavior-x: contain; /* Предотвращаем скролл страницы */
}

.gallery-modal .image-container img {
    transition: transform 0.3s ease;
    max-height: calc(100vh - 220px);
    max-width: 100%;
    object-fit: contain;
    transition: transform 0.4s cubic-bezier(0.25, 0.1, 0.25, 1); 
    will-change: transform; /* Оптимизация анимации */
}

.gallery-modal .image-container img.swipe-left {
    transform: translateX(-20px);
    opacity: 0.7;
}

.gallery-modal .image-container img.swipe-right {
    transform: translateX(20px);
    opacity: 0.7;
}

/* Для временного изображения при анимации */
.gallery-modal .temp-image{
  position:absolute;
  top:0;left:0;
  width:100%;height:100%;
  object-fit:contain;
  transition:transform .4s ease;
  will-change:transform;
  z-index:3;
}

/* imgElement */
.gallery-modal #galleryModalImage{
    z-index: 2;
}

/* Для модального окна галереи на мобильных */
.gallery-modal.touch-device .image-container {
    touch-action: pan-y; /* Разрешаем только вертикальный скролл */
    -webkit-overflow-scrolling: touch; /* Плавный скролл на iOS */
}

.gallery-modal.touch-device img {
    -webkit-user-drag: none; /* Предотвращаем перетаскивание */
    user-select: none; /* Предотвращаем выделение */
}

/* Улучшаем отзывчивость кнопок на мобильных */
.gallery-modal .btn-link {
    width: 44px;
    height: 44px;
    min-width: 44px; /* Для доступности */
    min-height: 44px; /* Для доступности */
}

@media (max-width: 768px) {
    .gallery-modal .btn-link.prev {
        left: 5px;
    }
    
    .gallery-modal .btn-link.next {
        right: 5px;
    }
    
    .gallery-modal .custom-close {
        right: -20px;
        top: -20px;
    }
    .gallery-modal .btn-link.fullscreen {
        left: 5px;
        top: 5px;
    }
}



/* --------------------------------- */
/* emoxy */
.gallery-grid-emoxy {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    grid-auto-rows: 260px; /* Фиксированная высота */
    gap: 10px;
}

.gallery-grid-emoxy .gallery-item {
    cursor: pointer;
    transition: transform 0.3s ease;
    overflow: hidden; /* Обрезаем содержимое, выходящее за границы */
    position: relative; /* Для позиционирования внутренних элементов */
}

.gallery-grid-emoxy .gallery-item:hover {
    transform: scale(1.02);
}

/* Стили для горизонтальных видео */
.gallery-grid-emoxy .gallery-item.grid-horizontal video {
    width: auto;
    height: 100%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    object-fit: cover;
}

/* Стили для квадратных видео */
.gallery-grid-emoxy .gallery-item.grid-square video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

/* Стили для вертикальных видео */
.gallery-grid-emoxy .gallery-item.grid-vertical video {
    width: 100%;
    height: auto;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    object-fit: cover;
}

/* ------------------------------ */

/* .as_text_section{
     margin-top: 3rem;
    margin-bottom: 3rem; 
} */
.as_text_section {
    padding: var(--text-vertical-padding) var(--text-horizontal-padding);
}
@media only screen and (max-width: 575px){
    .as_text_section{
        padding: var(--text-vertical-padding-xs) var(--text-horizontal-padding-xs);
    }
}

/*  text size  */
.as_text_section .as_text,
.as_side_image .as_text,
.as_side_uncropped_image .as_text,
.as_side_video .as_text,
.as_block_image_block .text_side  .asb_text,
.asb_side_uncropped_image .asb_text,
.block_text_section .asb_text,
.item_text_section .asbi_text,
.as_faq .as_text{
    font-size: 1.2rem;
    font-weight: 300;
}

.as_faq  .as_header,
.as_text_section .as_header,
.as_side_image .as_header,
.as_side_uncropped_image .as_header,
.as_side_video .as_header,
.asb_side_uncropped_image .text_side  .asb_header,
.as_block_image_block .text_side  .asb_header,
.block_text_section .asb_header,
.item_text_section .asbi_header{
     font-family: "Montserrat", sans-serif;
     font-weight: 300;
}

.as_text_section .as_description, 
.asb_side_uncropped_image .asb_description, 
.as_text_section .as_conclusion, 
.as_side_image .as_description {
     font-family: "Montserrat", sans-serif;
     font-weight: 300;
     font-size: 1.4rem;
     letter-spacing: 1px;
}

.btn.btn-secondary{
    border-radius: 0;
}

.btn-booking {
    background-color: #333; /* Темная кнопка */
    color: white !important;
    border: none;
    padding: 12px 30px;
    font-weight: 500;
    letter-spacing: 1px;
    transition: all 0.3s;
    border-radius: 0;
    font-family: "Montserrat", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    text-transform: uppercase;
    /* margin-bottom: 30px;  */
  
}

.btn-booking:hover {
    background-color: #212529; 
    color: white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.btn-booking:active {
    background-color: white; 
    color: black !important;
    border: 1px solid black;
    box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.4);
    transform: translateY(1px); /
}

.asbColor_dark .btn-booking,
.asColor_dark .btn-booking {
    background-color: white !important; 
    color:  #333 !important; 
    font-weight: 500;
}

.as_side_image img{
    width: 100%;
}



.as_side_image .text_side,
.as_side_video .text_side {
    padding: var(--text-vertical-padding) 30px;
    /* min-height: 400px; */
}



@media only screen and (max-width: 991px){
     .as_side_image .text_side,
     .as_side_video .text_side {
        padding: var(--text-vertical-padding) 50px;
    }
    /* .as_side_image .text_side, 
    .as_side_video .text_side, */
    .as_side_image .image_side {
        min-height: 400px;
    }
}

@media only screen and (max-width: 767px){
    .as_side_image .text_side,
    .as_side_video .text_side  {
        padding: var(--text-vertical-padding) 30px;
    }
    /* .as_side_image .text_side,
    .as_side_video .text_side,  */
    .as_side_image .image_side {
        min-height: 400px;
    }
}
@media only screen and (max-width: 575px){
    .as_side_image .text_side,
    .as_side_video .text_side  {
        padding: var(--text-vertical-padding-xs) var(--text-horizontal-padding-xs);
    }
    /* .as_side_image .text_side, 
    .as_side_video .text_side,  */
    .as_side_image .image_side {
        min-height: 400px;
    }
}



.as_side_uncropped_image .image_side {
    /* min-height: 400px;  */
    padding: var(--text-vertical-padding);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.as_side_uncropped_image .image_side img {
    width: auto;
    max-width: 100%;
    max-height: 100vh;
}

.as_side_uncropped_image .text_side,
.as_side_image .text_side {
    padding: var(--text-vertical-padding) var(--text-horizontal-padding);
    /* min-height: 400px; */
    display: flex;
    flex-direction: column;
    justify-content: center; 
}


@media only screen and (min-width: 992px){
    .as_side_uncropped_image .text_side.left {
        padding: var(--text-vertical-padding) 0 var(--text-vertical-padding) 50px;
    }
    .as_side_uncropped_image .text_side.right {
        padding: var(--text-vertical-padding) 50px var(--text-vertical-padding) 0;
    }
}

@media only screen and (max-width: 991px){
    .as_side_uncropped_image .text_side {
        padding: var(--text-vertical-padding)  30px;
    }
}

@media only screen and (max-width: 767px){
    .as_side_uncropped_image .text_side {
        padding: var(--text-vertical-padding)  30px;
    }
     .as_side_uncropped_image .image_side {
        padding: 30px;
    }
}
@media only screen and (max-width: 575px){
   .as_side_uncropped_image .text_side,
   .as_side_image .text_side {
        padding: var(--text-vertical-padding-xs) var(--text-horizontal-padding-xs);
    }

    .as_side_uncropped_image .image_side {
        padding: var(--image-padding-xs);
    }
}

/* as_block_image_block */
.as_block_image_block .text_side,
.asb_side_uncropped_image .text_side, 
.as_side_video .text_side {
    padding: var(--text-vertical-padding)  var(--text-horizontal-padding);
    /* min-height: 400px; */
    display: flex;
    flex-direction: column;
    justify-content: center; /* Вертикальная централизация vartical */
}



.asb_side_uncropped_image  .image_side,
.as_block_image_block .image_side {
    /* Вертикальная централизация */
    display: flex;
    flex-direction: column;
    justify-content: center; 
    max-height: 100vh;
    /* margin-top: auto;   выстреливает за границы блока на мобилах
    margin-bottom: auto; */
}
.asb_side_uncropped_image  .image_side img.asb_image,
.as_block_image_block .image_side img.as_image{
    object-fit: contain; 
    max-height: 100%;
}

@media only screen and (max-width: 1199px){
    .as_block_image_block .text_side { 
        padding: var(--text-vertical-padding-xs) var(--text-horizontal-padding-xs); /* 3 в ряд */
    }
}

@media only screen and (max-width: 991px){
    .as_block_image_block .text_side { 
        padding: var(--text-vertical-padding) var(--text-horizontal-padding); /* 1 в ряд */
        display: flex;
        flex-direction: column;
        justify-content: center; /* Вертикальная централизация */
    }
    /* .as_block_image_block .text_side, 
    .as_block_image_block .image_side {
        min-height: 680px; 
    } */
}

@media only screen and (max-width: 767px){
    .as_block_image_block .text_side {
        padding: var(--text-vertical-padding) var(--text-horizontal-padding);
        display: flex;
        flex-direction: column;
        justify-content: center; /* Вертикальная централизация */
    }
    .as_block_image_block .text_side, 
    .as_block_image_block .image_side {
        /* min-height: 580px; */
        display: flex;
        flex-direction: column;
        justify-content: center; /* Вертикальная централизация */
    }
}

@media only screen and (max-width: 575px){
    .as_block_image_block .text_side {
        padding: var(--text-vertical-padding-xs)  var(--text-horizontal-padding-xs);
        display: flex;
        flex-direction: column;
        justify-content: center; /* Вертикальная централизация */
    }
    .asb_side_uncropped_image .text_side,
    .as_side_video .text_side  {
         padding: var(--text-vertical-padding-xs)  var(--text-horizontal-padding-xs);
    }

    
    /* .as_block_image_block .text_side, 
    .as_block_image_block .image_side {
        min-height: 480px;
    } */
}

/* pricing */

.asb_pricing{
    padding:0;
    margin-bottom: 5rem;
    border: 2px solid  var( --text-secondary-color);
}
.asb_pricing .imageSide, 
.asb_pricing .textSide{
    min-height: var(--pricing-block-min-height);
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.as_pricing{
     padding: 30px 10vw;
}
@media only screen and (min-width: 1200px){
    .as_pricing{
        padding: 30px calc((100% - var(--pricing-max-width)) / 2);
    }
}

@media only screen and (max-width: 991px){
    .as_pricing{
        padding: 30px 2vw;
    }
}

/* .asb_pricing .imageSide {
    position: relative;
    padding-top: 45%; 
    height: 0; 
    overflow: hidden; 
} */
.asb_pricing .textSide {
    padding: var(--text-vertical-padding) 50px;
    text-align: center;
}

@media only screen and (max-width: 575px){
    .asb_pricing .imageSide {
        position: relative;
        padding-top: 80%; 
        height: 0; 
        overflow: hidden; 
    } 
    .asb_pricing .textSide {
        padding: var(--text-vertical-padding-xs) var(--text-horizontal-padding-xs);
        text-align: center;
    }
}

.asb_pricing .textSide .asb_header{
    /* font-family: "Montserrat", sans-serif; */
    font-family: "TimesNewRoman", serif;
    font-weight: 400;
    font-style: oblique;
}

.asb_pricing .textSide .asb_description{
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
}

/* цена */
.asb_pricing .textSide .asb_conclusion{
    font-family: "TimesNewRoman", serif;
    font-weight: 500;
    font-size: 2rem;
}

.asb_pricing .orderBtn {
    color: black !important;
    font-family: "Montserrat", sans-serif;
    font-weight: 600;
    font-size: 1.3rem;
    letter-spacing: 0.5px;
}
 /* .as_side_video{
    margin: 0 auto 2rem;
 } */

.as_side_video .video_header{
    font-family: "Montserrat", sans-serif;
    font-weight: 300;
    font-size: 1.3rem;
    text-align: center;
    margin-top: 2rem;
}

.text_padding {
    padding: var(--text-vertical-padding) var(--text-horizontal-padding);
}

@media only screen and (max-width: 575px){
    .text_padding {
        padding: var(--text-vertical-padding-xs) var(--text-horizontal-padding-xs);
    }
}

.as_call2actionBlock{
    margin-top: 1em;
}


.as_side_video .row {
    align-items: stretch; /* Растягиваем колонки на всю высоту */
}

.as_side_video .video_side {
    display: flex;
    align-items: center; /* Центрируем видео вертикально */
    justify-content: center;
    flex-direction: column;
    min-height: 100%; /* Минимальная высота, но может увеличиваться */
    padding: var(--image-padding); 
}

.video-preview-container {
    width: 100%;
    max-width: 100%; 
    margin: 0 auto; /* Центрируем */
}

.PhoneFormModal .modal-header #modalLabel{
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    font-size: 1.5rem;
}
.PhoneFormModal .modal-header{
    padding-bottom: 0;
}
.PhoneFormModal .modal-body p{
    font-family: "Montserrat", sans-serif;
    font-weight: 400;
    font-size: 1.2rem;
    margin-bottom: 1.5rem;
}
/* Стилизация плейсхолдеров в форме модального окна */
.PhoneFormModal input::placeholder {

    font-family: "Montserrat", sans-serif;
    font-weight: 300;
    font-size: 1.0rem;
    color: black; /* Серый цвет */
    transition: all 0.3s ease; /* Плавное изменение */
}

/* Стиль при фокусе */
.PhoneFormModal input:focus::placeholder {
  color:  #adb5bd; /* dee2e6 Более светлый цвет при фокусе */
  transform: translateY(-5px); /* Поднимаем текст */
  font-size: 0.9rem;
}