/* Настройки шаблона */
:root, body {font-size: 10px;
	--color-gray:#BABBBB;
	--color-black:#3A3A3C;
	--color-blue:#10427E;
	--color-light:#6BB1E2;
}
@media screen and (min-width: 576px) {
	:root, body {font-size: 12px;}
}
@media screen and (min-width: 768px) {
	:root, body {font-size: 12px;}
}
@media screen and (min-width: 992px) {
	:root, body {font-size: 14px;}
}
@media screen and (min-width: 1200px) {
	:root, body {font-size: 16px;}
}

/* Элементы */
html {width: calc(100% + calc(100vw - 100%)); overflow-x: hidden;}
body {display: flex; flex-direction: column; margin: 0 auto; max-width: 1920px; font-family: Ubuntu, sans-serif; color: #000; outline: 1px solid #ddd;}

.display-1 {font-size: 5rem; font-style: normal; font-weight: 400; color:var(--color-light);}
h1, .h1 {font-size: 3rem; font-style: normal; font-weight: 400;}
h2, .h2 {font-size: 1.75rem; font-style: normal; font-weight: 400;}
h3, .h3 {font-size: 1.25rem; font-style: normal; font-weight: 500; color:var(--color-light);}
h4, .h4 { font-size: 1.25rem; font-weight: 400; line-height: 150%; }
.h4s1 {font-size: 1.25rem; font-weight: 500; line-height: 150%;}
h5, .h5 { font-size: 1rem; font-weight: 400; line-height: 150%; }
h6, .h6 {}

a {text-decoration: none; color:var(--color-blue);}
a:hover {color:var(--color-light);}


/* Общие классы */
.bg-primary {background-color: var(--color-blue) !important;}
.form-control {border-radius: 0; padding: 1rem;}
.btn {padding: 1rem;}
.btn-primary {background-color: var(--color-light); border-color: var(--color-light); border-radius: 0;}
.card.card-body {border-radius:0; border:0 none;}
.text-gray {color: var(--color-gray)!important;}
.text-light {color: var(--color-light)!important;}
.text-blue {color: var(--color-blue)!important;}

.bg-color-blue::before{background-color: var(--color-blue) !important;}
.moduletable.fullbg {width:100vw !important;}
.btns {padding: 1rem 0;}
.btns a { position: relative; border: none; padding: 0; }
.btns a.btn {background-color: transparent!important; border-color: transparent!important; color: white!important;}
.desc.arrow_ico{font-size: 1.3rem;font-weight: 600;}
.btns a:hover::after {left: 10%;}
.btns a::after { content: ""; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='185' height='18' viewBox='0 0 185 18' fill='none'%3E%3Cline y1='17.5' x2='184' y2='17.5' stroke='white'/%3E%3Cline x1='156.252' y1='1.21788' x2='184.252' y2='17.5682' stroke='white'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-size: contain; width: 130%; display: inline-block; height: 100%; position: absolute; left: 0; bottom: -65%; transition: 0.4s;}
/* Переопределения Bootstrap */
.scroll-up i {width: 100%; height: 100%;}
.scroll-up i::before { content: ""; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg id='SVGRepo_bgCarrier' stroke-width='0'%3E%3C/g%3E%3Cg id='SVGRepo_tracerCarrier' stroke-linecap='round' stroke-linejoin='round'%3E%3C/g%3E%3Cg id='SVGRepo_iconCarrier'%3E%3Cpath d='M12 5V19M12 5L6 11M12 5L18 11' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3C/path%3E%3C/g%3E%3C/svg%3E"); background-repeat: no-repeat; width: 100%; height: 100%; background-size: contain; display: block; }

/* Шапка */
header {border-bottom: 1px solid var(--color-gray); position:sticky !important; z-index:10000 !important; top:0; background:rgba(255,255,255,.75); backdrop-filter: blur(5px);}
header a {color:var(--color-black);}
header #header_items {margin-left: auto;}
header #header_items * {margin: 0; padding: 0; text-align:center;}
header #header_items .mod-header-phone a::before {content:url('/images/icons/001.svg'); display: inline-block; vertical-align: middle;}
header #top_menu {flex:1;}
header #top_menu > ul {width: 100%; justify-content: space-around; flex-direction: column; align-items: center;}
header #top_menu ul {margin:0; padding:0;}
header #top_menu .arrow {display: none;}
header #top_menu ul li {margin:0; padding:0; position: relative; display: flex; align-items: center;}
header #top_menu ul li ul {display: none; position: absolute; top:100%; left:0; white-space: nowrap; background: #fff; border:1px solid var(--color-gray);}

header #top_menu a {padding: 1rem; display: block;}
#center main {overflow: inherit;}
#center .moduletable {margin-bottom: 5rem;}


/* Подвал */
footer {color:#fff; text-align: center; background: url('/images/icons/016.svg') var(--color-black) right bottom no-repeat; background-size:auto 100%; }
footer a {color:#fff; padding: 1rem; display: block;}
footer ul {justify-content: center;}

/* Модули */

/* Адаптация */

/* Анимации */

.delay-1 {-webkit-animation-delay:200ms;animation-delay:200ms}
.delay-2 {-webkit-animation-delay:400ms;animation-delay:400ms}
.delay-3 {-webkit-animation-delay:600ms;animation-delay:600ms}
.delay-4 {-webkit-animation-delay:800ms;animation-delay:800ms}
.delay-5 {-webkit-animation-delay:1000ms;animation-delay:1000ms}
.delay-6 {-webkit-animation-delay:1200ms;animation-delay:1200ms}
.delay-7 {-webkit-animation-delay:1400ms;animation-delay:1400ms}
.delay-8 {-webkit-animation-delay:1600ms;animation-delay:1600ms}
.delay-9 {-webkit-animation-delay:1800ms;animation-delay:1800ms}
.delay-10 {-webkit-animation-delay:2000ms;animation-delay:2000ms}

@keyframes opacity {
  0% {opacity: 0;}
  50% {opacity: 0.5;}
  100% {opacity: 1;}
}

.moduletable {position: relative;}
.header {padding:1rem 1rem 1rem 10rem; right:0; max-width:690px; background: url('/images/icons/008.svg') no-repeat bottom left; z-index: 10;}

.mod-home-slide {display: flex; flex-direction: column;}
.mod-home-slide .data {position: relative; z-index: 10;}}
.mod-home-slide .data .card.card-body { justify-content: center; padding: 2rem 2rem; }
.mod-home-slide .banner {overflow:hidden; width:320px; margin:0 auto;}
.mod-home-slide .banner .start {position:relative;}
.mod-home-slide .banner video {width: 100%;}
.mod-home-slide .banner .map {width: 320px;}
.mod-home-slide .buttons {position: relative; z-index: 10; margin-top: auto; z-index:101;}
.mod-home-slide::before {content:''; position:absolute; top:0; left:0; bottom:0; width:100px; background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%); z-index:100; pointer-events:none;}
.mod-home-slide .banner::before,
.mod-home-slide .banner::after {content:''; position:absolute; top:0; left:0; right:0; height:100px; background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%); z-index:100; pointer-events:none;}
.mod-home-slide .banner::after {left:auto; height:100%; width:100px; background: linear-gradient(270deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);}
.mod-home-slide .col-sm-3 {border:1px solid var(--color-gray); margin:-1px 0 0 -1px;}
.mod-home-slide .buttons::before {content:''; position: absolute; top:0; bottom: 0; left:50%; width: 100vw; transform:translateX(-50%); border-top:1px solid var(--color-gray); border-bottom:1px solid var(--color-gray); z-index:-1; background: rgba(255,255,255,.75);}

.mod-home-slide .videos { position: absolute; top: 0; right: 0; left: 0; bottom: 0; overflow: hidden; display: none;}
.mod-home-slide .order {order:-1;  z-index: 101;}
.mod-home-slide .order .card {position:relative; border:1px solid var(--color-gray); display:none; flex-direction: row;  border:1px solid var(--color-gray); display:none;}

.mod-home-slide .order .card .modal-dismiss { width: 20px; height: 20px; position: absolute; right: 2%; top: 5%; background-repeat: no-repeat; background-size: contain; background-image: url("data:image/svg+xml,%3Csvg fill='%23000000' width='800px' height='800px' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.8,16l5.5-5.5c0.8-0.8,0.8-2,0-2.8l0,0C24,7.3,23.5,7,23,7c-0.5,0-1,0.2-1.4,0.6L16,13.2l-5.5-5.5 c-0.8-0.8-2.1-0.8-2.8,0C7.3,8,7,8.5,7,9.1s0.2,1,0.6,1.4l5.5,5.5l-5.5,5.5C7.3,21.9,7,22.4,7,23c0,0.5,0.2,1,0.6,1.4 C8,24.8,8.5,25,9,25c0.5,0,1-0.2,1.4-0.6l5.5-5.5l5.5,5.5c0.8,0.8,2.1,0.8,2.8,0c0.8-0.8,0.8-2.1,0-2.8L18.8,16z'/%3E%3C/svg%3E"); cursor: pointer;}

.mod-home-slide .order .card.active {display:flex;}
.mod-home-slide .buttons {border-top:1px solid #fff;}
.mod-home-slide .buttons > *.active,
.mod-home-slide .buttons > *:hover {display:block; background:var(--color-light);}
.mod-home-slide .buttons > *.active *,
.mod-home-slide .buttons > *:hover * {filter: brightness(0) invert(1);}


area, [data-room] {cursor:pointer;}


.mod-about {}
.mod-about .img img { height: 100%; object-fit: cover; }
.mod-about .header {margin: 3rem 0 1rem -6rem; position: relative; top:0;}
.mod-about img {max-height: 50vh;}
.mod-about .btn__wrap { display: flex; margin-top: 1.5rem; margin-bottom: 1rem; }
.mod-about .btn-lightblue { background: var(--color-light); display: flex; padding: 1rem 4.5rem; align-items: center; gap: 1.25rem; justify-content: center; color: #FFF; text-align: center; font-size: 1rem; font-weight: 400; line-height: 150%; }
.mod-flex {align-items: flex-start;}

.mod-catalog {}
.mod-catalog > a {position: relative; overflow: hidden; padding: 8rem 1rem; text-align:center;}
.mod-catalog > a > * {position: relative; color:#fff;}
.mod-catalog .img {position: absolute; top:0; left:0; right: 0; bottom: 0;}
.mod-catalog .img img {width:100%; height: 100%; object-fit: cover; filter: brightness(50%); transition: .6s;}
.mod-catalog a:hover .img img {filter: brightness(70%); transform: scale(1.2);/*transform:rotate(-5deg) scale(1.2);*/}

.mod-fos.bg-color {color:#fff;}
.mod-fos.bg-color::before {background: url('/images/images/016.jpg'); filter: brightness(50%);}
.mod-fos form {max-width: 690px; margin: 0 auto;}
.mod-fos .form-control {background: rgba(255,255,255,.25); color:#fff;}
.mod-fos ::-webkit-input-placeholder {color: #fff;}
.mod-fos :-moz-placeholder {color: #fff;}
.mod-fos ::-moz-placeholder {color: #fff;}
.mod-fos :-ms-input-placeholder {color: #fff;}
.mod-fos ::-ms-input-placeholder {color: #fff;}
.mod-fos ::placeholder {color: #fff;}

.mod-contact {}
.mod-contact .table {margin-bottom: 0;}
.mod-contact .btn-primary {border-radius: 0;}
.mod-contact .header {padding: 1rem; position: relative; max-width:none; top:0;     padding: 3.125rem; background-size: 20rem;}
.mod-contact .img {position: relative; z-index: -1;}
.mod-contact .img img {height: 100%; object-fit: cover;}
.mod-contact .table tr td:last-child { color: var(--color-blue); font-size: 1rem; font-weight: 400; line-height: 150%; }
.mod-contact .table tr td:first-child { color: #000; font-size: 1rem; font-weight: 400; line-height: 150%; }
.mod-contact form input { border: 1px solid #FFF; background: rgba(255, 255, 255, 0.20); display: flex; padding: 1rem 1.5rem; align-items: flex-start; gap: 0.625rem; color: #FFF; font-family: Ubuntu; font-size: 1rem; font-weight: 400; line-height: 150%; }
.mod-contact form input::placeholder { color: #FFF; font-family: Ubuntu; font-size: 1rem; font-weight: 400; line-height: 150%; }
.mod-contact .title, .mod-contact .subtitle {color: var(--color-light);}

.table {border:solid var(--color-gray); border-width: 0 0 1px 1px;}
.table td {border:solid var(--color-gray); border-width: 1px 1px 0 0;}
.table td:nth-child(2) {color:var(--color-light);}
.product .table td:nth-child(2) {color:var(--color-blue);}
.product .table h5 {color: var(--color-blue)!important;}

.mod-area {}
.mod-area .col-12 {z-index: 12;}
.mod-area .card.card-body {border:1px solid var(--color-gray); display: flex; flex-direction: row; align-items:center; padding: 1.88rem; margin-bottom: -1px;}
.mod-area .card.card-body .img {margin-right:1rem;}
.mod-area .card.card-body .img img {max-width: none;}
.mod-area .card.card-body .h3 {color:var(--color-blue);}

.mod-area2 .card.card-body { padding: 1rem; align-items: flex-start; }
.mod-area2 .header {padding: 3rem 1rem 3rem 10rem;}

/* .mod-breadcrumbs {position: absolute; right:0; top:0; color:#fff; z-index: 10; background: none;} */
.mod-breadcrumbs { /* position: absolute;  */ /* right:0;  */ /* top:0;  */ color:#fff; /* z-index: 10;  */ background: none; padding: 0!important;}
.mod-breadcrumbs a {color:#fff;}
.mod-breadcrumbs .breadcrumb-item.active {color:#fff;}

#top {position: relative;}
.mod-header {position: relative;}
.mod-header .card {padding-top: 3rem;}
.mod-header .card { display: flex; padding: 3rem 2.75rem; flex-direction: column; justify-content: center; align-items: flex-start; gap: 1.4375rem; flex-shrink: 0;}
.mod-header::before {content:''; height: 1px; background: var(--color-gray); width:100vw; left:50%; transform:translateX(-50%); bottom: 0; position: absolute;}

.mod-about3 {position: relative;}
.mod-about3 .row > div {position: relative;}
.mod-about3 .bg {content:url('/images/icons/019.svg'); max-width:100%; position: absolute; bottom: 0; left:50%; transform: translate(-50%, 10rem);}
.mod-about3 .header {top:0; max-width: none; position: relative;}
.mod-about3 * {color:var(--color-blue);}

.mod-avtomatiz {}
.mod-avtomatiz .header {top: 0; margin: 1rem 0;}
.mod-avtomatiz .img {max-height:50vh; text-align:center;}

.o-kompanii #top_content {display: flex; flex-direction: column;}
.o-kompanii #top_content > * {order:10;}
.o-kompanii #top_content .mod-about {order:1;}
.o-kompanii #top_content .mod-about2 {order:3;}
.o-kompanii #top_content .mod-about3 {order:2;}

.mod-fos2.bg-color::before {background: url('/images/images/018.jpg'); background-attachment: fixed; background-size: cover;}
.mod-fos2 * {color:#fff;}
.mod-fos2 ul {margin: 0; padding: 0;}
.mod-fos2 ul li {margin: 1rem 0; padding: 1rem 0; display: block; position: relative;}
.mod-fos2 ul li::before {content:''; width: 100px; height: 2px; background: var(--color-light); position: absolute; left:0; bottom: 0;}
.mod-fos2 ul li:nth-last-child(1)::before {content: inherit;}

article {position: relative;}
article .pt { padding-top: 200px; }
article .header {max-width: 690px; position: absolute; left:0; top:5rem; width:100%; padding: 1rem 1rem 1rem 10rem;}
article .header {padding: 3rem 1rem 3rem 10rem; top: 2rem;}
.dokumenty article .header,
.kontakty article .header {top: -6rem;}


.blog {margin-bottom: 5rem;}
.blog .tab-content .tab-pane > a { position: relative; overflow: hidden; padding: 3rem; justify-content: center; display:flex; align-items:center; text-align:center; flex-direction: column;}
.blog .tab-content .tab-pane > a > * {position: relative; color:#fff;}
.blog .img {position: absolute!important; top:0; left:0; right: 0; bottom: 0;}
.blog .img img {width:100%; height: 100%; object-fit: cover; filter: brightness(50%); transition: .6s;}
.blog a:hover .img img {filter: brightness(70%);transform:scale(1.2);/* transform:rotate(-5deg) scale(1.2); */ }

.blog .nav-link { display: flex; color: black; padding: 2.5rem 5.5rem; justify-content: center; align-items: center; gap: 0.625rem; border-right: 1px solid #BABBBB; border-left: 1px solid #BABBBB; border-radius: 0!important; }
.blog .tab-content>.active { display: flex; flex-wrap: wrap; }
.blog .nav-link.active { background-color: #6BB1E2!important; color: white!important; transition: 0.6s; }


.proekty .header {position: relative; top:0; left:0; max-width: none;}

.pagination {margin-bottom: 5rem; justify-content: space-between}

.mod-map {z-index: 10; margin-bottom: -3rem !important;}
.mod-map .header {position: relative; top:0; max-width:none; padding: 1rem; text-align: center;}
.mod-map .header { display: flex; padding: 3.125rem; justify-content: center; align-items: center; gap: 1.875rem; background-size: contain; flex-direction: column; margin-top: 5rem;}
.kontakty .mod-map .header {background-image: none;}
.mod-map form {width: 100%;}
.mod-map form input { border: 1px solid #FFF; background: rgba(255, 255, 255, 0.20); display: flex; padding: 1rem 1.5rem; align-items: flex-start; gap: 0.625rem; color: #FFF; font-family: Ubuntu; font-size: 1rem; font-weight: 400; line-height: 150%; }
.mod-map form input::placeholder { color: #FFF; font-family: Ubuntu; font-size: 1rem; font-weight: 400; line-height: 150%; }


.categories-list {display: none;}

.product .header {position: relative; top:0; left:0; max-width: none;}
.product .header {padding: 2rem 1rem 2rem 10rem; text-transform: uppercase;}
.katalog .product table td:nth-last-child(1) {white-space: nowrap;}

@media screen and (min-width: 320px) {
	.mod-contact .img {display: none;}
}
@media screen and (min-width: 540px) {
	.mod-home-slide .banner .map,
	.mod-home-slide .banner {width:auto;}
	.mod-about3 {margin-top:5rem;}
	.mod-home-slide .banner .start{position:inherit;}
	.mod-home-slide .order .card {position:absolute; top:0; right:0;  z-index:1000; max-width:526px;}
}


@media screen and (min-width: 720px) {
	article .header {left:35%}
	.header {position: absolute; top:3rem;}
	.mod-about img {max-height: none;}
	.mod-contact .header {margin: 3rem -25rem 1rem 0;}
}
@media screen and (min-width: 768px) {
	article .pt {padding-top: 50px;}
	.mod-contact .img {display: block;}
}
/*
@media screen and (max-width: 575px) {
	.blog .tab-content .tab-pane > a {padding: 15rem 1rem;}
}
@media screen and (max-width: 1200px) { }
@media screen and (max-width: 992px) {
	.mod-avtomatiz .header {top: 0; margin: 1rem 0; position:absolute; right:-530px;}
	.mod-avtomatiz .pe {padding-right:10rem;}
	.blog .tab-content .tab-pane > a { padding: 6rem 1rem; min-height: 300px; }
}
@media screen and (max-width: 1400px) { }

*/
.row:not(.blog) .img {max-height:50vh; text-align:center;}
@media screen and (min-width: 992px) {
	.mod-avtomatiz .header {top: 0; margin: 1rem 0; position:absolute; right:-530px;}
	.mod-avtomatiz .pe {padding-right:10rem;}
	.row .img {max-height:none;}
}
@media screen and (min-width: 1200px) {
	header #top_menu > ul {flex-direction:row;}
	header #top_menu ul li:hover ul {display: block;}
	header #top_menu .arrow {display: block;}
}

@media screen and (min-width: 1320px) {
	.display-1 {text-transform: uppercase;}
	h1, .h1 {text-transform: uppercase;}
	h2, .h2 {text-transform: uppercase;}
	
	.o-kompanii #top_content .mod-about2 {order:2;}
	.o-kompanii #top_content .mod-about3 {order:3; margin-top: -15rem;}
}




.katalog .nav-tabs {display: none;}
.product .order-1 img {width: 100%;}

