/**
 * GLOBAL VARIABLES
 */
:root {
    /** UNIVERSAL **/
    --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;

    --font-14: 0.875rem;
    --font-18: 1.125rem;

    --container-padding: 40px;

    /** SPECIFIC **/
    --color-primary: #d34b29;
    --color-secondary: #00ff00;
    --color-default: #333;


    --select2-arrow:'\f107';

}

body {
    color: #fff;
    font-family: 'Roboto Condensed', sans-serif;
}

/**
 * BASIC
 */

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

em {
    padding-right: 2px;
}

h1 {
}

h2 {
}

h3 {
}

h4 {
}

h5 {
}

a {
    color: var(--color-primary);
}

a:hover {
    text-decoration: underline;
}

/**
 * EXTRA
 */
/* Animations lib */
.animationDuration {
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
}

/* Mourning class added to body */
.mourning {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
}

/**
 * PAGE
 */

#page,
#content {
    overflow: hidden;
    /*min-height: calc(100vh - 50px) !important;*/
    position: relative;
}

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

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

.nopad {
    padding: 0;
}

.container--noClear {
    clear: none;
}

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

/**
 * ICONS
 */

.icon {
    flex-shrink: 0;
}

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

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

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

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

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

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

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

.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-info {
    -webkit-mask-image: url('../images/icons/info.svg');
    mask-image: url('../images/icons/info.svg');
}

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

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

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

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

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

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

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

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

/**
 * THEMES
 */

.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);
}

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

.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: transparent !important;
    border-color: #fff;
    color: #fff;
}

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

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

.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: transparent;
    border: none;
    color: var(--color-primary);
}

.btn-default.active {
    color: #fff;
}

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

.btn-black,
.btn-black:hover,
.btn-black:focus,
.btn-black:active,
.btn-black.active,
.btn-black.active:focus,
.btn-black:hover:focus,
.btn-black:hover:active,
.btn-black:focus:active {
    background-color: #000;
    border: 1px solid #000;
    color: #fff;
}

.btn-black.active {
    border-color: #fff;
}

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

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

    *:not(a) .btn-secondary:not([disabled], .btn-square):hover,
    *:not(a) .btn-secondary:not([disabled], .btn-square).active:hover {
        background-color: var(--color-primary) !important;
        border-color: var(--color-primary);
        color: #fff;
    }

    *:not(a) .btn-default:not([disabled], .btn-square):hover,
    *:not(a) .btn-default:not([disabled], .btn-square).active:hover {
        color: #fff;
    }

    *:not(a) .btn-black:not([disabled], .btn-square):hover,
    *:not(a) .btn-black:not([disabled], .btn-square).active:hover {
        border-color: #fff;
    }
}

/**
 * BUTTONS
 */

.btn {
    border-radius: 0;
    padding: 0;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: "Big Shoulders Stencil Text", sans-serif;
    transition: background-color 0.2s, border-color 0.2s, color 0.2s;
}

.btn.between {
    justify-content: space-between;
}

.btn .icon {
    min-width: 30px;
    min-height: 30px;
}

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

.btn-lg {
    height: 46px;
    padding: 0 10px;
    min-width: 225px;
    font-size: var(--font-18);
}

.btn-xl {
    height: 50px;
    padding: 0 24px;
    min-width: 225px;
    font-size: 22px;
}

.btn-lg.btn-square {
    width: 46px;
    padding: 0;
    min-width: initial;
}

.btn-xl.btn-square {
    width: 50px;
    padding: 0;
    min-width: initial;
}

/**
 * BOOTSTRAP
 */
.panel,
.panel-heading,
.modal-content,
.alert,
.popover {
    border-radius: 0;
}

.panel {
    box-shadow: none;
}

.panel-default {
    border-color: #e5e5e5;
}

/**
 * TEXT
 */

.text {
    overflow: visible;
    font-size: var(--font-14);
    line-height: 30px;
    letter-spacing: 0.05em;
}

.text a {
    color: var(--color-primary);
}

/** Text list custom dots **/
.text ul,
.text ol ul,
.text ul ul {
    list-style: none;
}

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

.text ul > li::before {
    content: '';
    position: relative;
    display: inline-block;
    height: 6px;
    width: 6px;
    background-color: #fff;
    left: -18px;
    margin-right: -6px;
    margin-bottom: 4px;
}

.text ol > li::marker {
    word-spacing: 3px;
}

/** Text table **/
.text table {
    margin: 30px 0;
}

.text table tr:nth-child(even) {
    background: rgba(0, 0, 0, 0.05);
}

.text table td {
    padding: 12px 12px;
    border: 1px solid #ddd;
}

/**
 * HEADER
 */

header {
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    transition: background-color 0.4s;
}

@media screen and (min-width: 1140px) {
    .subpage header.sticky .header-right {
        border-color: rgba(255, 255, 255, 0.5);
    }
    header {
        padding-right: 10px;
    }
}

.mainpage header .header-right:before {
    content: '';
    position: absolute;
    top: 0;
    height: 77px;
    right: 0;
    left: 0;
    max-width: 1350px;
    width: calc(100% - 320px);
    margin: 0 auto;
    border-right: 1px solid transparent;
    transition: border-color 0.2s, height 0.2s;
}

.mainpage header.sticky .header-right:before {
    border-right: 1px solid rgba(255, 255, 255, 0.5);
}

header.sticky,
header.open {
    background-color: #000;
}

.mainpage header {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

header.sticky .langs-menu a,
header.sticky #main-menu li a {
    padding-top: 28px;
    padding-bottom: 29px;
}

header.sticky .logo {
    margin-top: 5px;
    margin-bottom: 5px;
}

@media screen and (min-width: 1140px) {
    .mainpage header:not(.sticky, .open) {
        /*background-color: rgba(0, 0, 0, 0.3);*/
    }
}

.header-container {
    display: flex;
    justify-content: space-between;
}

.header-right {
    display: flex;
    padding-right: var(--space-40);
    border-right: 1px solid transparent;
    transition: border-color 0.2s;
    margin-right: 5px;
}

.header-top {
    background-color: #337ab7;
}

.header-top-inner {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    align-items: stretch;
    min-height: 54px;
}

.header-top-right {
    display: flex;
    align-items: stretch;
}

.logo {
    width: 312px;
    margin: 20px 0 16px;
    transition: margin-top 0.4s, margin-bottom 0.4s;
}

.logo a {
    /*display: block;*/

    display: inline-block;
    vertical-align: middle;
    margin-bottom: -12px;
}

.logo a + a {
    margin-left: calc(var(--space-25) + 5px);
    margin-bottom: 0;
}

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

#main-menu {
    transition: opacity 0.5s;
    height: 100%;
}

#main-menu.disabled {
    opacity: 0;
    pointer-events: none;
}

#main-menu ul,
#main-menu ul li,
#main-menu ul li a {
    height: 100%;
}

#main-menu ul {
    font-size: 0;
}

#main-menu li {
    position: relative;
    display: inline-block;
    font-size: 1rem;
    text-transform: uppercase;
}

#main-menu li a {
    display: block;
    color: #fff;
    padding: 44px 12px 36px;
    font-size: var(--font-14);
    position: relative;
    letter-spacing: 0.05em;
    transition: padding 0.4s;
}

#main-menu li a:hover,
#main-menu li.active a {
    color: var(--color-primary);
    text-decoration: none;
}

#main-menu li a:before {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    border-bottom: 1px solid var(--color-primary);
    transition: width 0.4s;
}

#main-menu li a:hover:before,
#main-menu li.active a:before {
    width: 100%;
}

#main-menu li + li {
    margin-left: 15px;
}

#main-menu li > ul {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
}

#main-menu li > ul > li > ul {
    top: 0;
    left: 100%;
}

#main-menu li:hover > ul {
    /*display: block;*/
}

.main-menu-button {
    float: right;
    width: 40px;
    margin: 0;
    border: none;
    background: transparent;
}

.main-menu-button.animIcon--hamburger.active span {
    background-color: var(--color-primary);
}

.mainsearch.rwdPanel {
    display: flex;
    align-items: center;
}

.mainsearch {
    float: left;
    /*position: relative;*/
}

@media screen and (min-width: 1140px) {
    .mainsearch .form-element-container {
        position: absolute;
        right: 0;
        width: 0;
        /*-webkit-transform: translateX(-100%);*/
        /*-moz-transform: translateX(-100%);*/
        /*-ms-transform: translateX(-100%);*/
        /*-o-transform: translateX(-100%);*/
        /*transform: translateX(-100%);*/
        transition: width 0.5s;
    }
    .mainsearch input.form-control {
        opacity: 0;
        pointer-events: none;
        padding-left: 46px !important;
        background: url("../images/icons/loupe.svg") no-repeat center left 12px /22px;
    }
}

.mainsearch input.form-control {
    display: block;
    height: 46px;
    padding: 5px 15px;
    box-shadow: none;
    transition: opacity 0.2s;
    border: none;
    font-size: var(--font-14);
    letter-spacing: 0.05em;
}

.mainsearch input.form-control::placeholder {
    color: #fff;
}

.mainsearch-close {
    position: absolute;
    top: 50%;
    right: 0;
    height: 46px;
    width: 46px;
    pointer-events: none;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 22px;
    cursor: pointer;
    opacity: 0;
    transition: opacity 0.2s;
}

.active .mainsearch-close {
    pointer-events: initial;
    opacity: 1;
}

.mainsearch-submit {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 46px;
    height: 46px;
    padding: 0;
    background: transparent;
    border: none;
    transition: opacity 0.2s;
}

