/**
 * @license
 * MyFonts Webfont Build ID 2930767, 2014-11-28T13:05:09-0500
 *
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are
 * explicitly restricted from using the Licensed Webfonts(s).
 *
 * You may obtain a valid license at the URLs below.
 *
 * Webfont: NeuzeitSLT-Book by Linotype
 * URL: http://www.myfonts.com/fonts/linotype/neuzeit-s/neuzeits-book/
 * Copyright: Part of the digitally encoded machine readable outline data for producing the Typefaces provided is copyrighted (c) 1990, 2003 Linotype Library GmbH, www.linotype.com. All rights reserved. This software is the property of Linotype Library GmbH, and may no
 * Licensed pageviews: 250,000
 *
 *
 * License: http://www.myfonts.com/viewlicense?type=web&buildid=2930767
 *
 * © 2014 MyFonts Inc
*/

/* @import must be at top of file, otherwise CSS will not work */

/* (TODO: this is done with JavaScript to avoid page blocking evil)*/

@import url("//hello.myfonts.net/count/2cb84f");

@font-face {
  font-family: 'NeuzeitSLT-Book';
  src: url('../webfonts/2CB84F_0_0.eot');
  src: url('../webfonts/2CB84F_0_0.eot?#iefix') format('embedded-opentype'),url('../webfonts/2CB84F_0_0.woff2') format('woff2'),url('../webfonts/2CB84F_0_0.woff') format('woff'),url('../webfonts/2CB84F_0_0.ttf') format('truetype');
}

/*! normalize.css v3.0.2 | MIT License | git.io/normalize */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove default margin.
 */

body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */

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

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */

audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */

[hidden],
template {
  display: none;
}

/* Links
   ========================================================================== */

/**
 * Remove the gray background color from active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

a:active,
a:hover {
  outline: 0;
}

/* Text-level semantics
   ========================================================================== */

/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */

