body {
    -webkit-font-smoothing: subpixel-antialiased;
    font-smooth: always;
    background: #242424 url(../images/bg.png) no-repeat top right;
    font-family: 'Open Sans', sans-serif;
    overflow-x: hidden;
    height: 100vh;
}
a.logo {
    position: absolute;
    top: 50px;
    left: 0;
    background: transparent url(../images/logo.png) no-repeat 0 0;
    width: 207px;
    height: 109px;
}
section {
    padding-top: 220px;
}
a.mainLink {
    position: relative;
    margin-bottom: 40px;
    display: block;
    width: 100%;
}
a.mainLink span {
    position: absolute;
    display: block;
    background: transparent url(../images/bg_mainlink.png) no-repeat 0 0;
    width: 221px;
    height: 114px;
    top: 30px;
    left: -18px;
    background-size: cover;
    transition: all 0.5s ease;
    color: #ffffff;
    font-size: 22px;
    font-family: 'CorporateCondensed-Bold';
    padding: 41px 0 0 28px;
}
a.mainLink:hover span {
    background: transparent url(../images/bg_mainlink_hover.png) no-repeat 0 0;
    background-size: cover;
}
a.mainLink img {
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: perspective(1px) translateZ(0);
    transform: perspective(1px) translateZ(0);
    box-shadow: 0 0 1px transparent;
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -webkit-transition-property: transform;
    transition-property: transform;
    max-width: 100%;
}
a.mainLink:hover img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
}
a.mainLink em {
    display: block;
    width: 100%;
    overflow: hidden;
}
h1 {
    color: #ffffff;font-family: 'CorporateCondensed-Bold';
    font-size: 36px;
    margin: 0 0 40px 0;
}
h2 {
    color: #ffffff;
    font-family: 'CorporateCondensed-Bold';
    font-size: 24px;
    margin: 15px 0 30px 0;
}
p {
    color: #ffffff;
    font-size: 16px;
    font-weight: 400;
    line-height: 30px;
    padding: 15px 0;
    text-align: justify;
}
.content {
    padding-bottom: 45px;
}
.content a {
    color: #a78a44;
}
.quote {
    width: 100%;
    height: 400px;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    color: #ffffff;
    font-size: 24px;
    font-weight: 600;
    line-height: 40px;
    background: transparent url(../images/bg_quote.jpg) no-repeat center center fixed;
    margin: 25px 0;
}
.quote span {
    position: relative;
    padding-left: 30px;
    background: transparent url(../images/bg_quote.svg) no-repeat 0 12px;
}
.quote span:before {

    position: absolute;
    content: "";
    width: 20px;
    height: 17px;
    top: 0;
    left: 0;
}
img.portrait {
    float: right;
    margin: -145px -100px 20px 20px;
}
.lead {
    font-weight: 600;
}
.imageContainer .container {
    width: 1180px;
}
.imageContainer {
    padding: 25px 0;
}
.imageContainer img {
    max-width: 100%;
}
.costumer p {
    background: transparent url(../images/bg_costumer.svg) no-repeat 0 24px;
    padding-left: 30px;
}
.costumer i {
    color: #fff;
    padding-left: 30px;
    font-size: 14px;
}
.costumer { padding-bottom: 25px }

a.refItem {
    width: 100%;
    position: relative;
    display: block;
    margin-bottom: 40px;
}
a.refItem img {
    max-width: 100%;
    position: relative;
    z-index: 1;
    display: block;
}
a.refItem span {
    opacity: 0;
    display: block;
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    background: rgba(36, 36, 36, 0.8);
    color: #ffffff;
    font-size: 18px;
    line-height: 20px;
    font-family: 'CorporateCondensed-Bold';
    padding: 20px;
    z-index: 3;
    transition: all 0.5s ease;
}
a.refItem:hover span {
    opacity: 1;
}

