* {
    margin: 0;
    padding: 0;
    outline: none !important;
    box-sizing: border-box;
    font-family: 'Montserrat', sans-serif;
}

body {
    margin: 0;
    padding: 0;
    font-family: 'Montserrat', sans-serif;
    line-height: normal;
    font-size: 14px; /* IE5 Win */
    color: #000;
}

h1, h2, h3, h4, h5, h6 {
    margin: 0;
    padding: 0;
    font-size: inherit;
    font-weight: inherit;
}

h3 {
    font-weight: 500;
    font-size: 30px;
    line-height: 35px;
}

p, blockquote, ul, ol {
    margin-top: 0;
    padding-top: 0;
    margin-bottom: 10px;
}

p {
    margin-bottom: 10px;
}

button {
    outline: none !important;
}

a {
    color: #2F80ED;
}

a:hover, a:active {
    color: #ef0050;
    text-decoration: none;
}

img.left {
    float: left;
    margin: 0 1em 1em 0;
}

img.right {
    float: right;
    margin: 0 0 1em 1em;
}

a img {
    border: 0;
}

.orange {
    color: #E16857;
}

.select-cont {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    border: 1px solid #000;
    border-radius: 5px;
    overflow: hidden;
    padding-left: 15px;
}

.select-cont:before {
    content: '';
    position: absolute;
    top: 13px;
    right: 20px;
    width: 12px;
    height: 12px;
    border-left: 2px solid #000;
    border-bottom: 2px solid #000;
    transform: rotate(-45deg);
    z-index: 5;
    pointer-events: none;
}

.select-cont:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    z-index: 4;
    height: 48px;
    width: 48px;
    background-color: #fff;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    pointer-events: none;
}

.select-cont select {
    background-color: #fff;
    border-radius: 5px;
    border-color: transparent;
    box-shadow: none;
    position: relative;
    height: 48px;
    padding-right: 48px;
}

.select-cont select {
    cursor: pointer;
}

.map-point-icon {
    position: relative;
    color: #FFFFFF;
    font-weight: bold;
    font-size: 16px;
    width: 52px;
    top: -30px;
    left: -40px;
}

.map-point-icon span {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    text-align: center;
}

.baloon-address {
    max-width: 300px;
}

.baloon-title {
    display: block;
    margin-bottom: 15px;
}

input::placeholder {
    font-family: 'Montserrat', sans-serif;
    box-sizing: border-box;
}

.types-list {
    margin: 0 -10px;
}

.checkbox-inline {
    display: inline-block;
}

.types-list .checkbox-inline {
    margin: 0 10px 10px 10px;
}

.checkbox-inline input {
    width: auto;
    height: auto;
}

.contur-text {
    font-weight: 800;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #000;
    color: #fff;
}

.browser-ie .contur-text {
    text-shadow: -0 -1px 0 #000000,
    0 -1px 0 #000000,
    -0 1px 0 #000000,
    0 1px 0 #000000,
    -1px -0 0 #000000,
    1px -0 0 #000000,
    -1px 0 0 #000000,
    1px 0 0 #000000,
    -1px -1px 0 #000000,
    1px -1px 0 #000000,
    -1px 1px 0 #000000,
    1px 1px 0 #000000,
    -1px -1px 0 #000000,
    1px -1px 0 #000000,
    -1px 1px 0 #000000,
    1px 1px 0 #000000;
}

.container {
    position: relative;
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    margin-left: auto;
    margin-right: auto;
}

@media (min-width: 768px) {
    .container {
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media (min-width: 992px) {
    .container {
        padding-left: 25px;
        padding-right: 25px;
    }
}

@media (min-width: 1260px) {
    .container {
        width: 1230px;
    }
}

/* Header */

header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10;
    background-color: #fff;
    transition: all .5s ease, right 0s;
}

.compensate-for-scrollbar header {
    right: 17px;
}

header.scroll {
    box-shadow: 0 10px 30px rgba(0, 0, 0, .1);
}

header .top-part {
    position: relative;
}

header .top-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 80px;
    transition: all .5s ease;
}

header.scroll .top-row {
    height: 50px;
}

header .top-row .left-part {
    cursor: pointer;
}

header .top-row .left-part,
header .top-row .right-part {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

header .top-logo {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    color: #000;
    text-decoration: none;
    margin-left: 35px;
}

header .top-logo .text {
    margin-left: 15px;
}

header .top-logo .text span {
    display: block;
    text-transform: uppercase;
}

header .top-logo .text .title {
    font-size: 14px;
    font-weight: 700;
}

header .top-logo .text .desc {
    font-size: 8px;
    font-weight: 600;
}

header .email-phone {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    text-align: right;
}

header .email-phone .email:after {
    content: '';
    display: inline-block;
    width: 45px;
    height: 1px;
    background-color: #000;
    line-height: 0;
    vertical-align: middle;
    margin: 0 7px;
}

header .email-phone a {
    color: #000;
    text-decoration: none;
}

header .email-phone .phone a {
    font-size: 18px;
    line-height: 22px;
    font-weight: bold;
}

header .email-phone .phone a .icon {
    display: none;
}

body.admin-bar header {
    top: 32px;
}

header .xs-menu {
    position: absolute;
    left: -340px;
    top: 80px;
    opacity: 0;
    visibility: hidden;
    width: 340px;
    z-index: 30;
    padding: 50px 30px 50px 50px;
    background-color: #fff;
    box-shadow: 6px 6px 45px rgba(0, 0, 0, 0.1);
    border-radius: 4px;
    transition: all .5s ease;
}

header.scroll .xs-menu {
    top: 50px;
}

header .xs-menu.open {
    opacity: 1;
    visibility: visible;
    left: 0;
    overflow-y: auto;
}

header .xs-menu .menu {
    list-style: none;
    margin-bottom: 30px;
}

header .xs-menu .menu li a {
    display: block;
    color: #000;
    padding: 15px 0;
    text-decoration: none;
    border-bottom: 1px solid #E5E5E5;
}

header .xs-menu .menu li:last-of-type a {
    border: none;
}

header .xs-menu .menu li.dropdown-link a {
    cursor: pointer;
    padding-right: 30px;
    position: relative;
}

header .xs-menu .menu li.dropdown-link > a:after {
    content: '';
    position: absolute;
    right: 15px;
    top: 18px;
    display: block;
    width: 8px;
    height: 8px;
    border-right: 1px solid #AAAAAA;
    border-bottom: 1px solid #AAAAAA;
    transform: rotate(-45deg);
}

header .xs-menu .menu li.dropdown-link .sub-menu {
    display: none;
    list-style: none;
    padding-left: 30px;
}

header .xs-menu .menu li.dropdown-link .sub-menu li a {
    padding: 10px 0;
}

header .xs-menu .menu li.dropdown-link .sub-menu li:last-of-type a {
    border-bottom: 1px solid #E5E5E5;
}

header .xs-menu .menu li a:hover {
    color: #777;
}

header .xs-menu .social-menu {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 5px;
}

/* Logo */


/* Main */

#main {
    margin-top: 160px;
}

