@font-face {
  font-family: 'FuturaLTPro-Medium';
  src: url("../font/277DA0_0_0.eot");
  src: url("../font/277DA0_0_0.eot?#iefix") format("embedded-opentype"), url("../font/277DA0_0_0.woff") format("woff"), url("../font/277DA0_0_0.ttf") format("truetype"); }

@font-face {
  font-family: 'FuturaCom-ExtraBold';
  src: url("../font/277DA0_1_0.eot");
  src: url("../font/277DA0_1_0.eot?#iefix") format("embedded-opentype"), url("../font/277DA0_1_0.woff") format("woff"), url("../font/277DA0_1_0.ttf") format("truetype"); }

@font-face {
  font-family: 'FuturaCom-ExtraBoldOblique';
  src: url("../font/277DA0_2_0.eot");
  src: url("../font/277DA0_2_0.eot?#iefix") format("embedded-opentype"), url("../font/277DA0_2_0.woff") format("woff"), url("../font/277DA0_2_0.ttf") format("truetype"); }

@font-face {
  font-family: 'FuturaCom-MediumOblique';
  src: url("../font/277DA0_3_0.eot");
  src: url("../font/277DA0_3_0.eot?#iefix") format("embedded-opentype"), url("../font/277DA0_3_0.woff") format("woff"), url("../font/277DA0_3_0.ttf") format("truetype"); }

/* Colours */
.no-transition {
  -webkit-transition: none!important;
  -moz-transition: none!important;
  -ms-transition: none!important;
  -o-transition: none!important;
  transition: none!important; }

.cf:before, .cf:after {
  content: " ";
  display: table; }

.cf:after {
  clear: both; }

.cf {
  *zoom: 1; }

.inline li {
  display: inline; }

.inline.csv li:after {
  content: ","; }

.inline.csv li:last-child:after {
  content: ""; }

/* 
**********************************
Core block styles
**********************************
*/
.unit,
.inner {
  *zoom: 1;
  /* Trigger hasLayout and contain floats for IE6/7 */
  list-style: none;
  list-style-type: none;
  padding: 0;
  margin: 0; }

.unit:before,
.unit:after,
.unit > .after,
.unit > .before {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */ }

.unit:after,
.unit > .after {
  clear: both; }

.inner:before,
.inner:after,
.inner > .after,
.inner > .before {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */ }

.inner:after,
.inner > .after {
  clear: both; }

/* 
**********************************
Sprite
**********************************
*/
.sprite {
  position: relative; }
  .sprite .inner {
    width: 100%;
    height: 100%;
    display: block;
    background: url(/img/sprite.svg) top left no-repeat;
    /*@include hdpi(){
    	background:url(/img.sprite-144.png);
    	background-size:800px 800px;
    }*/
    -webkit-transition: opacity 0.5s ease;
    -moz-transition: opacity 0.5s ease;
    -ms-transition: opacity 0.5s ease;
    -o-transition: opacity 0.5s ease;
    transition: opacity 0.5s ease; }
  .sprite:hover .inner {
    opacity: 0.5; }
  .sprite .text {
    display: none; }

.lt-ie9 .sprite .inner {
  background-image: url(/img/sprite.png); }

.interface {
  position: relative; }

.interface:after {
  background: url(/img/sprite.svg) top left no-repeat; }

.lt-ie9 .interface:after {
  background-image: url(/img/sprite.png); }

/* 
**********************************
Light Link
**********************************
*/
.light-link {
  color: #FFF;
  text-decoration: none;
  -webkit-transition: opacity 0.5s ease;
  -moz-transition: opacity 0.5s ease;
  -ms-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  opacity: 1; }
  .light-link:hover {
    opacity: 0.5; }

/* 
**********************************
Blank list
**********************************
*/
.blank-list {
  padding: 0;
  margin: 0;
  list-style: none; }
  .blank-list li {
    padding: 0;
    margin: 0;
    list-style: none; }

/* 
**********************************
Mask
**********************************
*/
.mask {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
  /* Scrollable region */ }
  .mask > .inner {
    width: 200%;
    /* Reset with javascript */
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }

