* {
  -webkit-touch-callout: none !important;
  -webkit-tap-highlight-color: transparent;
  -webkit-text-size-adjust: none;
  -webkit-user-select: none !important;
  -webkit-backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-user-select: none !important;
   -ms-user-select: none !important;
       user-select: none !important; }

*:focus {
  outline: none; }

html,
body {
  width: 100%;
  height: 100%; }

::-webkit-user-selection {
  background: rgba(0, 0, 0, 0); }

::-webkit-scrollbar {
  display: none; }

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: normal; }

body {
  line-height: 1; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

nav ul,
ul li,
li ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

hr {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 1px;
  border: 0;
  border-top: 1px solid #CCC;
  margin: 0;
  padding: 0; }

input,
select {
  vertical-align: middle; }

input,
select,
textarea,
button {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  border: 0;
  margin: 0;
  padding: 0;
  color: #000;
  font-family: 'Times New Roman', Times, serif;
  font-size: 1em;
  display: block;
  width: 100%;
  background-color: transparent; }

::-webkit-input-placeholder {
  opacity: 1;
  color: #000; }

:-ms-input-placeholder {
  opacity: 1;
  color: #000; }

::-ms-input-placeholder {
  opacity: 1;
  color: #000; }

::placeholder {
  opacity: 1;
  color: #000; }

::-webkit-input-placeholder {
  opacity: 1;
  color: #000; }

::-moz-placeholder {
  opacity: 1;
  color: #000; }

:-ms-input-placeholder {
  opacity: 1;
  color: #000; }

:-moz-placeholder {
  opacity: 1;
  color: #000; }

input,
input::before,
input::after {
  -webkit-user-select: initial !important;
     -moz-user-select: initial !important;
      -ms-user-select: initial !important;
          user-select: initial !important; }

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus textarea:-webkit-autofill,
textarea:-webkit-autofill:hover textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-text-fill-color: color(black) !important;
  color: color(black) !important;
  -webkit-box-shadow: 0 0 0px 1000px color(white) inset;
  -webkit-transition: background-color 5000s ease-in-out 0s;
  -o-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s; }

.hidden.always {
  display: none !important; }

@media all and (max-width: 767px) {
  .hidden.mobile {
    display: none !important; } }

@media all and (orientation: portrait) and (max-width: 767px) {
  .hidden.mobile-portrait {
    display: none !important; } }

@media all and (orientation: landscape) and (max-width: 767px) {
  .hidden.mobile-landscape {
    display: none !important; } }

@media all and (min-width: 768px) {
  .hidden.desktop {
    display: none !important; } }

@media all and (orientation: landscape) {
  .hidden.landscape {
    display: none !important; } }

@font-face {
  font-family: "Regola Pro";
  font-weight: normal;
  src: url(assets/fonts/RegolaPro-Regular.eot) format("eot"), url(assets/fonts/RegolaPro-Regular.woff2) format("woff2"), url(assets/fonts/RegolaPro-Regular.woff) format("woff"), url(assets/fonts/RegolaPro-Regular.ttf) format("truetype"), url(assets/fonts/RegolaPro-Regular.svg) format("svg"); }

@font-face {
  font-family: "Regola Pro";
  font-weight: 300;
  src: url(assets/fonts/RegolaPro-Book.eot) format("eot"), url(assets/fonts/RegolaPro-Book.woff2) format("woff2"), url(assets/fonts/RegolaPro-Book.woff) format("woff"), url(assets/fonts/RegolaPro-Book.ttf) format("truetype"), url(assets/fonts/RegolaPro-Book.svg) format("svg"); }

.hidden.always {
  display: none !important; }

@media all and (max-width: 767px) {
  .hidden.mobile {
    display: none !important; } }

@media all and (orientation: portrait) and (max-width: 767px) {
  .hidden.mobile-portrait {
    display: none !important; } }

@media all and (orientation: landscape) and (max-width: 767px) {
  .hidden.mobile-landscape {
    display: none !important; } }

@media all and (min-width: 768px) {
  .hidden.desktop {
    display: none !important; } }

@media all and (orientation: landscape) {
  .hidden.landscape {
    display: none !important; } }

@font-face {
  font-family: "Regola Pro";
  font-weight: normal;
  src: url(assets/fonts/RegolaPro-Regular.eot) format("eot"), url(assets/fonts/RegolaPro-Regular.woff2) format("woff2"), url(assets/fonts/RegolaPro-Regular.woff) format("woff"), url(assets/fonts/RegolaPro-Regular.ttf) format("truetype"), url(assets/fonts/RegolaPro-Regular.svg) format("svg"); }

@font-face {
  font-family: "Regola Pro";
  font-weight: 300;
  src: url(assets/fonts/RegolaPro-Book.eot) format("eot"), url(assets/fonts/RegolaPro-Book.woff2) format("woff2"), url(assets/fonts/RegolaPro-Book.woff) format("woff"), url(assets/fonts/RegolaPro-Book.ttf) format("truetype"), url(assets/fonts/RegolaPro-Book.svg) format("svg"); }

body,
html {
  width: 100%;
  height: 100%; }

.visible {
  opacity: 1 !important;
  pointer-events: painted !important; }

.invisible {
  opacity: 0 !important;
  pointer-events: none !important; }

.uppercase {
  text-transform: uppercase; }

a,
[data-href] {
  -webkit-transition: opacity 150ms linear;
  -o-transition: opacity 150ms linear;
  transition: opacity 150ms linear;
  cursor: pointer; }
  a, a:active, a:link, a:visited,
  [data-href],
  [data-href]:active,
  [data-href]:link,
  [data-href]:visited {
    text-decoration: none; }
  a:hover,
  [data-href]:hover {
    opacity: 0.75; }

body,
html {
  font-family: "Regola Pro", Helvetica, Arial, sans-serif;
  letter-spacing: -0.012em; }
  @media all and (min-width: 1441px) {
    body,
    html {
      font-size: 1.11111vw; } }

[data-user-selectable],
[data-user-selectable] * {
  -webkit-user-select: text !important;
     -moz-user-select: text !important;
      -ms-user-select: text !important;
          user-select: text !important; }
  [data-user-selectable]::selection,
  [data-user-selectable] *::selection {
    background-color: yellow !important;
    opacity: 1; }
  [data-user-selectable]::-webkit-selection,
  [data-user-selectable] *::-webkit-selection {
    background-color: yellow !important;
    opacity: 1; }
  [data-user-selectable]::-moz-selection,
  [data-user-selectable] *::-moz-selection {
    background-color: yellow !important;
    opacity: 1; }

#container {
  width: 100%;
  min-height: 100%;
  opacity: 0;
  -webkit-transition: opacity 150ms linear 100ms;
  -o-transition: opacity 150ms linear 100ms;
  transition: opacity 150ms linear 100ms; }
  #container.homepage {
    height: 100%;
    min-height: auto; }

.font-size-large {
  font-size: 1.875em;
  line-height: 1.2; }
  @media all and (max-width: 767px) {
    .font-size-large {
      font-size: 1.25em; } }

.font-size-text {
  font-size: 1.5em;
  line-height: 1.2; }
  @media all and (max-width: 767px) {
    .font-size-text {
      font-size: 1em; } }

.font-size-medium, #menu > .inner-container > .container > header ul > li.search-container > input, .projects #archive-filters > ul > li.search-container > input {
  font-size: 1.125em;
  line-height: 1.2; }
  @media all and (max-width: 767px) {
    .font-size-medium, #menu > .inner-container > .container > header ul > li.search-container > input, .projects #archive-filters > ul > li.search-container > input {
      font-size: 0.875em; } }

.font-size-small {
  font-size: 0.875em;
  line-height: 1.2; }

.font-size-caption {
  font-size: 0.75em;
  line-height: 1.2; }

.font-book {
  font-weight: 300; }

a,
[data-href] {
  color: #111111;
  -webkit-transition: opacity 150ms linear;
  -o-transition: opacity 150ms linear;
  transition: opacity 150ms linear; }
  a:hover,
  [data-href]:hover {
    opacity: 0.66; }

#pin {
  position: fixed;
  top: calc(50% - 5.1875em);
  left: calc(86.25% - 5.1875em);
  z-index: 520;
  width: 10.375em;
  height: 10.375em;
  padding: 0.75em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: white;
  border-radius: 50%;
  text-align: center;
  overflow: hidden;
  -webkit-transform: rotate(-8deg);
      -ms-transform: rotate(-8deg);
          transform: rotate(-8deg);
  -webkit-box-shadow: 0 0 0.75em rgba(0, 0, 0, 0.15);
          box-shadow: 0 0 0.75em rgba(0, 0, 0, 0.15);
  cursor: pointer; }
  @media all and (max-width: 767px) {
    #pin {
      width: 8.125em;
      height: 8.125em;
      top: calc(50% - 4.0625em);
      left: calc(1.1875em - 4.0625em);
      padding: 0.25em; } }
  #pin > img {
    height: 100%;
    width: auto;
    pointer-events: none; }

#top-navigation {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1.25em 1.25em 2.0625em;
  -webkit-transition: -webkit-transform 200ms ease-out;
  transition: -webkit-transform 200ms ease-out;
  -o-transition: transform 200ms ease-out;
  transition: transform 200ms ease-out;
  transition: transform 200ms ease-out, -webkit-transform 200ms ease-out;
  position: -webkit-sticky;
  position: sticky;
  top: -5.0625em;
  left: 0;
  z-index: 500;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  @media all and (max-width: 767px) {
    #top-navigation {
      padding: 1.1875em;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-transition: -webkit-transform 200ms linear;
      transition: -webkit-transform 200ms linear;
      -o-transition: transform 200ms linear;
      transition: transform 200ms linear;
      transition: transform 200ms linear, -webkit-transform 200ms linear; } }
  #top-navigation.hovered {
    -webkit-transform: translateY(5.0625em);
        -ms-transform: translateY(5.0625em);
            transform: translateY(5.0625em); }
  #top-navigation:not(.scrolled) {
    -webkit-transform: translateY(0) !important;
        -ms-transform: translateY(0) !important;
            transform: translateY(0) !important; }
  #top-navigation > h1 {
    width: 33.3333%;
    min-width: 22.5em;
    margin-right: auto;
    -webkit-transition: font-size 200ms ease-out;
    -o-transition: font-size 200ms ease-out;
    transition: font-size 200ms ease-out; }
    @media all and (max-width: 767px) {
      #top-navigation > h1 {
        width: auto;
        min-width: 0; } }
  #top-navigation > div:first-of-type {
    width: 22.2222%; }
    #top-navigation > div:first-of-type img {
      width: 1.25em;
      height: auto; }
  #top-navigation > div:last-of-type {
    width: 11.1111%; }