#main.usual {
    margin-top: 120px;
}

.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: inherit;
    font-weight: 600;
    font-size: 16px;
    color: #000;
    text-decoration: none;
    cursor: pointer;
    background: #fff;
    height: 56px;
    padding: 0 30px;
    text-transform: uppercase;
    border: 2px solid #000000;
    transition: all .3s ease;
}

.button:hover {
    background: #000;
    color: #fff;
}

.button.white {
    background: #fff;
    color: #000;
}

.button.tiny {
    height: 41px;
    padding: 0 30px;
}

.button.white:hover {
    background: #E16857;
    color: #fff;
}

.button span + span {
    margin-left: 20px;
    display: block;
}

.menu-btn-cont .menu-btn {
    display: inline-block;
    cursor: pointer;
    z-index: 2;
    line-height: normal;
    background-color: #fff;
    -webkit-transition: 0.2s all ease-in-out;
    transition: 0.2s all ease-in-out;
}

.menu-btn-cont .menu-btn .bars {
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 10px;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
}

.menu-btn-cont .menu-btn .menu_name {
    display: inline-block;
    vertical-align: middle;
    margin-left: 14px;
    font-weight: 600;
    font-size: 14px;
    line-height: 17px;
}

.menu-btn-cont .menu-btn .bars,
.menu-btn-cont .menu-btn .bars:after {
    position: relative;
    width: 28px;
    height: 3px;
    background-color: #000;
    -webkit-transition: 0.2s all ease-in-out;
    transition: 0.2s all ease-in-out;
    border-radius: 0px;
}

.menu-btn-cont .menu-btn .bars {
    width: 36px;
}

.menu-btn-cont .menu-btn .bars:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
}

.menu-btn-cont .menu-btn .bars:after {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
}

.menu-btn-cont.is-active .menu-btn .bars {
    -webkit-transform: rotate(35deg);
    transform: rotate(35deg);
}

.menu-btn-cont.is-active .menu-btn .bars:after {
    -webkit-transform: translateX(0) rotate(-70deg);
    transform: translateX(0) rotate(-70deg);
}

.menu-btn-cont.is-active .menu-btn .bars,
.menu-btn-cont.is-active .menu-btn .bars:after,
.menu-btn-cont .menu-btn:hover .bars,
.menu-btn-cont .menu-btn:hover .bars:after {
    background-color: #000;
    width: 36px;
}

.section {
    position: relative;
}

.section .ankor-link {
    position: absolute;
    top: -90px;
}

.section h3 {
    margin-top: 70px;
    margin-bottom: 70px;
}

.h1-breadcrumbs .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 70px;
}

.h1-breadcrumbs h1 {
    font-weight: bold;
    font-size: 32px;
    line-height: 39px;
}

.h1-breadcrumbs .breadcrumps-area a,
.h1-breadcrumbs .breadcrumps-area span {
    font-size: 12px;
    font-weight: 500;
    text-decoration: none;
    text-transform: uppercase;
}

.h1-breadcrumbs .breadcrumps-area {
    color: #D6D6D6;
}

.h1-breadcrumbs .breadcrumps-area a {
    color: #D6D6D6;
}

.h1-breadcrumbs .breadcrumps-area span.current-item {
    color: #000;
}

.first-screen {
    padding-top: 0;
}

