/*! csstools-normalize v9.0.1 | github.com/csstools/normalize.css */
/* Document
 * ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   * ========================================================================== */
/**
   * Correct the font size and margin on `h1` elements within `section` and
   * `article` contexts in Chrome, Firefox, and Safari.
   */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   * ========================================================================== */
/**
   * 1. Add the correct box sizing in Firefox.
   * 2. Show the overflow in Edge and IE.
   */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
   * Add the correct display in IE.
   */
main {
  display: block;
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   * ========================================================================== */
/**
   * Remove the gray background on active links in IE 10.
   */
a {
  background-color: transparent;
}

/**
   * Add the correct text decoration in Edge, IE, Opera, and Safari.
   */
abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/**
   * Add the correct font weight in Chrome, Edge, and Safari.
   */
b,
strong {
  font-weight: bolder;
}

/**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
   * Add the correct font size in all browsers.
   */
small {
  font-size: 80%;
}

/* Embedded content
   * ========================================================================== */
/**
   * Add the correct display in IE 9-.
   */
audio,
video {
  display: inline-block;
}

/**
   * Add the correct display in iOS 4-7.
   */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
   * Remove the border on images inside links in IE 10-.
   */
img {
  border-style: none;
}

/**
   * Hide the overflow in IE.
   */
svg:not(:root) {
  overflow: hidden;
}

/* Forms
   * ========================================================================== */
/**
   * Remove the margin in Safari.
   */
button,
input,
select {
  margin: 0;
}

/**
   * 1. Show the overflow in IE.
   * 2. Remove the inheritance of text transform in Edge, Firefox, and IE.
   */
button {
  overflow: visible;
  /* 1 */
  text-transform: none;
  /* 2 */
}

/**
   * Correct the inability to style clickable types in iOS and Safari.
   */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
   * Correct the padding in Firefox.
   */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
   * Show the overflow in Edge and IE.
   */
input {
  overflow: visible;
}

/**
   * 1. Correct the text wrapping in Edge and IE.
   * 2. Correct the color inheritance from `fieldset` elements in IE.
   */
legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  white-space: normal;
  /* 1 */
}

/**
   * 1. Add the correct display in Edge and IE.
   * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
   * Remove the inheritance of text transform in Firefox.
   */
select {
  text-transform: none;
}

/**
   * 1. Remove the margin in Firefox and Safari.
   * 2. Remove the default vertical scrollbar in IE.
   */
textarea {
  margin: 0;
  /* 1 */
  overflow: auto;
  /* 2 */
}

/**
   * 1. Add the correct box sizing in IE 10-.
   * 2. Remove the padding in IE 10-.
   */