/* 
**********************************
Vertical Align Middle
**********************************
*/
/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */
/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */
html,
button,
input,
select,
textarea {
  color: #222; }

body {
  font-size: 1em;
  line-height: 1.4; }

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection declarations have to be separate.
 * Customize the background color to match your design.
 */
::-moz-selection {
  background: #b3d4fc;
  text-shadow: none; }

::selection {
  background: #b3d4fc;
  text-shadow: none; }

/*
 * A better looking default horizontal rule
 */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

/*
 * Remove the gap between images and the bottom of their containers: h5bp.com/i/440
 */
img {
  vertical-align: middle;
  border: none;
  outline: none; }

a img {
  border: 0;
  outline: none; }

/*
 * Remove default fieldset styles.
 */
fieldset {
  border: 0;
  margin: 0;
  padding: 0; }

/*
 * Allow only vertical resizing of textareas.
 */
textarea {
  resize: vertical; }

/* ==========================================================================
   Chrome Frame prompt
   ========================================================================== */
.chromeframe {
  margin: 0.2em 0;
  background: #ccc;
  color: #000;
  padding: 0.2em 0; }

/* ==========================================================================
   Author's custom styles
   ========================================================================== */
.js,
.js.html-ajaxify,
.html-ajaxify.loading {
  /* Waiting for ajax to be ready, maybe hide the body etc */ }
  .js .page,
  .js.html-ajaxify .page,
  .html-ajaxify.loading .page {
    visibility: hidden; }

.js.html-no-ajaxify,
.html-ajaxify.loaded {
  /* Ajax ready, show the content */ }
  .js.html-no-ajaxify .page,
  .html-ajaxify.loaded .page {
    visibility: visible; }

/* 
**********************************
Core block styles
**********************************
*/
.unit,
.inner {
  *zoom: 1;
  /* Trigger hasLayout and contain floats for IE6/7 */
  list-style: none;
  list-style-type: none;
  padding: 0;
  margin: 0; }

.unit:before,
.unit:after,
.unit > .after,
.unit > .before {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */ }

.unit:after,
.unit > .after {
  clear: both; }

.inner:before,
.inner:after,
.inner > .after,
.inner > .before {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */ }

.inner:after,
.inner > .after {
  clear: both; }

/* 
**********************************
End Core block styles
**********************************
*/
/* Lazy loaded images before image replace */
.lazy-img {
  background: none;
  display: block; }
  .lazy-img img {
    width: 100%;
    height: 100%; }

/* Body */
html, body {
  width: 100%;
  height: 100%;
  background: black;
  font-family: FuturaLTPro-Medium;
  font-weight: normal;
  font-style: normal;
  overflow: hidden; }

p, ul {
  font-size: 14px;
  line-height: 20px; }

h1, .date, .category {
  font-family: FuturaCom-ExtraBold;
  font-weight: normal;
  font-style: normal;
  font-size: 17px;
  line-height: 26px;
  margin: 0; }

h1 {
  font-family: FuturaCom-ExtraBoldOblique; }

input, select, textarea {
  font-family: FuturaLTPro-Medium;
  font-weight: normal;
  font-style: normal; }

.category {
  text-transform: uppercase;
  margin-bottom: 26px; }

/* Loader */
#loader1 {
  position: fixed;
  top: 0;
  left: 0;
  background: #FFF;
  z-index: 999; }

#loader {
  height: 109px;
  width: 207px;
  left: 50%;
  position: fixed;
  top: 50%;
  margin-left: -106px;
  margin-top: -55px;
  z-index: 999;
  background: url(/img/sprite.png) top left no-repeat;
  background-position: -219px -570px; }
  #loader .inner {
    display: none; }

.touch #loader {
  background-image: url(/img/sprite.png); }

/* Background/ Grid */
#background {
  width: 100%;
  height: 100%;
  background: black;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 1;
  overflow: hidden;
  z-index: 1; }
  #background .inner {
    width: 100%;
    height: 100%; }
    #background .inner .grid {
      width: 180px;
      height: 118px;
      overflow: hidden;
      position: relative;
      -webkit-transition: background 0.5s ease;
      -moz-transition: background 0.5s ease;
      -ms-transition: background 0.5s ease;
      -o-transition: background 0.5s ease;
      transition: background 0.5s ease;
      background: #000000;
      /*&.selected .caption{
      	display:block; Not in use anymore?
      }*/ }
      #background .inner .grid .lazy-img {
        width: 100%;
        height: 100%;
        display: block;
        cursor: move; }
        #background .inner .grid .lazy-img img {
          width: 100%;
          height: 100%;
          display: block; }
        #background .inner .grid .lazy-img .info {
          display: none; }
      #background .inner .grid .caption {
        background: #000;
        color: #FFF;
        position: absolute;
        bottom: -1px;
        left: 0;
        width: 100%;
        opacity: 0;
        padding: 0;
        padding-top: 17px;
        /* Provide padding to top, so the slideup doesn't feel strange */
        font-size: 12px;
        font-weight: normal;
        font-family: FuturaCom-ExtraBoldOblique;
        z-index: 200; }
      #background .inner .grid:hover .caption {
        opacity: 1;
        padding: 17px 0;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease; }
    #background .inner .deferred .grid {
      background: #000000; }
      #background .inner .deferred .grid .lazy-img img {
        display: none; }
    #background .inner .load .grid, #background .inner .loading .grid {
      /*background:#222222*/ }
  #background #wall {
    width: 150%;
    height: 150%; }

