

.section__wrap {
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: center;
    align-items: center
}

.section__wrap,
.two-columns {
    display: -ms-flexbox;
    display: flex
}

.two-columns {
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative
}

.two-columns-item {
    width: 50%
}

.header {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    border-bottom: 3px solid #e6e7e8
}

.menu-opened .header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    background: #fff
}

.header__container {
    width: 1510px;
    padding: 0 55px;
    position: relative
}

.header__logo {
    float: left;
    width: 153px;
    padding: 51px 0 20px
}

.header__logo svg {
    width: 153px;
    height: 61px;
    display: block
}

.header__logo svg * {
    stroke: none;
    fill: #003a81
}

.header__logo svg .logo__svg-arrow * {
    fill: #ce1b2e
}

.header__lang {
    display: block
}

.header__lang-tog {
    padding: 8px;
    margin-top: -8px;
    z-index: 3
}

.header__lang-cur {
    height: 34px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-left: 34px;
    padding-right: 15px;
    position: relative;
    margin-right: 12px
}

.header__lang-cur:before {
    content: "";
    position: absolute;
    left: 9px;
    top: 50%;
    transform: translateY(-50%);
    background: url(../images/globe.png) no-repeat;
    width: 17px;
    height: 16px
}

.header__lang-cur:after {
    content: "▼";
    position: absolute;
    display: inline-block;
    color: #ce1b2e;
    right: 0;
    top: 50%;
    transform: translateY(-50%) scaleX(2);
    font-size: 6px
}

.header__lang-drop {
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 31px 8px 15px;
    margin: 0 -8px;
    z-index: 10;
    background: #fff;
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    transform: translateY(20px);
    transition: all .3s ease
}

.header__lang-drop:before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    width: 100%;
    height: calc(100% + 39px);
    left: 0;
    top: -39px;
    border: 1px solid #e1e3e7;
    box-shadow: 0 3px 7px rgba(0, 0, 0, .26)
}

.header__lang-drop:after {
    content: "";
    position: absolute;
    top: 19px;
    left: 8px;
    width: calc(100% - 16px);
    display: block;
    height: 1px;
    background: #e1e3e7
}

.header__lang-tog .header__lang-drop {
    height: auto
}

.header__lang-drop .header__lang-item {
    height: 42px;
    padding: 0;
    position: relative;
    display: block;
    margin-bottom: 2px;
    border: none
}

.header__lang-drop .header__lang-item a {
    display: -ms-flexbox;
    display: flex;
    height: 42px;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 35px;
    background: #fff
}

.header__lang-drop .header__lang-item a:hover {
    color: #fff;
    background: #ce1b2e
}

.header__lang-tog:hover .header__lang-drop {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto
}

.header__top-nav {
    float: right;
    height: 75px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    padding: 22px 0 19px
}

.header__top-nav>div {
    transition: transform .3s ease;
    transform: translateX(0)
}

.header__top-nav>div.before-focused,
.header__top-nav>div.before-hovered {
    transform: translateX(-195px)
}

.header__top-nav a {
    text-transform: uppercase;
    font-size: 13px;
    color: #444648;
    font-weight: 500
}

.header__top-nav a:hover {
    color: #ce1b2e
}

.header__top-nav ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    height: 34px
}

.header__top-nav ul li {
    height: 100%;
    padding: 0 22px
}

.header__top-nav .search-ico,
.header__top-nav ul li {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    border-left: 1px solid #e1e3e7
}

.header__top-nav .search-ico {
    cursor: pointer;
    width: auto;
    padding: 0 24px;
    position: relative;
    z-index: 4
}

.header__top-nav .search-ico svg {
    height: 17px;
    width: 17px;
    fill: #8f8f8f;
    position: relative;
    z-index: 5;
    pointer-events: none
}

.header__top-nav .search-ico svg.hovered {
    fill: #ce1b2e
}

.header__top-nav .search-ico:hover form input {
    visibility: visible;
    transform: translateX(0) scale(1);
    opacity: 1
}

.header__top-nav .search-ico form {
    position: absolute;
    right: 0;
    top: -4px;
    z-index: 4;
    pointer-events: none
}

.header__top-nav .search-ico form input {
    pointer-events: auto;
    -webkit-appearance: none;
    box-sizing: border-box;
    display: block;
    position: relative;
    height: 42px;
    width: 261px;
    padding: 0 66px 0 12px;
    outline: none;
    border: 1px solid #8f8f8f;
    transform-origin: right center;
    transform: translateX(10px) scale(.2, .8);
    opacity: 0;
    transition: transform .3s ease, opacity .3s ease;
    font-size: 15px;
    font-weight: 500
}

.header__top-nav .search-ico form input:focus {
    transform: translateX(0) scale(1);
    opacity: 1
}

.header__top-nav .search-ico form button {
    position: absolute;
    cursor: pointer;
    width: 66px;
    height: 42px;
    right: 0;
    top: 0;
    border: none;
    background: transparent;
    outline: none;
    text-indent: -99999px
}

.header__top-nav>a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 0 0 30px;
    color: #003a81;
    border-left: 1px solid #e1e3e7
}

.header__top-nav>a:after {
    content: "»";
    display: inline;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 20px;
    font-weight: 600;
    margin-left: 9px;
    position: relative;
    top: -1px
}

.header__main-nav .menu {
    display: -ms-flexbox;
    display: flex;
    float: right;
    height: 57px;
    border-top: 1px solid #e1e3e7
}

.header__main-nav .menu>li {
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: start;
    align-items: flex-start
}

.header__main-nav .menu>li:first-child>a {
    padding-left: 0
}

.header__main-nav .menu>li:last-child>a {
    padding-right: 0
}

.header__main-nav .menu>li.current-menu-ancestor>a,
.header__main-nav .menu>li.current-menu-item>a {
    color: #ce1b2e
}

.header__main-nav .menu>li>a {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 600;
    color: #000;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    padding: 0 22px
}

.header__main-nav .menu>li>a:hover {
    color: #ce1b2e
}

.mobile-nav {
    display: none;
    position: fixed;
    height: 100%;
    width: 275px;
    left: 100vw;
    top: 78px;
    transition: transform .3s ease;
    z-index: 10;
    background: #fff;
    padding: 25px;
    border-left: 1px solid #fff;
    overflow: auto
}

.menu-opened .mobile-nav {
    transform: translateX(-275px)
}

.mobile-nav .sub-menu {
    display: none
}

.mobile-nav:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 150%;
    width: 15px;
    background: linear-gradient(90deg, #ddddde, #fff);
    z-index: 0
}

.mobile-nav .search-form {
    display: block;
    position: relative;
    height: 48px;
    width: 100%;
    margin-bottom: 17px
}

.mobile-nav .search-form input {
    width: 100%;
    height: 48px;
    padding: 0 46px 0 15px;
    color: #8f8f8f;
    font-size: 14px;
    background: #f5f5f5;
    border: 1px solid #8f8f8f;
    outline: none
}

.mobile-nav .search-form button {
    text-indent: -99999px;
    height: 46px;
    width: 46px;
    background: url(../images/ico-search.png) 50% no-repeat;
    background-size: 17px;
    position: absolute;
    right: 1px;
    top: 1px;
    fill: #ce1b2e;
    border: none;
    outline: none
}

.mobile-nav .menu-header-menu-container {
    margin-bottom: 15px
}

.mobile-nav .menu-header-menu-container a {
    height: 56px !important;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 15px !important;
    border-bottom: 1px solid #e1e3e7;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase
}

.mobile-nav .header__lang-tog {
    height: 50px;
    position: relative
}

.mobile-nav .header__lang-tog .header__lang-cur {
    font-size: 13px;
    text-transform: uppercase
}

.mobile-nav .header__lang-tog .header__lang-cur:after {
    transition: transform .2s ease
}

.mobile-nav .header__lang-tog:hover .header__lang-cur:after {
    transform: translateY(-50%) scaleX(2) rotate(180deg)
}

.mobile-nav .header__lang-drop {
    position: absolute;
    width: 100%;
    bottom: 44px;
    padding-top: 22px
}

.mobile-nav .header__lang-drop:before {
    top: auto;
    bottom: -50px
}

.mobile-nav .header__lang-drop:after {
    top: auto;
    bottom: 9px
}

.mobile-nav .menu-header-top-menu-container a,
.mobile-nav>a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    height: 45px;
    padding: 0 15px;
    font-size: 13px;
    text-transform: uppercase;
    color: #444648
}

.mobile-nav>a {
    color: #003a81;
    font-weight: 500
}

.mobile-nav>a:after {
    top: -1px;
    font-weight: 500
}

.mobile-nav-toggler {
    display: none;
    width: 30px;
    height: 30px;
    position: absolute;
    float: right;
    right: 55px;
    top: 50%;
    transform: translateY(-50%);
    background: #fff;
    transition: background .3s ease
}

.menu-opened .mobile-nav-toggler {
    background: #ce1b2e
}

.menu-opened .mobile-nav-toggler div {
    background: #fff
}

.menu-opened .mobile-nav-toggler div:first-child,
.menu-opened .mobile-nav-toggler div:nth-child(2) {
    transform: translateY(-1px) translateX(-5px) rotate(45deg) scale(.8)
}

.menu-opened .mobile-nav-toggler div:nth-child(2) {
    display: none
}

.menu-opened .mobile-nav-toggler div:last-child {
    transform: translateY(-1px) translateX(-5px) rotate(-45deg) scale(.8)
}

.mobile-nav-toggler div {
    width: 20px;
    height: 3px;
    position: absolute;
    background: #ce1b2e;
    top: 50%;
    right: 0;
    transition: all .3s ease
}

.mobile-nav-toggler div:first-child {
    transform: translateY(-8px)
}

.mobile-nav-toggler div:nth-child(2) {
    transform: translateY(-1px)
}

.mobile-nav-toggler div:last-child {
    transform: translateY(6px)
}

.menu {
    position: relative
}

.menu__submenu {
    position: absolute;
    top: calc(100% + 3px);
    right: 0;
    min-width: 100%;
    width: auto;
    height: auto;
    max-height: 270px;
    padding: 30px;
    background: linear-gradient(180deg, #fff, #f1f4f9);
    display: -ms-inline-flexbox;
    display: inline-flex;
    box-shadow: 0 15px 16px rgba(0, 0, 0, .25);
    z-index: 2;
    transform: translateY(25px);
    opacity: 0;
    pointer-events: none;
    transition: all .3s ease .1s
}

.menu__submenu-title {
    font-size: 27px;
    font-family: Roboto, sans-serif;
    font-weight: 700;
    padding-right: 30px;
    white-space: nowrap
}

.menu__submenu-list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-positive: 1;
    flex-grow: 1;
    border-left: 3px solid #e1e3e7
}

.menu__submenu-list__item {
    -ms-flex-preferred-size: 35px;
    flex-basis: 35px;
    padding: 0;
    min-height: 35px;
    max-height: 35px
}

.menu__submenu-list__item:last-child {
    min-height: 18px;
    max-height: 18px;
    -ms-flex-preferred-size: 18px;
    flex-basis: 18px
}

.menu__submenu-list__item.current-menu-item a {
    color: #ce1b2e
}

.menu__submenu-list__item.current-menu-item a:before {
    opacity: 1
}

.menu__submenu-list__item a {
    font-size: 13px;
    color: #003a81;
    text-transform: uppercase;
    font-weight: 500;
    display: block;
    height: 100%;
    padding: 6px 50px 0 20px;
    white-space: nowrap;
    position: relative
}

.menu__submenu-list__item a:hover {
    color: #ce1b2e
}

.menu__submenu-list__item a:hover:before {
    opacity: 1
}

.menu__submenu-list__item a:before {
    content: "";
    width: 3px;
    height: 25px;
    position: absolute;
    background: #ce1b2e;
    opacity: 0;
    left: -3px;
    top: 0;
    transition: opacity .2s ease
}

.menu__submenu-img {
    max-height: 193px;
    max-width: 400px;
    -ms-flex-item-align: center;
    -ms-grid-row-align: center;
    align-self: center
}

.footer {
    background: #181d23;
    color: #bdbcbc;
    position: relative
}

.footer>div {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center
}

.footer a {
    color: #fff
}

.footer__heading {
    font-weight: 300;
    font-size: 25px;
    color: #666;
    display: block;
    margin-bottom: 22px
}

.footer__hide-on-mobile {
    max-height: 200px;
    transition: max-height .3s ease
}

.footer__container {
    width: 1450px;
    max-width: 100%;
    padding: 0 25px
}

.footer__bot,
.footer__mid,
.footer__top {
    border-bottom: 1px solid #3e4247
}

.footer__bot,
.footer__bot .footer__container,
.footer__mid,
.footer__mid .footer__container,
.footer__top,
.footer__top .footer__container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.footer__bot .footer__container>*,
.footer__mid .footer__container>*,
.footer__top .footer__container>* {
    -ms-flex-positive: 1;
    flex-grow: 1
}

.footer__connect {
    border-right: 1px solid #3e4247;
    padding: 46px 25px 46px 0
}

.footer__connect form {
    height: 50px;
    position: relative
}

.footer__connect form.sent .wpcf7-mail-sent-ok {
    display: block !important;
    position: absolute;
    top: calc(100% + 5px);
    margin: 0;
    left: 236px;
    font-size: 13px;
    color: #018124;
    border: none;
    padding: 0;
    font-style: italic
}

.footer__connect form p {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    height: 100%
}

.footer__connect form p br {
    display: none
}

.footer__connect form label {
    font-weight: 300;
    font-size: 25px;
    color: #666;
    margin-right: 46px
}

.footer__connect form input[type=email],
.footer__connect form input[type=text] {
    padding: 0 19px;
    outline: none;
    height: 50px;
    line-height: 50px;
    border: 1px solid #8c8c8c;
    background: transparent;
    font-size: 14px;
    color: #8f8f8f;
    margin-right: 22px
}

.footer__connect form div[class*=display-none] {
    display: none !important
}

.footer__connect form span[class*=not-valid-tip] {
    position: absolute;
    top: calc(100% + 5px);
    left: 19px;
    font-size: 13px;
    color: #ce1b2e
}

.footer__connect form span[class*=not-valid-tip]:before {
    content: "*";
    display: inline-block;
    margin-right: 4px
}

.footer__connect form button {
    background: transparent;
    border: none;
    font-size: 16px;
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
    outline: none;
    cursor: pointer;
    border-bottom: 3px solid #e1e3e7;
    height: 40px;
    -ms-flex-item-align: end;
    align-self: flex-end;
    padding: 0
}

.footer__connect form button:after {
    content: "»";
    font-family: Arial, Helvetica, sans-serif;
    font-size: 25px;
    font-weight: 700;
    position: relative;
    top: 1px;
    margin-left: 15px
}

.footer__connect form button:hover {
    color: #ce1b2e;
    border-color: #ce1b2e
}

.footer__social {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding: 46px 0 46px 25px
}

.footer__social li {
    margin-left: 22px;
    position: relative
}

.footer__social li:first-child {
    margin-left: 0
}

.footer__social li img {
    position: absolute;
    z-index: 5;
    left: 50%;
    top: 100%;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px) translateX(-50%);
    transition: all .3s ease .1s
}

.footer__social li:hover img {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) translateX(-50%)
}

.footer__social li svg {
    width: 50px;
    height: 50px;
    fill: #8f8f8f
}

.footer__social li a:hover svg {
    fill: #ce1b2e
}

.footer__company {
    padding: 50px 25px 35px 0;
    border-right: 1px solid #3e4247;
    width: 50%
}

.footer__company ul {
    display: block;
    position: relative
}

.footer__company ul li {
    float: left;
    height: 40px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    width: 33.33%;
    padding-right: 15px
}

.footer__company ul li a {
    font-weight: 700;
    font-size: 16px;
    text-transform: uppercase;
    overflow: hidden
}

.footer__company ul li a:hover {
    color: #ce1b2e
}

.footer__contacts {
    padding: 50px 0 35px 90px;
    display: -ms-flexbox;
    display: flex;
    width: 50%;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.footer__contacts>div {
    width: 50%;
    padding: 0 25px 0 0
}

.footer__contacts>div.footer__contacts__col-2 {
    padding-right: 0
}

.footer__contacts ul li {
    width: 100%;
    height: 40px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    font-size: 13px;
    color: #bdbcbc;
    text-transform: uppercase
}

.footer__contacts ul li a {
    color: #bdbcbc;
    margin-bottom: 0
}

.footer__contacts ul li a:hover {
    color: #ce1b2e
}

.footer__contacts ul li.phone {
    font-size: 16px
}

.footer__contacts ul li svg {
    height: 14px
}

.footer__contacts ul li img,
.footer__contacts ul li svg {
    width: 21px;
    display: inline;
    fill: #ce1b2e;
    margin-right: 14px
}

.footer__contacts p {
    font-size: 17px;
    margin-top: 8px;
    height: 72px;
    display: inline-block;
    color: #bdbcbc
}

.footer__bot {
    padding: 50px 0 100px;
    border: none
}

.footer__bot p {
    font-size: 14px
}

.footer__bot ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
    justify-content: flex-end
}

.footer__bot ul li a {
    padding: 0 17px;
    border-right: 1px solid #65676a;
    border-left: 1px solid #44474c;
    font-family: Work Sans, sans-serif;
    font-size: 13px;
    text-transform: uppercase;
    color: #bdbcbc
}

.footer__bot ul li a:hover {
    color: #ce1b2e
}

.footer__bot ul li:first-child a {
    padding-left: 0;
    border-left: none
}

.footer__bot ul li:last-child a {
    padding-right: 0;
    border-right: none
}

.service-cards {
    padding: 70px 0 0;
    width: 100%
}

.service-cards .block-heading {
    width: 100%;
    padding: 0
}

.industries {
    max-width: 1510px;
    padding: 100px 55px
}

.industries-wrap {
    background: #f5f5f5
}

.industries__descr {
    padding-right: 25px;
    transition: all .3s ease;
    -webkit-filter: blur(0);
    filter: blur(0);
    transform: scale(1)
}

.industries__descr.fade-out {
    -webkit-filter: blur(100px);
    filter: blur(100px);
    transform: scale(1.2)
}

.industries__descr h2 {
    text-transform: uppercase;
    color: #003a81;
    width: 100%;
    max-width: 450px;
    position: relative;
    top: -10px;
    margin-bottom: 15px;
    font-size: 60px
}

.industries__descr h3.changed-heading {
    font-size: 50px
}

.industries__descr p {
    font-size: 27px;
    line-height: 1.3;
    margin-bottom: 36px
}

.industries__list {
    border-top: 3px solid #ce1b2e;
    border-bottom: 3px solid #ce1b2e
}

.industries__list>li {
    height: 66px;
    width: 100%;
    border-bottom: 1px solid #cecfd0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.industries__list>li:last-child {
    border-bottom: none
}

.industries__list>li>a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 50px;
    color: #222;
    font-family: Work Sans, sans-serif;
    font-size: 20px;
    font-weight: 700;
    text-transform: uppercase;
    width: 100%;
    height: calc(100% - 2px);
    position: relative
}

.industries__list>li>a:before {
    box-sizing: border-box;
    content: "";
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    left: 0;
    top: 50%;
    margin-top: -5px;
    margin-left: -5px;
    border-left: 5px solid #ce1b2e;
    border-top: 5px solid #ce1b2e;
    border-right: 5px solid #fff;
    border-bottom: 5px solid #fff;
    transform: scaleX(0) rotate(-45deg);
    transition: transform .15s ease
}

.industries__list>li>a.active {
    background: #ce1b2e;
    color: #fff;
    cursor: default
}

.industries__list>li>a.active:hover {
    color: #fff
}

.industries__list>li>a.active svg {
    fill: #fff
}

.industries__list>li>a.active svg * {
    stroke: #fff
}

.industries__list>li>a.active svg .airlines {
    fill: #fff
}

.industries__list>li>a.active:before {
    transition-delay: .5s;
    transform: scale(1) rotate(-45deg)
}

.industries__list>li>a .svg_wrap {
    width: 50px;
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    margin-right: 40px
}

.industries__list>li>a .svg_wrap img,
.industries__list>li>a svg {
    max-width: 49px;
    max-height: 45px
}

.industries__list>li>a svg {
    width: 100%;
    fill: #ce1b2e;
    stroke: #ce1b2e
}

.industries__list>li>a svg * {
    stroke: #ce1b2e
}

.industries__list>li>a svg .airlines {
    fill: #ce1b2e
}

.industries__list>li>a:hover {
    color: #ce1b2e
}

.industries__list--item__detail {
    max-height: 0;
    height: 100%;
    overflow: hidden;
    position: relative;
    width: 100%;
    padding: 0 25px;
    transition: all .35s ease;
    display: none
}

.industries__list--item__detail>:first-child {
    margin-top: 15px
}

.industries__list--item__detail p {
    font-size: 16px;
    margin-bottom: 20px
}

.industries__list--item__detail .link-arrow {
    position: relative;
    margin-top: -10px;
    margin-bottom: 25px
}

.industries__list--item__detail .related-slider {
    margin-top: 25px
}

.industries__list--item__detail .related-slider .swiper-container {
    height: auto
}

.industries__list--item__detail .related-slider h4 {
    text-transform: uppercase;
    font-size: 15px;
    margin-bottom: 12px
}

.industries__list--item__detail .related-slider ul {
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 15px
}

.industries__list--item__detail .related-slider li {
    width: 100%;
    display: block
}

.industries__list--item__detail .related-slider li a {
    font-size: 14px
}

.industries__list--item__detail .related-slider li img {
    width: 130px;
    height: 90px;
    float: left;
    margin: 0 20px 15px 0
}

.industries__rel {
    padding-top: 85px;
    border-top: 1px solid #e1e3e7;
    margin-top: 80px
}

.industries__rel h4 {
    font-size: 20px;
    text-transform: uppercase;
    font-family: Work Sans, sans-serif;
    margin-bottom: 20px
}

.industries__rel ul {
    display: -ms-flexbox;
    display: flex
}

.industries__rel li {
    width: 50%;
    padding-right: 20px
}

.industries__rel a {
    font-size: 17px;
    display: -ms-flexbox;
    display: flex
}

.industries__rel img {
    max-width: 50%;
    width: 130px;
    height: 90px;
    margin-right: 15px;
    float: left
}

.case-studies {
    color: #fff;
    width: 100%;
    padding: 90px 25px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: center;
    align-items: center
}

.case-studies .see-more {
    margin-bottom: 75px
}

.case-studies-wrap {
    background: #181c23
}

.case-studies ul {
    width: 100%
}

.case-studies>h3 {
    font-family: Work Sans, sans-serif;
    width: 100%;
    text-align: center;
    text-transform: uppercase;
    margin-bottom: 20px
}

.case-studies>p {
    width: 100%;
    text-align: center;
    max-width: 730px;
    margin: 0 auto 52px;
    line-height: 1.3
}

.case-studies__item {
    margin-bottom: 80px;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -ms-flex-align: end;
    align-items: flex-end;
    padding: 45px 38px;
    min-height: 430px;
    border: 1px solid #1a3042
}

.case-studies__item-image {
    position: absolute;
    display: block;
    bottom: -60px;
    left: 0;
    transform: scale(.9);
    transform-origin: left bottom;
    transition: transform .5s ease
}

.case-studies__item:nth-child(2n) {
    -ms-flex-direction: row;
    flex-direction: row
}

.case-studies__item:nth-child(2n) .case-studies__item-image {
    left: auto;
    right: 0;
    transform-origin: right bottom
}

.case-studies__item:hover .case-studies__item-image {
    transform: scale(1)
}

.case-studies__item-content {
    width: 100%;
    max-width: 500px
}

.case-studies__item-content .category {
    display: block;
    font-family: Work Sans, sans-serif;
    font-weight: 400;
    text-transform: uppercase;
    font-size: 12px;
    margin-bottom: 14px
}

.case-studies__item-content h4 {
    font-family: Work Sans, sans-serif;
    font-weight: 800;
    text-transform: uppercase;
    font-size: 20px;
    margin-bottom: 10px
}

.case-studies__item-content p {
    font-size: 18px;
    line-height: 1.3;
    font-weight: 300;
    margin-bottom: 34px
}

.case-studies__item-links {
    height: 28px
}

.case-studies__item-links a {
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    float: left;
    margin-right: 30px
}

.case-studies__item-links a:after {
    top: -1px
}

.case-studies__item-links a+a,
.case-studies__item-links a+a.no-border {
    padding-left: 30px;
    border-left: 1px solid hsla(0, 0%, 100%, .3)
}

.news {
    padding: 90px 25px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: center;
    align-items: center
}

.news-wrap {
    background: #f5f5f5;
    position: relative
}

.news-wrap:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    left: 0;
    top: 1px;
    height: 3px;
    background: #e1e3e7
}

.news>h3 {
    color: #003a81;
    text-transform: uppercase;
    width: 100%;
    text-align: center;
    margin-bottom: 50px
}

.news__list {
    width: 100%;
    height: auto;
    overflow: hidden;
    margin-bottom: 30px
}

.news__item {
    display: -ms-flexbox;
    display: flex;
    padding: 1px;
    border: 1px solid #d6d7d8;
    height: 100%;
    width: 100%
}

.news__item-wrap {
    width: calc(50% - 10px);
    margin-bottom: 20px;
    -ms-flex-positive: 1;
    flex-grow: 1;
    height: 260px;
    float: right
}

.news__item-wrap:first-child {
    margin-right: 20px;
    float: left;
    height: 540px
}

.news__item-wrap:first-child .news__item {
    -ms-flex-direction: column;
    flex-direction: column
}

.news__item-wrap:first-child .news__item-cont,
.news__item-wrap:first-child .news__item-img {
    width: 100%
}

.news__item-wrap:first-child .news__item-img {
    height: 340px
}

.news__item-wrap:first-child .news__item-cont {
    -ms-flex-positive: 1;
    flex-grow: 1
}

.news__item-wrap:nth-child(3) .news__item {
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.news__item:hover .news__item-img img {
    transform: translate(-50%, -50%) scale(1.1)
}

.news__item-img {
    display: block;
    width: 50%;
    height: 100%;
    overflow: hidden
}

.news__item-img img {
    height: 100%;
    width: auto;
    min-height: 100%;
    min-width: 100%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    transition: all 1.5s cubic-bezier(.21, .44, .17, .87);
    will-change: transform;
    display: block;
    position: relative
}

.news__item-cont {
    width: 50%;
    padding: 37px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: end;
    justify-content: flex-end;
    position: relative;
    min-height: 190px;
    background: #fff
}

.news__item-cont .category {
    position: absolute;
    top: 37px;
    left: 37px;
    font-family: Work Sans, sans-serif;
    color: #003a81;
    font-weight: 800;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: -.5px
}

.news__item-cont .date {
    text-transform: uppercase;
    font-size: 13px;
    color: #444648;
    margin-bottom: 8px
}

.news__item-cont h4 {
    font-size: 27px;
    font-weight: 800;
    line-height: 1.1
}

.swiper-container {
    height: 100vw;
    width: 100vw;
    margin: 0 -15px 50px;
    overflow: visible
}

.swiper-container .swiper-pagination {
    bottom: -29px
}

.swiper-container .swiper-pagination-bullet {
    width: 9px;
    height: 9px;
    background: #e1e3e7;
    border-radius: 0;
    opacity: 1
}

.swiper-container .swiper-pagination-bullet-active {
    background: #ce1b2e
}

.swiper-container ul {
    overflow: visible;
    max-width: 100%
}

.swiper-container .swiper-slide {
    padding: 0 15px
}

.footprint {
    padding: 90px 25px 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: center;
    align-items: center
}

.footprint>h3 {
    color: #003a81;
    text-transform: uppercase;
    margin-bottom: 23px
}

.footprint>h3,
.footprint>p {
    width: 100%;
    text-align: center
}

.footprint>p {
    max-width: 1150px;
    margin: 0 auto 52px;
    line-height: 1.3
}

.footprint .cards {
    width: 100%;
    height: 180px
}

.footprint .cards__item {
    width: calc(50% - 1px);
    min-width: calc(50% - 1px);
    max-width: calc(50% - 1px);
    -ms-flex-preferred-size: calc(50% - 1px);
    flex-basis: calc(50% - 1px);
    margin-right: 1px
}

.footprint .cards__item:before {
    display: none
}

.footprint .cards__item-content {
    transform: translateY(94px);
    padding: 28px 38px
}

.footprint .cards__item-content>a {
    bottom: 20px
}

.footprint .cards__item .animated-strip-bot {
    bottom: 46px
}

.footprint .cards__item:hover .animated-strip-top {
    transform: translateY(52px)
}

.footprint__map {
    width: 100%;
    max-width: 1650px;
    margin-top: -148px;
    margin-bottom: -55px;
    position: relative;
    z-index: -1
}

.footprint__map svg {
    fill: #99bcdc;
    width: 100%;
    height: 814px
}

.footprint__map img {
    max-width: 100%
}

.footprint__clusters {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0
}

.footprint__clusters div {
    width: 9px;
    height: 9px;
    position: absolute;
    background: #003a81;
    transform: translateZ(0);
    border-radius: 0;
    will-change: transform, border-radius
}

.footprint__clusters div:before {
    content: "";
    box-sizing: border-box;
    width: 40px;
    height: 40px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-top: -20px;
    margin-left: -20px;
    border-radius: 50%;
    box-shadow: 0 0 6px 1px #ce1b2e;
    transform: scale(0);
    opacity: 1;
    will-change: transform, opacity
}

.footprint__clusters.red div {
    background: #ce1b2e;
    animation: scaled-rect 1s infinite;
    animation-timing-function: ease-in-out
}

.footprint__clusters.red div:before {
    animation: out-circle 1s infinite;
    animation-timing-function: ease-in
}

.footprint__clusters-1 div:first-child {
    left: 81%;
    top: 35%
}

.footprint__clusters-1 div:nth-child(2) {
    left: 79.5%;
    top: 38%
}

.footprint__clusters-1 div:nth-child(3) {
    left: 76.5%;
    top: 43.5%
}

.footprint__clusters-1 div:nth-child(4) {
    left: 78%;
    top: 44.5%
}

.footprint__clusters-1 div:nth-child(5) {
    left: 80%;
    top: 41%
}

.footprint__clusters-1 div:nth-child(6) {
    left: 75%;
    top: 47%
}

.footprint__clusters-1 div:nth-child(7) {
    left: 79.5%;
    top: 48.5%
}

.footprint__clusters-1 div:nth-child(8) {
    left: 78%;
    top: 48%
}

.footprint__clusters-1 div:nth-child(9) {
    left: 80%;
    top: 46%
}

.footprint__clusters-1 div:nth-child(10) {
    left: 78%;
    top: 50.5%
}

.footprint__clusters-1 div:nth-child(11) {
    left: 79%;
    top: 41%
}

.footprint__clusters-2 div:first-child {
    left: 13%;
    top: 34%
}

.footprint__clusters-2 div:nth-child(2) {
    left: 20%;
    top: 40%
}

.footprint__clusters-2 div:nth-child(3) {
    left: 25.5%;
    top: 40%
}

.footprint__clusters-3 div:first-child {
    left: 74%;
    top: 61%
}

.footprint__clusters-3 div:nth-child(2) {
    left: 75%;
    top: 65%
}

.footprint__clusters-3 div:nth-child(3) {
    left: 85.5%;
    top: 41.5%
}

.footprint__clusters-3 div:nth-child(4) {
    left: 84.5%;
    top: 43%
}

.footprint__clusters-3 div:nth-child(5) {
    left: 88.5%;
    top: 83%
}

.footprint__clusters-3 div:nth-child(6) {
    left: 88%;
    top: 88%
}

.footprint__clusters-3 div:nth-child(7) {
    left: 74.9%;
    top: 63.6%
}

.footprint__clusters-4 div:first-child {
    left: 47.5%;
    top: 34%
}

.footprint__clusters-4 div:nth-child(2) {
    left: 49%;
    top: 32%
}

.footprint__clusters-4 div:nth-child(3) {
    left: 49%;
    top: 35%
}

.cms-content {
    width: 100%;
    max-width: 830px;
    padding: 90px 25px;
    margin: 0 auto
}

.cms-content .case-landing-bottom {
    min-width: 100%;
    max-width: 1400px;
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%)
}

.cms-content h2 {
    text-transform: uppercase;
    color: #003a81;
    width: 100%;
    text-align: center;
    margin-bottom: 23px
}

.cms-content .intro {
    width: 100%;
    text-align: center;
    font-size: 27px;
    line-height: 1.25;
    margin-bottom: 37px
}

.cms-content p {
    font-size: 18px;
    line-height: 1.7;
    margin-bottom: 30px
}

.cms-content p b,
.cms-content p strong {
    font-weight: 700
}

.cms-content p em {
    font-style: italic
}

.cms-content a {
    text-decoration: underline;
    color: #003a81
}

.cms-content a:hover {
    text-decoration: none;
    color: #ce1b2e
}

.cms-content a.link-arrow {
    color: #fff;
    text-decoration: none
}

.cms-content a.link-arrow:hover {
    color: #ce1b2e
}

.cms-content h3 {
    font-size: 27px;
    font-weight: 700;
    font-family: Roboto, sans-serif;
    margin-bottom: 5px
}

.cms-content ol li {
    counter-increment: a;
    padding-left: 20px;
    position: relative;
    font-size: 18px;
    line-height: 1.7;
    margin-bottom: 15px
}

.cms-content ol li * {
    font-size: 18px;
    font-family: Roboto, sans-serif
}

.cms-content ol li[value]:before {
    content: attr(value) "."
}

.cms-content ol li:before {
    content: counter(a) ".";
    position: absolute;
    left: 0;
    top: 3px;
    color: #ce1b2e;
    display: inline-block;
    font-size: 15px;
    font-weight: 700
}

.cms-content ul li {
    color: #33373b;
    font-size: 18px;
    font-weight: 300;
    padding-left: 35px;
    position: relative;
    line-height: 1.4;
    margin-bottom: 10px
}

.cms-content ul li:before {
    content: "";
    width: 20px;
    height: 7px;
    position: absolute;
    left: 0;
    top: 8px;
    background: url(../images/list-arr.png) no-repeat
}

.quote-wrap {
    width: 100%;
    margin-bottom: 50px;
    padding: 50px 25px 45px;
    border-top: 3px solid #ce1b2e;
    border-bottom: 3px solid #ce1b2e
}

.quote-wrap blockquote {
    font-size: 23px;
    width: 100%;
    text-align: center;
    font-weight: 300;
    line-height: 1.5
}

.quote-wrap blockquote:before {
    content: "";
    position: relative;
    display: block;
    margin: 0 auto;
    width: 40px;
    height: 35px;
    background: url(../images/quote.png);
    margin-bottom: 30px
}

.quote-wrap blockquote+cite {
    margin-top: 45px
}

.quote-wrap cite {
    font-size: 16px;
    display: inline-block;
    width: 100%;
    text-align: center;
    font-weight: 700;
    text-transform: uppercase
}

.floated-image-inside {
    margin-bottom: 50px
}

.floated-image-inside img {
    float: left;
    margin: 0 50px 30px 0;
    max-width: 50%
}

.floated-image-inside div {
    overflow: hidden
}

.full-width-img-ins {
    margin-bottom: 50px
}

.full-width-img-ins img {
    width: 100%;
    max-width: 100%
}

.table-wrap {
    width: 1000px;
    max-width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    overflow: auto;
    margin-bottom: 50px
}

.general-table {
    width: 100%;
    position: relative;
    border-spacing: 9px 0;
    border-collapse: separate
}

.general-table tr {
    max-width: 100%
}