.first-screen .first-cont {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

.first-screen .logo-h1 h1 {
    font-weight: bold;
    font-size: 25px;
    line-height: 34px;
    margin-top: 0;
    margin-bottom: 65px;
}

.first-screen .logo-h1 h1 a {
    color: #000;
    text-decoration: none;
    transition: all .3s ease;
}

.first-screen .logo-h1 h1 a:hover {
    color: #668964;
}

.first-screen .logo-h1 h1 a .contur-text {
    transition: all .3s ease;
}

.first-screen .logo-h1 h1 a:hover .contur-text {
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #F0AE2E;
}

.browser-ie .first-screen .logo-h1 h1 a:hover .contur-text {
    text-shadow: -0 -1px 0 #F0AE2E,
    0 -1px 0 #F0AE2E,
    -0 1px 0 #F0AE2E,
    0 1px 0 #F0AE2E,
    -1px -0 0 #F0AE2E,
    1px -0 0 #F0AE2E,
    -1px 0 0 #F0AE2E,
    1px 0 0 #F0AE2E,
    -1px -1px 0 #F0AE2E,
    1px -1px 0 #F0AE2E,
    -1px 1px 0 #F0AE2E,
    1px 1px 0 #F0AE2E,
    -1px -1px 0 #F0AE2E,
    1px -1px 0 #F0AE2E,
    -1px 1px 0 #F0AE2E,
    1px 1px 0 #F0AE2E;
}

.first-screen .logo-h1 h3 {
    font-weight: 500;
    font-size: 34px;
    line-height: normal;
}

.first-screen .logo-h1 .logo {
    width: auto;
}

.first-screen .logo-h1 .logo img {
    max-width: 100%;
}

input[type="text"],
input[type="tel"],
input[type="email"],
textarea {
    border: none;
    border-bottom: 1px solid #6a6a6a;
    border-radius: 0;
    box-shadow: none;
    height: 49px;
    width: 100%;
    font-size: 16px;
    padding: 0 15px;
}

form .privacy-policy {
    font-size: 12px;
    line-height: normal;
}

.first-screen .form .callback-submit {
    width: 100%;
    margin-top: 15px;
    padding: 0 10px;
}

.first-screen .form .submit-cont:before {
    content: '';
    display: block;
    margin: 15px auto 0 auto;
    width: 190px;
    height: 1px;
    background-color: #E0E0E0;
}

.pic-building img {
    margin-left: -300px;
    z-index: -1;
    position: relative;
}

.first-cont .main-menu .menu {
    list-style: none;
    overflow: hidden;
}

.first-cont .main-menu .menu li {
    display: block;
    float: left;
    margin-right: 15px;
}

.first-cont .main-menu .menu li:after {
    content: '/';
    display: inline-block;
    font-size: 32px;
    line-height: 39px;
    font-weight: 900;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #000;
    color: #fff;
    text-decoration: none;
    margin-left: 15px;
}

.browser-ie .first-cont .main-menu .menu li:after {
    text-shadow: -0 -1px 0 #000000,
    0 -1px 0 #000000,
    -0 1px 0 #000000,
    0 1px 0 #000000,
    -1px -0 0 #000000,
    1px -0 0 #000000,
    -1px 0 0 #000000,
    1px 0 0 #000000,
    -1px -1px 0 #000000,
    1px -1px 0 #000000,
    -1px 1px 0 #000000,
    1px 1px 0 #000000,
    -1px -1px 0 #000000,
    1px -1px 0 #000000,
    -1px 1px 0 #000000,
    1px 1px 0 #000000;
}

.first-cont .main-menu .menu li:nth-child(3),
.first-cont .main-menu .menu li:nth-child(6),
.first-cont .main-menu .menu li:nth-child(9) {
    margin-right: 0;
}

.first-cont .main-menu .menu li:nth-child(4),
.first-cont .main-menu .menu li:nth-child(7),
.first-cont .main-menu .menu li:nth-child(10) {
    clear: both;
}

.first-cont .main-menu .menu li:last-child:after,
.first-cont .main-menu .menu li:nth-child(3):after,
.first-cont .main-menu .menu li:nth-child(6):after,
.first-cont .main-menu .menu li:nth-child(9):after {
    display: none;
}

.first-cont .main-menu .menu li a {
    font-size: 32px;
    line-height: 39px;
    font-weight: 900;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #000;
    color: #fff;
    text-decoration: none;
    transition: all .3s ease;
}

.browser-ie .first-cont .main-menu .menu li a {
    text-shadow: -0 -1px 0 #000000,
    0 -1px 0 #000000,
    -0 1px 0 #000000,
    0 1px 0 #000000,
    -1px -0 0 #000000,
    1px -0 0 #000000,
    -1px 0 0 #000000,
    1px 0 0 #000000,
    -1px -1px 0 #000000,
    1px -1px 0 #000000,
    -1px 1px 0 #000000,
    1px 1px 0 #000000,
    -1px -1px 0 #000000,
    1px -1px 0 #000000,
    -1px 1px 0 #000000,
    1px 1px 0 #000000;
}

.first-cont .main-menu .menu li a:hover {
    color: #668964;
}

.first-cont .brackets-area {
    clear: both;
    margin-top: 80px;
}

.brackets-link {
    display: inline-block;
    position: relative;
    padding: 25px;
    font-weight: 800;
    font-size: 16px;
    line-height: 22px;
    color: #000;
    text-decoration: none;
    transition: all .5s ease;
}

.brackets-link:hover {
    color: #000;
}

.brackets-link .frame {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 60px;
    border: 4px solid #000;
    transition: all .5s ease;
}

.brackets-link span:not(.frame) {
    position: relative;
    z-index: 3;
}

.brackets-link:hover .frame {
    right: 0;
}

.brackets-link:after {
    content: '';
    display: block;
    position: absolute;
    right: 60px;
    top: 25%;
    bottom: 25%;
    width: 4px;
    z-index: 2;
    background-color: #fff;
    transition: all .5s ease;
}

.brackets-link:hover:after {
    right: 0;
    top: 50%;
    bottom: 50%;
}

.map-screen .points-search {
    max-width: 720px;
}

.map-screen .points-search .types {
    margin: 35px 0 40px 0;
}

.map-screen .points-search .search {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.map-screen .points-search .search > div {
    border-bottom: 1px solid #6A6A6A;
    margin-right: 30px;
    flex: 1;
}

.map-screen .points-search .search input {
    border: none;
    border-radius: 0;
    padding-left: 0;
    width: 100%;
}

.map-screen .points-search .types .button {
    margin: 0 0 10px 30px;
}

.map-screen .map-list {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
}

.map-screen .map-list .point-list {
    width: 350px;
    margin-right: 25px;
    overflow-x: hidden;
}

.map-screen .map-list .point-list .poligon-cont {
    padding-right: 50px;
    height: 530px;
    width: 362px;
    overflow-y: auto;
    transition: all .3s ease;
}

.map-screen .map-list .point-list:hover .poligon-cont {
    width: 350px;
    padding-right: 38px;
}

.point-list .poligon-area {
    position: relative;
    padding-right: 30px;
    cursor: pointer;
}

.point-list .poligon-area.active {
    color: #668964;
}

.point-list .poligon-area + .poligon-area {
    margin-top: 32px;
}

.point-list .poligon-area > div {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    margin-bottom: 4px;
}

.point-list .poligon-area .type {
    font-size: 10px;
    line-height: 22px;
    color: #525252;
}

.point-list .poligon-area .name {
    font-weight: bold;
    font-size: 14px;
    line-height: 22px;
    color: inherit;
}

.point-list .poligon-area .address {
    font-size: 12px;
    line-height: 22px;
    color: inherit;
}

.point-list .poligon-area .phone-link {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    color: #878787;
}

.point-list .poligon-area.active .phone-link {
    color: #668964;
}

.services-cont {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    overflow: hidden;
}

.services-cont .service-area {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    width: calc(33.33333% - 20px);
    margin-right: 30px;
    padding: 30px;
    border: 1px solid #878787;
    margin-bottom: 30px;
    color: #000;
    text-decoration: none;
    min-height: 310px;
}

.services-cont .service-area:nth-child(3n) {
    margin-right: 0;
}

.services-cont .service-area .header,
.services-cont .service-area .header .service-data {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.services-cont .service-area .header {
    width: 100%;
    transition: all .5s ease;
}

.services-cont .service-area:hover .header {
    width: calc(100% + 29px);
}

.services-cont .service-area .header .service-data {
    height: 60px;
}

.services-cont .service-area .header .service-data .title {
    margin-left: 30px;
}

.services-cont .service-area .header .service-data .title h4 {
    font-weight: 800;
    font-size: 16px;
    line-height: 20px;
}

.services-cont .service-area .header .service-data .title span {
    display: block;
    font-size: 16px;
    line-height: 20px;
    margin-top: 6px;
    font-weight: 900;
}

.services-cont .service-area .header .arrow {
    position: relative;
    height: 93px;
    display: flex;
    align-items: center;
}

.services-cont .service-area .header .arrow:after {
    content: '';
    position: absolute;
    left: 100%;
    top: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 50px 0 50px 30px;
    border-color: transparent transparent transparent #fff;
}

.services-cont .service-area > .text {
    font-size: 14px;
    line-height: 22px;
    width: 100%;
}

.advantages-screen {
    margin-top: 150px;
}

.advantages-cont {
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-start;
    justify-content: flex-start;
}

.advantages-cont .current-advatage {
    padding-right: 130px;
    flex: 1;
}

.advantages-cont .current-advatage h3 {
    font-weight: bold;
    font-size: 32px;
    line-height: 39px;
    margin-top: 0;
    min-height: 80px;
    margin-bottom: 60px;
}

.advantages-cont .current-advatage .cur-text {
    font-weight: normal;
    font-size: 14px;
    line-height: 22px;
    margin-bottom: 70px;
    overflow-y: hidden;
    transition: height .3s ease;
}

.advantages-cont .current-advatage .cur-text ul {
    list-style: none;
}

.advantages-cont .current-advatage .cur-text ul li {
    margin-left: 35px;
    position: relative;
    line-height: 30px;
}

.advantages-cont .current-advatage .cur-text ul li:before {
    content: '';
    display: inline-block;
    position: absolute;
    top: 12px;
    left: -35px;
    background-image: url(img/bullet.svg);
    height: 5px;
    width: 14px;
}

.advantages-cont .current-advatage .number {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-weight: 900;
    font-size: 32px;
    line-height: 39px;
}

.advantages-cont .current-advatage .number:before {
    content: '';
    display: block;
    height: 1px;
    width: 165px;
    background-color: #000;
    margin-right: 15px;
}

.advantages-cont .advantages-list {
    width: 615px;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.advantages-cont .advantages-list .advantages-tile {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(50% - 30px);
    margin-right: 60px;
    padding: 15px;
    padding-right: 0;
    margin-bottom: 40px;
    height: 150px;
    cursor: pointer;
}

.advantages-cont .advantages-list .advantages-tile .icon {
    position: absolute;
    left: 15px;
    top: 15px;
}

.advantages-cont .advantages-list .advantages-tile .title {
    position: relative;
    z-index: 3;
    font-weight: 800;
    font-size: 16px;
    line-height: 20px;
    max-width: calc(180px + 10%);
    padding-left: 10%;
    flex: 1;
}

.advantages-cont .advantages-list .advantages-tile .number {
    position: absolute;
    left: 15px;
    bottom: 15px;
    font-weight: 900;
    font-size: 20px;
    line-height: 24px;
}

.advantages-cont .advantages-list .advantages-tile .text {
    display: none;
}

.advantages-cont .advantages-list .advantages-tile:nth-child(2n) {
    margin-right: 0;
}

.advantages-cont .advantages-list .advantages-tile:before {
    content: '';
    display: block;
    position: absolute;
    right: 80px;
    top: 25px;
    bottom: 25px;
    width: 1px;
    z-index: 2;
    background-color: #fff;
    transition: all .5s ease;
}

.advantages-cont .advantages-list .advantages-tile:hover:before {
    right: 40px;
    top: 40%;
    bottom: 40%;
}

.advantages-cont .advantages-list .advantages-tile.active:before,
.advantages-cont .advantages-list .advantages-tile.active:hover:before {
    right: 0;
    top: 50%;
    bottom: 50%;
}

.advantages-cont .advantages-list .advantages-tile .frame {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 80px;
    border: 1px solid #878787;
    transition: all .5s ease;
}

.advantages-cont .advantages-list .advantages-tile:hover .frame {
    right: 40px;
}

.advantages-cont .advantages-list .advantages-tile.active .frame,
.advantages-cont .advantages-list .advantages-tile.active:hover .frame {
    right: 0;
}

.poligin-info,
.poligin-detalis {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    margin-bottom: 60px;
}

.poligin-info .poligon-text {
    width: 50%;
    padding-right: 50px;
    font-size: 16px;
}

.poligin-info .poligon-text h5 {
    font-size: 18px;
    line-height: 26px;
    margin-bottom: 50px;
}

.poligin-info .poligon-text p {
    line-height: 24px;
    margin-bottom: 50px;
}

.poligin-info .poligon-text ul {
    list-style: none;
    padding-left: 40px;
}

.poligin-info .poligon-text ul li {
    position: relative;
    line-height: 22px;
}

.poligin-info .poligon-text ul li + li {
    margin-top: 30px;
}

.poligin-info .poligon-text ul li:before {
    content: '';
    position: absolute;
    left: -40px;
    top: 5px;
    display: inline-block;
    width: 7px;
    height: 7px;
    vertical-align: middle;
    background-color: #000;
}

.poligin-info .poligon-text:before {
    content: '';
    display: block;
    width: 120px;
    height: 2px;
    background-color: #000;
    margin-bottom: 50px;
}

.poligin-info .poligon-map-address {
    width: 50%;
}

.poligin-info .poligon-map-address .address {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 60px 50px;
    border: 1px solid #878787;
    font-weight: bold;
    font-size: 16px;
    line-height: 20px;
}

.poligin-info .poligon-map-address .address span {
    margin-left: 20px;
}

.poligin-detalis .properties {
    width: 50%;
    padding-right: 50px;
}

.poligin-detalis .properties table td {
    font-size: 16px;
    line-height: 22px;
    font-weight: normal;
    text-align: left;
    padding-bottom: 40px;
}

.poligin-detalis .properties table td:last-of-type {
    font-weight: bold;
    text-align: right;
}

.poligin-detalis .properties table tr:last-of-type td {
    padding-bottom: 0;
}

.poligin-detalis .social {
    width: 50%;
}

.poligin-detalis .social a {
    display: block;
    color: #000;
    text-decoration: none;
    font-weight: bold;
    font-size: 18px;
    line-height: 22px;
    padding: 20px 0;
    border-bottom: 1px solid #878787;
}

.poligin-detalis .social a:first-of-type {
    padding-top: 0;
}

.poligin-detalis .social a:last-of-type {
    border-bottom: none;
}

.poligin-detalis .social a svg {
    margin-right: 20px;
    vertical-align: middle;
}

#poligon-map {
    height: 350px;
    margin-bottom: 45px;
}

#map-cont {
    height: 530px;
    flex: 1;
}

#map-cont [class$="-ground-pane"],
#poligon-map [class$="-ground-pane"] {
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
    filter: grayscale(1); /* Firefox 4+ */
    filter: gray; /* IE 6-9 */
}

.page-contents .entry h2 {
    font-weight: bold;
    font-size: 26px;
    line-height: 32px;
    margin-bottom: 40px;
}

.page-contents .entry p {
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 40px;
}

.page-contents .entry p:last-of-type {
    margin-bottom: 0;
}

.entry-picture {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.entry-picture .image,
.entry-picture .entry {
    width: 50%;
}

.entry-picture .entry {
    padding-right: 60px;
}

.entry-picture .image img {
    max-width: 100%;
}

.request-button {
    margin-top: 100px;
    text-align: center;
}

.about-page {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.about-page .entry {
    max-width: 450px;
    font-size: 16px;
    line-height: 24px;
    padding-right: 50px
}

.about-page .contacts {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    border: 1px solid #BFBFBF;
    max-width: 500px;
    flex: 1;
    min-height: 300px;
}

.about-page .contacts .contacts-area {
    width: 360px;
    padding: 0 30px;
}

.about-page .contacts .contact,
.about-page .contacts .contact a {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    font-weight: bold;
    color: #000;
    text-decoration: none;
}

.about-page .contacts .contact + .contact {
    margin-top: 40px;
}

.about-page .contacts .contact svg {
    margin-right: 28px;
    min-width: 20px;
}

.about-page .contacts .phone-link a {
    font-size: 18px;
    line-height: 22px;
}

.about-page + .contact-form {
    margin-top: 80px;
}

.contact-form h3 {
    font-weight: bold;
    font-size: 30px;
    line-height: 37px;
    margin-bottom: 50px;
}

.contact-form .first-line {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    margin-bottom: 70px;
}

.contact-form .first-line > div {
    width: calc(50% - 15px);
    margin-right: 30px;
}

.contact-form .first-line > div:last-of-type {
    margin-right: 0;
}

.contact-form .text {
    margin-bottom: 70px;
}

.contact-form .privacy-submit {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.contact-form .privacy-submit .privacy-policy {
    max-width: 410px;
    padding-right: 30px;
}

.talony .entry {
    margin-top: 15px;
    margin-bottom: 50px;
}

.talony .services-cont .service-area .header .service-data .icon img {
    width: 50px;
}

.talony .services-cont .service-area .header .service-data .title {
    max-width: 150px;
}

.fancybox-popup.fancybox-content {
    max-width: 320px;
}

.fancybox-popup h3 {
    font-weight: bold;
    font-size: 20px;
    line-height: 23px;
    margin-bottom: 35px;
}

.fancybox-popup h4 {
    font-size: 12px;
    line-height: 15px;
    margin-bottom: 25px;
}

.fancybox-popup .privacy-policy {
    font-size: 10px;
    margin-top: 30px;
}

.fancybox-popup .form-group {
    margin-bottom: 25px;
}

.fancybox-popup input {
    height: 42px;
    font-size: 14px;
    font-weight: 500;
}

.fancybox-popup .button {
    height: 46px;
    padding: 0 15px;
    font-size: 14px;
    width: 100%;
    margin-top: 10px;
}

.fancybox-popup div.wpcf7-response-output,
.fancybox-popup span.wpcf7-not-valid-tip {
    font-size: 10px;
    line-height: normal;
}

#footer {
    padding: 60px 0 60px 0;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    margin-top: 60px;
}

#footer .footer-top,
#footer .footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

#footer .footer-top {
    margin-bottom: 40px;
}

#footer .footer-top .logo {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

#footer .footer-top .logo .phone-address {
    margin-left: 30px;
}

#footer .footer-top .logo .phone {
    font-weight: bold;
    font-size: 18px;
    line-height: 22px;
    margin-bottom: 6px;
}