.no-opacity #background .inner .grid .caption {
  display: none; }
.no-opacity #background .inner .grid:hover .caption {
  display: block; }

.move {
  display: block;
  width: 32px;
  height: 32px;
  position: fixed;
  z-index: 999999;
  background: url(/img/sprite.svg) top left no-repeat;
  cursor: pointer;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease; }
  .move:hover {
    transform: scale(1.2, 1.2);
    -ms-transform: scale(1.2, 1.2);
    /* IE 9 */
    -webkit-transform: scale(1.2, 1.2);
    /* Safari and Chrome */ }
  .move .text {
    display: none; }
  .move.tl {
    top: 15px;
    left: 15px;
    background-position: -274px -340px; }
  .move.tr {
    top: 15px;
    right: 15px;
    background-position: -315px -340px; }
  .move.br {
    bottom: 15px;
    right: 15px;
    background-position: -318px -379px; }
  .move.bl {
    bottom: 15px;
    left: 15px;
    background-position: -275px -381px; }

.nudge {
  width: 20%;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1000; }

/* Nav */
#nav ul li {
  z-index: 1;
  display: block;
  width: 125px;
  height: 65px;
  float: left;
  position: relative;
  overflow: hidden;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  margin-left: -11px; }
  #nav ul li:hover {
    z-index: 2;
    transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    /* IE 9 */
    -webkit-transform: scale(1.1, 1.1);
    /* Safari and Chrome */ }
  #nav ul li a {
    display: block;
    height: 0;
    padding-top: 100%;
    width: 100%;
    overflow: hidden;
    background: url(/img/sprite.svg) top left no-repeat;
    -webkit-transition: opacity 0.5s ease;
    -moz-transition: opacity 0.5s ease;
    -ms-transition: opacity 0.5s ease;
    -o-transition: opacity 0.5s ease;
    transition: opacity 0.5s ease;
    opacity: 1; }
  #nav ul li.selected {
    transform: scale(1.3, 1.3);
    -ms-transform: scale(1.3, 1.3);
    /* IE 9 */
    -webkit-transform: scale(1.3, 1.3);
    /* Safari and Chrome */
    z-index: 2; }
  #nav ul li.selected a {
    opacity: 1; }
  #nav ul li.nav-home {
    width: 82px;
    height: 74px;
    margin-left: 0; }
    #nav ul li.nav-home a {
      background-position: -13px -4px; }
  #nav ul li.nav-architecture {
    width: 121px;
    height: 64px; }
    #nav ul li.nav-architecture a {
      background-position: -11px -92px; }
  #nav ul li.nav-products {
    width: 102px;
    height: 71px; }
    #nav ul li.nav-products a {
      background-position: -13px -168px; }
  #nav ul li.nav-studio-pieces {
    width: 151px;
    height: 77px; }
    #nav ul li.nav-studio-pieces a {
      background-position: -13px -248px; }
  #nav ul li.nav-graphics {
    width: 119px;
    height: 88px; }
    #nav ul li.nav-graphics a {
      background-position: -17px -336px; }
  #nav ul li.nav-exhibitions {
    width: 162px;
    height: 70px; }
    #nav ul li.nav-exhibitions a {
      background-position: -15px -435px; }
  #nav ul li.nav-contact {
    width: 98px;
    height: 77px; }
    #nav ul li.nav-contact a {
      background-position: -19px -525px; }
  #nav ul li.nav-press {
    width: 98px;
    height: 79px; }
    #nav ul li.nav-press a {
      background-position: -26px -616px; }
  #nav ul li.nav-archive {
    /*position:absolute;
    left:50%;
    top:100%;
    margin-left:-47px;*/
    width: 94px;
    height: 70px; }
    #nav ul li.nav-archive a {
      background-position: -15px -708px; }
  #nav ul li ul {
    display: none; }

