*, *:after, *:before {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}

@font-face {
    font-family: 'stolzllight';
    src: url('/fonts/stolzl-light-webfont.eot');
    src: url('/fonts/stolzl-light-webfont.eot?#iefix') format('embedded-opentype'),
         url('/fonts/stolzl-light-webfont.woff2') format('woff2'),
         url('/fonts/stolzl-light-webfont.woff') format('woff')
		/*,
         url('/fonts/stolzl-light-webfont.ttf') format('truetype'),
         url('/fonts/stolzl-light-webfont.svg#stolzllight') format('svg')*/;
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'stolzlthin';
    src: url('/fonts/stolzl-thin-webfont.eot');
    src: url('/fonts/stolzl-thin-webfont.eot?#iefix') format('embedded-opentype'),
         url('/fonts/stolzl-thin-webfont.woff2') format('woff2'),
         url('/fonts/stolzl-thin-webfont.woff') format('woff')/*,
         url('/fonts/stolzl-thin-webfont.ttf') format('truetype'),
         url('/fonts/stolzl-thin-webfont.svg#stolzlthin') format('svg')*/;
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'stolzlregular';
    src: url('/fonts/stolzl-webfont.eot');
    src: url('/fonts/stolzl-webfont.eot?#iefix') format('embedded-opentype'),
         url('/fonts/stolzl-webfont.woff2') format('woff2'),
         url('/fonts/stolzl-webfont.woff') format('woff')/*,
         url('/fonts/stolzl-webfont.ttf') format('truetype'),
         url('/fonts/stolzl-webfont.svg#stolzlregular') format('svg')*/;
    font-weight: normal;
    font-style: normal;
}

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline}

html, body {height: 100%;}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display: block}

