/**
 * @license
 * MyFonts Webfont Build ID 3947015, 2020-09-11T17:25:48-0400
 * 
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are 
 * explicitly restricted from using the Licensed Webfonts(s).
 * 
 * You may obtain a valid license at the URLs below.
 * 
 * Webfont: HelveticaNowDisplay-Regular by Monotype
 * URL: https://www.myfonts.com/fonts/mti/helvetica-now/display-regular/
 * 
 * Webfont: HelveticaNowDisplay-Bd by Monotype
 * URL: https://www.myfonts.com/fonts/mti/helvetica-now/display-bold/
 * 
 * 
 * Webfonts copyright: Copyright &amp;#x00A9; 2019 Monotype Imaging Inc. All rights reserved.
 * 
 * © 2020 MyFonts Inc
*/

/* @import must be at top of file, otherwise CSS will not work */
@import url("//hello.myfonts.net/count/3c3a07");
  
@font-face {
	font-family: 'Aeonik Pro';
	src: url('../Fonts/AeonikPro-Regular.woff2') format('woff2'), 
		 url('../Fonts/AeonikPro-Regular.woff') format('woff');
	font-weight:normal;
	font-style:normal;
}
@font-face {
	font-family: 'Aeonik Pro';
	src: url('../Fonts/AeonikPro-Bold.woff2') format('woff2'), 
		 url('../Fonts/AeonikPro-Bold.woff') format('woff');
	font-weight:bold;
	font-style:normal;
}

@font-face {
	font-family: 'Aeonik Pro';
	src: url('../Fonts/AeonikPro-BoldItalic.woff2') format('woff2'), 
		 url('../Fonts/AeonikPro-BoldItalic.woff') format('woff');
	font-weight:bold;
	font-style:italic;
}

@font-face {
	font-family: 'Aeonik Pro';
	src: url('../Fonts/AeonikPro-RegularItalic.woff2') format('woff2'), 
		 url('../Fonts/AeonikPro-RegularItalic.woff') format('woff');
	font-weight:normal;
	font-style:italic;
}

@font-face {
	font-family: 'Aeonik Pro';
	src: url('../Fonts/AeonikPro-Light.woff2') format('woff2'), 
		 url('../Fonts/AeonikPro-Light.woff') format('woff');
	font-weight:300;
	font-style:normal;
}

@font-face {
	font-family: 'Aeonik Pro';
	src: url('../Fonts/AeonikPro-LightItalic.woff2') format('woff2'), 
		 url('../Fonts/AeonikPro-LightItalic.woff') format('woff');
	font-weight:300;
	font-style:normal;
}

@font-face{
	font-family:'Helvetica';
	src: url('../Fonts/Hel_reg.woff2') format('woff2'),
		 url('../Fonts/Hel_reg.woff') format('woff'),
		 url('../Fonts/Hel_reg.ttf') format('truetype');
	font-weight:normal;
	font-style:normal;
}
@font-face{
	font-family:'Helvetica';
	src: url('../Fonts/Hel_bd.woff2') format('woff2'),
		 url('../Fonts/Hel_bd.woff') format('woff'),
		 url('../Fonts/Hel_bd.ttf') format('truetype');
	font-weight:bold;
	font-style:normal;
}

