/* @group FONTS */

@import '../webfonts/ss-social-regular.css';

@font-face {
	font-family: 'icomoon';
	src:url('../fonts/icomoon.eot?-oao8zr');
	src:url('../fonts/icomoon.eot?#iefix-oao8zr') format('embedded-opentype'),
		url('../fonts/icomoon.ttf?-oao8zr') format('truetype'),
		url('../fonts/icomoon.woff?-oao8zr') format('woff'),
		url('../fonts/icomoon.svg?-oao8zr#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}
[class^="icon-"], [class*=" icon-"] {
	font-family: 'icomoon';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;

	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.icon-archio2 a:before {
	content: "\e600";
}

/*@font-face {
font-family: 'Apercu Regular L';
src:
    local('Apercu Regular'),
    local('Apercu-Regular'),
    url('Apercu Regular.otf');
}*/

@font-face {
    font-family: 'Apercu-Regular';
    src: url('../fonts/apercu-regular.eot'); /* IE9 Compat Modes */
    src: url('../fonts/apercu-regular.eot?#iefix') format('embedded-opentype'),
           url('../fonts/apercu-regular.woff') format('woff'),
           url('../fonts/apercu-regular.woff2') format('woff'),
           url('../fonts/apercu-regular.ttf') format('truetype');
}


/*

div { font-family:"Apercu Regular", Calibri, Roboto, sans-serif; font-size-adjust:0.508; font-weight:normal; font-style:normal; }
div { font-family:"Apercu Light", Calibri, Roboto, sans-serif; font-size-adjust:0.508; font-weight:200; font-style:normal; }
div { font-family:"Apercu Medium", Calibri, Roboto, sans-serif; font-size-adjust:0.508; font-weight:600; font-style:normal; }
div { font-family:"Apercu Bold", Calibri, Roboto, sans-serif; font-size-adjust:0.508; font-weight:bold; font-style:normal; }

*/


/* @end */

/* GENERAL EXPRESSIONS */

html, body {
	width: 100%;
	min-height: 100%;
    font: 14px/20px "Apercu-Regular", Calibri, Roboto, sans-serif;
    font-size-adjust:0.508; font-weight:normal; font-style:normal;
	margin: 0;
	padding: 0;
	color: #000;
}
h1, h2, h3, h4 {
	font-weight: normal;
	font-style: normal;
}
b, strong {
	font-weight: normal;
	font-style: normal;
}
a {
	color: #000;
	text-decoration: none;
}
.clear {
	clear: both;
}
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
img {
	outline: none;
}
a:focus { 
    outline: none; 
}
:focus {outline:none;}
::-moz-focus-inner {border:0;}

#overlay-preload {
    position: fixed;
    left: 0;
    top: 0;
    width: 200%;
    height: 200%;
    background: #fff;
    z-index: 15000;
}
.inverted #overlay-preload {
    background: #000;
}


/* STRUCTURE */
.wrapper {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 100;
    width: 100%;
}

.wrapper.header-container {
    position: fixed;
    z-index: 20000;
    width: 600px;
    left: 50%;
    top: 0;
    margin-left: -300px;
}
.wrapper.subheader-container {
    position: absolute;
    z-index: 20000;
    width: 100%;
    left: 0;
    top: 215px;
}
.wrapper.subheader-container.stick {
    position: fixed;
    left: 0;
    top: 0;
    border-bottom: 1px dotted #000;
    /* background-color: #fff; */
}
.content-container {
    width: 100%;
    max-width: 1340px;
    margin: 0 auto;
    padding-bottom: 80px;
}
.content-container .element-container {
    margin: 0 25px;
}
.nested {
    padding-right: 30px;
}

/* LOGO */

.footer-container .sitelogo {
  font-size: 50px;
  width: 300px;
  text-align: left;
  margin: 60px 0 0 0;
}
.sitelogo {
    font-size: 85px;
    margin: 0 auto;
    display: block;
    width: 300px;
    text-align: center;
}
.sitelogo h1 {
    display: none;
}


/* HOMESLIDER */

.home-wrapper{
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
}
.home-slider {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    position: relative;
}
.home-slider .left-mask,
.home-slider .right-mask {
    position: absolute;
    top: 0;
    height: 100%;
    width: 100px;
    background-color: #fff;
    z-index: 120000;
}
.home-slider .left-mask {
    left: 0;
}
.home-slider .right-mask {
    right: 0;
}
.home-slider .left-hover,
.home-slider .right-hover{
    position: absolute;
    top: 0;
    height: 100%;
    width: 30%;
    z-index: 900000;
} 
.home-slider .left-hover {
    left: 0;
}

.home-slider .left-hover span {
    width: 0;
    height: 0;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    position: absolute;
    left: 30px;
    top: 50%;
    margin-top: -15px;
    z-index: 30000;
    display: none;
}
.home-slider .right-hover span {
    width: 0;
    height: 0;
    border-top: 20px solid transparent;
    border-bottom: 20px solid transparent;
    position: absolute;
    right: 30px;
    top: 50%;
    margin-top: -15px;
    z-index: 30000;
    display: none;
}
.home-slider .right-hover {
    right: 0;
}
.home-slider .home-slide {
    overflow: hidden;
    width: 100%;
    height: 100%;
    text-align: center;
    position: relative;
}
.home-slider .home-slide img {
    height: 100%;
    width: auto;
}
.home-slider .home-slide .home-caption {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 300px;
    display: block;
    margin: -30px 0 0 -150px;
}
.home-slider .home-slide .home-caption.white p,
.home-slider .home-slide .home-caption.white a{
    color: #fff;
}
.home-slider .home-slide .home-caption p {
    font-size: 50px;
    line-height: 50px;
    margin: 20px 0;
}
.home-slider .home-slide .home-caption h2 a {
    font-size: 22px;
    line-height: 30px;
    border-bottom: 1px solid #000;
}
.home-slider .home-slide .home-caption.white h2 a {
    border-bottom-color: #fff;
}

/* NEW HOME SLIDER */


.cycle-slideshow {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    position: relative;
}

.cycle-slideshow .single-slide {
    height: 100%;
}

.cycle-slideshow .single-slide img {
    height: 100%;
}



/* FOOTER */

.content-container .element-container.project-meta h4 {
    font-family:"Apercu Bold", Calibri, Roboto, sans-serif; font-size-adjust:0.508; font-weight:bold; font-style:normal;
    margin: 20px 0 0 0;
}
.content-container .element-container.project-meta h4:first-child {
    margin: 0;
}
.content-container .element-container.project-meta h4 span {
    font-family:"Apercu Regular", Calibri, Roboto, sans-serif; font-size-adjust:0.508; font-weight:normal; font-style:normal;
}
.content-container .element-container.project-meta p {
    margin: 0;
}

.related-objects-overlay {
    margin: 4px 0 0 0;
    font-size: 12px;
    line-height: 17px;
}

.footer-container {
    font-size: 12px;
    line-height: 17px;
}
.home .footer-container {
    background: #fff;
}
.footer-container {
    min-height: 300px;
    padding: 40px 0 30px 0;
}

.legal {
    color: silver;
    margin: 40px 0 0 0;
}
.legal a {
    color: silver;
}
.footer-container a.ss-twitter {
    position : relative;
    top : .1em;
} 
.footer-container a.ss-pinterest {
    position : relative;
    top : .1em;
}
/*.footer-container a.instagram img{
    width: 20px;
    height: 20px;
    margin-top: -4px;
}*/
.instagram{
    background:url(../img/instagram-glyph.svg);
    display: inline-block;
    width: 20px;
    height: 20px;
    background-repeat: no-repeat;
}


/* INVERT and COLOUR PAGE */

body.inverted {
    background-color: #000;
    color: #fff;
}
body.inverted a {
    color: #fff;
}
body.inverted .menu.desktop .categories .category a{
    border-color: #fff;
}
body.inverted .instagram{
    background:url(../img/instagram-glyph-white.svg);
}

/* PAGE STRUCTURING and OVERVIEWS*/
.element-container.overview,
.element-container.detail {
    margin-top: 300px;
}
.element-container.overview {
    min-height: 600px;
}
.element-container .divider-container {
    margin-bottom: 10px;
}
body.practice .element-container.offset {
    margin-bottom: 100px;
}
.element-container .divider-container h2 {
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 30px;
}
.element-container.masonry .each-element {
    margin-bottom: 60px;
}
.element-container.washingline .each-element {
    margin-bottom: 60px;
}
.element-container .each-element .image-container.blog {
    position: relative;
}
.element-container .each-element .image-container.blog div {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0.3;
    cursor: pointer;
}
.element-container .each-element .image-container img {
    width: 100%;
    height: auto;
}

.projects .element-container .each-element .title-meta-container h2 {
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 22px;
    line-height: 1.3em;
    text-align: center;
}
.projects .element-container .each-element .title-meta-container h2.has-byline {
    margin-bottom:.5em;
}
.projects .element-container .each-element .title-meta-container h3 {
    font-size: 1.1em;
    max-width: 95%;
    line-height: 1.3em;
    text-align: center;
    margin: 0 auto;
}

.blog .element-container .each-element .title-meta-container h2 {
    font-size: 20px;
    line-height: 1.3em;
}
.blog .element-container .each-element .title-meta-container h2 a span {
    border-bottom-width: 1px;
    border-bottom-style: solid;
}



/* INFO */
.awards-new p {
    margin: 0;
}
.awards-new p.shift {
    margin-top: 15px;
}
.awards-new .group {
    margin-bottom: 20px;
}


.container-fluid.practice-container {
    padding-bottom: 200px;
}
.element-container .text-container .person-image-container {
    width: 90%;
}
.element-container .text-container .person-image-container img {
    width: 100%;
    height: auto;
}
.element-container .text-container .award-group {
    margin-bottom: 25px;
}
.element-container .text-container .award-group h3,
.element-container .text-container .award-group p {
    margin: 0;
}
.element-container .text-container .award-group p a {
    border-bottom-style: solid;
    border-bottom-width: 1px;
}
.element-container .text-container a {
    border-bottom: 1px solid #000;
}
.element-container .text-container ul {
    margin: 0;
    padding: 0;
    list-style-position: inside;
}
.person-urls a {
    border: none!important;
}
body.inverted .element-container .address-container a,
body.inverted .element-container .text-container a {
    border-bottom: 1px solid #fff;
}
.element-container .text-container .award-group p.project {
    margin-top: 5px;
}
.element-container .text-container .award-group p.project a {
    border-bottom: 1px solid #fff;
}
.element-container .text-container.practice-more{
    display: none;
}
.element-container .text-container p.button a{
    letter-spacing: 0.03em;
    text-transform: uppercase;
    font-size: 18px;
    border-bottom: 1px solid #fff;
}
.element-container .each-person {
    margin-bottom: 50px;
}
.element-container .each-person .person-urls a {
    font-size: 20px;
    margin-right: 10px;
}
.element-container .each-person .person-urls a.ss-twitter {
    position : relative;
    top : .1em;
} 
.element-container .each-person .person-urls a.ss-pinterest {
    position : relative;
    top : .1em;
} 
.element-container .each-person .person-urls a.ss-pinterest > a.ss-linkedin {
    margin-left: 3px;
} 
.map-container img {
    width: 300px;
    height: auto;
}


.mailing-list-header {
    margin-top: 60px;
}
.mailing-list-button {
    padding: 10px 8px 8px 8px;
    text-transform: uppercase;
    border: 2px solid #fff;
}
.mailing-list-menu {
    color: pink!important;
}