.general-table tr td,
.general-table tr th {
    margin-right: 9px;
    -ms-flex-positive: 2;
    flex-grow: 2;
    overflow: hidden;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.general-table tr td>span,
.general-table tr th>span {
    overflow: hidden;
    text-overflow: ellipsis
}

.general-table tr td>span>*,
.general-table tr th>span>* {
    display: none
}

.general-table tr td:last-child,
.general-table tr th:last-child {
    margin-right: 0
}

.general-table tr th {
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center
}

.general-table tr th span {
    position: relative;
    left: 0;
    top: 0;
    transform: none
}

.general-table thead th {
    height: 100px;
    vertical-align: middle;
    background: #f7f7f7;
    border-bottom: 3px solid #ce1b2e;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 700
}

.general-table thead:after {
    content: "";
    height: 43px;
    display: block;
    line-height: 1em;
    color: transparent
}

.general-table tbody tr td {
    background: #f7f7f7;
    height: 50px;
    vertical-align: middle;
    padding: 0 15px;
    font-size: 16px;
    color: #33373b;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    position: relative;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 33.3%
}

.general-table tbody tr td a {
    position: absolute;
    color: #003a81;
    right: 15px;
    top: 50%;
    transform: translateY(-50%)
}

.general-table tbody tr:nth-child(2n) td {
    background: transparent;
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5
}

.slider {
    padding: 90px 25px 95px
}

.slider .swiper-button-next,
.slider .swiper-button-prev {
    background: none;
    width: 35px;
    height: 35px;
    border-left: 2px solid #003a81;
    border-top: 2px solid #003a81
}

.slider .swiper-button-next:hover,
.slider .swiper-button-prev:hover {
    border-color: #ce1b2e
}

.slider .swiper-button-prev {
    transform: rotate(-45deg);
    left: 12.5%
}

.slider .swiper-button-next {
    transform: rotate(135deg);
    right: 12.5%
}

.slider h3 {
    color: #003a81;
    text-transform: uppercase;
    width: 100%;
    max-width: 850px;
    margin: 0 auto 70px;
    text-align: center
}

.slider-wrap {
    padding-bottom: 40px
}

.slider-wrap.swiper-container {
    width: 100%;
    height: auto;
    margin: 0
}

.slider-control {
    width: 100%;
    height: 85px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    border-bottom: 3px solid #e1e3e7;
    margin-bottom: 80px
}

.slider-control__item {
    height: calc(100% + 3px);
    width: 25%;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: -3px;
    cursor: pointer
}

.slider-control__item.active {
    border-bottom: 3px solid #ce1b2e;
    cursor: default
}

.slider-control__item.active span,
.slider-control__item:hover span {
    color: #ce1b2e
}

.slider-control__item span {
    width: 100%;
    padding: 0 20px;
    display: -ms-flexbox;
    display: flex;
    text-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: 700;
    font-size: 16px;
    text-transform: uppercase;
    line-height: 1.2;
    height: 68px;
    border-right: 1px solid #e5e5e5
}

.slider-control__item:first-child span {
    border-left: 1px solid #e5e5e5
}

.slider__item {
    width: 100%;
    text-align: center
}

.slider__item h4 {
    font-size: 27px;
    margin-bottom: 15px
}

.slider__item p {
    font-size: 23px;
    font-weight: 300;
    max-width: 650px;
    width: 100%;
    margin: 0 auto 30px
}

.awwards {
    padding: 90px 25px 100px
}

.awwards-wrap {
    border-top: 3px solid #e1e3e7;
    background: #f5f5f5
}

.awwards h3 {
    color: #003a81;
    text-align: center;
    text-transform: uppercase;
    margin-bottom: 25px
}

.awwards>p {
    max-width: 700px;
    text-align: center;
    margin: 0 auto 75px
}

.related-wrap {
    background: #f5f5f5;
    margin-top: -83px;
    padding-top: 80px;
    padding-bottom: 90px;
    border-top: 3px solid #e1e3e7
}

.stats {
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: -140px
}

.stats-section .swiper-container {
    height: auto;
    padding: 0
}

.stats-section .swiper-container .swiper-button-next,
.stats-section .swiper-container .swiper-button-prev {
    top: 30%
}

.stats-section .swiper-container .swiper-button-prev {
    left: 8%
}

.stats-section .swiper-container .swiper-button-next {
    right: 8%
}

.stats-item {
    display: block;
    position: relative;
    width: 235px;
    height: 235px;
    margin: 0 50px;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.stats-item__bg {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    border-radius: 50%;
    background: #222;
    z-index: 0
}

.stats-item__cont {
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    left: 10px;
    top: 10px;
    position: absolute;
    z-index: 2;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: stretch;
    justify-content: stretch;
    border: 4px solid #e1e3e7;
    border-radius: 50%;
    background: #fff url(../images/strips-bg.png) 50% no-repeat;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column
}

.stats-item__cont .num {
    margin-bottom: 18px;
    font-size: 80px;
    font-weight: 800;
    color: #003a81;
    height: 50%;
    line-height: .7;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
    align-items: flex-end;
    letter-spacing: -2px
}

.stats-item__cont .num .symbol {
    font-size: 30px;
    font-weight: 700;
    line-height: 2.8
}

.stats-item__cont .desc {
    font-size: 16px;
    text-align: center;
    padding: 0 35px;
    width: 100%
}

.stats-wrap {
    padding-top: 270px;
    position: relative
}

.stats-wrap:before {
    content: "";
    position: absolute;
    display: block;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 273px;
    background: #f5f5f5 url(../images/grey-map.jpg) 50% no-repeat;
    border-bottom: 3px solid #e1e3e7
}

.stats-wrap.-no-before {
    padding-top: 0
}

.stats-wrap.-no-before:before {
    display: none;
    content: none
}

.stats-descr {
    width: 100%;
    padding: 90px 0
}

.stats-descr h3 {
    color: #003a81;
    font-size: 60px;
    width: 100%;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: -1px;
    margin-bottom: 25px
}

.stats-descr p {
    width: 100%;
    max-width: 700px;
    margin: 0 auto;
    text-align: center;
    font-size: 18px;
    margin-bottom: 25px
}

.stats-descr p.intro {
    font-size: 27px;
    line-height: 1.35;
    margin-bottom: 38px
}

.story {
    padding: 90px 25px 0
}

.story .swiper-container {
    width: auto;
    height: auto
}

.story h3 {
    text-transform: uppercase;
    color: #003a81;
    margin-bottom: 20px
}

.story>p,
.story h3 {
    width: 100%;
    text-align: center
}

.story>p {
    margin: 0 auto 70px;
    max-width: 900px
}

.story-years {
    height: 120px;
    margin-bottom: 0;
    position: relative;
    z-index: 2
}

.story-years__translater {
    display: -ms-flexbox;
    display: flex;
    will-change: transform
}

.story-years:before {
    width: 872px;
    background: #b0b4bd
}

.story-years:after,
.story-years:before {
    content: "";
    position: absolute;
    bottom: -3px;
    left: 50%;
    transform: translateX(-50%);
    height: 3px
}

.story-years:after {
    width: 290px;
    background: #ce1b2e
}

.story-years__item {
    width: 145px;
    height: 120px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    cursor: pointer;
    background: transparent;
    border-radius: 0;
    opacity: 1;
    position: relative
}

.story-years__item span {
    font-size: 16px;
    font-weight: 700;
    color: #bdbcbc;
    transition: all .3s ease
}

.story-years__item:before {
    height: 43px;
    width: 1px;
    bottom: 0;
    transform-origin: bottom;
    margin-left: -.5px
}

.story-years__item:after,
.story-years__item:before {
    content: "";
    position: absolute;
    left: 50%;
    background: #e5e5e5;
    transition: all .6s ease
}

.story-years__item:after {
    height: 5px;
    width: 5px;
    bottom: 40.5px;
    margin-left: -2.5px;
    transform: scale(.2)
}

.story-years__item.swiper-pagination-bullet-active {
    min-width: 145px
}

.story-years__item.swiper-pagination-bullet-active:before {
    transform: scaleY(1.53)
}

.story-years__item.swiper-pagination-bullet-active:after {
    transform: scale(1) translateY(-23px);
    background: #ce1b2e
}

.story-years__item.swiper-pagination-bullet-active span {
    font-size: 27px;
    color: #ce1b2e;
    transform: translateY(-40px)
}

.story-years__item.closest {
    min-width: 145px
}

.story-years__item.closest span {
    color: #000
}

.story-years__item.closest+.middle {
    margin-left: 29px
}

.story-years__item.middle {
    width: 88px
}

.story-years__item.middle+.closest {
    margin-left: 28px
}

.story-years__item.farther {
    width: 58px
}

.story-years__item.farther:before {
    transform: scaleY(.5)
}

.story-slider {
    margin-bottom: 0;
    padding: 0
}

.story-slider .swiper-button-prev {
    left: 15px
}

.story-slider .swiper-button-next {
    right: 15px
}

.story-slider:before {
    content: "";
    position: absolute;
    width: 100vw;
    height: 100%;
    top: 0;
    left: calc(50% - 50vw);
    background: #f5f5f5;
    border-top: 3px solid #e1e3e7
}

.story-slider__item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-align: start;
    align-items: flex-start;
    transition: opacity .3s ease;
    opacity: 0
}

.story-slider__item.swiper-slide {
    padding: 100px 120px 40px
}

.story-slider__item.swiper-slide-active {
    opacity: 1
}

.story-slider__item h4 {
    display: none
}

.story-slider__item-cont {
    -ms-flex: 0 1 50%;
    flex: 0 1 50%
}

.is-without-img .story-slider__item-cont {
    -ms-flex: 1 0 100%;
    flex: 1 0 100%;
    text-align: center
}

.story-slider__item-cont p {
    font-size: 23px;
    font-weight: 300;
    margin-bottom: 30px
}

.story-slider__item-cont ul li {
    width: 100%;
    font-size: 18px;
    font-weight: 300;
    line-height: 1.35;
    margin-bottom: 10px;
    padding-left: 35px;
    background: url(../images/list-arr.png) left 0 top 8px no-repeat
}

.story-slider__item-img {
    -ms-flex: 0 1 40%;
    flex: 0 1 40%;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: center;
    align-items: center;
    display: -ms-flexbox;
    display: flex
}

.story-slider__item-img img {
    max-width: 100%
}

.tabs-leadership {
    position: relative;
    z-index: 1;
    min-height: 690px
}

.tabs-leadership,
.tabs-leadership.tabs-heading-wrap {
    background: #181c23 url(../images/grey-map.jpg) bottom no-repeat
}

.tabs-leadership .tabs {
    max-width: 1190px
}

.tabs-leadership .tabs__item.swiper-slide {
    padding-top: 58px;
    padding-bottom: 100px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center;
    pointer-events: none
}

.tabs-leadership .tabs__item.swiper-slide-active {
    pointer-events: auto
}

.tabs-leadership .tabs__item .general-cards {
    padding-top: 0;
    min-width: 100%;
    margin-bottom: 50px
}

.tabs-leadership .tabs__item .general-cards__wrap {
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap
}

.tabs-leadership .tabs__item .general-cards__item {
    -ms-flex: 0 1 33.33%;
    flex: 0 1 33.33%;
    margin-right: 10px;
    margin-bottom: 10px;
    width: 380px;
    max-width: 380px;
    height: 493px
}

.tabs-leadership .tabs__item .general-cards__item:last-child {
    margin-right: 0
}

.tabs-leadership .tabs__item .general-cards__item .top-animated-strip,
.tabs-leadership .tabs__item .general-cards__item:after,
.tabs-leadership .tabs__item .general-cards__item:before {
    display: none
}

.tabs-leadership .tabs__item .general-cards__item:hover .general-cards__item-cont {
    transform: translateY(100%) translateY(-133px)
}

.tabs-leadership .tabs__item .general-cards__item:hover .general-cards__item-cont h4 {
    transform: translateY(-50%)
}

.tabs-leadership .tabs__item .general-cards__item:hover .general-cards__item-cont h4:after,
.tabs-leadership .tabs__item .general-cards__item:hover .general-cards__item-cont h4:before {
    transform: translateY(0) !important
}

.tabs-leadership .tabs__item .general-cards__item h4 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column
}

.tabs-leadership .tabs__item .general-cards__item h4 span.position {
    font-size: 12px;
    font-family: Roboto, sans-serif;
    font-weight: 400;
    text-transform: uppercase;
    margin-top: 10px
}

.tabs-leadership .tabs__item .link-arrow {
    font-weight: 600
}

.tabs-leadership+.stats-wrap {
    padding-top: 0;
    background: #f5f5f5
}

.tabs-leadership+.stats-wrap:before {
    content: none
}

.tabs-leadership+.stats-wrap+.case-landing-bottom {
    position: relative;
    padding-bottom: 160px
}

.tabs-leadership+.stats-wrap+.case-landing-bottom:before {
    content: "";
    position: absolute;
    width: 100vw;
    height: 100%;
    top: 0;
    left: calc(50% - 50vw);
    background: #f5f5f5;
    z-index: -1
}

.logo {
    display: block
}

.logo__svg {
    fill: #003a81;
    max-width: 100%;
    max-height: 100%
}

.logo__svg-arrow {
    fill: #ce1b2e
}

.link-arrow {
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    height: 35px;
    line-height: 31px;
    display: inline-block;
    border-bottom: 3px solid #fff
}

.link-arrow:after {
    content: "»";
    display: inline;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 20px;
    font-weight: 700;
    margin-left: 9px;
    position: relative;
    top: 1px
}

.link-arrow:hover {
    color: #ce1b2e;
    border-color: #ce1b2e
}

.link-arrow.no-border {
    border: none
}

.link-arrow.-blue {
    color: #003a81;
    border-color: #003a81
}

.link-arrow.-blue:hover {
    color: #ce1b2e;
    border-color: #ce1b2e
}

.link-arrow.-bigger {
    font-size: 16px
}

.link-arrow.-grey-border {
    border-color: #e1e3e7
}

.link-arrow.-grey-border:hover {
    color: #ce1b2e;
    border-color: #ce1b2e
}

.link-share {
    height: 35px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    position: relative
}

.link-share svg {
    fill: #003a81;
    width: 12px;
    height: 16px
}

.link-share:hover svg {
    fill: #ce1b2e
}

.load-more--wrp {
    margin-bottom: 10px
}

.load-more--wrp a {
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
    height: 36px;
    line-height: 36px;
    display: inline-block;
    border-bottom: 3px solid #fff
}

.load-more--wrp a:hover {
    color: #ce1b2e;
    border-color: #ce1b2e
}

.load-more--wrp-white a {
    color: #fff;
    border-bottom: 3px solid #fff
}

.load-more--wrp-white a:hover {
    color: #ce1b2e;
    border-color: #ce1b2e
}

.load-more--wrp-blue a {
    color: #003a81;
    border-bottom: 3px solid #003a81
}

.load-more--wrp-blue a:hover {
    color: #ce1b2e;
    border-color: #ce1b2e
}

.banner {
    position: relative;
    width: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    height: 660px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    color: #fff;
    overflow: hidden
}

.banner__video {
    pointer-events: none;
    min-width: 100%;
    min-height: 100%;
    height: auto;
    width: auto;
    position: absolute;
    left: 50%;
    top: 0;
    transform: translateX(-50%);
    opacity: 0;
    transition: opacity .3s ease
}

.banner__video.buffered {
    opacity: 1
}

.banner__content {
    position: relative;
    width: 1510px;
    padding: 0 55px;
    max-width: 100%
}

.banner__content h1 {
    text-transform: uppercase;
    line-height: 63px;
    margin-bottom: 30px
}

.banner__content p {
    font-size: 27px;
    line-height: 35px;
    margin-bottom: 47px;
    max-width: 60%
}

.banner__content a {
    font-size: 16px
}

.banner__content a:after {
    font-size: 25px;
    font-weight: 500;
    margin-left: 5px
}

.banner__content a:hover:after {
    font-weight: 600
}

.banner-with-image {
    height: 615px
}

