@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Sofia+Sans+Condensed:ital,wght@0,1..1000;1,1..1000&display=swap');
/*@font-face {*/
/*    font-family: 'Panton';*/
/*    src: url('/fonts/panton.eot');*/
/*    src: local(':'),*/
/*    url('/fonts/panton.woff') format('woff'),*/
/*    url('/fonts/panton.ttf') format('truetype'),*/
/*    url('/fonts/panton.svg') format('svg');*/
/*    font-weight: normal;*/
/*    font-style: normal;*/
/*}*/
/*@font-face {*/
/*    font-family: 'Segoe';*/
/*    src: url('/fonts/SegoeScript.eot');*/
/*    src: local(':'),*/
/*    url('/fonts/SegoeScript.woff') format('woff'),*/
/*    url('/fonts/SegoeScript.ttf') format('truetype'),*/
/*    url('/fonts/SegoeScript.svg') format('svg');*/
/*    font-weight: normal;*/
/*    font-style: normal;*/
/*}*/
/*@font-face {*/
/*    font-family: 'leonovsp';*/
/*    font-style: normal;*/
/*    font-weight: 700;*/
/*    src: url('/fonts/leonovsp-russian.woff2') format('woff2'),*/
/*    url('/fonts/leonovsp-russian.woff') format('woff'),*/
/*    url('/fonts/leonovsp-russian.ttf') format('truetype');*/
/*    unicode-range: U+21-23,U+25-40,U+5B-5F,U+7B-7E,U+AB,U+BB,U+401,U+410-44F,U+451,U+2013-2014,U+2018-2019,U+201C,U+201C-201E,U+2026,U+20BD;*/
/*}*/
*,
*:before,
*:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
html {
    min-height: 100%;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #000;
    align-items: center;
}
body {
    font-family: 'Roboto', sans-serif;
    /*font-family: 'Panton', sans-serif;*/
    color: #000;
    background-color: #fff;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    position: relative;
    width: 100%;
    overflow-x: hidden;
    max-width: 1920px;
    flex-grow: 1;
}
/*Обводка*/
a.active.focus,
a.active:focus,
a.focus,
a:active.focus,
a:active:focus,
a:focus,
button,
button.active.focus,
button.active:focus,
button.focus,
button:active.focus,
button:active:focus,
button:focus,
input.active.focus,
input.active:focus,
input.focus,
input:active.focus,
input:active:focus,
input:focus,
.btn.active.focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn:active:focus,
.btn:focus,
textarea:active,
textarea:focus
{
    outline: 0!important;
    outline-color: transparent!important;
    outline-width: 0!important;
    outline-style: none!important;
    box-shadow: 0 0 0 0 rgba(0,123,255,0)!important;
    outline-offset: 0 !important;
}
button::-moz-focus-inner {
    border: 0 !important;
}
.noselect {
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
img {
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.pointer {
    cursor: pointer;
}
footer {
    border-bottom: 1.5rem solid #000000;
}
h1, h2, h3, h4, h5 {
    margin: 0;
}
h1 {
    font-size: 3em;
}
.fs-7 {
    font-size: 0.875rem;
}
.segoe {
    font-family: Segoe;
}
.leonov {
    font-family: "Sofia Sans Condensed", sans-serif;
    font-style: italic;
    font-weight: 700;
}
.gray-bg {
    background-color: #f4f4f4;
}
/*Burger*/
header .fixed-top {
    z-index: 1049;
}
header .fixed-top img {
    max-width: 150px;
    width: 100%;
}
.navbar-toggler {
    height: 45px;
    width: 45px;
    border-radius: 50%;
    position: relative;
    cursor: pointer;
    z-index: 1049;
    background-color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
}
.navbar-toggler>span, .navbar-toggler:before, .navbar-toggler:after {
    width: 22px;
    position: absolute;
    display: block;
    content: '';
    height: 3px;
    background-color: #fff;
    border-radius: 1px;
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    /*margin-left: 10px;*/
}
.navbar-toggler>span {
    background-color: transparent;
    display: flex;
}
.navbar-toggler>span>i {
    height: 3px;
    background-color: #fff;
    border-radius: 1px;
    width: 50%;
}
.navbar-toggler:before {
    top: 12px;
}
.navbar-toggler:after {
    bottom: 12px;
}
.navbar-toggler.active>span {
    display: none;
}
.navbar-toggler.active:before, .navbar-toggler.active:after {
    top: 21px;
}
.navbar-toggler.active:before {
    transform: rotate(45deg);
}
.navbar-toggler.active:after {
    transform: rotate(-45deg);
}
/*Header*/
#myNavmenu {
    background-color: #333;
    border: none;
    max-width: 300px;
}
.mobile-menu li>a:not(.phone-lnk) {
    color: #999;
    padding: 0;
    font-weight: 400;
    text-transform: uppercase;
    line-height: 1;
}
.mobile-menu li>a:not(.phone-lnk):hover {
    background-color: transparent;
    color: #000;
}
.navbar-nav .nav-link.active {
    color: #fff;
}
/*Позиционирование*/
.h1-hide {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    font-size: 1em;
    line-height: 1rem;
}
/*Link*/
.phone-lnk, .phone-lnk:hover, .phone-lnk:visited {
    color: #000000;
    text-decoration: none;
}
.black-lnk, .black-lnk:hover, .black-lnk:visited {
    color: #000000;
    text-decoration: none;
}
/*BTN*/
.btn-black, .btn-white, .btn-gray {
    border-radius: 0;
    padding: 0.25rem 1rem;
}
.btn-black {
    background-color: #000;
    color: #fff;
}
.btn-black:hover, .btn-black:active, .btn-black:focus {
    background-color: #999;
    color: #fff;
}
.btn-white {
    background-color: #999;
    color: #fff;
    border: 1px solid #fff;
}
.btn-white:hover, .btn-white:active, .btn-white:focus {
    background-color: #fff;
    color: #000;
}
.btn-gray {
    background-color: #999;
    color: #fff;
}
.btn-gray:hover, .btn-gray:active, .btn-gray:focus {
    background-color: #000;
    color: #fff;
}
/*СOLOR*/
.gray {
    color: #666;
}
/*Main*/
.bg-white-opacity {
    background-color: rgba(255, 255, 255, 0.75);
}
.position-absolute.leonov>div:first-child {
    font-size: 5rem;
    line-height: 1.3;
    transform: rotate(-10deg);
}
/*Carousel*/
#IndexCarousel .carousel-item img {
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
}
#IndexCarousel .carousel-item img:hover {
    -webkit-filter: none;
    -moz-filter: none;
    -o-filter: none;
    filter: none;
}
#ImgCarousel .carousel-item-next, #ImgCarousel .carousel-item-prev, #ImgCarousel .carousel-item.active {
    display: flex;
}
#ImgCarousel .carousel-item {
    align-items: center;
}
/*Form*/
/*Меню img*/
.grayscale > img {
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
    -webkit-transition: all 1s;
    -moz-transition: all 1s;
    -o-transition: all 1s;
    transition: all 1s;
}
.grayscale:hover>img {
    -webkit-filter: none;
    -moz-filter: none;
    -o-filter: none;
    filter: none;
}
/*Services*/
/*Модальное окно*/
#message {
    z-index: 2000;
}
.modal-header {
    border-bottom: none;
}
.modal-content {
    border-radius: 0;
}
/*
WHAT IS NEW IN 3.3: "Added transforms to improve carousel performance in modern browsers."
now override the 3.3 new styles for modern browsers & apply opacity
*/
@media all and (transform-3d), (-webkit-transform-3d) {
    .carousel-fade .carousel-inner > .item.next,
    .carousel-fade .carousel-inner > .item.active.right {
        opacity: 0;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner > .item.prev,
    .carousel-fade .carousel-inner > .item.active.left {
        opacity: 0;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner > .item.next.left,
    .carousel-fade .carousel-inner > .item.prev.right,
    .carousel-fade .carousel-inner > .item.active {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}
/*types-of-works*/
.bg-types-of-works {
    background-image: url("/img/bg-types-of-works.webp");
    background-position: top center;
    background-repeat: no-repeat;
}
.shadow-blur {
    box-shadow: 0 100px 0 20px rgba(255, 255, 255, 0.8) inset;
}
#ServicesTab {
    border-bottom: none;
}
#ServicesTab .nav-item .nav-link {
    border-radius: 0 !important;
    color: #000 !important;
    background-color: #999 !important;
    border: none;
}
#ServicesTab .nav-item .nav-link.active {
    color: #fff !important;
    background-color: #000 !important;
}
/*projects*/
.aspect-4-3 {
    aspect-ratio: 4/3;
}
.aspect-16-9 {
    aspect-ratio: 16/9;
}
.blueimp-gallery > .indicator > li {
    width: 30px;
    height: 30px;
    background-size: 90% 90%;
}
.bg-contact {
    background-image: url("/img/bg-contact.webp");
    background-position: top center;
    background-repeat: no-repeat;
}