#footer .footer-top .logo .phone a {
    color: #000;
    text-decoration: none;
}

#footer .footer-top .logo .address {
    font-size: 16px;
    line-height: 19px;
    margin-bottom: 0;
}

#footer .footer-top .social {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 210px;
}

#footer .footer-bottom {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

#footer .footer-bottom .copyright-policy {
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    font-weight: 600;
    font-size: 12px;
    line-height: 15px;
}

#footer .footer-bottom .copyright-policy a {
    color: #000;
}

#footer .footer-bottom .copyright-policy .copyright {
    line-height: 150%;
}

#footer .footer-bottom .copyright-policy .privacy-policy {
    margin-left: 100px;
}

.floating-social {
    position: fixed;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    top: 200px;
    right: 0;
    height: 195px;
    width: 45px;
    background-color: #fff;
    border: 1px solid #D1D1D1;
}

.compensate-for-scrollbar .floating-social {
    right: 17px;
}

.floating-social a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 10px 0;
}

.to-top-link {
    display: block;
    position: fixed;
    z-index: 100001;
    width: 45px;
    height: 45px;
    font-size: 25px;
    line-height: 40px;
    text-align: center;
    bottom: -100px;
    right: 25px;
    background: #AAAAAA;
    border: none;
    color: #fff;
    cursor: pointer;
    -webkit-transition: all 0.8s cubic-bezier(.6, -0.32, .81, .22);
    -moz-transition: all 0.8s cubic-bezier(.6, -0.32, .81, .22);
    -ms-transition: all 0.8s cubic-bezier(.6, -0.32, .81, .22);
    -o-transition: all 0.8s cubic-bezier(.6, -0.32, .81, .22);
    transition: all 0.8s cubic-bezier(.6, -0.32, .81, .22);
    transform: scale(1);
    filter: alpha(opacity=0);
    opacity: 0;
    border-radius: 50%;
}

