.offices {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    padding: 5.481vw 2.604vw 14.1vw;
    background: #322338 url(../../images/main/map.png) no-repeat 17.5vw 5.9vw/85.5%;
    position: relative;
    font-family: brandon-grotesque, sans-serif;
    z-index: 1
}

@media (max-width: 900px) {
    .offices {
        display: block;
        padding: 42px 0 110px 9vw;
        margin-bottom: -1px;
        background-size: 150%;
        background-position: -11vw 8vw
    }
}

@media (max-width: 736px) {
    .offices {
        padding-left: 40px;
        background-size: 500%;
        background-position: -202vw -7vw
    }
}

.offices h5 {
    font-size: 3.867vw;
    font-weight: 200;
    width: 29.8%;
    padding-top: 6.185vw;
    position: relative;
    margin-left: 6.2vw;
    display: inline-block;
    vertical-align: top
}

@media (max-width: 900px) {
    .offices h5 {
        width: 100%;
        margin-left: 0;
        padding-top: .5vw;
        font-size: 56px
    }
}

.offices h5 span {
    position: relative;
    z-index: 5
}

.offices h5 .waves-container {
    position: absolute;
    width: 41.667vw;
    height: 41.667vw;
    top: -12.867vw;
    left: -19.319vw
}

@media (max-width: 900px) {
    .offices h5 .waves-container {
        width: 400px;
        height: 400px;
        top: -149px;
        left: -178px
    }
}

@media (max-width: 900px) {
    .offices h5 .waves-container {
        top: -172px
    }
}

.offices h5 .waves-container .wave {
    position: absolute;
    top: 0;
    left: 0;
    width: 41.667vw;
    height: 41.667vw;
    border-radius: 50%;
    opacity: .13;
    border: 2px solid #fff;
    -webkit-transform: scale(.065);
    transform: scale(.065);
    -webkit-animation: example 6s infinite ease-out;
    animation: example 6s infinite ease-out
}

@media (max-width: 900px) {
    .offices h5 .waves-container .wave {
        width: 400px;
        height: 400px;
        -webkit-transform: scale(.09);
        transform: scale(.09)
    }
}

.offices h5 .waves-container .wave2 {
    animation-delay: 1s;
    -webkit-animation-delay: 1s
}

.offices h5 .waves-container .wave3 {
    animation-delay: 2s;
    -webkit-animation-delay: 2s
}

.offices h5 .waves-container .wave4 {
    animation-delay: 3s;
    -webkit-animation-delay: 3s
}

.offices h5 .waves-container .wave5 {
    animation-delay: 4s;
    -webkit-animation-delay: 4s
}

.offices h5 .waves-container .wave6 {
    animation-delay: 5s;
    -webkit-animation-delay: 5s
}

@-webkit-keyframes example {
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0
    }
}

@keyframes example {
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
        opacity: 0
    }
}

.offices .pin {
    position: absolute;
    width: 2.15vw;
    height: 2.15vw;
    background: rgba(255, 255, 255, 0.1) url(../../images/main/logo_w.svg) no-repeat center/50%;
    border-radius: 50%;
    z-index: 1;
    cursor: pointer
}

@media (max-width: 900px) {
    .offices .pin {
        display: none
    }
}

.offices .pin::after {
    content: "";
    display: block;
    border: 1px solid rgba(255, 255, 255, 0.1);
    width: 95%;
    height: 95%;
    position: absolute;
    border-radius: 50%;
    top: 0;
    left: 0;
    -webkit-transform: scale(.9);
    transform: scale(.9);
    -webkit-animation: example2 1s infinite ease-out;
    animation: example2 1s infinite ease-out
}

@-webkit-keyframes example2 {
    100% {
        -webkit-transform: scale(2);
        transform: scale(2);
        opacity: 0
    }
}

@keyframes example2 {
    100% {
        -webkit-transform: scale(2);
        transform: scale(2);
        opacity: 0
    }
}

.offices .pin.la-pin {
    left: 25.03vw;
    top: 9.9vw
}

.offices .pin.la-pin::after {
    -webkit-animation-delay: .1s;
    animation-delay: .1s
}

.offices .pin.mx-pin {
    top: 12.9vw;
    left: 27.9vw
}

.offices .pin.mx-pin::after {
    -webkit-animation-delay: .5s;
    animation-delay: .5s
}

.offices .pin.ln-pin {
    top: 7.3vw;
    left: 52.8vw
}

.offices .pin.md-pin {
    top: 9.9vw;
    left: 52.8vw
}

.offices .pin.md-pin::after {
    -webkit-animation-delay: .7s;
    animation-delay: .7s
}

.offices .pin.gr-pin {
    top: 11.55vw;
    left: 73.9vw
}

.offices .pin.gr-pin::after {
    -webkit-animation-delay: .2s;
    animation-delay: .2s
}