#content #template .ul-level-2 {
  font-family: FuturaLTPro-Medium;
  font-weight: normal;
  font-style: normal;
  text-align: center;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 1px; }
  #content #template .ul-level-2 li {
    display: inline-block;
    margin: 0 2.67909%;
    text-align: center; }
    #content #template .ul-level-2 li a {
      color: #000;
      text-decoration: none;
      outline: none; }
    #content #template .ul-level-2 li a:hover {
      text-decoration: none;
      font-family: FuturaCom-ExtraBold; }
    #content #template .ul-level-2 li ul {
      display: none;
      position: absolute;
      width: 100%;
      top: 0;
      left: 0; }
    #content #template .ul-level-2 li.selected {
      font-family: FuturaCom-ExtraBold;
      font-weight: normal;
      font-style: normal; }

#content #template .ul-level-2 {
  text-align: left;
  float: left;
  margin-bottom: 4.65929%;
  width: 80%; }
  #content #template .ul-level-2 li {
    margin-left: 0;
    margin-right: 3.02854%; }

/* Page */
#page {
  min-width: 704px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 2; }

/* Header */
#header {
  background-size: 100% 100%;
  width: 100%;
  height: auto;
  display: block;
  min-width: 700px;
  max-width: 1294px;
  width: 85%;
  background-size: contain;
  background: transparent;
  width: 960px;
  height: 65px;
  position: fixed;
  top: 50%;
  left: 50%;
  margin-left: -480px;
  margin-top: -33px; }

.popout #header {
  display: none; }

.press.popout #header {
  display: block; }

.press.popout .ul-level-2 {
  display: block; }

.popout #content .article .title h1.text span {
  display: none; }

.popout #content .project-template .article .title h1.text span {
  display: block; }

/* Content */
#content {
  background: #FFF;
  z-index: 5;
  position: relative;
  margin-top: 40px;
  width: 90%;
  margin: 0 auto; }

.article {
  padding: 40px;
  padding: 2.32964%;
  padding: 30px; }
  .article ul {
    padding: 0;
    margin: 0;
    list-style: none; }

.article .info, .article .credits {
  margin-bottom: 26px; }

.article .info p {
  margin: 0;
  padding: 0; }

.article .credits {
  font-size: 14px;
  line-height: 20px; }

.article .body-wrap {
  float: left;
  width: 22.547%; }

.article .images {
  float: left;
  width: 74.54779%;
  margin-right: 2.44419%; }

.article .images, .article .body, .scroll-pane {
  overflow: auto; }

.article .body {
  width: 100%; }

.popout .article .body {
  width: 100%;
  position: relative; }

.lazy-img img {
  height: auto;
  width: 100%; }