.to-top-link svg {
    margin-top: 17px;
}

.to-top-link.show:hover {
    opacity: 1;
    transform: scale(1.1);
}

.to-top-link.show {
    filter: alpha(opacity=100);
    opacity: .5;
    bottom: 50px;
    -webkit-transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -moz-transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -ms-transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    -o-transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition: all 0.8s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

@media (max-width: 1199px) {
    .first-screen .first-cont {
        display: block;
    }

    .pic-building {
        position: relative;
        z-index: -1;
    }

    .pic-building img {
        position: static;
        display: block;
        margin-left: auto;
        margin-top: -510px;
    }

    .first-cont .brackets-area {
        margin-top: 150px;
        margin-bottom: 150px;
    }
}

@media (max-width: 1119px) {
    .advantages-cont {
        display: block;
    }

    .advantages-cont .advantages-list {
        width: 100%;
    }

    .advantages-cont .advantages-list .advantages-tile {
        width: calc(33.333333% - 40px);
    }

    .advantages-cont .advantages-list .advantages-tile:nth-child(2n) {
        margin-right: 60px;
    }

    .advantages-cont .advantages-list .advantages-tile:nth-child(3n) {
        margin-right: 0;
    }

    .advantages-cont .current-advatage {
        padding-right: 0;
    }

    .advantages-cont .current-advatage h3 {
        min-height: 0;
        margin-bottom: 40px;
    }

    .advantages-cont .current-advatage .cur-text {
        margin-bottom: 40px;
        transition: none;
    }

    .services-cont .service-area {
        width: calc(50% - 15px);
    }

    .services-cont .service-area:nth-child(3n) {
        margin-right: 30px;
    }

    .services-cont .service-area:nth-child(2n) {
        margin-right: 0;
    }
}

@media (max-width: 991px) {
    header .menu-part .menu a, #footer .menu-content .menu a {
        padding: 10px 10px;
        font-size: 12px;
        line-height: 14px;
    }

    .pic-building img {
        margin-left: auto;
        margin-top: -167px;
        max-width: 100%;
    }

    .first-cont .brackets-area {
        margin-top: 40px;
        margin-bottom: 40px;
    }

    .poligin-info .poligon-text h5,
    .poligin-info .poligon-text ul li,
    .poligin-info .poligon-text p {
        font-size: 14px;
        line-height: normal;
    }

    .poligin-detalis .properties table td {
        font-size: 12px;
        line-height: 15px;
    }

    .map-screen .map-list .point-list {
        display: none;
    }

    .entry-picture {
        flex-direction: column-reverse;
        align-items: flex-start;
        justify-content: flex-start;
    }

    .entry-picture .entry {
        width: 100%;
        padding-right: 0;
    }

    .entry-picture .image {
        width: 100%;
        margin-bottom: 50px;
    }
}

