/* Переменные для удобного внесения изменений при необходимости */
:root {
    --color-white: #fff; /* Белый цвет */
    --color-black: #222; /* Черный цвет */
    --color-dark-blue: #0d41e1; /* Синий цвет */
    --color-blue: #00c9fc; /* Голубой цвет */
    --color-dark-grey: #9b9b9b; /* Серый цвет для хлебных крошек */
    --color-light-grey: #F5F5F5; /* Светло-серый цвет */
}

/* Кастомизация скроллбара */
html {
    scrollbar-color: var(--color-dark-blue) #f1f1f1;
}

/* Выделение текста на всём сайте */
html::-moz-selection {
    background: var(--color-blue);
    color: var(--color-white);
}

html::selection {
    background: var(--color-blue);
    color: var(--color-white);
}

/* Выделение текста тегами */
b, strong {
    font-weight: 600 !important;
}

/* Отступы между блоками для удобного массового изменения */
@media (min-width: 1440px) {
    .my-margin-between-blocks {
        height: 130px;
    }
    .my-margin-between-blocks-2 {
        height: 80px;
    }
}

@media (min-width: 1200px) and (max-width: 1439px) {
    .my-margin-between-blocks {
        height: 120px;
    }
    .my-margin-between-blocks-2 {
        height: 80px;
    }
}

@media (min-width: 960px) and (max-width: 1199px) {
    .my-margin-between-blocks {
        height: 100px;
    }
    .my-margin-between-blocks-2 {
        height: 50px;
    }
}

@media (min-width: 640px) and (max-width: 959px) {
    .my-margin-between-blocks {
        height: 80px;
    }
    .my-margin-between-blocks-2 {
        height: 60px;
    }
}

@media (min-width: 480px) and (max-width: 639px) {
    .my-margin-between-blocks {
        height: 80px;
    }
    .my-margin-between-blocks-2 {
        height: 60px;
    }
}

@media (max-width: 439px) {
    .my-margin-between-blocks {
        height: 80px;
    }
    .my-margin-between-blocks-2 {
        height: 60px;
    }
}

/* Ссылки в шапке и подвале */
header a svg:hover,
header a img:hover,
footer a svg:hover,
footer a img:hover {
    opacity: 0.7 !important;
    transition: all 0.2s !important;
}

/* Flash эффект на кнопке */
.my-autoflash {
    position: relative;
    overflow: hidden;
}
.my-flash {
    position: absolute;
    top: 0; left: -40px;
    width: 30px;
    height: 100%;
    background: rgba(255,255,255,0.15);
    transform: skewX(-45deg);
    animation: my-flash-move 3.5s ease-in-out infinite;
}
@keyframes my-flash-move {
      30%, 100% { left: 150%; }
}

/* Текстовые ссылки на странице */
div[data-elem-type="text"] a:not(footer a):not(.my-services-link a):not(.my-case-listing-title a):not(.uc-sitemap a):not(.my-mail-in-header *):not(.my-nav-header a) {
    border-bottom: 2px solid !important;
}

div[data-elem-type="text"] a:hover:not(.my-more-info-2 a):not(.my-case-listing-title a):not(.uc-sitemap a):not(.my-slide-element a) {
    color: var(--color-dark-blue) !important;
    border-bottom: 2px solid !important;
}

.my-more-info-2 a:hover,
.my-slide-element a:hover {
    color: var(--color-blue) !important;
    border-bottom: 2px solid var(--color-blue) !important;
}

.my-nav-header a:hover,
.my-mail-in-header a:hover,
.my-case-listing-title a:hover,
footer div[data-elem-type="text"] a:hover,
.uc-sitemap a:hover {
    color: var(--color-dark-blue) !important;
}

/* Кликабельные изображения, плашки услуг и крестик попап окна услуг */
.my-img-link a:hover,
.my-services-link:hover,
a[href="#closepopup"]:hover {
    opacity: 0.75 !important;
    transition: all 0.2s !important;
}

/* Дополнительные стили для меню бургера */
.uc-header_burger .t450__logowrapper {
    margin-top: 30px !important;
    margin-bottom: 35px !important;
}
@media (max-width: 640px) {
    .uc-header_burger .t450__container {
        padding: 42px 40px 25px !important;
    }
}

