@font-face {
    font-family: 'Montserrat';
    src: url("../fonts/Montserrat/Montserrat-Bold.ttf") format("truetype"),
    url('../fonts/Montserrat/Montserrat-Bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url("../fonts/Montserrat/Montserrat-Regular.ttf") format("truetype"),
    url('../fonts/Montserrat/Montserrat-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

html,
body {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    min-width: 300px;
    min-height: 1000px;
    background: #fff;
    color: #17347A;
    font-family: Montserrat, serif;
}

.container {
    width: 80%;
}

.headLang {
    float: right;
}

.header .container .head {
    display: inline-block;
}

.mainGround {
    background: url(../images/background.svg) no-repeat top center;
    background-size: cover; /* Современные браузеры */
}

.main-s {
    font-style: normal;
    font-size: calc((100vw - 500px) / (1920 - 500) * (39 - 20) + 20px);
    line-height: 140%;
    color: #FF7448;
    font-family: Montserrat, serif;
    margin: 0;
}

.aboutUs {
    font-style: normal;
    font-weight: bold;
    font-size: calc((100vw - 500px) / (1920 - 500) * (96 - 36) + 36px);
    color: #FF7448;
}

.aboutUs-description {

    font-style: normal;
    font-weight: 600;
    font-size: calc((100vw - 500px) / (1920 - 500) * (39 - 20) + 20px);
    color: #17347A;
}

.firm {
    font-size: calc((100vw - 500px) / (1920 - 500) * (128 - 42) + 42px);
    font-style: normal;
    font-weight: bold;
    color: #fff;
    line-height: 120%;
}

.header-site {
    font-style: normal;
    font-size: calc((100vw - 500px) / (1920 - 500) * (22 - 18) + 18px);
    line-height: 35px;
    font-weight: bold;
    margin: 5px 0;
}

.header-site-content {
    font-style: normal;
    font-weight: 300;
    font-size: 18px;
    line-height: 140%;
}

.header-phone, .header-lang {
    height: 55px;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}

.header {
    padding-top: 40px;
    color: #fff;
    font-weight: normal;
}
.header-pre {
    padding: 30px 0
}

.service-background {
    background: #EBF2F8;
    padding: calc((100vw - 500px) / (1920 - 500) * (60 - 20) + 20px);
    height: 100%;
}

.service-number {
    font-family: Montserrat, serif;
    font-style: normal;
    font-weight: normal;
    font-size: 18px;
    line-height: 120%;
    color: #FF7448;
    margin-bottom: 20px;
}

.service-content {
    font-style: normal;
    font-weight: 600;
    font-size: calc((100vw - 500px) / (1920 - 500) * (39 - 8) + 8px);
    line-height: 150%;
}

.service-padding {
    padding-top: 15px;
    padding-bottom: 15px;
}

.serviceMain {
    font-family: Montserrat, serif;
    font-style: normal;
    font-weight: bold;
    font-size: calc((100vw - 500px) / (1920 - 500) * (96 - 36) + 36px);
    line-height: 120%;
    color: #FF7448;
    margin-bottom: 30px;
}

.footer {
    background-color: #17347A;
    color: #fff;
}

.footer-main {
    font-family: Montserrat, serif;
    font-style: normal;
    font-weight: 600;
    font-size: calc((100vw - 500px) / (1920 - 500) * (22 - 18) + 18px);
    line-height: 28px;
    margin-top: calc((100vw - 500px) / (1920 - 500) * (30 - 30) + 30px);
}

.footer-content {
    font-family: Montserrat, serif;
    font-style: normal;
    font-weight: 300;
    font-size: calc((100vw - 500px) / (1920 - 500) * (15 - 10) + 10px);
    line-height: 21px;
    letter-spacing: 0.005em;
}

.footer .container {
    padding: 60px;
}

.block-margin {
    margin: 150px 0 50px 0;
}

.logo-small {
    height: 50px;
}

.aboutUs-block {
    padding: 30px;
}

.display-table {
    display: table;
}

.display-table div {
    display: table-cell;
}

.display-table div:first-child {
    vertical-align: top
}

.display-table .logo-small {
    margin: 0 15px
}

.display-table div span {
    margin-top: 15px;
    display: block
}

.language-switcher:hover {
    cursor: pointer;
}

.languages-klisl a {
    color: #fff;
}

.languages-klisl a:hover {
    text-decoration: none;
}

.languages-klisl a:active {
    text-decoration: none;
}

.footer img {
    height: calc((100vw - 500px) / (1920 - 500) * (90 - 50) + 50px);
}

.footer-phone {
    font-size: calc((100vw - 500px) / (1920 - 500) * (22 - 6) + 6px);
}

.preFooter {
    text-align: center;
    color: #FF7448;
    font-size: 39px;
    font-weight: 600;
    margin-bottom: 50px;
}

@media (max-width: 880px) {
    .footer-content {
        font-size: 10px;
    }
}

@media (max-width: 767px) {
    .service-background {
        padding: 60px;
    }

    .service-content {
        font-size: calc((100vw - 500px) / (1920 - 500) * (39 - 20) + 20px);
    }

    .footer-content {
        font-size: 15px;
    }

    .footer-main {
        margin-top: 70px;
    }

    .footer-phone {
        font-size: calc((100vw - 500px) / (1920 - 500) * (22 - 18) + 18px);
    }

    .serviceBlock {
        display: block !important;
    }
}

@media (max-width: 500px) {

    .container {
        width: 90%;
    }

    .aboutUs-block {
        padding: 15px 0;
    }

    .block-margin {
        margin: 50px 0;
    }

    .footer-content .languages-klisl {
        margin-top: 50px;
    }

    .header .container .header-phone {
        display: none;
    }

    .header .container .col-sm-3 {
        float: right;
    }

    .header .container .header-lang {
        display: table;
    }

    .header-lang .header-lang-span {
        display: table-cell;
        vertical-align: bottom;
    }

    .service-content {
        font-size: 20px;
    }
}

/* ФЛАГИ */
.sl-nav {
    display: inline;
}
.sl-nav ul {
    margin:0;
    padding:0;
    list-style: none;
    position: relative;
    display: inline-block;
}
.sl-nav li {
    padding-bottom:10px;
}
.sl-nav li ul {
    display: none;
}
.sl-nav li:hover ul {
    position: absolute;
    top:29px;
    right:-15px;
    display: block;
    background: #fff;
    width: 120px;
    padding-top: 0px;
    z-index: 1;
    border-radius:5px;
    box-shadow: 0px 0px 20px rgba(0,0,0,0.2);
}
.sl-nav li:hover .triangle {
    position: absolute;
    top: 15px;
    right: -10px;
    z-index:10;
    height: 14px;
    overflow:hidden;
    width: 30px;
    background: transparent;
}
.sl-nav li:hover .triangle:after {
    content: '';
    display: block;
    z-index: 20;
    width: 15px;
    transform: rotate(45deg) translateY(0px) translatex(10px);
    height: 15px;
    border-radius:2px 0px 0px 0px;
    box-shadow: 0px 0px 20px rgba(0,0,0,0.2);
    background-color: #1f3576;
}
.sl-nav li ul li {
    position: relative;
    text-align: left;
    background: transparent;
    padding: 15px 15px;
    padding-bottom:0;
    z-index: 2;
    font-size: 15px;
    color: #3c3c3c;
}
.sl-nav li ul li:last-of-type {
    padding-bottom: 15px;
}
.sl-nav li ul li span {
    padding-left: 5px;
}
.sl-nav li ul li span:hover, .sl-nav li ul li span.active {
    color: #146c78;
}
.sl-flag {
    display: inline-block;
    box-shadow: 0px 0px 3px rgba(0,0,0,0.4);
    width: 15px;
    height: 15px;
    background: #aaa;
    border-radius: 50%;
    position: relative;
    top: 2px;
    overflow: hidden;
}

.sprite {
    background-image: url(../images/spritesheet.png);
    background-repeat: no-repeat;
    display: inline-block;
}

.sprite-am {
    width: 16px;
    height: 16px;
    background: url(../images/flag/am.svg) no-repeat !important;
}

.sprite-de {
    width: 16px;
    height: 16px;
    background: url(../images/flag/de.svg) no-repeat !important;
}

.sprite-kz {
    width: 16px;
    height: 16px;
    background: url(../images/flag/kz.svg) no-repeat !important;
}

.sprite-tr {
    width: 16px;
    height: 16px;
    background: url(../images/flag/tr.svg) no-repeat !important;
}

.sprite-uz {
    width: 16px;
    height: 16px;
    background: url(../images/flag/uz.svg) no-repeat !important;
}

.sprite-ru {
    width: 16px;
    height: 16px;
    background: url(../images/flag/ru.svg) no-repeat !important;
}

.sprite-tj {
    width: 16px;
    height: 16px;
    background: url(../images/flag/tj.svg) no-repeat !important;
}

.sprite-kg {
    width: 16px;
    height: 16px;
    background: url(../images/flag/kg.svg) no-repeat !important;
}

.sprite-us {
    width: 16px;
    height: 16px;
    background: url(../images/flag/us.svg) no-repeat !important;
}

.sprite-ge {
    width: 16px;
    height: 16px;
    background: url(../images/flag/ge.svg) no-repeat !important;
}

.sprite-by {
    width: 16px;
    height: 16px;
    background: url(../images/flag/by.svg) no-repeat !important;
}

/* END ФЛАГИ */