@media (max-width: 867px) {
    .advantages-screen {
        margin-top: 110px;
    }

    .advantages-cont .advantages-list .advantages-tile {
        width: calc(50% - 15px);
        height: 100px;
        margin-bottom: 20px;
        margin-right: 30px;
    }

    .advantages-cont .advantages-list .advantages-tile:nth-child(3n) {
        margin-right: 30px;
    }

    .advantages-cont .advantages-list .advantages-tile:nth-child(2n) {
        margin-right: 0;
    }

    .advantages-cont .current-advatage {
        margin-top: 20px;
        width: 100%;
        flex: 0;
    }
}

@media (max-width: 767px) {
    body.admin-bar header {
        top: 46px;
    }

    .compensate-for-scrollbar .floating-social {
        right: 0;
    }

    .compensate-for-scrollbar header {
        right: 0;
    }

    .first-screen .logo-h1 h1 {
        font-size: 35px;
        line-height: 42px;
        margin-bottom: 45px;
    }

    .first-screen .logo-h1 h1 a:hover {
        color: #000;
    }

    .first-screen .logo-h1 h1 a:hover .contur-text {
        text-shadow: -0 -1px 0 #000000,
        0 -1px 0 #000000,
        -0 1px 0 #000000,
        0 1px 0 #000000,
        -1px -0 0 #000000,
        1px -0 0 #000000,
        -1px 0 0 #000000,
        1px 0 0 #000000,
        -1px -1px 0 #000000,
        1px -1px 0 #000000,
        -1px 1px 0 #000000,
        1px 1px 0 #000000,
        -1px -1px 0 #000000,
        1px -1px 0 #000000,
        -1px 1px 0 #000000,
        1px 1px 0 #000000;
    }

    .first-cont .main-menu .menu li {
        margin-right: 10px;
    }

    .first-cont .main-menu .menu li a,
    .first-cont .main-menu .menu li::after {
        font-size: 24px;
        line-height: 30px;
        margin-left: 10px;
    }

    .h1-breadcrumbs h1 {
        font-size: 18px;
        line-height: 22px;
        margin-bottom: 35px;
    }

    .h1-breadcrumbs .container {
        flex-direction: column;
        align-items: flex-start;
        margin-bottom: 40px;
    }

    .advantages-screen {
        margin-top: 100px;
    }

    .poligin-info {
        flex-direction: column-reverse;
    }

    .poligin-info .poligon-text,
    .poligin-detalis .properties {
        width: 100%;
        padding-right: 0;
    }

    .poligin-info .poligon-map-address,
    .poligin-detalis .social {
        width: 100%;
    }

    .poligin-detalis {
        flex-direction: column;
    }

    .poligin-detalis .properties table {
        width: 100%;
    }

    .poligin-detalis .social {
        margin-top: 70px;
    }

    .floating-social {
        display: none;
    }

    .poligin-info .poligon-text::before {
        display: none;
    }

    .poligin-info .poligon-map-address:before {
        content: '';
        display: block;
        width: 120px;
        height: 2px;
        background-color: #000;
        margin-bottom: 50px;
    }

    .poligin-info .poligon-map-address .address {
        padding: 25px;
        font-size: 12px;
        line-height: 15px;
    }

    .poligin-info .poligon-text {
        margin-top: 40px;
    }

    .poligin-info .poligon-text h5,
    .poligin-info .poligon-text ul li,
    .poligin-info .poligon-text p {
        margin-bottom: 35px;
    }

    .poligin-info .poligon-text ul li + li {
        margin-bottom: 15px;
    }

    .poligin-detalis .social a {
        font-size: 16px;
        line-height: 19px;
    }

    .poligin-info, .poligin-detalis {
        margin-bottom: 40px;
    }

    .services-cont .service-area .header .service-data .title {
        margin-left: 20px;
    }

    .contact-form .first-line {
        flex-wrap: wrap;
        margin-bottom: 40px;
    }

    .contact-form .first-line .name {
        width: 100%;
        margin-right: 0;
        margin-bottom: 40px;
    }

    .contact-form .first-line .telephone {
        width: 100%;
    }

    .contact-form .text {
        margin-bottom: 40px;
    }

    .about-page {
        display: block;
    }

    .about-page .entry {
        padding-right: 0;
        max-width: 100%;
        margin-bottom: 40px;
    }

    .about-page .contacts {
        margin-left: auto;
        margin-right: auto;
    }

    #footer .footer-top .logo .address {
        font-size: 12px;
        line-height: 14px;
    }
}

@media (max-width: 720px) {
    header .email-phone .email {
        margin-right: 20px;
    }

    header .email-phone .email::after {
        display: none;
    }

    .button {
        height: 38px;
    }
}