.mainsearch-submit .icon {
    height: 22px;
    width: 22px;
}

.mainsearch-close .icon {
    height: 22px;
    width: 22px;
    background-color: var(--color-primary);
}

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

.active .mainsearch-submit {
    opacity: 0;
}

.mainsearch .active input.form-control {
    pointer-events: initial;
    opacity: 1;
}

.mainsearch .active .form-element-container {
    width: 100%;
}

/*
* USER NAV
*/

.header-top .user-nav {
    display: flex;
    align-items: stretch;
}

.header-top .user-nav-item {
    display: flex;
    align-items: stretch;
    position: relative;
}

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

.header-top .user-nav-item + .user-nav-item {
    padding-left: 20px;
    margin-left: 20px;
}

.header-top .user-nav-item + .user-nav-item::before {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translate3d(0, -50%, 0);
    -moz-transform: translate3d(0, -50%, 0);
    -ms-transform: translate3d(0, -50%, 0);
    -o-transform: translate3d(0, -50%, 0);
    transform: translate3d(0, -50%, 0);
    width: 1px;
    height: 12px;
    background-color: rgba(255, 255, 255, 0.6);
}

.header-top .user-nav-item .icon {
    width: 26px;
    height: 26px;
}

/**
 * FOOTER
 */
footer {
    position: relative;
}

/* FOOTER BAR */
.footer-bar {
    padding: 10px 0;
    line-height: 30px;
    letter-spacing: 0.05em;
    font-weight: 300;
    font-size: var(--font-14);
    color: #696969;
    background-color: #000;
}

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

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

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

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

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

.footer-bar-links a {
    color: inherit;
}

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

/**
 * FORM
 */
form.form {
    padding: 0;
}

/* INPUTY */
.form-control,
.form .form-control {
    box-shadow: none;
    height: 46px;
    border-radius: 0;
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.2);
    font-family: 'Roboto Condensed';
    font-size: var(--font-14);
    color: #fff;
}

.has-success .form-control:focus {
    -webkit-box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%), 0 0 6px #fff;
    -moz-box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%), 0 0 6px #fff;
    box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%), 0 0 6px #fff;
}

/* TEXTAREA */
.form textarea.form-control:not([rows]) {
    /* height: 130px; */
}

/* KLAUZULE I ZGODY */
.form .before-consent-row,
.form .after-consent-row,
.form .consent-row label,
.form .consent-all {
    font-family: 'Roboto', sans-serif;
    font-size: 0.75rem ;
    color: #a3a3a3;
    letter-spacing: 0.05em;
}

.form .consent-row label {
    font-size: var(--font-14);
}

.form .consent-row .error {
    /* font-size: 12px; */
    /* letter-spacing: 0; */
}

/* CAPTCHA */
.form .captcha-image-wrapper,
.form .form-group-sm .captcha-image-wrapper,
.form .form-group-lg .captcha-image-wrapper {
    border-radius: 6px;
    box-shadow: none;
}

/* KOLOR GWIAZDKI WYMAGANEGO POLA */
.form .form-required-mark {
    /* color: #a94442; */
}

.form-element-select .form-control-feedback,
.form-element-country .glyphicon {
    display: none;
}

.select2-container .select2-selection--single {
    padding: 0;
}

.form button.captcha-refresh {
    right: 15px;
    border-color: rgba(0, 0, 0, .1);
    color: #e10121;
    border-radius: 0 6px 6px 0;
    background-color: transparent;
    border-color: #ccc;
    display: flex;
    align-items: center;
    justify-content: center;
}

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

.form-element-name {
    font-size: 1rem;
    color: #de421b;
}

.form-group {
    margin-bottom: 20px;
}

.form-control.captcha-image-wrapper {
    border-radius: 0 !important;
    background-color: #fff;
}

@media screen and (min-width: 1140px) {
    .form button.captcha-refresh:hover {
        border-color: #e13413;
        color: #e13413;
    }

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

/*---- SELECT 2 -----*/

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

.select2-container--default .select2-selection--multiple,
.select2-container .select2-selection--single {
    height: 46px;
    border-color: #ccc;
    border-radius: 6px;
    text-align: left;
    padding: 0;
}

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

.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%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    height: auto;
    transition: all 0.4s;
    right: 11px;
    color: #000;
    text-align: center;
    font-size: 0;
}

.select2-container--default .select2-selection--single .select2-selection__arrow:before {
    content:'\f107';
    font-family: 'FontAwesome';
    font-size: 1rem;
    vertical-align: middle;
}

.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-container--default .select2-selection--single .select2-selection__arrow > b {
    display: none;
}

.select2-results__option[aria-selected] {
    font-size: var(--font-14);
    line-height: 24px;
    color: #000;
    font-weight: 300;
    padding: 6px 22px;
}

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

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

/**
 * MAP POINTS
 */

.map-point .custom-map-wrapper {
    position: relative;
}

.map-point .custom-map-wrapper .point {
    position: absolute;
    width: 28px;
    height: 40px;
    background: transparent url('../images/marker.png') no-repeat scroll center center;
    cursor: pointer;
    -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);
}

.map-point #marker-cloud-wrapper {
    position: absolute;
    top: 20px;
    left: 20px;
    width: 10%;
    height: 10%;
    background: red;
}

.map-point #marker-cloud-wrapper .popover {
    top: 0 !important;
    left: 0 !important;
    display: block;
    margin: 0;
    width: 300px;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    text-shadow: none;
}

.map-point #marker-cloud-wrapper .popover .arrow {
    display: none !important;
}

/**
 * BREADCRUMB
 */

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

.breadcrumb {
    padding: 0;
    margin: 0;
    text-align: left;
    border-radius: 0;
    background-color: transparent;
}

.breadcrumb > li {
    position: relative;
    display: inline;
    color: #6d6e71;
}

.breadcrumb > li > a {
    font-size: 0.75rem;
}

.breadcrumb > li > a:not([href]),
.breadcrumb > li > a:not(:hover) {
    color: inherit;
}

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

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

/**
 * PAGINATION
 */

.pagination-wrapper {
    font-family: "Big Shoulders Stencil Text", sans-serif;
    padding: var(--space-25) 0 0;
    max-width: 575px;
}

.pagination-wrapper ul li a {
    font-size: var(--font-14);
    font-weight: 700;
    color: #fff;
    transition: border-color 0.2s, background-color 0.2s, color 0.2s;
}

.pagination-wrapper ul li a,
.pagination-wrapper ul li span {
    padding: 0 10px;
}

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

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

/**
 * ANIMATABLE ICON
 */

.animIcon {
    position: relative;
    display: inline-block;
    width: 32px;
    padding: 0 !important;
}

.animIcon::before {
    content: "";
    display: block;
    padding-bottom: 100%;
}

.animIcon span {
    position: absolute;
    left: 0;
    right: 0;
    display: block;
    height: 2px;
    width: 100%;
    background-color: #fff;
    transition: all .4s ease;
}

/* Close */
.animIcon.animIcon--close span {
    top: 50%;
    margin-top: -1px;
    transform-origin: center;
}

.animIcon.animIcon--close span:nth-child(1) {
    transform: rotateZ(45deg);
    -webkit-transform: rotateZ(45deg);
    -ms-transform: rotateZ(45deg);
}

.animIcon.animIcon--close span:nth-child(2) {
    transform: rotateZ(-45deg);
    -webkit-transform: rotateZ(-45deg);
    -ms-transform: rotateZ(-45deg);
}

/* Hamburger -> Close */
.animIcon.animIcon--hamburger span {
    top: 0;
    left: 0;
    transform-origin: left center;
}

.animIcon.animIcon--hamburger span:nth-child(1) {
    margin-top: 20%;
}

.animIcon.animIcon--hamburger span:nth-child(2) {
    margin-top: 50%;
}

.animIcon.animIcon--hamburger span:nth-child(3) {
    margin-top: 80%;
}

.animIcon.animIcon--hamburger.active span:nth-child(1) {
    margin-top: 15%;
    margin-left: 15%;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg)
}

.animIcon.animIcon--hamburger.active span:nth-child(2) {
    opacity: 0;
    margin-top: 70%;
}

.animIcon.animIcon--hamburger.active span:nth-child(3) {
    margin-top: 85%;
    margin-left: 15%;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

/**
 * LOGOTYPES SLIDER
 */
/*.logotypes {*/
/*border-top: 1px solid rgba(0, 0, 0, 0.1);*/
/*height: 156px;*/
/*padding: 28px 0;*/
/*}*/

/*.logotypes .logotypes-title {*/
/*float: left;*/
/*padding-right: 30px;*/
/*font-size: 22px;*/
/*line-height: 100px;*/
/*vertical-align: middle;*/
/*}*/

/*.logotypes-slider-container {*/
/*height: 100px;*/
/*}*/

/*.logotype-slider {*/
/*top: 50%;*/
/*-webkit-transform: translate3d(0, -50%, 0);*/
/*-moz-transform: translate3d(0, -50%, 0);*/
/*-ms-transform: translate3d(0, -50%, 0);*/
/*-o-transform: translate3d(0, -50%, 0);*/
/*transform: translate3d(0, -50%, 0);*/
/*}*/

/*.slick-initialized .logotype {*/
/*float: none;*/
/*display: inline-block;*/
/*vertical-align: middle;*/
/*padding: 4px;*/
/*}*/

/*.logotype img {*/
/*max-height: 100px;*/
/*max-width: 100%;*/
/*margin: 0 auto;*/
/*}*/

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

.social-list > ul > li {
    display: inline-block;
    vertical-align: middle;
    padding: 5px;
    text-align: center;
    font-size: 1rem;
}

.social-icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    border: 1px solid #f0f;
}

