:root {
    --space-60: 60px;
    --space-50: 50px;
    --space-40: 40px;
    --space-25: 25px;

    --font-48: 48px;
    --font-40: 40px;
    --font-36: 36px;
    --font-30: 30px;
    --font-24: 24px;

    --container-padding: 40px;

    --color-primary: #000;
    --color-secondary: #131313;
    --color-tertiary: #191d1f;
    --color-default: rgba(0, 0, 0, 0.1);
}

body {
    color: var(--color-primary);
    font-family: 'Montserrat', sans-serif;
}

a, input, select, textarea, option, button {
    outline: none !important;
}

a {
    color: inherit;
    transition: color 0.2s;
}

a:hover,
a:focus {
    color: inherit;
}

.text a,
label a {
    font-weight: 700;
    color: #ef0000;
}

.text a:hover,
.text a:focus,
label a:hover,
label a:focus {
    text-decoration: underline;
}

#page,
#content {
    overflow: hidden;
}

.subpage #content{
    padding-top: 100px;
}

.container {
    position: relative;
    width: 100%;
    max-width: 1670px;
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--container-padding);
    padding-right: var(--container-padding);
    clear: both;
}

.container--sm {
    max-width: 1350px;
}

.container .container {
    max-width: 1590px;
    padding-left: 0;
    padding-right: 0;
}

.container .container--sm {
    max-width: 1270px;
}

.container--noClear {
    clear: none;
}

.container--noClear::before,
.container--noClear::after {
    content: none;
}

.icon {
    display: block;
    flex-shrink: 0;
}

.icon-mask {
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: cover;
    mask-size: cover;
    background-color: currentColor;
}

.icon-user {
    -webkit-mask-image: url('../images/icons/user.svg');
    mask-image: url('../images/icons/user.svg');
}

.icon-register {
    -webkit-mask-image: url('../images/icons/register.svg');
    mask-image: url('../images/icons/register.svg');
}

.icon-logout {
    -webkit-mask-image: url('../images/icons/logout.svg');
    mask-image: url('../images/icons/logout.svg');
}

.icon-loupe {
    -webkit-mask-image: url('../images/icons/loupe.svg');
    mask-image: url('../images/icons/loupe.svg');
}

.icon-refresh {
    -webkit-mask-image: url('../images/icons/refresh.png');
    mask-image: url('../images/icons/refresh.png');
}

.icon-arrowUp {
    -webkit-mask-image: url('../images/icons/arrow-up.svg');
    mask-image: url('../images/icons/arrow-up.svg');
}

.icon-arrowRight {
    -webkit-mask-image: url('../images/icons/arrow-right.svg');
    mask-image: url('../images/icons/arrow-right.svg');
}

.icon-arrowDown {
    -webkit-mask-image: url('../images/icons/arrow-down.svg');
    mask-image: url('../images/icons/arrow-down.svg');
}

.icon-arrowLeft {
    -webkit-mask-image: url('../images/icons/arrow-left.svg');
    mask-image: url('../images/icons/arrow-left.svg');
}

.icon-phone {
    -webkit-mask-image: url('../images/icons/tel.svg');
    mask-image: url('../images/icons/tel.svg');
}

.icon-email {
    -webkit-mask-image: url('../images/icons/email.svg');
    mask-image: url('../images/icons/email.svg');
}

.icon-pin {
    -webkit-mask-image: url('../images/icons/pin.svg');
    mask-image: url('../images/icons/pin.svg');
}

.icon-scroll {
    -webkit-mask-image: url('../images/icons/scroll.svg');
    mask-image: url('../images/icons/scroll.svg');
}

.btn {
    position: relative;
    z-index: 10;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;

    border-radius: 0;
    box-shadow: none !important;
    transition: background-color 0.2s, border-color 0.2s, color 0.2s;
}

.btn-lg {
    min-height: 46px;
    min-width: 160px;
    padding: 5px 32px;
}

.btn-md {
    min-height: 40px;
    min-width: 140px;
    padding: 5px 24px;
}

.btn-sm {
    min-height: 36px;
    min-width: 120px;
    padding: 5px 16px;
}

.btn-square {
    min-width: initial;
    padding: 5px;
}

.btn-square > .icon {
    height: 100%;
    width: 100%;
}

.btn-square.btn-lg {
    width: 46px;
}

.btn-square.btn-md {
    width: 40px;
}

.btn-square.btn-sm {
    width: 36px;
}