figure {
  margin: 0; }
  figure.no-caption {
    padding-bottom: 30px; }
    figure.no-caption .caption {
      display: none; }
  figure .caption {
    min-height: 30px; }
  figure.full, figure.last {
    float: none;
    clear: both; }
  figure.last.no-caption, figure.no-caption:last-child {
    padding-bottom: 0; }
  figure.left {
    float: left;
    clear: both; }
  figure.right {
    float: right; }
  figure .lazy-img {
    background: none;
    width: 100%;
    height: 100%;
    display: block;
    background: #DDD; }
    figure .lazy-img img {
      height: 100%;
      width: 100%; }
  figure .info {
    display: none; }

figure.portrait {
  width: 48.83851%;
  float: left;
  margin-right: 2.32298%; }

figure.portrait.even {
  margin-right: 0; }

.portrait.together {
  width: 31.78463%;
  margin-left: 2.32298%;
  margin-right: 0; }

.landscape.together {
  width: 65.89231%; }

.together {
  float: left; }

figure.portrait-reset {
  width: 100%; }

/* Control Unit */
.article .control {
  margin-bottom: 30px;
  margin-top: 0px; }

.article .control {
  float: right;
  width: 10.4834%;
  min-width: 132px; }

.project-template .article .control {
  /*float: left;*/
  width: 100%;
  float: none; }

.project-template .category {
  padding-top: 50px;
  width: 110px;
  overflow: hidden;
  height: 0;
  background: url(/img/sprite.svg) top left no-repeat; }
.project-template .body-wrap {
  position: absolute;
  top: 30px;
  right: 30px; }
.project-template.architecture-project-template .category {
  background-position: -451px -81px; }
.project-template.product-project-template .category {
  background-position: -453px -132px; }
.project-template.studio-project-template .category {
  background-position: -453px -185px; }
.project-template.sculptures-project-template .category {
  background-position: -451px -81px; }
.project-template.graphics-project-template .category {
  padding-top: 58px;
  background-position: -455px -244px; }
.project-template.exhibition-project-template .category {
  background-position: -453px -311px; }

.section-title {
  position: absolute;
  top: 50px;
  right: 30px;
  width: 10.4834%;
  min-width: 132px;
  overflow: hidden;
  padding-top: 53px;
  height: 0;
  background: url(/img/sprite.svg) top left no-repeat; }
  .section-title.press {
    background-position: -461px -433px; }

.subsection .inner-wrap {
  margin-top: 80px; }

.reviews .inner-wrap, .publications .inner-wrap {
  margin-top: 100px; }

.subnav {
  position: absolute;
  top: 50px;
  left: 30px;
  z-index: 200; }
  .subnav ul {
    list-style: none;
    padding: 0;
    margin: 0; }
    .subnav ul li {
      float: left;
      opacity: 0.5; }
      .subnav ul li.selected {
        opacity: 1; }
      .subnav ul li a {
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -ms-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
        display: block;
        padding-top: 40px;
        width: 100px;
        height: 0;
        overflow: hidden;
        background: url(/img/sprite.svg) top left no-repeat; }
        .subnav ul li a:hover {
          transform: scale(1.05, 1.05);
          -ms-transform: scale(1.05, 1.05);
          /* IE 9 */
          -webkit-transform: scale(1.05, 1.05);
          /* Safari and Chrome */ }
      .subnav ul li.nav-biography a {
        width: 83px;
        padding-top: 46px;
        background-position: -269px -21px; }
      .subnav ul li.nav-reviews a {
        width: 70px;
        padding-top: 42px;
        background-position: -270px -80px; }
      .subnav ul li.nav-publications a {
        width: 93px;
        padding-top: 42px;
        background-position: -261px -137px; }

.icon-prev {
  background: url("../img/icons/arrow_prev.svg");
  margin-right: 53.33333%; }

.no-svg .icon-prev {
  background: url("../img/icons/arrow_prev.png");
  min-height: 12px;
  min-width: 10px; }

.icon-next {
  background: url("../img/icons/arrow_next.svg");
  min-height: 12px;
  min-width: 10px; }

.no-svg .icon-next {
  background: url("../img/icons/arrow_next.png");
  min-height: 12px;
  min-width: 10px; }

.icon-close {
  background: url("../img/icons/close.svg");
  float: right; }

.no-svg .icon-close {
  background: url("../img/icons/close.png");
  min-height: 11px;
  min-width: 10px;
  float: right; }

.archive-template .icon-close {
  position: absolute;
  top: 0px;
  right: 0px;
  background: url("../img/icons/close_w.svg"); }

.no-svg .archive-template .icon-close {
  background: url("../img/icons/close_w.png"); }

.icon-prev, .icon-next, .icon-close {
  background-size: 5px 9px;
  display: block;
  height: 9px;
  width: 5px;
  float: left;
  background-repeat: no-repeat; }

.icon-close {
  height: 9px;
  width: 9px;
  background-size: 9px 9px;
  text-indent: -9999px;
  cursor: pointer;
  float: right; }

.interface-button span {
  display: none; }

/*.new-icon, #loader span {
    background: url("../img/icons/new.svg") no-repeat scroll center center transparent;
    background-size:contain; 
    color: #000000;
    display: block;
    height: 77px;
    left: 54px;
    line-height: 84px;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: 23px;
    width: 80px;
    z-index: 100;
    font-size: 14px;
}

.no-svg .new-icon, .no-svg #loader span  {
  background-image: url("../img/icons/new.png");
}*/
.new-icon {
  background: url("/img/sprite.svg") top left no-repeat;
  background-position: -275px -248px;
  display: block;
  width: 52px;
  height: 29px;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 100;
  margin-top: -15px;
  margin-left: -30px; }

.article ul.social-media {
  float: left;
  width: 60px;
  margin-top: 2px; }
  .article ul.social-media li {
    float: left;
    display: block;
    margin-right: 10px; }

.social-icon {
  width: 16px;
  height: 16px;
  display: block;
  text-indent: -9999px;
  float: left;
  margin-right: 2.67909%;
  background-size: contain; }
  .social-icon.facebook {
    background-image: url("../img/icons/facebook.svg"); }
  .social-icon.twitter {
    background-image: url("../img/icons/twitter2.svg"); }

@-webkit-keyframes blink {
  0% {
    opacity: 1; }

  50% {
    opacity: 0; }

  100% {
    opacity: 1; } }

@-moz-keyframes blink {
  0% {
    opacity: 1; }

  50% {
    opacity: 0; }

  100% {
    opacity: 1; } }

#loader span {
  left: 50%;
  top: 50%;
  margin-left: -52px;
  margin-top: -52px;
  height: 104px;
  width: 104px;
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  -o-transition: all 1s ease-in-out;
  -ms-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
  -webkit-animation-direction: normal;
  -webkit-animation-duration: 2s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-name: blink;
  -webkit-animation-timing-function: ease-in-out;
  -moz-animation-direction: normal;
  -moz-animation-duration: 2s;
  -moz-animation-iteration-count: infinite;
  -moz-animation-name: blink;
  -moz-animation-timing-function: ease-in-out; }