a.refItem:after {
    opacity: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(36, 36, 36, 0.5);
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    transition: all 0.5s ease;
}
a.refItem:hover:after {
    opacity: 1;
}
input,textarea {
    height: 50px;
    border: 1px solid #5e5e5e;
    background-color: #3a3a3a;
    margin-bottom: 20px;
    width: 100%;
    padding: 0 10px;
    line-height: 48px;
    color: #fff;
    font-size: 16px;
}
label {
    color: #ffffff;
    font-size: 16px;
    line-height: 35px;
    display: inline-block;
    cursor: pointer;
}
textarea {
    height: 260px !important;
    resize: none;
    line-height: normal;
    padding: 10px;
}
form button {
    height: 60px;
    background-color: #a78a44;
    line-height: 60px;
    color: #ffffff;
    font-size: 18px;
    font-family: 'CorporateCondensed-Bold';
    border: 0;
    padding: 0 30px;
    margin-top: 10px;
    cursor: pointer;
}
.articleItem {
    width: 100%;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    margin-bottom: 80px;
}
.articleItem.right {
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
.articleItem .text {
    flex: 1;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    height: 100%;
}
.articleItem img {
    margin-right: 20px;
}
.articleItem.right img {
    margin: 0 0 0 20px;
}
.articleItem a {
    color: #a78a44;
    font-size: 18px;
    font-family: 'CorporateCondensed-Bold';
}
.articleItem a.title {
    color: #ffffff;
    font-size: 24px;
}
ul,ol {
    color: #ffffff;
    font-size: 16px;
    font-weight: 400;
    line-height: 30px;
    padding: 15px 0;
    margin: 0 0 0 40px;
}
.desktop-hidden { display: none }
.mobile-hidden { display: block }
div.mobileHeader,
div.mobileMenu,
.mobile-nav,
div.mobileLayer { display: none }

@media (min-width: 767px) and (max-width: 1200px) {
    .imageContainer .container { width: 100% }
}
@media (min-width: 767px) and (max-width: 1024px) {
    .imageContainer .container { width: 100% }
    .quote span { width: 710px }
    html, body { width: 100% }
    img.portrait { margin: -100px 0 20px 20px }
}
@media (max-width: 767px) {
    .imageContainer .container { width: 100% }
    .quote span { width: 100%; padding: 0 20px ; background-position: 20px 12px; text-align: center }
    html, body { height: 100%; width: 100%; overflow: visible }
    .c-menu,.c-button { display: none }
    .o-wrapper { width: 100%; position: relative }
    img.portrait { margin: 0 -20px 20px -20px; float: none; max-width: calc(100% + 40px) }
    a.logo { display: none }
    .quote { background: transparent url(../images/bg_quote.jpg) no-repeat center center }
    section { padding-top: 60px }
    a.mainLink { margin-bottom: 20px }
    body { background-image: url(../images/bg_mobile.png); background-size: 100% auto }
    p { font-size: 13px; line-height: 24px; padding: 5px 0 }
    ul, ol { font-size: 13px; line-height: 24px; padding: 5px 0; margin: 0 0 0 20px }
    h1 { font-size: 24px }
    .desktop-hidden { display: block }
    .mobile-hidden { display: none }
    .c-menu, .o-wrapper { -webkit-transition: none }
    div.mobileHeader { display: block; width: 100% }
    div.mobileMenu { display: block; }
    div.mobileMenu.open { height: 100%; }
    div.mobileMenuTop { display: block; width: 100%; height: 100px }
    a.mobileLogo { display: block; width: 151px; height: 80px; background-size: cover; top: 10px; background: transparent url(../images/logo.png) no-repeat 0 0; background-size: cover; float: left; margin-top: 10px }
    .mobileNav a.mobileMenuBtn { padding: 23px 0 0 22px; text-transform: uppercase; text-align: center; display: block; float: right; height: 60px; width: 60px;background-color: #a78a44; margin: 20px 20px 0 0 }
    .mobileNav a.mobileMenuBtn i { display: block; width: 16px; height: 2px; background-color: #fff; margin: 0 0 4px 0; clear: both }
    .mobileMenuBottom { height: 156px; width: 100%; padding-top: 15px }
    div.blueInfoBox, div.redInfoBox { width: 110px; height: 110px; font-size: 16px; font-weight: 400; line-height: 19px; padding: 10px; margin-right: 10px }
    div.blueInfoBox span { font-size: 24px; line-height: 29px; padding-top: 5px }
    div.redInfoBox { font-size: 14px; line-height: 17px; padding-right: 0; margin-right: 0 }
    div.redInfoBox i { font-style: normal; font-size: 14px; line-height: 17px }
    div.redInfoBox span { font-size: 24px; line-height: 29px }
    div.redInfoBox em { font-size: 14px; line-height: 17px; left: 10px; bottom: 10px }
    .mobileMenuBottom .col-5 { width: 240px }
    .mobileMenuBottom .col-7 { width: calc(100% - 245px) !important; -webkit-width: calc(100% - 245px) !important; -moz-width: calc(100% - 245px) !important; padding-right: 0 !important; }
    .h220 { height: 110px }
    .mobileMenuBottom .col-7 img { max-height: 100% }
    .mobile-nav.open { display: block; visibility: visible; background: #242424; height: 100%; position: fixed; }
    .mobile-nav { width: 100%; margin: 0; padding: 0; z-index: 99; position: absolute; top: 0; left: 0; float: none; height: auto; line-height: normal;  }
    .mobileLayer.open { overflow-y: hidden; display: block; width: 100%; height: 100%; min-height: 100%; z-index: 11; position: absolute; top: 0; left: 0; background: #242424; visibility: visible }
    .closeMobileMenu { display: block; width: 60px; height: 60px; background: #a78a44 url(../images/close.png) no-repeat center center; text-align: center; position: fixed; top: 20px; right: 20px; z-index: 10 }
    .closeMobileMenu i { vertical-align: middle }
    div.mobileTopLevel { width: 100%; list-style: none; padding: 40px 25px 30px 40px; height: 100%; }
    div.mobileTopLevel .helper { display: -ms-flexbox; display: -webkit-flex; display: flex; -webkit-flex-direction: column; -ms-flex-direction: column; flex-direction: column; -webkit-flex-wrap: nowrap; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-align-content: stretch; -ms-flex-line-pack: stretch; align-content: stretch; -webkit-align-items: flex-start; -ms-flex-align: start; height: 100%; align-items: flex-start; overflow-y: scroll }
    div.mobileTopLevel .helper > span { width: 100%; display: block }
    div.mobileTopLevel  span a { width: 100%; padding: 12px 0; color: #d3d3d3; font-family: 'CorporateCondensed-Bold'; font-size: 16px; position: relative; display: block; }
    div.mobileTopLevel a.hasSublevelMenu:after { position: absolute; right: 12px; top: 24px; color: #1a4078; font-size: 10px }
    div.mobileTopLevel ul.mobileSecondLevel { display: none; position: absolute; top: 0; left: 0; padding: 0; margin: 0; list-style: none; width: 100%; min-height: 100%; z-index: 10;background: #242424 }
    div.mobileTopLevel > a.active { border-radius: 2px; color: #ec9613 !important }
    div.mobileTopLevel > a.active i { color: #ec9613 !important }
    div.mobileTopLevel > a.active i:before { vertical-align: middle }
    div.mobileTopLevel > ul.mobileSecondLevel li  { height: 420px; display: block }
    ul.mobileSecondLevel span { display: block; height: 60px; line-height: 60px; padding: 0 0 0 40px; margin: 20px 20px 40px 0; width: calc(100% - 20px); background: rgba(167, 138, 68, 0.5) url(../images/prev.png) no-repeat top 23px left 20px; color: #ffffff; font-size: 16px; font-family: 'CorporateCondensed-Bold'; }
    ul.mobileSecondLevel span em { font-style: normal }
    ul.mobileSecondLevel span em.closeThis { font-style: normal; float: right; display: block; height: 60px; width: 60px; text-align: center;  background: #a78a44 url(../images/close.png) no-repeat center center; margin: 0; z-index: 4 }
    ul.mobileSecondLevel span i { font-size: 40px; color: #ec9613; vertical-align: middle; margin-right: 15px; line-height: 60px; float: left }
    ul.mobileSecondLevel span i:before { vertical-align: middle }
    ul.mobileSecondLevel span em i { color: #f3efe4; font-size: 10px; line-height: 40px; margin: 0 0 0 14px }
    ul.mobileSecondLevel li a {color: #d3d3d3; font-family: 'CorporateCondensed-Bold'; font-size: 16px; display: block; width: 100%; padding: 9px 20px 9px 40px }
    ul.mobileSecondLevel li a.active {color: #862235;background-color: #fef6e8; border-radius: 2px; }
    h2 { font-size: 24px; line-height: 28px }
    .costumer p { background: transparent url(../images/bg_costumer.svg) no-repeat 0 13px }
    .mobileMenu .menuBottom { padding: 20px 0 0 0 }
    .mobileMenu .menuBottom:before { left: 0 }
    div.mobileTopLevel .helper > span a.hasSublevelMenu:after { position: absolute; right: 0; top: 15px; background: transparent url(../images/hassubmenu.svg) no-repeat 0 0; width: 2px; height: 8px; content: "" }
    .articleItem { display: block; margin-bottom: 40px }
    .articleItem img { margin: 0 0 20px 0 !important; max-width: 100% }
    a.mainLink span {
        width: 178px;
        height: 91px;
        font-size: 17px;
        padding: 35px 0 0 20px;
        left: -15px;
    }
}