.projects #top-navigation > div:first-of-type {
  width: 33.3333%;
  min-width: 20.125em; }
  @media all and (max-width: 767px) {
    .projects #top-navigation > div:first-of-type {
      width: auto;
      min-width: 0; } }

@media all and (max-width: 767px) {
  .article #top-navigation > h1 {
    font-size: 1em !important; } }

div.menu-mobile-toggle {
  position: fixed;
  top: 1.4375em;
  right: 1.1875em;
  z-index: 550; }
  div.menu-mobile-toggle > img {
    width: 1.25em; }

#menu {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 600;
  top: 0;
  left: 0;
  pointer-events: none; }
  #menu.visible > .inner-container {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    -webkit-box-shadow: 0 0 0.75em rgba(0, 0, 0, 0.5);
            box-shadow: 0 0 0.75em rgba(0, 0, 0, 0.5); }
  #menu > .inner-container {
    position: absolute;
    top: 0;
    right: 0;
    background-color: white;
    height: 100%;
    width: 100%;
    max-width: 31.5em;
    -webkit-transform: translateX(100%);
        -ms-transform: translateX(100%);
            transform: translateX(100%);
    -webkit-transition: -webkit-box-shadow 150ms linear, -webkit-transform 250ms ease-out;
    transition: -webkit-box-shadow 150ms linear, -webkit-transform 250ms ease-out;
    -o-transition: box-shadow 150ms linear, transform 250ms ease-out;
    transition: box-shadow 150ms linear, transform 250ms ease-out;
    transition: box-shadow 150ms linear, transform 250ms ease-out, -webkit-box-shadow 150ms linear, -webkit-transform 250ms ease-out; }
  #menu > .inner-container > .container {
    position: relative;
    height: 100%;
    width: 100%;
    overflow: hidden; }
    #menu > .inner-container > .container > header {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      background-color: white;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      padding: 1.25em 1.25em 1.5em;
      z-index: 450; }
      @media all and (max-width: 767px) {
        #menu > .inner-container > .container > header {
          padding: 1.1875em; } }
      #menu > .inner-container > .container > header img {
        width: 1.125em;
        height: 1.125em; }
        @media all and (max-width: 767px) {
          #menu > .inner-container > .container > header img {
            width: 0.96em;
            height: 0.96em; } }
      #menu > .inner-container > .container > header ul {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: nowrap;
            -ms-flex-wrap: nowrap;
                flex-wrap: nowrap;
        overflow-x: hidden;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center; }
        #menu > .inner-container > .container > header ul > li {
          padding-right: 2.5em;
          -webkit-flex-shrink: 0;
              -ms-flex-negative: 0;
                  flex-shrink: 0; }
          @media all and (max-width: 767px) {
            #menu > .inner-container > .container > header ul > li {
              padding-right: 0; } }
          #menu > .inner-container > .container > header ul > li:last-child {
            padding-right: 0; }
            @media all and (max-width: 767px) {
              #menu > .inner-container > .container > header ul > li:last-child {
                -webkit-align-self: baseline;
                    -ms-flex-item-align: baseline;
                        align-self: baseline; } }
          @media all and (max-width: 767px) {
            #menu > .inner-container > .container > header ul > li > span.font-size-medium {
              font-size: 1em; } }
        #menu > .inner-container > .container > header ul > li.search-container {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          width: 100%;
          max-width: 1.125em;
          -webkit-transition: max-width 300ms ease-out;
          -o-transition: max-width 300ms ease-out;
          transition: max-width 300ms ease-out; }
          #menu > .inner-container > .container > header ul > li.search-container.toggled {
            max-width: 100%; }
            #menu > .inner-container > .container > header ul > li.search-container.toggled > input {
              max-width: 100%;
              border-bottom: 1px solid #111111; }
          #menu > .inner-container > .container > header ul > li.search-container > input {
            display: block;
            width: 100%;
            max-width: 0;
            -webkit-transition: max-width 300ms ease-out;
            -o-transition: max-width 300ms ease-out;
            transition: max-width 300ms ease-out;
            font-family: "Regola Pro", Helvetica, Arial, sans-serif; }
        #menu > .inner-container > .container > header ul [data-href="#filter"].current-filter {
          border-bottom: 1px solid #111111; }
    #menu > .inner-container > .container > .content {
      width: 100%;
      height: 100%;
      overflow-y: scroll;
      -webkit-overflow-scrolling: touch;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      padding: 1.25em 1.25em 3.625em 1.25em; }
      @media all and (max-width: 767px) {
        #menu > .inner-container > .container > .content {
          padding: 1.1875em 1.1875em 3.4375em 1.1875em; } }
      #menu > .inner-container > .container > .content > ul {
        padding-top: 2.875em; }
        @media all and (max-width: 767px) {
          #menu > .inner-container > .container > .content > ul {
            padding-top: 4.6875em; } }
      #menu > .inner-container > .container > .content li {
        padding-bottom: 1.75em; }
        @media all and (max-width: 767px) {
          #menu > .inner-container > .container > .content li {
            padding-bottom: 2.875em; } }
        #menu > .inner-container > .container > .content li:last-child {
          padding-bottom: 0; }
        #menu > .inner-container > .container > .content li.filtered {
          display: none; }
        #menu > .inner-container > .container > .content li > a {
          display: block;
          width: 100%;
          line-height: 0; }
        #menu > .inner-container > .container > .content li > h3 {
          padding: 0.875em 0 0.625em; }
          @media all and (max-width: 767px) {
            #menu > .inner-container > .container > .content li > h3 {
              padding: 1.375em 0 0.916em; } }
          #menu > .inner-container > .container > .content li > h3 > a {
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            width: 100%; }
            #menu > .inner-container > .container > .content li > h3 > a span {
              display: block;
              width: 50%; }
        #menu > .inner-container > .container > .content li span.font-size-medium {
          font-size: 1.25em; }
      #menu > .inner-container > .container > .content .menu-cover {
        line-height: 0;
        display: block;
        position: relative;
        width: 100%;
        padding-top: 68.31896%;
        background-color: #fffffd;
        border: 0; }
        #menu > .inner-container > .container > .content .menu-cover > img {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          -o-object-fit: cover;
             object-fit: cover;
          -o-object-position: center;
             object-position: center;
          border: 0; }
    #menu > .inner-container > .container > footer {
      padding: 0.625em 0;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      text-align: center;
      position: absolute;
      bottom: 0;
      right: 0;
      width: 100%;
      background-color: #fffffd;
      -webkit-box-shadow: 0 0 0.75em rgba(0, 0, 0, 0.5);
              box-shadow: 0 0 0.75em rgba(0, 0, 0, 0.5); }
      #menu > .inner-container > .container > footer .font-size-medium, #menu > .inner-container > .container > footer #menu > .inner-container > .container > header ul > li.search-container > input, #menu > .inner-container > .container > header #menu > .inner-container > .container > footer ul > li.search-container > input, #menu > .inner-container > .container > footer .projects #archive-filters > ul > li.search-container > input, .projects #menu > .inner-container > .container > footer #archive-filters > ul > li.search-container > input {
        line-height: 1; }
        @media all and (max-width: 767px) {
          #menu > .inner-container > .container > footer .font-size-medium, #menu > .inner-container > .container > footer #menu > .inner-container > .container > header ul > li.search-container > input, #menu > .inner-container > .container > header #menu > .inner-container > .container > footer ul > li.search-container > input, #menu > .inner-container > .container > footer .projects #archive-filters > ul > li.search-container > input, .projects #menu > .inner-container > .container > footer #archive-filters > ul > li.search-container > input {
            font-size: 1em; } }