/* Footer */
.footer {
  display: none; }

/* Templates */
.home-template, .project-list-template {
  display: none;
  visibility: hidden; }

.default-template.template .body {
  position: relative;
  width: 100%;
  height: 100%; }
  .default-template.template .body .inner {
    display: table;
    width: 60%;
    width: 680px;
    height: 100%;
    position: relative;
    margin: 0 auto; }
    .default-template.template .body .inner .text-wrap {
      position: relative;
      width: 100%;
      margin: 0 auto;
      height: 100%;
      display: table-cell;
      vertical-align: middle; }
      .default-template.template .body .inner .text-wrap .text {
        width: 29.12056%;
        width: 47%;
        min-width: 220px;
        float: left;
        display: block;
        margin-right: 0; }
        .default-template.template .body .inner .text-wrap .text.last {
          margin-right: 0;
          float: right; }

.text-wrap, #login_form {
  margin-left: 27.86535%; }

#login_form {
  float: left;
  display: block; }

.inner-wrap {
  display: block;
  margin: 0 auto; }

ul.feed .item {
  width: 182px;
  float: left;
  font-size: 14px;
  line-height: 20px;
  margin: 0; }

.instructions {
  width: 182px;
  font-size: 14px;
  line-height: 20px;
  margin: 0;
  position: absolute;
  top: 0;
  left: 0; }

.downloads-template .feed {
  padding-left: 182px;
  position: relative; }
  .downloads-template .feed .item {
    width: 33.33333%;
    margin-right: 0; }
    .downloads-template .feed .item article {
      padding-right: 30px; }
  @media screen and (min-width: 1201px) {
    .downloads-template .feed .item {
      width: 25%; } }

.publications-template .feed {
  position: relative; }
  .publications-template .feed .item {
    width: 33.33333%;
    margin-right: 0; }
    .publications-template .feed .item:nth-child(3n + 4) {
      clear: left; }
    .publications-template .feed .item article {
      padding-right: 30px; }
      .publications-template .feed .item article .image {
        height: auto;
        float: left;
        width: 40%; }
        .publications-template .feed .item article .image .lazy-img {
          display: block;
          width: auto;
          height: auto;
          margin-right: 20px; }
    .publications-template .feed .item .date {
      float: left;
      width: 20%; }
    .publications-template .feed .item .detail {
      margin-left: 0;
      margin: 0;
      float: right;
      width: auto;
      width: 40%; }
  @media screen and (min-width: 1201px) {
    .publications-template .feed .item {
      width: 25%;
      margin-right: 0; }
      .publications-template .feed .item:nth-child(3n + 4) {
        clear: none; }
      .publications-template .feed .item:nth-child(4n + 5) {
        clear: left; } }

.archive-template .feed {
  position: relative; }
  .archive-template .feed .item {
    width: 33.33333%;
    margin-right: 0; }
    .archive-template .feed .item:nth-child(3n + 4) {
      clear: left; }
    .archive-template .feed .item article {
      padding-right: 30px; }
      .archive-template .feed .item article .image {
        height: auto;
        float: left;
        width: 40%; }
        .archive-template .feed .item article .image .lazy-img {
          display: block;
          width: auto;
          height: auto;
          margin-right: 20px; }
    .archive-template .feed .item .date {
      float: left;
      width: 20%; }
    .archive-template .feed .item .detail {
      margin: 0;
      float: right;
      width: 40%; }
      .archive-template .feed .item .detail a {
        color: #FFF; }
        .archive-template .feed .item .detail a:hover {
          text-decoration: none; }

/*
.publications-template, .archive-template {
    ul.feed .item {
        width: 387px;
        margin-right:28px;
        margin-bottom: 30px;
        display: block;

        .image, .image img {
            max-width: 179px;
            overflow: hidden;
            width: 100%;
            height: auto;
            float: left;
            margin-right:28.963px;
        }

        .date {
            float: left;
        }

        .detail {
            width: 120px;
            float: right;
        }

    }

}*/
.detail h2 a {
  color: #fff;
  text-decoration: none; }

.archive-template {
  color: #fff; }
  .archive-template #nav_list {
    float: left;
    margin: 0;
    text-align: left;
    margin-bottom: 29px; }
    .archive-template #nav_list .first {
      margin-left: 0; }
  .archive-template #nav a {
    color: #fff; }
  .archive-template .detail h2 a:hover {
    text-decoration: underline; }
  .archive-template #search_form input {
    border: none;
    background: none;
    color: #fff;
    font-family: FuturaCom-ExtraBold;
    font-size: 14px;
    outline: none; }
    .archive-template #search_form input:focus {
      color: #000;
      background: #FFF;
      outline: none;
      border: none; }
  .archive-template #search_form button {
    display: none; }
  .archive-template .body {
    margin-top: 10px; }

