html,body{
    width: 100%;
}
@font-face {
    font-family: "HelviticaNeue";
    src: url("fonts/HelveticaNeueCyr-Roman.woff2") format("woff2"),
         url("fonts/HelveticaNeueCyr-Roman.woff") format("woff"),
         url("fonts/HelveticaNeueCyr-Roman.ttf") format("truetype");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "HelviticaNeue";
    src: url("fonts/HelveticaNeueCyr-Bold.woff2") format("woff2"),
         url("fonts/HelveticaNeueCyr-Bold.woff") format("woff"),
         url("fonts/HelveticaNeueCyr-Bold.ttf") format("truetype");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "HelviticaNeue";
    src: url("fonts/HelveticaNeueCyr-Italic.woff2") format("woff2"),
         url("fonts/HelveticaNeueCyr-Italic.woff") format("woff"),
         url("fonts/HelveticaNeueCyr-Italic.ttf") format("truetype");
    font-weight: 400;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: "HelviticaNeue";
    src: url("fonts/HelveticaNeueCyr-BoldItalic.woff2") format("woff2"),
         url("fonts/HelveticaNeueCyr-BoldItalic.woff") format("woff"),
         url("fonts/HelveticaNeueCyr-BoldItalic.ttf") format("truetype");
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}
/* Clear Fix */
.stage:after,
ul.workList:after,
.wrapper:after,
.top ul.menu:after,
ul.thumbnails:after,
p.paragraph.withImage:after,
.contacts-footer:after,
ul.floatedElem:after,
.links-footer:after,
.fRight:after,
div.withImage:after,
div.aboutUs .wrapper > .section:after{
    content: "";
    display: table;
    clear: both;
}
.hide,
.catalogViewSwitcher,
.modeSwitcher,
div:not(.objectControl) .window .titleBar .buttons a.minimize,
div:not(.objectControl) .window .titleBar .buttons a.maximize,
ul.workList li.item .imageTitle,
div.withImage div.images .imageTitle,
a.button.blank svg.blank{
    display: none;
}
ul.workList > li.item:before,
div.ranges ul li:before,
.feedbackFormList > ul > li:before,
ul.fullMenu li.item:before,
ul.floatedElem > li.item:before,
ul.anchorsList li.item:before,
div.anchors-menu ul > li.item:before{
    content: "";
}
body.catalog div.section.content > .catalog,
body.imageGallery div.section.content > .imageGallery.imageGallery,
body.news div.section.content > .news.news,
body.feedbackForm div.section.content > .feedbackForm.feedbackForm,
.catalogUnit div.content > div.catalogUnit,
body.catalogVendor div.section.content > .catalogVendor,
body.catalogCategory div.section.content > .catalogCategory,
body.order div.section.content > .order,
body.order div.section.content > .order h1,
body.newsRubric div.section.content > .newsRubric.newsRubric,
body.newsArticle div.section.content > .newsArticle.newsArticle,
body.imageGalleryRubric div.section.content > .imageGalleryRubric.imageGalleryRubric,
body.user div.section.content > div.user,
body.accountEditing div.section.content > div.accountEditing,
body.passwordChanging div.section.content > div.passwordChanging{
    margin-top: 0;
}
#container{
    display: flex;
    display: flexbox;
    flex-direction: column;
    height: 100%;
    box-sizing: border-box;
}
.top{
    height: auto;
    padding: 0;
    position: relative;
    flex-shrink: 0;
    background-color: #fff;
    height: 93px;
}
.stage{
    overflow: visible;
    padding-bottom: 0;
    flex-grow: 1;
    flex-shrink: 0;
    min-height: 1px;
}
.footer{
    position: relative;
    height: auto;
    border: none;
    background: #333;
    padding: 0 0 0 0;
    flex-shrink: 0;
}
.wrapper{
    overflow: visible;
    position: relative;
    min-width: 0;
    max-width: 970px;
    margin: 0 auto;
    padding: 0 15px;
    box-sizing: border-box;
}
.layoutA{
    width: 300px;
    padding: 0;
    margin: 132px -300px 56px 0;
    position: relative;
    z-index: 2;
}
body.common .layoutB{
    width: 100%;
    margin: 0;
    padding: 52px 0 56px 0;
    box-sizing: border-box;
}
body.common.main .layoutB{
    padding-top: 0;
    padding-bottom: 56px;
}
body.common .layoutA + .layoutB{
    padding-left: 361px;
    max-width: 1700px;
}
.footer .fLeft{
    float: none;
    width: 100%;
    margin: 0 0 0 0;
    padding: 21px 0 14px 0;
}
.footer .fCenter{
    float: none;
    width: 100%;
    margin: 0 0 0 0;
    padding: 24px 0 20px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.15);
}
.footer .fRight{
    float: none;
    width: 100%;
    margin: 0 0 0 0;
}
div#container .childSets div.item.map{
    width: auto;
    height: auto;
}
div#container .childSets div.item a{
    border-bottom: none;
}
.managementMode #container{
    padding-top: 32px;
}
.managementPanel{
    background: #f5f8f9;
    overflow-x: auto;
}
div.login form a.link.page,
body.user div.content div.user a {
    font: 20px/24px "HelviticaNeue";
    display: table;
    float: none;
    width: auto;
}
div.login form a.link.page{
    padding-top: 12px;
}
div.login form{
    padding-top: 0;
}
.feedbackFormList.list > ul{
    margin: 25px 0 0 0;
}
.feedbackFormList.list > ul > li.item {
    margin: 0 0 49px 0;
    padding: 0;
}
.feedbackFormList.list > ul > li.item span.text.description{
    font-style: normal;
}
.feedbackFormList.list > ul > li.item .heading {
    margin-bottom: 30px;
}
.windowObject.objectControl div.transparentBackground{
    display: none;
}
div.transparentBackground{
    opacity: 0.5;
}
.old-ajaxUpdating{
    position: relative;
    opacity: 0.5;
    visibility: visible !important;
}
.old-ajaxUpdating:before{
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 10;
}
a[href*='tel:'] {
    text-decoration: none;
    color: inherit;
}
a[href*='tel:']:hover {
    color: inherit;
}
/* Выделение польователем */
*::selection{
    color: #fff;
    background: #3878be;
}
.managementPanel .identification .user svg{
    display: none;
}
.contextMenuContainer{
    position: fixed;
}
.compatBackground{
    position: fixed;
}
body.withoutScroll{
    overflow: auto;
}
div.compatWindowWarning{
    box-sizing: border-box;
}
div.compatWindowWarning .browserList .outer,
div.compatWindowWarning .browserList .inner,
div.compatWindowWarning span.heading,
div.compatWindowWarning .browserList,
div.compatWindowWarning .browserList ul{
    width: auto;
}
div.compatWindowWarning .browserList ul li{
    width: 50%;
}
div.compatWindowWarning .verIdentBlock div a.button{
    font-size: 20px;
    line-height: 24px;
    font-weight: 700;
    border: 1px solid #3878be;
    padding: 9px 30px 9px 28px;
    color: #fff;
    background: #3878be;
    text-decoration: none;
    width: auto;
    height: auto;
    display: inline-block;
    left: 0;
    margin: 0;
}
div.compatWindowWarning span.heading{
    margin-bottom: 26px;
}
div.compatWindowWarning span.heading h1{
    font: 36px/40px "HelviticaNeue";
    padding-left: 0;
    background: transparent;
    color: #222;
}
div.compatWindowWarning div.closeButton{
    background: url('icons/close.svg') no-repeat 0 0,
                url('icons/close-h.svg') no-repeat 0 -100px;
    right: 20px;
    top: 20px;
    width: 22px;
    height: 22px;
}
div.compatWindowWarning div.closeButton:hover{
    background-image: url('icons/close-h.svg');
    background-position: 0 0;
}
div.compatWindowWarning .browserList ul li div p,
div.compatWindowWarning p,
div.compatWindowWarning a{
    font: 20px/24px "HelviticaNeue";
    color: #555;
}
div.compatWindowWarning .browserList ul li div a{
    font: 24px/30px "HelviticaNeue";
}
div.compatWindowWarning .browserList ul li div p{
    font-size: 12px;
    line-height: 16px;
}
div.compatWindowWarning a{
    color: #000000;
}
div.compatWindowWarning a:hover{
    color: #3878be;
}
div.compatWindowWarning .bold{
    font-family: "HelviticaNeue";
    font-weight: 700;
}
div.compatWindowWarning .verIdentBlock{
    text-align: center;
}
.hidden {
    display: none !important;
}

@media screen and (max-width: 1024px){
    div.compatWindowWarning{
        width: 98%;
        left: 1%;
        margin-left: 0;
        box-sizing: border-box;
        padding: 20px;
    }
    div.compatWindowWarning div.closeButton{
        top: 10px;
        right: 10px;
    }
}
@media screen and (max-width: 768px){
    div.compatWindowWarning .browserList ul{
        padding-top: 65px;
    }
    div.compatWindowWarning .browserList ul li{
        width: 100%;
    }
}
@media screen and (max-width: 500px){
    div.compatWindowWarning span.heading h1{
        font-size: 30px;
        line-height: 36px;
    }
}