.btn-link.btn-link {
    color: inherit;
    display: inline-block;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.btn-link:after {
    content: '\f105';
    position: relative;
    display: inline-block;
    margin-left: 10px;
    font-family: 'FontAwesome';
}

.btn[disabled],
.btn[disabled]:hover {
    opacity: 0.2;
    cursor: not-allowed;
}

.btn-primary,
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.btn-primary.active:focus,
.btn-primary:hover:focus,
.btn-primary:hover:active,
.btn-primary:focus:active {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    color: #fff;
}

.btn-primary.active {
    background-color: #fff;
    color: var(--color-primary);
}

@media screen and (min-width: 1140px) {
    .btn-primary:not([disabled]):hover,
    .btn-primary:not([disabled]).active:hover {
        background-color: #fff;
        color: var(--color-primary);
    }
}

.btn-secondary,
.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active,
.btn-secondary.active,
.btn-secondary.active:focus,
.btn-secondary:hover:focus,
.btn-secondary:hover:active,
.btn-secondary:focus:active {
    background-color: var(--color-secondary);
    border-color: var(--color-secondary);
    color: #fff;
}

.btn-secondary.active {
    background-color: #fff;
    color: var(--color-secondary);
}

@media screen and (min-width: 1140px) {
    .btn-secondary:not([disabled]):hover,
    .btn-secondary:not([disabled]).active:hover {
        background-color: #fff;
        color: var(--color-secondary);
    }
}

.btn-red,
.btn-red:hover,
.btn-red:focus,
.btn-red:active,
.btn-red.active,
.btn-red.active:focus,
.btn-red:hover:focus,
.btn-red:hover:active,
.btn-red:focus:active {
    background-color: #ef0000;
    border-color: #ef0000;
    color: #fff;
}

.btn-red.active {
    background-color: #fff;
    color: #ef0000;
}

@media screen and (min-width: 1140px) {
    .btn-red:not([disabled]):hover,
    .btn-red:not([disabled]).active:hover {
        background-color: #fff;
        color: #ef0000;
    }
}


.btn-default,
.btn-default:hover,
.btn-default:focus,
.btn-default:active,
.btn-default.active,
.btn-default.active:focus,
.btn-default:hover:focus,
.btn-default:hover:active,
.btn-default:focus:active {
    background-color: #fff;
    border-color: var(--color-default);
    color: var(--color-primary);
}

.btn-default.active {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    color: #fff;
}

@media screen and (min-width: 1140px) {
    .btn-default:not([disabled]):hover,
    .btn-default:not([disabled]).active:hover {
        background-color: var(--color-primary);
        border-color: var(--color-primary);
        color: #fff;
    }
}

.title {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    overflow: visible;
}

.text {
    font-size: 16px;
    line-height: 36px;
}

.text h2 {
    color: var(--color-primary);
    font-size: calc(var(--font-24) + 2px);
    font-weight: 700;
    letter-spacing: 0.15em;
    margin-bottom: var(--space-25);
}

.text h3 {
    color: var(--color-primary);
    font-size: var(--font-24);
    font-weight: 700;
    letter-spacing: 0.15em;
    margin-bottom: var(--space-25);
}

.text h3 {
    color: var(--color-primary);
    font-size: calc(var(--font-24) - 2px);
    font-weight: 700;
    margin-bottom: 15px;
}

.text h3 {
    color: var(--color-primary);
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 15px;
}


.text ul,
.text ol ul,
.text ul ul {
    list-style: none;
}

.text ul > li,
.text ol > li {
    position: relative;
    left: 25px;
    padding-right: 25px;
}

.text ul > li:before {
    content: '';
    position: relative;
    display: inline-block;
    top: -3px;
    left: -10px;
    margin-left: -6px;
    width: 6px;
    height: 6px;
    background-color: var(--color-primary);
    border-radius: 50%;
}

.text table tr:nth-child(even) {
    background: #f2f2f2;
}

.text table th,
.text table td {
    padding: 12px 20px;
}

.text table td {
    border: 1px solid var(--color-default);
}

.mainpage header:not(.sticky) {
    background-color: transparent;
}

header:not(.sticky) .header-inner {
    min-height: 100px;
}

header {
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    right: 0;
    background-color: var(--color-secondary);
    transition: background-color 0.2s;
}

.header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 80px;
    transition: min-height 0.2s;
}

.header-right {
    position: relative;
    z-index: 2000;
    display: flex;
    align-items: center;
}

.header-right > * + * {
    margin-left: calc(var(--space-25) + 5px);
}

.header-left{
    align-self: center;
    width: 40px;
}

.header-left img{
    display: block;
    max-width: 100%;
}


.mainpage header:not(.sticky) .logo{
    display: none;
}

.logo a {
    display: block;
}

.logo a img {
    display: block;
    max-width: 100%;
}

.main-menu-button {
    display: block !important;
}

#main-menu,
#main-menu > ul,
#main-menu > ul > li,
#main-menu > ul > li > a {
    display: flex;
}

#main-menu > ul > li {
    position: relative;
}

#main-menu > ul > li + li {
    margin-left: var(--space-40);
}

#main-menu > ul > li > a {
    align-items: center;
}

#main-menu > ul > li > a:hover,
#main-menu > ul > li > a:focus,
#main-menu > ul > li.active > a {
    color: #fff;
}