body {line-height: 16px; font-family: 'stolzlregular'; font-size:14px; color:#000; margin:0; padding:0;}
.page {min-height: 100%; display: flex; flex-direction: column;}
.wrapper {flex: 1;}	

body.overflow-hidden {overflow: hidden;}
ol, ul {list-style: none;}
blockquote, q {quotes: none}

blockquote:before,blockquote:after,q:before,q:after {content: ''; content: none}
*{margin:0; padding: 0;}

.clear:before,.clear:after { content: ""; display: table;}
.clear:after, .clear-both { clear: both;}

a {color:#000; text-decoration:none;}
a:hover {text-decoration:underline;}

/* Clear Fix */
.group:after {visibility: hidden;display: block;	content: "";	clear: both;	height: 0;}
* html .group             { zoom: 1; } /* IE6 */
*:first-child+html .group { zoom: 1; } /* IE7 */

.content {margin:0 auto; width:93.2% !important; margin-top:110px;}
.page .content {margin-top:140px;}
.content, .menu-wrap {max-width:1500px;}
.menu-wrap {
	position: fixed;
    width: 93.2%;
    top: 0;
    left: 0;
	right:0;
	margin: 0 auto;
    -webkit-transition: all 0.5s ease-in-out;
  	-moz-transition: all 0.5s ease-in-out;
  	-ms-transition: all 0.5s ease-in-out;
  	-o-transition: all 0.5s ease-in-out;
  	transition: all 0.5s ease-in-out;
	background-color: white;
    z-index: 4999; height:110px;
}
.menu-cover {margin-right: 40px;}
.menu-cover ul {margin:0 auto; text-align:right; width:100%;}
.menu-cover ul li {display:inline-block; padding-left:3.2%; font-family: 'stolzllight'; letter-spacing:0.12em;}
.menu-cover ul li a {
	color:#000; text-decoration:none; text-transform:uppercase; line-height:110px;
	-webkit-transition: all 0.3s ease-in-out;
  	-moz-transition: all 0.3s ease-in-out;
  	-ms-transition: all 0.3s ease-in-out;
  	-o-transition: all 0.3s ease-in-out;
  	transition: all 0.3s ease-in-out;
}
.menu-cover ul li a:hover, .menu-cover ul li .active {text-decoration:line-through;}
.mobile-menu {width:29px !important; position:absolute; right:35px; top:30px; z-index:600; cursor:pointer !important; display:none;}



.hamburger {
  padding: 0;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, -webkit-filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }

  .hamburger:hover {
    opacity: 0.7; }

.hamburger-box {
  width: 32px;
  height: 24px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 32px;
    height: 4px;
    background-color: #000;
    border-radius: 3px;
    position: absolute;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -10px; }
  .hamburger-inner::after {
    bottom: -10px; }

.hamburger--3dx .hamburger-box {
  -webkit-perspective: 80px;
          perspective: 80px; }

.hamburger--3dx .hamburger-inner {
  transition: background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after {
    transition: -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dx.is-active .hamburger-inner {
  background-color: transparent;
  -webkit-transform: rotateY(180deg);
          transform: rotateY(180deg); }
  .hamburger--3dx.is-active .hamburger-inner::before {
    -webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
            transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dx.is-active .hamburger-inner::after {
    -webkit-transform: translate3d(0, -10px, 0) rotate(-45deg);
            transform: translate3d(0, -10px, 0) rotate(-45deg); }



.mobile-menu, .mobile-icons {display:none;}

.main-logo {margin:0 auto; text-align:center; width:230px; position:fixed; left:0; right:0; top:230px; z-index:5000;
	-webkit-box-shadow: 1px 1px 15px 3px rgba(0,0,0,0.3);
	-moz-box-shadow: 1px 1px 15px 3px rgba(0,0,0,0.3);
	box-shadow: 1px 1px 15px 3px rgba(0,0,0,0.3);
}
.main-logo img, .top-logo img {width:100%; display: block;}

.top-logo {width:110px; top:0; left:50px; z-index: 2000; position:absolute;}
.home .top-logo {display:none;}
.rows {list-style: none; margin:0 auto; padding:0; width:100%; display: flex; flex-wrap: wrap;}
.rows li {position:relative;}
.rows .left-align {float:left;}
.rows .right-align {float:right;}
.rows .center-align {margin:0 auto;}

.columns {flex-basis: 49.999999%;}

.col-left {flex-basis: 28.6718% !important;}
.col-mid {flex-basis: 45.8593% !important;}
.col-right {flex-basis: 25.4688% !important;}

.rows .img-wrap {}
.rows a {display:block; width: 100%}
.rows .img-wrap img {
	width:100%; display:block;
	-webkit-filter: grayscale(1);
  	filter: grayscale(1);
	-webkit-transition: all 0.3s ease-in-out;
  	-moz-transition: all 0.3s ease-in-out;
  	-ms-transition: all 0.3s ease-in-out;
  	-o-transition: all 0.3s ease-in-out;
  	transition: all 0.3s ease-in-out;
}

.img-wrap a {text-decoration: none;
	-webkit-transition: all 0.3s ease-in-out;
  	-moz-transition: all 0.3s ease-in-out;
  	-ms-transition: all 0.3s ease-in-out;
  	-o-transition: all 0.3s ease-in-out;
  	transition: all 0.3s ease-in-out;
}
.img-wrap a>p {color: #000; text-transform: uppercase; line-height: 35px !important; font-size: 0.9em; text-align: left}
.img-wrap span {font-family: 'stolzllight';}
.img-wrap a:hover {color: #000; text-decoration: line-through;}
.img-wrap a:hover > img {-webkit-filter: grayscale(0); filter: grayscale(0);}


/*==========  HOME IMAGES Start   ===========*/

	#image01 {width:96.5% !important; padding-top: 5%;}
	#image02 {width:48.3% !important; padding-left: 4%; padding-top: 5%;}
	#image03 {width:48.4375% !important; padding-top: 5%;}
	#image04 {width:100% !important; padding-left: 4%; margin-top: -11.6% !important;}
	#image05 {width:96.25% !important; padding-top: 5%;}
	#image06 {width:43.125% !important; padding-left: 4%; padding-top: 5%;}
	#image07 {width:89% !important; padding-top: 64%;}
	#image08 {width:98% !important; padding-top: 7%;}
	#image09 {width:86.5% !important; padding-top: 45%;}
	#image10 {width:96.25% !important; margin-top: -10% !important;}

/*==========  HOME IMAGES End   ===========*/




/*==========  PAGES GENERIC   ===========*/
.lite-font {font-family: 'stolzllight';}
.thin-font {font-family: 'stolzlthin';}

.page-heading {width: 22%; float: left; padding-left: 50px;}
.page-content {width: 72%; float: right; font-size: 1.05em; letter-spacing: 0.08em; color: #333; padding-right: 5%}

.page-heading h1 {text-transform: uppercase;}
.page-content p, .page-content h2 {margin-bottom: 20px; line-height: 22px; font-weight: 100;}
.block-link {display: block; line-height: 22px;}
.page-content .item-heading {margin-bottom: 5px;}




/*==========  PRESS Start   ===========*/

	.press-wrap {width: 100%; border-top: 1px solid #000; margin-bottom: 25px;}
	.press-img {background: #000; width: 202px; height: 202px; float: left; text-align: center; display: flex; justify-content: center; flex-direction: column;}
	.press-img img {margin:0 auto}
	.press-content {width: 246px; height: 182px; float: right; margin-right: 25px; font-size: 0.78em; line-height: 0.9em; padding-top: 25px;}
	.press-content p {line-height: 1.2em; margin-bottom: 14px;}

/*==========  PRESS End   ===========*/




/*==========  PROJECTS Start   ===========*/

	.projects .rows {margin-top: 10px; margin-bottom: 50px; margin-left: 50px;}
	.projects .columns {flex-basis: 46.5%;}
	.projects .columns h3, .projects h1 {padding-bottom: 18px; text-transform: uppercase; font-size: 0.88em; letter-spacing: 0.08em;}
	.projects .rows .col-imgs {width: 100%;}
	.projects .rows .col-img {float:left; width: 44%;}
	.projects .rows a .col-img > img {
		display: block; width: 100%;
		-webkit-filter: grayscale(1);
  		filter: grayscale(1);
		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
		-ms-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
	}
	.projects .rows a {
		display: block; width: 100%;
	}
	.projects .rows a .col-imgs .col-img:hover >img {-webkit-filter: grayscale(0); filter: grayscale(0);}

	.projects .rows .img1 {margin-right:18px;}
	.projects .rows .first {margin-right: 2.8%}
	.projects .content {overflow: hidden !important;}

	.proj-detail .page-content ul {float: left; width: 45%;}
	.proj-detail .page-content li {font-size: 0.88em; letter-spacing: 0.08em; line-height: 21px;}
	.proj-detail .page-content .col1 {margin-right: 5%;}
	.proj-detail .page-content p {font-size:0.95em;}
	
	.proj-imgs {padding-top: 35px;}
	.proj-imgs .img-row img {width: 100%;}
	.proj-imgs .img-row {width: 100%; margin-bottom: 20px;}
	.proj-imgs .img-row .columns2 {width: 48.6%; float: left;}
	.proj-imgs .img-row .left-item {margin-right: 2.8%}

	.proj-detail .share-item a {font-size:1.65em;}
	.proj-detail .share-item a:hover {font-size:1.6em; color: #999;}

	.darker-title {color: black; font-family: 'stolzlregular';}

/*==========  PROJECTS End   ===========*/


.quote-cover {border-bottom: 1px solid #333; margin-bottom: 20px; padding-bottom: 10px; font-style: italic;}

.footer-content {padding-bottom: 20px; padding-top: 25px; background: url(/images/footer-back.jpg) no-repeat top; background-size:cover; font-family: 'stolzllight';}
.footer-content .container {max-width:1500px; margin:0 auto; width:93.2%; padding-left: 50px; padding-right: 45px;}
.footer-content a svg {
	outline:none; fill:#000;
	width:30px; height:30px;
}
.footer-content a svg:hover {
	fill:#666;
}
.footer-nav {float:left}
.footer-copy {float:right; margin-top: 4%;}
.footer-copy li {display:inline-block;}
.footer-reg {padding-bottom: 18px; vertical-align: middle; position: relative;}
.footer-nav li {line-height:19px; font-size: 0.9em; text-transform: uppercase;}


@media only screen and (max-width: 960px) {	
	.mobile-menu, .mobile-icons {display:block;}
	.menu-cover {display:none; height:100vh; background:#fff; text-align:center; position:absolute; width:100%; max-width: 100%; padding: 0;}
	
	.menu-cover ul {float:none !important; margin:0 auto; padding-top:105px;}
	.menu-cover ul li {display:block; padding-left:0 !important; line-height:58px; font-size:1.4em; text-align:center;}
	.menu-cover ul li a {line-height:58px;}	
	
	.mobile-icons {margin-top:5px;}
	.mobile-icons ul {float:none !important; margin:0 auto; padding-top:0; text-align: center; margin-top: 20px;}
	.mobile-icons ul li {display:inline-block !important; width: 58px; text-align: center;}
	.mobile-icons ul li a:hover {border:none; text-decoration:none;}
	
	.mobile-icons ul li a svg {fill:#666; width: 45px;}
	.mobile-icons ul li a svg:hover {fill:#000;}
	
	.top-logo {left:50px;}
}
@media only screen and (max-width: 900px) {
	.top-logo {left:30px;}
	.page-heading {width: 90%; float: none; padding-left: 30px;}	
	.page-content {float: none; padding-left: 30px; width: 90%; padding-top: 30px;}
	
	.projects .rows {margin-left: 30px;}
}
@media only screen and (max-width: 850px) {
	.projects .rows {margin-top:0; margin-bottom: 0;}
	.projects .columns {flex-basis: 97%; padding-bottom: 50px}
}
@media only screen and (max-width: 760px) {
	.top-logo {left:30px;}
	
	.proj-imgs .img-row .columns2 {width: 100%; float: none;}
	.proj-imgs .img-row .left-item {margin-right: 0}
	
	.proj-detail .page-content { width: 100%; padding-right: 4%;}
	.proj-detail .page-content ul {float: none; width: 100%;}
	.proj-imgs .img-row img {margin-bottom: 20px;}
	.proj-imgs .img-row {margin-bottom: 0;}
	.proj-detail .page-content .col1 {margin-right: 0;}
}
@media only screen and (max-width: 630px) {
	.press-wrap {margin-bottom: 30px; border: 1px solid #000; padding-bottom: 10px; min-width: 204px;}
	.press-img, .press-content {float: none; margin: 0 auto;}
	.press-content {width: 80%; display: block; height: auto; position: relative;}	
}
@media only screen and (max-width: 600px) {	
	.columns {flex-basis: 48%;}
	.top-logo {left:20px;}
	.col-left {flex-basis: 50% !important;}
	.col-mid {flex-basis: 50% !important;}
	.col-right {flex-basis: 50% !important;}
	
	.main-logo {top:90px; width: 180px;}
	
	#image01 {width:100% !important; padding-top: 185px;}
	#image02 {width:75% !important; padding-left: 4%; padding-top: 185px;}
	#image03 {width:55% !important; padding-top: 0; margin-top:0;}
	#image04 {width:100% !important; padding-left: 4%; margin-top:0 !important; padding-top: 15%;}
	#image05 {width:98% !important; padding-top: 0;}
	#image06 {width:52% !important; padding-left: 4%; padding-top: 1%;}
	#image07 {width:89% !important; padding-top: 8%;}
	#image08 {width:100% !important; padding-top: 7%;}
	#image09 {width:86.5% !important; padding-top: 1%;}
	#image10 {width:100% !important; margin-top: -10% !important;}
	
	.page-heading, .page-content {padding-left: 20px;}
	
	.projects .rows {margin-left: 20px;}
}
@media only screen and (max-width: 420px) {
	.menu-wrap {height:86px;}
	.projects .columns {flex-basis: 94%;}
	.main-logo {top:105px; width: 140px;}
	.columns {flex-basis: 100%;}
	.col-left {flex-basis: 100% !important;}
	.col-mid {flex-basis: 100% !important;}
	.col-right {flex-basis: 100% !important;}
	.rows .img-wrap {width:100% !important; padding: 0 !important; margin:0 !important; margin-bottom: 15px !important;}
	#image01 {width:100% !important; padding-top: 170px !important;}
	#image02 {width:100% !important; padding: 0;}
	#image03 {width:100% !important; padding: 0;}
	#image04 {width:100% !important; padding: 0;}
	#image05 {width:100% !important; padding: 0;}
	#image06 {width:100% !important; padding: 0;}
	#image07 {width:100% !important; padding: 0;}
	#image08 {width:100% !important; padding: 0;}
	#image09 {width:100% !important; padding: 0;}
	#image10 {width:100% !important; padding: 0; margin-top: 0 !important;}
}


