/* ==========================================================================
   ==========================================================================
   Canopy
   ==========================================================================
   ========================================================================== */










/* ==========================================================================
   ==========================================================================
   Header
   ==========================================================================
   ========================================================================== */

.header {
    width: 100%;
    min-width: 320px;
    height: 110px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
    background: #fff;
    -webkit-transform: translate3d(0, 0, 0);
    transform:  translate3d(0,0%,0);
    transition: height .3s ease, background .2s ease, transform .3s ease;
    will-change: height, background, transform;
    backface-visibility: hidden;
}

.header--open {
    background: #ebf4f3;
	transition: height .3s ease, background .3s ease, transform .3s ease;
}

.header--hide {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0,-100%,0);
}

@media (max-width:760px) {
    
    .header {
        height: 55px;
    }
}

.header__wrapper {
    width: 100%;
    height: 100%;
    z-index: 10;
}





/* ==========================================================================
   Logo
   ========================================================================== */

.header-logo {
	padding: 10px 0;
    width: 177px;
    height: auto;
    position: absolute;
    top: 50%;
    left: 4.5%;
    z-index: 20;
    display: block;
    transform: translateY(-50%);
}

@media (max-width:980px) {
    
    .header-logo {
    	left: 5%;
    }
}

@media (max-width:760px) {
    
    .header-logo {
        width: 108px;
    	left: 5.3%;
    }
}

.header-logo__img {
    width: 100%;
	height: auto;
}





/* ==========================================================================
   Main Menu
   ========================================================================== */


.main-menu {
	position: absolute;
	top: 50%;
	right: calc(4.5% - 5px);
    display: block;
	background: none;
	transform: translateY(-50%);
}

@media (max-width:980px) {
    
    .main-menu {
		right: calc(5% - 5px);
    }
}

@media (max-width:760px) {

    .main-menu {
        margin: 0;
		width: 100%;
		height: calc(100vh - 55px);
		top: 55px;
		left: 0;
		right: auto;
		overflow: scroll;
		display: none;
		background: rgba(235,244,243,0);
		transform: none;
		transition: background .2s ease;
    }

    .main-menu--open {
		background: rgba(235,244,243,1);
		transition: background .3s ease;
	}

	.main-menu__wrapper {
		padding: 35px calc(5.3% - 5px) 100px; 
		width: 100%;
		opacity: 0;
		transform: translateY(-10px);
		transition: transform .15s, opacity .15s;
		transition-delay: 0s;
		will-change: transform, opacity;
	}

	.main-menu--open .main-menu__wrapper {
		opacity: 1;
		transform: translateY(0);
		transition: transform .3s, opacity .3s;
		transition-delay: .2s;
	}
}

.main-menu__list {
    font-size: 0;
    line-height: 0;
    letter-spacing: 0;
}
.main-menu .menu-item {
    margin: 0 5px;
    vertical-align: top;
    display: inline-block;
}

.main-menu .menu-item:first-child {
    margin-left: 0;
}

.main-menu .menu-item:last-child {
    margin-right: 0;
}

@media (max-width:760px) {

    .main-menu .menu-item {
        margin: 24px 0;
        display: block;
    }

	.main-menu .menu-item:first-child {
		margin-top: 0;
	}

	.main-menu .menu-item:last-child {
		margin-bottom: 0;
	}
}

.main-menu .menu-item a {
    padding: 5px;
    font-family: 'brandon-grotesque', sans-serif;
    color: #0f1726 !important;
    font-size: 15px;
    line-height: 100%;
    font-weight: 700 !important;
    text-transform: uppercase;
	letter-spacing: .1em;
    text-decoration: none !important;
    display: block;
    transition: color .3s ease;
    will-change: color;
}

@media (max-width:980px) {

    .main-menu .menu-item a {
        font-size: 14px;
    }
}

@media (max-width:760px) {

    .main-menu .menu-item a {
        font-size: 15px;
        vertical-align: top;
        display: inline-block;
    }
}

.main-menu .menu-item a:before {
    width: 0;
    height: 4px;
    content: '';
    position: absolute;
    left: 0;
    top: calc(50% - .5px);
    background: rgba(0,120,143,.2);
	transform: translateY(-50%);
    transition: width .3s ease-in-out;
    will-change: width;
}

.no-touch-device .main-menu .menu-item a:hover:before,
.touch-device .main-menu .menu-item a.touch-active:before,
.main-menu .menu-item.current-menu-item a:before,
body.single-team .main-menu .menu-item-103 a:before,
body.single-projects .main-menu .menu-item-215 a:before,
body.single-case-studies .main-menu .menu-item-215 a:before,
body.single-insights .main-menu .menu-item-55 a:before {
    width: 100%;
}

@media (max-width:760px) {
    
    .main-menu .menu-item a:before {
    	top: calc(50% - .5px);
    }
}

.main-menu.no-animation .menu-item a,
.main-menu.no-animation .menu-item a:before {
    transition: none;
}





/* ==========================================================================
   Toggle Button
   ========================================================================== */

.main-menu__toggle-btn {
    width: 20px;
    height: 30px;
    position: absolute;
    top: 50%;
    right: 5.3%;
    z-index: 999;
    display: none;
    transform: translateY(-50%);
}

@media (max-width: 760px){

    .main-menu__toggle-btn {
        display: block;
    }
}

.main-menu__toggle-btn span {
    width: 100%;
    height: 100%;
}

.main-menu__toggle-btn:before,
.main-menu__toggle-btn:after,
.main-menu__toggle-btn span {
    width: 20px;
    height: 1px;
    position: absolute;
    left: 0;
    content: '';
    background: #0f1726;
    transition: transform .3s ease, left .3s ease, top .3s ease, bottom .3s ease, opacity .3s ease;
    will-change: transform, left, top, bottom, opacity;
}

.main-menu__toggle-btn:before {
    top: 10px;
}

.main-menu__toggle-btn--close:before {
    top: calc(50% - .5px);
    transform: rotate(135deg);
}

.main-menu__toggle-btn:after {
    bottom: 10px;
}

.main-menu__toggle-btn--close:after {
    bottom: calc(50% - .5px);
    transform: rotate(-135deg);
}

.main-menu__toggle-btn span {
    width: 20px;
    height: 1px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.main-menu__toggle-btn--close span {
    opacity: 0;
}