#main-menu > ul > li > ul {
    position: absolute;
    top: calc(100% - 10px);
    right: 0;
    width: 260px;
    background-color: #fff;
    opacity: 0;
    pointer-events: none;
    transition: top 0.2s, opacity 0.2s;
}

#main-menu > ul > li > ul:before {
    content: '';
    position: absolute;
    z-index: 10;
    inset: 0;
    border: 1px solid var(--color-default);
    pointer-events: none;
}

#main-menu > ul > li:hover > ul,
#main-menu > ul > li:focus > ul,
#main-menu > ul > li > ul.hovered {
    top: 100%;
    opacity: 1;
    pointer-events: initial;
}

#main-menu > ul > li > ul > li > a {
    display: flex;
    align-items: center;
    min-height: 40px;
    padding: 5px 12px;
}

#main-menu > ul > li > ul > li > a:hover,
#main-menu > ul > li > ul > li > a:focus,
#main-menu > ul > li > ul > li.active > a {
    color: var(--color-primary);
}

@media screen and (min-width: 1140px) {
    .mainsearch {
        top: 0 !important;
        display: flex !important;
        align-items: center;
        width: 350px;
    }
}

.mainsearch {
    position: relative;
    max-width: 100%;
}

.mainsearch-search {
    display: flex;
    width: 100%;
}

.mainsearch .form-element-container {
    flex-grow: 1;
}

.mainsearch .form-control {
    border-right: none;
}

.mainsearch-submit {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 46px;
    padding: 8px;
    background-color: #fff;
    border: 1px solid var(--color-default);
    color: var(--color-secondary);
    transition: background-color 0.2s, border-color 0.2s, color 0.2s;
}

.mainsearch-submit .icon {
    height: 100%;
    width: 100%;
}

.mainsearch-submit .icon {
    height: 100%;
    width: 100%;
}

@media screen and (min-width: 1140px) {
    .mainsearch-submit:hover,
    .mainsearch-submit:focus {
        background-color: var(--color-primary);
        border-color: var(--color-primary);
        color: var(--color-secondary);
    }
}

.mainsearch .alert-block,
.mainsearch .form-control-feedback {
    display: none;
}

.user-nav,
.user-nav-item,
.user-nav-item-inner {
    display: flex;
}

.user-nav-item {
    position: relative;
}

.user-nav-item-inner {
    align-items: center;
    color: #fff;
}

.user-nav-item + .user-nav-item {
    margin-left: var(--space-50);
}

.header-top .user-nav-item + .user-nav-item::before {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: calc(-1 * (var(--space-50) / 2));
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    height: 12px;
    border-left: 1px solid rgba(255, 255, 255, 0.5);
}

@media screen and (min-width: 1140px) {
    .user-nav-item:hover a.user-nav-item-inner,
    .user-nav-item:focus a.user-nav-item-inner,
    .user-nav-item:focus-within a.user-nav-item-inner {
        color: var(--color-primary);
    }
}

.user-nav-item .icon {
    width: 32px;
    height: 32px;
}

header .social-list {
    align-self: center;
}

.social-list > ul {
    margin: -5px;
    font-size: 0;
}

.social-list > ul > li {
    display: inline-block;
    vertical-align: middle;
    padding: 5px;
}

.social-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    background-color: var(--color-primary);
    border: 1px solid var(--color-primary);
    color: var(--color-secondary);
    transition: background-color 0.2s, border-color 0.2s, color 0.2s;
}

.social-icon svg {
    fill: currentColor;
}

@media screen and (min-width: 1140px) {
    .social-icon:hover,
    .social-icon:focus {
        background-color: var(--color-secondary);
        color: var(--color-primary);
    }
}

.langs-menu {
    position: relative;
    z-index: 10;
    display: flex;
    align-items: center;
}

.lang {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    padding: 5px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.05em;
    transition: background-color 0.2s, color 0.2s;
}

.lang > * + * {
    /*margin-left: 10px;*/
}

.lang-button {
    position: relative;
    width: 40px;
    padding: 0;
    background-color: #fff;
    border: none;
    border-radius: 50%;
}

.lang-button .arrow {
    font-size: 18px;
    transition: all 0.2s;
}

.langs-menu ul {
    position: absolute;
    top: calc(100% - 10px);
    left: 0;
    right: 0;
    background-color: #fff;
    opacity: 0;
    pointer-events: none;
    transition: top 0.2s, opacity 0.2s;
}

.langs-menu ul:before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 10;
    border: 1px solid var(--color-default);
    pointer-events: none;
}

.langs-menu li + li {
    border-top: 1px solid var(--color-default);
}

.flag-icon {
    box-shadow: 0 0 0 1px var(--color-default);
}

.langs-menu-icon img {
    display: block;
    max-width: 100%;
}

.lang-button .arrow,
.langs-menu-icon {
    display: none;
}