/* Класс для отмены переноса части слова на новую строку*/
.my-no-break-1 {
  white-space: nowrap !important;
}
.my-no-break-2 {
  display: inline-block !important;
}

/* Убираем серый цвет заливки на элементах слайдера */
.uc-slide .my-slide-element .tn-atom {
    background-color: unset !important;
}

/* Кнопка "Показать ещё" в блоке с проектами*/
#rec1083710896 .my-show-more {
    cursor: pointer !important;
}
#rec1083711186 {
    display: none;
}

/* Маркированные списки */
ul li::marker {
    color: var(--color-dark-blue) !important;
}
ol li::marker {
    color: var(--color-dark-blue) !important;
    font-weight: 600 !important;
}

/* Контактная форма в отдельном блоке */
.form-discuss-idea-project button {
    margin-right: 0 !important;
}

/* Контактные формы в popup */
@media (min-width: 561px) {
    .uc-contact-form .t-submit {
        width: 220px !important;
        height: 46px !important;
    }
    .uc-contact-form .t-form__submit {
        text-align: left !important;
    }
}

@media (min-width: 640px) {
    .uc-contact-form .t702 .t702__wrapper {
        padding: 40px 60px 50px !important;
    }
}
@media (min-width: 561px) and (max-width: 639px) {
    .uc-contact-form .t702 .t702__wrapper {
        padding: 40px 50px 50px !important;
    }
}

/* Ошибки при заполнении полей контактных форм */
#allrecords .js-error-control-box input,
#allrecords .js-error-control-box textarea,
#allrecords .js-error-control-box label,
#allrecords .js-error-control-box .t-checkbox__control {
    border: 2px solid var(--color-blue) !important;
    border-radius: 6px !important;
}

#allrecords .t-input-error {
    color: var(--color-blue) !important;
}

#rec987180561 .js-error-control-box input,
#rec987180561 .js-error-control-box textarea,
#rec987180561 .js-error-control-box .t-checkbox__control:before {
    border: 2px solid red !important;
}

#rec987180561 .js-error-control-box .t-checkbox__control:before {
    border-radius: 6px !important;
}

#rec987180561 .t-input-error {
    color: red !important;
}

/* Изображения в контактной форме */
@media (max-width: 959px) {
    .my-contact-form-phones,
    .my-contact-form-pattern {
        display: none; !important;
    }
}

/* Уведомление о куки */
@media (max-width: 480px) {
    .uc-cookie-notice .t887 {
        width: 70% !important;
    }
}

/* Дополнительные стили для виджета заказа звонка */
.uc-callback .t708 .t708__wrapper {
    max-height: 75vh !important;
}

.uc-callback .t708 .t708__bottom-text>div {
    font-size: 12px !important;
    line-height: 16px !important;
}

/* Кнопка "Наверх" */
.uc-scroll-to-top button {
    border: 1px solid var(--color-black);
}

/* Скругление фреймов */
iframe {
    border-radius: 10px !important;
}

/* Корректировка оступов и размеров стандартных блоков */
    /* Все стандартные блоки */
    @media (min-width: 1440px) {
        .t-container {
            max-width: 1254px !important;
            justify-content: flex-end !important;
            align-items: stretch !important;
        }
    }

    /* Аккордеон на главной */
    @media (min-width: 1440px) {
        .t585 .t-col {
            margin: 0 !important;
            width: 934px !important;
        }
        .t585 .t-col_9 {
            max-width: 100% !important;
        }
        .t585 .t-prefix_3 {
            padding-left: 0 !important;
        }
    }
    @media (min-width: 480px) and (max-width: 639px) {
        .t-container {
            width: 458px !important;
        }
        .t-col {
            padding-left: 0 !important;
            padding-right: 0 !important;
        }
    }

    /* Таблица в политике конфиденциальности */
    @media (min-width: 1440px) {
        .uc-table .t-col {
            margin-left: 0 !important;
            margin-right: 0 !important;
            width: 100% !important;
            max-width: 100% !important;
        }
    }