ul.feed .item {
  margin-right: 26px;
  min-height: 116px; }

.item .date {
  float: left;
  font-family: FuturaCom-ExtraBold; }

.item .date, .detail h2 {
  font-size: 14px;
  line-height: 20px;
  margin: 0; }

.detail {
  margin-left: 10px;
  width: 124px;
  float: right; }

.detail h2, h3 {
  font-family: FuturaCom-ExtraBoldOblique;
  margin: 0;
  font-weight: normal; }

.detail h2 a {
  color: #000; }

.contact.popout .control {
  margin-bottom: 0; }
.contact.popout .text-wrap .text {
  display: table!important;
  height: 100%; }
  .contact.popout .text-wrap .text .content {
    height: 100%;
    display: table-cell!important;
    vertical-align: middle; }
.contact.popout .body {
  overflow: hidden; }
.contact.popout .body .inner {
  width: 75%;
  min-width: 800px; }
.contact.popout #body_text {
  margin-top: 0px; }
.contact.popout h3 {
  font-family: FuturaCom-ExtraBold; }
.contact.popout .image {
  width: 100%;
  height: auto;
  margin-top: 34px;
  margin-top: 0; }
  .contact.popout .image img {
    width: 100%;
    height: auto; }
.contact.popout a {
  color: #000;
  text-decoration: none; }

/*
.contact.popout {

  .body {
    width: percentage(387 / 1717);
    float: left;
  }

  .text {

  }

  .images {
    float: left;
    width: auto;
  }

  h3, ul, p {
    font-size: 17px;
    line-height: 26px;
  }

  h3 {
    font-family: FuturaCom-ExtraBold;
  }

  a {
    color: #000
  }

  .foot ul a {
    text-decoration: none;
  }
 

}*/
.form-region {
  width: 35%;
  float: left;
  margin-right: 28px; }
  .form-region label {
    margin-bottom: 70px; }
  .form-region label, .form-region input {
    float: left;
    width: 100%; }
  .form-region input {
    border: none;
    border-bottom: 5px black solid; }
  .form-region a {
    text-decoration: none;
    color: #000;
    margin-top: 120px;
    float: left; }
  .form-region a:hover {
    text-decoration: underline; }

.form-button {
  display: none; }

.product-project-template .article .scroll-wrap {
  width: 80%;
  margin-right: 2.44419%;
  float: left; }

.product-project-template .article .scroll-wrap .images {
  width: 100%;
  margin-right: 0; }

.product-project-template .article .body-wrap {
  width: 10.9837%;
  min-width: 129.752px; }

/* Templates — Archive */
.archive.popout .article {
  background: #000; }

/* These items causes strange conflicts with the popout, so have make them visually seem unselected */
.press #nav_list .nav-press.selected, .home #nav_list .nav-archive.selected {
  font-family: FuturaLTPro-Medium; }

/* Templates — Login */
#login_form {
  margin-top: 10%; }

/*
 * CSS Styles that are needed by jScrollPane for it to operate correctly.
 *
 * Include this stylesheet in your site or copy and paste the styles below into your stylesheet - jScrollPane
 * may not operate correctly without them.
 */
.jspContainer {
  overflow: hidden;
  position: relative; }

.jspPane {
  position: absolute; }

.jspVerticalBar {
  position: absolute;
  top: 0;
  right: 0;
  width: 5px;
  height: 100%;
  background: #fff; }

#images .jspVerticalBar {
  width: 20px; }
  #images .jspVerticalBar .jspDrag {
    left: 15px; }