.slideshow {
  width: 100%; }
  .slideshow > .images {
    position: relative;
    height: 100%; }
    .slideshow > .images > li {
      position: absolute;
      top: 0;
      left: 0;
      z-index: 100;
      width: 100%;
      height: 100%;
      line-height: 0;
      opacity: 1 !important;
      -webkit-transform: translateX(100%);
          -ms-transform: translateX(100%);
              transform: translateX(100%);
      cursor: pointer; }
      @media all and (max-width: 767px) {
        .slideshow > .images > li {
          -webkit-box-sizing: border-box;
                  box-sizing: border-box;
          padding: 0 1.1875em; } }
      .slideshow > .images > li.visible {
        -webkit-transform: translateX(0) !important;
            -ms-transform: translateX(0) !important;
                transform: translateX(0) !important; }
      .slideshow > .images > li.to-left {
        -webkit-transform: translateX(-100%);
            -ms-transform: translateX(-100%);
                transform: translateX(-100%); }
      .slideshow > .images > li.animating {
        -webkit-transition: -webkit-transform 250ms ease-out;
        transition: -webkit-transform 250ms ease-out;
        -o-transition: transform 250ms ease-out;
        transition: transform 250ms ease-out;
        transition: transform 250ms ease-out, -webkit-transform 250ms ease-out;
        pointer-events: none; }
      .slideshow > .images > li figure {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        height: 100%;
        width: 100%;
        line-height: 0; }
      .slideshow > .images > li a {
        display: block;
        line-height: 0;
        height: 100%; }
        .slideshow > .images > li a:hover {
          opacity: 1; }
      .slideshow > .images > li img {
        height: 100%;
        width: auto; }
        @media all and (max-width: 767px) {
          .slideshow > .images > li img {
            width: 100%;
            height: 100%;
            -o-object-fit: cover;
               object-fit: cover; } }
  .slideshow > .titles {
    position: relative;
    width: 100%; }
    .slideshow > .titles > li {
      position: absolute;
      z-index: 100;
      top: 0;
      left: 0;
      width: 100%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      padding: 2.375em 1.1875em 1.1875em;
      opacity: 1 !important;
      -webkit-transform: translateX(100%);
          -ms-transform: translateX(100%);
              transform: translateX(100%); }
      .slideshow > .titles > li.visible {
        -webkit-transform: translateX(0) !important;
            -ms-transform: translateX(0) !important;
                transform: translateX(0) !important; }
      .slideshow > .titles > li.to-left {
        -webkit-transform: translateX(-100%);
            -ms-transform: translateX(-100%);
                transform: translateX(-100%); }
      .slideshow > .titles > li.animating {
        -webkit-transition: -webkit-transform 250ms ease-out;
        transition: -webkit-transform 250ms ease-out;
        -o-transition: transform 250ms ease-out;
        transition: transform 250ms ease-out;
        transition: transform 250ms ease-out, -webkit-transform 250ms ease-out;
        pointer-events: none; }
      .slideshow > .titles > li > h1 {
        margin-bottom: 1.8125em; }
        .slideshow > .titles > li > h1 > a {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          width: 100%;
          min-width: 22.5em; }
          @media all and (max-width: 767px) {
            .slideshow > .titles > li > h1 > a {
              display: block; } }
          .slideshow > .titles > li > h1 > a > span {
            display: block; }
            .slideshow > .titles > li > h1 > a > span:nth-child(2n + 1) {
              width: 66.6666%;
              -webkit-flex-shrink: 0;
                  -ms-flex-negative: 0;
                      flex-shrink: 0; }
              @media all and (max-width: 767px) {
                .slideshow > .titles > li > h1 > a > span:nth-child(2n + 1) {
                  width: 100%;
                  margin-bottom: 1.8125em; } }