.banner-with-image img {
    position: relative;
    display: block;
    min-width: 100%;
    height: auto;
    min-height: 100%;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.banner-with-image img+img+.banner__content p {
    max-width: 60%
}

.banner-with-image img+img+.banner__content h1 {
    max-width: 70%
}

.banner-with-image .banner__content {
    position: absolute;
    height: 100%;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    padding: 25px 55px 50px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: start;
    align-items: flex-start
}

.banner-with-image h1 {
    font-size: 60px;
    position: relative;
    left: -3px;
    line-height: .92;
    margin-bottom: 0;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.banner__breadcrumbs {
    font-size: 13px;
    color: #fff;
    text-transform: uppercase;
    -ms-flex-positive: 2;
    flex-grow: 2
}

.banner__breadcrumbs span {
    color: #bdbcbc
}

.banner__breadcrumbs a,
.banner__breadcrumbs a span,
.banner__breadcrumbs span a {
    font-size: 13px;
    color: #fff
}

.banner__breadcrumbs a:hover,
.banner__breadcrumbs a span:hover,
.banner__breadcrumbs span a:hover {
    color: #ce1b2e
}

.banner__breadcrumbs>span {
    margin-right: 11px
}

.banner__breadcrumbs>span+span {
    margin-left: 11px
}

.banner__category {
    font-size: 12px;
    text-transform: uppercase;
    margin-bottom: 11px
}

.block-heading {
    width: 1400px;
    margin: 0 auto
}

.block-heading,
.block-heading p {
    padding: 0 25px;
    max-width: 100%;
    text-align: center
}

.block-heading p {
    font-size: 27px;
    width: 900px;
    margin: 0 auto 50px;
    line-height: 36px
}

.block-heading .mobile-heading {
    display: none;
    width: 100%;
    padding: 0 25px;
    font-size: 25px;
    font-family: Work Sans, sans-serif;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: -.8px;
    color: #003a81;
    margin-bottom: 10px
}

.video-bg-heading {
    position: relative;
    overflow: hidden;
    z-index: 0;
    height: 100px;
    background: #003a81
}

.video-bg-heading .svg-text-mask {
    width: 100%;
    max-width: 100%;
    position: relative;
    z-index: 1;
    height: 110%;
    top: -5%;
    transform: translateZ(0)
}

.video-bg-heading .svg-text-mask .h2-svg-mask {
    font-size: 60px;
    font-family: Work Sans, sans-serif;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: -1.6px;
    text-anchor: middle
}

.video-bg-heading .svg-text-mask .h2-svg-mask.mobile {
    display: none
}

.video-bg-heading .svg-text-mask .video-mask {
    fill: #fff
}

.video-bg-heading .svg-text-mask .video-mask-base {
    fill: #fff;
    -webkit-mask: url(#mask);
    mask: url(#mask)
}

.video-bg-heading .block-heading__video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    width: 90%
}

.cards {
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    height: 490px
}

.cards__item {
    width: 20%;
    position: relative;
    height: 100%;
    overflow: hidden;
    border-bottom: 3px solid #ce1b2e;
    margin-right: 1px
}

.cards__item:last-child {
    margin-right: 0
}

.cards__item:before {
    content: "";
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    opacity: 0;
    background: rgba(0, 0, 0, .85);
    transition: opacity .3s ease
}

.cards__item img {
    position: absolute;
    left: 50%;
    display: block;
    min-height: 100%;
    min-width: 100%;
    height: auto;
    width: auto;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 0
}

.cards__item .animated-strip-bot,
.cards__item .animated-strip-top {
    position: absolute;
    z-index: 4;
    left: 27px;
    width: 5px;
    height: 5px;
    background: #ce1b2e;
    transition: transform .3s ease
}

.cards__item .animated-strip-bot:after,
.cards__item .animated-strip-top:after {
    content: "";
    position: absolute;
    left: 2px;
    width: 1px;
    background: hsla(0, 0%, 100%, .3);
    transition: transform .3s ease
}

.cards__item .animated-strip-top {
    top: -5px;
    transition-delay: 0ms
}

.cards__item .animated-strip-top:after {
    transition-delay: 0ms;
    bottom: 5px;
    height: 70px;
    transform: scaleY(0)
}

.cards__item .animated-strip-bot {
    transition-delay: .3s;
    bottom: 84px
}

.cards__item .animated-strip-bot:after {
    transition-delay: .3s;
    top: 5px;
    height: 150px
}

.cards__item:hover:before {
    opacity: 1
}

.cards__item:hover .animated-strip-bot {
    transition-delay: 0ms;
    transform: translateY(89px)
}

.cards__item:hover .animated-strip-bot:after {
    transition-delay: 0ms;
    transform: scaleY(0)
}

.cards__item:hover .animated-strip-top {
    transition-delay: .3s;
    transform: translateY(69px)
}

.cards__item:hover .animated-strip-top:after {
    transition-delay: .3s;
    transform: scaleY(1)
}

.cards__item:hover .cards__item-content {
    transform: translateY(0)
}

.cards__item:hover .cards__item-content h3~* {
    transform: translateY(0);
    opacity: 1
}

.cards__item-content {
    position: absolute;
    z-index: 3;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 45px 40px;
    transform: translateY(349px);
    transition: transform .6s ease
}

.cards__item-content>a {
    position: absolute;
    left: 40px;
    bottom: 30px
}

.cards__item-content h3 {
    color: #fff;
    font-family: Roboto, sans-serif;
    font-weight: 700;
    font-size: 27px;
    margin-bottom: 25px;
    white-space: nowrap
}

.cards__item-content h3~* {
    transform: translateY(30px);
    opacity: 0;
    transition: transform .6s ease, opacity .6s ease
}

.cards__item-content ul li {
    display: block;
    height: auto;
    -ms-flex-align: center;
    align-items: center;
    padding-left: 32px;
    position: relative;
    margin-bottom: 11px
}

.cards__item-content ul li svg {
    position: absolute;
    width: 21px;
    height: 7px;
    fill: #ce1b2e;
    left: 0;
    top: 6px
}

.cards__item-content ul a {
    font-size: 13px;
    color: #fff;
    text-transform: uppercase;
    font-weight: 700;
    text-decoration: underline
}

.cards__item-content ul a:hover {
    color: #ce1b2e
}

.cards__item-content ul a[data-content=eCommerce]:first-letter {
    text-transform: lowercase
}

.select {
    cursor: pointer;
    display: inline-block;
    font-size: 16px;
    height: 48px
}

.select-group {
    width: 100%;
    max-width: 1450px;
    padding: 0 25px;
    display: -ms-flexbox;
    display: flex;
    margin-top: 50px
}

.select-hidden {
    display: none;
    visibility: hidden
}

.select-wrap {
    height: 48px;
    display: -ms-flexbox;
    display: flex;
    margin-right: 50px;
    position: relative
}

.select-wrap:last-child {
    margin-right: 0
}

.select-wrap label {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    font-family: Roboto, sans-serif;
    text-transform: uppercase;
    color: #fff;
    font-size: 13px;
    padding: 0 19px;
    border: 1px solid #8f8f8f;
    background: #373e45;
    font-weight: 500;
    margin-right: -1px;
    white-space: nowrap;
    -ms-flex-negative: 0;
    flex-shrink: 0
}

.white-select .select-wrap label {
    background: #fff;
    color: #000
}

.select-styled {
    padding: 0 28px;
    width: 260px;
    height: 100%;
    border: 1px solid #8f8f8f;
    background: #373e45;
    font-family: Roboto, sans-serif;
    text-transform: uppercase;
    color: #fff;
    font-size: 13px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 500
}

.white-select .select-styled {
    background: #fff;
    color: #000
}

.select-styled:after {
    content: "";
    width: 8px;
    height: 8px;
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    margin-top: -4px;
    right: 20px;
    border-right: 4px solid #fff;
    border-bottom: 4px solid #fff;
    border-left: 4px solid transparent;
    border-top: 4px solid transparent;
    transform: rotate(45deg)
}

.white-select .select-styled:after {
    border-right: 4px solid #ce1b2e;
    border-bottom: 4px solid #ce1b2e
}

.select-styled.active:after,
.select-styled:active:after {
    transform: rotate(-135deg)
}

.select-options {
    display: none;
    position: absolute;
    top: 100%;
    width: 100%;
    right: 0;
    left: 0;
    z-index: 20;
    margin: 0;
    padding: 13px 7px;
    background: #fff;
    border: 1px solid #8f8f8f;
    cursor: default
}

.select-options li {
    width: 100%;
    margin: 0;
    padding: 0 13px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    color: #373e45;
    font-size: 13px;
    text-transform: uppercase;
    height: 31px;
    font-weight: 500;
    cursor: pointer
}

.select-options li:hover {
    background: #ce1b2e;
    color: #fff
}

.select-options li[rel=hide] {
    display: none
}

.select-options li.active {
    color: #ce1b2e;
    pointer-events: none
}

.categories-filter {
    width: 100%;
    background: #fff;
    padding: 0 calc(50% - 700px);
    display: -ms-flexbox;
    display: flex
}

.categories-filter li {
    height: 103px;
    -ms-flex-positive: 1;
    flex-grow: 1;
    border-right: 1px solid #e5e5e5
}

.categories-filter li:first-child {
    border-left: 1px solid #e5e5e5
}

.categories-filter li a {
    width: 100%;
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase
}

.categories-filter li a:hover {
    color: #ce1b2e
}

.categories-filter li.selected {
    border-bottom: 3px solid #ce1b2e
}

.categories-filter li.selected a {
    color: #ce1b2e
}

.mobile-select-wrap {
    display: none;
    width: 100%
}

.mobile-select-wrap .select {
    width: 100%;
    position: relative
}

.mobile-select-wrap .select-styled {
    width: 100%;
    position: relative;
    border: none;
    border-bottom: 3px solid #ce1b2e;
    margin: 0;
    height: 74px;
    background: #fff;
    color: #ce1b2e
}

.mobile-select-wrap .select-styled:after {
    border-right: 4px solid #ce1b2e;
    border-bottom: 4px solid #ce1b2e
}

.mobile-select-wrap .select-options {
    border: none
}

.general-cards {
    padding: 90px 25px
}

.general-cards.cards-grid__wrap {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0
}

.general-cards.cards-grid__wrap h3 {
    font-size: 60px;
    margin-bottom: 40px
}

.general-cards h3 {
    text-transform: uppercase;
    color: #003a81;
    width: 100%;
    text-align: center;
    margin-bottom: 21px
}

.general-cards>p {
    text-align: center;
    width: 100%;
    max-width: 1150px;
    margin: 0 auto 40px
}

.general-cards__wrap {
    display: -ms-flexbox;
    display: flex
}

.general-cards__wrap+.general-cards__wrap {
    margin-top: -44px
}

.general-cards__wrap.cards-grid {
    width: 100%;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.general-cards__wrap.cards-grid li {
    -ms-flex: 0 1 19%;
    flex: 0 1 19%;
    -ms-flex-positive: 1;
    flex-grow: 1;
    height: 490px;
    margin-bottom: 1px;
    margin-top: 0
}

.general-cards__wrap.cards-grid li:nth-child(5n) {
    margin-right: 0
}

.general-cards__wrap.cards-grid li .general-cards__item-image img {
    height: auto
}

.general-cards__wrap.cards-grid .general-cards__item:after,
.general-cards__wrap.cards-grid .general-cards__item:hover .general-cards__item-image,
.general-cards__wrap.cards-grid .general-cards__item:hover .general-cards__item-image img {
    transform: none
}

.general-cards__wrap.cards-grid .general-cards__item:hover .general-cards__item-cont h4:after,
.general-cards__wrap.cards-grid .general-cards__item:hover .general-cards__item-cont h4:before {
    transform: translateY(423px)
}

.general-cards__wrap.cards-grid .general-cards__item:hover .general-cards__item-cont h4 .top-animated-strip {
    height: calc(100% + 59px);
    top: -61px
}

.general-cards__wrap.cards-grid .general-cards__item-image,
.general-cards__wrap.cards-grid .general-cards__item-image img {
    transform: none
}

.general-cards__wrap.cards-grid .general-cards__item-cont {
    padding: 61px 40px 40px;
    transform: translateY(100%) translateY(-133px)
}

.general-cards__wrap.cards-grid .general-cards__item-cont h4:before {
    height: calc(200% + 50px)
}

.general-cards__wrap.cards-grid .general-cards__item-cont h4 .top-animated-strip {
    height: 0;
    top: calc(100% - 490px + 75px)
}

.general-cards__item {
    height: 230px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex: 1 1 33.33%;
    flex: 1 1 33.33%;
    position: relative;
    margin-right: 1px;
    color: #fff;
    overflow: hidden;
    border-bottom: 3px solid #ce1b2e
}

.general-cards__item:last-child {
    margin-right: 0
}

.general-cards__item>a {
    display: block;
    width: 100%;
    height: 100%;
    color: #fff
}

.general-cards__item-image {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    overflow: hidden;
    transform: scaleY(.8) translateZ(0);
    transform-origin: bottom;
    transition: transform .5s ease;
    z-index: 0
}

.general-cards__item-image img {
    transform: scaleY(1.2) translateZ(0);
    transform-origin: bottom;
    transition: transform .5s ease;
    min-width: 100%;
    min-height: 100%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    height: auto
}

.general-cards__item:hover {
    z-index: 20
}

.general-cards__item:hover .general-cards__item-image,
.general-cards__item:hover .general-cards__item-image img {
    transform: scaleY(1) translateZ(0)
}

.general-cards__item:hover:before {
    transition: transform .5s ease .1s;
    opacity: .8
}

.general-cards__item:hover:after {
    opacity: 1;
    transform: scaleY(1) translateZ(0)
}

.general-cards__item:hover .general-cards__item-cont,
.general-cards__item:hover .general-cards__item-cont h4 {
    transform: translateY(0)
}

.general-cards__item:hover .general-cards__item-cont h4~* {
    transform: translateY(10px);
    opacity: 1
}

.general-cards__item:hover .general-cards__item-cont h4:after,
.general-cards__item:hover .general-cards__item-cont h4:before {
    transform: translateY(205px);
    transition: transform .5s ease 0ms
}

.general-cards__item:hover .general-cards__item-cont h4 .top-animated-strip {
    height: calc(100% + 23px);
    top: -27px;
    transform: translateZ(0);
    transition: height .5s ease .5s, top .5s ease .5s
}

.general-cards__item:before {
    height: 200%;
    transform: translateY(0) scale(1);
    opacity: .6;
    background: linear-gradient(0deg, rgba(0, 0, 0, .9), rgba(0, 0, 0, .9) 50%, transparent 70%, transparent)
}

.general-cards__item:after,
.general-cards__item:before {
    content: "";
    position: absolute;
    display: block;
    z-index: 1;
    width: 100%;
    top: 0;
    left: 0;
    transition: transform .5s ease, opacity .5s ease
}

.general-cards__item:after {
    height: 100%;
    transform: scaleY(.8) translateZ(0);
    transform-origin: bottom;
    opacity: 0;
    background: rgba(0, 0, 0, .7)
}

.general-cards__item-cont {
    position: relative;
    z-index: 2;
    height: 100%;
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding: 27px 15px 18px 38px;
    transform: translateY(100%) translateY(-53px);
    transition: transform .5s ease;
    text-shadow: 0 0 5px #000
}

.general-cards__item-cont h4 {
    position: relative;
    font-family: Roboto, sans-serif;
    font-size: 27px;
    margin-bottom: 10px;
    font-weight: 500;
    transform: translateY(-100%);
    transition: transform .5s ease
}

.general-cards__item-cont h4~* {
    transform: translateY(20px);
    opacity: 0;
    transition: transform .5s ease .2s, opacity .5s ease .2s
}

.general-cards__item-cont h4:after,
.general-cards__item-cont h4:before {
    content: "";
    position: absolute;
    transition: transform .5s ease .5s
}

.general-cards__item-cont h4:before {
    width: 1px;
    height: 200%;
    background: hsla(0, 0%, 100%, .3);
    left: -12px;
    top: 3px
}

.general-cards__item-cont h4:after {
    width: 5px;
    height: 5px;
    background: #ce1b2e;
    left: -14px;
    top: 3px
}

.general-cards__item-cont h4 .top-animated-strip {
    position: absolute;
    display: block;
    height: 0;
    overflow: hidden;
    left: -14px;
    width: 5px;
    transform: translateZ(0);
    transition: height .5s ease 0ms, top .5s ease 0ms;
    transform-origin: top;
    top: calc(100% - 230px*.8 + 26px)
}

.general-cards__item-cont h4 .top-animated-strip:after {
    content: "";
    display: block;
    position: absolute;
    width: 5px;
    height: 5px;
    left: 0;
    bottom: 0;
    background: #ce1b2e
}

.general-cards__item-cont h4 .top-animated-strip:before {
    content: "";
    display: block;
    position: absolute;
    width: 1px;
    height: 100%;
    background: hsla(0, 0%, 100%, .3);
    left: 2px;
    top: 0
}

.general-cards__item-cont p {
    color: #bdbcbc;
    font-size: 17px;
    line-height: 1.3;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.intro-heading {
    padding: 90px 25px
}

.intro-heading h3 {
    color: #003a81;
    text-transform: uppercase;
    margin: 0 auto 20px
}

.intro-heading h3,
.intro-heading p {
    text-align: center;
    width: 100%;
    max-width: 900px
}

.intro-heading p {
    font-size: 27px;
    margin: 0 auto
}

.tabs {
    max-width: 1130px;
    position: relative
}

.tabs-wrap {
    border-top: 3px solid #e1e3e7
}

.tabs-wrap.grey-bg {
    background: #f5f5f5
}

.tabs-wrap.tabs-leadership {
    border: none
}

.tabs-wrap.tabs-leadership .tabs-control {
    border-bottom: 3px solid #13191b
}

.tabs-wrap.tabs-leadership .leadership-page__control {
    border-bottom: 3px solid #e1e3e7
}

.tabs-heading-wrap {
    background: #181c23;
    color: #fff;
    padding: 90px 25px 140px
}

.tabs-heading-wrap h3 {
    text-transform: uppercase;
    margin: 0 auto 20px
}

.tabs-heading-wrap h3,
.tabs-heading-wrap p {
    width: 100%;
    max-width: 900px;
    text-align: center
}

.tabs-heading-wrap p {
    margin: 0 auto 25px
}

.tabs__container {
    margin: 0
}

.tabs__container.swiper-container {
    height: auto;
    width: 100%
}

.tabs__container .swiper-button-next,
.tabs__container .swiper-button-prev {
    height: 83px;
    top: 0;
    margin-top: 0;
    width: 55px;
    background: #050607;
    display: none
}

.tabs__container .swiper-button-next:after,
.tabs__container .swiper-button-prev:after {
    content: "";
    display: block;
    position: absolute;
    height: 100%;
    width: 1px;
    background: #3e4247;
    right: 1px
}

.tabs__container .swiper-button-next:before,
.tabs__container .swiper-button-prev:before {
    content: "";
    display: block;
    position: absolute;
    width: 16px;
    height: 16px;
    top: 50%;
    left: 50%;
    margin-top: -8px;
    margin-left: -8px;
    border-left: 2px solid;
    border-top: 2px solid;
    border-color: hsla(0, 0%, 100%, .8);
    border-radius: 1px;
    transform: rotate(-45deg)
}

.tabs__container .swiper-button-next.swiper-button-disabled,
.tabs__container .swiper-button-prev.swiper-button-disabled {
    opacity: 1
}

.tabs__container .swiper-button-next.swiper-button-disabled:before,
.tabs__container .swiper-button-prev.swiper-button-disabled:before {
    opacity: .3
}

.tabs__container .swiper-button-prev {
    left: -15px
}

.tabs__container .swiper-button-next {
    right: -15px
}

.tabs__container .swiper-button-next:after {
    right: auto;
    left: 1px
}

.tabs__container .swiper-button-next:before {
    transform: rotate(135deg)
}

.tabs-control {
    height: 82px;
    width: calc(100% - 25px*2);
    top: -85px;
    left: 25px;
    position: absolute;
    -ms-flex-pack: center
}

.tabs-control,
.tabs-control__item {
    display: -ms-flexbox;
    display: flex;
    justify-content: center
}

.tabs-control__item {
    -ms-flex: 0 1 33.33%;
    flex: 0 1 33.33%;
    -ms-flex-pack: center;
    border-right: 1px solid #3f4248
}

.tabs-control__item:first-child {
    border-left: 1px solid #3f4248
}

.tabs-control__item h3 {
    display: -ms-flexbox;
    display: flex;
    text-align: center;
    width: calc(100% - 4px);
    padding: 0 20px;
    min-height: 100%;
    color: #bdbcbc;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    background: #050607;
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: -.2px;
    text-transform: uppercase
}

.tabs-control__item:hover h3,
.tabs-control__item:hover span {
    color: #ce1b2e
}

.tabs-control__item.active h3,
.tabs-control__item.active span {
    color: #fff;
    background: #ce1b2e;
    cursor: default
}

.tabs-control__item.active:hover h3,
.tabs-control__item.active:hover span {
    color: #fff
}

.tabs__item {
    padding: 90px 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    min-width: 100%;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.tabs__item.swiper-slide {
    padding: 90px 0;
    opacity: 0;
    transform: scale(1);
    height: 0;
    transition: transform .5s ease, opacity .5s ease, height .5s ease
}

.tabs__item.swiper-slide img {
    opacity: 0
}

.tabs__item.swiper-slide-active {
    opacity: 1;
    height: auto;
    transform: scale(1)
}

.tabs__item.swiper-slide-active img {
    opacity: 1
}

.tabs__item img {
    width: auto;
    height: auto;
    max-width: 100%;
    display: block;
    -ms-flex: 1 0 100%;
    flex: 1 0 100%
}

.tabs__item-desc {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding-right: 25px
}

.tabs__item-desc>p {
    margin-bottom: 25px
}

.tabs__item-desc b,
.tabs__item-desc strong {
    font-weight: 600
}

.tabs__item-desc a {
    color: #003a81
}

.tabs__item-desc a:hover {
    color: #ce1b2e
}

.tabs__item-desc li {
    color: #33373b;
    font-size: 18px;
    font-weight: 300;
    padding-left: 35px;
    position: relative;
    line-height: 1.4;
    margin-bottom: 10px
}

.tabs__item-desc li:before {
    content: "";
    width: 20px;
    height: 7px;
    position: absolute;
    left: 0;
    top: 8px;
    background: url(../images/list-arr.png);
    visibility: visible
}

.share:hover .share-sharings a.share-link:first-child {
    transition-delay: 0ms
}

.share:hover .share-sharings a.share-link:nth-child(2) {
    transition-delay: 50ms
}

.share:hover .share-sharings a.share-link:nth-child(3) {
    transition-delay: .1s
}

.two-sides {
    padding: 70px 25px;
    position: relative;
    display: -ms-flexbox;
    display: flex
}

.two-sides>* {
    -ms-flex: 0 1 50%;
    flex: 0 1 50%
}

.two-sides>a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.two-sides>a img {
    display: block;
    max-width: 90%;
    max-height: 100%
}

.two-sides>div {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center
}

.two-sides img {
    max-width: 90%
}

.two-sides>p {
    font-weight: 300;
    font-size: 23px;
    padding-left: 30px;
    border-left: 3px solid #e1e3e7;
    max-width: 550px
}

.two-sides>p b,
.two-sides>p strong {
    font-weight: 700
}

.two-sides>p a {
    color: #003a81;
    font-weight: 400
}

.two-sides>p a:hover {
    color: #ce1b2e
}

.two-sides:before {
    content: "";
    position: absolute;
    width: 100vw;
    height: 100%;
    background: #f5f5f5;
    left: calc(50% - 50vw);
    top: 0;
    z-index: -1
}

.relations h3 {
    max-width: 800px;
    margin: 0 auto 30px
}

.relations .general-cards__item {
    height: 260px
}

.relations .general-cards__item h4 .top-animated-strip {
    top: calc(100% - 230px*.8 + 5px)
}

.relations .general-cards__item:hover .general-cards__item-cont h4:after,
.relations .general-cards__item:hover .general-cards__item-cont h4:before {
    transform: translateY(230px)
}

.leader {
    cursor: pointer
}

.leader .popup-content {
    display: none
}

.leader.clicked h4 {
    transform: translateY(110%) !important
}

.leader .general-cards__item-image {
    -ms-flex-align: start;
    align-items: flex-start;
    width: 380px;
    max-width: 100%
}

.leader .general-cards__item-image img {
    height: 490px;
    width: 380px
}

.leader-popup {
    position: fixed;
    left: 0;
    top: 0;
    width: 1400px;
    max-width: calc(100% - 2*15px);
    height: 550px;
    padding: 30px 60px;
    transition: all .5s ease;
    overflow: hidden;
    z-index: 45
}

.leader-popup-img {
    position: absolute;
    left: 60px;
    top: 30px;
    z-index: 99;
    transform-origin: left bottom;
    transform: translateY(0) scale(1);
    transition: all .5s ease
}

.leader-popup-img.scaled {
    transform: translateY(-20px) scale(.6734)
}

.leader-popup__heading {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    font-size: 27px;
    font-weight: 800;
    margin-top: 30px;
    line-height: 1;
    position: absolute;
    left: 60px;
    top: 30px;
    z-index: 55;
    transform: translateX(20px);
    opacity: 0;
    transition: all .3s ease;
    transform-origin: left;
    max-width: 360px
}

.leader-popup__heading span.top-animated-strip {
    display: block;
    width: 100%;
    height: 6px
}

.leader-popup__heading span.position {
    font-family: Work Sans, sans-serif;
    font-weight: 500;
    text-transform: uppercase;
    font-size: 12px;
    text-shadow: 0 0 0 rgba(34, 34, 34, .9);
    letter-spacing: -.2px;
    transform: translateX(10px);
    opacity: 0;
    transition-delay: .2s;
    transition: all .3s ease;
    line-height: 1.45
}

.leader-popup__heading.show,
.leader-popup__heading.show span.position {
    transform: translateX(0);
    opacity: 1
}

.leader-popup__cont {
    width: calc(100% - 370px);
    margin-left: 370px;
    height: calc(100% - 50px);
    margin-top: 30px;
    padding: 0 90px 0 50px;
    position: relative;
    z-index: 55;
    overflow-y: auto;
    border-left: 3px solid #e1e3e7;
    opacity: 0;
    transform: translateX(100px);
    transition: all .5s ease;
    transition-delay: .2s
}

.leader-popup__cont p {
    font-size: 18px;
    color: #33373b;
    line-height: 1.64;
    margin-bottom: 10px
}

.leader-popup__cont.show {
    opacity: 1;
    transform: translateX(0);
    display: block
}

.leader-popup-closer {
    position: absolute;
    width: 30px;
    height: 30px;
    z-index: 60;
    background: #ce1b2e;
    top: 0;
    right: -30px;
    cursor: pointer;
    transition: all .3s ease
}

.leader-popup-closer.show {
    transition-delay: .5s;
    transform: translateX(-30px)
}

.leader-popup-closer:after,
.leader-popup-closer:before {
    position: absolute;
    content: "";
    width: 18px;
    height: 3px;
    background: #fff;
    top: 50%;
    left: 6px;
    margin-top: -1.5px
}

.leader-popup-closer:before {
    transform: rotate(45deg)
}

.leader-popup-closer:after {
    transform: rotate(135deg)
}

.leader-popup .bg-white {
    position: absolute;
    z-index: 50;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    transition: all .5s ease;
    transform-origin: left top;
    transform: translate3d(60px, 30px, 0) scale(.2714, .8909);
    will-change: transform
}

.leader-popup .bg-white.show {
    transform: translateZ(0) scale(1)
}

.blur-all {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: 35;
    transition: all .7s ease;
    -webkit-filter: blur(0);
    filter: blur(0)
}

.blur-all.blur-fire {
    -webkit-filter: blur(6px);
    filter: blur(6px)
}

.page {
    -webkit-filter: blur(0);
    filter: blur(0);
    transition: -webkit-filter .8s ease;
    transition: filter .8s ease;
    transition: filter .8s ease, -webkit-filter .8s ease
}

.body-blured {
    background: #181c23
}

.body-blured .page {
    background: #fff;
    -webkit-filter: blur(10px);
    filter: blur(10px)
}

.body-unblured {
    background: #181c23
}

.body-unblured .page {
    background: #fff
}

.contact-us form {
    width: 100%;
    padding: 25px 0;
    max-width: 522px;
    margin: 0 auto
}

.contact-us form .form-item {
    width: 100%;
    display: block;
    position: relative;
    height: 53px;
    margin-bottom: 20px
}

.contact-us form .form-item>* {
    position: relative;
    z-index: 0
}

.contact-us form .form-item.focused input.wpcf7-not-valid+span.label,
.contact-us form .form-item.hovered input.wpcf7-not-valid+span.label,
.contact-us form .form-item.not-empty input.wpcf7-not-valid+span.label {
    transform: translateY(-15px) scale(.5);
    opacity: 0
}

.contact-us form .form-item.focused .wpcf7-form-control-wrap>span:not(.label),
.contact-us form .form-item.focused span.label,
.contact-us form .form-item.hovered .wpcf7-form-control-wrap>span:not(.label),
.contact-us form .form-item.hovered span.label,
.contact-us form .form-item.not-empty .wpcf7-form-control-wrap>span:not(.label),
.contact-us form .form-item.not-empty span.label {
    transform: translateY(-11px) scale(.85)
}

.contact-us form .form-item span {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0
}

.contact-us form .form-item span.label {
    display: block;
    position: absolute;
    color: #8f8f8f;
    pointer-events: none;
    width: auto;
    height: auto;
    z-index: 1;
    left: 20px;
    top: 15px;
    font-size: 15px;
    transition: transform .2s ease, opacity .2s ease;
    transform: translateY(0) scale(1);
    opacity: 1;
    transform-origin: left top
}

.contact-us form .form-item span.label span {
    position: relative;
    display: inline
}

.contact-us form .form-item .wpcf7-form-control-wrap>span:not(.label) {
    display: block;
    position: absolute;
    color: #ce1b2e;
    pointer-events: none;
    width: auto;
    height: auto;
    z-index: 1;
    left: 20px;
    top: 15px;
    font-size: 15px;
    transition: transform .2s ease;
    transform: translateY(10px) scale(1);
    transform-origin: left top
}

.contact-us form .form-item input {
    position: relative;
    width: 100%;
    height: 100%;
    outline: none;
    border: 1px solid #8f8f8f;
    padding: 20px 19px 0;
    font-size: 15px;
    text-transform: uppercase;
    font-weight: 700
}

.contact-us form .form-item input.wpcf7-not-valid {
    border-color: #ce1b2e
}

.contact-us form .form-item input.wpcf7-not-valid+.label {
    transform: translateY(-11px) scale(.85)
}

.contact-us form .form-item .required-det {
    right: -35px;
    top: 17px;
    width: 17px;
    height: 17px;
    position: absolute;
    opacity: 0;
    transition: opacity .2s ease
}

.contact-us form .form-item .required-det:after,
.contact-us form .form-item .required-det:before {
    content: "";
    width: 20px;
    height: 6px;
    background: #018124;
    position: absolute;
    left: 0;
    top: 0;
    transition: transform .2s ease, background .2s ease
}

.contact-us form .form-item .required-det:before {
    transform: translate(-2px, 9px) rotate(45deg) scaleX(.7)
}

.contact-us form .form-item .required-det:after {
    transform: translate(6px, 7px) rotate(-45deg)
}

.contact-us form .form-item.not-empty .wpcf7-form-control {
    border-color: #018124
}

.contact-us form .form-item.not-empty .wpcf7-form-control~.required-det {
    opacity: 1
}

.contact-us form .form-item .not-empty .wpcf7-form-control {
    border-color: #018124
}

.contact-us form .form-item .not-empty .wpcf7-form-control~.required-det,
.contact-us form .form-item .wpcf7-form-control.wpcf7-not-valid~.required-det {
    opacity: 1
}

.contact-us form .form-item .wpcf7-form-control.wpcf7-not-valid~.required-det:after,
.contact-us form .form-item .wpcf7-form-control.wpcf7-not-valid~.required-det:before {
    background: #ce1b2e
}

.contact-us form .form-item .wpcf7-form-control.wpcf7-not-valid~.required-det:before {
    transform: translateY(5px) rotate(45deg) scaleX(1)
}

.contact-us form .form-item .wpcf7-form-control.wpcf7-not-valid~.required-det:after {
    transform: translateY(5px) rotate(-45deg) scaleX(1)
}

.contact-us form .form-item__select {
    position: relative;
    z-index: 2
}

.contact-us form .form-item__select span.label {
    top: 20px
}

.contact-us form .form-item .select {
    width: 100%;
    height: 100%
}

.contact-us form .form-item .select-styled {
    width: 100%;
    height: 100%;
    background: #fff;
    font-size: 15px;
    text-transform: uppercase;
    font-weight: 700;
    color: #222;
    padding: 20px 20px 0
}

.contact-us form .form-item .select-styled:after {
    border-right: 4px solid #ce1b2e;
    border-bottom: 4px solid #ce1b2e
}

.contact-us form .form-item .select-options {
    max-height: 350px;
    overflow-y: auto
}

.contact-us form .form-item__textarea {
    height: 192px;
    margin-bottom: 40px
}

.contact-us form .form-item__textarea textarea {
    width: 100%;
    height: 100%;
    overflow-y: auto;
    resize: none;
    outline: none;
    padding: 25px 20px;
    font-size: 15px
}

.contact-us form .form-item__recaptcha {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.contact-us form .form-item__recaptcha+p {
    height: auto;
    padding-top: 15px
}

.contact-us form .form-item__recaptcha+p+* {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -ms-flex-pack: center;
    justify-content: center
}

.contact-us form .form-item__recaptcha .wpcf7-form-control.wpcf7-captchac {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    height: 53px;
    width: 160px;
    margin-right: 20px
}

.contact-us form .form-item__recaptcha>div:first-of-type {
    -ms-flex: 1 0 0;
    flex: 1 0 0
}

.contact-us form .form-item__recaptcha .wpcf7-form-control.wpcf7-captchar {
    padding: 0 20px
}

.contact-us form .form-item__recaptcha span.wpcf7-not-valid-tip:not(.label) {
    top: 100%;
    transform: none;
    left: 0;
    margin-top: 5px
}

.contact-us form .form-item__recaptcha.hovered span.wpcf7-not-valid-tip:not(.label) {
    transform: none
}

.contact-us form .replaced-btn {
    background: none;
    border-width: 0 0 3px;
    padding: 0;
    margin: 0 auto;
    display: block;
    cursor: pointer;
    outline: none
}

.contact-us .wpcf7-spam-blocked,
.contact-us .wpcf7-validation-errors {
    color: #ce1b2e;
    text-align: center;
    font-size: 15px;
    border: none
}

.contact-us .wpcf7-mail-sent-ok {
    color: #018124;
    text-align: center;
    font-size: 15px;
    border: none
}

.pagination a,
.pagination span {
    padding: 0 15px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 36px;
    line-height: 36px;
    color: #003a81;
    font-weight: 600
}

.pagination span {
    color: #ce1b2e;
    font-weight: 600;
    cursor: default
}

.pagination a {
    border: none;
    color: #003a81
}

.case-studies .pagination a {
    color: #fff
}

.pagination a:hover {
    color: #ce1b2e
}

.pagination .next:before {
    top: -2px
}

.pagination .next:before,
.pagination .prev:before {
    content: "»";
    font-size: 24px;
    font-weight: 600;
    position: relative
}

.pagination .prev:before {
    top: 2px;
    transform: rotate(180deg)
}

.pagination .nav-links {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center
}

.case-banner h1 {
    width: 100%;
    max-width: 70%
}

.case-banner img.case-banner__png-img {
    position: absolute;
    right: calc(50% - 1400px/2);
    top: 50%;
    transform: translateY(-40%);
    width: auto;
    height: auto;
    min-width: 0;
    min-height: 0;
    max-width: 30%;
    max-height: 75%
}

.case-next {
    width: 1450px;
    left: calc(50% - 1450px/2);
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 60px 0 0
}

.case-next,
.case-next__content {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column
}

.case-next__content {
    height: 390px;
    width: 100vw;
    margin-top: -80px;
    background-size: cover;
    background-position: 50%;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-align: start;
    align-items: flex-start;
    padding: 80px calc(50vw - 1400px/2) 60px
}

.case-next__content h4 {
    font-size: 27px;
    color: #fff;
    font-weight: 700;
    max-width: 500px;
    width: 100%;
    margin-bottom: 20px;
    font-family: Roboto, sans-serif
}

.case-next__content-image {
    position: absolute;
    right: calc(50vw - 1400px/2);
    bottom: -45px;
    max-height: 300px;
    z-index: 1
}

.case-next__heading {
    padding: 10px;
    width: 100%;
    background: #03457f url(../images/case-custom-bg.jpg) 50% no-repeat;
    background-size: cover;
    height: 165px;
    position: relative;
    z-index: 2;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center
}

.case-next__heading h4 {
    font-family: Work Sans, sans-serif;
    font-size: 40px;
    font-weight: 700;
    color: #fff;
    text-transform: uppercase;
    margin-right: 75px
}

.case-next__heading h4 p {
    font-size: 23px;
    font-family: Roboto, sans-serif;
    font-weight: 300;
    text-transform: none
}

.case-next__heading .link-arrow {
    position: relative;
    top: -5px;
    font-size: 16px
}

.case-related {
    width: 100vw;
    position: relative;
    left: calc(50% - 50vw);
    padding: 90px calc(50vw - 1400px/2) 100px;
    background: #f5f5f5;
    margin-bottom: -90px;
    display: -ms-flexbox;
    display: flex
}

.case-related h3 {
    font-family: Work Sans, sans-serif;
    text-transform: uppercase;
    color: #003a81;
    font-size: 40px;
    margin-bottom: 28px;
    white-space: nowrap
}

.case-related li {
    margin-right: 0;
    display: block;
    height: 100%;
    width: calc(50% - 9px)
}

.case-related li:nth-child(odd) {
    margin-right: 18px
}

.case-related li:before {
    display: none
}

.case-related a.-blue {
    color: #003a81
}

.case-related .news__item {
    background: #fff;
    margin-bottom: 18px;
    text-decoration: none;
    height: 259px
}

.case-related .news__item-img {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 255px
}

.case-related .news__item img {
    min-width: inherit
}

.case-landing {
    padding-top: 50px
}

.case-landing-next {
    margin-top: -10px
}

.leadership-page__tabs+.case-landing-next {
    margin-top: -82px
}

.grey-bg+.case-landing-next {
    position: relative
}

.grey-bg+.case-landing-next:before {
    position: absolute;
    content: "";
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    top: 0;
    bottom: 50%;
    background: #f5f5f5
}

.case-landing-bottom {
    width: 100%;
    max-width: 1400px;
    padding: 100px 25px;
    margin: 0 auto
}

.case-landing-bottom.with-bg {
    position: relative
}

.case-landing-bottom.with-bg:before {
    content: "";
    position: absolute;
    width: 100vw;
    height: 100%;
    background: #f5f5f5;
    border-top: 3px solid #e1e3e7;
    left: calc(50% - 50vw);
    top: 0;
    z-index: -1
}

.case-landing-bottom h3 {
    color: #003a81;
    width: 100%;
    text-align: center;
    margin-bottom: 18px;
    text-transform: uppercase
}

.case-landing-bottom>p {
    font-size: 27px;
    max-width: 770px;
    width: 100%;
    display: block;
    margin: 0 auto 70px;
    text-align: center
}

.bottom-rel-images {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.bottom-rel-images div {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: 0 30px
}

.bottom-rel-images div+div {
    border-left: 1px solid #dadce0
}

.insights__wrap .categories-filter {
    border-bottom: 1px solid #e5e5e5
}

.insights-listing {
    padding-top: 50px;
    padding-bottom: 100px
}

.insights-listing ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative
}

.insights__item {
    width: calc(33.33% - 10px);
    margin-right: 10px;
    margin-bottom: 40px
}

.insights__item:nth-child(3n) {
    margin-right: 0
}

.insights__item-image-wrap {
    border: 1px solid #ddeffd;
    overflow: hidden
}

.insights__item-image-wrap,
.insights__item-image-wrap a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center
}

.insights__item-image-wrap a {
    width: 100%
}

.insights__item-image-wrap a:hover img {
    transform: scale(1.1)
}

.insights__item-image-wrap img {
    min-width: 100%;
    display: block;
    height: 300px;
    transition: all 1.5s cubic-bezier(.21, .44, .17, .87);
    will-change: transform
}

.insights__item-content {
    padding: 24px 20px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    height: 220px
}

.insights__item-content .category {
    font-size: 15px;
    color: #003a81;
    text-transform: uppercase;
    font-weight: 700;
    font-family: Work Sans, sans-serif;
    margin-bottom: 10px
}

.insights__item-content .date {
    -ms-flex: 1 0;
    flex: 1 0;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
    align-items: flex-end;
    font-size: 13px;
    text-transform: uppercase;
    color: #444648;
    margin-bottom: 10px
}

.insights__item-content-link {
    height: 90px
}

.insights__item-content-link h4 {
    font-size: 25px;
    text-align: left;
    color: #000
}

.site-main section .insights__item-content-link h2:hover,
.insights__item-content-link:hover {
    color: #ce1b2e
}

.insights__item-links {
    display: -ms-flexbox;
    display: flex
}

.insights__item-links a {
    padding: 0 15px
}

.insights__item-links a.-blue:hover {
    border-color: #c1c3c4
}

.insights__item-links>a:first-child {
    padding-left: 0;
    border-right: 1px solid #c1c3c4
}

.load-more__wrap {
    margin-top: 20px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center
}

.load-more__wrap a {
    font-size: 16px;
    text-transform: uppercase;
    color: #003a81;
    font-weight: 700;
    height: 35px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    border-bottom: 3px solid #e6e7e8
}

.load-more__wrap a:hover {
    color: #ce1b2e;
    border-color: #ce1b2e
}

.map {
    height: 660px;
    width: 100%;
    transition: -webkit-filter .7s ease;
    transition: filter .7s ease;
    transition: filter .7s ease, -webkit-filter .7s ease;
    overflow: hidden;
    background: #2c57b5
}

.map .mapboxgl-ctrl-bottom-right,
.map .mapboxgl-ctrl-logo {
    display: none
}

.map .marker {
    transition: top .3s ease;
    cursor: pointer
}

.map .marker.hovered {
    top: -8px;
    z-index: 10
}

.map .marker.hovered:after {
    transform: translate(5px, 37px) scale(1)
}

.map .marker:after {
    content: "";
    position: absolute;
    width: 12px;
    height: 6px;
    border-radius: 50%;
    background: #ce1b2e;
    left: 0;
    top: 0;
    transform: translate(5px, 29px) scale(0);
    transition: transform .3s ease
}

.map.blured {
    -webkit-filter: blur(10px);
    filter: blur(10px)
}

.locations {
    padding-bottom: 105px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    background: #fff
}

.locations-main {
    background: #2c57b5
}

.locations__breadcrumbs {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center;
    height: 47px;
    background: rgba(0, 0, 0, .5);
    position: relative;
    margin-bottom: -47px;
    width: 100%;
    z-index: 4
}

.locations__breadcrumbs .banner__breadcrumbs {
    width: 100%;
    max-width: 1430px;
    padding: 0 25px
}

.locations .general-cards {
    padding: 20px 25px 0
}

.locations .section-wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-align: center;
    align-items: center;
    width: 100%
}

.locations__rendered-section {
    padding-top: 55px
}

.locations__rendered-section.hidden {
    display: none
}

.locations__rendered-section:first-child {
    padding-top: 0
}

.locations__cities {
    display: -ms-flexbox;
    display: flex
}

.locations__cities-item {
    -ms-flex: 1 0 25%;
    flex: 1 0 25%;
    max-width: calc(50% - 1px);
    margin-right: 1px;
    background: #f5f5f5;
    height: 405px;
    padding: 20px 15px 20px 38px
}

.locations__cities-item:nth-child(2n) {
    background: #efefef
}

.locations__cities-item:last-child {
    margin-right: 0
}

.locations__cities-item ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    height: 100%
}

.locations__cities-item ul li {
    height: 33px;
    width: 33.333%;
    padding-right: 10px
}

.locations__cities-item ul li a {
    width: 100%;
    height: 100%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    font-weight: 700;
    font-size: 13px;
    text-transform: uppercase
}

.locations__cities-item ul li a:hover {
    color: #ce1b2e
}

.locations__cities-item ul li a svg {
    width: 22px;
    height: 7px;
    fill: #ce1b2e;
    margin-right: 8px
}

.render-loc .heading {
    width: 100%;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 60px
}

.render-loc .heading h1 {
    font-family: Work Sans, sans-serif;
    font-size: 60px;
    color: #003a81;
    text-transform: uppercase;
    margin-right: 30px
}

.render-loc__subtitle-wrap {
    display: -ms-flexbox;
    display: flex;
    height: 50px;
    border-bottom: 3px solid #ce1b2e;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-positive: 1;
    flex-grow: 1
}

.render-loc__subtitle-wrap a {
    margin-top: 5px
}

.render-loc .locations__cities-item {
    width: 100%;
    max-width: 100%;
    height: auto
}

.render-loc .locations__cities-item ul {
    -ms-flex-direction: row;
    flex-direction: row
}

.render-loc .locations__cities-item ul li {
    width: 25%;
    height: 50px
}

.render-loc .locations__cities-item ul li a {
    font-size: 18px
}

.render-loc.render-city .heading {
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse
}

.render-loc.render-city .heading h2 {
    font-family: Work Sans, sans-serif;
    font-size: 60px;
    color: #003a81;
    text-transform: uppercase;
    margin-right: 30px
}

.render-loc.render-city .heading h1 {
    font-family: Roboto, sans-serif;
    font-size: 27px;
    text-transform: none;
    color: #222;
    font-weight: 700;
    margin-top: 6px
}

.render-loc.render-city .render-loc__subtitle-wrap {
    -ms-flex-pack: justify;
    justify-content: space-between
}

.render-loc.render-city .detail {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.render-loc.render-city .detail__item {
    box-sizing: border-box;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: calc(25% - 67.5px);
    padding-left: 40px;
    padding-right: 10px;
    position: relative;
    margin-bottom: 40px;
    margin-right: 90px;
    border-right: 3px solid #e1e3e7
}

.render-loc.render-city .detail__item:nth-child(4n) {
    margin-right: 0
}

.render-loc.render-city .detail__item>svg {
    width: 24px;
    height: 8px;
    fill: #ce1b2e;
    position: absolute;
    left: 0;
    top: 7px
}

.render-loc.render-city .detail__item p {
    font-size: 17px;
    margin-bottom: 20px;
    text-shadow: 0 0 0 rgba(0, 0, 0, .3)
}

.render-loc.render-city .detail__item span {
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    padding-left: 33px;
    height: 33px;
    -ms-flex-align: center;
    align-items: center;
    position: relative
}

.render-loc.render-city .detail__item span svg {
    position: absolute;
    width: 21px;
    height: 14px;
    left: 0;
    top: 10px;
    fill: #ce1b2e
}

.render-loc.render-city .detail__phone {
    text-shadow: 0 0 0 rgba(0, 0, 0, .3);
    font-size: 16px;
    word-break: break-all
}

.render-loc.render-city .detail__phone:before {
    content: "";
    position: absolute;
    width: 16px;
    height: 17px;
    display: block;
    left: 3px;
    top: 9px;
    background: url(../images/phone_ico.png)
}

.render-loc.render-city .detail__mail {
    text-transform: uppercase;
    font-size: 13px
}

.render-loc.render-city .detail__time {
    font-size: 13px
}

.render-loc.render-city .detail__time:before {
    content: "";
    position: absolute;
    width: 17px;
    height: 17px;
    display: block;
    left: 2px;
    top: 8px;
    background: url(../images/clocks.png)
}

.mapboxgl-ctrl-top-right {
    margin-top: 60px
}

.digital-engagement .case-studies {
    padding-bottom: 185px
}

.careers-banner p {
    max-width: 900px
}

.careers__listing {
    width: 100%;
    max-width: 1450px;
    padding: 50px 15px 90px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.careers__listing li {
    -ms-flex: 1 0 50%;
    flex: 1 0 50%;
    margin: 0 0 16px;
    padding: 1px;
    border: 1px solid #d6d7d8;
    border-radius: 1px;
    max-width: calc(50% - 8px);
    display: -ms-flexbox;
    display: flex
}

.careers__listing .insights__item-image-wrap {
    width: 50%;
    border: none;
    overflow: hidden
}

.careers__listing .insights__item-image-wrap img {
    height: 250px;
    min-height: inherit;
    min-width: inherit;
    -ms-flex: 1 0;
    flex: 1 0
}

.careers__listing .insights__item-links a {
    border: none
}

.careers__listing .insights__item .date {
    -ms-flex: none;
    flex: none
}

.careers__listing .insights__item-content {
    width: 50%;
    padding: 35px 20px 20px 30px;
    height: 250px;
    -ms-flex-pack: distribute;
    justify-content: space-around
}

.careers__listing .insights__item-content-link {
    height: auto
}

.careers__listing .insights__item-content-link h4 {
    font-family: Roboto, sans-serif;
    font-weight: 600
}

.careers__listing .insights__item-content .location {
    font-family: Work Sans, sans-serif;
    font-size: 15px;
    color: #003a81;
    text-transform: uppercase;
    font-weight: 700
}

.careers__listing-wrap .load-more--wrp a {
    color: #003a81;
    border-color: #003a81
}

.careers__listing-wrap .load-more--wrp a:hover {
    color: #ce1b2e;
    border-color: #ce1b2e
}

.contact-us {
    padding: 90px 25px
}

.contact-us__wrap {
    background: #f7f7f7
}

.contact-us h1 {
    text-transform: uppercase;
    width: 100%;
    text-align: center;
    color: #003a81;
    margin-bottom: 25px
}

.contact-us>p {
    font-size: 27px;
    max-width: 950px;
    width: 100%;
    margin: 0 auto 35px;
    text-align: center
}

.search-page {
    padding: 90px 25px
}

.search-page__wrap {
    background: #f5f5f5
}

.search-page ul {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column
}

.search-page ul li {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 15px
}

.search-page ul li a {
    font-size: 20px;
    display: block;
    padding-left: 45px;
    position: relative;
    color: #003a81;
    font-weight: 500;
    line-height: 1.4
}

.search-page ul li a:hover {
    color: #ce1b2e
}

.search-page ul li a svg {
    width: 30px;
    height: 12px;
    position: absolute;
    left: 0;
    top: 12px;
    fill: #ce1b2e
}

.leadership-page__heading {
    background: #fff;
    color: #222
}

.leadership-page__heading h3 {
    color: #003a81
}

.leadership-page__control {
    top: -82px;
    padding-bottom: 11px
}

.leadership-page__control .tabs-control__item {
    border-color: #e5e5e5;
    position: relative
}

.leadership-page__control .tabs-control__item span {
    background: none;
    color: #000;
    font-weight: 700
}

.leadership-page__control .tabs-control__item.active span,
.leadership-page__control .tabs-control__item:hover span {
    color: #ce1b2e
}

.leadership-page__control .tabs-control__item.active:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 3px;
    left: 0;
    top: calc(100% + 11px);
    background: #ce1b2e
}

.leadership-page__container .tabs__item .general-cards__wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center
}

.leadership-page__container .tabs__item .general-cards__item {
    margin-right: 1px;
    -ms-flex: 0 0;
    flex: 0 0;
    -ms-flex-preferred-size: calc(25% - 1px) !important;
    flex-basis: calc(25% - 1px) !important;
    max-width: calc(25% - 1px) !important;
    min-width: calc(25% - 1px) !important;
    height: 453px
}

.leadership-page__container .tabs__item .general-cards__item img {
    max-width: 100%;
    max-height: 100%
}

.leadership-page__container .tabs__item .general-cards__item:nth-child(5n) {
    margin-right: 1px
}

.leadership-page__container .swiper-button-next,
.leadership-page__container .swiper-button-prev {
    background: transparent
}

.leadership-page__container .swiper-button-next:after,
.leadership-page__container .swiper-button-prev:after {
    content: none
}

.leadership-page__container .swiper-button-next:before,
.leadership-page__container .swiper-button-prev:before {
    border-color: #003a81
}

.leadership-page__tabs .tabs {
    max-width: 1430px
}

.leadership-cta__wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 75px
}

.leadership-cta__item {
    height: 80px;
    width: 25%;
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%
}

.leadership-cta__item span {
    color: #fff;
    background: #ce1b2e;
    transition: background .15s ease
}

.leadership-cta__item:hover span {
    color: #fff;
    background: #b11324
}

@media screen and (max-width:1920px) {
    .dirty-hack {
        display: block
    }
}

@media screen and (max-width:1600px) {
    .dirty-hack {
        display: block
    }

    .footer__social li img {
        left: auto;
        right: -25px;
        transform: translateY(20px) translateX(0)
    }

    .footer__social li:hover img {
        transform: translateY(0) translateX(0)
    }

    .news__item-cont h4 {
        font-size: 25px
    }

    .cards {
        height: 390px
    }

    .cards__item .animated-strip-bot,
    .cards__item .animated-strip-top {
        left: 20px
    }

    .cards__item .animated-strip-bot {
        bottom: 64px
    }

    .cards__item:hover .animated-strip-top {
        transform: translateY(50px)
    }

    .cards__item-content {
        transform: translateY(269px);
        padding: 30px
    }

    .cards__item-content>a {
        bottom: 10px;
        font-size: 12px
    }

    .cards__item-content h3 {
        font-size: 24px;
        margin-bottom: 15px
    }

    .cards__item-content ul li {
        margin-bottom: 6px
    }

    .cards__item-content ul li svg {
        width: 17px
    }

    .cards__item-content ul a {
        font-size: 11px
    }

    .insights__item-content-link h4 {
        font-size: 25px
    }
}

@media screen and (max-width:1366px) {
    .dirty-hack {
        display: block
    }

    .header__logo {
        padding: 10px 0;
        width: 140px;
        height: 75px;
        text-align: left
    }

    .header__main-nav .menu {
        width: 100%;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .footer__bot .footer__container {
        -ms-flex-direction: column;
        flex-direction: column
    }

    .footer__bot .footer__container>* {
        width: 100%
    }

    .footer__bot p {
        text-align: center;
        margin-bottom: 15px
    }

    .footer__bot ul {
        -ms-flex-pack: center;
        justify-content: center
    }

    .news__item-cont h4 {
        font-size: 20px
    }

    .footprint .cards__item {
        height: 180px;
        width: calc(50% - 1px);
        min-width: calc(50% - 1px);
        max-width: calc(50% - 1px)
    }

    .footprint .cards__item:first-child,
    .footprint .cards__item:nth-child(2) {
        width: calc(50% - 1px);
        min-width: calc(50% - 1px);
        max-width: calc(50% - 1px);
        margin-right: 1px
    }

    .story-slider__item-cont p {
        font-size: 20px
    }

    .cards {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        height: auto
    }

    .cards__item {
        height: 390px;
        margin: 0 0 1px;
        -ms-flex: 1 1 33%;
        flex: 1 1 calc(33.33% - 1px)
    }

    .cards__item:first-child,
    .cards__item:nth-child(2),
    .cards__item:nth-child(4) {
        margin-right: 1px
    }

    .general-cards__item-cont h4 {
        font-size: 23px
    }

    .general-cards__item-cont p {
        font-size: 14px
    }

    .leader-popup__cont p {
        font-size: 16px
    }

    .insights__item-content-link h4 {
        font-size: 22px
    }
}

@media screen and (max-width:1450px) {
    .dirty-hack {
        display: block
    }

    .case-banner img.case-banner__png-img {
        right: 15px
    }

    .case-next {
        width: 100vw;
        left: calc(50% - 50vw)
    }

    .case-next__content {
        padding: 80px 25px 60px
    }

    .case-next__content-image {
        right: 0
    }

    .case-related {
        padding: 90px 25px 100px
    }
}

@media screen and (max-width:1280px) {
    .dirty-hack {
        display: block
    }

    .stats {
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .stats-item {
        margin: 0
    }

    .video-bg-heading {
        height: 150px
    }

    .video-bg-heading .svg-text-mask .h2-svg-mask {
        display: none
    }

    .video-bg-heading .svg-text-mask .h2-svg-mask.mobile {
        display: block
    }
}

@media screen and (max-width:1201px) {
    .dirty-hack {
        display: block
    }
}

@media screen and (max-width:1200px) {
    .dirty-hack {
        display: block
    }

    .header__main-nav .menu>li>a {
        font-size: 15px;
        padding: 0 5px
    }

    .menu__submenu ul+ul+img {
        display: none
    }

    .footer__heading {
        font-size: 20px
    }

    .footer__connect {
        padding: 27px 25px 33px 0;
        width: 50%
    }

    .footer__connect .footer__heading {
        font-size: 16px;
        margin-bottom: 0
    }

    .footer__connect form {
        height: 100%
    }

    .footer__connect form.sent .wpcf7-mail-sent-ok {
        left: 0;
        top: auto;
        bottom: 8px
    }

    .footer__connect form p {
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-pack: start;
        justify-content: flex-start
    }

    .footer__connect form p label {
        -ms-flex-item-align: start;
        align-self: flex-start;
        font-size: 20px;
        margin-bottom: 6px
    }

    .footer__connect form p>span {
        width: 100%
    }

    .footer__connect form p input[type=email],
    .footer__connect form p input[type=text] {
        width: 100%;
        height: 48px;
        font-size: 12px
    }

    .footer__connect form p button {
        height: 34px;
        font-size: 14px
    }

    .footer__social {
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
        width: 45%
    }

    .footer__social li svg {
        width: 47px;
        height: 47px
    }

    .footer__company {
        padding: 30px 25px 15px 0;
        width: 50%
    }

    .footer__company ul li a {
        font-size: 13px
    }

    .footer__contacts {
        padding: 30px 0 15px 25px;
        width: 45%
    }

    .footer__contacts .footer__heading {
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis
    }

    .footer__contacts ul li {
        font-size: 12px
    }

    .footer__contacts p,
    .footer__contacts ul li.phone {
        font-size: 14px
    }

    .industries__descr h2.changed-heading {
        font-size: 37px
    }

    .industries__descr h3.changed-heading+.industries__descr-text p {
        font-size: 20px
    }

    .case-studies__item-image {
        max-width: 50%;
        max-height: 55%
    }

    .case-studies__item:hover .case-studies__item-image {
        transform: scale(.9)
    }

    .case-studies__item-content {
        max-width: 45%
    }

    .news__item-cont h4 {
        font-size: 18px
    }

    .footprint {
        padding: 35px 25px 60px
    }

    .footprint .cards__item {
        width: calc(25% - 1px);
        min-width: calc(25% - 1px);
        max-width: calc(25% - 1px)
    }

    .cms-content ul li {
        font-size: 16px
    }

    .slider .swiper-button-prev {
        left: 2%
    }

    .slider .swiper-button-next {
        right: 2%
    }

    .slider-control__item {
        -ms-flex-positive: 1;
        flex-grow: 1
    }

    .story-slider__item-cont p {
        font-size: 18px
    }

    .tabs-leadership {
        min-height: 0
    }

    .tabs-leadership .tabs__item .general-cards__item {
        height: calc((100vw - 50px)*1.2895/3 + 3px);
        max-width: calc((100vw - 50px)/3)
    }

    .tabs-leadership .tabs__item .general-cards__item h4 span.position {
        font-size: 10px
    }

    .banner {
        height: 400px
    }

    .banner__content h1 {
        font-size: 40px;
        margin-bottom: 20px
    }

    .banner__content p {
        font-size: 18px;
        margin-bottom: 35px;
        line-height: 22px;
        max-width: 100%
    }

    .banner__content a {
        font-size: 14px;
        font-size: 13px
    }

    .general-cards__wrap+.general-cards__wrap {
        margin-top: 0
    }

    .general-cards__wrap {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .general-cards__wrap.cards-grid li {
        margin-top: 0;
        min-width: calc(25% - 3px);
        -ms-flex-preferred-size: calc(25% - 2px);
        flex-basis: calc(25% - 2px);
        -ms-flex-positive: 1;
        flex-grow: 1;
        height: 350px
    }

    .general-cards__wrap.cards-grid li:nth-child(4n) {
        margin-right: 0
    }

    .general-cards__wrap.cards-grid li:nth-child(5n) {
        margin-right: 1px
    }

    .general-cards__wrap.cards-grid li:nth-child(9),
    .general-cards__wrap.cards-grid li:nth-child(10) {
        min-width: calc(50% - 1px);
        -ms-flex-preferred-size: calc(50% - 1px);
        flex-basis: calc(50% - 1px)
    }

    .general-cards__wrap.cards-grid li:nth-child(10) {
        margin-right: 0
    }

    .general-cards__wrap.cards-grid li {
        min-width: calc(33.33% - 2px);
        -ms-flex-preferred-size: calc(33.33% - 2px);
        flex-basis: calc(33.33% - 2px);
        height: 250px
    }

    .general-cards__wrap.cards-grid li:nth-child(4),
    .general-cards__wrap.cards-grid li:nth-child(5),
    .general-cards__wrap.cards-grid li:nth-child(9),
    .general-cards__wrap.cards-grid li:nth-child(10) {
        min-width: calc(50% - 1px);
        -ms-flex-preferred-size: calc(50% - 1px);
        flex-basis: calc(50% - 1px)
    }

    .general-cards__wrap.cards-grid li:nth-child(4),
    .general-cards__wrap.cards-grid li:nth-child(9) {
        margin-right: 1px
    }

    .general-cards__wrap.cards-grid li:nth-child(3),
    .general-cards__wrap.cards-grid li:nth-child(5),
    .general-cards__wrap.cards-grid li:nth-child(8) {
        margin-right: 0
    }

    .general-cards__item {
        min-width: 33%;
        margin-top: 1px
    }

    .general-cards__item:last-child {
        margin-right: 1px
    }

    .general-cards__item-image,
    .general-cards__item-image img,
    .general-cards__item:after {
        transform: scaleY(1)
    }

    .general-cards__item-cont h4 .top-animated-strip {
        top: calc(100% - 230px*.8 + 26px - 200%)
    }

    .tabs-heading-wrap {
        padding: 90px 25px 160px
    }

    .tabs__item-desc li {
        font-size: 16px
    }

    .tabs__item p {
        font-size: 20px;
        margin-bottom: 8px
    }

    .share:nth-child(3) .share-sharings {
        -ms-flex-direction: column;
        flex-direction: column
    }

    .two-sides>a {
        margin-bottom: 40px
    }

    .leader-popup__heading {
        max-width: 290px
    }

    .leader-popup__cont {
        overflow-y: auto;
        margin-left: 300px;
        width: calc(100% - 300px);
        padding: 0 20px 10px 40px
    }

    .leader-popup__cont p {
        font-size: 14px
    }

    .pagination a,
    .pagination span {
        padding: 0 10px
    }

    .bottom-rel-images div {
        height: 50px
    }

    .bottom-rel-images div img {
        max-height: 100%
    }

    .insights__item-content-link h4 {
        font-size: 18px
    }

    .locations__breadcrumbs,
    .map {
        display: none
    }

    .locations .general-cards__item {
        margin-bottom: 300px
    }

    .locations .general-cards__item:nth-child(3),
    .locations .general-cards__item:nth-child(4) {
        margin-bottom: 200px
    }

    .locations__cities {
        position: absolute;
        left: 0;
        top: 20px;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .locations__cities-item {
        max-width: calc(50% - 1px);
        -ms-flex: 1 0 49%;
        flex: 1 0 49%;
        margin-top: 261px;
        height: 300px
    }

    .locations__cities-item ul li {
        width: 33.33%
    }

    .locations__cities-item:nth-child(3),
    .locations__cities-item:nth-child(4) {
        height: 200px
    }

    .render-loc .locations__cities {
        position: relative;
        top: 0
    }

    .render-loc .locations__cities-item {
        margin-top: 0
    }

    .render-loc .locations__cities-item ul {
        -ms-flex-direction: row;
        flex-direction: row
    }

    .render-loc .locations__cities-item ul li {
        width: 25%;
        height: 40px
    }

    .render-loc .locations__cities-item ul li a {
        font-size: 15px
    }

    .render-loc.render-city .heading h2 {
        font-size: 40px
    }

    .render-loc.render-city .heading h1 {
        font-size: 23px
    }

    .render-loc.render-city .render-loc__subtitle-wrap {
        height: 35px
    }

    .render-loc.render-city .detail {
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .render-loc.render-city .detail__item {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: calc(50% - 30px);
        margin-right: 30px
    }

    .render-loc.render-city .detail__item:nth-child(2n) {
        margin-right: 0
    }

    .leadership-page__container .tabs__item .general-cards__item {
        -ms-flex-preferred-size: calc(33% - 1px) !important;
        flex-basis: calc(33% - 1px) !important;
        max-width: calc(33% - 1px) !important;
        min-width: 0 !important
    }

    .leadership-cta__item {
        width: 33.33%;
        -ms-flex-preferred-size: 33.33%;
        flex-basis: 33.33%
    }
}

@media screen and (max-width:1024px) {
    .dirty-hack {
        display: block
    }

    .header__main-nav,
    .header__top-nav {
        display: none
    }

    .mobile-nav,
    .mobile-nav-toggler {
        display: block
    }

    .footprint__map {
        display: none
    }

    .stats {
        margin-top: -110px
    }

    .stats-item {
        width: 180px;
        height: 180px
    }

    .stats-item__cont .num {
        font-size: 50px
    }

    .stats-item__cont .num .symbol {
        font-size: 20px
    }

    .stats-item__cont .desc {
        font-size: 14px;
        padding: 0 20px
    }

    .stats-wrap {
        padding-top: 220px
    }

    .stats-wrap:before {
        height: 220px;
        background-size: cover
    }

    .story-slider__item-img {
        max-width: 350px
    }

    .case-next__heading {
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-align: center;
        align-items: center
    }

    .case-next__heading h4 {
        margin-right: 0;
        margin-bottom: 20px;
        text-align: center
    }

    .case-next__heading h4 p {
        font-size: 16px
    }

    .case-related li h3 {
        font-size: 27px
    }

    .insights__item {
        width: calc(50% - 10px);
        margin-bottom: 45px
    }

    .insights__item:nth-child(3n) {
        margin-right: 10px
    }

    .insights__item:nth-child(2n) {
        margin-right: 0
    }
}

@media screen and (max-width:980px) {
    .dirty-hack {
        display: block
    }

    .two-columns {
        -ms-flex-direction: column;
        flex-direction: column
    }

    .two-columns-item {
        width: 100%
    }

    .header__main-nav .menu>li>a {
        font-size: 13px
    }

    .footer__company ul li {
        width: 50%
    }

    .industries__descr h3 {
        text-align: center;
        max-width: 100%
    }

    .industries__descr {
        margin-bottom: 50px
    }

    .industries__list-wrap {
        margin: -15px;
        width: calc(100% + 2*15px)
    }

    .industries__list>li>a {
        height: 50px
    }

    .industries__list>li>a svg {
        max-width: 35px;
        max-height: 35px
    }

    .industries__list>li>a:before {
        display: none
    }

    .industries__list>li>a.active+div.industries__list--item__detail {
        max-height: 500px
    }

    .industries__list>li {
        height: auto
    }

    .industries__list--item__detail {
        display: block
    }

    .industries__rel {
        display: none
    }

    .case-studies__item {
        -ms-flex-align: start;
        align-items: flex-start
    }

    .case-studies__item-content {
        max-width: 100%
    }

    .news__item-wrap {
        width: 100%
    }

    .news__item-wrap:first-child {
        height: 260px;
        margin-right: 0
    }

    .news__item-wrap:first-child .news__item {
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }

    .news__item-wrap:first-child .news__item-img {
        height: 100%;
        width: 50%
    }

    .news__item-wrap:first-child .news__item-cont {
        width: 50%
    }

    .footprint .cards {
        height: 360px
    }

    .footprint .cards__item {
        margin-right: 0
    }

    .footprint .cards__item,
    .footprint .cards__item:first-child,
    .footprint .cards__item:nth-child(2) {
        width: calc(50% - 1px);
        min-width: calc(50% - 1px);
        max-width: calc(50% - 1px)
    }

    .footprint .cards__item:nth-child(2n) {
        margin-right: 0
    }

    .footprint .cards__item:nth-child(odd) {
        margin-right: 1px
    }

    .story-slider__item.swiper-slide {
        padding: 50px 60px 25px
    }

    .select-wrap {
        margin-right: 20px
    }

    .tabs-control {
        width: 100%;
        left: 0
    }

    .tabs-control__item span {
        font-size: 13px
    }

    .two-sides {
        padding: 50px 25px;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .two-sides>div {
        padding-bottom: 25px
    }

    .two-sides>div,
    .two-sides>p {
        -ms-flex-preferred-size: auto;
        flex-basis: auto
    }

    .two-sides>p {
        width: 100%;
        max-width: 700px;
        font-size: 18px;
        border-left: none;
        text-align: center;
        padding: 0;
        margin: 0 auto
    }

    .case-next__content-image {
        max-width: 50%
    }

    .case-related {
        -ms-flex-direction: column;
        flex-direction: column
    }

    .case-related li {
        width: 100%;
        margin: 0 0 40px
    }

    .bottom-rel-images {
        overflow: auto;
        padding-bottom: 30px
    }

    .locations__cities-item ul li {
        width: 50%;
        height: 25px
    }

    .locations__cities-item ul li a {
        font-size: 12px
    }

    .render-loc .heading {
        margin-bottom: 30px
    }

    .render-loc .heading h1 {
        font-size: 50px
    }

    .render-loc__subtitle-wrap {
        height: 41px
    }
}

@media screen and (max-width:820px) {
    .dirty-hack {
        display: block
    }

    .cards__item:nth-child(2),
    .cards__item:nth-child(2n) {
        margin: 0 0 1px;
        -ms-flex: 1 1 calc(50% - 1px);
        flex: 1 1 calc(50% - 1px)
    }

    .cards__item:nth-child(odd) {
        margin: 0 1px 1px 0;
        -ms-flex: 1 1 50%;
        flex: 1 1 50%
    }
}

@media screen and (max-width:768px) {
    .dirty-hack {
        display: block
    }

    .cms-content ul li,
    .slider-control__item span {
        font-size: 14px
    }

    .slider__item p {
        max-width: 85%;
        font-size: 18px
    }

    .general-cards__item {
        min-width: 49%;
        -ms-flex: 1 1 calc(50% - 1px);
        flex: 1 1 calc(50% - 1px)
    }

    .tabs__item {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-pack: center;
        justify-content: center
    }

    .tabs__item-desc {
        max-width: 100%;
        width: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        -ms-flex-positive: 1;
        flex-grow: 1;
        margin-bottom: 20px;
        padding-right: 0
    }

    .tabs__item-desc li {
        font-size: 14px
    }

    .tabs__item-img {
        max-width: 100%;
        width: auto
    }

    .tabs__item p {
        font-size: 16px;
        max-width: 100%;
        width: 100%
    }

    .careers__listing .insights__item {
        -ms-flex: 0 1 100%;
        flex: 0 1 100%;
        max-width: 100%;
        margin-right: 0
    }
}

@media screen and (max-width:767px) {
    .dirty-hack {
        display: block
    }

    section {
        padding: 0 15px
    }

    section>h3 {
        font-size: 22px
    }

    section>p {
        font-size: 16px
    }

    .header__container {
        padding: 0 15px
    }

    .mobile-nav {
        padding: 15px
    }

    .mobile-nav-toggler {
        right: 15px
    }

    .footer__heading {
        width: 100%;
        height: 53px;
        position: relative;
        line-height: 53px;
        font-size: 16px;
        margin: 0
    }

    .footer__heading.closed+.footer__hide-on-mobile {
        overflow: hidden;
        max-height: 0
    }

    .footer__heading.opened+.footer__hide-on-mobile {
        overflow: hidden;
        max-height: 200px
    }

    .footer__heading:after,
    .footer__heading:before {
        content: "";
        display: block;
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 15px;
        height: 2px;
        background: #666;
        transition: transform .3s ease
    }

    .footer__heading:before {
        transform: translateY(-50%) rotate(90deg)
    }

    .footer__heading.opened:before {
        transform: translateY(-50%) rotate(180deg)
    }

    .footer__container {
        padding: 0 15px
    }

    .footer__bot,
    .footer__mid,
    .footer__top {
        border-bottom: none
    }

    .footer__bot .footer__container,
    .footer__mid .footer__container,
    .footer__top .footer__container {
        -ms-flex-direction: column;
        flex-direction: column
    }

    .footer__connect {
        padding: 27px 0 33px;
        width: 100%;
        border-right: none;
        border-bottom: 1px solid #3e4247
    }

    .footer__connect form.sent .wpcf7-mail-sent-ok {
        max-width: 65%;
        bottom: 0
    }

    .footer__social {
        width: 100%;
        padding: 16px 0;
        -ms-flex-pack: distribute;
        justify-content: space-around;
        border-bottom: 1px solid #3e4247
    }

    .footer__social li {
        margin: 0
    }

    .footer__company {
        width: 100%;
        padding: 0;
        border-right: none;
        border-bottom: 1px solid #3e4247
    }

    .footer__company ul {
        padding-bottom: 15px;
        overflow: hidden
    }

    .footer__company ul li {
        width: 33.33%
    }

    .footer__contacts {
        padding: 0;
        width: 100%;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .footer__contacts>div {
        width: 100%;
        padding: 0;
        border-bottom: 1px solid #3e4247
    }

    .footer__contacts p {
        width: 100%;
        height: auto
    }

    .footer__contacts a {
        margin-bottom: 26px
    }

    .footer__contacts ul li {
        height: 30px;
        font-size: 11px
    }

    .footer__contacts ul li.phone {
        font-size: 12px
    }

    .footer__bot {
        padding: 28px 0 100px
    }

    .footer__bot p {
        font-size: 12px
    }

    .footer__bot ul {
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-align: center;
        align-items: center
    }

    .footer__bot ul li a {
        padding: 0;
        border: none;
        margin-bottom: 10px;
        line-height: 2.45;
        font-size: 12px
    }

    .service-cards {
        padding: 37px 0
    }

    .industries {
        padding: 45px 15px
    }

    .industries__descr {
        padding: 0
    }

    .industries__descr h3 {
        font-size: 25px;
        text-align: center;
        max-width: 100%
    }

    .industries__descr h3.changed-heading {
        font-size: 22px
    }

    .industries__descr p {
        font-size: 16px
    }

    .industries__descr-text {
        text-align: center
    }

    .industries__descr-text p {
        display: none;
        margin-bottom: 0
    }

    .industries__descr-text p:first-child {
        display: block
    }

    .industries__descr-text+a {
        display: none
    }

    .industries__list>li>a {
        height: 34px;
        font-size: 16px;
        padding-left: 0
    }

    .industries__list>li>a .svg_wrap {
        margin-right: 20px
    }

    .industries__list>li>a svg {
        max-width: 25px
    }

    .industries__list--item__detail {
        padding: 0 15px
    }

    .case-studies {
        padding: 35px 15px
    }

    .case-studies__item {
        min-height: 60vw;
        padding: 35px 15px
    }

    .case-studies__item--no-image {
        margin-bottom: 30px
    }

    .case-studies__item-image {
        bottom: -50px;
        max-width: 60%;
        max-height: 30vw
    }

    .case-studies__item-content h4 {
        font-size: 18px
    }

    .case-studies__item-content p {
        display: none
    }

    .case-studies__item-links a {
        margin-right: 18px
    }

    .case-studies__item-links a+a,
    .case-studies__item-links a+a.no-border {
        padding-left: 18px
    }

    .news {
        padding: 35px 15px
    }

    .footprint {
        padding: 35px 15px 60px
    }

    .footprint .cards__item:nth-child(3) {
        margin-right: 1px
    }

    .cms-content {
        padding: 38px 15px
    }

    .cms-content h2 {
        font-size: 25px
    }

    .cms-content .intro {
        font-size: 18px;
        margin-bottom: 20px
    }

    .cms-content p {
        font-size: 16px
    }

    .cms-content h3 {
        font-size: 20px
    }

    .cms-content ol li {
        font-size: 16px
    }

    .cms-content ol li * {
        font-size: 16px;
        font-family: Roboto, sans-serif
    }

    .cms-content ol li:before {
        top: 2px
    }

    .quote-wrap {
        padding: 50px 15px 45px
    }

    .quote-wrap blockquote {
        font-size: 18px
    }

    .quote-wrap cite {
        font-size: 13px
    }

    .floated-image-inside img {
        float: none;
        max-width: 100%
    }

    .general-table {
        width: calc(300% - 30px);
        padding: 0 15px
    }

    .general-table tr td,
    .general-table tr th {
        margin-right: 15px
    }

    .general-table thead th {
        font-size: 13px
    }

    .slider {
        padding: 35px 25px 65px
    }

    .slider h3 {
        margin-bottom: 10px
    }

    .slider-wrap.swiper-container {
        padding-bottom: 0
    }

    .slider-control {
        height: 70px
    }

    .slider-control__item span {
        font-size: 13px;
        height: 60px;
        padding: 0 30px
    }

    .slider__item h4 {
        font-size: 23px
    }

    .awwards {
        padding: 90px 15px 100px
    }

    .stats {
        margin-top: -140px;
        padding-left: 0;
        width: 100vw
    }

    .stats-section .swiper-container {
        margin-bottom: 15px
    }

    .stats-item {
        width: 100%;
        height: 235px;
        margin: 0
    }

    .stats-item__bg {
        width: 235px;
        height: calc(100% - 143px);
        left: 50%;
        border-radius: 0;
        top: auto;
        bottom: 0;
        background: transparent;
        transform: translateX(-50%);
        overflow: hidden
    }

    .stats-item__bg:before {
        content: "";
        width: 100%;
        height: 235px;
        position: absolute;
        left: 0;
        bottom: 0;
        border-radius: 50%;
        background: #222
    }

    .stats-item__cont {
        width: 215px;
        left: 50%;
        transform: translateX(-50%)
    }

    .stats-item__cont .num {
        font-size: 80px
    }

    .stats-item__cont .num .symbol {
        font-size: 30px
    }

    .stats-item__cont .desc {
        font-size: 16px;
        padding: 0 35px
    }

    .stats-wrap {
        padding-top: 180px
    }

    .stats-wrap:before {
        height: 180px;
        background-size: cover
    }

    .stats-descr {
        padding: 35px 0 25px
    }

    .stats-descr h3 {
        font-size: 25px
    }

    .stats-descr p {
        font-size: 16px
    }

    .stats-descr p.intro {
        font-size: 18px;
        margin-bottom: 15px
    }

    .story {
        padding: 35px 15px 0
    }

    .story-years__item {
        width: 100px
    }

    .story-years__item.swiper-pagination-bullet-active {
        min-width: 100px
    }

    .story-years__item.closest {
        min-width: 120px
    }

    .story-slider {
        padding-top: 150px;
        padding-bottom: 15px;
        margin-top: -120px;
        z-index: 5
    }

    .story-slider:before {
        margin-top: 120px;
        height: calc(100% - 120px)
    }

    .story-slider .swiper-button-next,
    .story-slider .swiper-button-prev {
        top: 35px !important
    }

    .story-slider__item {
        display: block
    }

    .story-slider__item-cont,
    .story-slider__item-img {
        width: 100%
    }

    .story-slider__item.swiper-slide {
        padding: 15px
    }

    .story-slider__item-cont p {
        font-size: 16px
    }

    .tabs-leadership {
        min-height: 500px
    }

    .tabs-leadership+.stats-wrap .stats-item__bg {
        height: calc(100% - 140px)
    }

    .tabs-leadership+.stats-wrap .swiper-button-next,
    .tabs-leadership+.stats-wrap .swiper-button-prev {
        border-color: #fff
    }

    .tabs-leadership .tabs__item .general-cards {
        padding: 0
    }

    .tabs-leadership .tabs__item .general-cards__wrap {
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-align: center;
        align-items: center
    }

    .tabs-leadership .tabs__item .general-cards__item {
        margin-right: 0;
        max-height: 493px;
        height: 493px;
        -ms-flex-preferred-size: 493px !important;
        flex-basis: 493px !important;
        max-width: 100%
    }

    .banner {
        height: 300px
    }

    .banner__content {
        padding: 0 15px
    }

    .banner__content br {
        display: none
    }

    .banner__content h1 {
        font-size: 23px;
        line-height: 25px;
        margin-bottom: 7px
    }

    .banner__content p {
        font-size: 16px;
        line-height: 23px;
        margin-bottom: 20px
    }

    .banner-with-image .banner__content {
        padding: 15px 25px 50px
    }

    .banner-with-image h1 {
        -ms-flex-positive: 0;
        flex-grow: 0
    }

    .banner__breadcrumbs {
        display: none
    }

    .block-heading p {
        font-size: 16px;
        line-height: 23px;
        margin-bottom: 25px
    }

    .block-heading .mobile-heading {
        display: block
    }

    .video-bg-heading {
        display: none
    }

    .video-bg-heading .svg-text-mask .h2-svg-mask {
        font-size: 25px
    }

    .cards {
        padding: 0 15px
    }

    .cards__item {
        min-width: 100%;
        height: 55vw
    }

    .cards__item,
    .cards__item:first-child,
    .cards__item:nth-child(2n),
    .cards__item:nth-child(odd) {
        -ms-flex: 1 0 100%;
        flex: 1 0 100%;
        margin: 0 0 2px
    }

    .cards__item img {
        width: 100%;
        height: auto
    }

    .cards__item .animated-strip-bot {
        bottom: calc(100vw*.1 + 15px)
    }

    .cards__item:hover .animated-strip-bot {
        transform: translateY(calc(100vw*.1 + 23px))
    }

    .cards__item:hover .animated-strip-top {
        transform: translateY(calc(100vw*.1 + 19px))
    }

    .cards__item-content {
        padding: 10vw 38px;
        transform: translateY(31vw)
    }

    .cards__item-content>a {
        bottom: 20px
    }

    .cards__item-content h3 {
        font-size: 23px
    }

    .cards__item-content ul {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .cards__item-content ul li {
        width: 50%;
        padding-right: 10px
    }

    .select {
        width: 100%
    }

    .select-group {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .select-wrap {
        width: 100%;
        margin-right: 0;
        margin-bottom: 13px
    }

    .select-wrap label {
        padding: 0 20px
    }

    .select-styled {
        width: 100%
    }

    .categories-filter {
        display: none
    }

    .mobile-select-wrap {
        display: block
    }

    .general-cards {
        padding: 35px 15px
    }

    .general-cards.cards-grid__wrap h3 {
        font-size: 25px;
        margin-bottom: 20px
    }

    .general-cards__wrap.cards-grid li {
        min-width: 49%;
        margin-right: 1px;
        height: 150px
    }

    .general-cards__wrap.cards-grid li .general-cards__item-cont h4 {
        transform: translateY(0)
    }

    .general-cards__wrap.cards-grid li .general-cards__item-cont a {
        padding: 10px 40px
    }

    .general-cards__wrap.cards-grid li:nth-child(2n) {
        margin-right: 0
    }

    .general-cards__wrap.cards-grid li:nth-child(3),
    .general-cards__wrap.cards-grid li:nth-child(5) {
        margin-right: 1px
    }

    .general-cards__wrap.cards-grid a {
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        padding: 40px;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: end;
        align-items: flex-end
    }

    .general-cards__wrap.cards-grid a:after {
        line-height: 35px
    }

    .intro-heading {
        padding: 35px 25px
    }

    .intro-heading p {
        font-size: 18px
    }

    .tabs-heading-wrap {
        padding: 35px 15px 90px
    }

    .tabs-control {
        width: calc(100% - 15px*2);
        left: 15px
    }

    .tabs__item.swiper-slide {
        padding: 35px 0
    }

    .share:nth-child(3) .share-sharings {
        -ms-flex-direction: row;
        flex-direction: row
    }

    .two-sides {
        padding: 50px 15px
    }

    .two-sides>div {
        padding-bottom: 15px
    }

    .leader-popup {
        max-width: calc(100% - 2*15px);
        width: 100%;
        height: calc(100% - 2*15px);
        padding: 15px;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        left: 15px;
        top: 15px
    }

    .leader-popup-img {
        left: 15px;
        top: 15px;
        display: none
    }

    .leader-popup-img.scaled {
        left: 15px;
        top: 15px;
        transform: translateY(0) scale(.4);
        transform-origin: top left
    }

    .leader-popup__heading {
        left: 0;
        top: 15px;
        margin-top: 0;
        font-size: 23px;
        position: relative;
        float: left;
        -ms-flex-positive: 1;
        flex-grow: 1;
        -ms-flex-negative: 0;
        flex-shrink: 0
    }

    .leader-popup__heading span.position {
        font-size: 10px
    }

    .leader-popup__cont {
        margin-left: 0;
        width: 100%;
        position: relative;
        float: left;
        padding: 15px 0 0;
        margin-top: 25px;
        border-left: none;
        border-top: 3px solid #e1e3e7
    }

    .leader-popup .bg-white {
        transform: translate3d(100%, 0, 0) scale(1)
    }

    .contact-us form {
        padding: 15px 0
    }

    .contact-us form .form-item .required-det {
        right: 10px;
        transform: scale(.6)
    }

    .pagination a,
    .pagination span {
        padding: 0 5px;
        font-size: 15px
    }

    .case-banner h1 {
        max-width: 100%
    }

    .case-next {
        width: 100%;
        padding: 0;
        left: 0
    }

    .case-next__content {
        padding: 120px 15px 60px;
        -ms-flex-pack: start;
        justify-content: flex-start
    }

    .case-next__content-image {
        max-height: 50%;
        max-width: 70%;
        bottom: -20px
    }

    .case-next__content h4 {
        font-size: 20px
    }

    .case-next__heading {
        width: calc(100% - 2*15px);
        height: 145px
    }

    .case-next__heading h4 {
        font-size: 20px
    }

    .case-next__heading h4 p {
        font-size: 14px
    }

    .case-next__heading .link-arrow {
        font-size: 13px
    }

    .case-related {
        padding: 90px 15px 100px
    }

    .case-related li h3 {
        font-size: 23px
    }

    .case-landing-bottom {
        padding: 40px 15px
    }

    .case-landing-bottom>p {
        font-size: 16px
    }

    .insights__item-image-wrap a {
        max-height: 208px
    }

    .insights__item-image-wrap img {
        max-height: 100%
    }

    .insights__item-content-link h4 {
        font-size: 16px
    }

    .locations {
        padding-bottom: 0
    }

    .locations .general-cards__item {
        margin-bottom: 300px
    }

    .locations .general-cards__item:nth-child(2) {
        margin-bottom: 100px
    }

    .locations .general-cards__item:nth-child(3) {
        margin-bottom: 150px
    }

    .locations .general-cards__item:nth-child(4) {
        margin-bottom: 100px
    }

    .locations .general-cards__item-cont {
        transform: translateY(100%) translateY(-70px) !important
    }

    .locations .general-cards__item:hover .general-cards__item-cont {
        transform: translateY(0) !important
    }

    .locations__cities-item {
        max-width: 100%;
        -ms-flex: 1 0 100%;
        flex: 1 0 100%;
        margin-top: 120px;
        height: 300px;
        padding: 20px 0 20px 20px
    }

    .locations__cities-item:nth-child(2) {
        height: 100px
    }

    .locations__cities-item:nth-child(3) {
        height: 150px
    }

    .locations__cities-item:nth-child(4) {
        height: 100px
    }

    .locations__cities-item ul li {
        width: 50%
    }

    .render-loc .heading {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .render-loc .heading h1 {
        width: 100%;
        font-size: 27px;
        margin-bottom: 20px;
        text-align: center
    }

    .render-loc__subtitle-wrap {
        -ms-flex-pack: start;
        justify-content: flex-start
    }

    .render-loc__subtitle-wrap a.-bigger {
        font-size: 13px
    }

    .render-loc .locations__cities-item ul {
        -ms-flex-direction: row;
        flex-direction: row
    }

    .render-loc .locations__cities-item ul li {
        width: 50%;
        height: 30px
    }

    .render-loc .locations__cities-item ul li a {
        font-size: 13px
    }

    .render-loc.render-city .heading {
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse
    }

    .render-loc.render-city .heading h2 {
        width: 100%;
        font-size: 27px;
        margin-bottom: 20px;
        text-align: center
    }

    .render-loc.render-city .heading h1 {
        font-size: 18px;
        width: auto;
        -ms-flex-positive: 0;
        flex-grow: 0
    }

    .render-loc.render-city .heading a.link-arrow {
        margin-top: -1px
    }

    .render-loc.render-city .detail__item {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        margin-right: 0;
        border-right: none;
        border-bottom: 3px solid #e1e3e7;
        padding-bottom: 20px
    }

    .render-loc.render-city .detail__item:nth-child(2n) {
        margin-right: 0
    }

    .digital-engagement .case-studies {
        padding-bottom: 60px
    }

    .careers__listing {
        padding: 20px 15px 0
    }

    .careers__listing .insights__item-content {
        padding: 20px 15px 15px 20px
    }

    .careers__listing .insights__item-content .location {
        margin-bottom: 5px
    }

    .contact-us {
        padding: 25px 15px 35px
    }

    .search-page {
        padding: 35px 25px
    }

    .search-page ul li {
        font-size: 30px;
        margin-bottom: 20px
    }

    .search-page ul li a {
        font-size: 23px
    }

    .leadership-page__control .tabs-control__item.active:after {
        width: calc(100% - 15px*2);
        left: 15px
    }

    .leadership-page__container .tabs__item .general-cards__item {
        max-width: 100% !important
    }

    .leadership-cta__item {
        width: 50%;
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%
    }
}

@media screen and (max-width:600px) {
    .dirty-hack {
        display: block
    }

    .swiper-container .swiper-pagination {
        bottom: 0
    }

    .news .swiper-container .swiper-pagination {
        bottom: -29px
    }

    .footprint .cards {
        height: 120vw
    }

    .footprint .cards__item,
    .footprint .cards__item:first-child,
    .footprint .cards__item:nth-child(2) {
        height: 30vw;
        width: calc(100% - 1px);
        min-width: calc(100% - 1px);
        max-width: calc(100% - 1px)
    }

    .footprint .cards__item:first-child,
    .footprint .cards__item:nth-child(2) {
        margin-right: 1px
    }

    .footprint .cards__item-content {
        transform: translateY(0)
    }

    .footprint .cards__item-content h3 {
        transform: translateY(10vw)
    }

    .slider .swiper-button-next,
    .slider .swiper-button-prev {
        width: 20px;
        height: 20px;
        top: 0;
        margin-top: 19px
    }

    .slider-wrap.swiper-container {
        padding-top: 100px;
        margin-top: -150px;
        overflow: hidden
    }

    .slider-control {
        -ms-flex-pack: start;
        justify-content: flex-start;
        transform: translateX(0);
        transition: all .25s ease
    }

    .slider-control__item {
        min-width: 100%
    }

    .slider-control__item:first-child span,
    .slider-control__item span {
        border: none
    }

    .slider__item p {
        max-width: 100%;
        font-size: 16px
    }

    .cards__item-content ul li {
        height: 19px
    }

    .cards__item-content ul li svg {
        width: 14px
    }

    .cards__item-content ul a {
        font-size: 10px
    }

    .general-cards__wrap.cards-grid li .general-cards__item-cont h4 {
        font-size: 20px;
        letter-spacing: -.5px
    }

    .general-cards__item {
        min-width: 100%;
        -ms-flex: 1 1 100%;
        flex: 1 1 100%;
        margin-right: 0;
        height: 120px
    }

    .general-cards__item:hover .general-cards__item-cont h4 .top-animated-strip {
        height: calc(100% + 28px);
        top: -32px
    }

    .general-cards__item-cont h4 {
        transform: translateY(-70%)
    }

    .general-cards__item-cont p {
        display: none
    }

    .tabs__container {
        padding-top: 86px;
        margin-top: -86px
    }

    .tabs__container .swiper-button-next,
    .tabs__container .swiper-button-prev {
        display: block
    }

    .tabs-control {
        -ms-flex-pack: start;
        justify-content: flex-start;
        transform: translateX(0);
        transition: all .3s ease
    }

    .tabs-control__item {
        -ms-flex: 1 0 100%;
        flex: 1 0 100%;
        width: 100%
    }

    .tabs-control__item span {
        font-size: 16px;
        padding: 0 70px
    }

    .relations .general-cards__item {
        height: 120px
    }

    .relations .general-cards__item:before {
        background: linear-gradient(0deg, rgba(0, 0, 0, .9), rgba(0, 0, 0, .9) 50%, transparent 80%, transparent)
    }

    .relations .general-cards__item .general-cards__item-cont {
        transform: translateY(100%) translateY(-93px)
    }

    .relations .general-cards__item .general-cards__item-cont h4 {
        transform: translateY(0)
    }

    .relations .general-cards__item:hover .general-cards__item-cont {
        transform: translateY(-35px)
    }

    .insights__item {
        width: 100%;
        margin-right: 0;
        margin-bottom: 40px
    }

    .insights__item:nth-child(3n) {
        margin-right: 0
    }

    .careers__listing .insights__item-image-wrap {
        display: none
    }

    .careers__listing .insights__item-content {
        width: 100%;
        height: 190px
    }

    .leadership-cta__wrap {
        -ms-flex-direction: column;
        flex-direction: column;
        padding-bottom: 60px;
        margin-top: 0
    }

    .leadership-cta__wrap .tabs-control__item {
        border-left: 1px solid #3f4248
    }

    .leadership-cta__item {
        margin-bottom: 5px;
        -ms-flex-preferred-size: 80px;
        flex-basis: 80px
    }
}

@media screen and (max-width:450px) {
    .dirty-hack {
        display: block
    }

    .news__item-wrap:first-child,
    .news__item-wrap:nth-child(2),
    .news__item-wrap:nth-child(3) {
        width: 100%;
        margin-right: 0;
        height: 100vw
    }

    .news__item-wrap:first-child .news__item,
    .news__item-wrap:nth-child(2) .news__item,
    .news__item-wrap:nth-child(3) .news__item {
        -ms-flex-direction: column;
        flex-direction: column
    }

    .news__item-wrap:first-child .news__item-cont,
    .news__item-wrap:first-child .news__item-img,
    .news__item-wrap:nth-child(2) .news__item-cont,
    .news__item-wrap:nth-child(2) .news__item-img,
    .news__item-wrap:nth-child(3) .news__item-cont,
    .news__item-wrap:nth-child(3) .news__item-img {
        width: 100%
    }

    .news__item-wrap:first-child .news__item-img,
    .news__item-wrap:nth-child(2) .news__item-img,
    .news__item-wrap:nth-child(3) .news__item-img {
        height: 50vw
    }

    .news__item-wrap:first-child .news__item-cont,
    .news__item-wrap:nth-child(2) .news__item-cont,
    .news__item-wrap:nth-child(3) .news__item-cont {
        -ms-flex-positive: 1;
        flex-grow: 1
    }

    .cards__item-content {
        transform: translateY(0)
    }

    .cards__item-content>a {
        position: absolute;
        display: block;
        text-indent: -9999px;
        width: 100%;
        height: 100%;
        z-index: 5;
        top: 0;
        left: 0
    }

    .cards__item-content h3 {
        transform: translateY(31vw)
    }

    .cards__item-content ul {
        display: none
    }

    .general-cards.cards-grid__wrap {
        padding-left: 15px;
        padding-right: 15px
    }

    .general-cards__wrap.cards-grid li {
        min-width: 100%;
        width: 100%;
        -ms-flex: 1 0 auto;
        flex: 1 0 auto;
        height: 100px;
        margin-right: 0
    }

    .general-cards__wrap.cards-grid li:nth-child(3),
    .general-cards__wrap.cards-grid li:nth-child(5) {
        margin-right: 0
    }

    .general-cards__wrap.cards-grid li:nth-child(4),
    .general-cards__wrap.cards-grid li:nth-child(5),
    .general-cards__wrap.cards-grid li:nth-child(9),
    .general-cards__wrap.cards-grid li:nth-child(10) {
        min-width: 100%;
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        margin-right: 0
    }

    .general-cards__wrap.cards-grid li .general-cards__item-cont {
        transform: translateY(0)
    }

    .general-cards__wrap.cards-grid li .general-cards__item-cont h4 {
        transform: translateY(30%);
        font-size: 23px;
        letter-spacing: 0
    }

    .general-cards__wrap.cards-grid li .general-cards__item-cont a {
        text-indent: -9999px
    }

    .general-cards__item-cont h4 {
        font-size: 17px
    }

    .share .link-share {
        display: none
    }

    .share .share {
        width: 100%;
        -ms-flex-positive: 1;
        flex-grow: 1;
        -ms-flex-pack: center;
        justify-content: center
    }

    .share .share-sharings {
        position: relative;
        left: 0
    }

    .share .share-sharings a.share-link {
        opacity: 1;
        transform: translateX(0);
        visibility: visible
    }

    .share:nth-child(2) {
        margin-left: 10px
    }

    .share:nth-child(3) {
        margin-left: 0
    }

    .share:nth-child(3) .share-link:first-child {
        padding-left: 0
    }

    .contact-us form .form-item {
        margin-bottom: 10px
    }

    .contact-us form .form-item .select-styled,
    .contact-us form .form-item__textarea textarea,
    .contact-us form .form-item input {
        font-size: 14px
    }

    .contact-us form .form-item__recaptcha {
        display: block;
        height: auto
    }

    .contact-us form .form-item__recaptcha>div:first-of-type {
        height: 53px;
        margin-top: 10px
    }

    .case-related .news__item {
        -ms-flex-direction: column;
        flex-direction: column;
        height: 500px
    }

    .case-related .news__item-img {
        width: 100%
    }

    .case-related .news__item-cont {
        width: 100%;
        height: 200px
    }

    .insights__item-content {
        min-height: 200px;
        height: auto;
        padding-bottom: 5px
    }

    .insights__item-content-link {
        height: 80px
    }

    .insights__item-links {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .insights__item-links a {
        margin-bottom: 5px
    }

    .contact-us h1 {
        font-size: 27px
    }

    .contact-us>p {
        font-size: 16px;
        margin-bottom: 20px
    }
}

@media screen and (max-width:360px) {
    .dirty-hack {
        display: block
    }

    .footer__company ul li a {
        font-size: 12px
    }

    .news__item-wrap:first-child,
    .news__item-wrap:nth-child(2),
    .news__item-wrap:nth-child(3) {
        height: 120vw
    }

    .news__item-wrap:first-child .news__item,
    .news__item-wrap:nth-child(2) .news__item,
    .news__item-wrap:nth-child(3) .news__item {
        -ms-flex-direction: column;
        flex-direction: column
    }

    .news__item-wrap:first-child .news__item-cont,
    .news__item-wrap:first-child .news__item-img,
    .news__item-wrap:nth-child(2) .news__item-cont,
    .news__item-wrap:nth-child(2) .news__item-img,
    .news__item-wrap:nth-child(3) .news__item-cont,
    .news__item-wrap:nth-child(3) .news__item-img {
        width: 100%
    }

    .news__item-wrap:first-child .news__item-img,
    .news__item-wrap:nth-child(2) .news__item-img,
    .news__item-wrap:nth-child(3) .news__item-img {
        height: 60vw
    }

    .news .swiper-container {
        height: 120vw
    }

    .story-years__item.closest {
        min-width: 100px
    }

    .tabs-control__item span {
        font-size: 13px
    }
}

@media print {
    * {
        -webkit-print-color-adjust: exact
    }

    *,
    :after,
    :before {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important
    }

    table {
        width: 100%;
        margin-bottom: 15px
    }

    table td {
        border: 1px solid #000;
        padding: 10px
    }

    a,
    a:visited {
        text-decoration: underline
    }

    abbr[title]:after {
        content: " ("attr(title) ")"
    }

    li {
        page-break-inside: avoid
    }

    a[href^="#"]:after,
    a[href^="javascript:"]:after {
        content: ""
    }

    blockquote,
    pre {
        border: 1px solid #999;
        page-break-inside: avoid
    }

    thead {
        display: table-header-group
    }

    img,
    tr {
        filter: url("data:image/svg+xml;utf8,&lt;svg xmlns='http://www.w3.org/2000/svg'&gt;&lt;filter id='grayscale'&gt;&lt;feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/&gt;&lt;/filter&gt;&lt;/svg&gt;#grayscale");
        filter: gray;
        -webkit-filter: grayscale(100%)
    }

    img {
        max-width: 100% !important
    }

    h2,
    h3,
    p {
        orphans: 3;
        widows: 3
    }

    h2,
    h3 {
        page-break-after: avoid
    }

    body,
    html {
        height: auto
    }

    body,
    button,
    input,
    select,
    textarea {
        font-size: 12pt
    }

    .h1,
    h1 {
        font-size: 26pt;
        line-height: 30pt
    }

    .h2,
    h2 {
        font-size: 22pt
    }

    .h3,
    h3 {
        font-size: 14.5pt
    }

    .h4,
    h4 {
        font-size: 12pt
    }

    p {
        font-size: 10.5pt
    }

    .header {
        margin-bottom: 15px
    }

    .header__main-nav,
    .header__top-nav {
        display: none
    }

    .header__logo {
        width: 180px;
        padding: 15px 0 20px
    }

    .header__logo:after {
        display: none
    }

    .header__logo svg *,
    .header__logo svg .logo__svg-arrow *,
    .logo__svg {
        fill: #000
    }

    .banner {
        height: auto;
        padding: 0
    }

    .banner__video.buffered {
        opacity: 0
    }

    .banner__breadcrumbs {
        margin-bottom: 30px
    }

    .banner__breadcrumbs span {
        line-height: 2
    }

    .banner__content h1 {
        line-height: 30pt;
        text-align: center;
        margin-bottom: 20px
    }

    .banner__content p {
        font-size: 15pt;
        width: 100%;
        text-align: center;
        line-height: 20pt;
        margin-bottom: 0
    }

    .tabs-leadership .tabs__item .general-cards__item h4 span.position {
        display: none
    }

    .tabs-leadership .tabs__item .general-cards__item h4 {
        display: inline-block
    }

    .leader-popup .bg-white {
        background: #fff !important
    }

    .leadership-page__container .tabs__item {
        font-size: 0
    }

    .tabs-leadership .tabs__item.swiper-slide {
        padding-bottom: 0;
        padding-top: 0
    }

    .tabs-leadership .tabs__item .general-cards {
        margin-bottom: 0
    }

    .leadership-page__container .tabs__item .general-cards__item {
        -ms-flex-preferred-size: 33.333% !important;
        flex-basis: 33.333% !important;
        max-width: 33.333% !important;
        min-width: 33.333% !important;
        display: inline-block;
        vertical-align: top;
        height: auto !important;
        border-bottom: 0;
        margin-right: 0 !important
    }

    .general-cards__item-cont,
    .general-cards__wrap.cards-grid .general-cards__item-cont {
        padding: 0;
        transform: none;
        position: absolute
    }

    .tabs-control {
        position: static;
        width: 100%
    }

    .video-bg-heading {
        display: none
    }

    .service-cards {
        page-break-before: auto !important;
        padding: 10px 0 0
    }

    .industries {
        padding: 22pt 18pt
    }

    .industries__list {
        border-color: #000
    }

    .industries__list li a {
        font-size: 16px
    }

    .industries__list li a svg,
    .industries__list li a svg *,
    .industries__list li a svg .airlines {
        fill: #000;
        stroke: #000
    }

    .industries__descr h3 {
        font-size: 22pt
    }

    .industries__descr p {
        font-size: 13.5pt;
        margin-bottom: 11pt
    }

    .industries__rel {
        padding-top: 14.5pt;
        margin-top: 14.5pt;
        padding-bottom: 14.5pt
    }

    .link-arrow {
        display: none
    }

    .news {
        padding: 0 18pt
    }

    .news__list {
        margin-bottom: 0
    }

    .news__item-cont {
        -ms-flex-pack: start;
        justify-content: flex-start;
        min-height: auto;
        padding: 15px
    }

    .news__item-cont h4 {
        font-size: 12pt;
        line-height: 1.5;
        font-weight: 400
    }

    .news h3 {
        margin-bottom: 15px
    }

    section>h3 {
        font-size: 20pt
    }

    section p {
        font-size: 16px
    }

    .case-studies {
        padding: 22pt 18pt
    }

    .case-studies p {
        font-size: 13.5pt
    }

    .case-studies__item {
        min-height: auto;
        page-break-inside: avoid;
        margin-bottom: 14.5pt;
        padding: 14.5pt
    }

    .case-studies__item-image {
        display: none
    }

    .case-studies__item-content {
        max-width: 100%
    }

    .case-studies__item-links {
        display: none
    }

    .site-main>article+article,
    .site-main>div+div,
    .site-main>div+section,
    .site-main>section+div,
    .site-main>section+section {
        page-break-before: always;
        padding: 0;
        margin: 0
    }

    .block-heading p {
        width: auto;
        font-size: 12.5pt;
        line-height: 28px;
        margin-top: 20px
    }

    .cards {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        height: auto;
        padding-top: 50px
    }

    .cards,
    .cards__item {
        page-break-inside: avoid
    }

    .cards__item {
        width: 50%;
        height: 30vw;
        margin: 0 0 1px;
        -ms-flex: 1 1 calc(50% - 1px);
        flex: 1 1 calc(50% - 1px);
        border: 0
    }

    .cards__item-content {
        transform: translateY(70px)
    }

    .cards__item-content h3 {
        color: #fff !important;
        font-size: 14.5pt;
        padding: 7px;
        background: #000 !important;
        display: inline-block
    }

    .footer__company,
    .footer__contacts__col-2,
    .menu-footer-menu-container {
        display: none
    }

    .footprint .cards {
        height: auto
    }

    .footprint__map {
        page-break-inside: avoid;
        margin-top: 0;
        margin-bottom: 0
    }

    .footprint__clusters div {
        background: #000 !important
    }

    .footer {
        page-break-inside: avoid
    }

    .footer__container {
        padding: 0
    }

    .footer__connect {
        display: none
    }

    .footer__top {
        border-bottom: 0
    }

    .footer__mid {
        border-top: 1px solid #3e4247
    }

    .footer__social {
        display: block;
        padding-left: 0;
        padding-top: 0;
        padding-bottom: 20px
    }

    .footer__social li {
        margin-left: 0;
        margin-bottom: 14.5pt;
        text-align: center
    }

    .footer__social li:last-child {
        margin: 0
    }

    .footer__social li img {
        position: static;
        visibility: visible;
        opacity: 1;
        transform: none;
        max-width: 150px;
        max-height: 150px;
        margin-top: 30px
    }

    .footer__social a {
        display: block;
        font-size: 10.5pt
    }

    .footer__social a svg {
        display: block;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 11pt;
        width: 22pt;
        height: 22pt
    }

    .footer__social a:after {
        content: " <"attr(href) ">"
    }

    .footer__contacts {
        -ms-flex-pack: center;
        justify-content: center;
        padding: 10pt 0
    }

    .footer__contacts>div {
        padding: 0
    }

    .footer__contacts ul li {
        -ms-flex-pack: center;
        justify-content: center
    }

    .footer__bot,
    .footer__heading {
        text-align: center
    }

    .footer__bot {
        padding-bottom: 20px;
        padding-top: 20px
    }

    .two-columns {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .two-columns-item {
        width: 100%
    }

    .swiper-button-next,
    .swiper-button-prev {
        display: none
    }

    .slider__item p {
        max-width: 90%
    }

    .slider-control__item span {
        font-size: 10.5pt;
        font-weight: 400;
        height: auto
    }

    .tabs__item {
        display: block
    }

    .tabs__item-img {
        margin: auto
    }

    .tabs__item.swiper-slide {
        padding: 30pt 0
    }

    .tabs__item-desc {
        padding: 0
    }

    .banner-with-image img,
    .case-next {
        display: none
    }

    .banner-with-image .banner__content {
        padding-left: 18pt;
        padding-right: 18pt;
        position: static;
        transform: none
    }

    .banner-with-image h1 {
        width: 100%;
        font-size: 26pt
    }

    .stats-descr {
        padding: 30px 0
    }

    .swiper-slide-next {
        height: 0 !important
    }

    .story-years__item:after,
    .story-years__item:before {
        background: #e5e5e5 !important
    }

    .tabs-leadership {
        min-height: auto;
        padding: 30px 0 0
    }

    .tabs-leadership .tabs__item .general-cards__item {
        margin-bottom: 0
    }

    .general-cards__item {
        page-break-inside: avoid
    }

    .stats-descr h3 {
        font-size: 20pt
    }

    .stats-descr p.intro {
        font-size: 16pt
    }

    .case-banner h1 {
        max-width: 100%;
        text-align: center
    }

    .slider__item p {
        font-size: 18px
    }

    .careers__listing-wrap,
    .tabs-heading-wrap+div {
        page-break-before: auto !important
    }

    .general-cards__item-cont {
        display: block
    }

    .general-cards__item-cont h4 {
        color: #fff !important;
        font-size: 13.5pt;
        padding: 7px;
        background: #000 !important;
        display: inline-block
    }

    .general-cards__item-image {
        position: static;
        display: block
    }

    .general-cards__wrap {
        font-size: 0
    }

    .general-cards__item {
        width: 50%;
        display: inline-block;
        vertical-align: top;
        margin-right: 0
    }

    .general-cards__wrap {
        display: block
    }

    .general-cards {
        padding: 22pt 18pt
    }

    .insights__item-content-link h4 {
        font-size: 13.5pt;
        font-weight: 400;
        line-height: 16pt
    }

    .insights__item-links {
        display: none
    }

    .insights__item-content {
        height: auto
    }

    .select-group {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-pack: justify;
        justify-content: space-between
    }

    .select-wrap {
        margin: 7.5pt 0 0
    }

    .categories-filter li,
    .categories-filter li:first-child {
        border: 0
    }

    .insights-listing {
        padding-top: 10px;
        padding-bottom: 10px;
        page-break-before: auto
    }

    .insights-listing ul {
        display: block;
        font-size: 0
    }

    .insights__item {
        margin-bottom: 10px;
        width: calc(50% - 10px);
        display: inline-block;
        vertical-align: top
    }

    .insights__item-content-link {
        height: auto
    }

    .insights__item:nth-child(3n) {
        margin-right: 10px
    }

    .insights__item:nth-child(2n) {
        margin-right: 0
    }

    .select-group {
        margin-top: 0
    }

    .wpcf7-form {
        display: none
    }

    .tabs__item p {
        font-size: 13.5pt
    }

    div.page {
        display: block;
        height: auto
    }

    .general-cards__wrap.cards-grid li {
        -ms-flex-preferred-size: 33.333%;
        flex-basis: 33.333%;
        height: 200px;
        margin: 0
    }

    .banner__category {
        width: 100%;
        text-align: center
    }

    .stats {
        margin-top: 0;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .stats-wrap {
        padding-top: 0
    }

    .tabs-control__item.active span {
        background: #000 !important;
        color: #fff !important
    }

    .stats-wrap:before {
        display: none
    }

    .leadership-cta__item span {
        background: #000 !important;
        color: #fff !important
    }

    .leadership-cta__item {
        width: auto;
        -ms-flex: 1;
        flex: 1
    }

    .stats-item {
        page-break-inside: avoid
    }

    .slider__item,
    .tabs__item.swiper-slide-active {
        width: auto !important;
        max-width: 100%
    }

    .cms-content {
        page-break-before: auto !important;
        padding: 14.5pt 18pt
    }

    .cms-content h2 {
        font-size: 18pt;
        color: #000 !important
    }

    .cms-content p {
        font-size: 12pt
    }

    .cms-content p b,
    .cms-content p strong {
        font-size: 14pt
    }

    .cms-content .intro {
        text-align: left;
        font-size: 14pt
    }

    .cms-content ul {
        page-break-inside: auto
    }

    .map {
        display: none
    }

    .general-cards {
        page-break-after: always
    }

    .locations,
    .locations__breadcrumbs {
        page-break-before: auto !important
    }

    .locations__cities-item {
        -ms-flex: 1 1 50%;
        flex: 1 1 50%;
        max-width: 50%;
        height: auto
    }

    .locations__cities {
        padding-top: 14.5pt
    }

    .locations__cities-item ul li {
        width: auto
    }

    .locations__cities-item ul li a {
        white-space: nowrap
    }

    .cms-content ul li:before,
    .tabs__item-desc li:before {
        background: url(../images/list-arr.png) no-repeat !important
    }

    .case-related {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        position: static;
        width: 100%
    }

    .news__item-cont .category {
        position: static;
        margin-bottom: 11pt
    }

    .news__item-wrap:first-child .news__item {
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse
    }

    .case-studies>p {
        margin: 0 auto 20px
    }

    .case-studies__item-content p {
        margin-bottom: 15px
    }

    .news__item-wrap:first-child .news__item-img {
        height: 100%;
        width: 50%
    }

    .news__item-wrap {
        width: 100%
    }

    .news__item-wrap:first-child .news__item-cont {
        width: 50%
    }

    .news__item-wrap:first-child {
        height: 260px;
        margin-right: 0
    }

    .case-related li {
        width: 100%;
        margin: 0
    }

    .case-related .news__item-img {
        -ms-flex-pack: start;
        justify-content: flex-start
    }

    .related-wrap {
        margin-top: 0
    }

    .leader-popup {
        position: relative;
        max-width: 100%;
        height: auto;
        width: auto;
        transform: none !important
    }

    .tabs-heading-wrap {
        padding: 30px 25px
    }

    .leader-popup__cont {
        height: auto;
        width: auto;
        margin-left: 0;
        padding: 0;
        display: block
    }

    .leader-popup-img {
        position: relative;
        top: 0;
        left: 0
    }

    .section__wrap,
    .two-columns {
        display: block
    }

    .careers__listing {
        display: block;
        padding: 30px 15px
    }

    .careers__listing li {
        display: block;
        width: 100%;
        max-width: 100%
    }

    .white-select .select-styled:after {
        display: none
    }

    .select-styled {
        width: auto;
        max-width: 300px
    }

    .categories-filter li.selected {
        background: #000 !important;
        border-bottom: 0
    }

    .categories-filter li.selected a {
        color: #fff !important
    }

    .careers__listing .insights__item-image-wrap {
        float: left
    }

    .load-more--wrp,
    .load-more__wrap,
    .pagination {
        display: none
    }

    .slider-control__item.active {
        border-bottom: 0
    }

    .slider-control__item.active span {
        background: #000 !important;
        color: #fff !important
    }

    .render-loc.render-city .detail {
        display: block;
        font-size: 0
    }

    .render-loc.render-city .heading h2 {
        font-size: 40px
    }

    .leadership-page__container.swiper-container-autoheight .swiper-wrapper {
        height: auto !important
    }

    .locations__rendered-section .general-cards__wrap {
        display: -ms-flexbox;
        display: flex
    }

    .render-loc.render-city .detail__item {
        width: 50%;
        margin-right: 0;
        margin-bottom: 0;
        padding-bottom: 15px;
        max-width: 100%;
        border-right: 0;
        display: inline-block;
        vertical-align: top
    }

    .leader .general-cards__item-image {
        width: auto
    }

    .two-sides {
        padding: 30px 25px;
        display: block
    }

    .two-sides>p {
        max-width: 100%;
        padding-left: 0;
        width: 100%;
        margin-top: 20px
    }

    .two-sides>div {
        width: 100%
    }

    .banner-with-image img+img+.banner__content h1,
    .banner-with-image img+img+.banner__content p,
    .banner__content p {
        max-width: 100%
    }
}

@media screen and (min-width:1024px) {
    .menu-header-menu-container .menu:after {
        content: "";
        position: absolute;
        height: 3px;
        background: #ce1b2e;
        top: 100%;
        left: 50%;
        transform: translateX(-50%) scaleY(0);
        transform-origin: top;
        width: 200vw;
        z-index: 1;
        opacity: 0;
        transition: transform .2s ease, opacity .2s ease
    }

    .menu-header-menu-container .menu:hover:after {
        opacity: 1;
        transform: translateX(-50%) scale(1)
    }

    .menu-header-menu-container .menu>li:first-child>a:after {
        margin-left: -11px
    }

    .menu-header-menu-container .menu>li:last-child>a:after {
        margin-left: 11px
    }

    .menu-header-menu-container .menu>li>a {
        position: relative;
        height: calc(100% + 3px);
        padding-bottom: 3px;
        z-index: 2;
        overflow: hidden
    }

    .menu-header-menu-container .menu>li>a:after {
        content: "";
        position: absolute;
        bottom: 3px;
        left: 50%;
        width: 0;
        height: 0;
        transform: translate(-50%, 20px) rotate(-45deg);
        border-top: 5.5px solid #ce1b2e;
        border-right: 5.5px solid #ce1b2e;
        border-bottom: 5.5px solid transparent;
        border-left: 5.5px solid transparent;
        transition: transform .2s ease
    }

    .menu-header-menu-container .menu>li.active>a:after {
        transform: translate(-50%, 50%) rotate(-45deg)
    }

    .menu-header-menu-container .menu>li.active .menu__submenu {
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto
    }
}

@media screen and (max-width:535px) {
    .footer__company ul li {
        width: 50%
    }
}

@media screen and (max-width:1650px) {
    .footprint__map svg {
        height: 49.333vw
    }
}

@media screen and (max-width:410px) {
    .tabs-leadership .tabs__item .general-cards__item {
        max-height: calc((100vw - 30px)*1.2895 + 3px);
        -ms-flex-positive: 1;
        flex-grow: 1;
        -ms-flex-preferred-size: calc((100vw - 30px)*1.2895 + 3px) !important;
        flex-basis: calc((100vw - 30px)*1.2895 + 3px) !important
    }

    .general-cards__wrap.cards-grid .general-cards__item-cont {
        transform: translateY(0) !important
    }

    .general-cards__wrap.cards-grid .general-cards__item-cont h4 {
        transform: translateY(30%) !important
    }
}

@media screen and (min-device-width:1200px) and (max-device-width:1600px) and (-webkit-min-device-pixel-ratio:1) {
    .home .banner {
        height: 400px
    }
}

div.wpcf7 {
    margin: 0;
    padding: 0
}

div.wpcf7-response-output {
    margin: 2em .5em 1em;
    padding: .2em 1em
}

div.wpcf7 .screen-reader-response {
    position: absolute;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    width: 1px;
    margin: 0;
    padding: 0;
    border: 0
}

div.wpcf7-mail-sent-ok {
    border: 2px solid #398f14
}

div.wpcf7-mail-sent-ng {
    border: 2px solid red
}

div.wpcf7-spam-blocked {
    border: 2px solid #ffa500
}

div.wpcf7-validation-errors {
    border: 2px solid #f7e700
}

.wpcf7-form-control-wrap {
    position: relative
}

span.wpcf7-not-valid-tip {
    color: red;
    font-size: 1em;
    font-weight: normal;
    display: block
}

.use-floating-validation-tip span.wpcf7-not-valid-tip {
    position: absolute;
    top: 20%;
    left: 20%;
    z-index: 100;
    border: 1px solid red;
    background: #fff;
    padding: .2em .8em
}

span.wpcf7-list-item {
    display: inline-block;
    margin: 0 0 0 1em
}

span.wpcf7-list-item-label::before,
span.wpcf7-list-item-label::after {
    content: " "
}

.wpcf7-display-none {
    display: none
}

.ajax-loader {
    visibility: hidden;
    display: inline-block;
    background-image: url('../images/ajax-loader.gif');
    width: 16px;
    height: 16px;
    border: none;
    padding: 0;
    margin: 0 0 0 4px;
    vertical-align: middle
}

div.wpcf7 .ajax-loader.is-active {
    visibility: visible
}

div.wpcf7 div.ajax-error {
    display: none
}

div.wpcf7 .placeheld {
    color: #888
}

div.wpcf7 .wpcf7-recaptcha iframe {
    margin-bottom: 0
}

div.wpcf7 input[type="file"] {
    cursor: pointer
}

div.wpcf7 input[type="file"]:disabled {
    cursor: default
}

body,
button,
input,
select,
textarea,
.h1,
.h2,
h1,
h2,
.h3,
.h4,
h3,
h4,
p,
.menu__submenu-title,
.article-content h3,
.article-content ol li *,
.tabs-leadership .tabs__item .general-cards__item h4 span.position,
.cards__item-content h3,
.select-wrap label,
.select-styled,
.general-cards__item-cont h4,
.case-next__content h4,
.case-next__heading h4 p,
.render-loc.render-city .heading h1,
.careers__listing .insights__item-content-link h2,
.careers__listing .insights__item-content-link h4,
.case-studies>h3,
.case-studies>h2,
.case-related h3,
.case-studies__item-content h4,
.case-studies__item-content h3,
.case-studies__item-content .category,
.footer__bot ul li a,
.block-heading .mobile-heading {
    font-family: "Microsoft YaHei", Arial, Helvetica, sans-serif
}

.header__top-nav a,
.header__main-nav .menu>li>a,
.mobile-nav .menu-header-menu-container a,
.mobile-nav .header__lang-tog .header__lang-cur,
.mobile-nav .menu-header-top-menu-container a,
.mobile-nav>a,
.menu__submenu-list__item a,
.footer__connect form button,
.footer__company ul li a,
.footer__contacts ul li,
.footer__bot ul li a,
.industries__descr h3,
.industries__descr h2,
.industries__list>li>a,
.industries__list--item__detail .related-slider h4,
.industries__rel h4,
.case-studies>h3,
.case-studies>h2,
.case-studies__item-content .category,
.case-studies__item-content h4,
.case-studies__item-content h3,
.news>h3,
.news__item-cont .category,
.news__item-cont .date,
.footprint>h3,
.cms-content h2,
.quote-wrap cite,
.general-table thead th,
.slider h3,
.slider-control__item span,
.awwards h3,
.stats-descr h3,
.story h3,
.tabs-leadership .tabs__item .general-cards__item h4 span.position,
.link-arrow,
.load-more--wrp a,
.banner__content h1,
.banner__breadcrumbs,
.banner__category,
.block-heading .mobile-heading,
.video-bg-heading .svg-text-mask .h2-svg-mask,
.cards__item-content ul a,
.cards__item-content ul a .select-wrap label,
.select-styled,
.select-options li,
.categories-filter li a,
.general-cards h2,
.general-cards h3,
.intro-heading h3,
.tabs-heading-wrap h2,
.tabs-heading-wrap h3,
.tabs-control__item h3,
.tabs-control__item span,
.leader-popup__heading span.position,
.contact-us form .form-item input,
.contact-us form .form-item .select-styled,
.case-next__heading h4,
.case-related h3,
.case-landing-bottom h3,
.insights__item-content .category,
.insights__item-content .date,
.load-more__wrap a,
.locations__cities-item ul li a,
.render-loc .heading h1,
.render-loc.render-city .heading h2,
.render-loc.render-city .detail__mail,
.careers__listing .insights__item-content .location,
.contact-us h1 {
    text-transform: none
}

body,
html {
    height: auto;
    line-height: 1.25
}

div.page {
    overflow: hidden
}

main {
    z-index: 1
}

section {
    padding: 50px 25px
}

section.large-spacing {
    padding: 90px 25px 50px
}

.general-cards__item-cont p,
p {
    line-height: 1.5
}

.hide {
    display: none
}

.error-msg {
    color: #ce1b2e
}

.success-msg {
    color: #018124
}

.text-underline {
    border-bottom: 1px solid #666;
    display: inline-block;
    line-height: 1.5
}

#content .text-remark {
    color: #a1a1a1;
    margin-bottom: 0
}

#content .text-red {
    color: red
}

#content .text-red a,
#content .text-red a:hover {
    color: red
}

.select-options {
    max-height: 350px;
    overflow-y: auto
}

.link {
    color: #003a81
}

.link:hover {
    color: #ce1b2e
}

.link-arrow {
    font-weight: normal
}

.bgc-lightgray {
    background-color: #eaeaea
}

.text-text-left {
    text-align: left
}

.text-center {
    text-align: center
}

.line-block {
    display: inline-block
}

a.red-arrow {
    padding-left: 35px;
    color: #fff;
    display: block
}

a.red-arrow::before {
    content: url(/Img/list-arr.png);
    position: absolute;
    left: 0
}

a.red-arrow:hover {
    color: #ce1b2e
}

button.btn-default,
input[type=button].blue-default {
    font-size: 24px;
    padding: 12px 42px;
    background-color: rgba(8, 63, 135, 1);
    color: #fff;
    display: inline-block;
    border: none;
    cursor: pointer
}

button.btn-default:hover,
input[type=button].btn-default:hover {
    background-color: rgba(8, 63, 135, .95)
}

button[disabled=true],
button[disabled] {
    opacity: .5 !important;
    cursor: not-allowed !important
}

.btn-default.loading {
    color: transparent
}

.btn-default.loading:before {
    content: url(/Img/loading.png);
    position: absolute;
    -webkit-animation: icon-loading 2s linear infinite;
    -moz-animation: icon-loading 2s linear infinite;
    -ms-animation: icon-loading 2s linear infinite;
    animation: icon-loading 2s linear infinite
}

@keyframes icon-loading {
    from {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -ms-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@-moz-keyframes icon-loading {
    from {
        -moz-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -moz-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@-webkit-keyframes icon-loading {
    from {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

@-ms-keyframes icon-loading {
    from {
        -ms-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -ms-transform: rotate(360deg);
        transform: rotate(360deg)
    }
}

.register {
    max-width: 950px
}

.register form {
    width: 100%;
    padding: 25px 0;
    max-width: 522px;
    margin: 0 auto
}

#content .max-width {
    max-width: 1510px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 55px;
    padding-right: 55px
}

#content .max-width__800 {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto
}

#content .max-width .swiper-container {
    width: 100%;
    overflow: hidden
}

.swiper-container .swiper-pagination {
    bottom: 10px
}

@media screen and (max-width:767px) {
    #content .max-width {
        padding-left: 0;
        padding-right: 0
    }
}

.swiper-container {
    margin: 0
}

.case-studies {
    padding-bottom: 50px
}

.h3,
.h4,
h3,
h4 {
    font-size: 20px;
    font-weight: normal
}

.site-main .swiper-wrapper h1,
.site-main .banner-with-image h1 {
    font-size: 44px;
    font-weight: 500;
    line-height: 1.25
}

.site-main .swiper-wrapper p,
.site-main .banner__content p {
    font-weight: 300;
    font-size: 18px;
    line-height: 1.5
}

.site-main section h2,
.site-main h3,
.site-main .general-cards h2,
.site-main .case-section h2,
.site-main .general-cards h3 {
    font-size: 32px;
    font-weight: 500
}

.case-studies__item-content h3 {
    font-size: 20px;
    font-weight: 400;
    margin-bottom: 10px
}

.site-main section .news__item-cont h3 {
    font-size: 16px;
    font-weight: normal;
    margin-top: 10px;
    line-height: 1.5;
    text-align: left;
    white-space: inherit
}

section h2 {
    text-transform: uppercase;
    width: 100%;
    text-align: center;
    color: #003a81;
    margin-bottom: 25px
}

.site-main .case-related h3 {
    font-size: 32px
}

.site-main .general-cards h4,
.site-main .case-studies>p,
.site-main section>p {
    font-weight: 300;
    font-size: 20px;
    line-height: 1.5
}

.txt-center {
    text-align: center
}

.mt__50 {
    margin-top: 50px
}

.banner__content h1,
.banner__content p {
    text-align: left
}

.header__logo {
    padding: 42px 0 20px
}

@media screen and (max-width:1366px) {
    .header__logo {
        padding: 10px 0 0 0;
        width: 140px;
        height: 82px;
        text-align: left
    }
}

.header__top-nav {
    height: 30px;
    padding-top: 32px;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box
}

.header__main-nav .menu {
    width: calc(100% - 320px);
    justify-content: space-between
}

@media screen and (max-width:1366px) {
    .header__main-nav .menu {
        width: 100%
    }
}

@media screen and (min-width:1024px) {

    .header__email-tog::after,
    .header__lang-tog::after {
        content: "";
        position: absolute;
        top: 8px;
        right: 0;
        height: 34px;
        border-right: 1px solid #e1e3e7
    }
}

.header__lang-tog>a:first-child,
.header__email-tog>span,
.header__menu-tog>span {
    height: 34px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-left: 34px;
    padding-right: 15px;
    position: relative;
    margin-right: 12px;
    min-width: 110px;
    font-size: 13px;
    color: #444648
}

.header__email-tog>span,
.header__menu-tog>span {
    padding-left: 52px;
    padding-right: 24px
}

.header__email-tog {
    padding: 8px;
    margin-top: -8px;
    z-index: 4
}

.header__menu-tog {
    padding: 8px;
    margin-top: -8px;
    z-index: 3
}

.mobile-nav {
    top: 85px
}

.mobile-nav .header__email-tog,
.mobile-nav .header__menu-tog {
    height: 50px;
    position: relative
}

.header__menu-tog::after {
    border: 0
}

.header__email-tog:hover .header__menu-drop,
.header__menu-tog:hover .header__menu-drop {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto
}

.header__email-tog .header__menu-drop,
.header__menu-tog .header__menu-drop {
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 31px 8px 15px;
    margin: 0 -8px;
    z-index: 10;
    background: #fff;
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    transform: translateY(20px);
    transition: all .3s ease;
    height: auto
}

.header__menu-drop:before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    width: 100%;
    height: calc(100% + 39px);
    left: 0;
    top: -39px;
    border: 1px solid #e1e3e7;
    box-shadow: 0 3px 7px rgba(0, 0, 0, .26)
}

.header__menu-drop:after {
    content: "";
    position: absolute;
    top: 19px;
    left: 8px;
    width: calc(100% - 16px);
    display: block;
    height: 1px;
    background: #e1e3e7
}

.header__email-tog .header__menu-item,
.header__menu-tog .header__menu-item {
    height: 42px;
    padding: 0;
    position: relative;
    display: block;
    margin-bottom: 2px;
    border: none
}

.header__email-tog .header__menu-item a {
    display: -ms-flexbox;
    display: flex;
    height: 42px;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 8px;
    background: #fff;
    padding-left: 30px
}

.header__menu-tog .header__menu-item a {
    display: -ms-flexbox;
    display: flex;
    height: 42px;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 8px;
    background: #fff
}

.header__menu-drop .header__menu-item a:hover {
    color: #fff;
    background: #ce1b2e
}

.header__lang-tog>a:first-child:before,
.header__email-tog>span:before,
.header__menu-tog>span:before {
    content: "";
    position: absolute;
    left: 9px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 17px;
    height: 16px
}

.header__lang-tog>a:first-child:before {
    background: url(../images/globe.png) no-repeat
}

.header__email-tog>span:before {
    background: url(../images/email.png) no-repeat
}

.header__menu-tog>span:before {
    background: url(../images/jump.png) no-repeat
}

.header__lang-tog>a:first-child:after,
.header__email-tog>span:after,
.header__menu-tog>span:after {
    content: "▼";
    position: absolute;
    display: inline-block;
    color: #ce1b2e;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%) scaleX(2);
    -moz-transform: translateY(-50%) scaleX(2);
    -ms-transform: translateY(-50%) scaleX(2);
    -o-transform: translateY(-50%) scaleX(2);
    transform: translateY(-50%) scaleX(2);
    font-size: 6px
}

@media screen and (min-width:1024px) {
    .header__lang-tog>a:first-child {
        justify-content: center
    }
}

.mobile-nav .header__email-tog>span,
.mobile-nav .header__menu-tog>span {
    padding-left: 36px
}

@media screen and (max-width:767px) {
    .banner-with-image .banner__content {
        padding: 25px 55px 50px
    }
}

.mobile-nav .contact-us::after {
    content: "»";
    display: inline;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 20px;
    margin-left: 9px;
    position: relative;
    top: -2px
}

.contact-module {
    position: fixed;
    top: 50%;
    right: 0;
    margin-top: -36px;
    z-index: 150
}

.menu-opened .contact-module {
    display: none
}

.contact-module .contact-opener {
    display: block;
    max-width: 120px;
    min-width: 80px;
    -moz-word-break: break-word;
    -o-word-break: break-word;
    word-break: break-word;
    padding: 6px 5px 11px 6px;
    background: rgba(0, 143, 211, .8);
    -webkit-border-radius: 4px 0 0 4px;
    -moz-border-radius: 4px 0 0 4px;
    -ms-border-radius: 4px 0 0 4px;
    border-radius: 5px;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 16px;
    line-height: 1.17;
    cursor: pointer
}

.contact-module .contact-opener:hover {
    background: #003283;
    background: rgba(0, 143, 211, 1)
}

.contact-module .icon-talk svg {
    width: 32px;
    height: 32px
}

.contact-module .contact-opener em {
    font-style: normal;
    color: #fff;
    display: block
}

@media screen and (max-width:475px) {
    .contact-module {
        top: auto;
        bottom: 21%;
        margin: 0
    }

    .contact-module .contact-opener {
        min-width: auto;
        width: 42px;
        font-size: 12px;
        padding: 5px 6px 5px 6px;
        background: rgba(0, 143, 211, .8)
    }

    .contact-module .contact-opener .icon-talk {
        display: none
    }
}

.contact-module .contact-popup {
    margin: 0;
    overflow: hidden;
    position: absolute;
    top: -100px;
    right: 0;
    font-size: 16px;
    line-height: 1.47;
    font-family: inherit;
    z-index: 999;
    -webkit-transition: all .4s ease-out;
    -moz-transition: all .4s ease-out;
    -o-transition: all .4s ease-out;
    -ms-transition: all .4s ease-out;
    transition: all .4s ease-out;
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%);
    -webkit-border-radius: 4px 0 0 4px;
    -moz-border-radius: 4px 0 0 4px;
    -ms-border-radius: 4px 0 0 4px;
    border-radius: 4px 0 0 4px
}

.contact-module .contact-popup .contact-popup-content {
    background-color: #fafafa;
    background: -webkit-gradient(linear, left top, left bottom, from(#fafafa), to(#e9e9e9));
    background: -webkit-linear-gradient(top, #fafafa, #e9e9e9);
    background: -moz-linear-gradient(top, #fafafa, #e9e9e9);
    background: -ms-linear-gradient(top, #fafafa, #e9e9e9);
    background: -o-linear-gradient(top, #fafafa, #e9e9e9);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#fafafa, endColorstr=#e9e9e9, GradientType=0);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-border-radius: 4px 0 0 4px;
    -moz-border-radius: 4px 0 0 4px;
    -ms-border-radius: 4px 0 0 4px;
    border-radius: 4px 0 0 4px;
    padding: 26px 0 6px 16px;
    text-align: center;
    font-size: 12px;
    line-height: 17px;
    position: relative
}

.contact-module .contact-popup .contact-popup-content:before {
    -webkit-border-radius: 4px 0 0 4px;
    -moz-border-radius: 4px 0 0 4px;
    -ms-border-radius: 4px 0 0 4px;
    border-radius: 4px 0 0 4px;
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 16px;
    background: #008fd3
}

.contact-module .contact-popup .btn-close {
    background: none;
    border: 0;
    position: absolute;
    right: 6px;
    top: 6px;
    cursor: pointer
}

.contact-module .contact-set {
    padding: 0 20px 3px 20px;
    display: table;
    margin: 0 auto;
    table-layout: fixed
}

.contact-module .contact-set:after {
    content: '';
    display: block;
    clear: both
}

.contact-module .contact-set .col {
    padding: 0 10px 4px 10px;
    border-left: 1px solid #ddd;
    display: table-cell;
    max-width: 200px;
    min-width: 160px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}

.contact-module .contact-set .col:first-child {
    border-left: 0
}

.contact-module .contact-set .col:last-child {
    min-width: 190px
}

.contact-module .contact-set .col:last-child a:first-child {
    margin-bottom: 43px
}

.contact-module .contact-set a {
    text-decoration: none;
    display: block;
    margin-bottom: 20px
}

.contact-module .contact-set .title {
    display: block;
    font-size: 16px;
    line-height: 20px;
    color: #000;
    margin: 0 0 6px
}

.contact-module .contact-set .detail {
    color: #000;
    font-size: 12px
}

.contact-module .contact-set .detail:last-child {
    margin: 0
}

.contact-module .contact-set .detail p {
    margin: 0;
    font-size: 12px
}

.contact-module .contact-set .detail a {
    color: #000
}

.contact-module .contact-set .detail a:hover {
    color: #2896ef
}

@media screen and (min-width:480px) {

    .contact-module .contact-phone,
    .mapTel {
        pointer-events: none
    }
}

@media screen and (max-width:475px) {
    .contact-module .contact-popup {
        top: auto;
        bottom: -60px
    }

    .contact-module .contact-popup .contact-popup-content {
        padding: 10px 0 6px 16px
    }

    .contact-module .contact-popup .btn-close {
        display: none
    }

    .contact-module .contact-set {
        padding: 0 10px 3px 10px
    }

    .contact-module .contact-set a {
        padding: 10px;
        border-top: 1px solid #ddd;
        margin-bottom: 0
    }

    .contact-module .contact-set a:first-child {
        padding-bottom: 10px
    }

    .contact-module .contact-set .col:last-child a:first-child {
        margin-bottom: 0
    }

    .contact-module .contact-set .col:first-child a:first-child {
        border: 0
    }

    .contact-module .contact-set .col:last-child {
        min-width: 140px
    }

    .contact-module .contact-set .col {
        padding: 0;
        width: 140px;
        display: block;
        border: 0
    }

    .contact-module .contact-set .col {
        min-width: 140px
    }

    .contact-module .contact-set .title {
        margin-bottom: 6px
    }
}

#top {
    display: none;
    position: fixed;
    background-color: rgba(0, 143, 211, .8);
    bottom: 155px;
    right: 0;
    cursor: pointer;
    z-index: 1002;
    -ms-border-radius: 5px;
    border-radius: 5px;
    font-size: 16px;
    color: #fff;
    text-align: center;
    max-width: 120px;
    min-width: 80px;
    padding: 6px 5px 11px 6px;
    -moz-word-break: break-word;
    -o-word-break: break-word;
    word-break: break-word;
    line-height: 1.17
}

#top .icon-top {
    display: block
}

#top:hover {
    background-color: rgba(0, 143, 211, 1)
}

@media screen and (max-width:475px) {
    #top {
        width: 40px;
        height: 40px;
        right: 0;
        font-size: 12px;
        padding-top: 8px;
        padding: 5px 6px 5px 6px;
        min-width: auto
    }

    #top .icon-top {
        display: none
    }
}

.article-content {
    width: 100%;
    max-width: 830px;
    padding: 90px 25px;
    margin: 0 auto
}

.article-content .case-landing-bottom {
    min-width: 100%;
    max-width: 1400px;
    width: 100vw;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%)
}

.article-content .bg-black {
    background-color: #000;
    color: #fff
}

.article-content h1 {
    font-size: 27px;
    font-weight: 500;
    text-align: center;
    margin-bottom: 2.5em
}

.article-content h2 {
    text-transform: uppercase;
    color: #003a81;
    width: 100%;
    text-align: center;
    margin: 50px 0 30px 0;
    font-size: 20px;
    line-height: 2.5em
}

.article-content h3 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 1.25em
}

.article-content video {
    width: 100%;
    height: auto
}

.article-content img {
    max-width: 100% !important;
    height: auto !important
}

.article-content .intro {
    width: 100%;
    text-align: center;
    font-size: 27px;
    line-height: 1.25;
    margin-bottom: 37px
}

.article-content p,
.article-content ul,
.article-content ol {
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 8px
}

.article-content p b,
.article-content p strong {
    font-weight: 700
}

.article-content p em {
    font-style: italic
}

.article-content a {
    text-decoration: underline;
    color: #003a81;
    font-size: 12px
}

.article-content a:hover {
    text-decoration: none;
    color: #ce1b2e
}

.article-content a.link-arrow {
    color: #fff;
    text-decoration: none
}

.article-content a.link-arrow:hover {
    color: #ce1b2e
}

.article-content ol li {
    counter-increment: a;
    padding-left: 14px;
    position: relative;
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 15px
}

.article-content ol li * {
    font-size: 14px
}

.article-content ol li[value]:before {
    content: attr(value) "."
}

.article-content ol li:before {
    content: counter(a) ".";
    position: absolute;
    left: 0;
    top: 0;
    color: #222;
    display: inline-block;
    font-size: 15px;
    font-weight: normal
}

.article-content ul li {
    color: #222;
    font-size: 14px;
    font-weight: normal;
    padding-left: 0;
    position: relative;
    line-height: 1.4;
    margin-bottom: 4px;
    list-style: disc inside
}

.article-content ul li:before {
    content: "";
    width: 20px;
    height: 7px;
    position: absolute;
    left: 0;
    top: 8px;
    background: none
}

.article-content ul.red-arrow li {
    list-style: none;
    padding-left: 35px
}

.article-content ul.red-arrow li:before {
    background: url(../fonts/7fbe11b166f445e3ad81b0e74aae97ae.woff)
}

.article-share .twitter {
    background-image: url(../images/twitter.ashx)
}

.article-share .weixin {
    background-image: url(../images/wechat.ashx)
}

.article-share .weibo {
    background-image: url(../images/weibo.ashx)
}

.article-share .linkedin {
    background-image: url(../images/linkedin.ashx)
}

@media screen and (max-width:900px) {
    .article-content .article-share .hoverImage img {
        -webkit-transform: translateX(-128px) translateY(-65%);
        -moz-transform: translateX(-128px) translateY(-65%);
        -ms-transform: translateX(-128px) translateY(-65%);
        -o-transform: translateX(-128px) translateY(-65%);
        transform: translateX(-128px) translateY(-65%)
    }
}

@media screen and (max-width:425px) {
    .article-share a {
        margin: 0 6px
    }
}

@media screen and (max-width:400px) {
    .article-share .share-title {
        width: 100%;
        padding-left: 10px
    }
}

.form-item.form-item__select.expend {
    z-index: 20
}

.footer__top .footer__container {
    align-items: center;
    justify-content: center
}

.footer__top .footer__container .footer-share__title {
    flex-grow: 0;
    font-weight: bold;
    white-space: nowrap
}

.footer__top .footer__container .footer__social {
    width: auto;
    flex-grow: 0;
    padding: 12px;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.footer__top .footer__container .footer__social li {
    margin-left: 22px
}

@media screen and (max-width:480px) {
    .footer__top .footer__container .footer__social li {
        margin-left: 10px
    }
}

.footer__top .footer__container .footer__social li:first-child {
    margin: 0
}

.footer__top .footer__container .footer__social li a img {
    width: 47px;
    height: 47px;
    position: static;
    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
    visibility: visibility;
    opacity: 1
}

.footer__social .hoverImage img {
    left: 0;
    right: auto;
    -webkit-transform: translateY(20px) translateX(0);
    -moz-transform: translateY(20px) translateX(0);
    -ms-transform: translateY(20px) translateX(0);
    -o-transform: translateY(20px) translateX(0);
    transform: translateY(20px) translateX(0)
}

.footer__mid .footer__container .footer__company,
.footer__mid .footer__container .footer__location,
.footer__mid .footer__container .footer__3col {
    width: calc(100%/3);
    flex-grow: 1;
    padding: 25px
}

.footer__mid .footer__container .footer__location {
    border-right: 1px solid #3e4247
}

.footer__heading {
    color: #fff;
    font-weight: normal;
    font-size: 22px
}

.footer__company ul {
    overflow: hidden
}

.footer__company ul li,
.footer__location ul li,
.footer__generalinquiries ul li,
.footer__friendship ul li {
    height: auto;
    min-width: 50%;
    padding: 11px 4px;
    display: inline-flex
}

.footer__company ul li a,
.footer__location ul li a,
.footer__generalinquiries ul li a,
.footer__friendship ul li a {
    color: #bdbcbc;
    font-weight: normal;
    font-size: 13px
}

.footer__company ul li a:hover,
.footer__location ul li a:hover,
.footer__generalinquiries ul li a:hover,
.footer__friendship ul li a:hover {
    color: #ce1b2e
}

.footer__company ul,
.footer__location ul,
.footer__generalinquiries ul,
.footer__friendship ul {
    font-size: 0
}

.footer__generalinquiries {
    margin-top: 22px
}

.footer__generalinquiries img {
    width: 18px;
    margin-right: 5px
}

.footer__contacts {
    text-align: center
}

.footer__contacts ul li {
    text-align: center;
    justify-content: center
}

.footer__hide-on-mobile,
.footer__heading.opened+.footer__hide-on-mobile {
    max-height: none
}

@media screen and (max-width:1050px) {

    .footer__company ul li,
    .footer__location ul li,
    .footer__generalinquiries ul li,
    .footer__friendship ul li {
        width: 100%
    }
}

@media screen and (max-width:767px) {
    .footer__top {
        border-bottom: 1px solid #3e4247
    }

    .footer__social {
        border-bottom: none
    }

    .footer__top .footer__container {
        flex-direction: row
    }

    .footer__social {
        padding: 16px 25px
    }

    .footer__heading {
        text-align: center;
        cursor: pointer
    }

    .footer__mid .footer__container .footer__company,
    .footer__mid .footer__container .footer__location,
    .footer__mid .footer__container .footer__3col {
        width: 100%;
        padding: 0
    }

    .footer__mid .footer__container .footer__location,
    .footer__mid .footer__container .footer__generalinquiries,
    .footer__mid .footer__container .footer__friendship {
        border-right: 0;
        border-bottom: 1px solid #3e4247
    }

    .footer__generalinquiries {
        margin-top: 0
    }

    .footer__company ul li,
    .footer__location ul li,
    .footer__generalinquiries ul li,
    .footer__friendship ul li {
        width: 50%;
        text-align: center
    }

    .footer__bot ul {
        flex-direction: row
    }

    .footer__bot ul li {
        margin: 0 10px
    }
}

@media screen and (max-width:400px) {
    .footer__top .footer__container {
        flex-direction: column
    }

    .footer__social {
        padding: 16px 0
    }

    .footer__top .footer__container .footer-share__title {
        padding-top: 16px
    }

    .footer__social {
        justify-content: center
    }

    .footer__bot ul {
        flex-direction: column
    }

    .footer__company ul li,
    .footer__location ul li,
    .footer__generalinquiries ul li,
    .footer__friendship ul li {
        width: 100%;
        text-align: center
    }
}

.footer__bot {
    padding: 20px 0
}

.footer__bot .footer__container {
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column
}

.footer__container p {
    text-align: center;
    margin-bottom: 15px
}

.menu-footer-menu-container .menu {
    -o-justify-content: center;
    -webkit-justify-content: center;
    justify-content: center
}

.careers-detail {
    padding: 50px 55px
}

@media screen and (max-width:767px) {
    .careers-detail {
        padding: 50px 15px
    }
}

.careers-detail ul {
    display: flex;
    flex-flow: row wrap;
    justify-content: flex-start
}

.careers-detail ul li {
    width: calc(100%/3 - 45px);
    margin: 20px
}

@media screen and (max-width:875px) {
    .careers-detail ul li {
        width: calc(100%/2 - 45px)
    }
}

@media screen and (max-width:540px) {
    .careers-detail ul li {
        width: 100%
    }
}

.careers-detail .select-options li {
    margin: 0
}

.careers-detail ol {
    list-style: decimal outside;
    padding-left: 24px
}

.careers-detail ol li {
    margin: 12px
}

.careers-detail .select-options {
    display: none
}

.careers-detail .form-item__file .span.label {
    top: 18px
}

.careers-detail form .form-item__file {
    text-align: center;
    margin-bottom: 0
}

.careers-detail .select-options li {
    width: 20%;
    margin: 0;
    float: left;
    justify-content: center
}

.careers-detail form .form-item__label {
    height: auto
}

.careers-detail form .form-item__label span.label {
    position: relative;
    top: 0
}

.careers-detail .text-detail {
    line-height: 1.8;
    padding: 0 20px
}

@media screen and (max-width:500px) {
    .careers-detail form button[type="submit"] {
        width: 100%
    }
}

@media screen and (max-width:450px) {
    .careers-detail .form-item__file a {
        margin-left: 50px
    }
}

@media screen and (max-width:350px) {
    .careers-detail .select-options li {
        width: 25%
    }
}

@media screen and (max-width:280px) {
    .careers-detail .select-options li {
        width: 32%
    }
}

.careers-contact-content .contact-set {
    display: flex;
    justify-content: center
}

.careers-contact-content .contact-set .col {
    flex-grow: .4;
    text-align: center
}

.careers-contact-content .contact-set .col a {
    display: inline-block;
    margin-top: 30px
}

.careers-contact-content .contact-set .col i {
    display: block;
    width: 64px;
    height: 64px
}

.careers-contact-content .contact-set .col img,
.careers-contact-content .contact-set .col svg {
    max-width: 64px;
    max-width: 64px;
    width: 100%
}

.careers-contact-content .contact-set .col span {
    display: block
}

.careers-contact-content h2 {
    color: #333
}

.careers-contact-content .careers-social {
    display: flex;
    justify-content: center
}

.careers-contact-content .careers-social i {
    margin-bottom: 5px
}

.careers-contact-content .careers-social .item {
    margin: 0 50px
}

.careers-contact-content .careers-social .hoverImage img {
    position: absolute;
    max-width: 248px;
    height: auto;
    -webkit-transform: translateX(-37%) translateY(-65%);
    -moz-transform: translateX(-37%) translateY(-65%);
    -ms-transform: translateX(-37%) translateY(-65%);
    -o-transform: translateX(-37%) translateY(-65%);
    transform: translateX(-37%) translateY(-65%);
    display: none
}

.careers-contact-content .careers-social .item:hover .hoverImage img {
    -webkit-animation-name: fadeInUp;
    -moz-animation-name: fadeInUp;
    -ms-animation-name: fadeInUp;
    -o-animation-name: fadeInUp;
    animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
    -moz-animation-duration: 1s;
    -ms-animation-duration: 1s;
    -o-animation-duration: 1s;
    animation-duration: 1s;
    display: block
}

@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

@media screen and (max-width:760px) {
    .careers-contact-content .contact-set {
        flex-direction: column
    }

    .careers-contact-content .contact-set .col:first-child {
        margin-bottom: 50px
    }

    .careers-contact-content .careers-social .hoverImage img {
        transform: translateX(-37%) translateY(-66%)
    }
}

@media screen and (max-width:480px) {
    .careers-contact-content .careers-social {
        justify-content: space-around
    }

    .careers-contact-content .careers-social .item {
        margin: 8px 0
    }
}

.social-recruitment a {
    color: #fff
}

.social-recruitment a:hover {
    color: #ce1b2e
}

.search-band form .select-wrap .select,
.search-band form .select-wrap .select-styled {
    width: 100%
}

.search-band form .input-wrap {
    position: relative;
    flex: 1;
    min-width: 100px
}

.search-band form .input-wrap input {
    width: 100%
}

.search-band .select-group {
    padding: 0;
    margin-bottom: 40px
}

.search-band .select-wrap {
    margin-right: 0
}

.search-band .select-group .select-styled {
    padding: 0 12px;
    background-color: #fff;
    font-size: 18px
}

.select .select-multiseriate+.select-styled+.select-options li {
    float: left;
    width: 20%
}

@media screen and (min-width:767px) {
    .search-band form .select-wrap {
        width: 200px
    }

    .search-band .select-group .select-styled {
        border-right: 0
    }

    .select .select-multiseriate+.select-styled+.select-options {
        width: 200%
    }
}

@media screen and (max-width:400px) {
    .select .select-multiseriate+.select-styled+.select-options li {
        width: 25%
    }
}

@media screen and (max-width:340px) {
    .select .select-multiseriate+.select-styled+.select-options li {
        width: 33.33%
    }
}

.search-band .select-group .select-options li {
    font-size: 18px;
    height: auto;
    padding: 8px 13px
}

.search-band .select-group input[type="text"] {
    padding: 0 12px;
    flex-grow: 1;
    height: 48px
}

.search-band .select-group button[type="submit"] {
    background-color: #003a81;
    border: none;
    cursor: pointer;
    padding-top: 8px
}

.search-band .select-group button[type="submit"]:focus {
    outline: none
}

ul.job-list li a,
ul.job-list .job-list-title {
    display: flex;
    justify-content: space-between
}

ul.job-list li a {
    background-color: #fff;
    border-bottom: 1px dashed #ccc
}

ul.job-list li a:hover {
    background: #eee
}

.job-list-title {
    background: #000;
    color: #fff
}

ul.job-list li span {
    text-align: center;
    width: 100%;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.5
}

.result-message.error {
    color: #ce1b2e
}

.result-message em {
    color: #083f87
}

.section_careersSearch h2 {
    color: #222
}

.section_careersSearch .link-file {
    margin: 20px 0 20px;
    display: inline-block
}

@media screen and (max-width:480px) {
    ul.job-list li a {
        display: block;
        position: relative;
        background-color: #fff;
        margin-bottom: 12px
    }

    ul.job-list .job-list-item a {
        border-bottom: 3px solid #dedede
    }

    ul.job-list .job-list-title {
        display: none
    }

    ul.job-list li span {
        display: inline-block;
        text-align: left;
        width: auto
    }

    ul.job-list li span.job-title {
        width: 100%;
        border-bottom: 1px dashed #ccc
    }

    ul.job-list li span.job-pulishDate {
        float: right
    }
}

.link-file {
    font-size: 16px;
    font-weight: normal;
    top: 12px;
    color: #003a81;
    border-bottom: 3px solid #e1e3e7;
    padding-bottom: 4px
}

.link-file svg {
    fill: #003a81
}

.link-file:hover {
    color: #ce1b2e;
    border-color: #ce1b2e
}

.link-file:hover svg {
    fill: #ce1b2e
}

.fileText {
    display: block;
    font-size: 15px;
    color: #018124;
    padding-left: 20px;
    margin-bottom: 20px
}

.fileText.error {
    color: #ce1b2e
}

.header__top-nav .account-info a {
    text-transform: none;
    margin-top: -3px
}

.header__top-nav .account-info .user-icon img {
    width: 16px
}

.header__top-nav .account-info .user-name {
    margin-left: 8px
}

@media screen and (max-width:1024px) {
    .account-info {
        margin-bottom: 20px;
        display: flex;
        align-items: baseline;
        justify-content: space-around
    }

    .account-info .user-infor {
        flex: 1
    }

    .account-info .user-infor a {
        display: flex
    }

    .account-info .user-infor .user-icon {
        position: absolute
    }

    .account-info .user-infor .user-name {
        padding: 12px 0 0 40px
    }

    .account-info .user-infor a:hover {
        color: #ce1b2e
    }

    .account-info .logout {
        width: 50px;
        text-align: right
    }
}

.disPlayNone {
    display: none
}

.overflowhidden {
    overflow: hidden
}

.PopupVideoClass {
    background-color: rgba(0, 0, 0, .3);
    position: fixed;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 10000
}

.PopupVideoClass .closeVideo {
    position: absolute;
    right: 23%;
    top: 22%;
    z-index: 10001
}

.PopupVideoClass .banner__video {
    width: 50%;
    min-height: 0;
    top: 25%;
    height: auto !important
}

@media screen and (max-width:768px) {
    .PopupVideoClass .banner__video {
        width: 80%
    }

    .PopupVideoClass .closeVideo {
        right: 7%;
        top: 22%
    }
}

@media screen and (max-width:480px) {
    .PopupVideoClass .banner__video {
        width: 95%
    }

    .PopupVideoClass .closeVideo {
        right: 1%;
        top: 21.5%
    }
}

form .form-item {
    width: 100%;
    display: block;
    position: relative;
    height: 53px;
    margin-bottom: 20px
}

form .form-item.focused input.wpcf7-not-valid+span.label,
form .form-item.hovered input.wpcf7-not-valid+span.label,
form .form-item.not-empty input.wpcf7-not-valid+span.label,
form .form-item.focused textarea.wpcf7-not-valid+span.label,
form .form-item.hovered textarea.wpcf7-not-valid+span.label,
form .form-item.not-empty textarea.wpcf7-not-valid+span.label {
    transform: translateY(-15px) scale(.5);
    opacity: 0
}

form .form-item.focused .wpcf7-form-control-wrap>span:not(.label),
form .form-item.focused span.label,
form .form-item.hovered .wpcf7-form-control-wrap>span:not(.label),
form .form-item.hovered span.label,
form .form-item.not-empty .wpcf7-form-control-wrap>span:not(.label),
form .form-item.not-empty span.label,
form .form-item.default-value span.label {
    transform: translateY(-11px) scale(.85)
}

form .form-item span {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0
}

form .form-item span.label {
    display: block;
    position: absolute;
    color: #8f8f8f;
    pointer-events: none;
    width: auto;
    height: auto;
    z-index: 1;
    left: 20px;
    top: 15px;
    font-size: 15px;
    transition: transform .2s ease, opacity .2s ease;
    transform: translateY(0) scale(1);
    opacity: 1;
    transform-origin: left top
}

form .form-item span.label span {
    position: relative;
    display: inline
}

form .form-item .wpcf7-form-control-wrap>span:not(.label) {
    display: block;
    position: absolute;
    color: #ce1b2e;
    pointer-events: none;
    width: auto;
    height: auto;
    z-index: 1;
    left: 20px;
    top: 15px;
    font-size: 15px;
    transition: transform .2s ease;
    transform: translateY(10px) scale(1);
    transform-origin: left top
}

form .form-item input {
    position: relative;
    width: 100%;
    height: 100%;
    outline: none;
    border: 1px solid #8f8f8f;
    padding: 20px 19px 0;
    font-size: 15px;
    font-weight: 700
}

form .form-item input[readonly] {
    opacity: .5
}

form .form-item input.wpcf7-not-valid,
form .form-item textarea.wpcf7-not-valid {
    border-color: #ce1b2e
}

form .form-item input.wpcf7-not-valid+.label,
form .form-item textarea.wpcf7-not-valid+.label {
    transform: translateY(-11px) scale(.85)
}

form .form-item .required-det {
    right: -35px;
    top: 17px;
    width: 17px;
    height: 17px;
    position: absolute;
    opacity: 0;
    transition: opacity .2s ease
}

form .form-item .required-det:after,
form .form-item .required-det:before {
    content: "";
    width: 20px;
    height: 6px;
    background: #018124;
    position: absolute;
    left: 0;
    top: 0;
    transition: transform .2s ease, background .2s ease
}

form .form-item .required-det:before {
    transform: translate(-2px, 9px) rotate(45deg) scaleX(.7)
}

form .form-item .required-det:after {
    transform: translate(6px, 7px) rotate(-45deg)
}

form .form-item.not-empty .wpcf7-form-control,
form .form-item .not-empty .wpcf7-form-control {
    border-color: #018124
}

form .form-item.not-empty .wpcf7-form-control~.required-det,
form .form-item .not-empty .wpcf7-form-control~.required-det,
form .form-item .wpcf7-form-control.wpcf7-not-valid~.required-det {
    opacity: 1
}

form .form-item .wpcf7-form-control.wpcf7-not-valid~.required-det:after,
form .form-item .wpcf7-form-control.wpcf7-not-valid~.required-det:before {
    background: #ce1b2e
}

form .form-item .wpcf7-form-control.wpcf7-not-valid~.required-det:before {
    transform: translateY(5px) rotate(45deg) scaleX(1)
}

form .form-item .wpcf7-form-control.wpcf7-not-valid~.required-det:after {
    transform: translateY(5px) rotate(-45deg) scaleX(1)
}

form .form-item__select {
    position: relative;
    z-index: 2
}

form .form-item__select span.label {
    top: 20px
}

form .form-item .select {
    width: 100%;
    height: 100%
}

form .form-item .select-styled {
    width: 100%;
    height: 100%;
    background: #fff;
    font-size: 15px;
    text-transform: uppercase;
    font-weight: 700;
    color: #222;
    padding: 20px 20px 0
}

form .form-item .select-styled:after {
    border-right: 4px solid #ce1b2e;
    border-bottom: 4px solid #ce1b2e
}

form .form-item .select-options {
    max-height: 350px;
    overflow-y: auto
}

form .form-item .wpcf7-form-control-wrap .wpcf7-not-valid-tip {
    position: absolute;
    top: 27px;
    left: 20px;
    color: #ce1b2e
}

form .form-item__textarea {
    height: 192px;
    margin-bottom: 40px
}

form .form-item__textarea textarea {
    width: 100%;
    height: 100%;
    overflow-y: auto;
    resize: none;
    outline: none;
    padding: 25px 20px;
    font-size: 15px
}

.ui.checkbox {
    position: relative;
    display: inline-block;
    min-width: 1em;
    min-height: 1.25em;
    line-height: 1em;
    outline: 0;
    vertical-align: middle
}

.ui.checkbox input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    outline: 0
}

.ui.checkbox .box,
.ui.checkbox label {
    cursor: pointer;
    padding-left: 2em;
    outline: 0
}

.ui.checkbox .box:before,
.ui.checkbox label:before {
    position: absolute;
    top: 0;
    line-height: 1;
    width: 1em;
    height: 1em;
    left: 0;
    content: '';
    border-radius: 4px;
    background: #fff;
    -webkit-transition: background-color .3s ease, -webkit-box-shadow .3s ease;
    -moz-transition: background-color .3s ease, box-shadow .3s ease;
    transition: background-color .3s ease, box-shadow .3s ease;
    -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, .2);
    box-shadow: 0 0 0 1px rgba(0, 0, 0, .2)
}

.ui.checkbox .box:after,
.ui.checkbox label:after {
    -ms-filter: "alpha(Opacity=0)";
    filter: alpha(opacity=0);
    opacity: 0;
    content: '';
    position: absolute;
    background: 0 0;
    border: .2em solid #333;
    border-top: none;
    border-right: none;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: .275em;
    left: .2em;
    width: .45em;
    height: .15em
}

.ui.checkbox label {
    display: block;
    color: #666;
    -webkit-transition: color .2s ease;
    -moz-transition: color .2s ease;
    transition: color .2s ease
}

.ui.checkbox input:focus~label,
.ui.checkbox label:hover {
    color: #888
}

.ui.checkbox~label {
    cursor: pointer;
    opacity: .85;
    vertical-align: middle
}

.ui.checkbox~label:hover {
    opacity: 1
}

.ui.checkbox .box:hover::before,
.ui.checkbox label:hover::before {
    -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, .3);
    box-shadow: 0 0 0 1px rgba(0, 0, 0, .3)
}

.ui.checkbox .box:active::before,
.ui.checkbox label:active::before {
    background-color: #f5f5f5
}

.ui.checkbox input:focus~.box:before,
.ui.checkbox input:focus~label:before {
    -webkit-box-shadow: 0 0 0 1px rgba(0, 0, 0, .3);
    box-shadow: 0 0 0 1px rgba(0, 0, 0, .3)
}

.ui.checkbox input:checked~.box:after,
.ui.checkbox input:checked~label:after {
    -ms-filter: "alpha(Opacity=100)";
    filter: alpha(opacity=100);
    opacity: 1
}

.ui.checkbox input[disabled]~.box:after,
.ui.checkbox input[disabled]~label,
.ui.disabled.checkbox label,
.ui.disabled.checkbox~.box:after {
    opacity: .4;
    color: rgba(0, 0, 0, .3)
}

form .form-item__select .select select.wpcf7-not-valid+.select-styled {
    border-color: #ce1b2e
}

form .form-item__select.selected .select .select-styled {
    border-color: #018124
}

form .form-item__select.selected span.label,
form .form-item__select.not-empty span.label,
form .form-item__select.not-valid span.label,
form .form-item__select .select select.wpcf7-not-valid+.label {
    transform: translateY(-11px) scale(.85)
}

form .form-item__select.selected .required-det {
    opacity: 1
}

form .form-item__select .select .wpcf7-not-valid-tip {
    display: block;
    position: absolute;
    color: #ce1b2e;
    pointer-events: none;
    width: auto;
    height: auto;
    z-index: 1;
    left: 20px;
    top: 15px;
    font-size: 15px;
    transition: transform .2s ease;
    transform: translateY(10px) scale(1);
    transform-origin: left top
}

form .form-item.form-item__textarea {
    margin-bottom: 20px
}

form .verification-wrap {
    height: 50px;
    margin-bottom: 20px;
    overflow: hidden;
    text-align: left
}

form .verification-wrap img {
    height: 100%
}

form .verification-wrap input {
    width: calc(100% - 160px);
    height: 100%;
    padding: 0 12px;
    float: right
}

@-webkit-keyframes fade-in {
    from {
        display: none;
        opacity: 0
    }

    to {
        display: block;
        opacity: 1
    }
}

@-moz-keyframes fade-in {
    from {
        display: none;
        opacity: 0
    }

    to {
        display: block;
        opacity: 1
    }
}

@keyframes fade-in {
    from {
        display: none;
        opacity: 0
    }

    to {
        display: block;
        opacity: 1
    }
}

@-webkit-keyframes fade-out {
    from {
        opacity: 1;
        display: block
    }

    to {
        opacity: 0;
        display: none;
        z-index: -1
    }
}

@-moz-keyframes fade-out {
    from {
        opacity: 1;
        display: block
    }

    to {
        opacity: 0;
        display: none;
        z-index: -1
    }
}

@keyframes fade-out {
    from {
        opacity: 1;
        display: block
    }

    to {
        opacity: 0;
        display: none;
        z-index: -1
    }
}

.fade-in {
    -moz-animation: fade-in .8s forwards;
    -o-animation: fade-in .8s forwards;
    -webkit-animation: fade-in .8s forwards;
    animation: fade-in .8s forwards
}

.fade-out {
    -moz-animation: fade-out .8s forwards;
    -o-animation: fade-out .8s forwards;
    -webkit-animation: fade-out .8s forwards;
    animation: fade-out .8s forwards
}

.popup {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: none;
    z-index: 10;
    justify-content: center;
    align-items: center
}

.popup .popup-inner {
    position: relative;
    max-height: 90%;
    background: #f7f7f7;
    -webkit-box-shadow: 0 0 20px 5px rgba(0, 58, 129, .5);
    -ms-box-shadow: 0 0 20px 5px rgba(0, 58, 129, .5);
    box-shadow: 0 0 20px 5px rgba(0, 58, 129, .5);
    padding: 2em;
    box-sizing: border-box;
    z-index: 2;
    border-radius: 2px
}

.popup .popup-inner .btn-close {
    position: absolute;
    top: 0;
    right: 0;
    margin-top: -12px;
    margin-right: -28px
}

.popup .popup-inner .btn-close svg {
    width: 26px;
    height: 26px;
    fill: #aaa;
    -webkit-transition: fill .2s ease;
    -moz-transition: fill .2s ease;
    -o-transition: fill .2s ease;
    -ms-transition: fill .2s ease;
    transition: fill .2s ease
}

.popup .popup-inner .btn-close:hover svg {
    fill: #666
}

@media(max-width:480px) {
    .popup .popup-inner {
        width: 100%;
        margin-left: 0;
        left: 0;
        top: 10%;
        max-height: 100%
    }

    .popup .popup-inner .btn-close {
        margin-top: 0;
        margin-right: 0
    }
}

.popup.open {
    display: flex
}

.overlay {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(10, 10, 10, .5);
    z-index: 1;
    opacity: 0;
    transition: .5s all
}

.account-container {
    width: 400px;
    max-width: 800px;
    max-height: 75vh;
    overflow-y: auto;
    text-align: center
}

.account-container,
.account-container a {
    color: #636363
}

.account-container .title {
    font-size: 25px;
    font-weight: 500;
    margin: 0 0 20px;
    padding: 0
}

.account-container .title span .account-container .description span {
    display: inline-block;
    text-align: left
}

.account-container .forgot-password-wrap {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    font-size: 16px
}

@media(max-width:480px) {
    .account-container {
        width: 100%
    }
}

@media(max-width:400px) {
    .account-container .forgot-password-wrap {
        flex-wrap: wrap
    }

    .account-container .forgot-password-wrap a {
        width: 100%;
        text-align: left
    }
}

.account-container a {
    -webkit-transition: color .2s ease;
    -moz-transition: color .2s ease;
    -o-transition: color .2s ease;
    -ms-transition: color .2s ease;
    transition: color .2s ease
}

.account-container a:hover {
    color: #003a81
}

.account-container .link {
    color: #003a81
}

.account-container .link:hover {
    color: #ce1b2e
}

.account-container p {
    margin-bottom: 12px
}

.account-container .callback-msg {
    text-align: left
}

.account-container form .form-item .required-det {
    right: 20px
}

.account-container form.login-form .form-item .required-det {
    display: none
}

.account-container form.login-form .form-item input {
    padding-right: 40px
}

@media(min-width:481px) {
    .apply-demo-container {
        width: 70vw
    }

    .apply-demo-container .form-item {
        width: calc(100%/2 - 10px);
        display: inline-block
    }

    .apply-demo-container .form-item.form-item__textarea {
        width: 100%;
        height: 100px
    }
}

@media(max-width:480px) {
    #applyDemo .popup-inner {
        padding: 2em 1em
    }

    .apply-demo-container .form-item.form-item__textarea {
        height: 120px
    }
}

@media(min-width:768px) {

    .product-demo-list-title,
    .product-demo-list-item {
        display: flex;
        justify-content: space-between
    }

    .product-demo-list-title {
        background: #000;
        color: #fff
    }

    .product-demo-label {
        display: none
    }

    .product-demo-field {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 1.5;
        padding: 20px;
        border-bottom: 1px dashed #ccc
    }

    .product-demo-list-title .product-demo-field {
        border-bottom: none
    }
}

@media(max-width:768px) {
    .product-demo-list-item {
        display: block;
        margin-bottom: 12px;
        border: 3px solid #dedede
    }

    .product-demo-list-title {
        display: none
    }

    .product-demo-field {
        text-align: left;
        border-bottom: 1px dashed #ccc
    }

    .product-demo-field:last-child {
        border-bottom: none
    }

    .product-demo-label {
        display: inline-block;
        width: 166px;
        background-color: #eee;
        color: #000;
        padding: 10px 20px
    }

    .product-demo-value {
        padding: 10px;
        display: inline-block;
        vertical-align: top
    }

    .product-demo-value a {
        color: #008fd3
    }

    .product-demo-value a:hover {
        color: #003a81
    }
}

.btn-link-arrow {
    background: none;
    border: none;
    border-bottom: 3px solid #e1e3e7;
    height: 35px;
    line-height: 31px;
    margin: 0 auto;
    padding: 0;
    display: block;
    cursor: pointer;
    outline: none;
    font-size: 16px;
    font-weight: normal;
    color: #003a81
}

.btn-link-arrow:after {
    content: "»";
    display: inline-block;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 20px;
    font-weight: 700;
    margin-left: 9px;
    position: relative;
    top: 1px
}

.btn-link-arrow:not([disabled]):hover {
    color: #ce1b2e;
    border-color: #ce1b2e
}

.btn-link-arrow[disabled] {
    opacity: .5;
    cursor: not-allowed
}

.btn-link-arrow.loading:after {
    -webkit-animation: fadeOutRight 2s linear infinite;
    -moz-animation: fadeOutRight 2s linear infinite;
    -ms-animation: fadeOutRight 2s linear infinite;
    animation: fadeOutRight 2s linear infinite
}

@-webkit-keyframes fadeOutRight {
    0% {
        opacity: 1;
        -webkit-transform: translateX(0)
    }

    100% {
        opacity: 0;
        -webkit-transform: translateX(20px)
    }
}

@-moz-keyframes fadeOutRight {
    0% {
        opacity: 1;
        -moz-transform: translateX(0)
    }

    100% {
        opacity: 0;
        -moz-transform: translateX(20px)
    }
}

@-ms-keyframes fadeOutRight {
    0% {
        opacity: 1;
        -ms-transform: translateX(0)
    }

    100% {
        opacity: 0;
        -ms-transform: translateX(20px)
    }
}

@-o-keyframes fadeOutRight {
    0% {
        opacity: 1;
        -o-transform: translateX(0);
    }

    100% {
        opacity: 0;
        -o-transform: translateX(20px);
    }
}

@keyframes fadeOutRight {
    0% {
        opacity: 1;
        transform: translateX(0)
    }

    100% {
        opacity: 0;
        transform: translateX(20px)
    }
}

.dsNone {
    display: none
}

.dsBlock {
    display: block
}

.dsRelative {
    position: relative
}

.dsAbsolute {
    position: absolute
}

.pubCsLayBg {
    background: rgba(0, 0, 0, .6);
    position: fixed;
    z-index: 15;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0
}

.pubCsLay {
    padding: 5.48vh 3.02vw 5.4vh;
    background: #fff;
    width: 640px;
    margin-left: -320px;
    position: fixed;
    z-index: 18;
    left: 50%;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 3em 0 3em 0
}

.pubClose {
    background: url(../images/close-1.png) no-repeat center center;
    height: 20px;
    width: 20px;
    position: absolute;
    top: 20px;
    right: 20px;
    cursor: pointer;
    transition: all .5s ease-in-out
}

.pubClose:hover {
    transform: rotate(180deg)
}

.pubCsfm {
    margin-top: 20px
}

.pubCsfm li {
    margin-bottom: 10px;
    position: relative
}

.pubCsfm li input {
    line-height: 50px;
    height: 52px;
    border: 1px solid #e6e6e6;
    padding: 0 20px;
    width: 100%;
    font-size: 12px;
    color: #333
}

.pubCsfm li button {
    font-size: 16px;
    line-height: 52px;
    color: #fff;
    background: #df2040;
    display: block;
    height: 52px;
    width: 100%;
    margin-top: 50px;
    cursor: pointer;
    border: none
}

.pubCsfm li textarea {
    line-height: 26px;
    height: 108px;
    border: 1px solid #e6e6e6;
    padding: 15px 20px;
    width: 100%;
    font-size: 15px;
    color: #666
}

.pubCsfm li input:focus,
.pubCsfm li textarea:focus {
    border: 1px solid #104484
}

.pubCs_des {
    text-align: center;
    font-size: 16px;
    line-height: 30px
}

.pubCs_des strong {
    font-size: 40px;
    line-height: 56px;
    display: block;
    margin-bottom: 14px;
    font-weight: normal
}

.pubCs_cd,
.pubCs_cd:hover {
    font-size: 15px;
    line-height: 44px;
    color: #fff;
    text-align: center;
    display: block;
    height: 44px;
    width: 172px;
    position: absolute;
    top: 4px;
    right: 4px;
    background: #df2040
}

.pubCs_nms {
    color: #bfbfbf;
    font-size: 15px;
    line-height: 30px;
    position: absolute;
    right: 0;
    bottom: -30px
}

@media(max-width:1799px) {
    .pubCs_des strong {
        font-size: 26px;
        line-height: 30px
    }

    .pubCs_des {
        font-size: 15px;
        line-height: 22px
    }

    .pubCsfm li input {
        line-height: 42px;
        height: 44px
    }
}

@media(max-width:767px) {
    .pubCsLay {
        width: 90%;
        margin-left: 0;
        transform: translate(-50%, -50%)
    }

    .pubCs_des strong {
        font-size: 20px;
        line-height: 26px
    }

    .pubCs_des {
        font-size: 13px;
        line-height: 22px
    }

    .pubCsfm li input {
        line-height: 38px;
        height: 40px;
        font-size: 14px;
        padding: 0 15px
    }

    .pubCsfm li {
        margin-bottom: 6px
    }

    .pubCsfm li textarea {
        height: 66px;
        font-size: 14px;
        padding: 5px 15px
    }

    .pubCsfm li button {
        margin-top: 40px;
        line-height: 46px;
        height: 46px
    }
}

.pubMbrLayBg {
    transform: none;
    background: rgba(0, 0, 0, .6);
    position: fixed;
    z-index: 15;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0
}

.pubMbrLayBg .pubCsfm li button {
    margin-top: 0
}

.mmberLayBg {
    transform: none;
    background: rgba(0, 0, 0, .5);
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 50
}

.mmberLay {
    width: 90%;
    height: 470px;
    max-width: 640px;
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 55
}

.mmberLay .pubCsLay {
    width: 100%;
    height: 470px;
    position: absolute;
    left: 0;
    top: 0;
    transform: translate(0, 0);
    margin-left: 0;
    padding-top: 48px
}

.mmberLay .pubCs_des {
    height: 128px
}

.mmberLay .pubCs_des strong {
    margin-bottom: 0
}

.mmberLay .pubCs_des p {
    color: gray
}

.pubCs_stip {
    font-size: 12px;
    line-height: 30px;
    color: #df203d;
    height: 30px
}

.pubCs_stip img {
    margin-right: 7px;
    position: relative;
    top: -1px
}

.mmberLay .pubCsfm {
    margin-top: 0
}

.mmberLay .pubCsfm li input {
    font-size: 12px;
    color: #333;
    line-height: 58px;
    background: #f7f7f7;
    height: 56px;
    border: 1px solid #f7f7f7;
    padding: 0 25px;
    border-radius: 1.8em
}

.mmberLay .pubCsfm li input:focus {
    border: 1px solid #df2040
}

.mmcdv_get {
    font-size: 16px;
    line-height: 16px;
    text-align: center;
    display: inline-block;
    height: 16px;
    width: 175px;
    position: absolute;
    top: 20px;
    right: 0;
    border-left: 1px solid #ccc;
    color: #df203d
}

.mmberLay .pubCsfm li button {
    line-height: 58px;
    height: 58px;
    margin-top: 0;
    border-radius: 1.8em
}

.mmberLay .mmcdTip {
    font-size: 14px;
    color: gray
}

.mmcdTip {
    text-align: center;
    font-size: 16px;
    line-height: 28px;
    color: #bfbfbf;
    margin-top: 1.45vw
}

.mmcdTip a {
    color: #104484;
    text-decoration: underline
}

.mmcdTip {
    font-size: 14px
}

.mmberLay .mmcdTip span {
    display: inline-block;
    margin: 0 20px;
    color: #ccc
}

.mmberLay .mmcdTip a,
.mmberLay .mmcdTip a:hover {
    color: #df203d
}

.mmber_sysEvm {
    display: block;
    margin-top: -43px;
    text-align: center;
    position: relative
}

.mmber_sysEvm img {
    box-shadow: 0 0 18px rgba(0, 0, 0, .1)
}

.mmber_sysTip {
    text-align: center;
    height: 77px;
    margin-top: 16px
}

.mmber_sysTip span {
    font-size: 14px;
    line-height: 20px;
    color: gray;
    background: url(../images/mmber_wico.png) no-repeat left center;
    height: 40px;
    display: inline-block;
    white-space: nowrap;
    text-align: left;
    padding-left: 59px
}

.mmberLay .mmcdTip span {
    display: inline-block;
    margin: 0 20px;
    color: #ccc
}

.mmber_link {
    display: block;
    height: 85px;
    width: 85px;
    position: absolute;
    top: 0;
    right: 0
}

.mmber_link1 {
    background: url(../images/mmber_i1.png) no-repeat right top
}

.mmber_link1:hover {
    background: url(../images/mmber_i1a.png) no-repeat right top
}

.mmber_link2 {
    background: url(../images/mmber_i2.png) no-repeat right top
}

.mmber_link2:hover {
    background: url(../images/mmber_i2a.png) no-repeat right top
}

.mmber_link span {
    font-size: 12px;
    color: #df203d;
    line-height: 22px;
    white-space: nowrap;
    display: inline-block;
    padding: 0 12px;
    height: 24px;
    position: absolute;
    top: 10px;
    right: 85px;
    background: #f6f6f8;
    border: 1px solid #df203d
}

.mmber_link span:after {
    content: "";
    background: url(../images/mmbr_tip_ar.png) no-repeat center center;
    height: 8px;
    width: 5px;
    margin-top: -4px;
    position: absolute;
    top: 50%;
    right: -5px
}

@media(max-width:1799px) {
    .mmberLay .pubCs_des {
        height: 105px
    }

    .mmberLay .pubCs_des p {
        margin-top: 8px
    }

    .mmberLay .pubCsfm li input {
        line-height: 50px;
        height: 52px;
        font-size: 15px
    }

    .mmcdv_get {
        font-size: 14px;
        top: 17px
    }

    .mmberLay .pubCsfm li button {
        line-height: 52px;
        height: 52px
    }

    .mmberLay .pubCsLay {
        height: 420px
    }

    .mmberLay {
        height: 420px
    }

    .mmber_sysTip {
        height: 63px
    }
}

@media(max-width:767px) {
    .mmber_sysEvm {
        margin-top: -50px
    }

    .mmberLay .pubCsLay {
        height: 390px
    }

    .mmberLay {
        height: 390px
    }
}

.mMber_fun {
    position: absolute;
    right: 100px;
    top: 0
}

.mHeader .head_reg {
    line-height: 56px;
    height: 56px
}

.mHeader .head_logoin {
    line-height: 56px
}

.m2regBox_en .m2regTx strong {
    letter-spacing: 0;
    text-transform: uppercase
}

.m2regBox_en .m2regTx p {
    color: gray;
    letter-spacing: 0;
    margin: 6px 0 1.2vw
}

.m2regBox_en .m2reg_fm li.m2reg_even {
    overflow: hidden
}

.m2regBox_en .m2reg_fm li.m2reg_even input {
    width: calc(50% - 5px);
    float: left
}

.m2regBox_en .m2reg_fm li.m2reg_even input:nth-child(2) {
    float: right
}

.m2regBox_en .m2reg_bmTip {
    color: #bfbfbf;
    font-size: 16px;
    line-height: 30px;
    margin-top: 18px;
    text-align: center
}

.m2regBox_en .m2reg_bmTip a {
    color: #df203d
}

.m2regBox_en .m2reg_bmTip {
    margin-top: 8px
}

.m2regBox_en .m2reg_cd {
    font-size: 14px;
    color: #df203d;
    background: none;
    letter-spacing: 0
}

.m2regBox_en .m2reg_cd:after {
    content: "";
    background: #ccc;
    height: 14px;
    width: 1px;
    margin-top: -7px;
    position: absolute;
    left: 0;
    top: 50%
}

.m2regBox_en .m2reg_fm li input {
    border-radius: 1.8em
}

.m2regBox_en .m2reg_fm li button {
    border-radius: 1.8em
}

.m2regBox_en .m2regRt strong {
    font-size: 42px;
    line-height: 60px;
    font-weight: normal;
    letter-spacing: 0
}

.m2regBox_en .m2regRt p {
    font-size: 21px;
    letter-spacing: 0
}

.m2regBox_en .m2regRbm h4 {
    margin-top: 0;
    font-size: 50px
}

.m2regBox_en .m2regRbm p:nth-child(2) {
    margin-top: 2vw
}

.pubcs_get_pw {
    text-align: right;
    font-size: 16px;
    color: #df203d;
    padding-top: 5px
}

.pubMbrLayBg_en .pubCs_des p {
    color: gray;
    line-height: 24px
}

.pubMbrLayBg_en .pubCsfm li input {
    border-radius: 1.8em
}

.pubMbrLayBg_en .pubCsfm li button {
    border-radius: 1.8em
}

.pubMbrLayBg_en .mmcdTip a {
    color: #df203d
}

@media(max-width:1799px) {
    .m2regBox_en .m2regRt strong {
        font-size: 30px;
        line-height: 42px
    }

    .m2regBox_en .m2regRt p {
        font-size: 18px;
        letter-spacing: 0
    }

    .m2regBox_en .m2regRbm p {
        font-size: 18px;
        line-height: 30px
    }

    .m2regBox_en .m2regRbm h4 {
        margin-top: 0;
        font-size: 40px
    }

    .m2regBox_en .m2regTx strong {
        font-size: 32px;
        line-height: 42px
    }
}

@media(max-width:1379px) {
    .m2regTx strong {
        font-size: 28px;
        line-height: 32px
    }

    .m2regTx p {
        line-height: 24px
    }

    .m2reg_fm li {
        margin-bottom: 5px
    }

    .m2regBox_en .m2regTx strong {
        font-size: 24px
    }
}

@media(max-width:767px) {
    .m2regBox_en .m2regRt strong {
        font-size: 20px;
        line-height: 32px
    }

    .m2regBox_en .m2regRt p {
        font-size: 16px;
        line-height: 26px
    }

    .m2regBox_en .m2regRbm p {
        font-size: 14px;
        line-height: 24px
    }

    .m2regBox_en .m2regRbm h4 {
        font-size: 28px
    }
}

.careers_approval {
    width: 100%
}

.careers_approval section {
    padding: 90px 25px 50px
}

.careers_approval_title {
    margin-bottom: 80px;
    text-align: center;
    font-size: 32px;
    color: #024095
}

.careers_approval_item_box {
    width: 100%;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.careers_approval_item {
    width: 48%;
    min-height: 130px;
    border-top: #a8a8a8 4px solid;
    display: flex;
    box-sizing: border-box;
    padding: 20px 30px 20px 30px;
    background-color: #e7e7e7;
    margin-bottom: 20px
}

.marginLeft20 {
    margin-left: 10px
}

.careers_approval_item img {
    width: 72px;
    height: 72px;
    border: #fff 4px solid;
    -webkit-border-radius: 80px;
    -moz-border-radius: 80px;
    border-radius: 80px
}

.careers_approval_item .item_paragraph {
    flex: 1;
    padding-left: 30px
}

@media screen and (max-width:767px) {
    .careers_approval section {
        padding: 35px 0 50px
    }

    .careers_approval_title {
        margin-bottom: 20px
    }

    .careers_approval_item {
        width: 100%;
        margin-bottom: 10px
    }
}

.sliderBackMask {
    height: 415px;
    top: -415px
}

.heroBlock {
    display: block
}

.sliderBackContent {
    top: -980px
}

#contentDiv .videoPlay {
    top: 198px;
    transform: translate(-50%, -50%)
}

@media screen and (max-width:1200px) {
    .sliderBackMask {
        height: 400px;
        top: -400px
    }

    #contentDiv .videoPlay {
        top: 192px;
        transform: translate(-50%, -50%)
    }

    .sliderBackContent {
        top: -800px
    }

    .banner-with-image {
        height: 400px
    }
}

@media screen and (max-width:900px) {
    #contentDiv h1 {
        font-size: 32px
    }
}

@media screen and (max-width:767px) {
    .sliderBackMask {
        height: 300px;
        top: -300px
    }

    #contentDiv .videoPlay {
        top: 142px;
        transform: translate(-50%, -50%)
    }

    .sliderBackContent {
        top: -600px
    }

    #contentDiv h1 {
        font-size: 28px
    }

    #contentDiv p {
        font-size: 16px
    }

    .banner-with-image {
        height: 300px
    }
}

@media screen and (max-width:600px) {
    #contentDiv h1 {
        font-size: 24px
    }

    #contentDiv p {
        font-size: 14px
    }
}

@media screen and (max-width:450px) {
    #contentDiv h1 {
        font-size: 20px
    }

    #contentDiv p {
        font-size: 12px
    }
}