[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
   * 1. Correct the odd appearance in Chrome and Safari.
   * 2. Correct the outline style in Safari.
   */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
   * Correct the cursor style of increment and decrement buttons in Safari.
   */
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/**
   * Correct the text style of placeholders in Chrome, Edge, and Safari.
   */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

/**
   * Remove the inner padding in Chrome and Safari on macOS.
   */
::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Change font properties to `inherit` in Safari.
   */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/**
   * Remove the inner border and padding of focus outlines in Firefox.
   */
::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
   * Restore the focus outline styles unset by the previous rule in Firefox.
   */
:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/* Interactive
   * ========================================================================== */
/*
   * Add the correct display in Edge and IE.
   */
details {
  display: block;
}

/*
   * Add the correct styles in Edge, IE, and Safari.
   */
dialog {
  background-color: white;
  border: solid;
  color: black;
  display: block;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  left: 0;
  margin: auto;
  padding: 1em;
  position: absolute;
  right: 0;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

dialog:not([open]) {
  display: none;
}

/*
   * Add the correct display in all browsers.
   */
summary {
  display: list-item;
}

/* Scripting
   * ========================================================================== */
/**
   * Add the correct display in IE 9-.
   */
canvas {
  display: inline-block;
}

/**
   * Add the correct display in IE.
   */
template {
  display: none;
}

/* User interaction
   * ========================================================================== */
/**
   * Add the correct display in IE 10-.
   */
[hidden] {
  display: none;
}

/**
 * Variables
 */
/**
 * Typography
 */
@font-face {
  font-family: 'Crimson Text';
  src: url("../fonts/CrimsonText-Regular.woff2") format("woff2"), url("../fonts/CrimsonText-Regular.woff") format("woff"), url("../fonts/CrimsonText-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'InputSansCondensed';
  src: url("../fonts/InputSansCondensed-Light.woff2") format("woff2"), url("../fonts/InputSansCondensed-Light.woff") format("woff"), url("../fonts/InputSansCondensed-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
}

.heading {
  font-family: "InputSansCondensed", sans-serif;
  font-weight: 300;
  display: block;
  color: #0082ff;
  font-style: normal;
  font-size: 1.125rem;
  text-align: center;
  margin: 102px 0 23px 0;
}

@media (min-width: 48em) {
  .heading {
    font-size: 1.625rem;
  }
}

.heading--profile {
  margin: 35px 0 23px 0;
}

@media (min-width: 48em) {
  .heading--profile {
    margin: 102px 0 23px 0;
  }
}

p {
  font-family: "Crimson Text", serif;
  margin: 0;
  font-size: 42px;
  font-size: 2.625rem;
}

p + p {
  margin-top: 1em;
}

a {
  text-decoration: underline;
  color: black;
}

a:hover {
  color: #0082ff;
}

.text p {
  font-size: 1.5rem;
  line-height: 1.875rem;
}

@media (min-width: 48em) {
  .text p {
    font-size: 2.625rem;
    line-height: 3.125rem;
  }
}

/**
 * Base
 */
body {
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  text-shadow: rgba(0, 0, 0, 0.01) 0 0 1px;
  background-color: #ffffff;
  margin: 0;
  overflow-y: scroll;
  padding: 0;
}

*,
*::after,
*::before {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/**
 * Components
 */
.container {
  display: block;
  margin: 0 auto;
  max-width: 1222px;
  padding: 0 10px;
}

.container:after {
  display: table;
  clear: both;
  content: '';
}

@media (min-width: 48em) {
  .container {
    padding: 0 30px;
  }
}

.container--big {
  max-width: 1250px;
}

.container--small {
  max-width: 828px;
}

.header {
  background-color: #000;
  display: block;
  z-index: 1000;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  white-space: nowrap;
  overflow: hidden;
  width: 100%;
  padding: 10px 0 0;
  height: 74px;
  -webkit-transition: top 0.5s;
  transition: top 0.5s;
}

.header:after {
  display: table;
  clear: both;
  content: '';
}

@media (min-width: 31.25em) {
  .header {
    padding: 19px 45px 0;
    height: 110px;
  }
}

.header__logo {
  display: inline-block;
  margin: 0;
  vertical-align: middle;
  width: calc(100% - 51px);
  padding: 0 40px 0 7px;
  cursor: pointer;
}

@media (min-width: 31.25em) {
  .header__logo {
    width: calc(100% - 70px);
    padding: 0;
  }
}

.header__logo-image {
  max-width: 410px;
  width: 100%;
}

.header__logo-image--desk {
  display: none;
}

@media (min-width: 48em) {
  .header__logo-image--desk {
    display: inline-block;
  }
}

.header__logo-image--mobile {
  display: inline-block;
  max-width: 150px;
}

@media (min-width: 31.25em) {
  .header__logo-image--mobile {
    max-width: 200px;
  }
}

@media (min-width: 48em) {
  .header__logo-image--mobile {
    display: none;
  }
}

.header__navicon {
  display: inline-block;
  padding: 0;
  width: 40px;
  cursor: pointer;
  vertical-align: middle;
}

.header__menu-svg {
  width: 100%;
  fill: none;
  stroke: #0082ff;
  stroke-width: 2px;
}

.header__menu-svg:hover {
  stroke: white;
}

.stage {
  background-color: black;
  height: 100vh;
  padding-top: 112px;
  position: relative;
}

.stage__item {
  display: block;
  height: 100% !important;
  overflow: hidden;
  max-width: 1366px;
  margin: 0 auto;
}

.stage__video {
  display: block;
  width: 100%;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  max-height: 820px;
  left: 0;
}

.stage__text {
  font-family: "Crimson Text", serif;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  color: white;
  z-index: 100;
  text-align: center;
  left: 0;
  right: 0;
}

.stage__text p {
  font-size: 1.75rem;
  line-height: 2.25rem;
}

@media (min-width: 48em) {
  .stage__text p {
    font-size: 3.3125rem;
    line-height: 3.9375rem;
  }
}

.stage__arrowicon {
  position: absolute;
  bottom: 110px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 41px;
  cursor: pointer;
}

@media (min-width: 48em) {
  .stage__arrowicon {
    bottom: 50px;
  }
}

.stage__arrowicon-svg {
  fill: none;
  stroke: #0082ff;
  stroke-width: 2px;
}

.stage__arrowicon-svg:hover {
  stroke: white;
}

.page__section {
  padding-bottom: 50px;
}

.portfolio {
  margin-top: 31px;
  margin-bottom: 80px;
}

.portfolio__select {
  display: block;
  margin: 0 auto;
}

.portfolio__items {
  font-size: 0px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 59px 0 0 -19px;
  -webkit-align-content: stretch;
      -ms-flex-line-pack: stretch;
          align-content: stretch;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  overflow: hidden;
  height: 500px;
}

@media (min-width: 32.5em) {
  .portfolio__items {
    margin: 59px 0 0 -22px;
  }
}

@media (min-width: 64em) {
  .portfolio__items {
    margin: 59px 0 0 -11px;
  }
}

.portfolio__item {
  width: 50%;
  padding: 0 0 0 19px;
  cursor: pointer;
}

@media (min-width: 32.5em) {
  .portfolio__item {
    width: 50%;
    padding: 22px 0 0 22px;
  }
}

@media (min-width: 64em) {
  .portfolio__item {
    width: 33%;
    padding: 22px 0 0 22px;
  }
}

.portfolio__item:hover .portfolio-item__title,
.portfolio__item:hover .portfolio-item__category {
  color: #0082ff;
}

.portfolio__select-wrapper {
  height: 58px;
  width: 280px;
  overflow: hidden;
  margin: 0 auto;
  display: block;
  position: relative;
}

@media (min-width: 48em) {
  .portfolio__select-wrapper {
    font-size: 1.625rem;
    width: 380px;
  }
}

.portfolio__select-wrapper select::-ms-expand {
  display: none;
  /* hide the default arrow in ie10 and ie11 */
}

.portfolio__select {
  font-family: "InputSansCondensed", sans-serif;
  font-weight: 300;
  font-size: 1.125rem;
  background: transparent;
  padding: 5px 0 0 26px;
  border: 2px solid black;
  height: 58px;
  width: 254px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: url("../../../../svg/selectbox-arrow.svg") no-repeat;
  background-size: 37px;
  background-position: calc(100% - 20px) center;
  background-repeat: no-repeat;
  background-color: #ffffff;
}

@media (min-width: 48em) {
  .portfolio__select {
    font-size: 1.625rem;
    width: 380px;
  }
}

.portfolio__select:first-child {
  display: none;
}

.portfolio__item--hidden {
  display: none;
}

.portfolio__load-more {
  display: block;
  text-align: center;
  margin-top: 49px;
}

@media (min-width: 48em) {
  .portfolio__load-more {
    margin-top: 86px;
  }
}

.portfolio__load-more:before {
  font-family: "InputSansCondensed", sans-serif;
  font-weight: 300;
  content: "...";
  font-size: 1.125rem;
  line-height: 2.5rem;
  display: block;
}

@media (min-width: 48em) {
  .portfolio__load-more:before {
    font-size: 1.625rem;
  }
}

.portfolio__load-more a {
  font-family: "InputSansCondensed", sans-serif;
  font-weight: 300;
  cursor: pointer;
  font-size: 1.125rem;
  line-height: 1.25rem;
  text-decoration: none;
  -webkit-text-decoration-color: black;
          text-decoration-color: black;
  color: black;
  display: inline-block;
  position: relative;
}

@media (min-width: 48em) {
  .portfolio__load-more a {
    font-size: 1.625rem;
    line-height: 2.5rem;
  }
}

.portfolio__load-more a:hover {
  color: #0082ff;
}

.portfolio__load-more a:hover:after {
  background-color: #0082ff;
}

.portfolio__load-more a:after {
  content: "";
  display: block;
  height: 1px;
  left: 0;
  right: 0;
  bottom: 2px;
  position: absolute;
  background-color: black;
}

@media (min-width: 48em) {
  .portfolio__load-more a:after {
    height: 2px;
    bottom: 3px;
  }
}

/* moving arrow from outside the selectbox */
.portfolio__select-icon {
  display: none;
}

.portfolio-item__title {
  font-family: "Crimson Text", serif;
  font-size: 1.25rem;
  line-height: 1.125rem;
}

@media (min-width: 48em) {
  .portfolio-item__title {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}

.portfolio-item__title:after {
  content: ' ';
  display: block;
  height: 31px;
}

.portfolio-item__infos {
  font-size: 1.5rem;
  line-height: 1.125rem;
}

@media (min-width: 48em) {
  .portfolio-item__infos {
    font-size: 1.875rem;
    line-height: 2.5rem;
  }
}

@media (min-width: 64em) {
  .portfolio-item__infos {
    font-size: 2.25rem;
  }
}

.portfolio-item__category {
  font-family: "InputSansCondensed", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 0.75rem;
  line-height: 1rem;
  display: inline-block;
  padding-top: 1.1875rem;
  padding-bottom: 0.1875rem;
}

@media (min-width: 48em) {
  .portfolio-item__category {
    font-size: 1rem;
    line-height: 1.25rem;
  }
}

.portfolio-item__image img,
.portfolio-item__image--hover img {
  width: 100%;
}

.portfolio-item__imagebox {
  position: relative;
  float: left;
}

.portfolio-item__image--hover {
  position: absolute;
  left: 0;
  top: 0;
  display: none;
  width: 100%;
}

.portfolio-item:hover .portfolio-item__image--hover {
  display: block;
}

.portfolio-item__hidden-text {
  display: none;
}

.image--profile {
  margin-top: 69px;
  width: 100%;
}

@media (min-width: 48em) {
  .image--profile {
    margin-top: 120px;
  }
}

.image__figure {
  margin: 0;
}

.image__caption {
  font-family: "InputSansCondensed", sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 0.75rem;
  line-height: 1rem;
  margin: 7px 0 60px 0;
  color: black;
}

@media (min-width: 48em) {
  .image__caption {
    font-size: 1rem;
    line-height: 1.25rem;
  }
}

.address {
  margin-top: 39px;
}

.address p, .address a {
  font-family: "InputSansCondensed", sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.375rem;
  color: black;
}

@media (min-width: 22.5em) {
  .address p, .address a {
    font-size: 1.125rem;
    line-height: 1.5rem;
  }
}

@media (min-width: 48em) {
  .address p, .address a {
    font-size: 1.625rem;
    line-height: 2.25rem;
  }
}

.address__heading {
  font-family: "InputSansCondensed", sans-serif;
  font-weight: 300;
  display: block;
  color: #0082ff;
  font-style: normal;
  font-size: 0.75rem;
  line-height: 1rem;
  margin: 32px 0 7px 0;
}

@media (min-width: 48em) {
  .address__heading {
    font-size: 1rem;
    line-height: 1.25rem;
  }
}

.address__mail {
  display: inline-block;
  position: relative;
  text-decoration: none;
}

.address__mail:hover {
  color: #0082ff;
}

.address__mail:hover:after {
  background-color: #0082ff;
}

.address__mail:after {
  content: "";
  display: block;
  height: 1px;
  left: 0;
  right: 0;
  bottom: 3px;
  position: absolute;
  background-color: black;
}

@media (min-width: 48em) {
  .address__mail:after {
    height: 2px;
  }
}

.map {
  border: none;
  display: block;
  height: 490px;
  margin: 0;
  width: 100%;
  margin-top: 60px;
  pointer-events: none;
}

@z-media print {
  .map {
    display: none;
  }
}

@media (min-width: 48em) {
  .map {
    height: 690px;
  }
}

.footer {
  text-align: center;
  padding-bottom: 25px;
}

.footer__link {
  font-family: "InputSansCondensed", sans-serif;
  font-weight: 300;
  color: black;
  font-size: 1rem;
  line-height: 1.25rem;
}

.footer__arrow-up {
  margin: 0 auto;
  width: 41px;
  cursor: pointer;
}

.footer__link-wrapper {
  margin: 13px 0 8px 0;
}

.footer__arrowicon-svg {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
  margin-top: 24px;
  fill: none;
  stroke: #0082ff;
  stroke-width: 2px;
}

.footer__arrowicon-svg:hover {
  stroke: black;
}

.menu {
  position: fixed;
  height: 100vh;
  width: 100vw;
  z-index: 2000;
  background-color: #0082ff;
  display: none;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.menu__navlinks {
  list-style: none;
  text-align: center;
  vertical-align: middle;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-25%);
      -ms-transform: translateY(-25%);
          transform: translateY(-25%);
  padding: 0;
  margin: 0;
}

@media (min-width: 48em) {
  .menu__navlinks {
    padding-right: 16px;
  }
}

.menu__navlink {
  font-family: "Crimson Text", serif;
  font-size: 1.625rem;
  line-height: 2.25rem;
  margin-bottom: 15px;
  position: relative;
  display: block;
}

@media (min-width: 25em) {
  .menu__navlink {
    font-size: 2.25rem;
    line-height: 2.5rem;
  }
}

@media (min-width: 48em) {
  .menu__navlink {
    font-size: 3.5rem;
    line-height: 3.0625rem;
    margin-bottom: 48px;
  }
}

.menu__navlink a {
  text-decoration: none;
  color: white;
  position: relative;
  cursor: pointer;
}

.menu__navlink a:hover:after {
  content: "";
  display: block;
  height: 1px;
  left: 0;
  right: 0;
  bottom: -1px;
  position: absolute;
  background-color: white;
}

@media (min-width: 25em) {
  .menu__navlink a:hover:after {
    height: 2px;
  }
}

@media (min-width: 48em) {
  .menu__navlink a:hover:after {
    height: 3px;
  }
}

.menu__closeicon {
  position: absolute;
  top: 24px;
  right: 34px;
  width: 41px;
}

@media (min-width: 48em) {
  .menu__closeicon {
    top: 50px;
    right: 65px;
  }
}

.menu__close-svg {
  width: 100%;
  fill: none;
  stroke: white;
  stroke-width: 2px;
  cursor: pointer;
}

.menu__close-svg:hover {
  stroke: black;
}

.menu__footer-link-wrapper {
  position: absolute;
  width: 100%;
  text-align: center;
  bottom: 100px;
}

@media (min-width: 48em) {
  .menu__footer-link-wrapper {
    bottom: 37px;
  }
}

.menu__footer-link {
  font-family: "InputSansCondensed", sans-serif;
  font-weight: 300;
  color: white;
  font-size: 1rem;
  line-height: 0.875rem;
  text-decoration: none;
  position: relative;
}

.menu__footer-link:hover {
  color: white;
}

.menu__footer-link:hover:after {
  content: "";
  display: block;
  height: 1px;
  left: 0;
  right: 0;
  bottom: -3px;
  position: absolute;
  background-color: white;
}

.anchor__container {
  position: relative;
}

.anchor {
  position: absolute;
  top: -75px;
}

.anchor--intro {
  top: -175px;
}

.anchor--portfolio {
  top: -50px;
}

.anchor--contact {
  top: -100px;
}

.portfolio-modal {
  position: fixed;
  z-index: 1500;
  width: 100%;
  display: none;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  background-color: white;
}

@media (min-width: 48em) {
  .portfolio-modal {
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 80%;
    left: 10%;
    top: 50%;
    right: auto;
    bottom: auto;
    background-color: transparent;
  }
}

.portfolio-modal__content {
  width: 100%;
  max-width: 1162px;
  background-color: white;
  white-space: nowrap;
  margin: 0 auto;
  font-size: 0;
}

.portfolio-modal__darkscreen {
  position: fixed;
  width: 100vw;
  height: 100vh;
  opacity: 0.85;
  background-color: black;
  z-index: 1400;
  display: none;
}

.portfolio-modal__image {
  width: 100%;
  display: block;
}

@media (min-width: 48em) {
  .portfolio-modal__image {
    width: 50%;
    display: inline-block;
    background-color: #eeeeee;
  }
}

@media (min-width: 64em) {
  .portfolio-modal__image {
    width: 66%;
    display: inline-block;
  }
}

.portfolio-modal__image img {
  width: 100%;
  display: block;
}

.portfolio-modal__text-wrapper {
  display: block;
  vertical-align: top;
  width: 100%;
  white-space: normal;
  padding: 15px;
}

@media (min-width: 48em) {
  .portfolio-modal__text-wrapper {
    width: 50%;
    display: inline-block;
  }
}

@media (min-width: 64em) {
  .portfolio-modal__text-wrapper {
    width: 33%;
    display: inline-block;
  }
}

.portfolio-modal__category {
  font-family: "InputSansCondensed", sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.25rem;
  margin: 4px 0 0 0;
}

.portfolio-modal__title {
  font-family: "Crimson Text", serif;
  font-size: 1.5rem;
  line-height: 1.75rem;
  margin: 3px 0 26px 0;
  font-weight: normal;
}

@media (min-width: 48em) {
  .portfolio-modal__title {
    font-size: 2.25rem;
    line-height: 2.5rem;
    margin: 3px 0 56px 0;
  }
}

.portfolio-modal__text p {
  font-family: "InputSansCondensed", sans-serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.75rem;
}

.portfolio-modal__text p em {
  font-style: normal;
  text-decoration: underline;
}

.portfolio-modal__navbar {
  display: inline-block;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  position: absolute;
  top: 15px;
  -webkit-touch-callout: none;
  /* iOS Safari */
  -webkit-user-select: none;
  /* Safari */
  /* Konqueror HTML */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
  user-select: none;
  /* Non-prefixed version, currently
                              supported by Chrome and Opera */
}

@media (min-width: 48em) {
  .portfolio-modal__navbar {
    margin-top: 125px;
    position: relative;
    top: auto;
  }
}

.portfolio-modal__icon {
  width: 41px;
  display: inline-block;
}

.portfolio-modal__icon svg {
  width: 100%;
  fill: none;
  stroke: white;
  stroke-width: 2px;
  cursor: pointer;
}

.portfolio-modal__icon svg:hover {
  stroke: #0082ff;
}

.portfolio-modal__icon-close {
  margin: 0 24px 0 24px;
}

.portfolio-modal__icon-prev-svg {
  -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
          transform: rotate(90deg);
}

.portfolio-modal__icon-next-svg {
  -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
          transform: rotate(-90deg);
}

.impressum {
  max-width: 828px;
  margin: 120px auto;
}

@media (min-width: 48em) {
  .impressum {
    margin: 200px auto;
  }
}

.impressum p {
  font-family: "InputSansCondensed", sans-serif;
  font-weight: 300;
  font-size: 1.25rem;
  line-height: 1.625rem;
}

.impressum .heading:first-of-type {
  margin-bottom: 3.75rem;
}

.impressum__heading {
  text-align: left;
  font-size: 1rem;
  margin-top: 1.75rem;
  margin-bottom: 0.6875rem;
}

.impressum__heading--nomargin {
  margin-top: 1.3125rem;
  margin-bottom: 0.6875rem;
}

.spacing {
  content: "";
  margin: 62px 0 0 0;
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3ZlbmRvci96ZXBoaXIvZnJvbnRlbmQtcmVzb3VyY2VzL3Njc3Mvbm9ybWFsaXplLnNjc3MiLCJtYWluLmNzcyIsIi4uL3NyYy9zY3NzL21haW4uc2NzcyIsIi4uL3NyYy9zY3NzL3R5cG9ncmFwaHkvX2ZvbnRzLnNjc3MiLCIuLi9zcmMvc2Nzcy90eXBvZ3JhcGh5L19oZWFkaW5nLnNjc3MiLCIuLi9zcmMvc2Nzcy92YXJpYWJsZXMvX2NvbG9ycy5zY3NzIiwiLi4vLi4vdmVuZG9yL3plcGhpci9mcm9udGVuZC1yZXNvdXJjZXMvc2Nzcy9oZWxwZXJzL19yZW0uc2NzcyIsIi4uLy4uL3ZlbmRvci96ZXBoaXIvZnJvbnRlbmQtcmVzb3VyY2VzL3Njc3MvaGVscGVycy9fbWVkaWEuc2NzcyIsIi4uL3NyYy9zY3NzL3R5cG9ncmFwaHkvX3RleHQuc2NzcyIsIi4uL3NyYy9zY3NzL2Jhc2UvX2JvZHkuc2NzcyIsIi4uLy4uL3ZlbmRvci96ZXBoaXIvZnJvbnRlbmQtcmVzb3VyY2VzL3Njc3MvaGVscGVycy9fYmV0dGVyLXRleHQtcmVuZGVyaW5nLnNjc3MiLCIuLi9zcmMvc2Nzcy9iYXNlL19ib3gtc2l6aW5nLnNjc3MiLCIuLi8uLi92ZW5kb3IvemVwaGlyL2Zyb250ZW5kLXJlc291cmNlcy9zY3NzL2hlbHBlcnMvX2JveC1zaXppbmcuc2NzcyIsIi4uL3NyYy9zY3NzL2NvbXBvbmVudHMvX2NvbnRhaW5lci5zY3NzIiwiLi4vLi4vdmVuZG9yL3plcGhpci9mcm9udGVuZC1yZXNvdXJjZXMvc2Nzcy9oZWxwZXJzL19jbGVhcmZpeC5zY3NzIiwiLi4vc3JjL3Njc3MvY29tcG9uZW50cy9faGVhZGVyLnNjc3MiLCIuLi9zcmMvc2Nzcy9jb21wb25lbnRzL19zdGFnZS5zY3NzIiwiLi4vc3JjL3Njc3MvY29tcG9uZW50cy9fcGFnZS5zY3NzIiwiLi4vc3JjL3Njc3MvY29tcG9uZW50cy9fcG9ydGZvbGlvLnNjc3MiLCIuLi9zcmMvc2Nzcy9jb21wb25lbnRzL19wb3J0Zm9saW8taXRlbS5zY3NzIiwiLi4vc3JjL3Njc3MvY29tcG9uZW50cy9faW1hZ2Uuc2NzcyIsIi4uL3NyYy9zY3NzL2NvbXBvbmVudHMvX2FkZHJlc3Muc2NzcyIsIi4uL3NyYy9zY3NzL2NvbXBvbmVudHMvX21hcC5zY3NzIiwiLi4vc3JjL3Njc3MvY29tcG9uZW50cy9fZm9vdGVyLnNjc3MiLCIuLi9zcmMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCIuLi9zcmMvc2Nzcy9jb21wb25lbnRzL19hbmNob3Iuc2NzcyIsIi4uL3NyYy9zY3NzL2NvbXBvbmVudHMvX3BvcnRmb2xpby1tb2RhbC5zY3NzIiwiLi4vc3JjL3Njc3MvY29tcG9uZW50cy9faW1wcmVzc3VtLnNjc3MiLCIuLi9zcmMvc2Nzcy9jb21wb25lbnRzL19zcGFjaW5nLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsbUVBQUE7QUFFQTsrRUNBK0U7QURHL0U7Ozs7RUNFRTtBRElEO0VBQ0csaUJBQWlCO0VBQUUsTUFBQTtFQUNuQiwwQkFBMEI7RUFBRSxNQUFBO0VBQzVCLDhCQUE4QjtFQUFFLE1BQUE7QUNDcEM7O0FERUU7aUZDQytFO0FERS9FOzs7SUNFRTtBREdGO0VBQ0UsY0FBYztFQUNkLGdCQUFnQjtBQ0RwQjs7QURJRTtpRkNEK0U7QURJL0U7OztJQ0FFO0FES0Y7RUFDRSwrQkFBdUI7VUFBdkIsdUJBQXVCO0VBQUUsTUFBQTtFQUN6QixTQUFTO0VBQUUsTUFBQTtFQUNYLGlCQUFpQjtFQUFFLE1BQUE7QUNBdkI7O0FER0U7O0lDQ0U7QURHRjtFQUNFLGNBQWM7QUNEbEI7O0FESUU7OztJQ0NFO0FESUY7RUFDRSxpQ0FBaUM7RUFBRSxNQUFBO0VBQ25DLGNBQWM7RUFBRSxNQUFBO0FDQXBCOztBREdFO2lGQ0ErRTtBREcvRTs7SUNBRTtBRElGO0VBQ0UsNkJBQTZCO0FDRmpDOztBREtFOztJQ0RFO0FES0Y7RUFDRSwwQkFBMEI7RUFDMUIseUNBQWlDO1VBQWpDLGlDQUFpQztBQ0hyQzs7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QUNsQixnQkFBZ0I7QWpCMnFCcEI7O0FNanVCSTtFV21ESjtJQU1RLGdCQUFnQjtFakI2cUJ0QjtBQUNGOztBaUJwckJBO0VmbkdJLDZDQUE2QztFQUM3QyxnQkFBZ0I7RWU2R1osY0FBYztFQUNkLG1CWjNGNEU7RVk0RjVFLG1CWjVGNEU7RVk2RjVFLGNBQWM7QWpCK3FCdEI7O0FNaHZCSTtFV21ESjtJQWlCWSxtQlpoR3dFO0VMaXhCbEY7QUFDRjs7QWlCN3FCQTtFZnpISSw2Q0FBNkM7RUFDN0MsZ0JBQWdCO0VlMEhoQixlQUFlO0VBQ2YsbUJaeEdnRjtFWXlHaEYsb0JaekdnRjtFWTBHaEYscUJBQXFCO0VBQ3JCLG9DQUE0QjtVQUE1Qiw0QkFBNEI7RUFDNUIsWUFBWTtFQUNaLHFCQUFxQjtFQUNyQixrQkFBa0I7QWpCaXJCdEI7O0FNbndCSTtFV3lFSjtJQVlRLG1CWmpINEU7SVlrSDVFLG1CWmxINEU7RUxxeUJsRjtBQUNGOztBaUJqc0JBO0VBaUJRLGNieElZO0FKNHpCcEI7O0FpQnJzQkE7RUFvQlkseUJiM0lRO0FKZzBCcEI7O0FpQnpzQkE7RUF5QlEsV0FBVztFQUNYLGNBQWM7RUFDZCxXQUFXO0VBQ1gsT0FBTztFQUNQLFFBQVE7RUFDUixXQUFXO0VBQ1gsa0JBQWtCO0VBQ2xCLHVCQUF1QjtBakJvckIvQjs7QU03eEJJO0VXeUVKO0lBbUNZLFdBQVc7SUFDWCxXQUFXO0VqQnNyQnJCO0FBQ0Y7O0FpQmxyQkEsNENBQUE7QUFDQTtFQUNJLGFBQWE7QWpCcXJCakI7O0FrQjExQkE7RWhCSEksa0NBQWtDO0VnQktsQyxrQmJtQmdGO0VhbEJoRixxQmJrQmdGO0FMMjBCcEY7O0FNL3lCSTtFWWpESjtJQU1RLGtCYmU0RTtJYWQ1RSxtQmJjNEU7RUxpMUJsRjtBQUNGOztBa0J2MkJBO0VBV1EsWUFBWTtFQUNaLGNBQWM7RUFDZCxZQUFZO0FsQmcyQnBCOztBa0I1MUJBO0VBQ0ksaUJiR2dGO0VhRmhGLHFCYkVnRjtBTDYxQnBGOztBTWowQkk7RVloQ0o7SUFLUSxtQmJENEU7SWFFNUUsbUJiRjRFO0VMbTJCbEY7QUFDRjs7QU14MEJJO0VZaENKO0lBVVEsa0JiTjRFO0VMeTJCbEY7QUFDRjs7QWtCaDJCQTtFaEI5QkksNkNBQTZDO0VBQzdDLGdCQUFnQjtFZ0JnQ2hCLGtCQUFrQjtFQUNsQixrQmJkZ0Y7RWFlaEYsaUJiZmdGO0VhZ0JoRixxQkFBcUI7RUFDckIsc0JiakJnRjtFYWtCaEYseUJibEJnRjtBTHEzQnBGOztBTXoxQkk7RVlsQko7SUFXUSxlYnJCNEU7SWFzQjVFLG9CYnRCNEU7RUwyM0JsRjtBQUNGOztBa0JsMkJBOztFQUVJLFdBQVc7QWxCcTJCZjs7QWtCbDJCQTtFQUNJLGtCQUFrQjtFQUNsQixXQUFXO0FsQnEyQmY7O0FrQmwyQkE7RUFDSSxrQkFBa0I7RUFDbEIsT0FBTztFQUNQLE1BQU07RUFDTixhQUFhO0VBQ2IsV0FBVztBbEJxMkJmOztBa0JsMkJBO0VBQ0ksY0FBYztBbEJxMkJsQjs7QWtCbDJCQTtFQUNJLGFBQWE7QWxCcTJCakI7O0FtQjM2QkE7RUFDSSxnQkFBZ0I7RUFDaEIsV0FBVztBbkI4NkJmOztBTS8zQkk7RWFqREo7SUFLUSxpQkFBaUI7RW5CZzdCdkI7QUFDRjs7QW1CNzZCQTtFQUNJLFNBQVM7QW5CZzdCYjs7QW1CNzZCQTtFakJaSSw2Q0FBNkM7RUFDN0MsZ0JBQWdCO0VpQmFoQixrQkFBa0I7RUFDbEIsa0JkS2dGO0VjSmhGLGlCZElnRjtFY0hoRixvQkFBb0I7RUFDcEIsWUFBWTtBbkJpN0JoQjs7QU1uNUJJO0VhcENKO0lBU1EsZWRENEU7SWNFNUUsb0JkRjRFO0VMcTdCbEY7QUFDRjs7QW9CLzhCQTtFQUNJLGdCQUFnQjtBcEJrOUJwQjs7QW9CbjlCQTtFbEJLSSw2Q0FBNkM7RUFDN0MsZ0JBQWdCO0VrQkRaLGVmb0I0RTtFZW5CNUUscUJmbUI0RTtFZWxCNUUsWUFBWTtBcEJvOUJwQjs7QU10NkJJO0VjckRKO0lBVVksbUJmZXdFO0llZHhFLG1CZmN3RTtFTHc4QmxGO0FBQ0Y7O0FNNzZCSTtFY3JESjtJQWVZLG1CZlV3RTtJZVR4RSxvQmZT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 */