.slideshow.homepage {
  height: calc(100% - 5.5625em);
  min-height: 30em;
  overflow: hidden; }
  @media all and (max-width: 767px) {
    .slideshow.homepage {
      height: calc(100% - 3.875em); } }
  .slideshow.homepage > .images {
    height: calc(100% - 12.4375em);
    -webkit-transition: height 150ms ease-out;
    -o-transition: height 150ms ease-out;
    transition: height 150ms ease-out;
    overflow: hidden; }
    @media all and (max-width: 767px) {
      .slideshow.homepage > .images {
        height: calc(100% - 15.7656em); } }

.francesco-urbano-ragazzi .slideshow {
  height: calc(25em + 0.75em);
  padding: 0 0 4.375em;
  overflow: hidden; }
  @media all and (max-width: 767px) {
    .francesco-urbano-ragazzi .slideshow {
      padding: 0 0 2.125em;
      height: 13.625em; } }
  .francesco-urbano-ragazzi .slideshow > .images {
    overflow: hidden; }
    .francesco-urbano-ragazzi .slideshow > .images > li {
      height: calc(100% - 0.75em); }
      @media all and (max-width: 767px) {
        .francesco-urbano-ragazzi .slideshow > .images > li {
          height: 100%; } }
    .francesco-urbano-ragazzi .slideshow > .images img {
      -webkit-box-shadow: 0.375em 0.375em 0.375em #d1d1cf;
              box-shadow: 0.375em 0.375em 0.375em #d1d1cf; }
      @media all and (max-width: 767px) {
        .francesco-urbano-ragazzi .slideshow > .images img {
          -webkit-box-shadow: none;
                  box-shadow: none;
          width: auto;
          height: 100%; } }

.article #images-fullscreen {
  -webkit-transition: opacity 250ms linear, -webkit-transform 250ms ease-out;
  transition: opacity 250ms linear, -webkit-transform 250ms ease-out;
  -o-transition: transform 250ms ease-out, opacity 250ms linear;
  transition: transform 250ms ease-out, opacity 250ms linear;
  transition: transform 250ms ease-out, opacity 250ms linear, -webkit-transform 250ms ease-out;
  -webkit-transform: scale(0.98);
      -ms-transform: scale(0.98);
          transform: scale(0.98);
  opacity: 0; }
  .article #images-fullscreen.visible {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none; }
  .article #images-fullscreen:not(.visible), .article #images-fullscreen:not(.visible) * {
    pointer-events: none !important; }
  .article #images-fullscreen > nav {
    position: absolute;
    top: 1.25em;
    right: 1.25em;
    z-index: 750; }
  .article #images-fullscreen .slideshow {
    height: 100%; }
    .article #images-fullscreen .slideshow > ul.titles {
      width: 100%;
      height: 4.75em;
      position: relative;
      overflow: hidden;
      top: 0;
      left: 0;
      z-index: 150; }
      @media all and (max-width: 767px) {
        .article #images-fullscreen .slideshow > ul.titles {
          height: 7.75em;
          top: inherit;
          bottom: 0; } }
      .article #images-fullscreen .slideshow > ul.titles > li {
        padding: 1.25em 33.3333% 0.625em 1.25em;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        height: 100%; }
        @media all and (max-width: 767px) {
          .article #images-fullscreen .slideshow > ul.titles > li {
            padding: 1.1875em 6em 1.1875em 1.1875em; } }
    .article #images-fullscreen .slideshow > ul.images {
      height: calc(100% - 4.75em) !important; }
      @media all and (max-width: 767px) {
        .article #images-fullscreen .slideshow > ul.images {
          height: calc(100% - 7.75em); } }
      .article #images-fullscreen .slideshow > ul.images > li img {
        width: 100%;
        height: 100%;
        -o-object-fit: contain;
           object-fit: contain;
        -o-object-position: left center;
           object-position: left center;
        /*background-size: contain;
        background-repeat: no-repeat;
        background-position: left center;*/ }