@media screen and (min-width: 1140px) {
    .langs-menu:hover ul,
    .langs-menu:focus ul,
    .langs-menu:focus-within ul {
        top: 100%;
        opacity: 1;
        pointer-events: initial;
    }
    
    .langs-menu:hover .lang-button .arrow,
    .langs-menu:focus .lang-button .arrow,
    .langs-menu:focus-within .lang-button .arrow{
        -webkit-transform: scaleY(-1);
        -moz-transform: scaleY(-1);
        -ms-transform: scaleY(-1);
        -o-transform: scaleY(-1);
        transform: scaleY(-1);
    }

    a.lang:hover,
    a.lang:focus {
        color: #fff;
        background-color: var(--color-secondary);
    }

    .langs-menu--list a.lang:hover,
    .langs-menu--list a.lang:focus {
        background-color: var(--color-primary);
    }
}

.langs-menu--list .lang-button,
.langs-menu--list .langs-menu-short {
    display: none;
}

.langs-menu--list ul {
    position: static;
    opacity: 1;
    pointer-events: initial;
    display: flex;
    align-items: center;
    background-color: transparent;
}

.langs-menu--list ul:before {
    content: none;
}

.langs-menu--list li + li {
    margin-left: 10px;
    border-top: none;
}

.langs-menu--list .lang {
    width: 40px;
    padding: 0;
    justify-content: center;
}

.lang-item .langs-menu-short{
    display: none;
}

footer {
    position: relative;
    background-color: var(--color-tertiary);
    color: #fff;
}

.footer-bg {
    position: absolute;
    inset: 0;
}

.footer-bg img {
    display: block;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.footer-main {
    padding: calc(2 * var(--space-50)) 0;
    text-align: center;
}

.footer-logo {
    width: 660px;
    max-width: 100%;
    margin: 0 auto;
}

.footer-logo img {
    display: block;
    max-width: 100%;
}

.footer-logo + .footer-text {
    margin-top: var(--space-25);
}

.footer-text {
    text-align: center;
    font-size: 14px;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
}

footer .contact-list {
    padding-top: calc(2 * var(--space-40));
}


.footer-bar-links a:hover{
    text-decoration: underline;
}

.contact-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    margin: -10px calc(-1 * var(--space-40));
}

.contact-list li a:hover{
    text-decoration: underline;
}

.contact-list .social-list > ul {
    margin: -10px calc(-1 * var(--space-40));
}

.contact-list .social-list > ul > li,
.contact-list > li {
    padding: 10px var(--space-40);
}

.contact-list > li,
.contact-list > li > a {
    display: flex;
    align-items: center;
}

.contact-list .social-icon {
    height: auto;
    width: auto;
    background-color: transparent;
    color: inherit;
    border: none;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    transition: transform 0.3s;
}

@media screen and (min-width: 1140px){
    .contact-list .social-icon:hover{
        -webkit-transform: scale(1.08);
        -moz-transform: scale(1.08);
        -ms-transform: scale(1.08);
        -o-transform: scale(1.08);
        transform: scale(1.08);
    }
}

.contact-list .icon,
.contact-list .social-icon > svg {
    flex-shrink: 0;
    height: 66px;
    width: 66px;
    border: none;
    color: #fff;
    fill: currentColor;
}

.contact-icon > .icon,
.contact-list > .social-icon > * {
    height: 100%;
    width: 100%;
}

.contact-list .caption {
    padding-left: var(--space-25);
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    text-align: left;
}

@media screen and (min-width: 1140px) {
    .footer-col-content {
        display: block !important;
    }
}

.footer-col-content > ul {
    font-size: 0;
}

.footer-col-content > ul > li + li {
    margin-top: 12px;
}

.footer-col-content > ul > li > a {
    font-size: 14px;
    line-height: 18px;
}

.footer-col-content > ul > li.active > a {
    color: var(--color-secondary);
}

@media screen and (min-width: 1140px) {
    .footer-col-content > ul > li > a:hover,
    .footer-col-content > ul > li > a:focus {
        color: var(--color-secondary);
    }
}

.footer-bar {
    position: relative;
    padding: 10px 0;
    background-color: #13131399;
    color: #fff;
    font-size: 14px;
    font-weight: 300;
    line-height: 30px;
    letter-spacing: 0.05em;
}

.footer-bar-inner:after {
    content: '';
    display: table;
    clear: both;
}

.footer-bar-inner > * {
    float: left;
}

.footer-bar-inner > *:not(:last-child) {
    margin-right: 30px;
}

.footer-bar-links {
    margin-left: -8px;
    text-transform: uppercase;
}

.footer-bar-links > li {
    display: inline-block;
    vertical-align: middle;
    margin: 3px 8px;
    font-size: 14px;
    line-height: 24px;
}

.footer-bar-links > li > a:hover,
.footer-bar-links > li > a:focus,
.footer-bar-links > li.active > a {
    color: var(--color-primary);
}

.copyright-undicom {
    float: right;
    font-family: inherit;
    font-weight: inherit;
    font-size: inherit;
    letter-spacing: inherit;
    line-height: inherit;
    color: inherit;
}