html,body{margin:0;padding:0;width:100%;}
html{font-size:62.5%;/*user's browser setting controls font-size, default is 16px (so now 24px = 2.4rem)*/}
body{position:relative;font-family:'Aeonik Pro', 'Helvetica', sans-serif;overflow-x:hidden;background-color:#FFF;color:#1C1F29;box-sizing:border-box;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;}
body.black{background-color:#1C1F29;color:#FFF;}
::selection{color:#1C1F29;background-color:#eee;}
.noanim *{transition:none!important;}
body:not(.ie) .plusCursor{cursor:pointer;cursor:url("../Grx/plus.svg") 25 25, auto!important;}
.ie .plusCursor{cursor:pointer;}
/*.nocursor *{cursor:none;}*/

h1,h2,h3,h4,h5,h6,p,q{position:relative;margin:0;padding:0;font-weight:normal;font-style:normal;line-height:1.25;box-sizing:border-box;}
h1,h2{font-weight:normal;font-size: 4.8rem;line-height:1.1;} /*large titles */
h1.red{font-weight:bold;color:#EB3300;}
h3{font-weight:normal;font-size:2.0rem;}/* menu, filters */
h6{font-weight:bold;font-size:1.6rem;}/* carousel category */
p{font-weight:normal;font-size: 2.2rem;min-height:2.5rem;}/* normal text */
.small p, .people a p{font-weight:normal;font-size: 2.2rem;line-height:1.4;}/* small descriptive texts */
p a{transition:opacity .2s ease-out;}
p a:hover{opacity:.5;}

@media all and (max-width:767.5px){
    h1,h2{font-size:3.0rem;}
    h3{font-size:1.8rem;}
    h6, .small p, .people a p{font-size:1.4rem;}
    p{font-size:1.8rem;line-height:1.4;}
}

/*      Buttons     */
a{position:relative;box-sizing:border-box;color:inherit;text-decoration:none;line-height:inherit;}
a{-moz-user-drag:none;-moz-user-select:none;-webkit-user-select:none;-webkit-user-drag:none;user-select:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);touch-action:manipulation;/*removes delay*/}
button{position:relative;box-sizing:border-box;margin:0;padding:0;border:none;background:none;color:inherit;font-family:inherit;cursor:pointer;}
button:focus{outline:none;}
button{-moz-user-select:none;-webkit-user-select:none;-webkit-user-drag:none;user-select:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);}

/*      Inputs  */
input{font-family:'Aeonik Pro', 'Helvetica', sans-serif;font-weight:normal;outline:none;border-radius:0;box-sizing:border-box;width:100%;background:transparent;;border:none;-webkit-appearance:none;}
input::placeholder{color:#1C1F29;opacity:.2;}


/*      Media       */
img,video,.lazy{border:0;-moz-user-select:none;-webkit-user-select:none;-webkit-user-drag:none;user-select:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);}
.fade{opacity:0;transition:opacity .6s ease-in-out;}
.fade.in{opacity:1;}
.lazy{position:relative;}
.lazy .rel{position:relative;width:100%;overflow:hidden;}
.lazy .rel .img{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:cover;transition:opacity .6s ease-in-out;/*, transform 2.0s ease-out;*/}
.lazy .rel .img.instant.in{transition:none;opacity:1;}
/* Video controls */
.controls{position:absolute;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.1);z-index:10;color:#FFF;opacity:0;pointer-events:none;transition:opacity .6s ease-out;}
.controls.on{opacity:1;pointer-events:all;}
.controls .playpause{position:absolute;left:50%;top:50%;margin:-25px 0 0 -25px;width:50px;height:50px;background:url("../Grx/playbtn.svg") no-repeat;}
.controls .playpause:after{content:"";position:absolute;left:0;top:0;width:100%;height:100%;background:url("../Grx/playbtn_active.svg") no-repeat;opacity:0;transition:opacity .2s ease-out;}
.controls .playpause:hover:after{opacity:1;}
.controls .playpause.paused{background:url("../Grx/pausebtn.svg") no-repeat;}
.controls .playpause.paused:after{background:url("../Grx/pausebtn_active.svg") no-repeat;}

.controls .progress{position:absolute;left:40px;bottom:50px;width:calc(100% - 80px);height:23px;z-index:1;}/*a little larger for hitarea*/
.controls .progress:before{content:"";position:absolute;left:0;top:10px;width:100%;height:3px;background-color:#FFF;}
.controls .progress .bar{position:absolute;left:0;top:10px;width:0%;height:3px;background-color:#EB3300;}
.controls .fullscreen{position:absolute;top:40px;right:40px;width:50px;height:50px;background:url("../Grx/fs.svg") no-repeat;}
.controls .fullscreen:after{content:"";position:absolute;left:0;top:0;width:100%;height:100%;background:url("../Grx/fs_active.svg") no-repeat;opacity:0;transition:opacity .2s ease-out;}
.controls .fullscreen:hover:after{opacity:1;}
.txtfade{opacity:0;transition:opacity 0s ease-in-out;}
.txtfade.in{opacity:1;transition-duration:.8s;}
.txtfade.slidey{transform:translateY(50px);transition:opacity 0s ease-in-out, transform 0s ease-out;}
.txtfade.slidey.in{opacity:1;transform:translateY(0px);transition-duration:1s;}

header{position:fixed;color:#FFF;left:0;top:0;width:100%;height:101px;z-index:1000;transition:transform .3s ease-out;will-change:transform;}
header:before{content:"";position:absolute;left:0;top:-1px;width:100%;height:101px;background-color:transparent;transition:background-color .3s ease-out;will-change:background-color;}
header:after{content:"";position:absolute;left:0;top:100px;width:100%;height:238px;background-color:#FFF;transition:opacity .3s ease-out;will-change:opacity;z-index:-1;opacity:0;pointer-events:none;}
header .logo{position:absolute;left:40px;top:30px;width:215px;}
header .logo .rel{position:relative;width:100%;padding-top:16.65%;}
header .logo img{position:absolute;left:0;top:0;width:100%;height:100%;}
header .logo .red{display:none;}
header nav{position:absolute;right:0;top:0;padding-top:38px;}
header nav .primary{display:inline-block;vertical-align:top;font-size:2.0rem;color:inherit;padding:10px;margin:0 110px 0 0;transition:color .2s ease-out;}
header nav .primary:hover, header nav .primary.selected{color:#EB3300;}
header nav .search{width:20px;height:17px;box-sizing:content-box;padding:10px;margin:0 30px 0 0;background:url("../Grx/search.svg") no-repeat center;transition:opacity .2s ease-out;}
header nav .search:hover{opacity:.5;}
header.searchmode nav .search:before{content:"";position:absolute;left:10px;top:19px;width:20px;height:2px;background-color:#1C1F29;}
header.searchmode nav .search:after{content:"";position:absolute;left:19px;top:10px;width:2px;height:20px;background-color:#1C1F29;}
header.searchmode nav .search{transform:rotate(45deg);}
header.white, header.searchmode{color:#1C1F29;}
header.white:before{background-color:#FFF;}
header.searchmode:before{background-color:#FFF;}
header.searchmode:after{opacity:1;}
header.searchmode, header.fadeOutSearch{height:340px;}
header.white nav .search{background:url("../Grx/search_black.svg") no-repeat center;}
header.searchmode nav .search{background:none;}
header.white .logo .red, header.searchmode .logo .red{display:block;}
header.white .logo .white, header.searchmode .logo .white{display:none;}
header.collapsed{transform:translate3d(0,-100%,0);transition:transform .6s ease-in-out;}
header input{position:absolute;left:40px;bottom:38px;width:calc(100% - 80px);font-size:4.0rem;color:#1C1F29;opacity:0;pointer-events:none;}
header.searchmode input{opacity:1;pointer-events:all;transition:opacity .6s ease-in-out;}

header .toggle{position:absolute;right:34px;top:39px;width:32px;height:32px;transition:transform .3s ease-out;}
header .toggle:before{content:"";position:absolute;left:6px;top:15px;width:20px;height:2px;background-color:#FFF;}
header .toggle:after{content:"";position:absolute;left:15px;top:6px;width:2px;height:20px;background-color:#FFF;}

.nomenu header nav{display:none;}
.nomenu header .toggle{display:block;transform:rotate(45deg);}
.nomenu header .toggle:hover{transform:rotate(135deg);}


main{position:relative;width:100%;}
.page{position:relative;width:100%;box-sizing:border-box;font-size:0;}


/* Fullscreen image/video */
.fs{position:relative;width:100%;color:#FFF;overflow:hidden;}
.fs:not(.fw){height:100vh;}
.fs .lazy{will-change:transform;}
.fs:not(.fw) .lazy, .fs:not(.fw) .lazy .rel{position:absolute;left:0;top:0;width:100%;height:100%;z-index:1;}
.fs:not(.fw) .lazy .rel{padding-top:0!important;}
.fs.behindmask .lazy .rel{overflow:visible;}
.fs.fw.behindmask .lazy .rel .img{height:107%;/*larger for parallax (behind mask*/}
.fs h1, .fs h2{position:absolute;left:50%;top:50%;width:50%;padding-right:50px;transform:translateY(-50%);z-index:3;}
.fs.bl h1, .fs.bl h2{left:40px;top:auto;bottom:55px;transform:none;}
.fs.bl .rel:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:50%;background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.3) 100%);z-index:2;}
.fs.hero:not(.bl) .rel:after{content:"";position:absolute;left:0;top:0;width:100%;height:50%;background:linear-gradient(180deg, rgba(0,0,0,.3) 0%, rgba(0,0,0,0) 100%);z-index:2;}
.fs.br h1, .fs.br h2{top:auto;bottom:55px;transform:none;}
.fs.cl h1, .fs.cl h2{left:40px;}
.fs{margin-bottom:100px;}
.fs.hero{margin-bottom:0;z-index:-1;}
.fs.hero:not(.fw) .lazy{position:fixed;}
.oldIe .fs.hero:not(.fw) .lazy{position:relative;}
.fs:not(.fw) h1{position:fixed;will-change:opacity;}
.fs.hero.outview h1, .fs.hero.outview .lazy{visibility:hidden;}

/* Featured (homepage) */
.featureddesign{position:relative;box-sizing:border-box;width:100%;background-color:#FFF;padding: 60px 0 100px 0;}
.featureddesign h2, .featureddesign h3{padding: 0 40px 56px 40px;}

/* Carousel (horizontal slider) */
.carousel{position:relative;box-sizing:border-box;width:100%;overflow:hidden;min-height:50vh;background-color:#F7F7F7;padding: 60px 0 0 0;cursor:grab;margin-bottom:100px;}
.carousel h2, .carousel h3{padding: 0 40px 56px 40px;}
.carousel .scroller{position:relative;width:100%;height:auto;box-sizing:border-box;padding-left:40px;overflow-y:hidden;overflow-x:hidden;-webkit-overflow-scrolling:touch;white-space:nowrap;}
@media (max-width: 900px) {
    .scroller {overflow-x:scroll; }
}
.carousel .el{position:relative;width:40vw;display:inline-block;vertical-align:top;white-space:normal;box-sizing:border-box;padding-bottom:100px;margin-right:40px;}
.carousel .el h6, .carousel .el p{padding:15px 20% 10px 0;}
.carousel .el .lazy .rel{padding-top:67%;}
.carousel.dragging{cursor:move;cursor:grab;cursor:-moz-grab;cursor:-webkit-grab;}
.carousel.dragging a, .carousel.dragging .lazy{pointer-events:none;}
.carousel .el .lazy:after{content:"";position:absolute;left:0;top:0;width:100%;height:100%;background-color:#1C1F29;opacity:0;transition:opacity .2s ease-out;}

/* Simple arrow (scroll to top) */
.scrolltotop{position:relative;width:100%;height:100px;/*background-color:#FFF;*/}
.scrolltotop .arrow{position:absolute;right:30px;bottom:30px;width:30px;height:30px;background:url("../Grx/arrow_up.svg") no-repeat 10px 5px;cursor:pointer;transition:transform .2s ease-out;}/*larger hitarea*/
.scrolltotop .arrow:hover{transform:translateY(-2px);}
.page[data-theme="black"] .scrolltotop .arrow{background:url("../Grx/arrow_up_white.svg") no-repeat 10px 5px;}

/* Social share icons on project pages */
.projectsocial{position:relative;display:inline-block;height:0;padding-left:40px;z-index:2;}
.projectsocial a{position:relative;display:inline-block;vertical-align:top;width:31px;height:30px;margin-right:10px;margin-top:-80px;transition:opacity .2s ease-out;}
.projectsocial a:hover{opacity:.5;}
.projectsocial a.tw{background:url("../Grx/x-logo.svg?v=a1") no-repeat;}
.projectsocial a.fb{background:url("../Grx/fb.svg") no-repeat;}
.projectsocial a.li{background:url("../Grx/li.svg") no-repeat;}
.page[data-theme="black"] .projectsocial a.tw{background:url("../Grx/x-logo-white.svg") no-repeat;}
.page[data-theme="black"] .projectsocial a.fb{background:url("../Grx/fb_bright.svg") no-repeat;}
.page[data-theme="black"] .projectsocial a.li{background:url("../Grx/li_bright.svg") no-repeat;}


/* Fullwidth title on solid background */
.sectiontitle{width:100%;background-color:#F7F7F7;box-sizing:border-box;padding: 72px 25% 72px 40px;}
.sectiontitle.centered{background-color:transparent;text-align:center;padding:100px 12.5%;margin-bottom:50px;}
.sectiontitle p:first-of-type{margin-top:50px;}

/* Normal text module with optional left side */
.bodytxt, .contacttxt{position:relative;width:100%;box-sizing:border-box;padding:100px 40px;background-color:#FFF;}
.bodytxt .l{display:inline-block;vertical-align:top;width:50%;box-sizing:border-box;padding-right:25%;}
.bodytxt .l + .r{display:inline-block;vertical-align:top;width:50%;box-sizing:border-box;}
.contacttxt{padding:50px 0 100px 0;}
.contacttxt .l, .contacttxt .r{display:inline-block;vertical-align:top;width:50%;box-sizing:border-box;}
.contacttxt .l{padding-left:25%;padding-right:20px;}
.contacttxt .r{padding-right:25%;}
.contacttxt h2{padding-top:10px;padding-left:40px;margin-bottom:100px;}
.contacttxt p a{text-decoration:underline;}
.page[data-theme="black"] .bodytxt, .page[data-theme="black"] .contacttxt{background-color: #1c1f29;}


/* Overview grid */
.overview{position:relative;display:block;font-size:0;box-sizing:border-box;margin:250px 0 0 0;color:#1C1F29;margin-bottom:100px;}
.overview.simple{margin-bottom:15px;}
.overview h1, .overview h2{padding:0 40px 45px 40px;z-index:9;max-width:50%;}
.overview .filters{position:absolute;top:25px;right:25px;z-index:8;}
.overview .filters a{font-size:2.0rem;padding:15px;transition:color .2s ease-out;}
.overview .filters a.selected{color:#EB3300;}
.overview .listall{display:none;}
.overview .listall.visible{display:block;}
.overview .grid{margin-bottom:0;}

.overview .types{position:fixed;bottom:40px;right:40px;z-index:10;}
.overview .types button{position:relative;display:inline-block;vertical-align:top;width:50px;height:50px;margin-left:15px;}
.overview .types button:after{content:"";position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;transition:opacity .2s ease-out;}
.overview .types button.featuredicon{background:url("../Grx/featured.svg") no-repeat;}
.overview .types button.allicon{background:url("../Grx/all.svg") no-repeat;}
.overview .types button.featuredicon:after{background:url("../Grx/featured_active1.svg") no-repeat;}
.overview .types button.featuredicon.selected:after{opacity:1;}
.overview .types button.allicon:after{background:url("../Grx/all_active1.svg") no-repeat;}
.overview .types button.allicon.selected:after{opacity:1;}
.overview .types button:hover:after{opacity:1;}
.overview .types button.mobileicon{display:none;}
.overview .fadeLayer{position:fixed;left:0;top:0;width:100%;height:100vh;background-color:#FFF;opacity:1;transition:none;z-index:5;transition:opacity 1s ease-in-out;}
.overview .fadeLayer.ready{opacity:0;}
.overview .fadeLayer.fadeIn{opacity:1;transition:opacity .3s ease-in-out;}
.overview .fadeLayer.fadeOut{opacity:0;pointer-events:none;transition:opacity .8s ease-in-out .05s;}

.listall .allfilters{position:relative;box-sizing:border-box;padding:150px 0 45px 25%;width:100%;}
.listall .allfilters button, .filters button{font-size:1.6rem;font-weight:bold;display:inline-block;vertical-align:top;box-sizing:border-box;text-align:left;}
.listall .allfilters button:after, .filters button:after{content:"";position:absolute;background:url("../Grx/arrow_down.svg") no-repeat;width:8px;height:11px;margin-left:8px;top:7px;transition:transform .2s ease-out;}
.oldIe .listall .allfilters button:after, .oldIe .filters button:after{top:0;}
.listall .allfilters button.flip:after, .filters.open button:after{transform:scaleY(-1);}
.listall .allfilters button:hover:after{transform:translateY(2px);}
.listall .allfilters button.flip:hover:after{transform:scaleY(-1) translateY(2px);}
.listall .p{position:relative;box-sizing:border-box;padding:8px 0;margin-left:25%;width:62.5vw;display:none;font-size:2.0rem;line-height:1.4;border-top:1px solid #E2E2E2;}
.listall .p span{display:inline-block;vertical-align:top;box-sizing:border-box;padding-right:10px;}
.listall .p{cursor:default;}
.listall .p .hoverImg{position:absolute;left:-25vw;top:50%;width:24.5vw;display:none;z-index:2;}
.listall .p .hoverImg .img{position:absolute;left:0;top:0;width:100%;height:auto;transform:translateY(-50%);}
.listall .p.imgOn .hoverImg{display:block;}
.listall .p.visible{display:block;}

/* Wrapper around images in grid */
.grid{position:relative;width:100%;background-color:#FFF;}
.grid .el{position:relative;box-sizing:border-box;}
.grid p{position:absolute;left:0;top:0;color:#FFF;z-index:2;padding:20px 25% 20px 40px;pointer-events:none;}
.grid div.el p{font-size:1.6rem;font-weight:bold;}
.page[data-theme="black"] .grid{background-color:#1C1F29;}


/* Next project drawer */
.nextproject{position:relative;display:block;width:100%;height:200px;background-color:#333;overflow:hidden;color:#FFF;z-index:10;}
.nextproject .hero{position:absolute;left:0;top:0;width:100%;height:100vh;background:rgba(0,0,200,.1);/*visibility:hidden;transform:translateY(50vh);*/}
.nextproject .hero p{position:absolute;left:40px;top:45px;z-index:2;transition:opacity .3s ease-out;}
.nextproject .hero h2{position:absolute;left:0;transform:translateX(25vw);bottom:calc((100vh - 200px) + 55px);width:50%;padding-right:50px;z-index:2;transition:transform .6s cubic-bezier(0.25, 1, 0.5, 1);}
.nextproject .hero .lazy{position:absolute;left:0;top:0;width:100%;height:100vh;z-index:0;}
.nextproject .hero .lazy, .nextproject .hero .lazy .rel{position:absolute;left:0;top:0;width:100%;height:100%;}
.nextproject .hero .arrow{position:absolute;right:40px;top:140px;background:url("../Grx/arrow_down_white.svg") no-repeat;width:14px;height:22px;z-index:2;transition:transform .2s ease-out, opacity .3s ease-out;}
.nextproject .hero .arrow:hover{transform:translateY(2px);}
.nextproject .hero .lazy .rel{padding-top:0!important;}
.nextproject:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:50vh;background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,1) 100%);z-index:1;opacity:.6;transition:opacity 1.0s ease-out;}
.nextproject.scrolling:after{opacity:.3;}
.nextproject.scrolling .hero h2{position:fixed;bottom:55px;}
.nextproject:hover .hero p, .nextproject.scrolling .hero p, .nextproject.scrolling .hero .arrow{opacity:0;}
.nextproject.global{position:fixed;left:0;top:0;width:100%;height:100vh;z-index:10;transform:none!important;margin:0!important;}

.people{position:relative;width:100%;font-size:0;margin-top:60px;}
.people .grid .el{background-color:#FFF;}
.people .grid p{position:relative;left:auto;top:auto;padding:0;line-height:1.5;padding-left:40px;opacity:1!important;color:#1C1F29;}
.people .el p:first-of-type{color:#EB3300;padding-top:20px;}

.jobs{position:relative;width:100%;box-sizing:border-box;padding:50px 0;background-color:#F7F7F7;}
.jobs h2{padding:100px 50px 0 40px;width:75%;}
.jobs h2:first-of-type{padding-top:10px;}
.jobs .listall .allfilters button:after{display:none;}/*hide filter arrow*/
.jobs h2 + .listall .allfilters{padding-top:125px;}/*pull a little closer*/
.jobs .listall .p{display:block;}
.jobs .listall button{cursor:default;}

.search{position:relative;width:100%;box-sizing:border-box;padding:250px 0 100px 0;background-color:#FFF;}
.search h2{padding:0 50px 0 40px;width:75%;}
.search .term{color:#EB3300;}
.search h2 + .listall .allfilters{padding-top:125px;}/*pull a little closer*/
.search .listall .p{display:block;}
.search .listall .allfilters button:after{display:none;}/*hide filter arrow*/

footer{position:relative;box-sizing:border-box;width:100%;min-height:280px;background-color:#1C1F29;color:#FFF;padding:50px 0;}
footer .block{position:relative;box-sizing:border-box;padding:0 100px 100px 40px;display:inline-block;vertical-align:top;width:25%;min-width:350px;}
footer .small p{font-size:1.2rem;color:#6D6E71;}
footer .block a{transition:opacity .2s ease-out;}
footer .block a:hover{opacity:.5;}
footer .bl, footer .br{position:absolute;bottom:20px;}
footer .bl a, footer .br a{transition:color .2s ease-out;}
footer .bl{left:40px;}
footer .br{right:40px;}
footer .br a:hover{color:#FFF;}
footer .social{position:absolute;top:100px;right:40px;}
footer .social a{position:relative;display:inline-block;vertical-align:top;width:30px;height:30px;margin-right:10px;opacity:.5;transition:opacity .2s ease-out;}
footer .social a:hover{opacity:1;}
footer .social a.tw{background:url("../Grx/x-logo-white.svg") no-repeat;}
footer .social a.fb{background:url("../Grx/fb_bright.svg") no-repeat;}
footer .social a.li{background:url("../Grx/li_bright.svg") no-repeat;margin-right:0;}
.nofooter footer{display:none;}/* Project pages have their own footer */

.fixedLightbox{position:fixed;left:0;top:0;width:100%;height:100%;z-index:15000;cursor:none;opacity:0;transition:opacity .3s ease-out;}
.fixedLightbox:before{content:"";position:absolute;left:0;top:0;width:100%;height:100%;background-color:rgba(0,0,0,.8);background:radial-gradient(circle, rgba(0,0,0,0.9) 25%, rgba(0,0,0,0.75) 100%);}
.fixedLightbox.on{opacity:1;}
.fixedLightbox .holder{position:absolute;left:100px;top:100px;width:calc(100% - 200px);;height:calc(100% - 200px);}
.fixedLightbox .holder .lazy{display:none;visibility:hidden;/*opacity:0;*/}
.fixedLightbox .holder .lazy, .fixedLightbox .holder .lazy .rel{position:absolute;left:0;top:0;width:100%;height:100%;}
.fixedLightbox .holder .lazy .rel .img{object-fit:contain;}
.fixedLightbox .holder .lazy.active{display:block;visibility:visible;/*transition:opacity .3s ease-out;opacity:1;*/}
.fixedLightbox .holder .lazy.preloaded{display:block;}
.fixedLightbox .cursor{position:absolute;left:-25px;top:-25px;width:50px;height:50px;background:url("../Grx/browse.svg") no-repeat center;pointer-events:none;}
.fixedLightbox .closeBtn{position:absolute;z-index:10;right:25px;top:30px;width:50px;height:50px;transform:rotate(45deg);transition:transform .3s ease-out;}
.fixedLightbox .closeBtn:before{content:"";position:absolute;left:15px;top:24px;width:20px;height:2px;background-color:#FFF;}
.fixedLightbox .closeBtn:after{content:"";position:absolute;left:24px;top:15px;width:2px;height:20px;background-color:#FFF;}
.fixedLightbox .closeBtn:hover{transform:rotate(135deg);}
.fixedLightbox.tablet .lBtn{position:absolute;z-index:10;left:25px;top:50%;margin-top:-25px;width:50px;height:50px;background:url("../Grx/browse.svg") no-repeat center;transform:rotate(180deg);}
.fixedLightbox.tablet .rBtn{position:absolute;z-index:10;right:25px;top:50%;margin-top:-25px;width:50px;height:50px;background:url("../Grx/browse.svg") no-repeat center;}
.fixedLightbox.tablet .cursor{display:none;}


/* Mobile (from 767.5 and down) */
@media all and (max-width:767.5px){
    header{color:#1C1F29;height:65px;}
    header:before{height:65px;transform-origin:0 0;transition:background-color .3s ease-out;}
    header:after{height:226px;top:64px;}
    header .toggle{right:14px;top:14px;}
    header nav{width:100%;padding-top:121px;opacity:0;transition:opacity .2s ease-out;}
    header:not(.open) nav{pointer-events:none;}
    header nav .primary{font-weight:bold;color:#EB3300;display:block;margin-left:10px;font-size:3.0rem;margin-bottom:30px;}
    header nav .search{background:url("../Grx/search_black.svg") no-repeat center;position:absolute;right:0;margin:-74px 9px 0 0;}
    header .logo{left:20px;top:20px;width: 200px;}
    header.white .toggle:before, header.white .toggle:after, header.open .toggle:before, header.open .toggle:after{background-color:#1C1F29;}
    header:not(.closing).open nav{opacity:1;transition:opacity .4s ease-out .1s;}
    header:not(.closing).open:before{background-color:#FFF;transition:background-color .3s ease-out;}
    header:not(.closing).open .toggle{transform:rotate(45deg);}
    header.open{height:290px;}
    header:not(.closing).open:after{opacity:1;}
    header:not(.closing).open .logo .red{display:block;}
    header:not(.closing).open .logo .white{display:none;}
    header:not(.closing).open{box-shadow:0 4px 16px rgba(0,0,0,.05);}
    
    header input{left:20px;bottom:46px;width:calc(100% - 80px);font-size:3.0rem;}
    header.searchmode .primary{opacity:0!important;pointer-events:none;}
    .pagechange header:before{transition:none;}
    
    .controls .progress{left:0;bottom:0;width:100%;height:12px;z-index:1;}
    .controls .fullscreen{top:15px;right:15px;width:30px;height:30px;background-size:100%;}
    .controls .fullscreen:after{background-size:100%;}

    .grid{margin-bottom:50px;}
    .grid .el{display:block;width:100%;height:calc(100vw * .6);margin-bottom:10px;}
    .grid .el.doubleh{height:calc(200vw * .6);}
    .grid .el .lazy, .grid .el .lazy .rel{width:100%;height:100%;}
    .grid div.el p{font-size:1.4rem;}
    .grid .el p{padding:20px;}
    .grid a.el:after{content:"";position:absolute;left:0;top:0;width:100%;height:100%;background-color:#1C1F29;z-index:1;opacity:0;will-change:opacity;transition:opacity .3s ease-out;}
    .grid a.el.hover:after{opacity:.5;}
    .grid a.el p{opacity:0;transform:translateY(10px);z-index:2;transition:opacity .3s ease-out, transform .3s ease-out;}
    .grid a.el.hover p{opacity:1;transform:translateY(0px);}
    

    .fs{margin-bottom:50px;}
    .fs h1, .fs h2{left:20px;width:100%;padding-right:40px;}
    .fs.bl h1, .fs.bl h2{left:20px;bottom:30px;}
    .fs.br h1, .fs.br h2{left:20px;top:auto;bottom:30px;transform:none;}
    .fs.cl h1, .fs.cl h2{left:20px;}

    /* Featured (homepage) */
    .featureddesign{padding:20px 0 50px 0;}
    .featureddesign h2, .featureddesign h3{padding:0 20px 50px 20px;}

    /* Carousel (horizontal slider) */
    .carousel{min-height:50vh;padding:20px 0 0 0;margin-bottom:50px;}
    .carousel h2, .carousel h3{padding:0 20px 50px 20px;}
    .carousel .scroller{padding-left:20px;}
    .carousel .el{width:75vw;}
    /*.carousel .el:last-of-type{margin-right:20px;}*/
    .carousel .el h6, .carousel .el p{padding-bottom:0;padding-right:20px;}

    /* Social share icons on project pages */
    .projectsocial{padding-left:20px;}
    .projectsocial a{margin-top:-100px;}


    /* Fullwidth title on solid background */
    .sectiontitle{padding:50px 20px 75px 20px;}
    .sectiontitle.centered{padding:20px 20px 75px 20px;}
    .sectiontitle p:first-of-type{margin-top:40px;}

    /* Normal text module with optional left side */
    .bodytxt{display:table;padding:50px 20px 75px 20px;}
    .bodytxt .l{display:table-footer-group;width:100%;padding-right:0;}
    .bodytxt .l + .r{display:table-header-group;width:100%}
    .bodytxt .l + .r p:last-of-type{margin-bottom:50px;}/*space to left side (which is now bottom)*/
    .contacttxt{padding:20px 0 50px 0;}
    .contacttxt .l, .contacttxt .r{display:block;width:100%;padding-left:20px;padding-right:20px;}
    .contacttxt .l{margin-bottom:2.5rem;}
    .contacttxt h2{padding-left:20px;margin-bottom:20px;font-size:1.8rem;}

    /* Overview grid */
    .overview{margin:130px 0 0 0;margin-bottom:50px;}
    .overview h1, .overview h2{padding:0 20px 40px 20px;width:60%;}
    .overview:not(.simple) .filters{top:10px;right:25px;width:auto;box-sizing:border-box;}
    .overview:not(.simple) .filters:not(.open){pointer-events:none;}
    .overview:not(.simple) .filters:not(.open) button{pointer-events:all;}
    .overview:not(.simple) .filters:before{content:"";position:absolute;right:-25px;width:100vw;height:100%;background-color:#FFF;opacity:0;transition:opacity .3s ease-out;}
    .overview:not(.simple) .filters button{position:relative;padding:3px 0 0 10px;}
    .overview:not(.simple) .filters:not(.open) a{opacity:0;pointer-events:none;/*transition:none;*/}
    /*.overview:not(.simple) .filters:not(.open){height:70px;}*/
    .overview:not(.simple) .filters:not(.open):before, .overview:not(.simple) .filters:not(.open) a{pointer-events:none;}
    .overview:not(.simple) .filters.open:before{opacity:1;}
    .overview:not(.simple) .filters a{font-size:1.8rem;padding:10px;display:block;transition:all .3s ease-out;}
    .overview:not(.simple) .filters a:first-of-type{margin-top:20px;}
    .overview:not(.simple) .filters a:last-of-type{margin-bottom:30px;}
    .overview:not(.simple) .types{bottom:20px;right:20px;}
    .overview .types button{margin:0;}
    .overview .types button.selected{display:none;}
    /*.overview .types button.featuredicon{background:url("../Grx/featured_active.svg") no-repeat;}
    .overview .types button.allicon{background:url("../Grx/all_active.svg") no-repeat;}*/
    .overview .types button.featuredicon, .overview .types button.allicon{display:none;}
    .overview .types button.mobileicon{display:block;background-color:#EB3300;border-radius:100px;}
    .overview .types button.mobileicon .anim{position:absolute;left:0;top:0;width:100%;height:100%;z-index:2;}
    .overview .types button.mobileicon .anim .whiterect{position:absolute;left:50%;top:50%;width:22px;height:18px;margin:-9px 0 0 -11px;background-color:#FFF;}
    .overview .types button.mobileicon .anim .redline.v{position:absolute;left:50%;top:50%;margin:-9px 0 0 -1px;height:18px;width:2px;background-color:#EB3300;}
    .overview .types button.mobileicon .anim .redline.h{position:absolute;left:50%;top:50%;margin-top:-1px;margin-left:-11px;width:22px;height:2px;background-color:#EB3300;}

    .overview.simple{margin-bottom:0;}
    .overview.simple .filters{top:15px;right:7px;margin-top: -5px;}
    .overview.simple .filters a{font-size: 2rem;/* font-weight:bold; */}


    .listall .allfilters{padding:0 0 20px 20px;}
    .listall .allfilters button:nth-of-type(2), .listall .p span:nth-of-type(2){display:none;}
    .listall .allfilters button:nth-of-type(1), .listall .p span:nth-of-type(1){width: calc(100% - 162px);}
    .listall .allfilters button:nth-of-type(3), .listall .p span:nth-of-type(3){width:125px;}
    .listall .p{padding:8px 0;margin-left:20px;width:calc(100% - 20px);font-size:1.6rem;}
        
    .listall div.p{color:#ccc;}
    .listall .allfilters button, .filters button{font-size:1.3rem;}
    .listall .allfilters button:after{top:4px;}
    .filters button:after{top:7px;}

    .people{margin-top:20px;}
    .people .grid .el{margin-bottom:120px;}
    .people .grid p{font-size:1.8rem;padding:0 20px 0 20px;}
    .people .grid a.el:after{display:none;}
    
    .nextproject .hero p{left:20px;top:25px;}
    .nextproject .hero h2{transform:none;left:20px;bottom:calc((100vh - 200px) + 30px);width:100%;padding-right:20px;}
    .nextproject.scrolling .hero h2{position:fixed;bottom:30px;}
    .nextproject .hero .arrow{display:none;}

    .jobs{padding:20px 0 40px 0;}
    .jobs h2{padding:50px 20px 0 20px;width:100%;font-size:1.8rem;}
    .jobs h2:first-of-type{padding-top:10px;}
    .jobs h2 + .listall .allfilters{padding-top:60px;}

    .search{padding:130px 0 100px 0;}
    .search h2{padding:0 20px 40px 20px;width:100%;}
    .search h2 + .listall .allfilters{padding-top:0;}
    .search .listall .allfilters button:nth-of-type(2), .search .listall .p span:nth-of-type(2){display:inline-block;}

    footer{padding:20px;min-height:100px;}
    footer .block{padding:0 0 20px 0;display:block;width:100%;min-width:100%;}
    footer .social{position:relative;top:auto;right:auto;margin:35px auto 30px auto;text-align:center;}
    footer .bl, footer .br{position:relative;bottom:auto;left:auto;right:auto;text-align:center;margin:5px auto 0 auto;}
}

/* Desktop only */
@media all and (min-width:767.5px){
    header .toggle{display:none;}
    .carousel:after{content:"";position:absolute;width:100%;height:20px;left:0;bottom:0;background-color:transparent;/*opacity:.9;*/z-index:10;}/*hide scrollbar*/
    .home .carousel:after { background-color: transparent; }
    .carousel a.el:hover .lazy:after{opacity:.5;}

    .filters button{display:none;}
    .listall a.p{transition:color .2s ease-out;cursor:pointer;}
    .listall a.p:hover{color:#EB3300;}

    /* Grid layout */
    .grid{display:grid;grid-gap:10px;grid-template-columns:repeat(4, 1fr);grid-auto-rows:calc((25vw * .6) - 5px); /* Height for row tracks */margin-bottom:100px;}
    .grid .el{display:inline-block;vertical-align:top;}
    /* Fid the missing grid layout IE */
    .oldIe .grid{display:block;}
    .oldIe .grid .el{box-sizing:border-box;border:5px solid #FFF;}
    .black.oldIe .grid .el{border-color:#1C1F29;}
    .oldIe .grid .el.quarter, .oldIe .grid .el.quarter + .el.full, .oldIe .grid .el.quarter + .el.full + .el.full{width:25%;}
    .oldIe .grid .el.quarter .rel, .oldIe .grid .el.quarter + .el.full .rel, .oldIe .grid .el.quarter + .el.full + .el.full .rel{padding-top:15vw;}
    .oldIe .grid .el.quarter .rel .img, .oldIe .grid .el.quarter + .el.full .rel .img, .oldIe .grid .el.quarter + .el.full + .el.full .rel .img{position:absolute;left:0;top:0;}

    .oldIe .grid .el.full, .oldIe .grid .el.doubleh{width:50%;}
    .oldIe .grid .el.full .rel{padding-top:60%;}
    .oldIe .grid .el.doubleh .rel{padding-top:120%;}
    .oldIe .grid .el.full .rel .img, .oldIe .grid .el.doubleh .rel .img{position:absolute;left:0;top:0;}

    .oldIe .grid .el.doubleh + .el.full + .el.full{position:absolute;left:50%;top:calc(30vw - 10px);}
 /*   .oldIe .grid .el.quarter:nth-of-type(4n){border-right:0;}
    .oldIe .grid .el.quarter:nth-of-type(4n-3){border-left:0;}
    .oldIe .grid .el.full:nth-of-type(2n), .oldIe .grid .el.doubleh:nth-of-type(2n){border-right:0;}
    .oldIe .grid .el.full:nth-of-type(2n-1), .oldIe .grid .el.doubleh:nth-of-type(2n-1){border-left:0;}*/
    
    .grid .el.quarter{grid-row-end:span 1;}
    .grid .el.w-half{grid-column-end:span 2;grid-row-end:span 1;}
    .grid .el.h-half{grid-column-end:span 1;grid-row-end:span 2;}
    .grid .el.full{grid-column-end:span 2;grid-row-end:span 2;/* width:calc(100% - 20px);height:calc((50vw * .6) - 5px);*/}
    .grid .el.full.alignbottom{grid-row:5/3;grid-column:1/3;}/*left side bottom align*/
    .grid .el.doubleh + .el.full.alignbottom, .grid .el.full + .el.full.alignbottom{grid-row:3/5;grid-column:3/-1;}/*bottom aligned right side next to doublh*/
    .grid .el.doubleh{grid-column-end:span 2;grid-row-end:span 4;/* width:calc(100% - 20px);height:calc((50vw * .6) - 5px);*/}
    .grid a.el:after{content:"";position:absolute;left:0;top:0;width:100%;height:100%;background-color:#1C1F29;z-index:1;opacity:0;transition:opacity .3s ease-out;will-change:opacity;}
    .grid .el .lazy{width:100%;height:100%;}
    .grid .el .lazy .rel{height:100%;overflow:hidden;}
    .grid .el .lazy .rel .img{position:relative;width:100%;height:100%;}
    .grid p{position:absolute;left:0;top:0;color:#FFF;z-index:2;padding:20px 25% 20px 40px;}
    .grid a.el p{opacity:0;transform:translateY(10px);transition:opacity .3s ease-out, transform .3s ease-out;z-index:2;}
    .grid .el .img.complete{transition:all .3s ease-out;}
    .grid a.el{cursor:pointer;}
    .grid a.el:hover p{opacity:1;transform:translateY(0px);}
    .grid a.el:hover:after{opacity:.5;}

    .people .grid{grid-auto-rows:calc((25vw * .6) + 70px);margin-bottom:0;}
    .people .grid.small{grid-auto-rows:calc((25vw * .6) + 150px);}
    .people .grid .el .lazy{height:calc(100% - 150px);}
    .people a.el:after{display:none;}
    .people a.el .lazy{transition:opacity .3s ease-out;}
    .people a.el:hover .lazy{opacity:.5;}
    .people a.el p{transform:none;}
    
    .listall{width:100%;height:auto;min-height:calc(100vh - 260px);}
    .listall .p span:nth-of-type(1), .listall .p span:nth-of-type(2){width:25vw;}
    .listall .allfilters button:nth-of-type(1), .listall .allfilters button:nth-of-type(2){width:25vw;}
    .listall .allfilters button:nth-of-type(3){width:12.5vw;}
    .overview .filters a:not(.selected):hover{color:#EB3300;}
    .nextproject.scrolling .hero h2, .nextproject:hover .hero h2{transform:translateX(40px);}

    .search .listall .allfilters button:nth-of-type(1), .search .listall .p span:nth-of-type(1){width:50vw;}
    .search .listall .allfilters button:nth-of-type(2), .search .listall .p span:nth-of-type(2){width:12.5vw;padding-right:0;}

    footer .block:nth-of-type(2){padding-left:5px;}
}

/* iPhone x etc landscape */
@media all and (orientation:landscape) and (min-width:767.5px) and (max-height:415px){
    h1,h2{font-size:3.0rem;}
    h3{font-size:1.8rem;}
    h6, .small p, .people a p{font-size:1.4rem;}
    p{font-size:1.8rem;line-height:1.4;}

    .fs{margin-bottom:50px;}
    .fs h1, .fs h2{left:40px;width:75%;padding-right:40px;}
    .fs.bl h1, .fs.bl h2{left:40px;bottom:40px;}
    .fs.br h1, .fs.br h2{left:40px;top:auto;bottom:40px;transform:none;}
    .fs.cl h1, .fs.cl h2{left:40px;}

    .nextproject .hero p{left:40px;/*top:25px;*/}
    .nextproject .hero h2{transform:none;left:40px;bottom:calc((100vh - 200px) + 40px);width:75%;padding-right:40px;}
    .nextproject.scrolling .hero h2{position:fixed;bottom:40px;}
    .nextproject .hero .arrow{display:none;}
    .nextproject.scrolling .hero h2, .nextproject:hover .hero h2{transform:none;}
}

.pageTransition{position:fixed;pointer-events:none;z-index:1001;width:100%;height:100vh;background-color:#FFF;left:0;top:0;opacity:1;transition:opacity 1s ease-in-out;}
.pageTransition.loaded{opacity:0;}
.pageTransition.in{opacity:1;transition:opacity .2s ease-out;}


/*Used for mobile measurement of vh unit */
.vh{position:absolute;z-index:-1;top:0;left:-1px;width:1px;height:100vh;}


.oldIe .lazy .rel .img{
	object-fit:cover;
	font-family:'object-fit: cover;';
}
.oldIe .fixedLightbox .holder .lazy .rel .img{
	object-fit:contain;
	font-family:'object-fit: contain;';
}