.article div.related .slideshow {
  margin-top: 2.125em; }
  @media all and (max-width: 767px) {
    .article div.related .slideshow {
      margin-top: 1.375em; } }
  .article div.related .slideshow > .images {
    overflow-x: hidden; }
    .article div.related .slideshow > .images > li {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      padding: 0 calc(11.25% + 1.25em) 1.25em;
      height: auto; }
      @media all and (max-width: 767px) {
        .article div.related .slideshow > .images > li {
          padding: 0 1.1875em 1.1875em; } }
      .article div.related .slideshow > .images > li a:hover {
        opacity: 0.66 !important; }
      .article div.related .slideshow > .images > li > div {
        width: calc(50% - 0.625em); }
        @media all and (max-width: 767px) {
          .article div.related .slideshow > .images > li > div {
            width: 100%; } }
        .article div.related .slideshow > .images > li > div:nth-child(2n + 2) {
          margin-left: 1.25em; }
      .article div.related .slideshow > .images > li h6 {
        margin: 1.25em 0; }
        @media all and (max-width: 767px) {
          .article div.related .slideshow > .images > li h6 {
            margin: 1.375em 0 1em; } }
        .article div.related .slideshow > .images > li h6 > a {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          width: 100%; }
          @media all and (max-width: 767px) {
            .article div.related .slideshow > .images > li h6 > a {
              display: block; } }
          .article div.related .slideshow > .images > li h6 > a > span {
            display: block;
            width: 50%; }
            @media all and (max-width: 767px) {
              .article div.related .slideshow > .images > li h6 > a > span {
                width: 100%; } }
            @media all and (max-width: 767px) {
              .article div.related .slideshow > .images > li h6 > a > span:nth-child(2n + 2) {
                margin-top: 0.8em; } }
            @media all and (max-width: 767px) {
              .article div.related .slideshow > .images > li h6 > a > span.font-size-text {
                font-size: 1.25em; } }
      .article div.related .slideshow > .images > li img {
        width: 100%;
        height: auto; }
      .article div.related .slideshow > .images > li figure {
        height: auto;
        text-align: center; }
        .article div.related .slideshow > .images > li figure.portrait img {
          width: 60%;
          height: auto; }

#container.francesco-urbano-ragazzi > header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 600;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1.1875em 1.1875em 1em;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  #container.francesco-urbano-ragazzi > header > div:first-child {
    position: relative;
    width: 50%;
    overflow: hidden; }
    #container.francesco-urbano-ragazzi > header > div:first-child > span {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      -webkit-transition: -webkit-transform 150ms ease-out;
      transition: -webkit-transform 150ms ease-out;
      -o-transition: transform 150ms ease-out;
      transition: transform 150ms ease-out;
      transition: transform 150ms ease-out, -webkit-transform 150ms ease-out; }
      #container.francesco-urbano-ragazzi > header > div:first-child > span:not(.visible) {
        -webkit-transform: translateY(100%);
            -ms-transform: translateY(100%);
                transform: translateY(100%); }

#container.francesco-urbano-ragazzi > nav {
  position: fixed;
  z-index: 400;
  top: 1.25em;
  right: 1.25em; }

