html { height: 100%; }
body { height: 100%; min-width: 320px; letter-spacing: -0.03em; }
.body { min-height: 100%; position: relative; }
.layout { position: relative; margin-left: 50px; }

aside.fixed-bar { position: fixed; left: 0; top: 0; bottom: 0; width: 50px; background-color: #FD9E00; writing-mode: tb-rl; text-align: center; line-height: 50px; }
aside.fixed-bar div { transform: rotateZ(180deg); color: #ffffff; letter-spacing: 10px; white-space: nowrap; }

.toggle-nav { position: absolute; width: 50px; height: 50px; top: 45px; left: 0px; cursor: pointer; display: none; text-align: center; }
.toggle-nav svg { width: 70%; height: 100%; fill: #ffffff; }

header.page { display: flex; padding: 20px 40px 20px 40px; justify-content: space-between; align-items: center; }
header.page .logo { flex-basis: 150px; }
header.page .logo img { width: 100%; }
header.page nav.main { left: 0px; background-color: #fff; z-index: 1; padding-top: 0px; top: 100px; }
header.page nav.main ul { list-style: none; padding: 0; display: flex; justify-content: center; height: 100%; align-items: center; }
header.page nav.main ul li { padding: 10px; }
header.page nav.main ul li a { font-weight: 800; }
header.page .infobar { flex-basis: 200px; position: relative; }
header.page .infobar::before { content: "ᐸ"; display: block; position: absolute; left: -25px; transform: rotateZ(-90deg) scaleX(0.5) scaleY(1.5); font-weight: bold; top: 5px; }
header.page .infobar .tel_ { font-size: 1.6rem; font-weight: 800; }
header.page .infobar .label { font-size: 0.983rem; color: #999999; }
header.page .infobar .drop-down { visibility: hidden; opacity: 0; position: absolute; top: -10px; left: -20px; background-color: #ffffff; box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); transition: opacity 0.2s ease-out 0s; z-index: 10; }
header.page .infobar .drop-down .tel { padding: 10px 20px; font-size: 1.6rem; font-weight: 800; }
header.page .infobar .drop-down .workshedule { padding: 10px 20px; }
header.page .infobar .drop-down .address { padding: 10px 20px; }
header.page .infobar .drop-down .email { padding: 10px 20px; }
header.page .infobar:hover .drop-down { visibility: visible; opacity: 1; }
header.page .infobar:hover::before { display: none; }

.da {  }

.semantic-node { margin-top: 80px; margin-bottom: 80px; overflow: hidden; }

.catalog-sections-list.for-main-page { grid-auto-flow: column; overflow: hidden; grid-auto-columns: minmax(250px, 1fr); position: relative; }

.manufacturers { width: 90%; margin: auto; }
.manufacturers .wrapper { display: grid; justify-content: space-between; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); grid-gap: 40px; margin-bottom: 50px; width: 100%; }
.manufacturers div { display: flex; padding-right: 10px; padding-left: 10px; }
.manufacturers div img { margin: auto; max-width: 100%; max-height: 100%; }

.showroom { overflow: hidden; }
.showroom .image { float: left; margin-bottom: 10px; margin-right: 10px; height: 160px; }
.showroom .image img { height: 100%; }




.prefooter { content: ""; display: block; clear: both; }
footer.page { padding: 40px; font-size: 0.8rem; margin-left: 50px; top: 100%; position: absolute; right: 0; left: 0; }
footer.page .wrapper { padding-top: 20px; border-top: 3px solid #FD9E00; display: grid; grid-template-areas: 'npo npo' 'pdr cb' 'cpr cpr'; grid-template-columns: auto 200px; }

footer.page .private-data-rules { grid-area: pdr; }

footer.page .created-by { font-size: 11px; overflow: hidden; width: 200px; grid-area: cb; }
footer.page .created-by .znak { float: left; line-height: 2.4em; margin-right: 20px; }
footer.page .created-by .znak img { vertical-align: middle; }
footer.page .created-by .text { line-height: 1.2em; }

footer.page .copyrights { margin-top: 20px; grid-area: cpr; }
footer.page .non-public-offer { grid-area: npo; margin-bottom: 20px; max-width: 800px; }



.goto-backoffice { width: 50px; height: 50px; border-radius: 50px; background-color: #FFC900; background-image: url(/backoffice/images/backoffice-icon.svg); background-position: center; background-repeat: no-repeat; background-size: contain; position: fixed; bottom: 100px; right: 20px; z-index: 100; box-shadow: 0 0 10px rgba(0,0,0,0.3); }


.pulications { position: relative; margin-left: 40px; margin-right: 40px; }
.pulications-list { display: flex;  justify-content: center; }
.publication-tile { margin-left: 20px; margin-right: 20px; text-align: center; }


/* Zoomer */
.zoomer-dialog { position: fixed; top: 0; bottom: 0; right: 0; left: 0; z-index: 999999; }
.zoomer-slider { position: absolute; top: 0; right: 0; left: 0; bottom: 0; z-index: 1; margin: auto; }
.zoomer-bg { position: absolute; top: 0; right: 0; left: 0; bottom: 0; background-color: rgba(255,255,255,0.9); cursor: zoom-out; }
.zoomer-close-button { width: 40px; height: 40px; position: absolute; top: 20px; right: 20px; z-index: 1; cursor: pointer; background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40"><path d="M19.99999948 21.85521205l14.14488843 14.14478793 1.85511105-1.85463503-14.14593418-14.14478793L35.99999896 5.85468888l-1.85511105-1.85468742-14.14488843 14.14578336L5.85505876 4.00000146 4 5.85468888l14.14494072 14.14588814L4 34.14536495l1.85505876 1.85463503z"/></svg>'); }
.zoomer-prev { width: 30px; height: 30px; position: absolute; top: 50%; left: 20px; z-index: 1; transform: translateY(-50%); cursor: pointer; background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="33" height="80"><path fill="rgb(0, 0, 0)" fill-opacity="1" d="M33 80h-9.438487L0 39.966251 23.561513 0H33L9.438296 39.966251z"/></svg>'); background-size: auto 100%; background-repeat: no-repeat; background-position: center; }
.zoomer-next { width: 30px; height: 30px; position: absolute; top: 50%; right: 20px; z-index: 1; transform: translateY(-50%); cursor: pointer; background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="33" height="80"><path fill="rgb(0, 0, 0)" fill-opacity="1" d="M0 80h9.4384871L33 39.966251 9.4384871 0H0l23.561704 39.966251z"/></svg>'); background-size: auto 100%; background-repeat: no-repeat; background-position: center; }
.zoomer-slick { height: 100%; }
.zoomer-slick .slick-list, .zoomer-slick .slick-track { height: 100%; }
.zoomer-slide { position: relative; }
.zoomer-slide .img { text-align: center; }
.zoomer-slide .img img { position: absolute; top: 0; bottom: 0; left: 0; right: 0; max-width: 100%; max-height: 100%; margin: auto; z-index: 1; }
.zoomer-slide .text-wrapper { position: absolute; width: 100%; box-sizing: border-box; text-align: center; background-color: rgba(255,255,255,0.9); padding: 10px; color: #000000; bottom: 0; z-index: 1; }
.zoomer-slide .text-wrapper:empty { display: none; }
.zoomer-slide .caption { font-size: 1.4em; font-weight: 800; margin-bottom: 10px; }
.zoomer-slide .summary {  }
.zoomer-slide .bg { position: absolute; top: 0; bottom: 0; left: 0; right: 0; z-index: 0; cursor: zoom-out; }


/* Gallery */
.gallery-box {}
.gallery-box .item {}
.gallery-box .item a {}
.gallery-box .item a img {}


/* Breadcrumbs  */
.breadcrumbs { font-size: 0.8rem; padding: 0; list-style: none; overflow: hidden; line-height: 1em; margin-bottom: 1em; }
.breadcrumbs li { display: inline-block; }
.breadcrumbs li::after { content:'→';/*›*/ padding: 0 10px; }
.breadcrumbs li:last-child::after { content: ""; padding: 0; }
.breadcrumbs li a {  }
.breadcrumbs li a:hover {  }


.artcallback-main-btn { background: #0FBCAD; }
.artcallback-main-btn:hover { background: #0ba699; }


/* Slider */
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; -webkit-touch-callout: none; -khtml-user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
.slick-list { position: relative; splay: block; overflow: hidden; margin: 0; padding: 0; }
.slick-list:focus { outline: none; }
.slick-list.dragging { cursor: pointer; cursor: hand; }
.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); -moz-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); -o-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
.slick-track { position: relative; top: 0; left: 0; display: block; margin-left: auto; margin-right: auto; }
.slick-track:before, .slick-track:after { display: table; content: ''; }
.slick-track:after { clear: both; }
.slick-loading .slick-track { visibility: hidden; }
.slick-slide { display: none; float: left; height: 100%; min-height: 1px; }
[dir='rtl'] .slick-slide { float: right; }
.slick-slide img { display: block; }
.slick-slide.slick-loading img { display: none; }
.slick-slide.dragging img { pointer-events: none; }
.slick-initialized .slick-slide { display: block; }
.slick-loading .slick-slide { visibility: hidden; }
.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }
.slick-arrow.slick-hidden { display: none; }




.dialog-inform {  }
.dialog-inform .wrapper { max-width: 600px; min-width: 300px; width: 50%; margin-left: auto; margin-right: auto; }
.dialog-inform .image { width: 33%; float: left; text-align: center; padding-right: 30px; box-sizing: border-box; }
.dialog-inform .image img { object-fit: contain; width: 100px; height: 100px; }
.dialog-inform .cp { overflow: hidden; margin-left: 33%; }
.dialog-inform .cp .caption { font-weight: 900; margin-bottom: 10px; }
.dialog-inform-order {  }
.dialog-inform-order .wrapper {  }


@media (max-width: 1340px) {
    .manufacturers .wrapper { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }
}

@media (max-width: 1210px) {
    .manufacturers .wrapper { grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); }
}

@media (max-width: 1073px) {
    .manufacturers .wrapper { grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); }
}

@media (max-width: 980px) {
    html { font-size: 13px; }
    header.page { padding-right: 20px; padding-left: 20px; }
    header.page .logo { flex-basis: 120px; }
    header.page .infobar { flex-basis: 170px; }

    .manufacturers .wrapper { grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); margin-bottom: 0; }

    footer.page { padding-right: 20px; padding-left: 20px; }

}

@media (max-width: 780px) {
    .toggle-nav { display: block; }
    header.page nav.main { position: absolute; box-shadow: 0 5px 10px rgba(0,0,0,0.05);  width: 100%; visibility: hidden; }
    header.page nav.main.active { visibility: visible; }

    header.page nav.main ul { flex-direction: column; }
    header.page .toggle-nav:active + nav.main { visibility: visible; }

    .manufacturers .wrapper { grid-template-columns: repeat(auto-fill, minmax(100px, 1fr)); }

    footer.page { padding-bottom: 10px; }
}

@media (max-width: 719px) {
    .semantic-node { margin-top: 50px; margin-bottom: 50px; }

    footer.page .copyrights { text-align: center; }
}

@media (max-width: 640px) {
    footer.page .private-data-rules { text-align: center; }
    footer.page .created-by { margin: auto; }
    footer.page .wrapper { grid-template-areas: 'pdr' 'cpr' 'cb'; grid-template-columns: auto; }
    footer.page .created-by { margin-top: 20px; }
}

@media (max-width: 480px) {
    aside.fixed-bar { width: 35px; line-height: 35px; }
    aside.fixed-bar div { letter-spacing: 5px; }

    .layout { margin-left: 35px; }


    header.page { padding-left: 10px; padding-top: 10px; }
    header.page .logo { flex-basis: 80px; }
    header.page nav.main { top: 80px; }
    header.page .infobar { flex-basis: 130px; align-self: flex-end; }
    header.page .infobar::before { left: -20px; }
    header.page .infobar .tel_ { font-size: 1.2rem; }
    header.page .infobar .label { font-size: 0.753rem; }
    header.page .infobar .drop-down .tel { font-size: 1.2rem; }

    .toggle-nav { top: 25px; width: 35px; height: 35px; }

    footer.page { margin-left: 35px; padding-right: 10px; padding-left: 10px; }
}