abbr[title] {
  border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */

b,
strong {
  font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */

dfn {
  font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */

mark {
  background: #ff0;
  color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9/10.
 */

img {
  border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */

svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari.
 */

figure {
  margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr {
  box-sizing: content-box;
  height: 0;
}

/**
 * Contain overflow in all browsers.
 */

pre {
  overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Forms
   ========================================================================== */

/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */

/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */

button {
  overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */

button,
select {
  text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled] {
  cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

input {
  line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  /* 2 */
  box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */

textarea {
  overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */

optgroup {
  font-weight: bold;
}

/* Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

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

td,
th {
  padding: 0;
}

:root {
  /* text, #111, originally rgb(48)*/
  /* odd */
  /* background */
  /* :hover elements */
}

/* 992px, right before 1024px */

/* 992px */

/* 992px and 576px, for slides! */

/* 1152px */

/* 1360px */

/* 640px */

/* 800px, for grids */

/* 768x1024px */

/* 1024x768px */

/* 1120x768px */

/* 1600x824px (arbitrary) */

/* hint: @media (--full) {*/

html {
  height: 100%;
  font-size: 14px;
  box-sizing: border-box;
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

body {
  font-family: 'NeuzeitSLT-Book', sans-serif;
  color: rgb(17, 17, 17);
  line-height: 1;
  overflow: auto;
  height: auto;
}

@media (min-width: 50.000em) {
  html.no-scroll,
  body.no-scroll {
    overflow: hidden;
    height: 100%;
  }
}

@media (min-width: 62.000em) and (--full-height) {
  body {
    /**/
  }
}

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

strong,
b {
  font-style: normal;
  font-weight: normal;
}

a {
  color: rgb(0, 0, 0);
  text-decoration: none;
}

p {
  line-height: 1.4;
}

ul {
  list-style: none;
  margin: 1em 0;
  padding-left: 0;
}

[aria-hidden="true"] {
  display: none;
}

.is-loading {
  cursor: progress;
}

.group:after {
  content: "";
  display: table;
  clear: both;
}

.hide-text {
  text-indent: 300%;
  white-space: nowrap;
  overflow: hidden;
}

.small {
  font-size: 0.857em;
}

ul.horizontal > li {
  display: inline-block;
}

/* Mobile navigation */

@media (max-width: 62.000em) {
  .modern-js nav > .unit-right {
    display: none;
  }

  .modern-js .navigation-wrapper.open nav > .unit-right {
    display: block;
  }

  .navigation-wrapper .grid > .unit-right,
  .navigation-wrapper .grid > .unit-left {
    width: 100%;
  }

  .navigation-wrapper .grid > .unit-right {
    width: 100%;
    height: 3em;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    background-color: rgb(255, 255, 255);
    border-bottom: 1px solid rgb(0, 0, 0);
  }

  .navigation-wrapper .grid > .unit-right > div {
    min-width: 30em;
    /* arbitrary */
    height: 3em;
    padding: 1rem;
  }
}

nav h1 {
  margin: 0;
  padding: 1rem;
}

nav li > a,
nav span > a {
  color: rgb(170, 170, 170);
}

nav .active > a {
  color: rgb(17, 17, 17);
}

nav ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
  float: left;
}

nav ul > li {
  display: inline-block;
  width: auto;
  padding-right: 2rem;
  vertical-align: top;
}

nav .lang-switcher {
  float: left;
  text-transform: uppercase;
  font-size: 0.857em;
  margin: 0;
}

nav ul.subnav {
  display: none;
}

nav ul.subnav a {
  color: rgb(17, 17, 17);
}

nav ul.subnav .active > a {
  border-bottom: 1px solid rgb(17, 17, 17);
}

.nav-toggler {
  position: fixed;
  z-index: 1000;
  top: 1em;
  right: 1em;
  width: auto;
  height: 1em;
  text-align: right;
  cursor: pointer;
}

@media (min-width: 62.000em) {
  nav {
    position: relative;
    margin: 2rem 4rem;
    line-height: 1.3;
  }

  nav h1 {
    padding: 0;
  }

  nav ul > li {
    width: 9em;
  }

  nav .lang-switcher {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
  }

  nav ul.subnav {
    position: absolute;
    top: 2rem;
    left: 0;
  }

  nav ul.subnav.is-open {
    display: block;
  }

  .nav-toggler {
    display: none;
  }

  .navigation-wrapper .grid > .unit-right > div {
    min-width: none;
    overflow-x: visible;
  }
}

@media (min-width: 72.000em) {
  nav ul > li {
    width: 11em;
  }
}

.navigation-wrapper {
  position: fixed;
  z-index: 500;
  top: 0;
  left: 0;
  margin: 0;
  width: 100%;
  height: 3em;
  background-color: rgb(255, 255, 255);
  border-bottom: 1px solid rgb(0, 0, 0);
}

.wrapper {
  position: relative;
  margin: 4rem 1rem 1rem;
}

.wrapper-edge {
  position: relative;
  margin: 3rem 0 0;
}

.wrapper > .block {
  margin-bottom: 8rem;
  min-height: 100vh;
}

.js-slides-wrapper {
  margin: 2rem 0 0;
}

@media (min-width: 62.000em) {
  .navigation-wrapper {
    height: 7em;
    border-bottom: none;
  }

  .wrapper {
    margin: 8rem 4rem 4rem;
  }

  .wrapper-edge {
    margin: 8rem 0 0;
  }
}

@media (max-width: 70.000em) and (min-width: 64.000em) and (max-height: 51.500em) and (min-height: 48.000em) {
  .homepage .wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
  }
}

@media (min-width: 100.000em) and (min-height: 51.500em) {
  .homepage .wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
  }
}

/* Make background grey for "odd" pages */

.index-1,
.index-3,
.index-5,
.index-7,
.index-1 .navigation-wrapper .grid > .unit-right,
.index-3 .navigation-wrapper .grid > .unit-right,
.index-5 .navigation-wrapper .grid > .unit-right,
.index-7 .navigation-wrapper .grid > .unit-right,
.index-1 .navigation-wrapper,
.index-3 .navigation-wrapper,
.index-5 .navigation-wrapper,
.index-7 .navigation-wrapper {
  background-color: rgb(238, 238, 238);
}

/*
  Two column grid used all across.

  .grid         38/62 layout
  .grid-fixed   a single right 62 column
  .grid-half    50/50 layout
*/

.grid {
  position: relative;
}

.grid:after {
  content: "";
  display: table;
  clear: both;
}

.unit-left,
.unit-right {
  float: left;
  position: relative;
}

.unit-left,
.unit-right,
.grid-half > .unit-left,
.grid-half > .unit-right {
  width: 100%;
  -moz-box-sizing: border-box;
  /* Firefox >= 28 */
}

.grid-plain > .unit-left {
  display: none;
}

@media (min-width: 50.000em) {
  .grid > .unit-left {
    width: 38%;
    padding-right: 2rem;
  }

  .grid > .unit-right {
    width: 62%;
  }

  .grid-fixed > .unit-left {
    position: absolute;
    top: 0;
    left: 0;
  }

  .grid-fixed > .unit-right {
    margin-left: 38%;
  }

  .grid-half > .unit-left {
    width: 50%;
    padding-right: 2rem;
  }

  .grid-half > .unit-right {
    width: 50%;
    padding-left: 2rem;
  }

  .grid-plain > .unit-left {
    display: block;
  }
}

@media (min-width: 62.000em) {
  .grid > .unit-left {
    padding-right: 4rem;
  }
}

.grid img {
  display: block;
  max-width: 100%;
  height: auto;
  padding-top: 0.350em;
}

/*
  Thumbnail grid at homepage.
*/

.selection-grid {
  position: relative;
  width: 100%;
  margin: 0 auto;
  text-align: center;
}

.selection-grid li {
  display: inline-block;
  position: relative;
  width: 100%;
  max-width: 350px;
  margin: 0 0 0.9rem 0;
  background-color: transparent;
  background-size: auto 100%;
  background-position: center center;
  background-repeat: no-repeat;
}

/* Visited state: no background, gray text */

.selection-grid li.visited {
  background-size: 0 0;
}

.selection-grid li.visited > a {
  color: rgb(170, 170, 170);
}

/* Hover background image (plus visited) */

.selection-grid li > a {
  display: table;
  position: relative;
  width: 100%;
  height: 140px;
  text-align: center;
  line-height: 1.4;
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: 0 0;
}

.modern-no-touch .selection-grid li > a:hover {
  background-size: cover;
}

.selection-grid li.visited > a:hover {
  background-size: 0 0;
}

.modern-no-touch .selection-grid li > a:hover > span {
  display: none;
}

.selection-grid li.visited > a:hover > span {
  display: table-cell;
}

.selection-grid li > a > span {
  display: table-cell;
  vertical-align: middle;
}

@media (min-width: 40.000em) {
  .selection-grid li {
    width: auto;
    max-width: none;
    margin: 0 0.5rem 1rem;
  }

  .selection-grid li > a {
    width: 350px;
    height: 210px;
  }
}

@media (min-height: 64.000em) and (min-width: 48.000em) {
  .selection-grid li {
    margin: 3.6rem 0.5rem;
  }

  /* 225x135px */

  .selection-grid li > a {
    width: 224px;
    height: 134.4px;
  }
}

@media (max-width: 70.000em) and (min-width: 64.000em) and (max-height: 51.500em) and (min-height: 48.000em) {
  .selection-grid {
    max-width: 1050px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  .selection-grid li {
    margin: 2.5rem 0.5rem;
  }

  /* 210x125px */

  .selection-grid li > a {
    width: 210px;
    height: 124.60000000000001px;
  }
}

@media (min-width: 70.000em) and (min-height: 48.000em) {
  .selection-grid {
    max-width: none;
    top: 0;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  .selection-grid li {
    margin: 0 0.5rem 1rem;
  }

  .selection-grid li > a {
    width: 350px;
    height: 210px;
  }
}

@media (min-width: 100.000em) and (min-height: 51.500em) {
  .selection-grid {
    max-width: 1600px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  .selection-grid li {
    margin: 1.5rem 0.5rem;
  }
}

/*
  Slideshow.

  z-index
  -------
  (.navigation-wrapper  500)
  .slides-navigation-arrows  100
*/

@media (max-width: 62.000em) {
  .js-slides-many {
    display: none;
  }
}

@media (min-width: 62.000em) {
  .js-slides-single {
    display: none;
  }
}

.slides-wrapper-single {
  margin-top: 4.5rem;
}

.slides-wrapper-single h2 {
  text-align: center;
}

.slides-wrapper > ul > li {
  background-color: rgb(238, 238, 238);
  transition: background .8s ease;
}

.slides-wrapper > ul > li.focused {
  background-color: transparent;
}

.slides-wrapper .item-slide {
  margin: 0 1rem 1rem 1rem;
}

.slides-wrapper .item-slide img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}

.slides-wrapper > ul > li > h2 {
  display: table;
  position: relative;
  width: 100%;
  height: 140px;
  margin: 0;
  text-align: center;
  line-height: 1.4;
  background-color: transparent;
  background-size: auto 100%;
  background-position: center center;
  background-repeat: no-repeat;
}

.slides-wrapper > ul > li > h2 > span {
  display: table-cell;
  vertical-align: middle;
}

.slides-navigation-arrows {
  display: none;
}

@media (min-width: 40.000em) {
  .slides-wrapper > ul > li > h2 {
    height: 210px;
  }
}

@media (min-width: 62.000em) and (min-height: 36.000em) {
  .slides-wrapper > ul > li > h2 {
    display: none;
  }

  .slides-wrapper > ul {
    position: fixed;
    width: 100%;
    height: 100%;
    margin: 0;
    top: 0;
    left: 0;
    overflow: hidden;
    background-color: rgb(255, 255, 255);
    transition: top .3s ease;
  }

  .slides-wrapper > ul.hidden {
    top: -100%;
  }

  .slides-wrapper > ul > li {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 100%;
    margin: 0;
    background-color: transparent;
  }

  .slides-wrapper > ul > li:nth-child(1) {
    left: 0;
    /* first group always visible */
  }

  .slides-wrapper .item-slide {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 100%;
    left: 0;
    text-align: auto;
    margin: 0;
  }

  .slides-wrapper .item-slide:nth-child(1) {
    top: 0;
    /* first slide always visible */
  }

  .slides-wrapper .item-slide > img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto;
    max-width: 66%;
    max-height: 70%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  .slides-wrapper .item-slide .item-embed {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: auto;
    min-width: 65%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  /* Navigation arrows */

  .slides-navigation-arrows {
    display: block;
  }

  .slides-navigation-arrows > .prev,
  .slides-navigation-arrows > .next {
    opacity: 0;
    transition: opacity .4s;
    position: fixed;
    z-index: 50;
    width: 15%;
    height: 8em;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    color: rgb(170, 170, 170);
    line-height: 1.5;
    letter-spacing: 0.5px;
  }

  .is-open.is-mouse-moving .slides-navigation-arrows > .prev,
  .is-open.is-mouse-moving .slides-navigation-arrows > .next,
  .is-open .slides-navigation-arrows:hover > .prev,
  .is-open .slides-navigation-arrows:hover > .next {
    opacity: 1;
  }

  .slides-navigation-arrows > .prev {
    left: 0;
  }

  .slides-navigation-arrows > .next {
    right: 0;
  }

  .slides-navigation-arrows span {
    position: absolute;
    overflow: hidden;
    font-size: 0.857em;
    width: 9.500em;
    height: auto;
    top: 3.250em;
    cursor: pointer;
  }

  .slides-navigation-arrows > .prev > span {
    left: 4rem;
  }

  .slides-navigation-arrows > .next > span {
    text-align: right;
    right: 4rem;
  }
}

.slides-wrapper .item-info {
  margin: 0 1rem;
  -moz-box-sizing: border-box;
  /* Firefox >= 28 */
}

.item-info > h2,
.item-info .js-item-more-info,
.item-info .js-item-slide-counter {
  display: none;
}

.item-info ol {
  line-height: 1.4;
  margin: 1rem 0;
  padding-left: 0;
  list-style: none;
}

@media (min-width: 62.000em) and (min-height: 36.000em) {
  .slides-wrapper .item-info {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 17rem;
    margin: -5.5rem 0 0 0;
    top: 100%;
    left: 0;
    background-color: rgb(255, 255, 255);
    padding: 1rem 4rem;
    overflow: hidden;
    transition: margin .2s ease;
  }

  .slides-wrapper .item-info.is-showing {
    margin-top: -17rem;
  }

  .item-info > h2 {
    display: block;
    margin-bottom: 1.500em;
    /* arbitrary */
  }

  .item-info ol > li > span {
    display: inline-block;
    min-width: 7.500em;
    /* arbitrary */
  }

  .item-info .js-item-more-info {
    position: absolute;
    display: block;
    top: 1.65rem;
    /* TODO recheck */
    right: 4rem;
    border: none;
    background: transparent;
    outline: none;
    color: rgb(170, 170, 170);
  }

  .item-info .js-item-slide-counter {
    position: absolute;
    display: block;
    top: 1.15rem;
    /* TODO recheck */
    left: 0;
    width: 100%;
    text-align: center;
    color: rgb(0, 0, 0);
  }

  .item-info .js-item-slide-counter > span {
    display: block;
    width: 1em;
    margin: 0 auto;
    padding-bottom: 0.200em;
    margin-bottom: 0.400em;
  }

  .item-info .js-item-slide-counter > span.count {
    border-bottom: 1px solid rgb(170, 170, 170);
  }
}

/*
  Filter list on the Works page.
*/

@media (max-width: 50.000em) {
  .list-filter {
    display: none;
  }
}

.list-filter {
  line-height: 1.4;
  color: rgb(170, 170, 170);
}

.list-filter .options {
  margin: 0;
  display: none;
}

.list-filter .is-filter-open {
  color: rgb(17, 17, 17);
}

.list-filter .is-filter-open .options {
  display: block;
  color: rgb(17, 17, 17);
}

.list-filter > li,
.list-filter .filter-option {
  margin: 0.5rem 0;
  cursor: pointer;
}

.list-filter .filter-option {
  margin-left: 2rem;
}

.list-filter .is-selected > span {
  border-bottom: 1px solid rgb(17, 17, 17);
}

.list-3 a {
  transition: opacity .2s ease;
}

.is-filtered a {
  opacity: 0;
}

/* 
  Columns.

  .text    "estudio" 2 columns
  .list-3  "trabajo" 3 columns
  .list    "estudio" 3 columns
 */

.text-wrap > p:first-child,
.text-wrap > ul:first-child,
.text-wrap > ul p:first-child,
.list-3 > ul:first-child,
.list > ul:first-child {
  margin-top: 0;
}

.text li,
.list li {
  line-height: 1.4;
  margin-bottom: 1rem;
  display: inline-block;
  cursor: default;
  width: 100%;
}

.list-3 li {
  line-height: 1.4;
  margin-bottom: 0.5rem;
}

.text li > p {
  margin: 0;
}

.list-3 li.visited a,
.text li:nth-child(even),
.list-images li:nth-child(even) {
  color: rgb(170, 170, 170);
}

.list a[download] {
  display: block;
  color: rgb(170, 170, 170);
}

.grid-plain > h2 {
  text-align: center;
}

.text {
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
}

.faux-cover {
  display: none;
}

@media (min-width: 30.000em) {
  .list-3 {
    padding-top: 1em;
    /* make up for column bug-ish p:first-child */
    -webkit-column-gap: 2rem;
    -moz-column-gap: 2rem;
    column-gap: 2rem;
  }

  .list-3 {
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2;
  }
}

@media (min-width: 40.000em) {
  .text,
  .list {
    padding-top: 1em;
    /* make up for column bug-ish p:first-child */
    -webkit-column-gap: 2rem;
    -moz-column-gap: 2rem;
    column-gap: 2rem;
  }

  .list {
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2;
  }

  .list-3 {
    -webkit-columns: 3;
    -moz-columns: 3;
    columns: 3;
  }
}

@media (min-width: 50.000em) {
  .list-documents .active span,
  .list-images .active span {
    border-bottom: 1px solid rgb(0, 0, 0);
  }

  .faux-cover {
    display: block;
    position: absolute;
    top: 3rem;
    left: 0;
    width: 30%;
    height: 0;
    padding: 1em 1em 35% 1em;
    background-color: rgb(140, 140, 140);
    color: rgb(255, 255, 255);
    font-size: 1.500em;
    letter-spacing: 1px;
    line-height: 1.1;
    text-align: center;
  }

  .faux-cover.image {
    padding: 0;
    background-color: transparent;
    top: 2rem;
  }

  .faux-cover.image > img {
    max-width: 100%;
    height: auto;
  }
}

@media (min-width: 62.000em) {
  .text-wrap {
    max-width: 35em;
  }

  .text {
    -webkit-columns: 2;
    -moz-columns: 2;
    columns: 2;
  }

  .text,
  .list {
    -webkit-column-gap: 2rem;
    -moz-column-gap: 2rem;
    column-gap: 2rem;
  }

  .grid-plain > h2 {
    display: none;
  }

  .faux-cover {
    top: 1rem;
    font-size: 1.750em;
  }

  .faux-cover.image {
    top: 0;
  }
}

@media (min-width: 85.000em) {
  .list {
    -webkit-columns: 3;
    -moz-columns: 3;
    columns: 3;
  }

  .text,
  .list {
    -webkit-column-gap: 4rem;
    -moz-column-gap: 4rem;
    column-gap: 4rem;
  }

  .faux-cover {
    font-size: 2.500em;
    max-width: 14em;
  }
}

/* 
  News.
*/

.post {
  background-color: rgb(238, 238, 238);
  transition: background .8s ease;
}

.post.focused {
  background-color: transparent;
}

.post > .post-wrapper {
  padding: 1rem 1rem 3rem 1rem;
}

.post .unit-right {
  position: relative;
}

.post h1 {
  margin-bottom: 2rem;
}

.post-info > h3 {
  margin: 1.5rem 0 0.5rem 0;
}

.post-info > ul {
  margin-top: 0;
}

.post-info > ul > li {
  padding-right: 0.250em;
}

.post-info a {
  color: rgb(170, 170, 170);
}

.post .width-50 {
  display: block;
  float: left;
  width: 50%;
}

.post .width-50:nth-child(odd) {
  padding-right: 0.5rem;
}

.post .width-50:nth-child(even) {
  padding-left: 0.5rem;
}

.post {
  background-color: rgb(238, 238, 238);
  transition: background .8s ease;
}

.post.focused {
  background-color: transparent;
}

@media (min-width: 62.000em) {
  .post > .post-wrapper {
    padding: 0.25rem 4rem 4rem;
  }

  .post .width-50:nth-child(odd) {
    padding-right: 1rem;
  }

  .post .width-50:nth-child(even) {
    padding-left: 1rem;
  }

  .post {
    background-color: transparent;
  }
}

/* 
  Form, Google maps.
*/

#map {
  width: 100%;
  height: 25em;
  /* arbitrary */
  /*margin-bottom: calc(var(--unit) * 1);*/
}

#map img {
  max-width: none;
}

#map label {
  width: auto;
  display: inline;
}

.address {
  margin-bottom: 2rem;
}

.address.active > h2 > span {
  border-bottom: 1px solid rgb(17, 17, 17);
}

.address h2 {
  margin-bottom: 0.3rem;
}

.address h2 + p {
  margin-top: 0;
}

.copyright {
  margin: 4rem 0;
}

form {
  font-size: 14px;
  line-height: 1.4;
  /*margin-top: calc(var(--unit) * 2);*/
  padding-bottom: 1rem;
}

form > input,
form > textarea {
  border-radius: 0;
  -webkit-appearance: none;
}

form > input[type="text"],
form > textarea {
  display: block;
  width: 100%;
  height: auto;
  margin: 1rem 0;
  padding: 0.4rem 0.4rem 0.2rem 0.4rem;
  background-color: transparent;
  border: 2px solid rgb(140, 140, 140);
  font-family: 'NeuzeitSLT-Book', sans-serif;
  font-size: 14px;
  line-height: 1.4;
}

form > input[type="submit"] {
  border: 2px solid rgb(170, 170, 170);
  border: none;
  background: rgb(170, 170, 170);
  color: #FFF;
  line-height: 1;
  padding: 0.47619047619047616rem 2rem;
  outline: none;
}

form > input[type="submit"]:active {
  border: 2px solid rgb(0, 0, 0);
  border: none;
  background: rgb(0, 0, 0);
}

form > input[type="submit"]:disabled {
  opacity: 0.3;
}

form > input[type="text"].unhappy,
form > textarea.unhappy {
  border-color: red;
}