/*
 * Header with logo and menu
 */

/* Layout */

.header-content {
    background: #f8f8f8;
}

.header-content > div {
    width: 1280px;
    margin: 0 auto;
    padding: 15px 0 5px 0;
}

.header-content-top > div {
    display: table;
    table-layout: fixed;
    width: 100%;
    padding: 0 40px;
}

.header-content-top-left,
.header-content-top-right {
    display: table-cell;
    vertical-align: middle;
}

.header-content-top-left {
    padding-right: 20px;
}

.header-content-top-right {
    width: 30px;
}

.header-content-bottom > div {
    padding-top: 5px;
}

/* Fixed mode */

.header--fixed .header-content {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 99;
}

.header--fixed .header-content-top {
    display: none;
}

.header--fixed .header-content > div {
    padding-top: 5px;
}

/* Title */

.header-logo > a {
    display: block;
    background: url('../images/logo-ver-B7594F729F233E9C163A1F4170783972.png') center no-repeat;
    width: 153px;
    height: 55px;
    background-size: contain;
}

/* Menu Button */

.header-menu-button > a {
    display: block;
    border-radius: 2px;
    background: #333 url('../images/menu-ver-49033FB910DDF9865FEC9E718E92421D.png') center no-repeat;
    width: 30px;
    height: 30px;
}

/* Menu */

.header-menu-logo {
    display: inline-block;
    vertical-align: middle;
    margin-right: 15px;
    pointer-events: none;
    opacity: 0;
    transform: translateY(-10px);
    transition: all 0.4s ease;
}

.header--fixed .header-menu-logo {
    pointer-events: initial;
    transform: translateY(0);
    opacity: 1;
}

.header-menu-logo > a {
    display: block;
    background: url('../images/logo-ver-B7594F729F233E9C163A1F4170783972.png') center no-repeat;
    width: 40px;
    height: 40px;
    background-size: contain;
}

.header-menu-item {
    display: inline-block;
    vertical-align: middle;
}

.header-menu-item > a {
    display: block;
    line-height: 35px;
    font-weight: bold;
    text-decoration: none;
    text-transform: uppercase;
    padding: 0 15px;
    border-top: 2px solid transparent;
}

.header-menu-item > a:hover {
    color: #ce4141;
    border-top-color: #ce4141;
    background: #f0f0f0;
}

@media (min-width: 681px) {

    /* Layout */
    .header-content-top > div {
        display: block;
    }

    .header-content-top-left,
    .header-content-top-right {
        display: block;
    }

    .header-content-top-left {
        padding-right: 0;
    }

    .header-content-top-right {
        display: none;
    }

    /* Menu Button */
    .header-menu-button {
        display: none;
    }
}

@media (max-width: 1320px) {

    /* Layout */
    .header-content > div {
        width: auto;
        margin: 0;
        padding: 35px 20px 15px 20px;
    }
}

@media (max-width: 680px) {

    /* Layout */
    .header {
        height: 115px;
    }

    .header-content {
        background: #fff;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        min-height: 115px;
        z-index: 99;
    }

    .header-content > div {
        padding: 20px 20px 15px 20px;
    }

    .header-content-bottom > div {
        padding-top: 15px;
    }

    /* Menu */
    .header-menu {
        display: none;
        max-height: calc(100vh - 100px);
        overflow: auto;
    }

    .header-menu--visible {
        display: block;
    }

    .header-menu-item {
        display: block;
        padding-bottom: 10px;
    }

    .header-menu-item > a {
        line-height: 40px;
        border: 1px solid #dedede;
        border-radius: 4px;
    }

    .header-menu-item > a:hover {
        border-color: #ce4141;
    }
}

/*
 * Header hero poster
 */

.header-hero {
    width: 1280px;
    height: 720px;
    margin: 0 auto;
}

.header-hero-slide {
    width: 100%;
    height: 720px;
    padding: 60px;
    background: #333 center no-repeat;
    background-size: cover;
    overflow: hidden;
    cursor: default;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.header-hero-slide--experts {
    background-image: url('../images/header/experts-ver-9435F531A95076B1D7D0CF3078E15126.png');
}

.header-hero-slide--development {
    background-image: url('../images/header/development-ver-ADEF69A31E7E0AD92839FA496AD65F8B.png');
}

.header-hero-slide--projects {
    background-image: url('../images/header/projects-ver-F17401656972B072FD9103305735E052.png');
}

.header-hero-slide > div {
    display: table;
    table-layout: fixed;
    width: 100%;
}

.header-hero-slide > div > div,
.header-hero-slide > div > div {
    display: table-cell;
    vertical-align: top;
}

.header-hero-slide-left {
    padding-right: 10px;
}

.header-hero-slide-right {
    width: 130px;
    padding-top: 10px;
}

.header-hero-title {
    font: bold 72px/1 'Open Sans Condensed';
    text-transform: uppercase;
    color: #fff;
    word-wrap: break-word;
}

.header-hero-annotation {
    font: 300 36px/1 'Open Sans Condensed';
    margin-top: 10px;
    color: #fff;
}

.header-hero-logo {
    display: inline-block;
    width: 130px;
    height: 58px;
    pointer-events: none;
}

.header-hero-logo > img {
    width: 100%;
    height: auto;
}

@media (max-width: 1320px) {

    .header-hero {
        width: 100%;
        height: 540px;
        margin: 0;
    }

    .header-hero-slide {
        height: 540px;
        padding: 20px;
    }

    .header-hero-slide-right {
        width: 94px;
    }

    .header-hero-title {
        font-size: 52px;
    }

    .header-hero-annotation {
        font-size: 26px;
    }

    .header-hero-logo {
        width: 94px;
    }
}

@media (max-width: 680px) {

    .header-hero {
        width: 100%;
        height: 540px;
        margin: 0;
    }

    .header-hero-slide-right {
        width: 70px;
    }

    .header-hero-title {
        font-size: 42px;
    }

    .header-hero-annotation {
        font-size: 18px;
    }

    .header-hero-details {
        margin-top: 30px;
    }

    .header-hero-details .primary-button {
        font-size: 14px;
    }

    .header-hero-logo {
        width: 70px;
    }
}

/**
 * Header wrapper.
 * Used on the main page to swap header and hero poster in phone version
 */

@media (max-width: 680px) {

    .header-wrapper > div {
        display: flex;
        flex-direction: column-reverse;
    }
}

/* Customizable header hero poster */

.header-custom-hero {
    width: 1280px;
    height: 320px;
    margin: 0 auto;
}

.header-custom-hero-slide {
    width: 100%;
    height: 320px;
    background: #333 center no-repeat;
    background-size: cover;
    overflow: hidden;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: flex;
    justify-content: center;
}

.header-custom-hero-slide-medium, .header-custom-hero-slide-small {
    display: none;
}

@media (max-width: 1320px) {

    .header-custom-hero {
        width: 100%;
        height: 320px;
        margin: 0;
    }

    .header-custom-hero-slide {
        height: 320px;
    }

    .header-custom-hero-slide-large {
        display: none;
    }

    .header-custom-hero-slide-medium {
        display: flex;
    }
}

@media (max-width: 680px) {

    .header-custom-hero {
        width: 100%;
        height: 320px;
        margin: 0;
    }

    .header-custom-hero-slide-medium {
        display: none;
    }

    .header-custom-hero-slide-small {
        display: flex;
    }
}