#container.francesco-urbano-ragazzi article {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1.25em; }
  @media all and (max-width: 767px) {
    #container.francesco-urbano-ragazzi article {
      padding: 6.6666em 0 0 0; } }
  #container.francesco-urbano-ragazzi article a {
    border-bottom: 1.4pt solid #111111;
    -webkit-transition: border-color 150ms linear;
    -o-transition: border-color 150ms linear;
    transition: border-color 150ms linear; }
    @media all and (max-width: 767px) {
      #container.francesco-urbano-ragazzi article a {
        border-bottom: 1px solid #111111; } }
    #container.francesco-urbano-ragazzi article a:hover {
      border-color: transparent;
      opacity: 1 !important; }
  #container.francesco-urbano-ragazzi article > h1 {
    padding-bottom: 3.75em; }
  #container.francesco-urbano-ragazzi article > div {
    width: calc(72.5% + 2.5em);
    max-width: 57.8125em;
    margin: 0 auto;
    padding: 0 1.25em;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    @media all and (max-width: 767px) {
      #container.francesco-urbano-ragazzi article > div {
        width: 100%;
        max-width: auto;
        padding: 0 1.1875em; } }
    #container.francesco-urbano-ragazzi article > div > p {
      margin-top: 1.2em;
      text-indent: 2.916em; }
      @media all and (max-width: 767px) {
        #container.francesco-urbano-ragazzi article > div > p {
          text-indent: 1.375em; } }
      #container.francesco-urbano-ragazzi article > div > p:first-child {
        margin-top: 0; }

#container.francesco-urbano-ragazzi article.contacts {
  padding: 2.5em 1.25em 2.5em 1.25em; }
  @media all and (max-width: 767px) {
    #container.francesco-urbano-ragazzi article.contacts {
      padding: 2.375em 0; } }
  #container.francesco-urbano-ragazzi article.contacts > div {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
    #container.francesco-urbano-ragazzi article.contacts > div > div {
      width: 50%; }
      @media all and (max-width: 767px) {
        #container.francesco-urbano-ragazzi article.contacts > div > div {
          width: 66%; } }
      @media all and (max-width: 767px) {
        #container.francesco-urbano-ragazzi article.contacts > div > div:nth-child(2n + 2) {
          width: 33%; } }
      #container.francesco-urbano-ragazzi article.contacts > div > div > p {
        padding-top: 1em; }
        #container.francesco-urbano-ragazzi article.contacts > div > div > p:first-of-type {
          padding-top: 0; }

@media all and (max-width: 767px) {
  #container.francesco-urbano-ragazzi article.press {
    padding: 0 0 1.1875em 0; } }

#container.francesco-urbano-ragazzi article.press > div > p {
  text-indent: 0; }

#heading {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1.25em;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 500;
  -webkit-transition: -webkit-transform 200ms ease-out;
  transition: -webkit-transform 200ms ease-out;
  -o-transition: transform 200ms ease-out;
  transition: transform 200ms ease-out;
  transition: transform 200ms ease-out, -webkit-transform 200ms ease-out; }
  @media all and (max-width: 767px) {
    #heading {
      padding: 1.1875em 1.1875em 1.5em;
      margin-top: -1.1875em;
      -webkit-transition: -webkit-transform 200ms linear;
      transition: -webkit-transform 200ms linear;
      -o-transition: transform 200ms linear;
      transition: transform 200ms linear;
      transition: transform 200ms linear, -webkit-transform 200ms linear; } }
  #heading > .shadow {
    display: block;
    position: absolute;
    bottom: -0.75em;
    left: 0;
    width: 100%;
    height: 0.75em;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.25)), to(transparent));
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.25) 0%, transparent 100%);
    background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.25) 0%, transparent 100%);
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.25) 0%, transparent 100%);
    -webkit-transition: opacity 200ms linear;
    -o-transition: opacity 200ms linear;
    transition: opacity 200ms linear;
    opacity: 0; }
  #heading.hovered {
    -webkit-transform: translateY(2.9375em);
        -ms-transform: translateY(2.9375em);
            transform: translateY(2.9375em); }
  #heading:not(.scrolled) {
    -webkit-transform: translateY(0) !important;
        -ms-transform: translateY(0) !important;
            transform: translateY(0) !important; }
  #heading [data-href="#anchor"] {
    border-bottom: 1px solid transparent;
    -webkit-transition: border-bottom 150ms linear;
    -o-transition: border-bottom 150ms linear;
    transition: border-bottom 150ms linear; }
    #heading [data-href="#anchor"].current {
      border-bottom: 1px solid #111111; }
  #heading > div {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start; }
    @media all and (max-width: 767px) {
      #heading > div {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
            -ms-flex-direction: column;
                flex-direction: column; } }
    #heading > div:nth-child(3n + 1) {
      margin-bottom: 2.75em; }
      @media all and (max-width: 767px) {
        #heading > div:nth-child(3n + 1) {
          margin-bottom: 1em !important; } }
      #heading > div:nth-child(3n + 1) > :nth-child(2n + 1) {
        width: 66.6666%;
        min-width: 22.5em;
        margin-right: auto;
        -webkit-transition: font-size 200ms ease-out;
        -o-transition: font-size 200ms ease-out;
        transition: font-size 200ms ease-out; }
        @media all and (max-width: 767px) {
          #heading > div:nth-child(3n + 1) > :nth-child(2n + 1) {
            width: 100%;
            min-width: 0;
            font-size: 1em !important; } }
      #heading > div:nth-child(3n + 1) > :nth-child(2n + 2) {
        width: 33.3333%;
        -webkit-transition: font-size 200ms ease-out;
        -o-transition: font-size 200ms ease-out;
        transition: font-size 200ms ease-out; }
        @media all and (max-width: 767px) {
          #heading > div:nth-child(3n + 1) > :nth-child(2n + 2) {
            display: none; } }
    #heading > div:nth-child(3n + 2) > :nth-child(2n + 1) {
      width: 50%;
      min-width: 22.5em;
      margin-right: auto; }
      @media all and (max-width: 767px) {
        #heading > div:nth-child(3n + 2) > :nth-child(2n + 1) {
          width: 100%;
          min-width: 0; } }
    #heading > div:nth-child(3n + 2) > :nth-child(2n + 2) {
      width: 44.4444%; }
      @media all and (max-width: 767px) {
        #heading > div:nth-child(3n + 2) > :nth-child(2n + 2) {
          width: 100%; } }
      #heading > div:nth-child(3n + 2) > :nth-child(2n + 2) > ul {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -webkit-justify-content: flex-start;
            -ms-flex-pack: start;
                justify-content: flex-start; }
        @media all and (max-width: 767px) {
          #heading > div:nth-child(3n + 2) > :nth-child(2n + 2) > ul {
            margin-top: 1.25em;
            -webkit-box-pack: justify;
            -webkit-justify-content: space-between;
                -ms-flex-pack: justify;
                    justify-content: space-between; } }
        #heading > div:nth-child(3n + 2) > :nth-child(2n + 2) > ul li {
          width: 25%; }
          @media all and (max-width: 767px) {
            #heading > div:nth-child(3n + 2) > :nth-child(2n + 2) > ul li {
              width: auto; } }