@media (max-width: 659px) {
    header .email-phone {
        display: block;
        text-align: right;
    }

    header .email-phone .email {
        margin-right: 0;
    }

    .first-cont .main-menu .menu li a,
    .first-cont .main-menu .menu li::after {
        font-size: 20px;
        line-height: 26px;
    }

    .services-cont .service-area .header .service-data {
        flex-direction: column;
        align-items: flex-start;
        justify-content: space-around;
        height: 100px;
        margin-bottom: 25px;
    }

    .services-cont .service-area .header .service-data .title {
        margin-left: 0;
    }

    #footer .footer-bottom .copyright-policy .privacy-policy {
        margin-left: 30px;
    }

    #footer .footer-top .logo .address {
        max-width: 190px;
    }
}

@media (max-width: 599px) {
    header.scroll,
    body.admin-bar header.scroll {
        top: 0;
    }

    .pic-building img {
        margin-top: -120px;
    }
}

@media (max-width: 571px) {
    header {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 10;
        background-color: #fff;
        z-index: 10;
    }

    body.admin-bar header {
        top: 46px;
    }

    header .top-row {
        height: 50px;
    }

    header .xs-menu {
        top: 50px;
    }

    #main {
        margin-top: 100px;
    }

    header.top,
    body.admin-bar header.top {
        top: 0;
        box-shadow: 0 10px 30px rgba(0, 0, 0, .1);
    }

    header .menu-part {
        display: none;
    }

    .first-screen .logo-h1 h1 {
        font-size: 22px;
        line-height: 27px;
        margin-bottom: 35px;
    }

    .advantages-cont .current-advatage h3,
    .section h3 {
        font-size: 22px;
        line-height: 27px;
    }

    .section h3 {
        margin-top: 45px;
        margin-bottom: 30px
    }

    .first-cont .main-menu .menu li a,
    .first-cont .main-menu .menu li::after {
        font-size: 18px;
        line-height: 24px;
    }

    .brackets-link {
        font-size: 14px;
        line-height: 22px;
    }

    .advantages-screen {
        margin-top: 50px;
    }

    .advantages-cont .advantages-list .advantages-tile {
        align-items: flex-end;
        justify-content: flex-start;
        margin-right: 20px;
    }

    .advantages-cont .advantages-list .advantages-tile:nth-child(3n) {
        margin-right: 20px;
    }

    .advantages-cont .advantages-list .advantages-tile:nth-child(2n) {
        margin-right: 0;
    }

    .advantages-cont .advantages-list .advantages-tile::before {
        top: 40%;
        bottom: 10px;
    }

    .advantages-cont .advantages-list .advantages-tile:hover::before {
        top: 50%;
        bottom: 10px;
    }

    .advantages-cont .advantages-list .advantages-tile.active::before,
    .advantages-cont .advantages-list .advantages-tile.active:hover::before {
        top: calc(100% - 10px);
        bottom: 10px;
    }

    .advantages-cont .advantages-list .advantages-tile .title {
        padding-left: 0;
        font-size: 14px;
        line-height: normal;
    }

    .advantages-cont .advantages-list .advantages-tile .number {
        left: auto;
        right: 95px;
        top: 15px;
        bottom: auto;
        transition: all .5s ease;
    }

    .advantages-cont .advantages-list .advantages-tile:hover .number {
        right: 55px;
    }

    .advantages-cont .advantages-list .advantages-tile.active .number,
    .advantages-cont .advantages-list .advantages-tile.active:hover .number {
        right: 15px;
    }

    .services-cont .service-area {
        width: 100%;
        margin-right: 0 !important;
        min-height: 0;
    }

    .services-cont .service-area .header .service-data {
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        height: 90px;
        margin-bottom: 0;
    }

    .services-cont .service-area .header .service-data .title {
        margin-left: 30px;;
    }

    .page-contents .entry h2 {
        font-size: 18px;
        line-height: 22px;
        margin-bottom: 30px;
    }

    .page-contents .entry p {
        font-size: 14px;
        line-height: normal;
        margin-bottom: 25px;
    }

    .entry-picture .image {
        margin-bottom: 25px;
    }

    .request-button {
        margin-top: 50px;
    }
}

@media (max-width: 521px) {
    header .top-address {
        display: none;
    }

    #footer .footer-top {
        flex-direction: column;
    }

    #footer .footer-top .social {
        margin-top: 35px;
    }

    #footer .footer-bottom .copyright-policy {
        flex-direction: column;
        align-items: flex-start;
    }

    #footer .footer-bottom .copyright-policy .privacy-policy {
        margin-left: 0;
        margin-top: 20px;
    }

    .first-cont .main-menu .menu li a,
    .first-cont .main-menu .menu li::after {
        font-size: 16px;
        line-height: 22px;
    }

    .contact-form h3 {
        font-size: 18px;
        line-height: 22px;
        margin-bottom: 35px;
    }

    .contact-form .first-line .email,
    .contact-form .first-line .telephone {
        width: 100%;
        margin-right: 0
    }

    .contact-form .first-line,
    .contact-form .first-line .name,
    .contact-form .first-line .text,
    .contact-form .first-line .email {
        margin-bottom: 30px;
    }

    .points-search .search .button {
        padding: 0 15px;
    }

    .map-screen .points-search .types {
        margin-bottom: 20px;
        overflow: hidden;
        clear: both;
    }

    .map-screen .points-search .search input {
        font-size: 14px;
    }

    .types-list .checkbox-inline {
        width: calc(50% - 20px);
        display: block;
        float: left;
    }
}

@media (max-width: 480px) {
    header .email-phone .email {
        display: none;
    }

    header .email-phone .phone a span {
        display: none;
    }

    header .email-phone .phone a span.icon {
        display: inline-block;
        border: 1px solid #AAAAAA;
        padding: 8px;
    }

    .advantages-cont .advantages-list .advantages-tile .title {
        font-size: 12px;
        max-width: 100%;
    }

    .advantages-cont .advantages-list .advantages-tile::before {
        right: 30px;
    }

    .advantages-cont .advantages-list .advantages-tile:hover::before {
        right: 15px;
    }

    .advantages-cont .advantages-list .advantages-tile .frame {
        right: 30px;
    }

    .advantages-cont .advantages-list .advantages-tile:hover .frame {
        right: 15px;
    }

    .advantages-cont .advantages-list .advantages-tile .number {
        right: 45px;
    }

    .advantages-cont .advantages-list .advantages-tile:hover .number {
        right: 30px;
    }

    .advantages-cont .advantages-list .advantages-tile.active .number,
    .advantages-cont .advantages-list .advantages-tile.active:hover .number {
        right: 15px;
    }

    #map-cont {
        height: 400px;
    }

    .contact-form .privacy-submit {
        flex-direction: column;
    }

    .contact-form .privacy-submit .privacy-policy {
        max-width: 100%;
        padding-right: 0;
        text-align: center;
        margin-bottom: 25px;
    }

    #main.usual {
        margin-top: 80px;
    }

    .about-page .contacts {

    }

    .about-page .contacts .contacts-area {
        width: 100%;
    }

    .pic-building img {
        margin-top: -85px;
    }
}