/* Убираем скроллбар для блоков "Преимущества" и "Цикл разработки" */
.uc-advantages .t396__artboard::-webkit-scrollbar,
.uc-prod-cycle .t396__artboard::-webkit-scrollbar {
    height: 0 !important;
    display: none !important;
}

.uc-advantages .t396__artboard,
.uc-prod-cycle .t396__artboard {
    scrollbar-width: none !important;
}

/* Выделение активного пункта меню
* Скрипт подключен в подвале сайта
*/
a.active {
    color: var(--color-dark-blue) !important;
    transition: all 0.2s !important;
}

/* Хлебные крошки */
.custom-breadcrumbs .custom-breadcrumbs-divider {
    padding-left: 6px !important;
    padding-right: 6px !important;
    color: var(--color-dark-grey) !important;
}

.custom-breadcrumbs .custom-breadcrumbs-last {
    color: var(--color-dark-grey) !important;
}

/** OWL CAROUSEL (cкрипт слайдера подключен в конце главной страницы перед футером) */
/* owl.carousel.min.css. Owl Carousel v2.3.4. Copyright 2013-2018 David Deutsch. Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE */
.owl-carousel,.owl-carousel .owl-item{-webkit-tap-highlight-color:transparent;position:relative}.owl-carousel{display:none;width:100%;z-index:1}.owl-carousel .owl-stage{position:relative;-ms-touch-action:pan-Y;touch-action:manipulation;-moz-backface-visibility:hidden}.owl-carousel .owl-stage:after{content:".";display:block;clear:both;visibility:hidden;line-height:0;height:0}.owl-carousel .owl-stage-outer{position:relative;overflow:hidden;-webkit-transform:translate3d(0,0,0)}.owl-carousel .owl-item,.owl-carousel .owl-wrapper{-webkit-backface-visibility:hidden;-moz-backface-visibility:hidden;-ms-backface-visibility:hidden;-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0)}.owl-carousel .owl-item{min-height:1px;float:left;-webkit-backface-visibility:hidden;-webkit-touch-callout:none}.owl-carousel .owl-item img{display:block;width:100%}.owl-carousel .owl-dots.disabled,.owl-carousel .owl-nav.disabled{display:none}.no-js .owl-carousel,.owl-carousel.owl-loaded{display:block}.owl-carousel .owl-dot,.owl-carousel .owl-nav .owl-next,.owl-carousel .owl-nav .owl-prev{cursor:pointer;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel .owl-nav button.owl-next,.owl-carousel .owl-nav button.owl-prev,.owl-carousel button.owl-dot{background:0 0;color:inherit;border:none;padding:0!important;font:inherit}.owl-carousel.owl-loading{opacity:0;display:block}.owl-carousel.owl-hidden{opacity:0}.owl-carousel.owl-refresh .owl-item{visibility:hidden}.owl-carousel.owl-drag .owl-item{-ms-touch-action:pan-y;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.owl-carousel.owl-grab{cursor:move;cursor:grab}.owl-carousel.owl-rtl{direction:rtl}.owl-carousel.owl-rtl .owl-item{float:right}.owl-carousel .animated{animation-duration:1s;animation-fill-mode:both}.owl-carousel .owl-animated-in{z-index:0}.owl-carousel .owl-animated-out{z-index:1}.owl-carousel .fadeOut{animation-name:fadeOut}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.owl-height{transition:height .5s ease-in-out}.owl-carousel .owl-item .owl-lazy{opacity:0;transition:opacity .4s ease}.owl-carousel .owl-item .owl-lazy:not([src]),.owl-carousel .owl-item .owl-lazy[src^=""]{max-height:0}.owl-carousel .owl-item img.owl-lazy{transform-style:preserve-3d}.owl-carousel .owl-video-wrapper{position:relative;height:100%;background:#000}.owl-carousel .owl-video-play-icon{position:absolute;height:80px;width:80px;left:50%;top:50%;margin-left:-40px;margin-top:-40px;background:url(owl.video.play.png) no-repeat;cursor:pointer;z-index:1;-webkit-backface-visibility:hidden;transition:transform .1s ease}.owl-carousel .owl-video-play-icon:hover{-ms-transform:scale(1.3,1.3);transform:scale(1.3,1.3)}.owl-carousel .owl-video-playing .owl-video-play-icon,.owl-carousel .owl-video-playing .owl-video-tn{display:none}.owl-carousel .owl-video-tn{opacity:0;height:100%;background-position:center center;background-repeat:no-repeat;background-size:contain;transition:opacity .4s ease}.owl-carousel .owl-video-frame{position:relative;z-index:1;height:100%;width:100%} /* owl.carousel.min.css END */
/* owl.theme.default.min.css. Owl Carousel v2.3.4. Copyright 2013-2018 David Deutsch. Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE */
.owl-theme .owl-dots,.owl-theme .owl-nav{text-align:center;-webkit-tap-highlight-color:transparent}.owl-theme .owl-nav{margin-top:10px}.owl-theme .owl-nav [class*=owl-]{color:#FFF;font-size:14px;margin:5px;padding:4px 7px;background:#D6D6D6;display:inline-block;cursor:pointer;border-radius:3px}.owl-theme .owl-nav [class*=owl-]:hover{background:#869791;color:#FFF;text-decoration:none}.owl-theme .owl-nav .disabled{opacity:.5;cursor:default}.owl-theme .owl-nav.disabled+.owl-dots{margin-top:10px}.owl-theme .owl-dots .owl-dot{display:inline-block;zoom:1}.owl-theme .owl-dots .owl-dot span{width:10px;height:10px;margin:5px 7px;background:#D6D6D6;display:block;-webkit-backface-visibility:visible;transition:opacity .2s ease;border-radius:30px}.owl-theme .owl-dots .owl-dot.active span,.owl-theme .owl-dots .owl-dot:hover span{background:#869791} /* owl.theme.default.min.css END */

/* Дополняем стандартные стили Owl Carousel для совместимости */
.owl-carousel .owl-stage,
.owl-carousel .owl-stage-outer,
.owl-carousel .owl-item,
.owl-carousel .owl-wrapper,
.owl-carousel .owl-video-play-icon {
    backface-visibility: hidden;
}

.owl-carousel .owl-stage-outer,
.owl-carousel .owl-item,
.owl-carousel .owl-wrapper {
    transform: translate3d(0, 0, 0);
}

/* Доп. стили для слайдера */
.my-slider_wrapper {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: stretch;
    align-content: stretch;
}

/* Скругление углов */
.my-slider_wrapper .owl-stage-outer {
    border-radius: 20px !important;
}

/* Цвет стрелок при наведении */
.my-slider_prev,
.my-slider_next {
    cursor: pointer !important;
}

/* Цвет стрелок при наведении */
.my-slider_prev svg:hover path,
.my-slider_next svg:hover path {
    stroke: var(--color-dark-blue) !important;
    fill: var(--color-dark-blue) !important;
    transition: all 0.2s !important;
    cursor: pointer !important;
}

/* Курсор */
.owl-drag {
    cursor: -webkit-grab !important;
    cursor: -moz-grab !important;
    cursor: grab !important;
}
.owl-drag:active{
    cursor: -webkit-grabbing !important;
    cursor: -moz-grabbing !important;
    cursor: grabbing !important;
}
/* /Owl Carousel */


/* КАРУСЕЛЬ СО СТРЕЛКАМИ в zero блоке (Горизонтальный скролл в zero-блоке, ScrollBooster)
* Для работы скролла используется ScrollBooster, скрипт подключен в подвале сайта
*/
.scrollbooster-viewport {
    cursor: -webkit-grab;
    cursor: grab;
    padding-bottom: 30px;
    margin-bottom: -30px;
    overflow-y: hidden !important;
}

.scrollbooster-viewport:active {
    cursor: -webkit-grabbing;
    cursor: grabbing;
}

.scrollbooster-content {
    position: absolute;
    width: 100%;
    height: 100%;
}

[class*="sb_arrow"] {
    cursor: pointer !important;
}

[class*="sb_arrow"]:hover {
    opacity: 0.6 !important;
    transition: all 0.2s !important;
}
/* /Карусель со стрелками в zero блоке */