.pacteraOW-swiper-container {
    height: auto
}

.heroslider-swiper-slide {
    padding: 0 !important
}

.banner__video {
    height: inherit;
    pointer-events: auto
}

.banner-with-image .videoPlay {
    cursor: pointer;
    width: 5%;
    min-width: 60px;
    min-height: 0;
    position: absolute;
    z-index: 100;
    top: 50%;
    transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%)
}

.banner-with-image .hero_backgroundImage {
    width: 100%;
    height: 100%
}

.font18 {
    font-size: 14px;
    line-height: 28px
}

.transition {
    -webkit-transition: all .5s;
    -moz-transition: all .5s;
    -ms-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s
}

h5 {
    font-weight: normal;
    padding-left: 24px;
    background: url("../images/coordinate.ashx") no-repeat left -94px
}

.HeroSlider .hero-consultation,
.heroBlock .hero-consultation {
    display: flex;
    width: 100%
}

.HeroSlider .hero-consultation span,
.heroBlock .hero-consultation span {
    width: 25px;
    height: 25px
}

.HeroSlider .hero-consultation span img,
.heroBlock .hero-consultation span img {
    width: 100%;
    height: 100%
}

.HeroSlider .download span,
.heroBlock .download span,
.HeroSlider .instant-demo span,
.heroBlock .instant-demo span {
    margin-top: 20px
}