.jspHorizontalBar {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: #fff; }

.jspVerticalBar *,
.jspHorizontalBar * {
  margin: 0;
  padding: 0; }

.jspCap {
  display: none; }

.jspHorizontalBar .jspCap {
  float: left; }

.jspTrack {
  background: #fff;
  position: relative; }

.jspDrag {
  background: #000;
  position: relative;
  top: 0;
  left: 0;
  cursor: pointer; }

.archive .jspDrag {
  background: #fff; }

.archive .jspTrack {
  background: #000; }

.jspHorizontalBar .jspTrack,
.jspHorizontalBar .jspDrag {
  float: left;
  height: 100%; }

.jspArrow {
  background: #50506d;
  text-indent: -20000px;
  display: block;
  cursor: pointer; }

.jspArrow.jspDisabled {
  cursor: default;
  background: #80808d; }

.jspVerticalBar .jspArrow {
  height: 5px; }

.jspHorizontalBar .jspArrow {
  width: 16px;
  float: left;
  height: 100%; }

.jspVerticalBar .jspArrow:focus {
  outline: none; }

.jspCorner {
  background: #eeeef4;
  float: left;
  height: 100%; }

/* Yuk! CSS Hack for IE6 3 pixel bug :( */
* html .jspCorner {
  margin: 0 -3px 0 0; }

/* NO SVG support */
.no-svg #loader,
.no-svg .move,
.no-svg #nav ul li a,
.no-svg .project-template .category,
.no-svg .section-title,
.no-svg .subnav ul li a,
.no-svg .new-icon, .lt-ie11 #loader,
.lt-ie11 .move,
.lt-ie11 #nav ul li a,
.lt-ie11 .project-template .category,
.lt-ie11 .section-title,
.lt-ie11 .subnav ul li a,
.lt-ie11 .new-icon {
  background-image: url(/img/sprite.png); }

/**** Isotope Filtering ****/
.isotope-item {
  z-index: 2; }

.isotope-hidden.isotope-item {
  pointer-events: none;
  z-index: 1; }

/**** Isotope CSS3 transitions ****/
.isotope,
.isotope .isotope-item {
  -webkit-transition-duration: 0.8s;
  -moz-transition-duration: 0.8s;
  -ms-transition-duration: 0.8s;
  -o-transition-duration: 0.8s;
  transition-duration: 0.8s; }

.isotope {
  -webkit-transition-property: height, width;
  -moz-transition-property: height, width;
  -ms-transition-property: height, width;
  -o-transition-property: height, width;
  transition-property: height, width; }

.isotope .isotope-item {
  -webkit-transition-property: -webkit-transform, opacity;
  -moz-transition-property: -moz-transform, opacity;
  -ms-transition-property: -ms-transform, opacity;
  -o-transition-property: -o-transform, opacity;
  transition-property: transform, opacity; }

/* ==========================================================================
   Helper classes
   ========================================================================== */
/*
 * Image replacement
 */
.ir {
  background-color: transparent;
  border: 0;
  overflow: hidden;
  /* IE 6/7 fallback */
  *text-indent: -9999px; }

.ir:before {
  content: "";
  display: block;
  width: 0;
  height: 100%; }

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */
.hidden {
  display: none !important;
  visibility: hidden; }

.hidden-opacity {
  zoom: 1;
  filter: alpha(opacity=0);
  opacity: 0; }

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

/*
 * Hide visually and from screenreaders, but maintain layout
 */
.invisible {
  visibility: hidden; }

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */ }

.clearfix:after {
  clear: both; }

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */
.clearfix {
  *zoom: 1; }

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   Theses examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */
@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 144dpi) {
  /* Style adjustments for high resolution devices */ }
/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */
@media print {
  * {
    background: transparent !important;
    color: black !important;
    /* Black prints faster: h5bp.com/s */
    box-shadow: none !important;
    text-shadow: none !important; }

  a,
  a:visited {
    text-decoration: underline; }

  a[href]:after {
    content: " (" attr(href) ")"; }

  abbr[title]:after {
    content: " (" attr(title) ")"; }

  /*
   * Don't show links for images, or javascript/internal links
   */
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }

  pre,
  blockquote {
    border: 1px solid #999999;
    page-break-inside: avoid; }

  thead {
    display: table-header-group;
    /* h5bp.com/t */ }

  tr,
  img {
    page-break-inside: avoid; }

  img {
    max-width: 100% !important; }

  @page {
    margin: 0.5cm; }

  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }

  h2,
  h3 {
    page-break-after: avoid; } }