.social-icon svg {
    fill: currentColor;
}

.social-icon img {
    display: block;
}

.social-icon .fa {
    font-size: 1.25rem;
}

/**
 * LANGUAGES MENU
 */
.langs-menu {
    display: flex;
    align-items: center;
    position: relative;
    margin-left: calc(var(--space-50) + 10px);
    transition-duration: 0.4s;
    transition-property: background-color, opacity;
    z-index: 1001;
}

.langs-menu ul,
.langs-menu ul li,
.langs-menu ul li a {
    height: 100%;
}

.langs-menu ul {
    position: absolute;
    top: 100%;
    width: 100%;
    background-color: #fff;
    transition: all 0.3s;
}

.langs-menu li {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.langs-menu.active,
.langs-menu.active ul {
    opacity: 1;
}

.langs-menu a {
    display: block;
    color: inherit;
    text-decoration: none;
    border-left: 1px solid rgba(0, 0, 0, 0.1);
    border-right: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    padding: 40px 0 41px;
    transition: padding-top 0.4s, padding-bottom 0.4s, color 0.2s;
}

.lang .langs-menu-icon {
    display: inline-block;
    vertical-align: middle;
    line-height: 0;
    margin-right: 8px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: none;
}

.lang {
    display: flex;
    align-items: center;
    height: 40px;
    padding: 5px 12px;
    font-size: 0;
    transition-duration: 0.3s;
    transition-property: background-color, color;
    position: relative;
}

.lang:before {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    border-bottom: 1px solid var(--color-primary);
    transition: width 0.2s;
}

.lang span {
    display: inline-block;
    vertical-align: middle;
    font-size: 1rem;
    text-transform: uppercase;
}

.lang .langs-menu-long {
    display: none;
}

.lang-button {
    cursor: pointer;
    position: relative;
    border: 1px solid rgba(0, 0, 0, 0.1);
    background-color: #fff;
}

.lang-button .arrow {
    display: inline-block;
    vertical-align: middle;
    top: 50%;
    right: 0;
    width: 12px;
    height: 12px;
    margin-left: 10px;
    font-size: var(--font-18);
    line-height: 12px;
    transition-duration: 0.3s;
    transition-property: transform, -webkit-transform, -ms-transform;
}

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

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

    a.lang:hover:before,
    a.lang:focus:before,
    .langs-menu li.active a.lang:before,
    .langs-menu li.active a.lang:before {
        width: 100%;
    }

    .langs-menu:not(.langs-menu--list):not(:hover):not(:focus):not(:focus-within) ul {
        pointer-events: none;
        opacity: 0;
        transform: translateY(-5px);
        -webkit-transform: translateY(-5px);
        -ms-transform: translateY(-5px);
    }

    .langs-menu:focus-within .lang-button .arrow,
    .langs-menu:hover .lang-button .arrow,
    .langs-menu:focus .lang-button .arrow {
        transform: rotateZ(180deg);
        -webkit-transform: rotateZ(180deg);
        -ms-transform: rotateZ(180deg);
    }
}

.flag-icon {
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
}

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

.langs-menu--list .langs-menu-short {
    display: block;
}

.langs-menu.langs-menu--list ul {
    position: static;
    opacity: 1;
    display: flex;
    align-items: center;
    border: none;
    background: none;
}

.langs-menu.langs-menu--list li {
    margin: 0;
    border: none;
}

.langs-menu.langs-menu--list li + li {
    margin-left: 20px;
}

.langs-menu.langs-menu--list a {
    height: auto;
    border: none;
    font-size: var(--font-14);
    font-family: "Big Shoulders Stencil Text", sans-serif;
    font-weight: 700;
}

.langs-menu--list .lang {
    background: none;
}

.langs-menu--list .langs-menu-icon {
    margin: 0;
}

/**
 * ARTICLE
 */

.article-content::after {
    content: "";
    display: table;
    clear: both;
}

.article-inner {
    padding-top: var(--space-40);
}

.article-image {
    display: block;
    margin: 0 auto;
    max-width: 950px;
}

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

.article-subtitle {
    color: #acacad;
    font-size: 1rem;
    text-align: justify;
    margin-top: var(--space-25);
    padding-bottom: var(--space-40);
}

.article-date {
    font-weight: bold;
}

/**
 * PAGINATION
 */
/*.pagination-wrapper ul li.active a {*/
/*color: #e10024;*/
/*}*/

/*@media screen and (min-width: 1140px) {*/
/*.pagination-wrapper ul li a:hover {*/
/*color: #e10024;*/
/*}*/
/*}*/

/**
 * GALLERY
 */

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

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

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

.gallery-picture > img {
    display: block;
    max-width: 101%;
    transition: transform 1s;
    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);
}

.gallery-picture:before {
    display: block;
    content: '';
    width: 100%;
    padding-top: 66.6667%;
    background: #fff;
}

.gallery-picture-hover {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font-size: 1.25rem;
    color: #fff;
    background-color: rgba(0, 0, 0, 0.7);
    transition: opacity 0.3s;
}

.gallery-picture-hover-inner {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    text-align: center;
    margin: 0 auto;
    -webkit-transform: translateY(-21px);
    -moz-transform: translateY(-21px);
    -ms-transform: translateY(-21px);
    -o-transform: translateY(-21px);
    transform: translateY(-21px);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.gallery-picture-hover-inner .caption {
    margin-top: 20px;
    font-size: var(--font-14);
    text-transform: uppercase;
}

@media screen and (min-width: 1140px) {
    .gallery-picture:hover .gallery-picture-hover {
        opacity: 1;
    }
    .gallery-picture:hover > img {
        -webkit-transform: translate3d(-50%, -50%, 0) scale(1.1);
        -moz-transform: translate3d(-50%, -50%, 0) scale(1.1);
        -ms-transform: translate3d(-50%, -50%, 0) scale(1.1);
        -o-transform: translate3d(-50%, -50%, 0) scale(1.1);
        transform: translate3d(-50%, -50%, 0) scale(1.1);
    }
}

.background-image {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    /*left: 50%;*/
    /*-webkit-transform: translateX(-50%);*/
    /*-moz-transform: translateX(-50%);*/
    /*-ms-transform: translateX(-50%);*/
    /*-o-transform: translateX(-50%);*/
    /*transform: translateX(-50%);*/
    overflow: hidden;
    z-index: -1;
}

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

.background-image:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(26, 25, 25, 0.9);
}

#content > .container:nth-child(2),
.page-asided {
    min-height: calc(100vh - 50px);
}

.page-asided {
    height: 100%;
    border-right: 1px solid rgba(255, 255, 255, 0.5);
    padding-top: 100px;
    display: flex;
}

.aside {
    width: 270px;
    flex-shrink: 0;
    /*padding-top: var(--space-40);*/
    position: relative;
    /*min-height: calc(100vh - 150px) !important;*/
}

.aside-content {
    padding-top: calc(2 * var(--space-40));
    padding-bottom: var(--space-50);
}

.page-shadow:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    height: 500000px;
    width: 500px;
    background-color: rgba(0, 0, 0, 0.4);
    z-index: 0;
}

#content > .container {
    position: relative;
}

.page-shadow {
    position: absolute;
    top: 0;
    left: 0;
    width: 270px;
    margin-left: 120px;
}

.title {
    font-family: "Big Shoulders Stencil Text", sans-serif;
    font-weight: 700;
}

.title.primary {
    color: var(--color-primary);
}

.aside-title {
    font-size: 24px;
}

.aside-title .subtitle {
    display: block;
    padding-left: var(--space-40);
    color: #fff;
    opacity: 0.3;
    transition: opacity 0.4s;
}

.aside-title .subtitle:hover {
    opacity: 1;
    text-decoration: none;
}