.HeroSlider .contact-phone p,
.heroBlock .contact-phone p {
    padding-left: 10px;
    margin-bottom: 0;
    font-weight: normal;
    font-size: 16px
}

.HeroSlider .download a,
.heroBlock .download a,
.HeroSlider .instant-demo a,
.heroBlock .instant-demo a {
    margin-left: 10px;
    margin-bottom: 0
}

.HeroSlider .banner__content a,
.heroBlock .banner__content a {
    margin-top: 10px
}

@media screen and (max-width:1200px) {

    .HeroSlider .contact-phone p,
    .heroBlock .contact-phone p {
        font-size: 13px
    }

    .HeroSlider .hero-consultation span,
    .heroBlock .hero-consultation span {
        width: 20px;
        height: 20px;
        min-width: 20px
    }

    .HeroSlider .download span,
    .heroBlock .download span,
    .HeroSlider .instant-demo span,
    .heroBlock .instant-demo span {
        margin-top: 25px
    }
}

@media screen and (max-width:767px) {

    .HeroSlider .contact-phone p,
    .heroBlock .contact-phone p {
        font-size: 13px !important
    }
}

@media screen and (max-width:340px) {

    .HeroSlider .banner__content a,
    .heroBlock .banner__content a {
        margin-top: 5px
    }

    .HeroSlider .download span,
    .heroBlock .download span,
    .HeroSlider .instant-demo span,
    .heroBlock .instant-demo span {
        margin-top: 20px
    }
}