.copyright-undicom a img{
    filter: invert(1);
}

form.form {
    padding: 0;
}

.form-control,
.form .form-control {
    height: 46px;
    border-color: var(--color-default);
    border-radius: 0;
    font-family: 'Roboto', sans-serif;

    box-shadow: none !important;
}

.form-control::placeholder {
    color: inherit;
}

.input-group-addon {
    background-color: #fff;
    border: none;
    border-radius: 0;
}

.form .captcha-image-wrapper,
.form .form-group-sm .captcha-image-wrapper,
.form .form-group-lg .captcha-image-wrapper {
    border-radius: 0;
}

.form button.captcha-refresh {
    right: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    border-color: var(--color-default);
    color: var(--color-primary);
}

.form button.captcha-refresh .icon {
    height: 18px;
    width: 18px;
}

.form button.captcha-refresh .fa-spin {
    -webkit-animation-play-state: paused;
    -moz-animation-play-state: paused;
    -o-animation-play-state: paused;
    animation-play-state: paused
}

@media screen and (min-width: 1140px) {
    .form button.captcha-refresh:hover {
        background-color: var(--color-primary);
        border-color: var(--color-primary);
        color: #fff;
    }
    .form button.captcha-refresh:hover .fa-spin {
        -webkit-animation-play-state: running;
        -moz-animation-play-state: running;
        -o-animation-play-state: running;
        animation-play-state: running
    }
}

.form-element-name {
    color: var(--color-primary);
    font-size: 15px;
}

.form .checkboxradio-container label {
    font-size: 14px;
}

.checkboxradio-container .row > .col-xs-12 + .col-xs-12 {
    margin-top: 12px;
}

.form .before-consent-row,
.form .after-consent-row,
.form .consent-row label,
.form .consent-all {
    font-size: 12px;
    font-weight: 300;
    color: #666;
}

.form .consent-row label {
    font-size: 14px;
}

.form .consent-all {
    color: var(--color-primary);
}

.select2-dropdown {
    z-index: 100;
    border-radius: 0;
    border: none;
}

.select2-dropdown:before {
    content: '';
    position: absolute;
    z-index: 10;
    inset: 0;
    border: 1px solid var(--color-default);
    border-top: none;
    pointer-events: none;
}