.aside-list {
    margin-top: var(--space-50);
    --aside: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.aside-list-group {
    position: relative;
}

.aside-toggle-button {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 50px;
    text-align: center;
    line-height: 50px;
    font-size: 1.25rem;
    color: var(--color-primary);
    transition: all 0.2s;
}

li.active > .aside-list-group > .aside-toggle-button {
    -webkit-transform: scaleY(-1);
    -moz-transform: scaleY(-1);
    -ms-transform: scaleY(-1);
    -o-transform: scaleY(-1);
    transform: scaleY(-1);
}

.aside-list-group > a:not(:only-child) {
    padding-right: 66px;
}

.aside-list-group a {
    display: flex;
    align-items: center;
    min-height: 50px;
    padding: 5px 0;
    font-size: var(--font-14);
    text-transform: uppercase;
    color: #fff;
    font-weight: 700;
    position: relative;
    /*transition: color 0.4s;*/
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    text-decoration: none;
    padding-right: 15px;
}

.aside-list > li > .aside-list-group > a {
    padding-left: var(--aside);
}

.aside-list > li > ul > li > .aside-list-group > a {
    padding-left: calc(2 * var(--aside));
    font-weight: 400;
    color: #acacad;
}

.aside-list > li > ul > li > ul > li > .aside-list-group > a {
    padding-left: calc(3 * var(--aside));
    font-weight: 400;
}

.aside-list > li > ul > li > ul > li > ul > li > .aside-list-group > a {
    padding-left: calc(4 * var(--aside));
    font-weight: 300;
}

.aside-list-group a:before {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    border-bottom: 1px solid var(--color-primary);
    transition: width 0.4s;
}

.aside-list-group + ul {
    display: none;
}

.aside-list-group > a:hover:before,
li.active > .aside-list-group > a:before {
    width: 100%;
}

.aside-list-group > a:hover,
li.active > .aside-list-group > a {
    color: var(--color-primary) !important;
    text-decoration: none;
}

.page-content {
    width: calc(100% - 270px);
    position: relative;
}

.page-content-container {
    max-width: 1230px;
}

.page-heading {
    padding-top: var(--space-40);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.page-heading-title {
    font-size: 60px;
    /*flex-shrink: 0;*/
}

.page-heading-subtitle {
    font-size: 24px;
    margin-left: calc(2 * var(--space-40));
}

.page-heading-subtitle a {
    transition: color 0.2s;
}

.page-heading-subtitle a:hover {
    color: var(--color-primary);
}

.page-heading-text {
    margin-top: 20px;
    margin-bottom: 10px;
    max-width: 65%;
}

.contact-cols {
    padding-top: var(--space-40);
    display: flex;
    align-items: flex-start;
    padding-bottom: var(--space-40);
}

.contact-col-1 {
    width: 25%;
}

.contact-col-2 {
    width: 75%;
    padding-left: var(--space-40);
    display: flex;
}

.contact-title {
    font-size: 24px;
    width: 100%;
    margin-bottom: var(--space-25);
}

.text.contact-text-col + .text.contact-text-col {
    padding-top: var(--space-25);
}

.text.contact-text-col a {
    color: #fff;
    font-weight: 700;
}

.text.contact-text-col a[href^='tel:']:before {
    content: 'tel: ';
    font-weight: 400;
}

.text.contact-text-col a[href^='mailto:']:before {
    content: 'email: ';
    font-weight: 400;
}

.text.contact-text-col a[href^='fax:']:before {
    content: 'fax: ';
    font-weight: 400;
}

.contact-list {
    width: 50%;
}

.contact-list li + li {
    margin-top: var(--space-40);
}

.contact-list li {
    display: flex;
    flex-wrap: wrap;
    letter-spacing: 0.05em;
    font-size: var(--font-14);
    line-height: 24px;
}

.contact-list li .caption {
    width: 40%;
    padding-right: 35px;
}

.contact-list li .caption-link {
    width: 60%;
    margin: -10px;
}

.contact-list li a {
    color: #fff;
    position: relative;
    display: inline-block;
    padding: 10px;
}

.contact-list li a + a {
    /*margin-top: 16px;*/
}

.contact-list li a[href^='tel:']:before,
.contact-list li a[href^='mailto:']:before,
.contact-list li a[href^='fax:']:before {
    content: '';
    position: relative;
    margin: -7px;
    height: 26px;
    width: 26px;
    left: -6px;
    display: inline-block;
}

.contact-list li a[href^='tel:']:before {
    background: url("../images/icons/mobile.svg") no-repeat center center /cover;
}

.contact-list li a[href^='fax:']:before {
    background: url("../images/icons/fax.svg") no-repeat center center /cover;
}

.contact-list li a[href^='mailto:']:before {
    background: url("../images/icons/email.svg") no-repeat center center /cover;
}

.contact-map {
    margin-top: var(--space-40);
    margin-bottom: var(--space-40);
    position: relative;
}

.contact-map:before {
    content: '';
    display: block;
    width: 100%;
    padding-top: 47.8260%;
}

.contact-map-iframe {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

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

.contact-form-container {
    padding: var(--space-40) 0 var(--space-40);
}

.captcha-refresh {
    background: url("../images/icons/captcha-refresh.png") no-repeat center center /20px;
}

.row.before-consent-row {
    margin-top: 20px;
}

.form-button {
    padding-top: var(--space-40);
    display: flex;
    justify-content: center;
}

.recruitment {
    padding-top: var(--space-40);
    padding-bottom: var(--space-50);
}

.recruitment-title {
    color: var(--color-primary);
    font-size: var(--font-18);
    margin-bottom: 5px;
    letter-spacing: 0.05em;
}

.recruitment-slider {
    padding-top: var(--space-25);
    display: flex !important;
    justify-content: center;
}

.recruitment-slide {
    width: 25%;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    padding: 0 var(--space-40);
    position: relative;
}

.recruitment-slide:before {
    content: '';
    position: absolute;
    top: 125px;
    left: 0;
    right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.recruitment-slide:after {
    content: '';
    position: absolute;
    top: 121px;
    height: 10px;
    width: 10px;
    left: 0;
    right: 0;
    margin: 0 auto;
    background-color: var(--color-primary);
}

.recruitment-slide .icon {
    height: 120px;
    width: 120px;
    background-color: #fff;
}

.recruitment-slide-text {
    padding-top: var(--space-50);
    text-align: center;
    line-height: 24px;
}

.recruitment-bottom {
    padding-top: var(--space-40);
    display: flex;
    align-items: center;
}

.recruitment-bottom > .icon {
    height: 45px;
    width: 45px;
    background-color: #fff;
    margin-right: 15px;
}

.slider-arrows {
    display: flex;
    justify-content: space-between;
    padding: 15px 0;
}

.slider-arrows .arrow {
    height: 32px;
    width: 32px;
    line-height: 30px;
    text-align: center;
    font-size: 26px;
    color: #acacad;
    cursor: pointer;
    transition: color 0.2s;
}

.slider-arrows .arrow:hover {
    color: #fff;
}

.career {
    padding: var(--space-40) 0 var(--space-40);
}

.career-left {
    font-size: 24px;
    color: var(--color-primary);
    font-weight: 700;
    line-height: 1;
    padding-bottom: var(--space-50);
}

.career-right {
    padding-top: 27px;
}

.career-results {
    padding-top: var(--space-25);
    margin: calc(-1 * (var(--space-25) - 5px));
}

.result {
    padding: calc(var(--space-25) - 5px);
}

.result-inner {
    min-height: 68px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5px 10px 5px 30px;
    position: relative;
    transition: border-color 0.2s;
    color: #fff;
}

@media screen and (min-width: 1140px) {
    .result-inner:hover,
    .result-inner:focus {
        /*border-color: var(--color-primary);*/
        color: #fff;
        text-decoration: none;
    }
    .result-inner:hover .btn.btn-square {
        background-color: var(--color-primary) !important;
        border-color: var(--color-primary);
        color: #fff;
    }
}

.result-title {
    font-size: var(--font-14);
    color: var(--color-primary);
    padding-right: var(--space-40);
}

.result-right {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 255px;
    flex-shrink: 0;
    position: static !important;
}

.pagination-wrapper ul li.next a,
.pagination-wrapper ul li.prev a {
    height: 30px;
    width: 30px;
    line-height: 26px;
}

.pagination-wrapper ul li.next a[disabled],
.pagination-wrapper ul li.prev a[disabled] {
    background-color: red;
}

.career .recruitment-text {
    font-weight: 700;
    color: var(--color-primary);
    line-height: 20px;
    letter-spacing: 0;
}

.recruitment-bottom .btn {
    margin-left: calc(3 * var(--space-50));
}

.btn .caption {
    display: flex;
    align-items: center;
}

.announcements-list {
    /*padding-bottom: calc(2 * var(--space-40));*/
    padding-bottom: var(--space-40);
    padding-top: var(--space-40);
    position: relative;
}

.announcements-list .slick-slide {
    margin: 20px 20px 20px 0;
    /*border-top: 1px solid rgba(255, 255, 255, 0.5);*/
    position: relative;
}

.announcements-list:not(.slick-initialized) .announcements-slide:nth-child(n+2) {
    display: none !important;
}

.announcements-list .slick-slide:before {
    /*content: '';*/
    /*position: absolute;*/
    /*bottom: -20px;*/
    /*right: -21px;*/
    /*height: 41px;*/
    /*width: 41px;*/
    /*background: url("../images/crosshair.png") no-repeat center center /cover;*/
    /*z-index: 5;*/
}

.announcements-slide {
    border-top: 1px solid rgba(255, 255, 255, 0.5);
    margin: 20px 20px 20px 0;
}

.announcements-list-item.empty {
    padding: 0;
    pointer-events: none;
    border-bottom: none;
}

.announcements-list-item {
    padding: var(--space-25) 30px;
    display: flex !important;
    align-items: center;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    position: relative;
    color: #fff;
}

@media screen and (min-width: 1140px) {
    .announcements-list-item:hover,
    .announcements-list-item:focus {
        text-decoration: none;
        color: #fff;
    }
}

.announcement-left {
    width: 28%;
    padding-right: var(--space-40);
}

.announcement-right {
    width: 72%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.text.announcement-item-text {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    padding-right: calc(2 * var(--space-60));
}

.announcement-item-title {
    color: var(--color-primary);
    font-size: var(--font-18);
    margin-top: 8px;
    letter-spacing: 0.05em;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.announcement-left a:hover {
    text-decoration: none;
}

.announcements-list-item .date {
    font-size: var(--font-14);
    letter-spacing: 0.05em;
    font-family: "Big Shoulders Stencil Text", sans-serif;
}

.page-heading-arrows {
    position: relative;
    z-index: 100;
    flex-shrink: 0;
    display: flex;
    align-items: center;
}

.page-heading-arrows .arrow {
    height: 70px;
    width: 70px;
    cursor: pointer;
}

.page-heading-arrows .icon {
    height: 100%;
    width: 100%;
    opacity: 0.3;
    transition: opacity 0.2s, background-color 0.2s;
}

.page-heading-arrows .arrow:hover .icon {
    background-color: var(--color-primary);
    opacity: 1;
}

.project-list {
    display: flex;
    flex-wrap: wrap;
    margin: calc(-1 * var(--space-50)) calc(-1 * var(--space-60));
    padding-top: var(--space-40);
    padding-bottom: calc(2 * var(--space-40));
}

.project-tile {
    width: 33.3333%;
    padding: var(--space-50) var(--space-60);
}

.project-tile-inner {
    display: block;
    position: relative;
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: #fff;
    transition: border-color 0.2s;
}

.project-tile-inner:hover,
.project-tile-inner:focus {
    color: #fff;
    text-decoration: none;
}

.project-tile-content {
    padding: var(--space-25);
    padding-bottom: 50px;
}

.project-tile-inner,
.project-tile-content {
    height: 100%;
}

/*.project-tile-content:before,*/
/*.project-tile-content:after {*/
    /*content: '';*/
    /*position: absolute;*/
    /*height: 41px;*/
    /*width: 41px;*/
    /*background: url("../images/crosshair_white.png") no-repeat center center /cover;*/
    /*transition: opacity 0.2s;*/
/*}*/

/*.project-tile-content:before {*/
    /*bottom: -21px;*/
    /*left: -21px;*/
/*}*/

/*.project-tile-content:after {*/
    /*top: -21px;*/
    /*right: -21px;*/
/*}*/

.project-title {
    font-size: 1rem;
    font-weight: 700;
    line-height: 30px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.project-tile .btn {
    position: absolute;
    bottom: 0;
    right: 0;
}

@media screen and (min-width: 1140px) {
    /*.project-tile-inner:hover {*/
        /*border-color: var(--color-primary);*/
    /*}*/
    /*.project-tile-inner:hover .project-tile-content:before,*/
    /*.project-tile-inner:hover .project-tile-content:after {*/
        /*opacity: 0;*/
    /*}*/
}

.project-slide {
    display: flex !important;
    flex-wrap: wrap;
}

.project-tile-content > a {
    color: inherit;
}

.project-tile-content > a:hover {
    text-decoration: none;
}

.cert-list {
    margin: calc(-1 * var(--space-40));
    padding-top: var(--space-40);
    padding-bottom: calc(2 * var(--space-40));
}

.cert-slide {
    display: flex !important;
    flex-wrap: wrap;
}

.cert-tile {
    padding: var(--space-40);
    width: 20%;
}

.cert-tile-inner {
    position: relative;
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: border-color 0.2s;
}

@media screen and (min-width: 1140px) {
    .cert-tile-inner:hover {
        /*border-color: var(--color-primary);*/
    }
}

.cert-tile-inner:before {
    content: '';
    display: block;
    width: 100%;
    padding-top: 134.9693%;
}

.cert-tile-image {
    display: block;
    position: absolute !important;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden;
    padding: 10px;
}

.cert-tile-image img {
    display: block;
    max-width: 100%;
}

.prize-list {
    margin: calc(-1 * (var(--space-60) / 2));
    padding-top: var(--space-40);
    padding-bottom: calc(2 * var(--space-40));
}

.prize-slide {
    display: flex !important;
    flex-wrap: wrap;
}

.prize-tile {
    width: 50%;
    padding: calc(var(--space-60) / 2);
}

.prize-tile-inner {
    position: relative;
    border: 1px solid rgba(255, 255, 255, 0.1);
    display: block;
    transition: border-color 0.2s;
    height: 100%;
}

.prize-tile-inner:hover,
.prize-tile-inner:focus {
    color: inherit;
    text-decoration: none;
}

.prize-tile-content {
    display: flex;
    /*align-items: center;*/
    flex-wrap: wrap;
    padding: calc(var(--space-60) / 2);
    height: 100%;
}

.prize-tile-image {
    width: 160px;
    background-color: #fff;
    position: relative;
    /*align-self: flex-start;*/
}

.prize-tile-image:before {
    content: '';
    display: block;
    width: 100%;
    padding-top: 100%;
}

.prize-tile-image img {
    display: block;
    max-width: 100%;
    max-height: 100%;
    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);
}

.prize-tile-image + .prize-tile-right {
    width: calc(100% - 160px);
    padding-left: var(--space-40);
}

.prize-tile-title {
    font-size: 30px;
    color: #fff;
    margin-top: -5px;
}

.prize-tile .date {
    font-size: var(--font-14);
    font-weight: 700;
    margin-top: var(--space-25);
    color: var(--color-primary);
}

.prize-tile .btn {
    position: absolute;
    bottom: 0;
    right: 0;
}

@media screen and (min-width: 1140px) {
    .prize-tile-inner:hover {
        /*border-color: var(--color-primary);*/
    }
}

.team-slide {
    display: flex !important;
    flex-wrap: wrap;
    padding: 5px;
    justify-content: center;
}

.team-list {
    padding-top: var(--space-40);
    padding-bottom: calc(2 * var(--space-40));
    margin: -15px;
}

.team-tile {
    width: 20%;
    padding: 15px;
}

.team-tile-inner {
    position: relative;
    display: block;
    border: 1px solid rgba(255, 255, 255, 0.1);
    cursor: pointer;
    text-decoration: none !important;
    transition: border-color 0.2s;
}

.team-tile-content {
    text-align: center;
    padding: calc(var(--space-25) + 5px) calc(var(--space-25) + 5px) 22px;
    color: #fff;
}

.team-tile-inner,
.team-tile-content {
    height: 100%;
}

.team-tile-image {
    position: relative;
}

.team-tile-image:before {
    content: '';
    display: block;
    width: 100%;
    padding-top: 100%;
}

.team-tile-image img {
    display: block;
    max-width: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: 0 auto;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}

.team-tile-title {
    font-size: var(--font-18);
    margin-top: 10px;
    transition: color 0.2s;
}

.team-tile-subtitle {
    font-size: 0.688rem;
    font-style: italic;
    line-height: 1.5;
    margin-top: 5px;
    font-weight: 300;
    letter-spacing: 0.05em;
}

.team-tile-arrow {
    position: absolute;
    bottom: 3px;
    left: 0;
    right: 0;
    margin: 0 auto;
    transition: color 0.2s;
}

@media screen and (min-width: 1140px) {
    .team-tile-inner:hover {
        /*border-color: var(--color-primary);*/
    }
    .team-tile-inner:hover .team-tile-title,
    .team-tile-inner:hover .team-tile-arrow {
        color: var(--color-primary);
    }
}

.article {
    padding-top: 160px;
    border-right: 1px solid rgba(255, 255, 255, 0.5);
}

.article.nopad .page-search {
    padding-top: 100px;
}

.article.nopad {
    padding-top: 0;
}

.article.noborder {
    border-right: none;
}

.article-border-horizontal {
    position: relative;
}

.article-border-horizontal:before {
    content: '';
    position: absolute;
    top: 50%;
    left: -300px;
    right: -300px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    z-index: -1;
}

.article-border-horizontal:after {
    content: '';
    position: absolute;
    top: 50%;
    right: -21px;
    height: 41px;
    width: 41px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url("../images/crosshair.png") no-repeat center center /cover;
}

.article-border-collapse:after {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.article-title {
    padding-top: var(--space-40);
    text-align: center;
    font-size: 36px;
    letter-spacing: 0.05em;
}

.text.article-text {
    padding-bottom: var(--space-40);
    font-size: 1rem;
    color: #acacad;
    text-align: justify;
}

.section-gallery {
    position: relative;
}

.section-gallery:before {
    content: '';
    position: absolute;
    top: 0;
    left: -2000px;
    right: -2000px;
    border-top: 1px solid rgba(255, 255, 255, 0.5);
    z-index: -1;
}

div:not(.page-content) > .section-gallery > .container {
    max-width: 1830px;
    padding-left: 120px;
    padding-right: 120px;
}

.section-gallery .article {
    position: relative;
}

@media screen and (min-width: 1140px) {
    .section-gallery:after {
        content: '';
        position: absolute;
        top: -20px;
        right: -21px;
        width: 41px;
        height: 41px;
        background: url("../images/crosshair.png") no-repeat center center /cover;
    }
}

.files-inner {
    display: flex;
    flex-wrap: wrap;
    margin: calc(-1 * var(--space-25));
    padding-top: var(--space-40);
}

.file-item {
    width: 50%;
    padding: var(--space-25);
}

.file-item-inner {
    border: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    align-items: center;
    padding: 17px 50px 17px 17px;
    position: relative;
    transition: border-color 0.2s;
}

.file-item-inner:before {
    content: '';
    position: absolute;
    top: -21px;
    left: -21px;
    width: 41px;
    height: 41px;
    background: url("../images/crosshair_white.png") no-repeat center center /cover;
}

.file-item-inner:after {
    content: '';
    position: absolute;
    top: -21px;
    left: -21px;
    width: 41px;
    height: 41px;
    background: url("../images/crosshair.png") no-repeat center center /cover;
    opacity: 0;
    transition: opacity 0.2s;
}

.file-item-icon {
    height: 87px;
    width: 87px;
    background-color: rgba(255, 255, 255, 0.1);
    flex-shrink: 0;
    padding: 10px;
    margin-right: 18px;
}

.file-item-icon .icon {
    height: 100%;
    width: 100%;
    background-color: #fff;
}

.file-item .btn {
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 10px;
}

.file-item .btn .icon {
    height: 100%;
    width: 100%;
    background-color: #fff;
}

.text.file-item-title {
    font-size: var(--font-18);
    font-weight: 700;
    line-height: 1.3333;
    color: #fff;
}

.section-files {
    padding: var(--space-60) 0 var(--space-40);
}

.files-button {
    display: flex;
    justify-content: center;
    padding-top: var(--space-40);
}

@media screen and (min-width: 1140px) {
    .file-item-inner:hover {
        border-color: var(--color-primary);
        text-decoration: none;
    }
    .file-item-inner:hover:after {
        opacity: 1;
    }
}

.section-logotype {
    background-color: #fff;
    padding: var(--space-50) 0;
    position: relative;
}

.logotype-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    margin: calc(-1 * var(--space-60) / 2) 0;
}

.logotype {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 25%;
    padding: calc(var(--space-60) / 2);
}

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

.history-list {
    padding-top: var(--space-40);
    padding-bottom: var(--space-40);
    margin: calc(-1 * var(--space-25));
}

.history-slide {
    display: flex !important;
    flex-wrap: wrap;
}

.history-tile {
    width: 50%;
    padding: var(--space-25);
}

.history-tile-inner {
    position: relative;
    border: 1px solid rgba(255, 255, 255, 0.1);
    transition: border-color 0.2s;
    display: block;
    height: 100%;
}

.history-tile-inner:hover,
.history-tile-inner:focus {
    color: #fff;
    text-decoration: none;
}

.history-tile-content {
    display: flex;
    flex-wrap: wrap;
    padding: 33px 50px 33px 33px;
    color: #fff;
    height: 100%;
}

.history-tile .date {
    width: 100px;
    flex-shrink: 0;
    font-family: "Big Shoulders Stencil Text", sans-serif;
    font-size: var(--font-18);
    font-weight: 700;
    padding-right: 35px;
    white-space: nowrap;
}

.text.history-tile-title {
    width: calc(100% - 100px);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-top: -5px;
}

.history-tile .btn {
    position: absolute;
    bottom: 0;
    right: 0;
}

@media screen and (min-width: 1140px) {
    .history-tile-inner:hover {
        /*border-color: var(--color-primary);*/
    }
}

.about-list {
    padding-top: var(--space-40);
    padding-bottom: var(--space-40);
    display: flex;
    flex-wrap: wrap;
    margin: -10px;
    position: relative;
}

.about-tile {
    width: 50%;
    padding: 10px;
}

.about-tile-content {
    height: 100%;
    position: relative;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    min-height: 250px;
}

.about-tile-content:before {
    /*content: '';*/
    /*position: absolute;*/
    /*top: -21px;*/
    /*left: -21px;*/
    /*height: 41px;*/
    /*width: 41px;*/
    /*background: url("../images/crosshair.png") no-repeat center center /cover;*/
}

.about-tile-title {
    font-size: var(--font-18);
    color: var(--color-primary);
}

.text.about-tile-text {
    margin-top: 10px;
    font-size: 0.813rem;
    line-height: 25px;
    text-align: justify;
}

.about-floating-caption {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100%;
    max-width: 1830px;
    z-index: -1;
    display: none;
}

.about-floating-caption-wrapper {
    position: absolute;
    bottom: 0;
    right: 120px;
    height: 0;
    width: 0;
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: rotate(-90deg);
}

.about-floating-caption-inner {
    position: absolute;
    left: var(--space-50);
    bottom: -6px;
}

.about-floating-caption span {
    display: block;
    font-family: "Big Shoulders Stencil Text", sans-serif;
    font-size: 72px;
    font-weight: 700;
    line-height: 69px;
    color: rgba(255, 255, 255, 0.1);
    white-space: nowrap;
}

.about-floating-caption span:first-child {
    margin-left: calc(3 * var(--space-50));
}

.page-heading .article-title {
    width: 100%;
    padding-top: 0;
    letter-spacing: 0;
}

.product-view {
    padding-top: var(--space-60);
    position: relative;
}

.product-view.horizontal {
    display: flex;
}

.product-image {
    float: left;
    display: flex;
    justify-content: center;
    align-items: center;
}

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

.product-view-info {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.product-text {
    display: flex;
    flex-wrap: wrap;
}

.text.product-text-col {
    font-size: 1rem;
    color: #acacad;
    text-align: justify;
}

.text.product-text-col strong {
    color: #fff;
}

.product-text,
.product-table,
.product-image-small {
    float: left;
}

.table-wrapper {

}

.table-wrapper table {
    width: 100% !important;
    height: 100% !important;
    border-collapse: collapse;
}

.table-wrapper table td,
.table-wrapper table th {
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: 17px 19px;
    font-size: var(--font-14);
    letter-spacing: 0.05em;
    vertical-align: middle;
}

.table-wrapper table th {
    letter-spacing: 0.1em;
}

.product-image-small {
    align-self: flex-start;
    overflow: hidden;
    position: relative;
}

.product-image-small:before {
    content: '';
    display: block;
    width: 100%;
    padding-top: 100%;
}

.product-image-small img {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.product-view.horizontal .product-image-small {
    width: calc(50% - (var(--space-60) / 2));
}

.product-view.horizontal .product-table {
    width: 50%;
    padding-right: calc(var(--space-60) / 2);
}

.product-view.horizontal .product-text {
    width: 100%;
    padding-bottom: var(--space-40);
}

.product-view.horizontal .product-image {
    width: 20% !important;
}

.product-view.horizontal .text.product-text-col {
    width: 50%;
}

.product-view.horizontal .text.product-text-col + .text.product-text-col {
    padding-left: calc(var(--space-60) / 2);
}

.product-view.horizontal .text.product-text-col:not(:last-child) {
    padding-right: var(--space-60);
}

.product-view.horizontal .product-view-info {
    padding-left: var(--space-60);
    width: 80%;
}

.product-view.vertical .product-image {
    width: 100%;
}

.product-view.vertical .product-view-info {
    width: 100%;
    padding-top: calc(var(--space-50) + var(--space-40));
}

.product-view.vertical .product-table {
    order: 1;
    width: 34%;
}

.product-view.vertical .product-text {
    order: 2;
    width: 32%;
    flex-direction: column;
    padding: 0 var(--space-40);
}

.product-view.vertical .product-image-small {
    order: 3;
    width: 34%;
}

.product-view.vertical .product-text-col + .product-text-col {
    padding-top: var(--space-40);
}

.product-view-button {
    padding: calc(2 * var(--space-40)) 0 var(--space-40);
    display: flex;
    justify-content: flex-end;
}

.product-view-button .btn {
    color: #fff;
    min-width: initial;
    padding: 0;
}

@media screen and (min-width: 1140px) {
    .product-view-button .btn:hover {
        color: var(--color-primary);
    }
}

.product-list {
    padding-top: var(--space-40);
    padding-bottom: var(--space-40);
    margin: calc(-1 * var(--space-40));
    display: flex;
    flex-wrap: wrap;
}

.product-list-item {
    width: 33.3333%;
    padding: var(--space-40);
}

.product-list-item-inner {
    border: 1px solid rgba(255, 255, 255, 0.1);
    position: relative;
    transition: border-color 0.2s;
    display: block;
}

.product-list-item-inner:hover,
.product-list-item-inner:focus {
    color: #fff;
    text-decoration: none;
}

.product-list-item-content {
    padding: 18px;
    display: flex;
    align-items: center;
}

.product-list-item-inner,
.product-list-item-content {
    height: 100%;
}

.product-list-item-image {
    position: relative;
    background-color: #fff;
    width: 82px;
    height: 82px;
    flex-shrink: 0;
    margin-right: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-list-item-image img {
    display: block;
    max-width: 100%;
    max-height: 100%;
}

.product-list-item-title {
    font-size: var(--font-18);
    font-weight: 700;
    color: #fff;
    transition: color 0.2s;
}

.section-related {
    padding-bottom: var(--space-40);
    position: relative;
}

.news-list {
    display: flex;
    flex-wrap: wrap;
    margin: -16px;
    padding-top: var(--space-40);
    position: relative;
}

.news-list-item {
    width: 50%;
    padding: 16px;
}

.section-related .news-list-item-inner {
    /*background-color: #171616;*/
}

.news-list-item-inner {
    border: 1px solid rgba(255, 255, 255, 0.1);
    padding: calc(var(--space-40) - 5px) var(--space-40) calc(var(--space-40) + 60px);
    position: relative;
    transition: border-color 0.2s;
    height: 100%;
    display: block;
    color: #fff;
}

.news-list-item .date {
    font-family: "Big Shoulders Stencil Text", sans-serif;
    font-size: var(--font-14);
    letter-spacing: 0.05em;
}

.news-list-item .btn {
    position: absolute;
    bottom: 20px;
    right: 20px;
}

.news-list-item-title {
    font-size: var(--font-18);
    color: var(--color-primary);
    margin-top: 5px;
}

.text.news-list-item-text {
    margin-top: var(--space-40);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

@media screen and (min-width: 1140px) {
    .news-list-item-inner:hover,
    .news-list-item-inner:focus {
        /*border-color: var(--color-primary);*/
        text-decoration: none;
        color: #fff;
    }
    .news-list-item-inner a:hover {
        color: var(--color-primary);
    }
    .news-list-item-inner:hover .btn.btn-square {
        border-color: var(--color-primary);
        background-color: var(--color-primary) !important;
        color: #fff;
    }
}

.news-border {
    position: absolute;
    bottom: 50%;
    right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    border-right: 1px solid rgba(255, 255, 255, 0.5);
}

.news-border-middle {
    position: absolute;
    bottom: 50%;
    width: 32px;
    left: 0;
    right: 0;
    margin: 0 auto;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.section-news .pagination-wrapper {
    padding-top: var(--space-50);
}

.section-news {
    padding-bottom: var(--space-40);
}

.mainSlider {
    position: relative;
}

.mainSlider-image {
    position: relative;
    height: calc(100vh - 50px);
}

.mainSlider-image:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.6);
    pointer-events: none;
    z-index: 1;
}

.mainSlider-image img {
    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%;
    height: 100%;
    object-fit: cover;
}

.mainSlider-content {
    position: absolute;
    top: 24%;
    right: 0;
    left: 0;
}

.mainSlider-title {
    font-size: 120px;
    line-height: 1.3333;
    position: relative;
    z-index: 5;
}

.mainSlider-title .line2 {
    display: block;
    padding-left: calc(4 * var(--space-40));
    opacity: 0.8;
}

.mainSlider-aside {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    pointer-events: none;
}

.mainSlider-aside-inner {
    position: relative;
    float: right;
    width: 350px;
    margin-right: 120px;
    height: 100%;
}

.mainSlider-aside-inner:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: -500px;
    background-color: rgba(0, 0, 0, 0.4);
}

.aside-border-top {
    position: absolute;
    top: 0;
    right: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.5);
    height: 10000px;
}

.aside-border-bottom {
    position: absolute;
    bottom: 0;
    right: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.5);
}

.mainSlider-aside-inner:after {
    /*content: '';*/
    /*position: absolute;*/
    /*top: 0;*/
    /*right: 0;*/
    /*bottom: 0;*/
    /*border-right: 1px solid rgba(255, 255, 255, 0.5);*/
}

.mainSlider-aside-content {
    position: absolute;
    top: calc(24% + 52px);
    left: 0;
    right: 0;
    height: 288px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    pointer-events: initial;
}

.mainSlider-aside-content:before {
    /*content: '';*/
    /*position: absolute;*/
    /*top: -20px;*/
    /*right: -20px;*/
    /*height: 41px;*/
    /*width: 41px;*/
    /*background: url("../images/crosshair_white.png");*/
}

.mainSlider-aside-content:after {
    /*content: '';*/
    /*position: absolute;*/
    /*bottom: -21px;*/
    /*left: -21px;*/
    /*height: 41px;*/
    /*width: 41px;*/
    /*background: url("../images/crosshair_white.png");*/
}

.mainSlider-border {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(24% + 52px);
    border-top: 1px solid rgba(255, 255, 255, 0.5);
    pointer-events: none;
}

.mainSlider-news {
    display: block;
    color: #fff;
    padding: var(--space-40);
}

.mainSlider-news:hover,
.mainSlider-news:focus {
    color: #fff;
    text-decoration: none;
}

.mainSlider-news .date {
    font-family: "Big Shoulders Stencil Text", sans-serif;
    font-size: var(--font-14);
    letter-spacing: 0.05em;
}

.mainSlider-news-title {
    font-size: var(--font-18);
    margin-top: 10px;
    color: var(--color-primary);
}

.text.mainSlider-news-text {
    margin-top: var(--space-40);
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    max-height: 118px;
}

.mainSlider-arrows {
    position: absolute !important;
    top: 8px;
    right: 8px;
    /*top: 50%;*/
    /*right: -70px;*/
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    /*-webkit-transform: translateY(-50%);*/
    /*-moz-transform: translateY(-50%);*/
    /*-ms-transform: translateY(-50%);*/
    /*-o-transform: translateY(-50%);*/
    /*transform: translateY(-50%);*/
    z-index: 100 !important;
}

@media screen and (min-width: 1281px) {
    .mainSlider-arrows .page-heading-arrows .arrow {
        height: 55px;
        width: 55px;
    }
}

.mainSlider-arrows .btn + .btn {
    /*margin-right: 46px;*/
}

.mainSlider-arrows-title {
    height: 0;
    width: 0;
    transform: rotate(-90deg);
    font-size: 32px;
}

.mainSlider-arrows-title .caption {
    display: block;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(50%);
    -moz-transform: translateY(50%);
    -ms-transform: translateY(50%);
    -o-transform: translateY(50%);
    transform: translateY(50%);
}

.mainSlider .slick-dots {
    position: absolute;
    bottom: calc(2 * var(--space-40));
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100%;
    max-width: 1670px;
    padding: 0 var(--container-padding);
    display: flex;
    pointer-events: none;
    counter-reset: count;
}

.mainSlider .slick-dots li + li {
    margin-left: var(--space-40);
}

.mainSlider .slick-dots li button {
    padding: 0;
    font-size: 0;
    background-color: transparent;
    counter-increment: count;
    border: none;
    transition: color 0.2s;
    pointer-events: initial;
}

.mainSlider .slick-dots li:hover button ,
.mainSlider .slick-dots li.slick-active button {
    color: var(--color-primary);
    font-weight: 700;
}

.mainSlider .slick-dots li button:before {
    content: counter(count, decimal-leading-zero);
    font-size: var(--font-14);
}

.mainSlider-aside-inner .social-list {
    position: absolute;
    bottom: var(--space-40);
    right: var(--space-40);
    pointer-events: initial;
}

.social-icon {
    height: 50px;
    width: 50px;
    padding: 8px;
    border-color: rgba(255, 255, 255, 0.5);
    transition: border-color 0.2s;
}

.social-icon svg {
    fill: #fff;
    transition: fill 0.2s;
}

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

    .social-icon:hover svg {
        fill: var(--color-primary);
    }
}

.background-floating {
    position: fixed;
    top: 105px;
    left: 0;
    max-width: 958px;
    pointer-events: none;
    z-index: -1;
    opacity: 0.5;
}

.background-floating img {
    display: block;
    max-width: 100%;
}

.section-news .news-list-item {
    padding: var(--space-25);
}

.section-news .news-list {
    margin: calc(-1 * var(--space-25));
}

.team-tile > .fancybox-popup {
    display: none;
}

.fancybox-popup {
    max-width: 950px;
    border: 1px solid var(--color-primary);
    background-color: #000;
    padding: var(--space-60);
    margin: var(--space-50);
}

.fancybox-popup:before {
    content: '';
    position: absolute;
    top: -21px;
    left: -21px;
    height: 41px;
    width: 41px;
    background: url("../images/crosshair.png") no-repeat center center /cover;
}

.fancybox-popup-image {
    float: left;
    max-width: 254px;
    margin-right: var(--space-50);
    margin-bottom: var(--space-25);
    margin-top: calc(-1 * var(--space-50));
    margin-left: calc(-1 * var(--space-50));
}

.fancybox-popup-image img {
    display: block;
    max-width: 100%;
}

.fancybox-popup-title {
    color: var(--color-primary);
    font-size: 24px;
}

.text.fancybox-popup-text {
    letter-spacing: 0;
}

.fancybox-close-small {
    height: 46px;
    width: 46px;
    background-color: var(--color-primary);
}

.fancybox-close-small:after {
    height: 46px;
    width: 46px;
    color: #fff;
    border-radius: 0;
    top: 0;
    right: 0;
    font-size: 0;
    background: url('../images/icons/close.png') no-repeat center center /18px;
}

.fancybox-close-small:hover:after {
    background: url('../images/icons/close.png') no-repeat center center /18px;
}

.floating-social {
    position: fixed;
    top: 160px;
    left: auto;
    right: auto;
    margin: 0 auto;
    width: 100%;
    max-width: 1902px;
    padding: 0 calc(var(--container-padding) + 0px);
    display: flex;
    justify-content: flex-end;
    pointer-events: none;
    z-index: 50;
}

.floating-social .social-list ul {
    display: flex;
    flex-direction: column;
    pointer-events: initial;
}
@media screen and (min-width: 1140px) {
    .mainSlider-content .container,
    #content > .container,
    #content > .page-text-siteMap > .container,
    .header-container {
        max-width: 1830px;
        padding-left: 120px;
        padding-right: 120px;
    }
}

@media screen and (min-width: 1140px) {
    .aside-shadow,
    .aside-close,
    .aside-open {
        display: none;
    }
}

.arrow:not(.slick-arrow) {
    display: none;
}

/*@media screen and (max-height: 950px) {*/
    /*.background-image img {*/
        /*max-height: 100%;*/
    /*}*/
/*}*/

.icon + .recruitment-title {
    width: calc(100% - 60px);
}

.project-list .slick-list,
.project-list .slick-track {
    width: 100%;
}

.team-list .slick-slide > div {
    /*padding: 5px;*/
}

.career-search {
    position: relative;
}

.career-search .form.filters-form > .row {
    width: calc(100% - 46px);
}

.career-search button.btn {
    position: absolute;
    top: 27px;
    right: 0;
}

.select2-container--default .select2-selection--multiple, .select2-container .select2-selection--single {
    background-color: transparent;
    border-color: rgba(255, 255, 255, 0.2);
    border-radius: 0;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    color: #fff;
    background-color: var(--color-primary);
    height: 24px;
    width: 24px;
    line-height: 24px;
}

.form-group-lg .form-element.has-feedback .select2-container--default .select2-selection--single .select2-selection__arrow {
    right: 24px;
}

.select2-container--default .select2-selection--single .select2-selection__clear {
    height: 24px;
    width: 24px;
    background-color: var(--color-primary);
    color: #fff;
    top: 10px;
    text-align: center;
    line-height: 24px;
}

form a:hover {
    color: var(--color-primary);
}

.container.nopad:last-child .article.nopad:not(.noborder, .news),
.container.nopad:nth-last-child(2) .article.nopad:not(.noborder, .news) {
    border-right: none;
    position: relative;
}

@media screen and (min-width: 1140px) {
    .container.nopad:last-child .article.nopad:last-child:not(.noborder, .news):after,
    .container.nopad:nth-last-child(2) .article.nopad:last-child:not(.noborder, .news):after {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        height: 5000px;
        border-right: 1px solid rgba(255, 255, 255, 0.5);
    }
}

.select2-dropdown {
    background-color: #2a2827;
    border: 1px solid rgba(255, 255, 255, 0.2);
}

.select2-results__option[aria-selected] {
    color: #fff;
}

.select2-container--default .select2-selection--single .select2-selection__arrow:before {
    font-size: 12px;
}

.select2-container--default .select2-selection--multiple .select2-selection__rendered, .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #fff;
}

.article-bottom {
    padding-bottom: calc(2 * var(--space-40));
}

.page-heading + .alert {
    margin-top: var(--space-50);
}

.crosshair-red {
    position: absolute !important;
    top: -1px;
    right: -1px;
    bottom: -1px;
    left: -1px;
    z-index: 20;
    /*pointer-events: none;*/
    --crosshair-size: 20px;
}

.crosshair-red:before,
.crosshair-red:after {
    content: '';
    position: absolute;
    animation-duration: 1s;
    animation-direction: alternate;
}

.crosshair-red:before {
    transition: border-color 0.4s, left 0.2s ease-in-out 0.2s, right 0.2s ease-in-out 0.2s, width 0.2s ease-in-out 0.2s, height 0.2s;
}

.crosshair-red:after {
    transition: border-color 0.4s, top 0.2s ease-in-out 0.2s, bottom 0.2s ease-in-out 0.2s, height 0.2s ease-in-out 0.2s, width 0.2s;
}

.crosshair-red.top-left:before {
    top: 0;
    left: calc(-1 * var(--crosshair-size));
    width: calc(2 * var(--crosshair-size));
    height: 0;
    border-top: 1px solid var(--color-primary);
    border-right: 1px solid var(--color-primary);
}

.crosshair-red.top-left:after {
    top: calc(-1 * var(--crosshair-size));
    left: 0;
    height: calc(2 * var(--crosshair-size));
    width: 0;
    border-left: 1px solid var(--color-primary);
    border-bottom: 1px solid var(--color-primary);
}

.crosshair-red.bottom-left {
    right: 0px;
    top: 0px;
}

.crosshair-red.bottom-left:before {
    bottom: 0;
    left: calc(-1 * var(--crosshair-size));
    width: calc(2 * var(--crosshair-size));
    height: 0;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
}

.crosshair-red.bottom-left:after {
    bottom: calc(-1 * var(--crosshair-size));
    left: 0;
    height: calc(2 * var(--crosshair-size));
    width: 0;
    border-left: 1px solid #fff;
    border-top: 1px solid #fff;
}

.crosshair-red.top-right {
    left: 0;
}

.crosshair-red.top-right:before {
    top: 0;
    right: calc(-1 * var(--crosshair-size));
    width: calc(2 * var(--crosshair-size));
    height: 0;
    border-top: 1px solid var(--color-primary);
    border-left: 1px solid var(--color-primary);
}

.crosshair-red.top-right:after {
    top: calc(-1 * var(--crosshair-size));
    right: 0;
    height: calc(2 * var(--crosshair-size));
    width: 0;
    border-right: 1px solid var(--color-primary);
    border-bottom: 1px solid var(--color-primary);
}



@media screen and (min-width: 1140px) {
    *:hover > .crosshair-red:before {
        transition: border-color 0.4s, left 0.2s, right 0.2s, width 0.2s, height 0.2s ease-in-out 0.2s;
    }
    *:hover > .crosshair-red:after {
        transition: border-color 0.4s, top 0.2s, bottom 0.2s, height 0.2s, width 0.2s ease-in-out 0.2s;
    }
    *:hover > .crosshair-red.top-left:before {
        width: 100%;
        height: 100%;
        left: 0;
    }
    *:hover > .crosshair-red.top-left:after {
        height: 100%;
        width: 100%;
        top: 0;
    }
    *:hover > .crosshair-red.top-right:before {
        width: 100%;
        height: 100%;
        right: 0;
        border-color: var(--color-primary) !important;
    }
    *:hover > .crosshair-red.top-right:after {
        height: 100%;
        width: 100%;
        top: 0;
        border-color: var(--color-primary) !important;
    }
    .mainSlider-aside *:hover > .crosshair-red.top-right:after {
        height: 100%;
        width: 0;
        top: 0;
        border-color: var(--color-primary) !important;
    }
    *:hover > .crosshair-red.bottom-left:before {
        width: 100%;
        height: 100%;
        left: 0;
        border-color: var(--color-primary);
    }
    *:hover > .crosshair-red.bottom-left:after {
        height: 288px;
        width: 100%;
        bottom: 0;
        border-color: var(--color-primary);
    }
    .announcements-list-item:hover + .announcements-list-item .crosshair-red:before {
        right: 0;
    }
    .announcements-list-item:hover + .announcements-list-item .crosshair-red:after {
        height: 20px;
    }
}

.crosshair-red ~ * {
    position: relative;
    z-index: 50;
}

.mainSlider-arrows .btn-secondary:not([disabled]):hover,
.mainSlider-arrows .btn-secondary:not([disabled]).active:hover {
    background-color: #000 !important;
    border-color: #000 !important;
    color: #fff !important;
}

.mainSlider-aside .crosshair-red.top-right {
    top: 0;
    right: 0;
    left: -1px;
}

.mainSlider-aside .crosshair-red.top-right:before,
.mainSlider-aside .crosshair-red.top-right:after {
    border-color: #fff;
}

.return-to-list {
    padding: var(--space-40) 0;
    display: flex;
    justify-content: center;
}

.section-related .article-title {
    padding-top: var(--space-50);
    font-size: 34px;
}

.search-group-heading {
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
}

.search-group-heading-title {
    font-family: "Big Shoulders Stencil Text", sans-serif;
}

.header-center {
    position: relative;
    display: flex;
    align-items: center;
}

.search-boxes > .news-list,
.search-boxes > .announcements-list {
    width: 100%;
}

.page-asided .article {
    border: none;
    padding-top: 0;
}

.page-asided.noborder {
    border: 0;
    position: relative;
}

@media screen and (min-width: 1140px) {
    .page-asided.noborder:before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        height: 100px;
        border-right: 1px solid rgba(255, 255, 255, 0.5);
    }
}

.page-asided.noborder > .page-content > .article:not(.noborder),
.page-asided.noborder > .page-content > .section-gallery {
    border-right: 1px solid rgba(255, 255, 255, 0.5);
}

@media screen and (min-width: 1140px) {
    .mainSlider-image {
        /*transition: transform 1s, opacity 1s;*/
    }
    .mainSlider-slider .slick-slide .mainSlider-image {
        -webkit-animation-name: fadeOut;
        -moz-animation-name: fadeOut;
        -o-animation-name: fadeOut;
        animation-name: fadeOut;
        -webkit-animation-duration: 0.5s;
        -moz-animation-duration: 0.5s;
        -o-animation-duration: 0.5s;
        animation-duration: 0.5s;
        -webkit-animation-fill-mode: both;
        -moz-animation-fill-mode: both;
        -o-animation-fill-mode: both;
        animation-fill-mode: both;
        -webkit-animation-timing-function: linear;
        -moz-animation-timing-function: linear;
        -o-animation-timing-function: linear;
        animation-timing-function: linear;
    }
    .mainSlider-slider .slick-slide.slick-current .mainSlider-image {
        -webkit-animation-name: fadeIn;
        -moz-animation-name: fadeIn;
        -o-animation-name: fadeIn;
        animation-name: fadeIn;
        -webkit-animation-duration: 5s;
        -moz-animation-duration: 5s;
        -o-animation-duration: 5s;
        animation-duration: 5s;
        -webkit-animation-fill-mode: both;
        -moz-animation-fill-mode: both;
        -o-animation-fill-mode: both;
        animation-fill-mode: both;
        -webkit-animation-timing-function: linear;
        -moz-animation-timing-function: linear;
        -o-animation-timing-function: linear;
        animation-timing-function: linear;
    }
}

@keyframes fadeOut {
    0% {
        opacity: 1;
        transform: scale(1.15) translateY(-20px);
    }
    100% {
        opacity: 0;
        transform: scale(1.2) translateY(-40px);
    }
}

@keyframes fadeIn {
    0% {
        opacity: 0;
        transform: scale(1.1) translateY(20px);
    }
    25% {
        opacity: 1;
    }
    100% {
        transform: scale(1.15) translateY(-20px);
    }
}

@keyframes sliderImage {
    0% {
        transform: scale(1.1);
    }
    90% {
        transform: scale(1);
        opacity: 1;
    }
    100% {
        transform: scale(0.5);
        opacity: 0;
    }
}

.border-right {
    border-right: 1px solid rgba(255, 255, 255, 0.5);
}

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

.recruitment-slider.center .slick-list {
    justify-content: center;
}

body.sticky-footer #page {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    min-height: initial !important;
}

/* Scrollbar */

::-webkit-scrollbar {
    width: 10px;
}

/* Track */
::-webkit-scrollbar-track {
    background-color: #000;
}

/* width */
::-webkit-scrollbar {
    width: 10px;
}

/* Handle */
::-webkit-scrollbar-thumb {
    background-color: #1f1f1f;
    border-radius: 10px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
    background-color: #333;
}

body.subpage {
    overflow: hidden;
}

.subpage #container-page {
    height: 100vh;
    overflow-y: scroll;
    scrollbar-width: thin;
    scrollbar-color: #333 #000;
}
.floating-social{
    top: 220px;
}

.page-asided{
    padding-top: 160px;
}
.aside-list{
    margin-top: calc(var(--space-40) + 4px);
}
.career,
.announcements-list{
    padding-top: calc(var(--space-40) - 16px);
}