.image_paragraph {
    max-width: 1150px;
    box-sizing: content-box;
    margin: 0 auto;
    box-sizing: border-box
}

.image_paragraph_box {
    display: flex;
    flex-direction: row;
    height: auto
}

.image_paragraph_box .item_paragraph {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-content: flex-start;
    justify-content: center;
    box-sizing: border-box;
    padding: 0 101px 0 0
}

.image_paragraph_box .item_paragraph .item_paragraph_title {
    font-size: 36px;
    line-height: 48px;
    box-sizing: border-box;
    text-align: left;
    color: #003a81
}

.image_paragraph_box .item_paragraph .item_paragraph_paragraph {
    margin-top: 50px;
    font-size: 18px;
    color: #333;
    line-height: 30px;
    text-align: justify;
    overflow: hidden
}

.image_paragraph_box .item_paragraph .item_paragraph_paragraph .width_auto ul {
    list-style: disc;
    margin-left: 20px
}

.image_paragraph_box .item_paragraph .item_paragraph_link {
    margin-top: 30px
}

._black_download {
    color: #333;
    border-color: #333;
    cursor: pointer
}

._black_download:hover {
    color: #ce1b2e;
    border-color: #ce1b2e
}

.image_paragraph_box .item_image {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column-reverse
}

.image_paragraph_box .item_image .item_image_image {
    max-width: 500px
}