.select2-container--default .select2-selection--multiple,
.select2-container .select2-selection--single {
    height: 46px;
    border-color: var(--color-default);
    border-radius: 0;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered,
.select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-left: 12px;
    padding-right: 44px;
    color: var(--color-secondary);
    font-size: 14px;
    line-height: 24px;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered .select2-search {
    line-height: 44px;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered {
    white-space: nowrap;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered li {
    line-height: 24px;
    display: inline-block;
    float: none;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice {
    margin-top: 8px;
}

.has-feedback .select2-container--default .select2-selection--single .select2-selection__rendered {
    padding-right: 68px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    top: 50%;
    right: 16px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    height: auto;
    width: 14px;
    color: inherit;
    text-align: center;
    font-size: 0;
    transition: all 0.2s;
}

.select2-container--default .select2-selection--single .select2-selection__arrow:before {
    content: '\f107';
    font-family: 'FontAwesome';
    font-size: 16px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow > b {
    display: none;
}

.select2-container--default.select2-container--open .select2-selection__arrow {
    -webkit-transform: translateY(-50%) scaleY(-1);
    -moz-transform: translateY(-50%) scaleY(-1);
    -ms-transform: translateY(-50%) scaleY(-1);
    -o-transform: translateY(-50%) scaleY(-1);
    transform: translateY(-50%) scaleY(-1);
}

.select2-results__option[aria-selected] {
    padding: 14px 12px;
    color: var(--color-secondary);
    font-size: 14px;
    font-weight: 300;
    line-height: 18px;
    transition: background-color 0.2s, color 0.2s;
}

.select2-container--default .select2-results__option[aria-selected=true] {
    background-color: #f6f6f6;
}

.select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: var(--color-primary);
}

.form-control-feedback {
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}

.section-contact-map {
    position: relative;
    padding-top: 50%;
}

.contact-map {
    position: absolute;
    inset: 0;
}

.contact-map iframe {
    display: block;
    height: 100%;
    width: 100%;
}

.breadcrumb-container {
    margin: 20px 0;
}

.breadcrumb {
    padding: 0;
    margin: 0;
    border-radius: 0;
    background-color: transparent;
    font-size: 0;
}

.breadcrumb > li > a {
    font-size: 12px;
}

.breadcrumb > li + li:before {
    content: '>';
    font-size: 12px;
    padding: 0 15px;
    color: inherit;
}

.breadcrumb > li > a.last {
    color: var(--color-primary);
}

@media screen and (min-width: 1140px) {
    .breadcrumb > li > a:hover,
    .breadcrumb > li > a:focus {
        color: var(--color-primary);
    }
}

.pagination-wrapper {
    max-width: initial;
    padding: 0;
}

.pagination-wrapper ul li a {
    color: var(--color-secondary);
}

.pagination-wrapper ul li.active a {
    color: var(--color-primary);
}

@media screen and (min-width: 1140px) {
    .pagination-wrapper ul li a:hover,
    .pagination-wrapper ul li a:focus {
        color: var(--color-primary);
    }
}

.newsletter-form {
    display: flex;
}

.newsletter-form .form-element-email-container {
    flex-grow: 1;
}

.newsletter-form .form-control {
    border-right: none;
}

.logotype-slider {
    display: flex;
    margin: calc(-1 * var(--space-25));
}

.logotype-slider .slick-list,
.logotype-slider .slick-track {
    display: flex;
    align-items: center;
    width: 100%;
}

.logotype {
    width: 25%;
    flex-shrink: 0;
    padding: var(--space-25);
}

.logotype img {
    display: block;
    max-width: 100%;
    margin: 0 auto;
}

.section-article {
    margin: var(--space-50) 0;
}

.section-article:after,
.article-content:after {
    content: '';
    display: table;
    clear: both;
}

.article-image {
    position: relative;
    z-index: 10;
    float: left;
    max-width: 50%;
    margin-right: var(--space-50);
    margin-bottom: 15px;
}

.article-image img {
    display: block;
    max-width: 100%;
    margin: 0 auto;
}

.gallery-list {
    margin: -5px;
    font-size: 0;
}

.gallery-list-item {
    display: inline-block;
    vertical-align: top;
    width: 25%;
    padding: 5px;
}

.gallery-picture {
    position: relative;
    display: block;
    width: 100%;
    font-size: 0;
}

.gallery-picture > img {
    display: block;
    max-width: 100%;
}

.gallery-picture-hover {
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    transition: opacity 0.2s;
}

@media screen and (min-width: 1140px) {
    .gallery-picture:hover .gallery-picture-hover {
        opacity: 1;
    }
}

.page-heading {
    margin: var(--space-50) 0;
    text-align: center;
}

.page-heading-title {
    font-size: 50px;
}

.section-heading {
    position: relative;
    margin-bottom: var(--space-50);
    text-align: center;
}

.section-heading-title {
    font-size: 55px;
}

.section-heading-title--sm {
    font-size: 45px;
}

.section-heading-buttons {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}

.section-heading-buttons > * + .section-heading-arrows {
    margin-left: var(--space-25);
}

.section-heading-arrows {
    display: flex;
}

.section-heading-arrows > * + * {
    margin-left: 10px;
}

.mainSlider {
    position: relative;
    color: #fff;
}

.mainSlider-arrows {
    position: absolute;
    bottom: var(--space-50);
    right: var(--space-50);
    font-size: 0;
}

.mainSlider-arrows > * + * {
    margin-left: 10px;
}

.mainSlider-slider {
    display: flex;
}

.mainSlider-slider .slick-list,
.mainSlider-slider .slick-track {
    display: flex;
    width: 100%;
}

.mainSlider-slide {
    width: 100%;
    flex-shrink: 0;
    display: flex !important;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
}

.mainSlider-logo{
    position: absolute;
    top: 35%;
    width: 100%;
    z-index: 1;
    padding-left: var(--container-padding);
    padding-right: var(--container-padding);
}

.mainSlider-logo img{
    display: block;
    max-width: 100%;
    margin: 0 auto;
}

.mainSlider-image {
    position: absolute;
    inset: 0;
}

.mainSlider-image img {
    display: block;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.mainSlider-content {
    position: relative;
    z-index: 1;
    height: 100%;
    max-width: min(864px, 80%);
    padding: 0 var(--container-padding);
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    text-align: right;
}

.mainSlider-content > img {
    display: block;
    max-width: 100%;
}

* + .mainSlider-text {
    margin-top: 15px;
}

.mainSlider-text {
    font-size: 18px;
    line-height: 24px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}

.mainSlider-scroll {
    position: absolute;
    z-index: 50;
    bottom: calc(var(--space-60) + var(--space-25) + 5px);
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    padding: 0;
    margin: 0 auto;
    background-color: transparent;
    border: none;
}

.mainSlider-scroll .icon {
    height: 80px;
    width: 80px;
    margin: -40px;
    color: #fff;
    transition: color 0.3s;
}

.mainSlider-scroll:hover .icon{
    color: #ef0000;
}

.section-bg {
    position: absolute;
    inset: 0;
    background-color: var(--color-tertiary);
}

.section-bg > img {
    display: block;
    height: 100%;
    width: 100%;
    object-fit: cover;
    opacity: 0.5;
}

.section-inner {
    display: flex;
}

.section-content {
    position: relative;
    width: 50%;
}

.section-content:first-child {
    padding-right: calc(3 * var(--space-60));
}

.section-content:last-child {
    padding-left: calc(3 * var(--space-60));
}

.section-image {
    position: relative;
    width: calc(50% + ((100vw - 1590px) / 2));
}

.section-image:first-child {
    margin-left: calc((1590px - 100vw) / 2);
}

.section-image:last-child {
    margin-right: calc((1590px - 100vw) / 2);
}

@media screen and (max-width: 1670px) {
    .section-image {
        width: calc(50% + var(--container-padding));
    }
    .section-image:first-child {
        margin-left: calc(-1 * var(--container-padding));
    }
    .section-image:last-child {
        margin-right: calc(-1 * var(--container-padding));
    }
}

.section-image > img {
    display: block;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.floating {
    position: absolute;
    z-index: 10;
    pointer-events: none;
}

.section-about .section-content {
    padding-top: var(--space-60);
    padding-bottom: calc(4 * var(--space-50));
}

.icons {
    display: flex;
    flex-wrap: wrap;
    margin: -15px;
}

.icons li {
    width: 50%;
    padding: 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.icons .icon {
    height: 80px;
    width: 80px;
    margin: -15px;
}

.icon-text {
    flex-grow: 1;
    margin-top: 10px;
    font-size: 16px;
    letter-spacing: 0.1em;
}

.icon-caption {
    margin-top: 10px;
    font-size: 16px;
    font-weight: 700;
}

.icon-caption strong {
    font-size: 22px;
}

.icon-caption span {
    font-size: 22px !important;
}

.about-floating {
    position: absolute;
    bottom: 0;
    right: -35px;
}

.section-floating {
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0);
    -moz-transform: translate3d(-50%, -50%, 0);
    -ms-transform: translate3d(-50%, -50%, 0);
    -o-transform: translate3d(-50%, -50%, 0);
    transform: translate3d(-50%, -50%, 0);
    width: min(22.3958vw, 430px);
}

.section-service {
    position: relative;
    padding: calc(2 * var(--space-50)) 0 calc(2 * var(--space-60));
    color: #fff;
}

.section-service .section-heading-title {
    margin-bottom: calc(2 * var(--space-60));
}

.services {
    display: flex;
    flex-wrap: wrap;
    margin: calc(-1 * var(--space-40)) calc(-1 * var(--space-25));
}

.services li {
    position: relative;
    width: 33.3333%;
    padding: var(--space-50) var(--space-25);
}

.service {
    max-width: 420px;
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-left: 68px;
}

.service:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 28px;
    width: 38px;
    background: url('../images/service.png') no-repeat center /contain;
}

.service-link {
    position: absolute;
    inset: 0;
    z-index: 10;
}

.service-title {
    flex-grow: 1;
    font-size: 19px;
    line-height: 30px;
}

.service-text {
    margin-top: var(--space-25);
    font-size: 15px;
    line-height: 30px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}

.services .read-more {
    font-size: 15px;
    line-height: 30px;
    font-weight: 700;
}

@media screen and (min-width: 1140px) {
    .service:hover .read-more,
    .service:focus .read-more {
        text-decoration: underline;
    }
}

.space-floating {
    bottom: 0;
    left: -16px;
    width: min(111.0691%, 883px);
}

.section-space .section-content {
    padding-top: var(--space-40);
    padding-bottom: calc(4 * var(--space-40));
}

.form-title {
    font-size: 26px;
    margin-bottom: var(--space-50);
}

.section-transaction {
    margin: var(--space-50) 0;
}

.section-transaction-heading {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0 var(--container-padding);
    text-align: right;
}

.section-transaction-heading > * + .btn-link {
    margin-top: var(--space-25);
}

.transaction-list > li {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.transaction-list > li:nth-child(even) {
    flex-direction: row-reverse;
}

.transaction-floating {
    width: 570px;
    max-width: 33.3333%;
}

.transaction-floating img {
    display: block;
    max-width: min(370px, 80%);
    margin: 0 auto;
}

.transaction {
    position: relative;
    display: flex;
    align-items: center;
    width: 860px;
    max-width: 66.6666%;
}

.transaction-link {
    position: absolute;
    inset: 0;
    z-index: 10;
}

.transaction-image {
    width: 43%;
    background-color: var(--color-tertiary);
}

.transaction-image img {
    display: block;
    width: 100%;
    object-fit: cover;
    /*opacity: 0.7;*/
    /*mix-blend-mode: luminosity;*/
}

.transaction-content {
    width: 57%;
    padding: var(--space-25) 0 var(--space-25) var(--space-60);
}

.transaction-logo {
    max-width: 150px;
    margin-bottom: var(--space-40);
}

.transaction-logo img {
    display: block;
    max-width: 100%;
}

.transaction-content > ul {
    font-size: 0;
}

.transaction-content > ul > li {
    font-size: 16px;
    line-height: 18px;
}

.transaction-content > ul > li + li {
    margin-top: 18px;
}

.transaction-content > ul > li > strong + span {
    margin-left: 5px;
}

.transaction-content > ul > li strong{
    word-break: keep-all;
}

/*ABOUT*/

.title-white{
    color: #fff;
}

.section-title--sm{
    font-size: calc(var(--font-24) + 2px);
}

.section-about-short{
    background-repeat: no-repeat;
    background-size: cover;
}

.about-shot-inner{
    display: flex;
    align-items: flex-end;
    padding-top: calc((2 * var(--space-60)) + var(--space-40));
    padding-bottom: calc((2 * var(--space-60)) - 2px);
}

.about-short-content{
    width: 50%;
    padding-right: var(--space-50);
    margin-bottom: var(--space-50);
}

.about-short-content .section-heading-title{
    max-width: 500px;
}

.about-short-image{
    width: 50%;
    display: flex;
    justify-content: flex-end;
}

.about-short-image img{
    display: block;
    max-width: 100%;
}

.about-short-text{
    color: #fff;
}

.section-about .text ul{
    padding: var(--space-40) 0;
    padding-left: 15px
}

.section-icons{
    margin: -5px;
    display: flex;
    flex-wrap: wrap;
}

.section-icons li{
    width: 33.3333%;
    padding: 5px;
    position: relative;
}


.section-icons li::before{
    content: '';
    display: block;
    width: 100%;
    padding-top: 100%;
}

.icon-inner{
    position: absolute;
    top: 5px;
    bottom: 5px;
    left: 5px;
    right: 5px;
    padding: var(--space-25) var(--space-50);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    border: 1px solid rgba(23, 23, 21, 0.1);

}

.icon-inner .icon-text{
    flex-grow: initial;
}

.icon-inner .icon{
    height: 80px;
    width: 80px;
    margin: -15px;
}

/*TRANSACTIONS*/

.page-transactions{
    padding-bottom: calc(2 * var(--space-50));
    position: relative;
}

.page-transactions .transaction-list{
    margin-bottom: -19px;
}

.page-transactions .about-floating{
    bottom: initial;
    width: initial;
    top: 0;
}

.page-transactions .space-floating{
    bottom: calc((2 * var(--space-50) + 60px));
}

.page-transactions .transaction{
    width: 50%;
}

.page-transactions  .transaction-list > li:nth-child(even) .transaction{
    justify-content: flex-end;
}

.page-transactions .transaction-content{
    width: initial;
    padding-left: var(--space-50);
}

.page-transactions .transaction-image{
    width: 42%;
    flex-shrink: 0;
}

/*SERVICES*/

.page-service{
    padding-top: 0;
    padding-bottom: var(--space-50);
}

.page-service .services{
    margin: 0;
}

.page-service .services li{
    width: 100%;
    padding: 0;
}

.page-service .service {
    max-width: initial;
    padding-left: 0;
    padding: var(--space-40) 0;
    border-top: 1px solid rgba(255,255,255,0.5);
}

.page-service .service-text {
    display: block;
}

.page-service .services li:last-of-type .service{
    border-bottom: 1px solid rgba(255,255,255,0.5);
}

.page-service .service::before{
    display: none;
}

.page-service .service-title{
    position: relative;
    padding-left: 62px;
}

.page-service .service-title::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 28px;
    width: 32px;
    background: url(../images/service.png) no-repeat center /contain;
}

.page-service .service-text{
    margin-top: 15px;
}

.page-service-bottom{
    padding: calc(2 * var(--space-50)) 0;
    display: flex;
    justify-content: center;
}

.page-service-bottom img{
    display: block;
    width: 650px;
}

.text-floating{
    color: #000;
    opacity: 0.1;
    font-size: 220px;
    font-weight: 700;
    line-height: 0.7;
    letter-spacing: 24px;
}


/*.pulsing::after{*/
    /*content: '';*/
    /*display: block;*/
    /*position: absolute;*/
    /*top: 50%;*/
    /*left: 50%;*/
    /*-webkit-transform: translate3d(-50%, -50%, 0);*/
    /*-moz-transform: translate3d(-50%, -50%, 0);*/
    /*-ms-transform: translate3d(-50%, -50%, 0);*/
    /*-o-transform: translate3d(-50%, -50%, 0);*/
    /*transform: translate3d(-50%, -50%, 0);*/
    /*width: 100%;*/
    /*padding-top: 100%;*/
    /*border: 2px solid #fff;*/
    /*border-radius: 50%;*/
    /*-webkit-animation: pulsing 1.5s infinite;*/
    /*animation: pulsing 1.5s infinite;*/
    /*pointer-events: none;*/
/*}*/

.pulsing{
    -webkit-animation: pulsing 1.5s infinite;
    animation: pulsing 1.5s infinite;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}

@keyframes pulsing {
    0% {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
    50% {
        -webkit-transform: scale(1.15);
        -moz-transform: scale(1.15);
        -ms-transform: scale(1.15);
        -o-transform: scale(1.15);
        transform: scale(1.15);
    }
    100% {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
}

.text-floating.right{
    left: initial;
    right: -31px;
}