#bottom-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 7.5em;
  background-color: white; }

.article #images-fullscreen {
  position: fixed;
  z-index: 700;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: white; }
  .article #images-fullscreen > .slideshow {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }

#container.article div.location-date {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0 1.1875em;
  margin-top: 1.625em; }

#container.article #cover {
  padding: 3.5625em 0 3em;
  width: 72.5%;
  margin: 0 auto;
  line-height: 0; }
  @media all and (max-width: 767px) {
    #container.article #cover {
      width: 100%;
      max-width: auto;
      padding: 1.625em 1.1875em 2em;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; } }
  #container.article #cover img {
    width: 100%;
    height: auto; }
  #container.article #cover figcaption {
    line-height: 1;
    margin-top: 0.375em; }

#container.article section[data-anchor="text"] a, #container.article section[data-anchor="press"] a {
  border-bottom: 1.4pt solid #111111;
  -webkit-transition: border-color 150ms linear;
  -o-transition: border-color 150ms linear;
  transition: border-color 150ms linear; }
  @media all and (max-width: 767px) {
    #container.article section[data-anchor="text"] a, #container.article section[data-anchor="press"] a {
      border-bottom: 1px solid #111111; } }
  #container.article section[data-anchor="text"] a:hover, #container.article section[data-anchor="press"] a:hover {
    border-color: transparent;
    opacity: 1 !important; }

#container.article section[data-anchor="text"] {
  width: 74.17%;
  min-width: 37.5em;
  padding: 0 1.25em 0 0;
  margin: 3em 0 3em auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media all and (max-width: 767px) {
    #container.article section[data-anchor="text"] {
      width: 100%;
      min-width: 0;
      padding: 0 1.1875em;
      margin-top: 1em; } }
  #container.article section[data-anchor="text"] > div > p {
    margin-top: 1.2em;
    text-indent: 2.916em; }
    @media all and (max-width: 767px) {
      #container.article section[data-anchor="text"] > div > p {
        text-indent: 1.375em; } }
    #container.article section[data-anchor="text"] > div > p:first-child {
      margin-top: 0; }

#container.article section[data-anchor="images"] {
  width: 72.5%;
  margin: 3em auto; }
  @media all and (max-width: 767px) {
    #container.article section[data-anchor="images"] {
      width: 100%;
      max-width: auto;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      padding: 0 1.1875em;
      margin: 3.5em 0; } }
  #container.article section[data-anchor="images"] > ul {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    #container.article section[data-anchor="images"] > ul > li {
      width: calc(33.3333% - 0.41666em);
      margin-left: 0.625em;
      line-height: 0;
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center;
      margin-top: 1.125em; }
      @media all and (max-width: 767px) {
        #container.article section[data-anchor="images"] > ul > li {
          width: calc(50% - 0.1875em);
          margin-left: 0.375em;
          margin-top: 0.375em; } }
      @media all and (min-width: 768px) {
        #container.article section[data-anchor="images"] > ul > li:nth-child(3n + 1) {
          margin-left: 0; } }
      @media all and (max-width: 767px) {
        #container.article section[data-anchor="images"] > ul > li:nth-child(2n + 1) {
          margin-left: 0; } }
      @media all and (min-width: 768px) {
        #container.article section[data-anchor="images"] > ul > li:nth-child(-n + 3) {
          margin-top: 0; } }
      @media all and (max-width: 767px) {
        #container.article section[data-anchor="images"] > ul > li:nth-child(-n + 2) {
          margin-top: 0; } }
      #container.article section[data-anchor="images"] > ul > li > span {
        display: block;
        padding-top: 66%;
        cursor: pointer; }
  #container.article section[data-anchor="images"] > .video {
    width: 100%;
    margin-top: 1.25em; }
    @media all and (max-width: 767px) {
      #container.article section[data-anchor="images"] > .video {
        margin-top: 0.375em; } }
    #container.article section[data-anchor="images"] > .video iframe {
      width: 100%;
      height: 40.78125vw; }
      @media all and (max-width: 767px) {
        #container.article section[data-anchor="images"] > .video iframe {
          height: 50vw; } }

#container.article section[data-anchor="press"] {
  width: 74.17%;
  min-width: 37.5em;
  padding: 0 calc(37.9166% + 1.25em) 0 0;
  margin: 3em 0 3em auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media all and (max-width: 767px) {
    #container.article section[data-anchor="press"] {
      margin: 3.5em 0;
      width: 100%;
      min-width: 0;
      padding: 0 6em 0 1.1875em; } }

#container.article section[data-anchor="partners"] {
  width: 72.5%;
  padding: 0 12.08333% 0 0;
  margin: 3em auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media all and (max-width: 767px) {
    #container.article section[data-anchor="partners"] {
      width: 100%;
      max-width: auto;
      margin: 3.5em 0;
      padding: 0 1.1875em; } }
  #container.article section[data-anchor="partners"] img {
    max-width: 100%;
    margin-top: 2.6875em; }
    @media all and (max-width: 767px) {
      #container.article section[data-anchor="partners"] img {
        height: auto;
        margin: 2em 0 0; } }