.left_style {
    flex-direction: row-reverse
}

.left_style .item_paragraph {
    padding: 0 0 0 101px;
    text-align: right
}

.left_style .item_paragraph .item_paragraph_title {
    text-align: right
}

.left_style .item_paragraph .item_paragraph_paragraph {
    text-align: left
}

.left_style .item_paragraph .item_paragraph_link {
    text-align: right
}

.left_style .item_paragraph .width_auto {
    display: inline-block;
    float: right
}

.image_paragraph_box .bottom_cut .triangle {
    position: absolute;
    left: -95px;
    width: 190px;
    height: 190px;
    bottom: -95px;
    background: #fff;
    border: none;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.image_paragraph_box .top_cut .triangle {
    position: absolute;
    left: -95px;
    width: 190px;
    height: 190px;
    top: -95px;
    background: #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.left_style .bottom_cut .triangle {
    position: absolute;
    left: auto;
    right: -95px;
    width: 190px;
    height: 190px;
    bottom: -95px;
    background: #fff;
    border: none;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg)
}

.left_style .top_cut .triangle {
    position: absolute;
    left: initial;
    right: -95px;
    width: 190px;
    height: 190px;
    top: -95px;
    background: #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg)
}

@media screen and (max-width:1024px) {
    .image_paragraph_box {
        flex-direction: column;
        height: auto;
        margin: 0;
        display: block
    }

    .image_paragraph_box .item_paragraph {
        padding: 0;
        align-items: center;
        display: block
    }

    .image_paragraph_box .item_paragraph .item_paragraph_paragraph {
        margin-top: 35px
    }

    .image_paragraph_box .item_paragraph .item_paragraph_title {
        padding: 50px 0;
        height: auto;
        text-align: center
    }

    .image_paragraph_box .item_image {
        margin-top: 20px;
        display: block
    }

    .image_paragraph_box .item_image .item_image_image {
        max-width: 100%;
        width: 100%
    }

    .item_paragraph_link {
        margin-bottom: 15px
    }
}

@media screen and (max-width:768px) {
    .image_paragraph {
        padding: 35px 12px 50px
    }

    .image_paragraph_box .item_paragraph .item_paragraph_title {
        padding: 0;
        height: auto
    }

    .image_paragraph_box .item_image {
        max-width: 100%;
        align-self: center
    }

    .image_paragraph_box .bottom_cut .triangle {
        transform: rotate(-45deg) scale(.8)
    }

    .left_style .top_cut .triangle {
        transform: rotate(135deg) scale(.8)
    }
}

.landmark-box {
    max-width: 1510px;
    padding: 103px 55px 0 55px
}

.landmark-item {
    width: 100%;
    height: auto;
    display: flex
}

.landmark-item-year {
    width: 120px;
    font-family: MicrosoftYaHei;
    font-size: 24px;
    color: #333;
    letter-spacing: 0;
    line-height: 30px;
    text-align: left;
    margin-top: -10px
}

.landmark-item-content {
    flex: 1;
    position: relative;
    border-left: 2px solid #333;
    padding: 0 0 70px 92px
}

.landmark-item:last-child .landmark-item-content {
    border: none
}

.landmark-item-paragraph {
    margin-top: -10px;
    font-size: 18px;
    color: #333;
    letter-spacing: 0;
    line-height: 30px;
    text-align: left
}

.landmark-item-paragraph img {
    margin-top: 10px;
    height: 200px !important;
    max-width: 100%
}

.item-circle {
    background: #fff;
    border: 2px solid #d01727;
    background-color: #d01727;
    width: 12px;
    height: 12px;
    border-radius: 100%;
    position: absolute;
    top: 0;
    left: -7px
}

.landmark-item:last-child .item-circle {
    left: -5px
}

.landmark-item-imgbox img {
    height: 204px;
    width: 32%;
    margin-right: 2%;
    margin-top: 10px
}

.landmark-item-imgbox img:nth-child(3n) {
    margin-right: 0
}

img.LandMark_Item_Image_onlyone {
    width: 66%;
    height: auto
}

@media screen and (max-width:1024px) {
    .landmark-box {
        padding: 53px 55px 0 55px
    }

    .landmark-item-year {
        width: 100px;
        font-size: 15px
    }

    .landmark-item-paragraph {
        font-size: 15px
    }

    .landmark-item-paragraph p {
        font-size: 15px
    }

    .landmark-item-imgbox img {
        height: 204px;
        width: 49%;
        margin-right: 2% !important
    }

    .landmark-item-imgbox img:nth-child(2n) {
        margin-right: 0 !important
    }

    .landmark-item-content {
        padding: 0 0 70px 32px
    }

    img.LandMark_Item_Image_onlyone {
        width: 100%
    }
}

@media screen and (max-width:767px) {
    .landmark-box {
        padding: 53px 15px 0 15px
    }

    .landmark-item-year {
        width: 80px;
        font-size: 12px
    }

    .landmark-item-paragraph {
        font-size: 12px
    }

    .landmark-item-paragraph p {
        font-size: 12px
    }

    .landmark-item-imgbox img {
        width: 100%;
        margin-right: 0% !important;
        height: auto
    }

    .landmark-item-content {
        padding: 0 0 70px 32px
    }
}

.related-wrap {
    margin-top: 0
}

.case-related li:nth-child(n+2) h3 {}

.case-related li {
    float: left
}

.case-related {
    display: block
}

.related h3 {
    color: #003a81;
    width: 100%;
    text-align: center;
    margin-bottom: 18px
}

.soluTit {
    font-size: 32px;
    line-height: 32px;
    margin-bottom: 40px;
    width: 100%;
    text-align: center
}

.soluTit span {
    display: inline-block;
    font-weight: 400;
    font-family: Roboto-Light, 微软雅黑, Helvetica, Arial, sans-serif;
    border-bottom: #ffa114 2px solid;
    padding-bottom: 8px
}

.about_banner {
    font-size: 18px;
    font-weight: 400;
    width: 80%;
    margin: 80px auto 0;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: center
}

.containerHistoire h4 {
    color: #667692
}

.about_banner_promise {
    font-family: Roboto-Light, 微软雅黑, Helvetica, Arial, sans-serif
}

.containerHistoire {
    height: 400px;
    width: 84%;
    margin: 0 auto;
    overflow: hidden
}

.mt40 {
    margin-top: 20px
}

.aslide1c {
    width: 100%;
    text-align: center;
    overflow: hidden
}

.aslide1c dd {
    float: left;
    width: 30%;
    margin-right: 5%
}

.aslide1c dd img {
    width: 32%;
    margin: 0 auto;
    display: block;
    padding-bottom: 24px
}

.aslide1c dd h5 {
    padding-bottom: 40px;
    color: #7d828c;
    text-align: center
}

.aslide1c dd:last-of-type {
    margin-right: 0
}

.aslide3c {
    overflow: hidden;
    padding-top: 40px
}

.aslide3cl {
    float: left;
    width: 30%;
    margin-right: 6%
}

.aslide3cl img {
    margin-left: 58%;
    width: 42%
}

.aslide3cr {
    float: left;
    width: 64%;
    text-align: left
}

.aslide3cr p {
    width: 90%;
    margin: 0 auto;
    color: #7d8591;
    font-size: 20px
}

.fourcircle.stats-wrap:before {
    background: none
}

.fourcircle_section {
    padding-bottom: 90px;
    padding-top: 0
}

.fourcircle_section .stats-descr {
    padding: 0
}

.fourcircle_section .stats-descr h3 {
    padding-top: 90px
}

.fourcircle_bacimg {
    height: 273px;
    width: 100%
}

@media screen and (max-width:1024px) {
    .fourcircle_bacimg {
        height: 220px
    }
}

@media screen and (max-width:767px) {
    .fourcircle_bacimg {
        height: 180px
    }
}

.pacteraOW-swiper-container {
    height: auto
}

.gradientItem {
    padding: 0
}

.gradientCarouseBack,
.gradientCarouseMask {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}

.gradientCarouseContent {
    z-index: 3;
    width: 100%
}

.gradientHeroImg {
    max-width: 600px;
    max-height: 400px
}

.case-studies__item {
    border: none
}

.gradientListMask {
    width: 100%;
    min-height: inherit
}

.gardientListContent {
    position: absolute;
    bottom: 45px;
    right: 38px
}

.gardientListLi {
    padding: 0
}

.case-gardientListContent:nth-child(2n) .gardientListContent {
    right: auto
}

@media screen and (max-width:980px) {
    .gradientListMask {
        width: 100%;
        min-height: inherit
    }

    .gardientListContent {
        position: absolute;
        top: 0;
        left: 0;
        padding: 45px 38px
    }

    .case-gardientListContent:nth-child(2n) .gardientListContent {
        right: auto
    }

    .gradientCarouseContent .case-studies__item-content {
        padding: 45px 38px
    }
}

.case-studies__item-content .case-studies__item-content-context {
    font-weight: 300;
    font-size: 18px;
    line-height: 1.5;
    margin-bottom: 34px
}

.case-studies__item-content .case-studies__item-content-context p {
    margin-bottom: 0
}

@media screen and (max-width:1200px) {
    .gradientHeroImg {
        max-width: 50%;
        max-height: 55%
    }
}

@media screen and (max-width:767px) {
    .case-studies__item-content p {
        display: block
    }

    .gradientHeroImg {
        max-width: 60%;
        max-height: 30vw
    }

    .gardientListContent,
    .gradientCarouseContent .case-studies__item-content {
        padding: 35px 15px
    }
}

.banner__video {
    min-width: inherit;
    height: inherit;
    pointer-events: auto
}

.videoPlay {
    cursor: pointer;
    width: 5%;
    min-width: 60px;
    min-height: 0;
    position: absolute;
    z-index: 100;
    align-self: center;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%)
}

.hero_backgroundImage {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.case-studies__item-content {
    z-index: 0
}

@media screen and (min-width:980px) {
    .case-studies__item-content {
        position: absolute;
        bottom: 45px;
        right: 38px
    }

    .case-studies__item:nth-child(2n) .case-studies__item-content {
        right: auto
    }

    .case-studies__item:nth-child(2n) .case-studies__item-content.case-study-content-left {
        left: 38px
    }
}

.case-studies-wrap .select-group input {
    border: 1px solid #8f8f8f
}

.case-studies-wrap .select-group input::-webkit-input-placeholder {
    color: #fff
}

.case-studies-wrap .select-group input:-ms-input-placeholder {
    color: #fff
}

.case-studies-wrap .select-group input::-moz-placeholder {
    color: #fff;
    opacity: 1
}

.case-studies-wrap .select-group input:-moz-placeholder {
    color: #fff;
    opacity: 1
}

.case-studies-wrap .select-wrap .select-styled,
.case-studies-wrap .select-wrap label,
.case-studies-wrap .select-group input {
    background: #333;
    color: #fff
}

.case-studies .see-more {
    margin: 0
}

@media screen and (max-width:1450px) {
    .case-banner img.case-banner__png-img {
        max-width: none
    }
}

.paragraph_slider.tabs-heading-wrap {
    padding-top: 30px;
    padding-bottom: 60px
}

#slider .tabs-control__item span,
#slider .tabs-control__item h3 {
    background: #ce1b2e;
    color: #fff
}

#slider .tabs-control__item.active h3,
#slider .tabs-control__item.active span {
    color: #ce1b2e;
    background: #fff
}

#slider .tabs-control__item.active:hover h3,
#slider .tabs-control__item.active:hover span {
    color: #ce1b2e
}

#slider .tabs-control__item:hover h3,
#slider .tabs-control__item:hover span {
    color: #bdbcbc
}

#slider .tabs-control__item h3,
#slider .tabs-control__item span {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: -.2px;
    text-transform: uppercase
}

#slider .tabs__item-desc h4 {
    color: #33373b;
    font-size: 18px;
    font-weight: 300;
    padding-left: 35px;
    position: relative;
    line-height: 1.4;
    margin-bottom: 10px
}

@media screen and (max-width:600px) {
    #slider .tabs-control {
        justify-content: flex-start;
        transform: translateX(0);
        transition-property: all;
        transition-duration: .3s;
        transition-timing-function: ease;
        transition-delay: initial
    }
}

@media screen and (max-width:767px) {
    .tabs-control {
        width: calc(100% - 15px*2);
        left: 15px
    }
}

.tabs__container .swiper-button-next,
.tabs__container .swiper-button-prev {
    height: 83px;
    top: 0;
    margin-top: 0;
    width: 55px;
    background: #050607;
    display: none
}

@media screen and (max-width:600px) {
    .tabs__container {
        z-index: 1
    }

    .tabs__container .swiper-button-next,
    .tabs__container .swiper-button-prev {
        display: block
    }
}

@media screen and (max-width:600px) {
    #slider .tabs__container {
        padding-top: 86px;
        margin-top: -135px
    }
}

@media screen and (max-width:600px) {
    #slider .tabs-control__item {
        flex: 1 0 100%;
        width: 100%
    }
}

.tabs__container .swiper-button-prev {
    left: -25px
}

.tabs__container .swiper-button-next {
    right: -25px
}

.swiper-button-next,
.swiper-button-prev {
    position: absolute;
    top: 50%;
    width: 27px;
    height: 44px;
    margin-top: -22px;
    z-index: 10;
    cursor: pointer;
    background-size: 27px 44px;
    background-position: center;
    background-repeat: no-repeat
}

#honorCertificate .sliderYears {
    text-align: center;
    height: 32px;
    line-height: 32px;
    margin-bottom: 20px
}

#honorCertificate .swiper-button-prev {
    display: none
}

#honorCertificate .swiper-button-next {
    display: none
}

@media screen and (max-width:600px) {
    #honorCertificate .swiper-button-prev {
        display: block
    }

    #honorCertificate .swiper-button-next {
        display: block
    }
}

.sliderYears a {
    display: block;
    border: 1px #000 solid;
    width: 120px;
    height: 32px;
    line-height: 32px;
    margin-right: 20px;
    vertical-align: middle;
    float: left
}

.sliderYears a:hover {
    cursor: pointer;
    color: #000
}

.sliderHonors {
    clear: both
}

.selectActive {
    background-color: #ce1b2e
}

.alignLeft {
    float: left
}

.titleLeft {
    width: 70%;
    text-align: left;
    padding-left: 40px
}

.titleRight {
    width: 30%;
    text-align: left;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    padding-right: 40px
}

.clearLeft {
    clear: both
}

.honorTitle {
    margin-bottom: 20px;
    font-weight: 600;
    line-height: 40px
}

.honorContent {
    line-height: 48px;
    font-size: 16px
}

.honorLeft {
    padding-left: 40px
}

.honorImgDiv {
    float: left;
    position: absolute;
    left: 50px
}

.honorImgDiv .imgBg {
    position: relative;
    top: -6px;
    left: -22px
}

.honorImgDiv .imgRa {
    position: relative;
    top: -60px;
    left: 80px;
    display: block;
    width: 10px;
    height: 10px;
    border: 2px #cc1728 solid;
    border-radius: 5px;
    background-color: #fff
}

.honorImgDiv span {
    position: relative;
    left: -80px;
    top: -30px;
    color: #fff
}

.yearMargin {
    left: 120px;
    position: relative;
    border-left: 1px #000 solid;
    height: 60px;
    clear: both
}

.yearContent {
    position: absolute;
    background-color: #fafafa;
    min-width: 160px;
    float: left;
    top: 32px;
    left: 0
}

.yearContent a {
    color: #000;
    text-decoration: none;
    display: block;
    clear: both;
    border: 0;
    background-color: #f3eeeb
}

.yearContent a:hover {
    background-color: #ce1b2e
}

.showYear {
    display: block
}

.yearMore {
    display: inline-block;
    float: none
}

.yearHidden {
    display: none
}

.yearParent {
    position: relative;
    display: inline-block;
    float: left
}

@media screen and (max-width:600px) {
    .titleRight {
        display: none
    }

    .honorContent {
        margin-left: 40px
    }

    .honorImgDiv {
        left: -30px
    }

    .titleLeft {
        width: 100% !important;
        padding-left: 0
    }

    .sliderYears a {
        margin-bottom: 20px
    }

    .yearMargin {
        left: 40px
    }
}

.two-columns {
    display: flex
}

.tabs-heading-wrap p {
    margin: 0 auto 25px;
    width: 100%;
    max-width: 900px;
    text-align: center
}

.tabs-heading-wrap h2,
.tabs-heading-wrap h3 {
    width: 100%;
    max-width: 900px;
    text-align: center;
    text-transform: uppercase;
    margin: 0 auto 20px;
    color: #fff
}

.tabs__container {
    margin: 0;
    padding: 0
}

.swiper-wrapper {
    transform: translate3d(0, 0, 0);
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}

.tabs__item {
    padding: 90px 0;
    display: flex;
    justify-content: space-between;
    min-width: 100%;
    flex-grow: 1
}

.tabs__item.swiper-slide {
    padding: 0;
    opacity: 0;
    transform: scale(1);
    height: 0;
    transition: transform .5s ease, opacity .5s ease, height .5s ease
}

.tabs__item.swiper-slide-active {
    opacity: 1;
    height: auto;
    transform: scale(1)
}

.tabs__item p {
    font-size: 18px
}

.tabs__item-desc>p {
    margin-bottom: 25px
}

@media screen and (max-width:768px) {
    .tabs__item-img {
        width: 100%
    }
}

@media screen and (max-width:600px) {
    .tabs-control__item {
        flex: 0 0 50%
    }

    .tabs-control__item h3,
    .tabs-control__item span {
        padding: 0 20px
    }
}

.Paragraph.stats-descr {
    width: 100%;
    padding-bottom: 50px
}

@media screen and (max-width:767px) {
    .stats-descr {
        padding-left: 12px;
        padding-right: 12px
    }
}

.stats-descr p {
    max-width: 1100px
}

.stats-descr p.intro {
    font-size: 27px;
    line-height: 1.35;
    margin-bottom: 38px
}

.stats-descr .see-more {
    margin-bottom: 75px
}

.pargraphView {
    position: relative
}

.pargraphBackImg {
    top: 0;
    bottom: 0;
    z-index: 1
}

.pargarphBackMask {
    z-index: 2;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0
}

.pargraphContent {
    z-index: 3;
    position: relative
}

.pargraphView .pargraphWithImgLink {
    text-align: center
}

.pargraphWithImg {
    height: auto;
    text-align: center;
    padding: 90px 0 50px
}

.pargraphWithImg .pargraphWithImg-box {
    max-width: 1150px;
    margin: 0 auto
}

.pargraphWithImg .Paragraph.stats-descr.general-cards {
    padding-bottom: 0;
    padding-top: 0
}

.pargraphWithImg .pargraphWithImgLink {
    height: 32px;
    line-height: 32px;
    width: 100%;
    text-align: center;
    margin-top: 20px;
    margin-bottom: 10px
}

.pargraphWithImg .pargraphWithImgLink a {
    color: #333;
    font-size: 18px;
    border-bottom-color: #333
}

.pargraphWithImg .aslide3c {
    overflow: hidden;
    padding-top: 40px
}

.pargraphWithImg .aslide3cl_Left {
    display: inline-block;
    vertical-align: top;
    width: 40%;
    margin-right: 6%;
    height: auto;
    float: none
}

.pargraphWithImg .aslide3cl_Right {
    display: inline-block;
    vertical-align: top;
    float: none
}

.pargraphWithImg .aslide3cr {
    display: inline-block;
    vertical-align: top;
    width: 54%;
    text-align: left;
    float: none
}

.pargraphWithImg .aslide3cr_Right {
    display: inline-block;
    vertical-align: top;
    height: auto;
    width: 46%;
    float: none
}

.pargraphWithImg .about_banner_promise {
    font-family: Roboto-Light, 微软雅黑, Helvetica, Arial, sans-serif
}

.pargraphWithImg .aslide3cl_Left img {
    margin-left: 0;
    width: 100%;
    height: auto
}

.pargraphWithImg .pargraphTit {
    margin-top: 40px;
    font-size: 32px;
    line-height: 32px;
    margin-bottom: 20px;
    width: 100%;
    text-align: center
}

.pargraphWithImg .aslide3cl_Bottom {
    margin-top: 40px;
    margin-bottom: 40px
}

.pargraphWithImg .aslide3cl_Bottom_P {
    margin: auto 10%
}

.pargraphWithImg .pargraphTit span {
    color: #1e07b2;
    display: inline-block;
    font-weight: 400;
    font-family: Roboto-Light, 微软雅黑, Helvetica, Arial, sans-serif;
    padding-bottom: 8px;
    margin-top: 40px
}

.pargraphWithImg .aslide3cr_Right img {
    width: 100%;
    height: auto
}

.pargraphWithImg .pargraphWithImg p {}

.divBottomHeight {
    height: 420px
}

.aslide3cl_Top {
    margin-bottom: 20px
}

@media screen and (max-width:1200px) {
    .divBottomHeight {
        height: 420px
    }
}

@media screen and (max-width:800px) {
    .divBottomHeight {
        height: 360px
    }
}

@media screen and (max-width:600px) {
    .divBottomHeight {
        height: 300px
    }

    .pargraphWithImg .aslide3cl_Left {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px
    }

    .pargraphWithImg .aslide3cr_Right {
        width: 100%;
        margin-top: 20px
    }
}

.careers_recruit_style {
    width: 100%;
    line-height: 20px;
    padding-top: 40px;
    padding-bottom: 40px;
    text-align: center;
    background: #33363b
}

.careers_recruit_style_btn {
    font-size: 28px;
    line-height: 52px;
    color: #fff
}

.careers_recruit_style_btn a {
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1.5;
    display: inline-block;
    border-bottom: 1px solid #fff;
    margin-right: 20px;
    margin: 0 40px;
    vertical-align: text-top
}

.careers_recruit_style_btn a:hover {
    color: #ce1b2e;
    border-color: #ce1b2e
}

.careers_recruit_style_btn a:after {
    content: "»";
    display: inline;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 20px;
    margin-left: 9px;
    position: relative;
    top: 1px
}

.careers_HappyWork {
    width: 100%;
    padding-bottom: 40px;
    padding-top: 40px
}

.careers_mask {
    position: relative;
    min-height: 240px;
    width: 100%;
    z-index: 1
}

.careers_content {
    z-index: 2
}

.careers_HappyWork div.container {
    margin: 0 auto;
    overflow: hidden;
    max-width: 1195px;
    -webkit-overflow-scrolling: touch
}

.careers_HappyWork ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    font-size: 0
}

.careers_HappyWork li {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    flex: 1;
    min-width: 33.33%;
    position: relative
}

.careers_HappyWork li img.careerItem-image {
    width: 100%;
    height: auto
}

.careers_HappyWork li.two_columns {
    min-width: 66.66%
}

.careers_HappyWork li .text-container {
    width: 100%;
    margin-left: 0;
    padding: 20px 40px;
    position: absolute;
    top: 0;
    right: 0
}

.careers_HappyWork li.two_columns .text-container {
    width: 50%;
    margin-left: 50%
}

.careers_HappyWork li p {
    color: #7d8591
}

.careers_HappyWork li h4 {
    color: #333;
    font-weight: bold
}

.careers_HappyWork li.whiteFont p,
.careers_HappyWork li.whiteFont h4 {
    color: #fff
}

@media screen and (max-width:1050px) {
    .careers_HappyWork div.container {
        margin: 0 6%
    }

    .careers_HappyWork li {
        min-width: 50%;
        position: static
    }

    .careers_HappyWork li.two_columns {
        min-width: 100%
    }

    .careers_HappyWork li.two_columns .text-container {
        width: 100%;
        margin-left: 0
    }

    .careers_HappyWork li.two_columns.whiteFont p,
    .careers_HappyWork li.two_columns.whiteFont h4 {
        color: #333
    }

    .careers_mask {
        position: relative;
        min-height: 240px;
        width: 100%;
        z-index: 1
    }

    .careers_content {
        z-index: 2;
        min-height: 220px
    }

    .careers_HappyWork li {
        position: relative
    }
}

@media screen and (max-width:800px) {
    .careers_HappyWork div.container {
        margin: 0 4%
    }

    .careers_HappyWork li {
        min-width: 100%
    }

    .careers_HappyWork li.two_columns {
        min-width: 100%
    }

    .careers_mask {
        position: relative;
        min-height: 240px;
        width: 100%;
        z-index: 1
    }

    .careers_content {
        z-index: 2
    }
}

.case-related li:nth-child(n+2) h3 {}

.case-related li {
    float: left
}

.case-related {
    display: block
}

.news__item-cont {
    justify-content: center
}

.news__item-cont h4 {
    font-size: 16px;
    font-weight: normal;
    margin-top: 10px;
    line-height: 1.5
}

.news__item-cont .news__item-cont__richtext {
    font-size: 14px;
    padding-top: 10px
}

.news__item-cont .news__item-cont__richtext::after {
    content: "...";
    margin-left: 5px
}

.case-studies__item-content h4 {
    font-weight: normal
}

.beating_notes_multilist {
    padding-top: 90px
}

.beating_notes_multilist .block-heading .mobile-heading {
    display: block;
    font-size: 32px;
    margin-bottom: 40px;
    font-weight: 500
}

.beating_notes_multilist .block-heading p {
    max-width: 1150px;
    width: auto;
    font-size: 18px
}

.beating_notes_multilist .cards__item {
    flex: 1
}

.beating_notes_multilist .cards__item-content ul li {
    color: #fff;
    font-size: 13px
}

.beating_notes_multilist .cards__item-content ul li:nth-child(11)~li {
    display: none
}

.beating_notes_multilist .cards__item-content ul a {
    text-decoration: none
}

@media screen and (max-width:540px) {
    .beating_notes_multilist .cards__item-content {
        transform: translateY(0)
    }

    .beating_notes_multilist .cards__item-content h3 {
        transform: translateY(31vw)
    }

    .beating_notes_multilist .cards__item-content ul {
        display: none
    }

    .beating_notes_multilist .cards__item-content>a {
        position: absolute;
        display: block;
        text-indent: -9999px;
        width: 100%;
        height: 100%;
        z-index: 5;
        top: 0;
        left: 0
    }
}

.Beating_notes_rectangle.general-cards.cards-grid__wrap {
    padding-bottom: 50px
}

.three_column_cards li:nth-child(5),
.three_column_cards li:nth-child(8) {
    margin-right: 1px !important
}

.three_column_cards li {
    height: 300px !important
}

@media screen and (min-width:1201px) {
    .three_column_cards {
        max-width: 1350px;
        margin: 0 auto
    }

    .three_column_cards li {
        flex: 0 1 33.2% !important;
        height: 300px !important
    }

    .three_column_cards li:nth-child(3) {
        margin-right: 0 !important
    }
}

@media screen and (max-width:1200px) {

    .general-cards__wrap.cards-grid li:nth-child(4),
    .general-cards__wrap.cards-grid li:nth-child(5),
    .general-cards__wrap.cards-grid li:nth-child(9),
    .general-cards__wrap.cards-grid li:nth-child(10) {
        flex-basis: initial
    }

    .three_column_cards li:nth-child(7) {
        margin-right: 1px !important
    }

    .three_column_cards li {
        min-width: calc(33.2%) !important;
        flex-grow: 0 !important
    }
}

@media screen and (max-width:767px) {

    .general-cards__wrap.cards-grid li:nth-child(4),
    .general-cards__wrap.cards-grid li:nth-child(5),
    .general-cards__wrap.cards-grid li:nth-child(9),
    .general-cards__wrap.cards-grid li:nth-child(10) {
        flex-basis: initial
    }

    .three_column_cards li {
        flex-basis: initial !important;
        min-width: 49% !important;
        flex-grow: 1 !important
    }

    .three_column_cards li:nth-child(2) {
        margin-right: 0 !important
    }
}

@media screen and (max-width:450px) {
    .general-cards.cards-grid__wrap {
        padding-left: 0;
        padding-right: 0
    }

    .general-cards__wrap.cards-grid li {
        height: initial
    }
}

.swiper-wrapper .general-cards__item {
    height: 400px
}

.swiper-wrapper .general-cards__item-image img {
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    -o-transform-origin: top;
    transform-origin: top
}

.swiper-wrapper .general-cards__item-cont {
    -webkit-transform: translateY(100%) translateY(-100px);
    -moz-transform: translateY(100%) translateY(-100px);
    -ms-transform: translateY(100%) translateY(-100px);
    -o-transform: translateY(100%) translateY(-100px);
    transform: translateY(100%) translateY(-100px)
}

@media screen and (max-width:1200px) {
    .general-cards__item-image {
        -webkit-transform: scaleY(.8);
        -moz-transform: scaleY(.8);
        -ms-transform: scaleY(.8);
        -o-transform: scaleY(.8);
        transform: scaleY(.8)
    }
}

.Beating_notes_square.noTitleAndParaStyle {
    padding-top: 60px
}

.Beating_notes_square {
    padding-bottom: 50px
}

.Beating_notes_square .general-cards__wrap+.general-cards__wrap {
    margin-top: -30px
}

_:-ms-fullscreen,
:root .general-cards__wrap .general-cards__item-image img {
    position: relative;
    left: 50%;
    transform: translateX(-50%) scaleY(1.2)
}

_:-ms-fullscreen,
:root .cards-grid.general-cards__wrap .general-cards__item-image img {
    transform: translateX(-50%) scaleY(1)
}

_:-ms-fullscreen,
:root .general-cards__wrap .general-cards__item:hover .general-cards__item-image img {
    transform: translateX(-50%) scaleY(1)
}

.Beating_notes_square .general-cards__item-image {
    transform: scaleY(.87) translateZ(0)
}

.Beating_notes_square .general-cards__item:after {
    transform: scaleY(.87) translateZ(0)
}

.Beating_notes_square .general-cards__item:hover:after {
    transform: scaleY(1) translateZ(0)
}

.general-cards__itemWithoutHover {
    height: 230px;
    display: flex;
    flex: 1 1 33.33%;
    position: relative;
    margin-right: 1px;
    color: #fff;
    overflow: hidden;
    border-bottom: 3px solid #ce1b2e
}

.rectangleDivWithoutHover {
    width: 100%;
    height: 32px;
    z-index: 1;
    text-align: center;
    vertical-align: middle;
    line-height: 32px;
    position: absolute;
    bottom: 10px
}

.rectangleItemWithoutHover {
    height: 230px;
    display: flex;
    flex: 1 1 33.33%;
    position: relative;
    margin-right: 1px;
    color: #fff;
    overflow: hidden
}

.rectangleItemWithoutHover .general-cards__item-image {
    max-height: 240px;
    top: 0
}

@media screen and (max-width:1200px) {
    .Beating_notes_square .general-cards__item-image {
        -webkit-transform: scaleY(1);
        -moz-transform: scaleY(1);
        -ms-transform: scaleY(1);
        -o-transform: scaleY(1);
        transform: scaleY(1)
    }

    .Beating_notes_square .general-cards__wrap+.general-cards__wrap {
        margin-top: 0
    }

    .general-cards__itemWithoutHover {
        min-width: 33%;
        margin-top: 1px
    }
}