@media (max-width: 420px) {
    .button {
        font-size: 12px;
    }

    .first-cont .main-menu .menu li {
        margin-right: 7px;
    }

    .first-cont .main-menu .menu li a,
    .first-cont .main-menu .menu li::after {
        font-size: 18px;
        line-height: 22px;
        margin-left: 3px;
    }

    .map-screen .points-search .checkbox-inline label {
        font-size: 12px;
    }
}

@media (max-width: 400px) {
    header .xs-menu {
        width: 100%;
    }
}

@media (max-width: 350px) {
    header .top-logo .text {
        display: none;
    }

    header .top-logo {
        flex-shrink: 0;
    }

    header .top-logo {
        margin-left: 14px;
    }

    header .top-row .left-part {
        width: calc(50% + 18px);
        justify-content: space-between;
    }

    .advantages-cont .advantages-list .advantages-tile .title {
        font-size: 10px;
    }

    .services-cont .service-area .header .service-data {
        flex-direction: column;
        align-items: flex-start;
        justify-content: space-around;
        height: 100px;
        margin-bottom: 25px;
    }

    .services-cont .service-area .header .service-data .title {
        margin-left: 0;
    }

    .pic-building img {
        margin-top: -50px;
    }
}


.success-message {
    display: none;
    text-align: center;
    padding: 20px;
    color: #000;
    animation: fadeIn 0.5s ease-in;
}

.success-message h3 {
    color: #000;
    margin-bottom: 10px;
}

.error-message {
    display: none;
    text-align: center;
    padding: 10px;
    color: #dc3545;
    margin-top: 10px;
    animation: shake 0.5s ease-in-out;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes shake {
    0%, 100% {
        transform: translateX(0);
    }
    10%, 30%, 50%, 70%, 90% {
        transform: translateX(-5px);
    }
    20%, 40%, 60%, 80% {
        transform: translateX(5px);
    }
}


@media (max-width: 824px) {
    .first-screen .logo-h1 h1 a br {
        display: none;
    }
}

.top-logo svg {
    width: 100%;
    height: 34px;
}


.offer-screen h4 {
    font-weight: 800;
    font-size: 16px;
    line-height: 20px;
}

.offer-screen p {
    line-height: 22px;
}


/*test*/
@media (max-width: 991px) {
    .pic-building img {
        max-width: 73% !important;
    }
}


@media (max-width: 1199px) {
    .first-screen .first-cont {
        display: flex !important;
        align-items: flex-end !important;
        justify-content: space-between !important;
        flex-direction: column-reverse !important;
        padding-top: 50px;
    }
}

@media (max-width: 991px) {
    .first-cont .brackets-area {
        margin-top: 40px;
        margin-bottom: 0;
    }
}


.offer-screen__list {
    display: flex;
    width: 100%;
    gap: 40px;
}


.offer-screen__item {
    width: calc(33.3333% - 26.6px);
    flex-shrink: 0;
    border: 1px solid #878787;
    padding: 30px;
}

.offer-screen__subtitle {
    text-align: center;
    margin-bottom: 30px;
}

.offer-screen__item-title {
    /*margin-bottom: 20px;*/
    display: block;
}

@media (max-width: 768px) {
    .offer-screen__list {
        gap: 40px;
        flex-direction: column;
    }

    .offer-screen__item {
        width: 100%;
    }
}


.custweb-subtitle {
    text-align: center;
}

.custweb-description {
    display: flex;
    width: 100%;
    gap: 50px;
}

.custweb-description__video {
    width: calc(50% - 25px);
    flex-shrink: 0;
}

.custweb-description__content {
    width: calc(50% - 25px);
    flex-shrink: 0;
}

.custweb-participants {
    display: flex;
    width: 100%;
    gap: 40px;
}

.custweb-participants__item {
    width: calc(33.3333% - 26.6px);
    flex-shrink: 0;
    border: 1px solid #878787;
    padding: 30px;
}

.custweb-participants__title {
    margin-bottom: 20px;
    text-align: center;
}

.custweb-participants__description {
    margin-bottom: 0;
}

@media (max-width: 768px) {
    .custweb-subtitle {
        text-align: center;
    }

    .custweb-description {
        gap: 40px;
        flex-direction: column;
    }

    .custweb-description__video {
        width: 100%;
    }

    .custweb-description__content {
        width: 100%;
    }

    .custweb-participants {
        gap: 40px;
        flex-direction: column;
    }

    .custweb-participants__item {
        width: 100%;
    }

    .custweb-participants__title {
        margin-bottom: 20px;
        text-align: center;
    }

    .custweb-participants__description {
        margin-bottom: 0;
    }
}




.oss-permit {
    display: flex;
    margin: 20px 0;
}

.oss-permit a {
    color: #000000;
    text-decoration: none;
    cursor: pointer;
}

.oss-permit__content {
    flex: 1;
}

.oss-permit__title {
    margin-top: 0;
    margin-bottom: 15px;
}

.oss-permit__intro {
    margin-bottom: 20px;
    line-height: 1.5;
}

.oss-permit__intro strong {
}

.oss-permit__issuer {
    padding: 15px;
    border-radius: 2px;
    margin-bottom: 25px;
    border: 1px dashed #000000;
    margin-top: 20px;
}

.oss-permit__issuer-title {
    font-weight: bold;
    margin-top: 0;
    margin-bottom: 8px;
}

.oss-permit__documents {
    margin-bottom: 0;
}

.oss-permit__documents-title {
    font-weight: bold;
    margin-bottom: 14px !important;
}

.oss-permit__list {
    padding-left: 20px;
    margin: 0;
    border-left: 2px solid #000000;
    padding-left: 28px;
    margin-left: 0;
}

.oss-permit__list-item {
    margin-bottom: 8px;
    line-height: 1.4;
    padding-left: 5px;
}

.oss-permit__list-item:last-child {
    margin-bottom: 0;
}