#container.article div.related > h4 {
  margin-left: 1.25em; }

.projects #archive-filters {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 1.25em;
  margin-top: -1.25em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 500;
  -webkit-transition: -webkit-transform 200ms ease-out;
  transition: -webkit-transform 200ms ease-out;
  -o-transition: transform 200ms ease-out;
  transition: transform 200ms ease-out;
  transition: transform 200ms ease-out, -webkit-transform 200ms ease-out; }
  @media all and (max-width: 767px) {
    .projects #archive-filters {
      -webkit-transition: -webkit-transform 200ms linear;
      transition: -webkit-transform 200ms linear;
      -o-transition: transform 200ms linear;
      transition: transform 200ms linear;
      transition: transform 200ms linear, -webkit-transform 200ms linear;
      padding: 1.1875em;
      margin-top: -1.1875em; } }
  .projects #archive-filters.hovered {
    -webkit-transform: translateY(2.9375em);
        -ms-transform: translateY(2.9375em);
            transform: translateY(2.9375em); }
  .projects #archive-filters:not(.scrolled) {
    -webkit-transform: translateY(0) !important;
        -ms-transform: translateY(0) !important;
            transform: translateY(0) !important; }
  .projects #archive-filters > ul {
    width: 33.3333%;
    min-width: 20.125em;
    margin-left: auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    overflow-x: hidden;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center; }
    @media all and (max-width: 767px) {
      .projects #archive-filters > ul {
        width: 100%;
        min-width: 0; } }
    .projects #archive-filters > ul > li {
      -webkit-flex-shrink: 0;
          -ms-flex-negative: 0;
              flex-shrink: 0; }
      .projects #archive-filters > ul > li.search-container {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        max-width: 1.125em;
        -webkit-transition: max-width 300ms ease-out;
        -o-transition: max-width 300ms ease-out;
        transition: max-width 300ms ease-out; }
        .projects #archive-filters > ul > li.search-container.toggled {
          max-width: 100%; }
          .projects #archive-filters > ul > li.search-container.toggled > input {
            max-width: 100%;
            border-bottom: 1px solid #111111; }
        .projects #archive-filters > ul > li.search-container > input {
          display: block;
          width: 100%;
          max-width: 0;
          -webkit-transition: max-width 300ms ease-out;
          -o-transition: max-width 300ms ease-out;
          transition: max-width 300ms ease-out;
          font-family: "Regola Pro", Helvetica, Arial, sans-serif; }
      @media all and (max-width: 767px) {
        .projects #archive-filters > ul > li .font-size-medium, .projects #menu > .inner-container > .container > header #archive-filters > ul > li.search-container > input, #menu > .inner-container > .container > header .projects #archive-filters > ul > li.search-container > input, .projects #archive-filters > ul > li.search-container > input {
          font-size: 1em; } }
    .projects #archive-filters > ul [data-href="#filter"].current-filter {
      border-bottom: 1px solid #111111; }
  .projects #archive-filters > .shadow {
    display: block;
    position: absolute;
    bottom: -0.75em;
    left: 0;
    width: 100%;
    height: 0.75em;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.25)), to(transparent));
    background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.25) 0%, transparent 100%);
    background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.25) 0%, transparent 100%);
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.25) 0%, transparent 100%);
    -webkit-transition: opacity 200ms linear;
    -o-transition: opacity 200ms linear;
    transition: opacity 200ms linear;
    opacity: 0; }
  .projects #archive-filters img {
    width: 1.5em;
    height: 1.5em; }
    @media all and (max-width: 767px) {
      .projects #archive-filters img {
        width: 0.96em;
        height: 0.96em; } }

.projects #archive-list {
  padding: 3.5625em 1.25em 1.25em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media all and (max-width: 767px) {
    .projects #archive-list {
      padding: 1.125em 1.1875em 1.1875em; } }
  .projects #archive-list > ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
    .projects #archive-list > ul > li {
      width: calc(33.3333% - 0.41666em);
      margin: 1.75em 0 0 0.625em; }
      @media all and (max-width: 767px) {
        .projects #archive-list > ul > li {
          width: 100%;
          margin-top: 2.875em;
          margin-left: 0; } }
      @media all and (max-width: 767px) {
        .projects #archive-list > ul > li:first-child {
          margin-top: 0; } }
      @media all and (min-width: 768px) {
        .projects #archive-list > ul > li:nth-child(-n + 3) {
          margin-top: 0; } }
      @media all and (min-width: 768px) {
        .projects #archive-list > ul > li:nth-child(3n + 1) {
          margin-left: 0; } }
      .projects #archive-list > ul > li.filtered {
        display: none !important; }
      @media all and (min-width: 768px) {
        .projects #archive-list > ul > li.first-row {
          margin-top: 0 !important; } }
      @media all and (min-width: 768px) {
        .projects #archive-list > ul > li.first-of-line {
          margin-left: 0 !important; } }
      @media all and (min-width: 768px) {
        .projects #archive-list > ul > li.inside-of-line {
          margin-left: 0.625em !important; } }
      .projects #archive-list > ul > li > a {
        display: block;
        width: 100%;
        padding-top: 60.41%;
        line-height: 0;
        position: relative; }
        .projects #archive-list > ul > li > a > img {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          -o-object-fit: cover;
             object-fit: cover;
          -o-object-position: center;
             object-position: center; }
      .projects #archive-list > ul > li h3.columns > a {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        padding: 0.875em 0 0.625em; }
        @media all and (max-width: 767px) {
          .projects #archive-list > ul > li h3.columns > a {
            padding: 1.375em 0 0.916em; } }
        .projects #archive-list > ul > li h3.columns > a > span {
          display: block;
          width: 50%; }
          @media all and (max-width: 767px) {
            .projects #archive-list > ul > li h3.columns > a > span.font-size-medium {
              font-size: 1.25em; } }