@media screen and (max-width:600px) {
    .Beating_notes_square .general-cards__item-cont {
        justify-content: flex-start
    }

    .Beating_notes_square .general-cards__item_mobile .general-cards__item-cont p {
        display: block
    }
}

.Beating_notes_rectangle .general-cards__itemWithoutHover .general-cards__item-cont {
    justify-content: flex-start
}

.recognition_awards .case-landing-bottom {
    padding: 90px 25px 50px
}

.recognition_awards section h3.only-title {
    margin-bottom: 40px
}

.recognition_awards .rich_content {
    padding: 10px 0 20px 0
}

.bottom-rel-images {
    overflow: visible !important
}

.bottom-rel-images .section__wrap {
    justify-content: flex-start
}

.recognition_awards .bottom-rel-images .section__wrap img {
    max-width: 100%;
    height: auto
}

.bottom-rel-images .section__wrap>img,
.bottom-rel-images .section__wrap>h4,
.bottom-rel-images .section__wrap>h3,
.bottom-rel-images .section__wrap>p {
    margin-bottom: 12px
}

.bottom-rel-images .section__wrap>h4,
.bottom-rel-images .section__wrap>h3,
.bottom-rel-images .section__wrap>p {
    width: 100%
}

.bottom-rel-images .section__wrap>p {
    text-align: left
}

.bottom-rel-images .section__wrap>h4,
.bottom-rel-images .section__wrap>h3,
.bottom-rel-images .section__wrap p:last-child {
    text-align: center
}

.bottom-rel-images .recognition_awards_item_title {
    font-size: 20px;
    font-weight: normal;
    color: #000
}

@media screen and (max-width:1200px) {
    .bottom-rel-images .section__wrap {
        height: auto
    }
}

@media screen and (max-width:767px) {
    .recognition_awards .case-landing-bottom {
        padding: 35px 15px 50px
    }
}

.recognition_awards .rich_content strong {
    font-weight: bold
}

.recognition_awards .item-full-Cover .bottom-rel-images .section__wrap img {
    width: 100%
}

.recognition_awards .section__wrap>p {
    text-align: center
}

.recognition_awards_with_slider .bottom-rel-images div+div {
    border-left: none
}

.recognition_awards_without_slider .swiper-button-prev,
.recognition_awards_without_slider .swiper-button-next {
    display: none
}

.leadership-page__container .tabs__item ul.general-cards__wrap {
    justify-content: flex-start
}

.leader-popup__heading {
    font-weight: normal
}

.leader-popup-img.scaled {
    -webkit-transform: translateY(0) scale(.6734);
    -moz-transform: translateY(0) scale(.6734);
    -ms-transform: translateY(0) scale(.6734);
    -o-transform: translateY(0) scale(.6734);
    transform: translateY(0) scale(.6734)
}

.leader-popup__cont {
    line-height: 1.5
}

.leadership-page__tabs>section {
    padding-top: 0
}

.contact-us .Search_Position form .form-item {
    width: 50%;
    float: left
}

.contact-us .Search_Position form .form-item .keywordinput {
    width: 70%
}

.contact-us .Search_Position form .form-item .search_button {
    height: 100%;
    vertical-align: top;
    padding: 10px;
    background-color: transparent;
    color: #000;
    border: 1px solid #8f8f8f
}

.paragraph_rotate .slider-wrap {
    padding-bottom: 0
}

.paragraph_rotate_item_paragraph strong {
    font-weight: bold
}

.paragraph_rotate_item_img_style {
    padding: 0 !important
}

.paragraph_rotate_item_img_style .paragraph_rotate_item {
    text-align: left;
    max-width: 1150px;
    margin: 0 auto
}

.paragraph_rotate_item_img_style .paragraph_rotate_item .paragraph_rotate_item_img img {
    width: 100%;
    height: auto;
    max-height: 350px
}

.paragraph_rotate_item .paragraph_rotate_item_paragraph p {
    margin-bottom: 0;
    padding: 0 30PX 0 0
}

@media screen and (max-width:768px) {
    .paragraph_rotate_item_img_style .paragraph_rotate_item {
        text-align: center;
        flex-direction: column
    }

    .paragraph_rotate_item_img_style .paragraph_rotate_item .paragraph_rotate_item_paragraph {
        max-width: 85%;
        margin: 0 auto
    }

    .paragraph_rotate_item_img_style .paragraph_rotate_item .paragraph_rotate_item_paragraph p {
        padding: 0;
        max-width: 100%
    }

    .paragraph_rotate_item_img_style .paragraph_rotate_item .paragraph_rotate_item_img img {
        MARGIN-TOP: 20PX
    }

    .general-cards__itemWithoutHover {
        min-width: 49%;
        flex: 1 1 calc(50% - 1px)
    }
}

.paragraph_rotate {
    padding: 90px 25px 50px;
    max-width: 1150px;
    box-sizing: content-box
}

.paragraph_rotate .paragraph_rotate_item_title {
    width: 100%;
    margin-bottom: 80px;
    border-bottom: 3px solid #e1e3e7
}

.paragraph_rotate .paragraph_rotate_item .paragraph_rotate_item_paragraph {
    display: flex;
    flex-direction: column;
    justify-content: center
}

.paragraph_rotate .slider-control {
    max-width: 1150px;
    margin: 0 auto;
    border: none
}

.paragraph_rotate .swiper-button-prev,
.paragraph_rotate .swiper-button-next {
    display: none
}

@media screen and (max-width:600px) {

    .paragraph_rotate .swiper-button-prev,
    .paragraph_rotate .swiper-button-next {
        display: block
    }

    .general-cards__itemWithoutHover {
        min-width: 100%;
        flex: 1 1 100%;
        margin-right: 0;
        height: 120px
    }
}

.career_tree {
    width: 100%;
    max-width: none;
    padding: 0
}

.careers_tree_title {
    width: 100%;
    max-width: 1510px;
    padding: 0 55px;
    margin: 90px auto;
    margin-bottom: 0;
    text-align: center;
    font-size: 32px;
    color: #024095;
    position: relative
}

.careers_tree_list_mobile {
    opacity: 0;
    height: 0
}

.careers_tree_list_mobile .swiper-container {
    width: 100%;
    height: 100%;
    overflow: hidden
}

.careers_tree_list_mobile .bottom-rel-images .section__wrap>img {
    margin-bottom: 0
}

.careers_tree_paragraph {
    position: absolute;
    left: 55px;
    top: 160px;
    width: 310px;
    font-size: 14px;
    color: #333;
    line-height: 30px;
    text-align: left
}

.careers_tree_paragraph ul {
    list-style-type: disc;
    color: #0a90f2;
    text-align: left;
    margin-left: 18px;
    margin-top: 100px
}

.careers_tree_paragraph ul li span,
.careers_tree_paragraph ul li p {
    color: #333
}

.career_tree .careers_tree_box object {
    width: 100%;
    height: 1174.69px
}

@media screen and (max-width:1024px) {
    .careers_tree_title {
        margin-top: 35px
    }

    .careers_tree_box #flash,
    .careers_tree_paragraph ul {
        display: none
    }

    .careers_tree_paragraph {
        position: static;
        margin-top: 55px;
        width: 100%
    }

    .careers_tree_list_mobile {
        opacity: 1;
        height: auto;
        margin-top: 40px;
        margin-bottom: 40px
    }
}

@media screen and (max-width:980px) {
    .careers_tree_list_mobile .bottom-rel-images {
        padding-bottom: 0
    }
}

@media screen and (max-width:767px) {
    .careers_tree_title {
        padding: 0 15px;
        margin-top: 0
    }

    .careers_tree_paragraph {
        margin-top: 25px
    }
}

.social-recruitment_details p {
    margin-bottom: 4px
}

.social-recruitment .general-cards__wrap .general-cards__item {
    height: 400px;
    -ms-flex: 0 1 24.8%;
    flex: 0 1 calc(100%/4 - 4px)
}

.PositionList ul {
    padding-bottom: 100px;
    overflow: hidden;
    width: 100%;
    margin: auto;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center;
    display: flex;
    flex-wrap: wrap
}

.PositionList li.PositionItem {
    width: calc(100%/4);
    margin-top: 50px;
    margin-bottom: 20px;
    padding: 0 20px
}

@media only screen and (max-width:800px) {
    .PositionList li.PositionItem {
        width: calc(100%/3)
    }
}

@media only screen and (max-width:480px) {
    .PositionList li.PositionItem {
        width: calc(100%/2)
    }
}

.PositionList .positionName,
.PositionList .positionName a {
    color: #003a81
}

.PositionList .positionName a:after {
    content: "";
    width: 8px;
    height: 8px;
    border: 1px solid #003a81;
    border-right: 0;
    border-bottom: 0;
    transform: rotate(135deg);
    display: inline-block;
    position: absolute;
    margin: 7px 0 0 4px
}

.PositionList .positionNum {
    margin-top: 24px;
    padding-bottom: 5px;
    border-bottom-color: #003a81;
    border-bottom-style: solid;
    border-bottom-width: 1px;
    color: gray;
    font-size: 14px
}

.campus-band .careers_recruit_style_btn {
    max-width: 1180px;
    font-size: 20px;
    line-height: 1.5;
    text-align: left;
    padding: 0 30px;
    box-sizing: border-box;
    margin: 0 auto
}

.campus-band .careers_recruit_style_btn a {
    float: right;
    margin: 0
}

@media only screen and (max-width:980px) {
    .campus-band .careers_recruit_style_btn {
        padding-bottom: 32px
    }

    .campus-band .careers_recruit_style_btn a {
        display: block;
        position: absolute;
        right: 30px
    }
}

.ShowSubitem .Subitem-head {
    color: #000;
    text-align: center;
    max-width: 900px;
    margin: 0 auto;
    width: 100%
}

.ShowSubitem .Subitem-head .subitemIntroduction_title {
    margin: 90px 0 40px;
    font-size: 32px;
    font-weight: 500
}

.ShowSubitem .Subitem-head .intro {
    font-size: 27px;
    line-height: 1.35;
    font-weight: 400
}

.ShowSubitem .subitemintroduction_subIntro {
    padding-left: 50px;
    width: 80%
}

.ShowSubitem .subitemintroduction_columnContent {
    padding-right: 0;
    width: 100%
}

.ShowSubitem .industries__list li a {
    padding-left: 0;
    font-size: 16px
}

.ShowSubitem .industries__list>li>a.active:after {
    box-sizing: border-box;
    content: "";
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    right: 0;
    top: 50%;
    margin-top: -5px;
    margin-right: -5px;
    border-right: 5px solid #ce1b2e;
    border-bottom: 5px solid #ce1b2e;
    border-left: 5px solid #fff;
    border-top: 5px solid #fff;
    transform: scaleX(1) rotate(-45deg);
    transition: transform .15s ease
}

.ShowSubitem .industries__list>li>a.active:before {
    display: none
}

.ShowSubitem .industries__list {
    max-width: 250px
}

.ShowSubitem .industries__list li {
    height: 46px
}

.ShowSubitem .industries__descr p {
    font-size: 18px
}

.ShowSubitem .two-columns-item {
    width: auto
}

.ShowSubitem .two-columns-item.industries__list-wrap {
    width: 20%
}

.ShowSubitem .two-columns {
    justify-content: flex-start
}

.ShowSubitem .industries {
    max-width: 1100px;
    flex-direction: row;
    padding: 40px 0 50px
}

.ShowSubitem .industries__descr h3.changed-heading {
    font-size: 32px;
    margin-top: 20px
}

.ShowSubitem .industries__descr h2.changed-heading {
    font-size: 32px;
    margin-top: 20px;
    text-align: left
}

.ShowSubitem .fade-out.industries__descr {
    transform: matrix(1, 0, 0, 1, 0, 0);
    -webkit-filter: blur(0);
    filter: blur(0)
}

.ShowSubitem .industries__list>li>a .svg_wrap {
    height: 70%
}

.ShowSubitem .industries__list li a .svg_wrap img,
.ShowSubitem .industries__list li a svg {
    width: 100%;
    height: 100%
}

.ShowSubitem .industries__descr p {
    line-height: 1.5;
    margin-bottom: 15px
}

.ShowSubitem .industries__descr p .SubitemIntroduction_Image {
    margin-top: 20px;
    width: 100%;
    height: auto
}

@media only screen and (max-width:980px) {
    .two-columns {
        -ms-flex-direction: unset;
        flex-direction: unset
    }

    .ShowSubitem .two-columns-item.industries__list-wrap {
        width: 100%;
        margin: 0
    }

    .ShowSubitem .industries__list {
        max-width: 100%
    }

    .ShowSubitem .industries__list li {
        height: auto
    }

    .ShowSubitem .industries__list li a {
        width: 100%;
        padding-left: 50px
    }

    .ShowSubitem .subitemintroduction_subIntro {
        display: none
    }

    .industries__list>li>a.active+div.industries__list--item__detail {
        max-height: none
    }

    .industries__list>li>a.active+div.industries__list--item__detail p img {
        width: 100%;
        height: auto
    }

    .industries__list>li>a.active+div.industries__list--item__detail a {
        width: auto;
        padding-left: 0
    }

    .ShowSubitem .industries__list>li>a.active:after {
        display: none
    }
}

@media only screen and (max-width:767px) {
    #content .ShowSubitem {
        padding: 0 25px
    }

    .ShowSubitem .industries__list li a {
        padding-left: 0
    }
}

.LatestNews section {
    padding-top: 0
}

.LatestNews.related-wrap {
    padding-top: 90px;
    padding-bottom: 50px
}

.LatestNews .related h3 {
    margin-bottom: 0
}

.LatestNews .case-related {
    padding-top: 40px;
    padding-bottom: 50px
}

.footprint {
    padding-bottom: 50px
}

.tab_beating_notes_pageheadspace {
    padding: 0 25px 20px
}

.cd-horizontal-timeline-wrap {
    background-color: inherit
}

.honorSpan {
    display: inline-block;
    line-height: 25px;
    vertical-align: text-top
}

.cd-horizontal-timeline {
    opacity: 0;
    margin: 0 auto;
    -webkit-transition: opacity .2s;
    -moz-transition: opacity .2s;
    transition: opacity .2s;
    color: inherit
}

.cd-horizontal-timeline::before {
    content: 'mobile';
    display: none
}

.cd-horizontal-timeline.loaded {
    opacity: 1
}

.cd-horizontal-timeline .timeline {
    position: relative;
    height: 100px;
    width: 90%;
    margin: 0 auto
}

.cd-horizontal-timeline .events-wrapper {
    position: relative;
    height: 100%;
    margin: 0 40px;
    overflow: hidden
}

.cd-horizontal-timeline .events-wrapper::after,
.cd-horizontal-timeline .events-wrapper::before {
    content: '';
    position: absolute;
    z-index: 2;
    top: 0;
    height: 100%;
    width: 20px
}

.cd-horizontal-timeline .events-wrapper::before {
    left: 0;
    background-image: -webkit-linear-gradient(left, #f8f8f8, rgba(248, 248, 248, 0));
    background-image: linear-gradient(to right, #f8f8f8, rgba(248, 248, 248, 0))
}

.cd-horizontal-timeline .events-wrapper::after {
    right: 0;
    background-image: -webkit-linear-gradient(right, #f8f8f8, rgba(248, 248, 248, 0));
    background-image: linear-gradient(to left, #f8f8f8, rgba(248, 248, 248, 0))
}

.cd-horizontal-timeline .events {
    position: absolute;
    z-index: 1;
    left: 0;
    top: 49px;
    height: 2px;
    background: #dfdfdf;
    -webkit-transition: -webkit-transform .4s;
    -moz-transition: -moz-transform .4s;
    transition: transform .4s
}

.cd-horizontal-timeline .filling-line {
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background-color: #7b9d6f;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left center;
    -moz-transform-origin: left center;
    -ms-transform-origin: left center;
    -o-transform-origin: left center;
    transform-origin: left center;
    -webkit-transition: -webkit-transform .3s;
    -moz-transition: -moz-transform .3s;
    transition: transform .3s
}

.cd-horizontal-timeline .events a {
    position: absolute;
    bottom: 0;
    z-index: 2;
    text-align: center;
    font-size: 1.3rem;
    padding-bottom: 15px;
    color: #383838;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0)
}

.cd-horizontal-timeline .events a::after {
    content: '';
    position: absolute;
    left: 50%;
    right: auto;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -5px;
    height: 12px;
    width: 12px;
    border-radius: 50%;
    border: 2px solid #dfdfdf;
    background-color: #f8f8f8;
    -webkit-transition: background-color .3s, border-color .3s;
    -moz-transition: background-color .3s, border-color .3s;
    transition: background-color .3s, border-color .3s
}

.no-touch .cd-horizontal-timeline .events a:hover::after {
    background-color: #7b9d6f;
    border-color: #7b9d6f
}

.cd-horizontal-timeline .events a.selected {
    pointer-events: none
}

.cd-horizontal-timeline .events a.selected::after {
    background-color: #7b9d6f;
    border-color: #7b9d6f
}

.cd-horizontal-timeline .events a.older-event::after {
    border-color: #7b9d6f
}

@media only screen and (min-width:1100px) {
    .cd-horizontal-timeline::before {
        content: 'desktop'
    }
}

.cd-timeline-navigation a {
    position: absolute;
    z-index: 1;
    top: 50%;
    bottom: auto;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    height: 34px;
    width: 34px;
    border-radius: 50%;
    border: 2px solid #dfdfdf;
    overflow: hidden;
    color: transparent;
    text-indent: 100%;
    white-space: nowrap;
    -webkit-transition: border-color .3s;
    -moz-transition: border-color .3s;
    transition: border-color .3s
}

.cd-timeline-navigation a::after {
    content: '';
    position: absolute;
    height: 16px;
    width: 16px;
    left: 50%;
    top: 50%;
    bottom: auto;
    right: auto;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    background: url("../images/cd-arrow.ashx") no-repeat 0 0
}

.cd-timeline-navigation a.prev {
    left: 0;
    -webkit-transform: translateY(-50%) rotate(180deg);
    -moz-transform: translateY(-50%) rotate(180deg);
    -ms-transform: translateY(-50%) rotate(180deg);
    -o-transform: translateY(-50%) rotate(180deg);
    transform: translateY(-50%) rotate(180deg)
}

.cd-timeline-navigation a.next {
    right: 0
}

.no-touch .cd-timeline-navigation a:hover {
    border-color: #7b9d6f
}

.cd-timeline-navigation a.inactive {
    cursor: not-allowed
}

.cd-timeline-navigation a.inactive::after {
    background-position: 0 -16px
}

.no-touch .cd-timeline-navigation a.inactive:hover {
    border-color: #dfdfdf
}

.cd-horizontal-timeline .events-content {
    position: relative;
    width: 100%;
    margin: 0 0;
    overflow: hidden;
    -webkit-transition: height .4s;
    -moz-transition: height .4s;
    transition: height .4s
}

.cd-horizontal-timeline .events-content li {
    position: absolute;
    z-index: 1;
    width: 100%;
    left: 0;
    top: 0;
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
    padding: 0 5%;
    opacity: 0;
    -webkit-animation-duration: .4s;
    -moz-animation-duration: .4s;
    animation-duration: .4s;
    -webkit-animation-timing-function: ease-in-out;
    -moz-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out
}

.cd-horizontal-timeline .events-content li.selected {
    position: relative;
    z-index: 2;
    opacity: 1;
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0)
}

.cd-horizontal-timeline .events-content li.enter-right,
.cd-horizontal-timeline .events-content li.leave-right {
    -webkit-animation-name: cd-enter-right;
    -moz-animation-name: cd-enter-right;
    animation-name: cd-enter-right
}

.cd-horizontal-timeline .events-content li.enter-left,
.cd-horizontal-timeline .events-content li.leave-left {
    -webkit-animation-name: cd-enter-left;
    -moz-animation-name: cd-enter-left;
    animation-name: cd-enter-left
}

.cd-horizontal-timeline .events-content li.leave-right,
.cd-horizontal-timeline .events-content li.leave-left {
    -webkit-animation-direction: reverse;
    -moz-animation-direction: reverse;
    animation-direction: reverse
}

.cd-horizontal-timeline .events-content li>* {
    margin: 0 auto
}

.cd-horizontal-timeline .events-content h2 {
    font-weight: bold;
    font-size: 2.6rem;
    font-family: "Playfair Display", serif;
    font-weight: 700;
    line-height: 1.2
}

.cd-horizontal-timeline .events-content em {
    display: block;
    font-style: italic;
    margin: 10px auto
}

.cd-horizontal-timeline .events-content em::before {
    content: '- '
}

.cd-horizontal-timeline .events-content p {
    font-size: 1.4rem;
    color: #959595
}

.cd-horizontal-timeline .events-content em,
.cd-horizontal-timeline .events-content p {
    line-height: 1.6
}

@media only screen and (min-width:768px) {
    .cd-horizontal-timeline .events-content h2 {
        font-size: 7rem
    }

    .cd-horizontal-timeline .events-content em {
        font-size: 2rem
    }

    .cd-horizontal-timeline .events-content p {
        font-size: 1.8rem
    }
}

@-webkit-keyframes cd-enter-right {
    0% {
        opacity: 0;
        -webkit-transform: translateX(100%)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0%)
    }
}

@-moz-keyframes cd-enter-right {
    0% {
        opacity: 0;
        -moz-transform: translateX(100%)
    }

    100% {
        opacity: 1;
        -moz-transform: translateX(0%)
    }
}

@keyframes cd-enter-right {
    0% {
        opacity: 0;
        -webkit-transform: translateX(100%);
        -moz-transform: translateX(100%);
        -ms-transform: translateX(100%);
        -o-transform: translateX(100%);
        transform: translateX(100%)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0%);
        -moz-transform: translateX(0%);
        -ms-transform: translateX(0%);
        -o-transform: translateX(0%);
        transform: translateX(0%)
    }
}

@-webkit-keyframes cd-enter-left {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100%)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0%)
    }
}

@-moz-keyframes cd-enter-left {
    0% {
        opacity: 0;
        -moz-transform: translateX(-100%)
    }

    100% {
        opacity: 1;
        -moz-transform: translateX(0%)
    }
}

@keyframes cd-enter-left {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-100%);
        -moz-transform: translateX(-100%);
        -ms-transform: translateX(-100%);
        -o-transform: translateX(-100%);
        transform: translateX(-100%)
    }

    100% {
        opacity: 1;
        -webkit-transform: translateX(0%);
        -moz-transform: translateX(0%);
        -ms-transform: translateX(0%);
        -o-transform: translateX(0%);
        transform: translateX(0%)
    }
}

.case-section-bg {
    width: 100%
}

.case-section {
    width: 100%;
    max-width: 830px;
    margin: 0 auto;
    padding-top: 90px;
    padding-bottom: 50px;
    padding-left: 25px;
    padding-right: 25px
}

.case-section .title {
    text-align: center;
    color: #003a81
}

.case-section .title a {
    font-size: 32px;
    font-weight: 500;
    color: #003a81;
    border-color: #003a81;
    cursor: pointer
}

.case-section .title a:hover {
    color: #ce1b2e;
    border-color: #ce1b2e
}

.case-section .content-list {
    margin-top: 25px;
    padding-left: 5px
}

.case-section .content-list div {
    margin-bottom: 4px;
    font-size: 14px;
    line-height: 1.5
}

.case-section .content-list div p {
    margin-bottom: 4px;
    font-size: 14px;
    line-height: 1.5
}

.case-section .content-list ul li {
    padding-left: 35px;
    position: relative;
    list-style: none;
    line-height: 1.5;
    font-size: 14px
}

.case-section .content-list ul li:before {
    content: "";
    width: 20px;
    height: 7px;
    position: absolute;
    left: 0;
    top: 8px;
    background: url(../images/list-arr.png) no-repeat
}

.case-section .content-list h4,
.case-section .content-list h5 {
    font-weight: bold;
    background: none;
    padding-left: 0;
    line-height: 1.5;
    font-size: 24px;
    margin-bottom: 10px
}

.case-section .content-list img {
    width: 100%;
    height: auto
}

.hide {
    display: none
}

.show {
    display: inherit
}

#contactForm {
    text-align: center;
    width: 40%;
    position: fixed;
    top: 200px;
    left: 25%;
    background: rgba(0, 0, 0, .5);
    z-index: 1000;
    padding: 50px
}

#contactForm div input {
    margin: 10px 0;
    height: 40px;
    line-height: 40px;
    width: 50%
}

#contactForm button {}

@media screen and (max-width:767px) {
    #contactForm {
        width: 80%;
        left: 10%
    }

    #contactForm div input {
        width: 80%
    }
}

.case-detail-evaluation {
    background-image: url(../images/case-detail.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    font-family: 楷体
}

.case-detail-evaluation .evaluation-title {
    text-align: center;
    padding-top: 70px
}

.case-detail-evaluation .evaluation-content {
    margin: 0 auto;
    max-width: 1150px;
    padding-top: 30px;
    padding-bottom: 50px
}

.case-detail-evaluation .semicolon {
    font-size: 40px;
    line-height: 22px
}

.case-detail-evaluation .left-semicolon {
    text-align: left
}

.case-detail-evaluation .right-semicolon {
    text-align: right;
    margin-top: 15px
}

.right-text {
    text-align: right
}

.case-detail-evaluation p {
    font-family: 楷体
}

.partner-list ul li {
    display: inline-block;
    float: left;
    width: 33.33%;
    padding-left: 5%;
    padding-right: 5%;
    box-sizing: border-box;
    margin-bottom: 40px
}

.partner-list ul li img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto
}

@media screen and (max-width:768px) {
    .partner-list ul li {
        width: 50%
    }
}

@media screen and (max-width:450px) {
    .partner-list ul li {
        width: 100%
    }
}

.categories-filter li a {
    cursor: pointer
}

.insights__wrap .input-wrap,
.case-studies-wrap .input-wrap {
    position: relative;
    margin-right: 40px;
    width: 400px;
    max-width: 400px
}

.insights__wrap .select-group input[type="text"],
.case-studies-wrap .select-group input[type="text"] {
    padding: 0 12px;
    flex-grow: 1;
    height: 48px;
    font-size: 13px;
    width: 100%;
    padding-right: 40px
}

.insights__wrap .select-group button[type="submit"],
.case-studies-wrap .select-group button[type="submit"] {
    position: absolute;
    top: 8px;
    right: 2px;
    background-color: transparent;
    border: none;
    cursor: pointer
}

.insights__wrap .insights-listing .insights__item .insights__item-links>a:first-child {
    border-right: none
}

.insights__item-image-wrap img {
    height: auto
}

@media screen and (max-width:767px) {

    .insights__wrap .input-wrap,
    .case-studies-wrap .input-wrap {
        max-width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
        width: 100%
    }

    .insights__item-image-wrap a {
        height: 208px
    }

    .insights__item-image-wrap img {
        max-height: none
    }
}

.render-loc.render-city .heading {
    position: relative
}

.render-loc.render-city .heading h2 {
    margin-right: 0
}

.render-loc.render-city .detail__item {
    padding: 0 10px;
    border-right: none;
    max-width: 100%;
    margin: 0 auto 40px 0
}

.render-loc.render-city .detail__item p {
    padding-left: 33px
}

.render-loc.render-city .detail__item>svg {
    left: 10px
}

.render-loc.render-city .render-loc__subtitle-wrap {
    min-width: 300px;
    position: absolute;
    top: 0;
    right: 0
}

@media screen and (max-width:1200px) {
    .render-loc.render-city .detail__item {
        min-width: 50%
    }
}

@media screen and (max-width:850px) {
    .render-loc.render-city .render-loc__subtitle-wrap {
        position: static
    }

    .render-loc.render-city .heading {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        flex-direction: column-reverse
    }
}

@media screen and (max-width:767px) {
    .render-loc.render-city .detail__item {
        min-width: 100%
    }

    .locations .general-cards__item-cont {
        transform: translateY(100%) translateY(-100px) !important
    }

    #locationsContainer {
        margin-bottom: 90px
    }
}

.image-text-desc-list.hasMargin {
    margin-top: -132px
}

.image-text-desc-list h3 {
    color: #003a81
}

.image-text-desc-list ul {
    display: flex;
    align-items: stretch
}

.image-text-desc-list ul li {
    border: solid 1px #ddd;
    margin: 0 .2%;
    flex: 1;
    height: auto;
    display: flex;
    flex-direction: column
}

.image-text-desc-list ul li .image {
    text-align: center;
    padding-top: 40px
}

.image-text-desc-list ul li .list-item-text {
    padding: 20px 0
}

.image-text-desc-list ul li .title {
    align-self: center;
    margin: 0 auto;
    display: -webkit-box;
    -webkit-box-pack: center;
    -webkit-box-align: center;
    -webkit-box-orient: vertical;
    text-align: center;
    color: #333;
    margin-bottom: 20px
}

.image-text-desc-list ul li .description {
    color: #868686;
    font-size: 14px;
    padding: 0 10px;
    line-height: 25px
}

@media only screen and (max-width:1390px) {
    .image-text-desc-list ul li {}
}

@media only screen and (max-width:1200px) {
    .image-text-desc-list ul li {}
}

@media only screen and (max-width:1000px) {
    .image-text-desc-list ul {
        flex-wrap: wrap
    }

    .image-text-desc-list ul li {
        min-width: 100%;
        flex-direction: row;
        align-items: center;
        padding: 20px 0
    }

    .image-text-desc-list ul li .image {
        min-width: 20%;
        padding-top: 0
    }
}

@media only screen and (max-width:768px) {
    .image-text-desc-list.hasMargin {
        margin-top: -82px
    }
}

.ability-development {
    max-width: 810px;
    margin: 0 auto;
    padding: 0 50px;
    background: url('../images/ability-development-up.ashx') no-repeat;
    background-position: 0 65px;
    background-size: contain
}

.ability-development-box {
    display: flex
}

.ability-development-box>div {
    flex: 1;
    padding: 0 20px 20px;
    display: flex;
    flex-direction: column
}

.ability-development-box .stage1 {
    margin-top: 65px
}

.ability-development-box .stage2 {
    margin-top: 30px
}

@keyframes high-light-circle {
    from {
        width: 72px;
        height: 72px;
        opacity: 1
    }

    to {
        width: 100px;
        height: 100px;
        opacity: 0
    }
}

.ability-development-box .circle-box:hover {}

.ability-development-box .stage1 .circle-box {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background-color: #29b6ff;
    padding: 5px
}

.ability-development-box .circle-white {
    width: 62px;
    height: 62px;
    border-radius: 50%;
    background-color: #fff;
    position: relative
}

.ability-development-box .circle-white canvas {
    position: relative;
    left: 1px;
    top: 1px
}

.ability-development-box .stage2 .circle-box {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background-color: #9985f3;
    padding: 5px
}

.ability-development-box .stage3 .circle-box {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background-color: #e64682;
    padding: 5px
}

.ability-development-box .item-percent {
    position: absolute;
    top: 20px;
    color: #fff;
    display: block;
    width: 100%;
    text-align: center
}

.ability-development-box .stage1 .stage-title {
    color: #29b6ff;
    font-weight: 600;
    margin-top: 15px;
    font-size: 18px
}

.ability-development-box .stage2 .stage-title {
    color: #9985f3;
    font-weight: 600;
    margin-top: 15px;
    font-size: 18px
}

.ability-development-box .stage3 .stage-title {
    color: #e64682;
    font-weight: 600;
    margin-top: 15px;
    font-size: 18px
}

.ability-development-box .stage-title {
    margin-bottom: 80px
}

.ability-development-box .stage-list ul {
    list-style-type: disc;
    margin-left: 20px
}

.ability-development-box .stage1 ul {
    color: #29b6ff
}

.ability-development-box .stage2 ul {
    color: #9985f3
}

.ability-development-box .stage3 ul {
    color: #e64682
}

.ability-development-box .stage-list ul li {
    position: relative;
    cursor: pointer;
    margin: 5px 0
}

.ability-development-box .item-content {
    opacity: 0;
    position: absolute;
    font-size: 0;
    height: 0;
    overflow: hidden;
    z-index: 100
}

.ability-development-box .stage1 .item-content {
    left: -370px;
    top: -20px
}

.ability-development-box .stage2 .item-content {
    left: -200px;
    top: 40px
}

.ability-development-box .stage3 .item-content {
    left: 100%;
    top: -20px;
    width: 360px
}

.ability-development-box .item-detail {
    display: inline-block;
    height: auto;
    padding: 20px;
    background-color: #fff;
    border-radius: 10px;
    color: #000;
    width: 320px;
    font-size: 14px;
    line-height: 22px
}

.ability-development-box .stage1 .stage-list .item-detail {
    border: 1px solid #29b6ff
}

.ability-development-box .stage2 .stage-list .item-detail {
    border: 1px solid #9985f3
}

.ability-development-box .stage3 .stage-list .item-detail {
    border: 1px solid #e64682
}

.ability-development-box .stage1 .stage-list .item-line {
    border-top: 1px solid #29b6ff;
    display: inline-block;
    vertical-align: top;
    margin-top: 32px;
    width: 32px
}

.ability-development-box .stage1 .stage-list .item-dot {
    display: none;
    vertical-align: top;
    margin-top: 36px;
    width: 5px;
    height: 5px;
    background-color: #29b6ff;
    border-radius: 50%
}

.ability-development-box .stage2 .stage-list .item-line {
    position: absolute;
    top: -28px;
    left: 50%;
    width: 24px;
    border-top: 1px solid #9985f3;
    border-left: 1px solid #9985f3;
    height: 28px
}

.ability-development-box .stage3 .stage-list .item-dot {
    display: inline-block;
    vertical-align: top;
    margin-top: 30px;
    width: 5px;
    height: 5px;
    background-color: #e64682;
    border-radius: 50%
}

.ability-development-box .stage3 .stage-list .item-line {
    border-top: 1px solid #e64682;
    display: inline-block;
    vertical-align: top;
    margin-top: 32px;
    width: 32px
}

.ability-development-box .stage-list ul li:hover .item-content {
    opacity: 1;
    height: auto;
    overflow: visible;
    transition: opacity .5s ease
}

@media screen and (max-width:1400px) {
    .ability-development-box .stage1 .item-content {
        left: 0;
        top: 30px
    }

    .ability-development-box .stage1 .stage-list .item-line {
        display: none
    }

    .ability-development-box .stage3 .item-content {
        left: 0;
        top: 30px
    }

    .ability-development-box .stage3 .stage-list .item-line,
    .ability-development-box .stage3 .stage-list .item-dot {
        display: none
    }
}

@media screen and (max-width:1000px) {
    .ability-development {
        background: none;
        margin-top: -40px;
        padding: 0
    }

    .ability-development-box {
        display: block
    }

    .ability-development-box .item-content {
        left: 0 !important;
        top: 30px !important;
        width: auto !important
    }

    .ability-development-box .stage-list .item-line,
    .stage-list .item-dot {
        display: none !important
    }

    .ability-development-box>div {
        flex: 1;
        padding: 0 0 20px;
        display: flex;
        flex-direction: row;
        align-items: center
    }

    .ability-development-box .stage1,
    .ability-development-box .stage2,
    .ability-development-box .stage3 {
        margin-top: 0
    }

    .ability-development-box .stage-head {
        flex: 1;
        text-align: center
    }

    .ability-development-box .circle-box {
        margin: 0 auto
    }

    .ability-development-box .stage-title {
        margin-bottom: 0
    }

    .ability-development-box .stage-list {
        flex: 1
    }

    .ability-development-box .stage-list .item-detail {
        width: auto
    }
}

.search-page {
    padding: 0 25px
}

.search-page ul {
    padding-top: 80px
}

.search-page ul li a {
    width: 100%;
    box-sizing: border-box
}

.search-page .search-no-result {
    padding-bottom: 20px
}

.search-page .search-content {
    font-size: 16px;
    padding-top: 8px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 1350px
}

.search-page .keyword-highlight {
    color: #ce1b2e
}

@media screen and (max-width:767px) {
    .search-page ul li a {
        font-size: 16px
    }

    .search-page .search-content {
        font-size: 14px;
        padding-top: 4px
    }
}

.search-page__breadcrumbs {
    font-size: 13px;
    text-transform: uppercase;
    -ms-flex-positive: 2;
    flex-grow: 2;
    padding: 25px 25px 50px;
    width: 100%;
    max-width: 1450px
}

.search-page__breadcrumbs a,
.search-page__breadcrumbs a span,
.search-page__breadcrumbs span a {
    font-size: 13px
}

.search-page__breadcrumbs a:hover,
.search-page__breadcrumbs a span:hover,
.search-page__breadcrumbs span a:hover {
    color: #ce1b2e
}

.search-page__breadcrumbs>span {
    margin-right: 11px
}

.search-page__breadcrumbs>span+span {
    margin-left: 11px
}

.search-page .search-ico {
    cursor: pointer;
    position: relative;
    z-index: 4;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-align: center;
    align-items: center
}

.search-page .search-ico form {
    position: absolute;
    left: 0;
    top: -4px;
    z-index: 4;
    pointer-events: none;
    width: 500px;
    max-width: 100%
}

.search-page .search-ico form input {
    pointer-events: auto;
    -webkit-appearance: none;
    box-sizing: border-box;
    display: block;
    position: relative;
    height: 42px;
    width: 100%;
    padding: 0 66px 0 12px;
    outline: none;
    border: 1px solid #8f8f8f;
    transform-origin: left center;
    transform: translateX(0) scale(1);
    opacity: 1;
    transition: transform .3s ease, opacity .3s ease;
    font-size: 15px;
    font-weight: 500
}

.search-page .search-ico form button {
    position: absolute;
    cursor: pointer;
    width: 66px;
    height: 42px;
    right: 0;
    top: 0;
    border: none;
    background: transparent;
    outline: none;
    text-indent: -99999px
}

.search-page .search-ico svg {
    height: 17px;
    width: 17px;
    fill: #8f8f8f;
    position: absolute;
    z-index: 5;
    pointer-events: none;
    right: 10px;
    top: 13px
}

.search-page .load-more--wrp {
    padding-bottom: 20px
}

.search-page .no_pagination {
    padding-bottom: 0;
    margin-bottom: 0
}

.user-center section {
    max-width: 1150px;
    margin: 0 auto;
    padding: 90px 25px
}

.user-center section h2 {
    margin-bottom: 40px
}

.user-center .field-line {
    display: flex;
    margin-bottom: 20px
}

.user-center .field-line label {
    flex: 1;
    max-width: 100px;
    height: auto;
    text-align-last: justify;
    padding-right: 20px;
    box-sizing: border-box
}

.user-center .field-line .field-box {
    flex: 1
}

.user-center .field-line .field-box input {
    width: 100%;
    border-radius: 5px;
    max-width: 400px;
    border: 1px solid gray;
    padding: 5px 10px
}

.user-center .field-line .user-center-submit {
    padding: 5px 20px;
    background-color: #337ab7;
    border: 1px solid #2e6da4;
    color: #fff;
    cursor: pointer
}

.user-center .field-line .user-center-submit:hover {
    box-shadow: #337ab7 0 3px 10px
}

.user-center .field-line .field-box input.center-error-input {
    border: 1px solid #a21d16
}

.user-center .center-error-message {
    color: #a21d16;
    min-height: 50px
}

.user-center .center-success-message {
    color: #5cb85c
}