.offices .office-card-container .info-card {
    position: absolute;
    width: 25%;
    height: 100%;
    background: #fff;
    right: -25%;
    top: 0;
    color: #242e37;
    z-index: 10;
    -webkit-transition: .4s cubic-bezier(.56, .01, .15, 1);
    transition: .4s cubic-bezier(.56, .01, .15, 1)
}

.offices .office-card-container .info-card address {
    position: absolute;
    bottom: 1.1vw;
    left: 2.2vw
}

.offices .office-card-container .info-card a {
    color: #242e37
}

.offices .office-card-container .info-card li {
    font-weight: normal;
    color: #242e37;
    text-transform: none
}

.offices .office-card-container .info-card .close-btn {
    background: url(../../images/main/close-dark.png) no-repeat center/contain;
    width: 2vw;
    height: 2vw;
    display: block;
    right: 2vw;
    top: 2vw;
    position: absolute
}

.offices .office-card-container .info-card .location span:first-of-type {
    background-image: url(../../images/main/pin-ico-d.png)
}

.offices .office-card-container .info-card .phone span:first-of-type {
    background-image: url(../../images/main/phone-ico-d.png)
}

.offices .office-card-container .info-card .email span:first-of-type {
    background-image: url(../../images/main/mail-ico-d.png)
}

.offices .office-card-container .photo-card {
    position: absolute;
    background: #242e37;
    height: 100%;
    width: 25%;
    top: 0;
    right: -25%;
    z-index: 9;
    -webkit-transition: .4s cubic-bezier(.56, .01, .15, 1);
    transition: .4s cubic-bezier(.56, .01, .15, 1);
    overflow: hidden
}

.offices .office-card-container .photo-card .img {
    position: absolute;
    top: 50%;
    left: 50%;
    height: 100%;
    width: 100%;
    background: no-repeat center/101%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: -webkit-transform .5s linear;
    transition: -webkit-transform .5s linear;
    transition: transform .5s linear;
    transition: transform .5s linear, -webkit-transform .5s linear
}

.offices .office-card-container.active .info-card {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%)
}

.offices .office-card-container.active .photo-card {
    -webkit-transform: translateX(-200%);
    transform: translateX(-200%)
}

.offices .office-card-container.active .photo-card .img {
    -webkit-transform: translate(-50%, -50%) scale(1.3);
    transform: translate(-50%, -50%) scale(1.3);
    -webkit-transition: -webkit-transform 20s linear .5s;
    transition: -webkit-transform 20s linear .5s;
    transition: transform 20s linear .5s;
    transition: transform 20s linear .5s, -webkit-transform 20s linear .5s
}

.offices .address-cont {
    display: none;
    width: 57%
}

@media (max-width: 900px) {
    .offices .address-cont {
        display: inline-block;
        width: 90%
    }
}

.offices h6 {
    font-size: 1.875vw;
    font-weight: 800;
    text-transform: uppercase;
    margin-bottom: 8px
}

@media (max-width: 900px) {
    .offices h6 {
        margin-bottom: 22px;
        font-size: 34px
    }
}

.offices li {
    font-size: .781vw;
    line-height: 1.4;
    margin-bottom: 11px;
    position: relative;
    padding-left: 1.354vw;
    list-style: none;
    font-weight: normal;
    color: #fff;
    text-transform: none
}

@media (max-width: 1200px) {
    .offices li {
        font-size: .881vw
    }
}

@media (max-width: 900px) {
    .offices li {
        margin-bottom: 12px;
        padding-left: 30px;
        font-size: 14px;
        line-height: 23px;
        max-width: 90%
    }
}

.offices a {
    color: #fff
}

.offices .location span:first-of-type {
    background: url(../../images/main/pin-ico.png) no-repeat center/contain;
    width: .833vw;
    height: 1.042vw;
    position: absolute;
    left: 0;
    top: 0
}

@media (max-width: 900px) {
    .offices .location span:first-of-type {
        width: 16px;
        height: 20px
    }
}

.offices .phone span:first-of-type {
    background: url(../../images/main/phone-ico.png) no-repeat center/contain;
    width: .833vw;
    height: 1.042vw;
    position: absolute;
    left: 0;
    top: 0
}

@media (max-width: 900px) {
    .offices .phone span:first-of-type {
        width: 16px;
        height: 20px
    }
}

.offices .email span:first-of-type {
    background: url(../../images/main/mail-ico.png) no-repeat center/contain;
    width: .833vw;
    height: 1.142vw;
    position: absolute;
    left: 0;
    top: 0
}

@media (max-width: 900px) {
    .offices .email span:first-of-type {
        width: 16px;
        height: 20px
    }
}

.offices .offs {
    max-width: 16.667vw;
    width: 100%;
    margin: 0 2.4vw 1.65vw 1.302vw;
    position: relative;
    display: inline-block;
    vertical-align: top
}

@media (max-width: 900px) {
    .offices .offs {
        margin: 43px 0 0 0;
        max-width: 49%
    }
}

@media (max-width: 736px) {
    .offices .offs {
        max-width: 100%
    }
}
