@charset "UTF-8";
@font-face {
  font-family: 'viktor-rolf-icons';
  src: url("/static/fonts/viktor-rolf-icons/viktor-rolf-icons.woff") format("woff"), url("/static/fonts/viktor-rolf-icons/viktor-rolf-icons.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "Neuzeit Webfont";
  font-style: normal;
  font-weight: normal;
  src: url("/static/fonts/neuzeit/neuzeit-regular.woff2") format("woff2"), url("/static/fonts/neuzeit/neuzeit-regular.woff") format("woff"), url("/static/fonts/neuzeit/neuzeit-regular.ttf") format("truetype");
}

@font-face {
  font-family: "Neuzeit Webfont";
  font-style: normal;
  font-weight: bold;
  src: url("/static/fonts/neuzeit/neuzeit-bold.woff2") format("woff2"), url("/static/fonts/neuzeit/neuzeit-bold.woff") format("woff"), url("/static/fonts/neuzeit/neuzeit-bold.ttf") format("truetype");
}

:root {
  -ms-overflow-style: -ms-autohiding-scrollbar;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
}

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

details {
  display: block;
}

input[type="number"] {
  width: auto;
}

input[type="search"] {
  -webkit-appearance: textfield;
}

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

main {
  display: block;
}

summary {
  display: block;
}

pre {
  overflow: auto;
}

progress {
  display: inline-block;
}

small {
  font-size: 75%;
}

template {
  display: none;
}

textarea {
  overflow: auto;
}

[hidden] {
  display: none;
}

[unselectable] {
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

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

* {
  font-size: inherit;
  line-height: inherit;
}

::before,
::after {
  text-decoration: inherit;
  vertical-align: inherit;
}

*,
::before,
::after {
  border-style: solid;
  border-width: 0;
}

* {
  margin: 0;
  padding: 0;
}

:root {
  box-sizing: border-box;
  cursor: default;
  font: 16px / 1.5 sans-serif;
  text-rendering: optimizeLegibility;
}

html {
  background-color: #fff;
}

a {
  text-decoration: none;
}

p a {
  text-decoration: underline;
}

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

button,
input,
select,
textarea {
  background-color: transparent;
}

button,
input,
select,
textarea {
  color: inherit;
  font-family: inherit;
  font-style: inherit;
  font-weight: inherit;
}

button,
input,
select,
textarea {
  min-height: 1.5em;
}

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

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

select {
  -moz-appearance: none;
  -webkit-appearance: none;
}

select::-ms-expand {
  display: none;
}

select::-ms-value {
  color: currentColor;
}

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

textarea {
  resize: vertical;
}

::selection {
  background-color: #ccc;
  text-shadow: none;
}

@media screen {
  [hidden~="screen"] {
    display: inherit;
  }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) {
    clip: rect(0 0 0 0) !important;
    position: absolute !important;
  }
}

hr {
  background-color: currentColor;
  height: 1px;
  margin: 1em 0;
}

:root {
  overflow-y: auto;
}

:root input:focus,
:root textarea:focus,
:root select:focus,
:root button:focus {
  outline: none !important;
}

:root a {
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
}

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

html,
body {
  min-width: 320px;
}

picture {
  display: block;
}

picture::after {
  clear: both;
  content: '';
  display: table;
}

img {
  max-width: 100%;
  vertical-align: bottom;
}

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

a {
  font: inherit;
}

a strong,
a em {
  font-style: inherit;
  font-weight: inherit;
}

p > a {
  text-decoration: underline;
}

a img {
  vertical-align: bottom;
}

figure img,
figure iframe,
figure video,
figure object,
picture img,
picture iframe,
picture video,
picture object {
  height: auto;
  width: 100%;
}

a,
button,
input[type="submit"],
input[type="cancel"] {
  cursor: pointer;
}

html.is-loading * {
  transition: none !important;
}

input,
textarea,
select {
  border-radius: 0;
  box-shadow: none;
}

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-box-shadow: none;
  -webkit-text-fill-color: currentColor;
  transition: background-color 5000s ease-in-out 0s;
}

sub,
sup {
  font-size: 85%;
}

@keyframes fade-in-from-left {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    display: block;
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fade-in-from-right {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    display: block;
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fade-in {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}

@keyframes fade-out-to-left {
  0% {
    display: block;
    opacity: 1;
    transform: translateX(0);
  }
  99% {
    display: block;
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    display: none;
    opacity: 0;
  }
}

@keyframes fade-out-to-right {
  0% {
    display: block;
    opacity: 1;
    transform: translateX(0);
  }
  99% {
    display: block;
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    display: none;
    opacity: 0;
  }
}

@keyframes fade-out {
  0% {
    display: block;
    opacity: 1;
  }
  99% {
    display: block;
    opacity: 0;
  }
  100% {
    display: none;
    opacity: 0;
  }
}

@keyframes pulsate-scale {
  0% {
    transform: scale(1);
  }
  15% {
    transform: scale(0.9);
  }
  45% {
    transform: scale(1);
  }
  100% {
    transform: scale(1);
  }
}

@keyframes pulse {
  0% {
    transform: scale(1);
  }
  10% {
    transform: scale(0.9);
  }
  40% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes grabattention {
  0% {
    transform: translateY(0) scaleX(1);
  }
  10% {
    transform: translateY(-5%) scaleX(1.05);
  }
  25% {
    transform: translateY(10%) scaleX(0.95);
  }
  50% {
    transform: translateY(0) scaleX(1);
  }
  100% {
    transform: translateY(0) scaleX(1);
  }
}

@keyframes ampersandspinner {
  0% {
    transform: translateX(-50%) translateY(-50%) rotateY(0);
  }
  100% {
    transform: translateX(-50%) translateY(-50%) rotateY(-360deg);
  }
}

.e-inner-constrainer {
  height: 100%;
  position: relative;
}

@media (max-width: 529px) {
  .e-inner-constrainer {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .e-inner-constrainer::after {
    content: " ";
    display: block;
    clear: both;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-inner-constrainer {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .e-inner-constrainer::after {
    content: " ";
    display: block;
    clear: both;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-inner-constrainer {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .e-inner-constrainer::after {
    content: " ";
    display: block;
    clear: both;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-inner-constrainer {
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  .e-inner-constrainer::after {
    content: " ";
    display: block;
    clear: both;
  }
}

@media (min-width: 1480px) {
  .e-inner-constrainer {
    max-width: 1920px;
    margin-left: auto;
    margin-right: auto;
  }
  .e-inner-constrainer::after {
    content: " ";
    display: block;
    clear: both;
  }
}

@media (max-width: 529px) {
  .e-inner-constrainer {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-inner-constrainer {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-inner-constrainer {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-inner-constrainer {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 1480px) {
  .e-inner-constrainer {
    padding-left: 0;
    padding-right: 0;
  }
}

.e-outer-constrainer {
  margin: 0 auto;
}

@media (max-width: 529px) {
  .e-outer-constrainer {
    max-width: 100%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-outer-constrainer {
    max-width: 100%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-outer-constrainer {
    max-width: 100%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-outer-constrainer {
    max-width: 100%;
  }
}

@media (min-width: 1480px) {
  .e-outer-constrainer {
    max-width: 1920px;
  }
}

.e-wrapper {
  height: 100%;
  position: relative;
}

.e-cols::after {
  clear: both;
  content: '';
  display: table;
}

.e-col1,
.e-col2,
.e-col3,
.e-col4,
.e-col5,
.e-col6 {
  background: rgba(255, 0, 255, 0.2);
}

.e-col1::after,
.e-col2::after,
.e-col3::after,
.e-col4::after,
.e-col5::after,
.e-col6::after {
  background: rgba(0, 255, 255, 0.2);
  content: '';
  display: block;
  height: 20px;
  width: 100%;
}

@media (max-width: 529px) {
  .e-col1 {
    width: 8.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-col1 {
    width: 8.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-col1 {
    width: 8.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-col1 {
    width: 8.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .e-col1 {
    width: 8.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.e-col1 {
  background: rgba(255, 0, 255, 0.2);
}

.e-col1::after {
  background: rgba(0, 255, 255, 0.2);
  content: '';
  display: block;
  height: 20px;
  width: 100%;
}

@media (max-width: 529px) {
  .e-col2 {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-col2 {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-col2 {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-col2 {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .e-col2 {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.e-col2 {
  background: rgba(255, 0, 255, 0.2);
}

.e-col2::after {
  background: rgba(0, 255, 255, 0.2);
  content: '';
  display: block;
  height: 20px;
  width: 100%;
}

@media (max-width: 529px) {
  .e-col3 {
    width: 25%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-col3 {
    width: 25%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-col3 {
    width: 25%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-col3 {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .e-col3 {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.e-col3 {
  background: rgba(255, 0, 255, 0.2);
}

.e-col3::after {
  background: rgba(0, 255, 255, 0.2);
  content: '';
  display: block;
  height: 20px;
  width: 100%;
}

@media (max-width: 529px) {
  .e-col4 {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-col4 {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-col4 {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-col4 {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .e-col4 {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.e-col4 {
  background: rgba(255, 0, 255, 0.2);
}

.e-col4::after {
  background: rgba(0, 255, 255, 0.2);
  content: '';
  display: block;
  height: 20px;
  width: 100%;
}

@media (max-width: 529px) {
  .e-col5 {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-col5 {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-col5 {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-col5 {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .e-col5 {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.e-col5 {
  background: rgba(255, 0, 255, 0.2);
}

.e-col5::after {
  background: rgba(0, 255, 255, 0.2);
  content: '';
  display: block;
  height: 20px;
  width: 100%;
}

@media (max-width: 529px) {
  .e-col6 {
    width: 50%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-col6 {
    width: 50%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-col6 {
    width: 50%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-col6 {
    width: 50%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .e-col6 {
    width: 50%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.e-col6 {
  background: rgba(255, 0, 255, 0.2);
}

.e-col6::after {
  background: rgba(0, 255, 255, 0.2);
  content: '';
  display: block;
  height: 20px;
  width: 100%;
}

@media (max-width: 529px) {
  .e-col7 {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-col7 {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-col7 {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-col7 {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .e-col7 {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.e-col7 {
  background: rgba(255, 0, 255, 0.2);
}

.e-col7::after {
  background: rgba(0, 255, 255, 0.2);
  content: '';
  display: block;
  height: 20px;
  width: 100%;
}

@media (max-width: 529px) {
  .e-col8 {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-col8 {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-col8 {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-col8 {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .e-col8 {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.e-col8 {
  background: rgba(255, 0, 255, 0.2);
}

.e-col8::after {
  background: rgba(0, 255, 255, 0.2);
  content: '';
  display: block;
  height: 20px;
  width: 100%;
}

@media (max-width: 529px) {
  .e-col9 {
    width: 75%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-col9 {
    width: 75%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-col9 {
    width: 75%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-col9 {
    width: 75%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .e-col9 {
    width: 75%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.e-col9 {
  background: rgba(255, 0, 255, 0.2);
}

.e-col9::after {
  background: rgba(0, 255, 255, 0.2);
  content: '';
  display: block;
  height: 20px;
  width: 100%;
}

@media (max-width: 529px) {
  .e-col10 {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-col10 {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-col10 {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-col10 {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .e-col10 {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.e-col10 {
  background: rgba(255, 0, 255, 0.2);
}

.e-col10::after {
  background: rgba(0, 255, 255, 0.2);
  content: '';
  display: block;
  height: 20px;
  width: 100%;
}

@media (max-width: 529px) {
  .e-col11 {
    width: 91.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-col11 {
    width: 91.66667%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-col11 {
    width: 91.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-col11 {
    width: 91.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .e-col11 {
    width: 91.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.e-col11 {
  background: rgba(255, 0, 255, 0.2);
}

.e-col11::after {
  background: rgba(0, 255, 255, 0.2);
  content: '';
  display: block;
  height: 20px;
  width: 100%;
}

@media (max-width: 529px) {
  .e-col12 {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .e-col12 {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .e-col12 {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .e-col12 {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .e-col12 {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.e-col12 {
  background: rgba(255, 0, 255, 0.2);
}

.e-col12::after {
  background: rgba(0, 255, 255, 0.2);
  content: '';
  display: block;
  height: 20px;
  width: 100%;
}

/*---
title: Article Photo
description: For the page's main content. Richtext can contain <p> and <ul>/<li> tags. With image.
section: Components
---
*/
@media (max-width: 529px) {
  .c-article-photo {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-article-photo {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

.c-article-photo .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-article-photo .e-title:first-child {
  margin-top: 0;
}

.c-article-photo .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-article-photo .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-article-photo .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-article-photo .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-article-photo .e-title::after {
  content: '\2014';
  display: block;
}

.c-article-photo .e-date-wrapper {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-article-photo .e-date-wrapper:first-child {
  margin-top: 0;
}

.c-article-photo .e-date-wrapper:last-child {
  margin-bottom: 0;
}

.c-article-photo .e-date,
.c-article-photo .e-imagecaption-date {
  font-weight: bold;
}

.c-article-photo .e-richtext-wrapper p {
  margin-top: 1.5em;
  margin-bottom: 1.5em;
}

.c-article-photo .e-richtext-wrapper p:first-child {
  margin-top: 0;
}

.c-article-photo .e-richtext-wrapper p:last-child {
  margin-bottom: 0;
}

.c-article-photo .e-richtext-wrapper ul {
  margin: 1.5em 0;
}

.c-article-photo .e-richtext-wrapper li {
  margin-bottom: .5em;
  padding-left: 2.5em;
}

.c-article-photo .e-richtext-wrapper li::before {
  content: '\2014';
  display: inline-block;
  float: left;
  margin-left: -2.5em;
  width: 2.5em;
}

.c-article-photo .e-richtext-wrapper p a,
.c-article-photo .e-richtext-wrapper li a {
  border-bottom: 1px solid currentColor;
  text-decoration: none;
  transition: border-bottom-color 0.05s ease-out;
}

body.no-touch .c-article-photo .e-richtext-wrapper p a:hover, body.no-touch
.c-article-photo .e-richtext-wrapper li a:hover {
  border-bottom-color: transparent;
  text-decoration: none;
  transition: border-bottom-color 0.05s ease-out;
}

body.touch .c-article-photo .e-richtext-wrapper p a:active, body.touch
.c-article-photo .e-richtext-wrapper li a:active {
  border-bottom-color: transparent;
  text-decoration: none;
  transition: border-bottom-color 0.05s ease-out;
}

.c-article-photo .e-richtext-wrapper p b,
.c-article-photo .e-richtext-wrapper p strong,
.c-article-photo .e-richtext-wrapper li b,
.c-article-photo .e-richtext-wrapper li strong {
  font-weight: bold;
}

.c-article-photo .e-richtext-wrapper p i,
.c-article-photo .e-richtext-wrapper p em,
.c-article-photo .e-richtext-wrapper li i,
.c-article-photo .e-richtext-wrapper li em {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  font-style: normal;
}

.c-article-photo .e-richtext-wrapper p i:first-child,
.c-article-photo .e-richtext-wrapper p em:first-child,
.c-article-photo .e-richtext-wrapper li i:first-child,
.c-article-photo .e-richtext-wrapper li em:first-child {
  margin-top: 0;
}

.c-article-photo .e-richtext-wrapper p i:last-child,
.c-article-photo .e-richtext-wrapper p em:last-child,
.c-article-photo .e-richtext-wrapper li i:last-child,
.c-article-photo .e-richtext-wrapper li em:last-child {
  margin-bottom: 0;
}

.c-article-photo .e-richtext-wrapper table {
  border: none;
  margin: 20px 0 40px;
  width: 100%;
}

.c-article-photo .e-richtext-wrapper th {
  background-color: #EFEFEF;
  font-weight: inherit;
  text-transform: uppercase;
}

.c-article-photo .e-richtext-wrapper th,
.c-article-photo .e-richtext-wrapper td {
  padding: 8px 16px;
  white-space: nowrap;
}

.c-article-photo .e-richtext-wrapper td {
  text-align: center;
}

.c-article-photo .e-dropcap-letter {
  font-weight: normal;
  letter-spacing: initial;
  line-height: 1em;
  text-transform: uppercase;
}

@media (max-width: 529px) {
  .c-article-photo .e-dropcap-letter {
    padding: 0 6px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo .e-dropcap-letter {
    padding: 0 12px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo .e-dropcap-letter {
    padding: 0 16px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo .e-dropcap-letter {
    padding: 0 32px;
  }
}

@media (min-width: 1480px) {
  .c-article-photo .e-dropcap-letter {
    padding: 0 32px;
  }
}

@media (max-width: 529px) {
  .c-article-photo .e-dropcap-letter {
    display: none;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo .e-dropcap-letter {
    display: none;
  }
}

@media (max-width: 529px) {
  .c-article-photo .e-dropcap-letter {
    font-size: 88px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo .e-dropcap-letter {
    font-size: 105.6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo .e-dropcap-letter {
    font-size: 127.6px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo .e-dropcap-letter {
    font-size: 162.8px;
  }
}

@media (min-width: 1480px) {
  .c-article-photo .e-dropcap-letter {
    font-size: 162.8px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-article-photo .e-dropcap-letter {
    font-size: calc(88px + (162.8 - 88) * (100vw - 320px) / (1920 - 320));
  }
}

.c-article-photo .e-date,
.c-article-photo .e-metadata {
  margin-bottom: .5em;
}

.c-article-photo .e-title-wrapper {
  position: relative;
}

.c-article-photo .e-date-wrapper,
.c-article-photo .e-richtext-wrapper {
  margin-bottom: 1em;
}

.c-article-photo .e-richtext-wrapper {
  position: relative;
}

.c-article-photo .e-dropcap-letter {
  position: absolute;
  top: 0;
  transform: translateX(-100%);
}

.c-article-photo .e-dropcap-letter + p {
  margin-top: 0;
}

.c-article-photo .e-imagecaption-title {
  margin-bottom: .75em;
}

.c-article-photo .e-imagecaption-title::before {
  content: '\2014 \A \A';
  white-space: pre;
}

@media (max-width: 529px) {
  .c-article-photo .e-picture {
    margin-bottom: 2rem;
    margin-top: 1rem;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo .e-picture {
    margin-bottom: 2rem;
    margin-top: 1rem;
  }
}

@media (min-width: 800px) {
  .c-article-photo .e-dropcap-letter {
    display: none;
  }
}

@media (max-width: 529px) {
  .c-article-photo.v-reversed .e-content-wrapper {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 25%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo.v-reversed .e-content-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 25%;
    margin-right: 25%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo.v-reversed .e-content-wrapper {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo.v-reversed .e-content-wrapper {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-article-photo.v-reversed .e-content-wrapper {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 16.66667%;
    margin-right: 8.33333%;
  }
}

@media (max-width: 529px) {
  .c-article-photo.v-reversed.has-landscape-image .e-picture {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo.v-reversed.has-landscape-image .e-picture {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo.v-reversed.has-landscape-image .e-picture {
    width: 50%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 0%;
    padding-right: 0;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo.v-reversed.has-landscape-image .e-picture {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    padding-right: 0;
  }
}

@media (min-width: 1480px) {
  .c-article-photo.v-reversed.has-landscape-image .e-picture {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    padding-right: 0;
  }
}

@media (max-width: 529px) {
  .c-article-photo.v-reversed.has-landscape-image .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 58.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo.v-reversed.has-landscape-image .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 58.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo.v-reversed.has-landscape-image .e-imagecaption {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
    margin-right: 33.33333%;
    margin-left: 0%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo.v-reversed.has-landscape-image .e-imagecaption {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 41.66667%;
    margin-left: 0%;
  }
}

@media (min-width: 1480px) {
  .c-article-photo.v-reversed.has-landscape-image .e-imagecaption {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 41.66667%;
    margin-left: 0%;
  }
}

@media (max-width: 529px) {
  .c-article-photo.v-reversed:not(.has-landscape-image) .e-picture {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo.v-reversed:not(.has-landscape-image) .e-picture {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo.v-reversed:not(.has-landscape-image) .e-picture {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 0%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo.v-reversed:not(.has-landscape-image) .e-picture {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    margin-right: 0%;
  }
}

@media (min-width: 1480px) {
  .c-article-photo.v-reversed:not(.has-landscape-image) .e-picture {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    margin-right: 0%;
  }
}

@media (max-width: 529px) {
  .c-article-photo.v-reversed:not(.has-landscape-image) .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 58.33333%;
    margin-right: 8.33333%;
    text-align: right;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo.v-reversed:not(.has-landscape-image) .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 58.33333%;
    margin-right: 8.33333%;
    text-align: right;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo.v-reversed:not(.has-landscape-image) .e-imagecaption {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
    margin-right: 33.33333%;
    margin-left: 0%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo.v-reversed:not(.has-landscape-image) .e-imagecaption {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 8.33333%;
    margin-left: 0%;
  }
}

@media (min-width: 1480px) {
  .c-article-photo.v-reversed:not(.has-landscape-image) .e-imagecaption {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 8.33333%;
    margin-left: 0%;
  }
}

@media (max-width: 529px) {
  .c-article-photo:not(.v-reversed) .e-content-wrapper {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 25%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo:not(.v-reversed) .e-content-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 25%;
    margin-right: 25%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo:not(.v-reversed) .e-content-wrapper {
    width: 33.33333%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo:not(.v-reversed) .e-content-wrapper {
    width: 25%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-article-photo:not(.v-reversed) .e-content-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 16.66667%;
  }
}

@media (max-width: 529px) {
  .c-article-photo:not(.v-reversed).has-landscape-image .e-picture {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo:not(.v-reversed).has-landscape-image .e-picture {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo:not(.v-reversed).has-landscape-image .e-picture {
    width: 50%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 0%;
    padding-left: 0;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo:not(.v-reversed).has-landscape-image .e-picture {
    width: 58.33333%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    padding-left: 0;
  }
}

@media (min-width: 1480px) {
  .c-article-photo:not(.v-reversed).has-landscape-image .e-picture {
    width: 58.33333%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    padding-left: 0;
  }
}

@media (max-width: 529px) {
  .c-article-photo:not(.v-reversed).has-landscape-image .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 58.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo:not(.v-reversed).has-landscape-image .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 58.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo:not(.v-reversed).has-landscape-image .e-imagecaption {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 33.33333%;
    margin-right: 0%;
  }
}

@media (min-width: 800px) {
  .c-article-photo:not(.v-reversed).has-landscape-image .e-imagecaption {
    text-align: right;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo:not(.v-reversed).has-landscape-image .e-imagecaption {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 41.66667%;
    margin-right: 0%;
  }
}

@media (min-width: 1480px) {
  .c-article-photo:not(.v-reversed).has-landscape-image .e-imagecaption {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 41.66667%;
    margin-right: 0%;
  }
}

@media (max-width: 529px) {
  .c-article-photo:not(.v-reversed):not(.has-landscape-image) .e-picture {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo:not(.v-reversed):not(.has-landscape-image) .e-picture {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo:not(.v-reversed):not(.has-landscape-image) .e-picture {
    width: 41.66667%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 0%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo:not(.v-reversed):not(.has-landscape-image) .e-picture {
    width: 33.33333%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    margin-right: 0%;
  }
}

@media (min-width: 1480px) {
  .c-article-photo:not(.v-reversed):not(.has-landscape-image) .e-picture {
    width: 33.33333%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    margin-right: 0%;
  }
}

@media (max-width: 529px) {
  .c-article-photo:not(.v-reversed):not(.has-landscape-image) .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 58.33333%;
    margin-right: 8.33333%;
    text-align: right;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo:not(.v-reversed):not(.has-landscape-image) .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 58.33333%;
    margin-right: 8.33333%;
    text-align: right;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo:not(.v-reversed):not(.has-landscape-image) .e-imagecaption {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 0%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo:not(.v-reversed):not(.has-landscape-image) .e-imagecaption {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 0%;
  }
}

@media (min-width: 1480px) {
  .c-article-photo:not(.v-reversed):not(.has-landscape-image) .e-imagecaption {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 0%;
  }
}

.c-article-photo.v-first {
  margin-top: 0;
}

@media (max-width: 529px) {
  .c-article-photo.v-first .e-content-wrapper {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-photo.v-first .e-content-wrapper {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-photo.v-first .e-content-wrapper {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-photo.v-first .e-content-wrapper {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 1480px) {
  .c-article-photo.v-first .e-content-wrapper {
    margin-top: 4.16667vw;
  }
}

/*---
title: Article Photo
description: For the page's main content. Richtext can contain <p> and <ul>/<li> tags. With image.
section: Components
---
*/
@media (max-width: 529px) {
  .c-article-picture {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-article-picture {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

.c-article-picture .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-article-picture .e-title:first-child {
  margin-top: 0;
}

.c-article-picture .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-article-picture .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-article-picture .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-article-picture .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-article-picture .e-title::after {
  content: '\2014';
  display: block;
}

.c-article-picture .e-date-wrapper {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-article-picture .e-date-wrapper:first-child {
  margin-top: 0;
}

.c-article-picture .e-date-wrapper:last-child {
  margin-bottom: 0;
}

.c-article-picture .e-date,
.c-article-picture .e-imagecaption-date {
  font-weight: bold;
}

.c-article-picture .e-richtext-wrapper p {
  margin-top: 1.5em;
  margin-bottom: 1.5em;
}

.c-article-picture .e-richtext-wrapper p:first-child {
  margin-top: 0;
}

.c-article-picture .e-richtext-wrapper p:last-child {
  margin-bottom: 0;
}

.c-article-picture .e-richtext-wrapper ul {
  margin: 1.5em 0;
}

.c-article-picture .e-richtext-wrapper li {
  margin-bottom: .5em;
  padding-left: 2.5em;
}

.c-article-picture .e-richtext-wrapper li::before {
  content: '\2014';
  display: inline-block;
  float: left;
  margin-left: -2.5em;
  width: 2.5em;
}

.c-article-picture .e-richtext-wrapper p a,
.c-article-picture .e-richtext-wrapper li a {
  border-bottom: 1px solid currentColor;
  text-decoration: none;
  transition: border-bottom-color 0.05s ease-out;
}

body.no-touch .c-article-picture .e-richtext-wrapper p a:hover, body.no-touch
.c-article-picture .e-richtext-wrapper li a:hover {
  border-bottom-color: transparent;
  text-decoration: none;
  transition: border-bottom-color 0.05s ease-out;
}

body.touch .c-article-picture .e-richtext-wrapper p a:active, body.touch
.c-article-picture .e-richtext-wrapper li a:active {
  border-bottom-color: transparent;
  text-decoration: none;
  transition: border-bottom-color 0.05s ease-out;
}

.c-article-picture .e-richtext-wrapper p b,
.c-article-picture .e-richtext-wrapper p strong,
.c-article-picture .e-richtext-wrapper li b,
.c-article-picture .e-richtext-wrapper li strong {
  font-weight: bold;
}

.c-article-picture .e-richtext-wrapper p i,
.c-article-picture .e-richtext-wrapper p em,
.c-article-picture .e-richtext-wrapper li i,
.c-article-picture .e-richtext-wrapper li em {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  font-style: normal;
}

.c-article-picture .e-richtext-wrapper p i:first-child,
.c-article-picture .e-richtext-wrapper p em:first-child,
.c-article-picture .e-richtext-wrapper li i:first-child,
.c-article-picture .e-richtext-wrapper li em:first-child {
  margin-top: 0;
}

.c-article-picture .e-richtext-wrapper p i:last-child,
.c-article-picture .e-richtext-wrapper p em:last-child,
.c-article-picture .e-richtext-wrapper li i:last-child,
.c-article-picture .e-richtext-wrapper li em:last-child {
  margin-bottom: 0;
}

.c-article-picture .e-richtext-wrapper table {
  border: none;
  margin: 20px 0 40px;
  width: 100%;
}

.c-article-picture .e-richtext-wrapper th {
  background-color: #EFEFEF;
  font-weight: inherit;
  text-transform: uppercase;
}

.c-article-picture .e-richtext-wrapper th,
.c-article-picture .e-richtext-wrapper td {
  padding: 8px 16px;
  white-space: nowrap;
}

.c-article-picture .e-richtext-wrapper td {
  text-align: center;
}

.c-article-picture .e-dropcap-letter {
  font-weight: normal;
  letter-spacing: initial;
  line-height: 1em;
  text-transform: uppercase;
}

@media (max-width: 529px) {
  .c-article-picture .e-dropcap-letter {
    padding: 0 6px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture .e-dropcap-letter {
    padding: 0 12px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture .e-dropcap-letter {
    padding: 0 16px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture .e-dropcap-letter {
    padding: 0 32px;
  }
}

@media (min-width: 1480px) {
  .c-article-picture .e-dropcap-letter {
    padding: 0 32px;
  }
}

@media (max-width: 529px) {
  .c-article-picture .e-dropcap-letter {
    display: none;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture .e-dropcap-letter {
    display: none;
  }
}

@media (max-width: 529px) {
  .c-article-picture .e-dropcap-letter {
    font-size: 88px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture .e-dropcap-letter {
    font-size: 105.6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture .e-dropcap-letter {
    font-size: 127.6px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture .e-dropcap-letter {
    font-size: 162.8px;
  }
}

@media (min-width: 1480px) {
  .c-article-picture .e-dropcap-letter {
    font-size: 162.8px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-article-picture .e-dropcap-letter {
    font-size: calc(88px + (162.8 - 88) * (100vw - 320px) / (1920 - 320));
  }
}

.c-article-picture .e-date,
.c-article-picture .e-metadata {
  margin-bottom: .5em;
}

.c-article-picture .e-title-wrapper {
  position: relative;
}

.c-article-picture .e-date-wrapper,
.c-article-picture .e-richtext-wrapper {
  margin-bottom: 1em;
}

.c-article-picture .e-richtext-wrapper {
  position: relative;
}

.c-article-picture .e-dropcap-letter {
  position: absolute;
  top: 0;
  transform: translateX(-100%);
}

.c-article-picture .e-dropcap-letter + p {
  margin-top: 0;
}

.c-article-picture .e-imagecaption-title {
  margin-bottom: .75em;
}

.c-article-picture .e-imagecaption-title::before {
  content: '\2014 \A \A';
  white-space: pre;
}

@media (max-width: 529px) {
  .c-article-picture .e-picture {
    margin-bottom: 2rem;
    margin-top: 1rem;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture .e-picture {
    margin-bottom: 2rem;
    margin-top: 1rem;
  }
}

@media (min-width: 800px) {
  .c-article-picture .e-dropcap-letter {
    display: none;
  }
}

@media (max-width: 529px) {
  .c-article-picture.v-reversed .e-content-wrapper {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 25%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture.v-reversed .e-content-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 25%;
    margin-right: 25%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture.v-reversed .e-content-wrapper {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture.v-reversed .e-content-wrapper {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-article-picture.v-reversed .e-content-wrapper {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 16.66667%;
    margin-right: 8.33333%;
  }
}

@media (max-width: 529px) {
  .c-article-picture.v-reversed.has-landscape-image .e-picture {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture.v-reversed.has-landscape-image .e-picture {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture.v-reversed.has-landscape-image .e-picture {
    width: 50%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 0%;
    padding-right: 0;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture.v-reversed.has-landscape-image .e-picture {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    padding-right: 0;
  }
}

@media (min-width: 1480px) {
  .c-article-picture.v-reversed.has-landscape-image .e-picture {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    padding-right: 0;
  }
}

@media (max-width: 529px) {
  .c-article-picture.v-reversed.has-landscape-image .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 58.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture.v-reversed.has-landscape-image .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 58.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture.v-reversed.has-landscape-image .e-imagecaption {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
    margin-right: 33.33333%;
    margin-left: 0%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture.v-reversed.has-landscape-image .e-imagecaption {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 41.66667%;
    margin-left: 0%;
  }
}

@media (min-width: 1480px) {
  .c-article-picture.v-reversed.has-landscape-image .e-imagecaption {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 41.66667%;
    margin-left: 0%;
  }
}

@media (max-width: 529px) {
  .c-article-picture.v-reversed:not(.has-landscape-image) .e-picture {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture.v-reversed:not(.has-landscape-image) .e-picture {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture.v-reversed:not(.has-landscape-image) .e-picture {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 0%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture.v-reversed:not(.has-landscape-image) .e-picture {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    margin-right: 0%;
  }
}

@media (min-width: 1480px) {
  .c-article-picture.v-reversed:not(.has-landscape-image) .e-picture {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    margin-right: 0%;
  }
}

@media (max-width: 529px) {
  .c-article-picture.v-reversed:not(.has-landscape-image) .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 58.33333%;
    margin-right: 8.33333%;
    text-align: right;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture.v-reversed:not(.has-landscape-image) .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 58.33333%;
    margin-right: 8.33333%;
    text-align: right;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture.v-reversed:not(.has-landscape-image) .e-imagecaption {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
    margin-right: 33.33333%;
    margin-left: 0%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture.v-reversed:not(.has-landscape-image) .e-imagecaption {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 8.33333%;
    margin-left: 0%;
  }
}

@media (min-width: 1480px) {
  .c-article-picture.v-reversed:not(.has-landscape-image) .e-imagecaption {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 8.33333%;
    margin-left: 0%;
  }
}

@media (max-width: 529px) {
  .c-article-picture:not(.v-reversed) .e-content-wrapper {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 25%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture:not(.v-reversed) .e-content-wrapper {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 25%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture:not(.v-reversed) .e-content-wrapper {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 25%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture:not(.v-reversed) .e-content-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 25%;
    margin-right: 25%;
  }
}

@media (min-width: 1480px) {
  .c-article-picture:not(.v-reversed) .e-content-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 25%;
    margin-right: 25%;
  }
}

@media (max-width: 529px) {
  .c-article-picture:not(.v-reversed).has-landscape-image .e-picture {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture:not(.v-reversed).has-landscape-image .e-picture {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture:not(.v-reversed).has-landscape-image .e-picture {
    width: 50%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 0%;
    padding-left: 0;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture:not(.v-reversed).has-landscape-image .e-picture {
    width: 58.33333%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    padding-left: 0;
  }
}

@media (min-width: 1480px) {
  .c-article-picture:not(.v-reversed).has-landscape-image .e-picture {
    width: 58.33333%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    padding-left: 0;
  }
}

@media (max-width: 529px) {
  .c-article-picture:not(.v-reversed).has-landscape-image .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 58.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture:not(.v-reversed).has-landscape-image .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 58.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture:not(.v-reversed).has-landscape-image .e-imagecaption {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 33.33333%;
    margin-right: 0%;
  }
}

@media (min-width: 800px) {
  .c-article-picture:not(.v-reversed).has-landscape-image .e-imagecaption {
    text-align: right;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture:not(.v-reversed).has-landscape-image .e-imagecaption {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 41.66667%;
    margin-right: 0%;
  }
}

@media (min-width: 1480px) {
  .c-article-picture:not(.v-reversed).has-landscape-image .e-imagecaption {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 41.66667%;
    margin-right: 0%;
  }
}

@media (max-width: 529px) {
  .c-article-picture:not(.v-reversed):not(.has-landscape-image) .e-picture {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture:not(.v-reversed):not(.has-landscape-image) .e-picture {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture:not(.v-reversed):not(.has-landscape-image) .e-picture {
    width: 41.66667%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 0%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture:not(.v-reversed):not(.has-landscape-image) .e-picture {
    width: 33.33333%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    margin-right: 0%;
  }
}

@media (min-width: 1480px) {
  .c-article-picture:not(.v-reversed):not(.has-landscape-image) .e-picture {
    width: 33.33333%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 0%;
    margin-right: 0%;
  }
}

@media (max-width: 529px) {
  .c-article-picture:not(.v-reversed):not(.has-landscape-image) .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 58.33333%;
    margin-right: 8.33333%;
    text-align: right;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture:not(.v-reversed):not(.has-landscape-image) .e-imagecaption {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 58.33333%;
    margin-right: 8.33333%;
    text-align: right;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture:not(.v-reversed):not(.has-landscape-image) .e-imagecaption {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 0%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture:not(.v-reversed):not(.has-landscape-image) .e-imagecaption {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 0%;
  }
}

@media (min-width: 1480px) {
  .c-article-picture:not(.v-reversed):not(.has-landscape-image) .e-imagecaption {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 0%;
  }
}

.c-article-picture.v-first {
  margin-top: 0;
}

@media (max-width: 529px) {
  .c-article-picture.v-first .e-content-wrapper {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-picture.v-first .e-content-wrapper {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-picture.v-first .e-content-wrapper {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-picture.v-first .e-content-wrapper {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 1480px) {
  .c-article-picture.v-first .e-content-wrapper {
    margin-top: 4.16667vw;
  }
}

/*---
title: Article Text
description: For the page's main content. Richtext can contain <p> and <ul>/<li> tags.
section: Components
---
*/
.c-article-text {
  overflow: hidden;
}

@media (max-width: 529px) {
  .c-article-text {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-text {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-text {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-text {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-article-text {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

.c-article-text .e-navigate {
  font-size: 0;
  height: 32px;
  position: absolute;
  width: 32px;
  z-index: 100;
}

.c-article-text .e-navigate .e-span {
  transform: translateY(-100%);
}

.c-article-text .e-navigate.v-forward {
  right: -10%;
}

.c-article-text .e-navigate.v-forward .e-span::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 32px;
  vertical-align: middle;
  content: "";
  color: #fff;
}

.c-article-text .e-navigate.v-back {
  left: -10%;
}

.c-article-text .e-navigate.v-back .e-span::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 32px;
  vertical-align: middle;
  content: "";
  color: #fff;
}

.c-article-text .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

@media (max-width: 529px) {
  .c-article-text .e-title {
    width: 50%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 41.66667%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-text .e-title {
    width: 50%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 25%;
    margin-right: 25%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-text .e-title {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-text .e-title {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 25%;
  }
}

@media (min-width: 1480px) {
  .c-article-text .e-title {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 25%;
  }
}

.c-article-text .e-title:first-child {
  margin-top: 0;
}

.c-article-text .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-article-text .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-text .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-text .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-text .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-article-text .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-article-text .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-article-text .e-title::after {
  content: '\2014';
  display: block;
}

.c-article-text .e-date-wrapper {
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

@media (max-width: 529px) {
  .c-article-text .e-date-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 41.66667%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-text .e-date-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 25%;
    margin-right: 25%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-text .e-date-wrapper {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-text .e-date-wrapper {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .c-article-text .e-date-wrapper {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.c-article-text .e-date,
.c-article-text .e-imagecaption-date {
  font-weight: bold;
}

@media (max-width: 529px) {
  .c-article-text .e-richtext-wrapper {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 25%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-text .e-richtext-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 25%;
    margin-right: 25%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-text .e-richtext-wrapper {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 25%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-text .e-richtext-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 25%;
    margin-right: 25%;
  }
}

@media (min-width: 1480px) {
  .c-article-text .e-richtext-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 25%;
    margin-right: 25%;
  }
}

.c-article-text .e-richtext-wrapper p {
  margin-top: 1.5em;
  margin-bottom: 1.5em;
}

.c-article-text .e-richtext-wrapper p:first-child {
  margin-top: 0;
}

.c-article-text .e-richtext-wrapper p:last-child {
  margin-bottom: 0;
}

.c-article-text .e-richtext-wrapper ul {
  margin: 1.5em 0;
}

.c-article-text .e-richtext-wrapper li {
  margin-bottom: .5em;
  padding-left: 2.5em;
}

.c-article-text .e-richtext-wrapper li::before {
  content: '\2014';
  display: inline-block;
  float: left;
  margin-left: -2.5em;
  width: 2.5em;
}

.c-article-text .e-richtext-wrapper p a,
.c-article-text .e-richtext-wrapper li a {
  border-bottom: 1px solid currentColor;
  text-decoration: none;
  transition: border-bottom-color 0.05s ease-out;
}

body.no-touch .c-article-text .e-richtext-wrapper p a:hover, body.no-touch
.c-article-text .e-richtext-wrapper li a:hover {
  border-bottom-color: transparent;
  text-decoration: none;
  transition: border-bottom-color 0.05s ease-out;
}

body.touch .c-article-text .e-richtext-wrapper p a:active, body.touch
.c-article-text .e-richtext-wrapper li a:active {
  border-bottom-color: transparent;
  text-decoration: none;
  transition: border-bottom-color 0.05s ease-out;
}

.c-article-text .e-richtext-wrapper p b,
.c-article-text .e-richtext-wrapper p strong,
.c-article-text .e-richtext-wrapper li b,
.c-article-text .e-richtext-wrapper li strong {
  font-weight: bold;
}

.c-article-text .e-richtext-wrapper p i,
.c-article-text .e-richtext-wrapper p em,
.c-article-text .e-richtext-wrapper li i,
.c-article-text .e-richtext-wrapper li em {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  font-style: normal;
}

.c-article-text .e-richtext-wrapper p i:first-child,
.c-article-text .e-richtext-wrapper p em:first-child,
.c-article-text .e-richtext-wrapper li i:first-child,
.c-article-text .e-richtext-wrapper li em:first-child {
  margin-top: 0;
}

.c-article-text .e-richtext-wrapper p i:last-child,
.c-article-text .e-richtext-wrapper p em:last-child,
.c-article-text .e-richtext-wrapper li i:last-child,
.c-article-text .e-richtext-wrapper li em:last-child {
  margin-bottom: 0;
}

.c-article-text .e-richtext-wrapper table {
  border: none;
  margin: 20px 0 40px;
  width: 100%;
}

.c-article-text .e-richtext-wrapper th {
  background-color: #EFEFEF;
  font-weight: inherit;
  text-transform: uppercase;
}

.c-article-text .e-richtext-wrapper th,
.c-article-text .e-richtext-wrapper td {
  padding: 8px 16px;
  white-space: nowrap;
}

.c-article-text .e-richtext-wrapper td {
  text-align: center;
}

.c-article-text .e-dropcap-letter {
  font-weight: normal;
  letter-spacing: initial;
  line-height: 1em;
  text-transform: uppercase;
}

@media (max-width: 529px) {
  .c-article-text .e-dropcap-letter {
    padding: 0 6px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-text .e-dropcap-letter {
    padding: 0 12px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-text .e-dropcap-letter {
    padding: 0 16px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-text .e-dropcap-letter {
    padding: 0 32px;
  }
}

@media (min-width: 1480px) {
  .c-article-text .e-dropcap-letter {
    padding: 0 32px;
  }
}

@media (max-width: 529px) {
  .c-article-text .e-dropcap-letter {
    display: none;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-text .e-dropcap-letter {
    display: none;
  }
}

@media (max-width: 529px) {
  .c-article-text .e-dropcap-letter {
    font-size: 88px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-text .e-dropcap-letter {
    font-size: 105.6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-text .e-dropcap-letter {
    font-size: 127.6px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-text .e-dropcap-letter {
    font-size: 162.8px;
  }
}

@media (min-width: 1480px) {
  .c-article-text .e-dropcap-letter {
    font-size: 162.8px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-article-text .e-dropcap-letter {
    font-size: calc(88px + (162.8 - 88) * (100vw - 320px) / (1920 - 320));
  }
}

@media (max-width: 529px) {
  .c-article-text .e-backlink-wrapper {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 25%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-text .e-backlink-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 25%;
    margin-right: 25%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-text .e-backlink-wrapper {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 25%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-text .e-backlink-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 25%;
    margin-right: 25%;
  }
}

@media (min-width: 1480px) {
  .c-article-text .e-backlink-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 25%;
    margin-right: 25%;
  }
}

.c-article-text .e-backlink {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  display: inline-block;
  margin-bottom: 2em;
}

.c-article-text .e-backlink:first-child {
  margin-top: 0;
}

.c-article-text .e-backlink:last-child {
  margin-bottom: 0;
}

.c-article-text .e-backlink .e-span {
  display: inline-block;
  margin-left: .5em;
}

.c-article-text .e-backlink::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 22px;
  vertical-align: middle;
  content: "";
  margin-right: .25em;
  vertical-align: bottom;
}

.c-article-text .e-backlink .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-article-text .e-backlink .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-article-text .e-backlink.is-active .e-span::after {
  width: 100%;
}

.c-article-text .e-backlink.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-article-text .e-backlink:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

body.touch .c-article-text .e-backlink:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

.c-article-text .e-outer-constrainer {
  position: relative;
}

.c-article-text .e-date,
.c-article-text .e-metadata {
  margin-bottom: .5em;
}

.c-article-text .e-title-wrapper {
  position: relative;
}

.c-article-text .e-date-wrapper,
.c-article-text .e-richtext-wrapper {
  margin-bottom: 1em;
}

.c-article-text .e-richtext-wrapper {
  position: relative;
}

.c-article-text .e-navigation {
  height: 0;
  left: 0;
  overflow: visible;
  position: absolute;
  top: 0;
  width: 100%;
}

.c-article-text .c-picture {
  margin-bottom: 2rem;
  margin-top: 1rem;
}

.c-article-text .e-dropcap-letter {
  position: absolute;
  top: 0;
  transform: translateX(-100%);
}

.c-article-text .e-dropcap-letter + p {
  margin-top: 0;
}

.c-article-text .e-imagecaption-title {
  margin-bottom: .75em;
}

.c-article-text .e-imagecaption-title::before {
  content: '\2014 \A \A';
  white-space: pre;
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-article-text .e-richtext-wrapper.has-dropcap {
    min-height: 6em;
  }
}

@media (min-width: 800px) {
  .c-article-text .e-date-wrapper {
    margin-top: 0;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-text .e-richtext-wrapper.has-dropcap {
    min-height: 8em;
  }
}

@media (min-width: 1480px) {
  .c-article-text .e-richtext-wrapper.has-dropcap {
    min-height: 8em;
  }
}

@media (min-width: 800px) {
  .c-article-text.v-default .e-richtext-wrapper {
    column-count: 2;
  }
  .c-article-text.v-default .e-richtext-wrapper > .e-dropcap-letter + p {
    break-inside: avoid-column;
    column-break-inside: avoid;
    page-break-inside: avoid;
    display: table;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-article-text.v-default .e-richtext-wrapper {
    column-gap: 16px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-article-text.v-default .e-richtext-wrapper {
    column-gap: 32px;
  }
}

@media (min-width: 1480px) {
  .c-article-text.v-default .e-richtext-wrapper {
    column-gap: 32px;
  }
}

/*---
title: Background image
description: Enables responsive, retina background-images with focalpoints and lazy loading
section: Elements
---
*/
.c-background-image {
  bottom: 0;
  left: 0;
  opacity: 1;
  position: absolute;
  right: 0;
  top: 0;
  transition: opacity .1s ease-out;
  z-index: 1;
}

.c-background-image ~ *:not(.c-background-image) {
  position: relative;
  z-index: 2;
}

.c-background-image.is-hidden {
  opacity: 0;
}

.c-background-image.v-page-backdrop::after {
  background-color: rgba(0, 0, 0, 0.75);
  content: '';
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.has-background-image {
  overflow: hidden;
  position: relative;
}

/*---
title: Banner
description: A big interrupt block with some text and a link. Can contain either a picture or a background image.
section: Components
---
*/
@media (max-width: 529px) {
  .c-banner .e-inner-constrainer {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-banner .e-inner-constrainer {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-banner .e-inner-constrainer {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-banner .e-inner-constrainer {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-banner .e-inner-constrainer {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (max-width: 529px) {
  .c-banner .e-content-wrapper {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-banner .e-content-wrapper {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-banner .e-content-wrapper {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-banner .e-content-wrapper {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-banner .e-content-wrapper {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

@media (max-width: 529px) {
  .c-banner .c-picture,
  .c-banner .e-spacer-container {
    width: 41.66667%;
    float: right;
    float: right;
    padding-left: 3px;
    padding-right: 3px;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-banner .c-picture,
  .c-banner .e-spacer-container {
    width: 41.66667%;
    float: right;
    float: right;
    padding-left: 6px;
    padding-right: 6px;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-banner .c-picture,
  .c-banner .e-spacer-container {
    width: 33.33333%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-banner .c-picture,
  .c-banner .e-spacer-container {
    width: 33.33333%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-banner .c-picture,
  .c-banner .e-spacer-container {
    width: 33.33333%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 8.33333%;
  }
}

.c-banner .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-banner .e-title:first-child {
  margin-top: 0;
}

.c-banner .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-banner .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-banner .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-banner .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-banner .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-banner .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-banner .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-banner .e-title::after {
  content: '\2014';
  display: block;
}

@media (max-width: 529px) {
  .c-banner .e-text {
    width: 33.33333%;
    float: left;
    float: left;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-banner .e-text {
    width: 33.33333%;
    float: left;
    float: left;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-banner .e-text {
    width: 25%;
    float: left;
    float: left;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-banner .e-text {
    width: 25%;
    float: left;
    float: left;
  }
}

@media (min-width: 1480px) {
  .c-banner .e-text {
    width: 25%;
    float: left;
    float: left;
  }
}

@media (max-width: 529px) {
  .c-banner .e-text {
    float: none;
    margin: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-banner .e-text {
    float: none;
    margin: 0;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-banner .e-text {
    float: none;
    margin: 0;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-banner .e-text {
    float: none;
    margin: 0;
  }
}

@media (min-width: 1480px) {
  .c-banner .e-text {
    float: none;
    margin: 0;
  }
}

.c-banner .e-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-banner .e-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-banner .e-link.is-active .e-span::after {
  width: 0;
}

.c-banner .e-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-banner .e-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-banner .e-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.c-banner .e-inner-constrainer {
  background-color: #ededed;
}

.c-banner .e-wrapper {
  position: relative;
}

.c-banner .e-wrapper::after {
  clear: both;
  content: '';
  display: table;
}

.c-banner .e-spacer {
  padding-bottom: 151.34%;
}

.c-banner .e-link {
  bottom: 0;
  position: absolute;
}

.c-banner .e-text {
  bottom: 3em;
  position: absolute;
}

.c-banner.v-dark {
  color: #fff;
}

/*---
title: Billboard
description: A big interrupt block with a title, some text and a link.
section: Components
---
*/
@media (max-width: 529px) {
  .c-billboard .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-billboard .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-billboard .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-billboard .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-billboard .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (max-width: 529px) {
  .c-billboard .e-title-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-billboard .e-title-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-billboard .e-title-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-billboard .e-title-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-billboard .e-title-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

.c-billboard .e-title {
  font-weight: normal;
  letter-spacing: 3px;
  line-height: 1em;
  text-transform: uppercase;
}

@media (max-width: 529px) {
  .c-billboard .e-title {
    font-size: 30px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-billboard .e-title {
    font-size: 50px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-billboard .e-title {
    font-size: 70px;
  }
}

@media (min-width: 1480px) {
  .c-billboard .e-title {
    font-size: 90px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-billboard .e-title {
    font-size: calc(30px + (90 - 30) * (100vw - 320px) / (1920 - 320));
  }
}

.c-billboard .e-subtitle,
.c-billboard .e-leading {
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
}

@media (max-width: 529px) {
  .c-billboard .e-subtitle,
  .c-billboard .e-leading {
    font-size: 10px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-billboard .e-subtitle,
  .c-billboard .e-leading {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-billboard .e-subtitle,
  .c-billboard .e-leading {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-billboard .e-subtitle,
  .c-billboard .e-leading {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .c-billboard .e-subtitle,
  .c-billboard .e-leading {
    font-size: 20px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-billboard .e-subtitle,
  .c-billboard .e-leading {
    font-size: calc(10px + (20 - 10) * (100vw - 320px) / (1920 - 320));
  }
}

.c-billboard .e-link .e-span,
.c-billboard .e-morelink .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-billboard .e-link .e-span::after,
.c-billboard .e-morelink .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-billboard .e-link.is-active .e-span::after,
.c-billboard .e-morelink.is-active .e-span::after {
  width: 0;
}

.c-billboard .e-link.is-disabled,
.c-billboard .e-morelink.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-billboard .e-link:not(.is-disabled):hover .e-span::after, body.no-touch
.c-billboard .e-morelink:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-billboard .e-link:not(.is-disabled):active .e-span::after, body.touch
.c-billboard .e-morelink:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.c-billboard .e-item {
  float: left;
}

@media (max-width: 529px) {
  .c-billboard .e-item {
    float: left;
    margin-right: 6px;
    margin-top: 6px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-billboard .e-item {
    float: left;
    margin-right: 12px;
    margin-top: 12px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-billboard .e-item {
    float: left;
    margin-right: 16px;
    margin-top: 16px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-billboard .e-item {
    float: left;
    margin-right: 32px;
    margin-top: 32px;
  }
}

@media (min-width: 1480px) {
  .c-billboard .e-item {
    float: left;
    margin-right: 32px;
    margin-top: 32px;
  }
}

@media (max-width: 529px) {
  .c-billboard .e-item {
    width: calc((100% - (3px * 6)) / 4);
  }
  .c-billboard .e-item:last-child {
    margin-right: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-billboard .e-item {
    width: calc((100% - (6px * 6)) / 4);
  }
  .c-billboard .e-item:last-child {
    margin-right: 0;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-billboard .e-item {
    width: calc((100% - (8px * 6)) / 4);
  }
  .c-billboard .e-item:last-child {
    margin-right: 0;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-billboard .e-item {
    width: calc((100% - (16px * 8)) / 5);
  }
}

@media (min-width: 1480px) {
  .c-billboard .e-item {
    width: calc((100% - (16px * 8)) / 5);
  }
}

.c-billboard .e-sidetext {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-billboard .e-sidetext:first-child {
  margin-top: 0;
}

.c-billboard .e-sidetext:last-child {
  margin-bottom: 0;
}

.c-billboard .e-content-wrapper {
  padding: 1rem;
  position: relative;
}

.c-billboard .e-content-wrapper.has-background-image {
  background-color: transparent !important;
}

.c-billboard .e-title-wrapper {
  text-align: center;
}

.c-billboard .e-title {
  margin-top: 0.25em;
  margin-bottom: 0.25em;
}

.c-billboard .e-title:first-child {
  margin-top: 0;
}

.c-billboard .e-title:last-child {
  margin-bottom: 0;
}

.c-billboard .e-subtitle {
  font-weight: bold;
}

.c-billboard .e-sub-content {
  left: 1rem;
  top: 1rem;
}

.c-billboard .e-link {
  bottom: 1rem;
  position: absolute;
  right: 1rem;
}

.c-billboard .e-morelink {
  display: inline-block;
  margin-top: 1rem;
}

.c-billboard .e-items::after {
  clear: both;
  content: '';
  display: table;
}

.c-billboard .c-button {
  line-height: 32px;
}

.c-billboard .e-sidetext {
  bottom: 0;
  display: inline-block;
  float: right;
  margin: 0;
  position: absolute;
  right: 1%;
  transform: rotate(90deg);
  transform-origin: top left;
}

.c-billboard .e-sidetext .e-span {
  left: 0;
  position: absolute;
  top: 50%;
  transform: translate(calc(-100% - 40px), 0%) rotate(0deg);
  white-space: nowrap;
}

.c-billboard .e-sidetext .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  position: absolute;
  right: -110px;
  top: .5em;
  width: 100px;
}

.c-billboard .c-button {
  border-color: currentColor;
  color: currentColor;
}

body.no-touch .c-billboard .c-button:hover {
  text-shadow: none;
}

body.touch .c-billboard .c-button:active {
  text-shadow: none;
}

body.no-touch .c-billboard .c-button:active,
body.no-touch .c-billboard .c-button:focus {
  text-shadow: none;
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-billboard .e-morelink {
    bottom: 0;
    position: absolute;
    right: 1rem;
  }
}

@media (min-width: 1480px) {
  .c-billboard .e-morelink {
    bottom: 0;
    position: absolute;
    right: 1rem;
  }
}

.c-billboard.v-default .e-content-wrapper {
  background-color: #fff;
  color: #000;
}

.c-billboard.v-default .e-title,
.c-billboard.v-default .e-leading,
.c-billboard.v-default .e-link,
.c-billboard.v-default .e-sidetext,
.c-billboard.v-default .c-button {
  text-shadow: 0 0 3px rgba(255, 255, 255, 0.15);
}

.c-billboard.v-dark .e-content-wrapper {
  background-color: #000;
  color: #fff;
}

.c-billboard.v-dark .e-title,
.c-billboard.v-dark .e-leading,
.c-billboard.v-dark .e-link,
.c-billboard.v-dark .e-sidetext,
.c-billboard.v-dark .c-button {
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
}

/*---
title: Button
description: Clickedyclick.
section: Elements
---
*/
.c-button {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  border: 1px solid #000;
  color: #000;
  display: inline-block;
  line-height: 24px;
  margin-bottom: 0;
  margin-top: 0;
  min-height: 40px;
  min-width: 120px;
  padding: 4px 15px;
  text-align: center;
  transition: background-color 0.15s ease-out, border-color 0.15s ease-out, color 0.15s ease-out;
  vertical-align: middle;
  min-width: 200px;
  text-align: center;
}

.c-button:first-child {
  margin-top: 0;
}

.c-button:last-child {
  margin-bottom: 0;
}

body.no-touch .c-button:hover {
  background-color: #000;
  border-color: #000;
  color: #fff;
}

body.touch .c-button:active {
  background-color: #000;
  border-color: #000;
  color: #fff;
}

body.no-touch .c-button:active,
body.no-touch .c-button:focus {
  background-color: #000;
  border-color: #000;
  color: #fff;
}

.c-button.v-inverted {
  border-color: #fff;
  color: #fff;
}

body.no-touch .c-button.v-inverted:hover {
  background-color: #fff;
  border-color: #fff;
  color: #000;
}

body.touch .c-button.v-inverted:active {
  background-color: #fff;
  border-color: #fff;
  color: #000;
}

body.no-touch .c-button.v-inverted:active,
body.no-touch .c-button.v-inverted:focus {
  background-color: #fff;
  border-color: #fff;
  color: #000;
}

.c-button .e-span {
  display: inline-block;
  vertical-align: sub;
}

.c-button.e-buy-button, .c-button.e-enquire-button {
  padding: 5px 15px;
}

.c-call-to-action {
  text-shadow: 0 0 3px rgba(255, 255, 255, 0.15);
}

@media (max-width: 529px) {
  .c-call-to-action {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-call-to-action {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-call-to-action {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-call-to-action {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-call-to-action {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

.c-call-to-action .e-title-wrapper {
  text-align: center;
}

.c-call-to-action .e-title:before {
  font-size: 2em;
  margin-bottom: .6em;
}

@media (max-width: 529px) {
  .c-call-to-action .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-call-to-action .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-call-to-action .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-call-to-action .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-call-to-action .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

.c-call-to-action .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
}

.c-call-to-action .e-title::before {
  content: '\2014';
  display: block;
}

.c-call-to-action .e-title:first-child {
  margin-top: 0;
}

.c-call-to-action .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-call-to-action .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-call-to-action .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-call-to-action .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-call-to-action .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-call-to-action .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-call-to-action .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-call-to-action .e-subtitle {
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
  margin-top: 2.5em;
  margin-bottom: 2.5em;
}

@media (max-width: 529px) {
  .c-call-to-action .e-subtitle {
    font-size: 10px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-call-to-action .e-subtitle {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-call-to-action .e-subtitle {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-call-to-action .e-subtitle {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .c-call-to-action .e-subtitle {
    font-size: 20px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-call-to-action .e-subtitle {
    font-size: calc(10px + (20 - 10) * (100vw - 320px) / (1920 - 320));
  }
}

.c-call-to-action .e-subtitle:first-child {
  margin-top: 0;
}

.c-call-to-action .e-subtitle:last-child {
  margin-bottom: 0;
}

/*---
title: Carousel Grid
description: Grid of items. Each item is a carousel of various images
section: Components
---
*/
.c-carousel-grid {
  position: relative;
}

.c-carousel-grid .c-picture + .c-picture {
  cursor: pointer;
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: opacity 0.35s ease-out;
  width: 100%;
}

.c-carousel-grid .c-picture:hover {
  opacity: 1.0;
}

.c-carousel-grid .e-title-wrapper {
  transform: rotate(90deg);
  white-space: nowrap;
}

@media (max-width: 529px) {
  .c-carousel-grid .e-title-wrapper {
    width: 8.33333%;
    float: right;
    float: right;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-carousel-grid .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-carousel-grid .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-carousel-grid .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .c-carousel-grid .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.c-carousel-grid .e-title-wrapper br {
  width: 1en;
}

@media (max-width: 529px) {
  .c-carousel-grid .e-title-wrapper {
    padding-left: 0;
    transform-origin: 3px 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-carousel-grid .e-title-wrapper {
    padding-left: 0;
    transform-origin: 6px 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-carousel-grid .e-title-wrapper {
    padding-left: 0;
    transform-origin: 8px 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-carousel-grid .e-title-wrapper {
    padding-left: 0;
    transform-origin: 16px 16px;
  }
}

@media (min-width: 1480px) {
  .c-carousel-grid .e-title-wrapper {
    padding-left: 0;
    transform-origin: 16px 16px;
  }
}

.c-carousel-grid .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-carousel-grid .e-title:first-child {
  margin-top: 0;
}

.c-carousel-grid .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-carousel-grid .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-carousel-grid .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-carousel-grid .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-carousel-grid .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-carousel-grid .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-carousel-grid .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-carousel-grid .e-title::after {
  content: '\2014';
  display: block;
}

.c-carousel-grid .e-items::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 2em;
  vertical-align: middle;
  content: "";
  left: 50%;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translateX(50%) translateY(50%);
  transition: transform 0.35s ease-out, opacity 0.35s ease-out, z-index 0s linear;
  z-index: -1;
  bottom: 0;
  top: auto;
}

.c-carousel-grid .e-items.is-loading::before {
  animation: ampersandspinner 1s ease-in-out infinite;
  opacity: 1;
  transform: translateX(50%) translateY(50%);
  transition: transform 0.35s ease-out, opacity 0.35s ease-out, z-index 0s linear 0.5s;
  z-index: 99;
}

@media (max-width: 529px) {
  .c-carousel-grid .e-item {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-carousel-grid .e-item {
    width: 37.5%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
  .c-carousel-grid .e-item:nth-child(odd) {
    margin-left: 8.33333%;
  }
  .c-carousel-grid .e-item:nth-child(2n+3) {
    clear: left;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-carousel-grid .e-item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
  .c-carousel-grid .e-item:nth-child(3n+1) {
    margin-left: 8.33333%;
  }
  .c-carousel-grid .e-item:nth-child(3n+4) {
    clear: left;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-carousel-grid .e-item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .c-carousel-grid .e-item:nth-child(3n+1) {
    margin-left: 8.33333%;
  }
  .c-carousel-grid .e-item:nth-child(3n+4) {
    clear: left;
  }
}

@media (min-width: 1480px) {
  .c-carousel-grid .e-item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .c-carousel-grid .e-item:nth-child(3n+1) {
    margin-left: 8.33333%;
  }
  .c-carousel-grid .e-item:nth-child(3n+4) {
    clear: left;
  }
}

@media (max-width: 529px) {
  .c-carousel-grid .e-item.v-see-more .e-picture-container {
    display: none;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-carousel-grid .e-item.v-see-more:nth-child(odd) .e-picture-container {
    display: none;
  }
  .c-carousel-grid .e-item.v-see-more:nth-child(even) .e-picture-container {
    opacity: 0;
  }
  .c-carousel-grid .e-item.v-see-more:nth-child(even) .e-item-link {
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -ms-flex-pack: center;
        justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
  }
}

@media (min-width: 800px) {
  .c-carousel-grid .e-item.v-see-more:nth-child(3n+4) .e-picture-container {
    display: none;
  }
  .c-carousel-grid .e-item.v-see-more:not(:nth-child(3n+4)) .e-picture-container {
    opacity: 0;
  }
  .c-carousel-grid .e-item.v-see-more:not(:nth-child(3n+4)) .e-item-link {
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -ms-flex-pack: center;
        justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
  }
}

.c-carousel-grid .e-item.is-sold-out {
  background-color: #fff;
  bottom: 12%;
  color: #000;
  display: inline-block;
  font-size: inherit;
  line-height: inherit;
  left: 50%;
  letter-spacing: 0.94px;
  padding: 10% 12% 8%;
  position: absolute;
  text-align: center;
  text-transform: uppercase;
  top: auto;
  transform: translateX(-50%);
  width: auto;
  z-index: 100;
}

.c-carousel-grid .e-item.is-sold-out::after {
  content: '\2015';
  display: block;
}

.c-carousel-grid .e-item-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-carousel-grid .e-item-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-carousel-grid .e-item-link.is-active .e-span::after {
  width: 0;
}

.c-carousel-grid .e-item-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-carousel-grid .e-item-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-carousel-grid .e-item-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.c-carousel-grid .e-sidetext {
  font-size: .77rem;
  font-weight: normal;
  letter-spacing: initial;
  line-height: 1.5em;
  text-transform: uppercase;
  display: inline-block;
  height: 0;
  position: absolute;
  text-align: right;
  top: 0;
  transform: translateX(-100%) rotate(-90deg);
  transform-origin: top right;
  width: auto;
}

.c-carousel-grid .e-sidetext .e-span {
  display: block;
  transform: translateY(100%);
}

@media (max-width: 529px) {
  .c-carousel-grid .e-sidetext {
    left: 3px;
  }
  .c-carousel-grid .e-sidetext .e-span {
    height: 12px;
    line-height: 12px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-carousel-grid .e-sidetext {
    left: 6px;
  }
  .c-carousel-grid .e-sidetext .e-span {
    height: 24px;
    line-height: 24px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-carousel-grid .e-sidetext {
    left: 8px;
  }
  .c-carousel-grid .e-sidetext .e-span {
    height: 32px;
    line-height: 32px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-carousel-grid .e-sidetext {
    left: 16px;
  }
  .c-carousel-grid .e-sidetext .e-span {
    height: 64px;
    line-height: 64px;
  }
}

@media (min-width: 1480px) {
  .c-carousel-grid .e-sidetext {
    left: 16px;
  }
  .c-carousel-grid .e-sidetext .e-span {
    height: 64px;
    line-height: 64px;
  }
}

@media (min-width: 530px) {
  .c-carousel-grid .e-sidetext .e-span {
    transform: translateY(90%);
  }
}

@media (min-width: 800px) {
  .c-carousel-grid .e-sidetext .e-span {
    transform: translateY(120%);
  }
}

@media (min-width: 1180px) {
  .c-carousel-grid .e-sidetext .e-span {
    transform: translateY(70%);
  }
}

.c-carousel-grid .e-inner-constrainer {
  overflow: hidden;
}

.c-carousel-grid .e-title-wrapper {
  height: 0;
  position: relative;
}

.c-carousel-grid .e-title {
  bottom: 0;
  left: 0;
  position: absolute;
}

.c-carousel-grid .e-items {
  margin-bottom: -2em;
}

.c-carousel-grid .e-items::after {
  clear: both;
  content: '';
  display: table;
}

.c-carousel-grid .e-item {
  margin-bottom: 2em;
  opacity: 1;
  transition: opacity 0.15s ease-out;
}

.c-carousel-grid .e-item.is-loading {
  opacity: 0;
}

.c-concept-grid .c-grid .e-item-title {
  margin-bottom: 0;
}

/*---
title: Concept carrousel (using iDangerous Swiper)
description: A simple carrousel for grid items (picture, title, link).
section: Components
---
*/
.c-content-carrousel {
  overflow: hidden;
  position: relative;
}

@media (max-width: 529px) {
  .c-content-carrousel {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-content-carrousel {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-content-carrousel {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-content-carrousel {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-content-carrousel {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

.c-content-carrousel .e-navigate {
  font-size: 0;
  height: 32px;
  position: absolute;
  width: 32px;
  z-index: 100;
}

.c-content-carrousel .e-navigate .e-span {
  transform: translateY(-100%);
}

.c-content-carrousel .e-navigate.v-forward {
  right: -10%;
}

.c-content-carrousel .e-navigate.v-forward .e-span::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 32px;
  vertical-align: middle;
  content: "";
  color: #fff;
}

.c-content-carrousel .e-navigate.v-back {
  left: -10%;
}

.c-content-carrousel .e-navigate.v-back .e-span::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 32px;
  vertical-align: middle;
  content: "";
  color: #fff;
}

.c-content-carrousel.v-gallery {
  padding: 30px 0;
  background-color: #EFEFEF;
}

@media (min-width: 800px) {
  .c-content-carrousel.v-gallery {
    padding: 70px 0;
  }
}

@media (max-width: 529px) {
  .c-content-carrousel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-content-carrousel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-content-carrousel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-content-carrousel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-content-carrousel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

.c-content-carrousel .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-content-carrousel .e-title:first-child {
  margin-top: 0;
}

.c-content-carrousel .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-content-carrousel .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-content-carrousel .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-content-carrousel .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-content-carrousel .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-content-carrousel .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-content-carrousel .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-content-carrousel .e-title::after {
  content: '\2014';
  display: block;
}

.c-content-carrousel .swiper-container {
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.c-content-carrousel .swiper-container-no-flexbox .swiper-slide {
  float: left;
}

.c-content-carrousel .swiper-container-vertical > .swiper-wrapper {
  -ms-flex-direction: column;
      flex-direction: column;
}

.c-content-carrousel .swiper-wrapper {
  box-sizing: content-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  position: relative;
  transform-style: preserve-3d;
  transition-property: transform;
  width: 100%;
  z-index: 1;
}

.c-content-carrousel .swiper-container-android .swiper-slide,
.c-content-carrousel .swiper-wrapper {
  transform: translate3d(0, 0, 0);
}

.c-content-carrousel .swiper-container-multirow > .swiper-wrapper {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.c-content-carrousel .swiper-container-free-mode > .swiper-wrapper {
  margin: 0 auto;
  transition-timing-function: ease-out;
}

.c-content-carrousel .swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 100%;
  position: relative;
  transform-style: preserve-3d;
  width: 100%;
}

.c-content-carrousel .swiper-container .swiper-notification {
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  z-index: -1000;
}

.c-content-carrousel .swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
      touch-action: pan-y;
}

.c-content-carrousel .swiper-wp8-vertical {
  -ms-touch-action: pan-x;
      touch-action: pan-x;
}

.c-content-carrousel .swiper-container {
  overflow: visible;
  position: relative;
}

.c-content-carrousel .swiper-wrapper {
  will-change: transform;
}

.c-content-carrousel .swiper-slide-active,
.c-content-carrousel .swiper-slide-active + .swiper-slide,
.c-content-carrousel .swiper-slide-active + .swiper-slide + .swiper-slide {
  opacity: 1;
}

.c-content-carrousel .swiper-slide-active .c-hit-target,
.c-content-carrousel .swiper-slide-active + .swiper-slide .c-hit-target,
.c-content-carrousel .swiper-slide-active + .swiper-slide + .swiper-slide .c-hit-target {
  display: block;
}

.c-content-carrousel .e-swiper-slide, .c-content-carrousel .e-swiper-slide > * {
  cursor: grab;
}

.c-content-carrousel .e-navigate {
  background-color: rgba(255, 255, 255, 0.5);
  height: 100%;
}

.c-content-carrousel .e-navigate.v-forward {
  transform: translateY(-100%);
}

.c-content-carrousel .e-navigate.v-back {
  transform: translateY(-100%);
}

.c-content-carrousel .e-navigate .e-span {
  position: relative;
  top: 40%;
}

.c-content-carrousel .e-navigate .e-span::before, .c-content-carrousel .e-navigate .e-span::after {
  font-size: 24px !important;
  padding: 4px;
}

.c-content-carrousel .e-item-title {
  margin-top: 2em;
  text-transform: uppercase;
  word-wrap: break-word;
}

@media (max-width: 529px) {
  .c-content-carrousel .e-navigation {
    display: none;
  }
}

@media (max-width: 529px) {
  .c-content-carrousel .e-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
  .c-content-carrousel .e-title {
    padding: 0 3px;
  }
  .c-content-carrousel .swiper-slide {
    padding: 0 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-content-carrousel .e-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
  .c-content-carrousel .e-title {
    padding: 0 6px;
  }
  .c-content-carrousel .swiper-slide {
    padding: 0 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-content-carrousel .e-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
  .c-content-carrousel .e-title {
    padding: 0 8px;
  }
  .c-content-carrousel .swiper-slide {
    padding: 0 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-content-carrousel .e-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
  .c-content-carrousel .e-title {
    padding: 0 16px;
  }
  .c-content-carrousel .swiper-slide {
    padding: 0 16px;
  }
}

@media (min-width: 1480px) {
  .c-content-carrousel .e-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
  .c-content-carrousel .e-title {
    padding: 0 16px;
  }
  .c-content-carrousel .swiper-slide {
    padding: 0 16px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-content-carrousel .e-item-title {
    font-size: calc(9px + (17 - 9) * (100vw - 320px) / (1920 - 320));
  }
}

/*---
title: Cookie bar
description: A message for the user to acknowledge the use of cookies.
section: Components
---
*/
.c-cookie-bar {
  background: rgba(0, 0, 0, 0.75);
  bottom: 0;
  color: #fff;
  cursor: pointer;
  left: 0;
  opacity: 1;
  position: fixed;
  transition: opacity 0.35s ease-out;
  width: 100%;
  z-index: 100;
}

.c-cookie-bar .e-wrapper {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .87rem;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
}

.c-cookie-bar .e-wrapper:first-child {
  margin-top: 0;
}

.c-cookie-bar .e-wrapper:last-child {
  margin-bottom: 0;
}

.c-cookie-bar .e-text,
.c-cookie-bar .e-close {
  cursor: pointer;
}

.c-cookie-bar .e-text {
  max-width: calc(100% - 100px);
  padding: 18px 16px 12px 20px;
}

.c-cookie-bar .e-close {
  font-size: 0;
  height: 32px;
  padding: 8px;
  position: absolute;
  right: 12px;
  text-align: center;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
}

.c-cookie-bar .e-close::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 16px;
  vertical-align: middle;
  content: "";
}

.c-cookie-bar.is-hidden {
  opacity: 0;
  pointer-events: none;
}

/*---
title: Cover
description: Like a billboard, but with a white content blok in the middle over the fullsize background.
section: Components
---
*/
@media (max-width: 529px) {
  .c-cover .e-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-cover .e-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-cover .e-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-cover .e-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-cover .e-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (max-width: 529px) {
  .c-cover .e-content-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-cover .e-content-wrapper {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 16.66667%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-cover .e-content-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 25%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-cover .e-content-wrapper {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 29.16667%;
  }
}

@media (min-width: 1480px) {
  .c-cover .e-content-wrapper {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 33.33333%;
  }
}

@media (max-width: 529px) {
  .c-cover .e-content-wrapper {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-cover .e-content-wrapper {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-cover .e-content-wrapper {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-cover .e-content-wrapper {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-cover .e-content-wrapper {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

.c-cover .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-cover .e-title:first-child {
  margin-top: 0;
}

.c-cover .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-cover .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-cover .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-cover .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-cover .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-cover .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-cover .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-cover .e-title::after {
  content: '\2014';
  display: block;
}

.c-cover .e-link {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  display: inline-block;
}

.c-cover .e-link:first-child {
  margin-top: 0;
}

.c-cover .e-link:last-child {
  margin-bottom: 0;
}

.c-cover .e-link .e-span {
  display: inline-block;
}

.c-cover .e-link::after {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 22px;
  vertical-align: middle;
  content: "";
  vertical-align: bottom;
}

.c-cover .e-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-cover .e-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-cover .e-link.is-active .e-span::after {
  width: 0;
}

.c-cover .e-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-cover .e-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-cover .e-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.c-cover .e-inner-constrainer {
  background-color: #ededed;
  padding-bottom: 56.25%;
  transition: padding-bottom 0.15s ease-out;
}

.c-cover .e-wrapper {
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.c-cover .e-content-wrapper {
  -ms-flex-align: center;
      align-items: center;
  background: #fff;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  text-align: center;
}

.c-cover .e-text {
  margin-bottom: 2rem;
}

/*---
title: Detail
description: A detail with at least one image and the left, and text on the right. Like a Split, but one louder.
section: Components
---
*/
.c-detail .e-navigate {
  font-size: 0;
  height: 32px;
  position: absolute;
  width: 32px;
  z-index: 100;
}

.c-detail .e-navigate .e-span {
  transform: translateY(-100%);
}

.c-detail .e-navigate.v-forward {
  right: -10%;
}

.c-detail .e-navigate.v-forward .e-span::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 32px;
  vertical-align: middle;
  content: "";
  color: #fff;
}

.c-detail .e-navigate.v-back {
  left: -10%;
}

.c-detail .e-navigate.v-back .e-span::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 32px;
  vertical-align: middle;
  content: "";
  color: #fff;
}

@media (max-width: 529px) {
  .c-detail .e-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-detail .e-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-detail .e-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-detail .e-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-detail .e-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (max-width: 529px) {
  .c-detail .e-content {
    padding-top: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-detail .e-content {
    padding-top: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-detail .e-content {
    padding-top: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-detail .e-content {
    padding-top: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-detail .e-content {
    padding-top: 8.33333vw;
  }
}

@media (max-width: 529px) {
  .c-detail .e-content {
    padding-bottom: 16.66667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-detail .e-content {
    padding-bottom: 16.66667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-detail .e-content {
    padding-bottom: 16.66667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-detail .e-content {
    padding-bottom: 16.66667vw;
  }
}

@media (min-width: 1480px) {
  .c-detail .e-content {
    padding-bottom: 16.66667vw;
  }
}

@media (max-width: 529px) {
  .c-detail .e-extra-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-detail .e-extra-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-detail .e-extra-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-detail .e-extra-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-detail .e-extra-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (max-width: 529px) {
  .c-detail .e-extra-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-detail .e-extra-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-detail .e-extra-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-detail .e-extra-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-detail .e-extra-content {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (max-width: 529px) {
  .c-detail .e-extra-content {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-detail .e-extra-content {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-detail .e-extra-content {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-detail .e-extra-content {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-detail .e-extra-content {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

.c-detail.v-concept-detail .e-extra-content {
  padding-bottom: 4vw;
  padding-top: 4vw;
}

.c-detail .e-backlink,
.c-detail .e-extra-button {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  display: inline-block;
  margin-bottom: 2em;
}

.c-detail .e-backlink:first-child,
.c-detail .e-extra-button:first-child {
  margin-top: 0;
}

.c-detail .e-backlink:last-child,
.c-detail .e-extra-button:last-child {
  margin-bottom: 0;
}

.c-detail .e-backlink .e-span,
.c-detail .e-extra-button .e-span {
  display: inline-block;
  margin-left: .5em;
}

.c-detail .e-backlink::before,
.c-detail .e-extra-button::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 22px;
  vertical-align: middle;
  content: "";
  margin-right: .25em;
  vertical-align: bottom;
}

.c-detail .e-backlink .e-span,
.c-detail .e-extra-button .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-detail .e-backlink .e-span::after,
.c-detail .e-extra-button .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-detail .e-backlink.is-active .e-span::after,
.c-detail .e-extra-button.is-active .e-span::after {
  width: 100%;
}

.c-detail .e-backlink.is-disabled,
.c-detail .e-extra-button.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-detail .e-backlink:not(.is-disabled):hover .e-span::after, body.no-touch
.c-detail .e-extra-button:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

body.touch .c-detail .e-backlink:not(.is-disabled):active .e-span::after, body.touch
.c-detail .e-extra-button:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

.c-detail .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-detail .e-title:first-child {
  margin-top: 0;
}

.c-detail .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-detail .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-detail .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-detail .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-detail .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-detail .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-detail .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-detail .e-title::after {
  content: '\2014';
  display: block;
}

.c-detail .e-link {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  display: inline-block;
}

.c-detail .e-link:first-child {
  margin-top: 0;
}

.c-detail .e-link:last-child {
  margin-bottom: 0;
}

.c-detail .e-link .e-span {
  display: inline-block;
}

.c-detail .e-link::after {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 22px;
  vertical-align: middle;
  content: "";
  vertical-align: bottom;
}

.c-detail .e-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-detail .e-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-detail .e-link.is-active .e-span::after {
  width: 0;
}

.c-detail .e-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-detail .e-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-detail .e-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.c-detail .e-sidetext {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  display: inline-block;
  float: right;
  height: 100%;
  position: relative;
  right: 22px;
  top: 0;
}

.c-detail .e-sidetext:first-child {
  margin-top: 0;
}

.c-detail .e-sidetext:last-child {
  margin-bottom: 0;
}

.c-detail .e-sidetext .e-sidetext-alignment {
  height: 100%;
  padding-right: .5em;
  position: absolute;
  right: 0;
  top: 0;
}

.c-detail .e-sidetext .e-span {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%) rotate(-90deg);
  white-space: nowrap;
}

.c-detail .e-outer-constrainer {
  overflow: hidden;
  position: relative;
}

.c-detail .e-inner-constrainer {
  -ms-flex-align: start;
      align-items: flex-start;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column-reverse;
      flex-direction: column-reverse;
}

.c-detail .e-content-wrapper {
  text-align: center;
}

.c-detail .e-sidetext {
  float: left;
  left: 42px;
  right: auto;
}

.c-detail .e-title {
  margin-top: 0;
}

.c-detail .e-text {
  margin-bottom: 2rem;
}

.c-detail .e-content {
  position: relative;
}

.c-detail .e-navigate {
  display: none;
  position: fixed;
}

.c-detail .e-extra-content {
  background-color: #fff;
  text-align: center;
  width: 100%;
}

.c-detail .e-extra-button::before {
  content: '';
}

.c-detail .c-shopify-button {
  margin-top: 40px;
  margin-bottom: 40px;
}

@media (min-width: 530px) {
  .c-detail .e-inner-constrainer {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
  }
  .c-detail .e-photo,
  .c-detail .e-content-wrapper {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
  }
  .c-detail .e-extra-content {
    bottom: 0;
    position: absolute;
    width: 50%;
  }
}

@media (min-width: 800px) {
  .c-detail .e-sidetext .e-sidetext-alignment {
    height: 95vh;
    margin-top: -50px;
  }
}

@media (max-width: 529px) {
  .c-detail .e-sidetext {
    display: none;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-detail .e-sidetext {
    display: none;
  }
}

.c-detail.is-fixed .e-navigate {
  display: block;
}

@media (min-width: 530px) {
  .c-detail.is-fixed .e-content {
    position: fixed;
    right: 0;
    top: 40px;
    width: 50%;
  }
}

@media (min-width: 800px) {
  .c-detail.is-fixed .e-content {
    top: 50px;
  }
}

/*---
title: Document
description: The main document
section: Elements
---
*/
:root {
  font-family: "Neuzeit Webfont", "Arial", "Helvetica", sans-serif;
  font-size-adjust: initial;
  text-rendering: optimizeLegibility;
  font-feature-settings: "kern" 1, "calt" 0;
  font-style: normal;
  font-weight: normal;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
}

:root html em,
:root html i {
  font-style: inherit;
}

@media (max-width: 529px) {
  :root {
    font-size: 13px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  :root {
    font-size: 14px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  :root {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  :root {
    font-size: 16px;
  }
}

@media (min-width: 1480px) {
  :root {
    font-size: 17px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  :root {
    font-size: calc(13px + (17 - 13) * (100vw - 320px) / (1920 - 320));
  }
}

::selection {
  background-color: #000;
  color: #fff;
}

::-moz-selection {
  background-color: #000;
  color: #fff;
}

html,
body {
  background-color: #fff;
  color: #000;
  font: inherit;
  font-smoothing: antialiased;
  height: 100%;
  min-width: 320px;
}

html {
  -webkit-overflow-scrolling: touch;
  overflow-y: scroll;
}

a, a:link, a:active, a:visited {
  color: inherit;
}

@media (max-width: 319px) {
  body::after {
    background: rgba(255, 255, 255, 0.8);
    content: '';
    display: block;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9999;
  }
}

body.v-faux-overlay {
  background-color: #000;
  color: #fff;
}

body.v-faux-overlay .c-menu-bar {
  background: transparent;
}

body.v-faux-overlay .c-main {
  -ms-flex-align: center;
      align-items: center;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -ms-flex-pack: center;
      justify-content: center;
  width: 100%;
}

body.v-faux-overlay .c-footer {
  bottom: 0;
  left: 0;
  margin: .25rem 0;
  position: absolute;
  width: 100%;
}

body.v-faux-overlay .c-page-header {
  max-width: 450px;
  width: 100%;
}

body.v-faux-overlay input[type="text"]::selection,
body.v-faux-overlay input[type="password"]::selection {
  background-color: #fff;
  color: #000;
}

body.v-faux-overlay input[type="text"]::-moz-selection,
body.v-faux-overlay input[type="password"]::-moz-selection {
  background-color: #fff;
  color: #000;
}

body.v-popup {
  background: #fff;
  color: #000;
}

body.v-popup .c-main > * {
  overflow-x: auto;
}

body.v-popup .c-main > .e-close {
  color: #000;
  display: inline-block;
  font-size: 0;
  height: 50px;
  overflow: hidden;
  padding: 13px;
  position: absolute;
  right: 0;
  text-align: center;
  text-shadow: 0 0 3px rgba(255, 255, 255, 0.15);
  top: 0;
  width: 50px;
}

body.v-popup .c-main > .e-close::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
}

/*---
title: Dropcap label
description: A magazine-like layout for a piece of text
section: Elements
---
*/
.c-dropcap-label .e-dropcap-label-letter {
  font-weight: normal;
  letter-spacing: initial;
  line-height: 1em;
  text-transform: uppercase;
}

@media (max-width: 529px) {
  .c-dropcap-label .e-dropcap-label-letter {
    font-size: 88px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-dropcap-label .e-dropcap-label-letter {
    font-size: 105.6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-dropcap-label .e-dropcap-label-letter {
    font-size: 127.6px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-dropcap-label .e-dropcap-label-letter {
    font-size: 162.8px;
  }
}

@media (min-width: 1480px) {
  .c-dropcap-label .e-dropcap-label-letter {
    font-size: 162.8px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-dropcap-label .e-dropcap-label-letter {
    font-size: calc(88px + (162.8 - 88) * (100vw - 320px) / (1920 - 320));
  }
}

.c-dropcap-label .e-dropcap-label-title,
.c-dropcap-label .e-dropcap-label-subtitle {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-dropcap-label .e-dropcap-label-title:first-child,
.c-dropcap-label .e-dropcap-label-subtitle:first-child {
  margin-top: 0;
}

.c-dropcap-label .e-dropcap-label-title:last-child,
.c-dropcap-label .e-dropcap-label-subtitle:last-child {
  margin-bottom: 0;
}

.c-dropcap-label .e-dropcap-label-date {
  font-weight: bold;
}

.c-dropcap-label .e-dropcap-label-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-dropcap-label .e-dropcap-label-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-dropcap-label .e-dropcap-label-link.is-active .e-span::after {
  width: 0;
}

.c-dropcap-label .e-dropcap-label-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-dropcap-label .e-dropcap-label-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-dropcap-label .e-dropcap-label-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.c-dropcap-label .e-dropcap-label-wrapper {
  display: inline-block;
  position: relative;
}

.c-dropcap-label .e-dropcap-label-letter,
.c-dropcap-label .e-dropcap-label-caption-wrapper {
  float: left;
  max-width: 10em;
}

.c-dropcap-label .e-dropcap-label-caption-wrapper {
  padding-left: 1em;
}

.c-dropcap-label .e-dropcap-label-title {
  margin-bottom: .75em;
}

.c-dropcap-label .e-dropcap-label-title::before {
  content: '\2014 \A \A';
  white-space: pre;
}

.c-dropcap-label .e-dropcap-label-subtitle {
  margin-bottom: 1.5em;
}

.c-dropcap-label .e-dropcap-label-link {
  display: inline-block;
  margin-top: 1em;
}

.c-dropcap-label.has-subtitle .e-dropcap-label-title {
  font-weight: bold;
}

/*---
title: Email footer
description: Customisations to the split layout for the e-mail footer component
section: Components
---
*/
.c-email-footer.c-split {
  margin-bottom: 20px;
  /*
    .disabled {
        opacity: 0.4;
        color: red;
      }
    }
    */
}

.c-email-footer.c-split .e-input {
  font-size: .87rem;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
  background-color: #fff;
  border: 1px solid #000;
  color: #000;
  display: inline-block;
  height: 40px;
  line-height: 24px;
  margin-bottom: 0;
  margin-top: 0;
  min-width: 200px;
  padding: 4px 15px;
  transition: background-color 0.15s ease-out, border-color 0.15s ease-out, color 0.15s ease-out;
  vertical-align: bottom;
  -webkit-appearance: none;
}

body.no-touch .c-email-footer.c-split .e-input:active,
body.no-touch .c-email-footer.c-split .e-input:focus {
  background-color: #fff;
  border-color: #b9b9b9;
  color: #000;
}

.c-email-footer.c-split .e-input:disabled {
  background-color: #ededed;
  border-color: #ededed;
  color: #b9b9b9;
}

.c-email-footer.c-split .e-form-field label {
  font-size: .87rem;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
}

.c-email-footer.c-split .e-form-consent-intro,
.c-email-footer.c-split .e-form-consent-info {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  font-size: .73rem;
  font-weight: normal;
  letter-spacing: .5px;
  line-height: 1.3em;
  text-transform: none;
}

.c-email-footer.c-split .e-form-consent-intro:first-child,
.c-email-footer.c-split .e-form-consent-info:first-child {
  margin-top: 0;
}

.c-email-footer.c-split .e-form-consent-intro:last-child,
.c-email-footer.c-split .e-form-consent-info:last-child {
  margin-bottom: 0;
}

.c-email-footer.c-split .e-form-consent-intro a,
.c-email-footer.c-split .e-form-consent-info a {
  text-decoration: underline;
}

.c-email-footer.c-split .e-form-consent-intro a:hover,
.c-email-footer.c-split .e-form-consent-info a:hover {
  text-decoration: none;
}

.c-email-footer.c-split .e-submit {
  font-size: .87rem;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
  background-color: #fff;
  border: 1px solid #000;
  color: #000;
  display: inline-block;
  height: 40px;
  line-height: 24px;
  margin-bottom: 0;
  margin-top: 0;
  min-width: 200px;
  padding: 4px 15px;
  transition: background-color 0.15s ease-out, border-color 0.15s ease-out, color 0.15s ease-out;
  vertical-align: bottom;
  -webkit-appearance: none;
  text-transform: uppercase;
}

body.no-touch .c-email-footer.c-split .e-submit:active,
body.no-touch .c-email-footer.c-split .e-submit:focus {
  background-color: #fff;
  border-color: #b9b9b9;
  color: #000;
}

.c-email-footer.c-split .e-submit:disabled {
  background-color: #ededed;
  border-color: #ededed;
  color: #b9b9b9;
}

.c-email-footer.c-split .e-form-consent-intro,
.c-email-footer.c-split .e-form-consent-info {
  padding-right: 1.6666vw;
}

.c-email-footer.c-split .e-form-consent-info {
  padding-left: 30px;
}

.c-email-footer.c-split .e-inner-constrainer {
  -ms-flex-align: left;
      align-items: left;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

.c-email-footer.c-split .e-content-wrapper {
  text-align: left;
}

.c-email-footer.c-split .e-text {
  margin-bottom: 2rem;
}

.c-email-footer.c-split .e-form {
  width: 100%;
}

.c-email-footer.c-split .e-form-field.e-form-field-email {
  margin-bottom: 20px;
  width: 100%;
}

.c-email-footer.c-split .e-form-field.e-form-field-email .e-input {
  width: 100%;
}

.c-email-footer.c-split .e-input {
  display: inline-block;
  min-width: 0;
}

.c-email-footer.c-split .e-form-field {
  margin: 10px 0;
}

.c-email-footer.c-split label {
  display: inline-block;
}

.c-email-footer.c-split .e-form-field-checkbox input {
  cursor: pointer;
  height: 0;
  left: -300vw;
  opacity: 0;
  position: absolute;
  z-index: -100;
}

.c-email-footer.c-split .e-form-field-checkbox input:checked + label::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  display: inline-block;
  font-size: 12px;
  height: 20px;
  left: 0;
  line-height: 16px;
  margin-right: 10px;
  padding: 2px;
  position: absolute;
  top: 0;
  vertical-align: top;
  width: 20px;
  z-index: 2;
}

.c-email-footer.c-split .e-form-field-checkbox label {
  cursor: pointer;
  display: block;
  height: 20px;
  line-height: 20px;
  padding-left: 30px;
  position: relative;
  text-transform: none;
}

.c-email-footer.c-split .e-form-field-checkbox label:after {
  content: '';
  background-color: white;
  border: 1px solid currentColor;
  display: inline-block;
  height: 20px;
  left: 0;
  margin-right: 10px;
  position: absolute;
  top: 0;
  vertical-align: top;
  width: 20px;
  z-index: 1;
}

.c-email-footer.c-split .e-form-field-checkbox + .e-form-consent-info {
  margin-top: 0;
}

.c-email-footer.c-split .e-submit {
  margin-top: 20px;
}

.c-email-footer.c-split .e-submit[disabled] {
  cursor: default;
}

@media (min-width: 530px) {
  .c-email-footer.c-split {
    margin-bottom: 0;
  }
  .c-email-footer.c-split .e-inner-constrainer {
    -ms-flex-direction: row;
        flex-direction: row;
  }
  .c-email-footer.c-split .e-photo,
  .c-email-footer.c-split .e-content-wrapper {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
  }
  .c-email-footer.c-split .e-input {
    width: 100%;
  }
  .c-email-footer.c-split .e-submit {
    position: relative;
    right: 0;
    bottom: 1px;
    width: auto;
  }
}

@media (min-width: 800px) {
  .c-email-footer.c-split .e-submit {
    position: relative;
    right: 1px;
    top: 0;
    width: 95px;
  }
}

.c-expander {
  margin-bottom: 20px;
}

.c-expander .e-text {
  margin-bottom: 0;
  max-height: 70px;
  overflow-y: hidden;
  transition: max-height .8s ease-in-out;
}

.c-expander .e-text.is-visible {
  max-height: 500px !important;
}

.c-expander .e-button-expander {
  display: none;
  margin-top: 10px;
}

.c-expander .e-button-expander.is-visible {
  display: block;
}

.c-expander .e-button-expander .e-expander {
  margin: 0 auto;
}

.c-expander .e-button-expander .v-active {
  display: none;
}

.c-expander .e-button-expander .v-default {
  display: block;
}

.c-expander .e-button-expander.is-clicked .v-active {
  display: block;
}

.c-expander .e-button-expander.is-clicked .v-default {
  display: none;
}

/*---
title: Footer Links
description: Links and buttons for in the footer.
section: Components
---
*/
@media (max-width: 529px) {
  .c-footer-links {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-footer-links {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-footer-links {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-footer-links {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-footer-links {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (max-width: 529px) {
  .c-footer-links .e-buttons.v-full,
  .c-footer-links .e-links.v-full {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-footer-links .e-buttons.v-full,
  .c-footer-links .e-links.v-full {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-footer-links .e-buttons.v-full,
  .c-footer-links .e-links.v-full {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-footer-links .e-buttons.v-full,
  .c-footer-links .e-links.v-full {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-footer-links .e-buttons.v-full,
  .c-footer-links .e-links.v-full {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (max-width: 529px) {
  .c-footer-links .e-buttons.v-half,
  .c-footer-links .e-links.v-half {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-footer-links .e-buttons.v-half,
  .c-footer-links .e-links.v-half {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-footer-links .e-buttons.v-half,
  .c-footer-links .e-links.v-half {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
  .c-footer-links .e-buttons.v-half:nth-child(odd),
  .c-footer-links .e-links.v-half:nth-child(odd) {
    margin-left: 8.33333%;
  }
  .c-footer-links .e-buttons.v-half:nth-child(even),
  .c-footer-links .e-links.v-half:nth-child(even) {
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-footer-links .e-buttons.v-half,
  .c-footer-links .e-links.v-half {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .c-footer-links .e-buttons.v-half:nth-child(odd),
  .c-footer-links .e-links.v-half:nth-child(odd) {
    margin-left: 8.33333%;
  }
  .c-footer-links .e-buttons.v-half:nth-child(even),
  .c-footer-links .e-links.v-half:nth-child(even) {
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-footer-links .e-buttons.v-half,
  .c-footer-links .e-links.v-half {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .c-footer-links .e-buttons.v-half:nth-child(odd),
  .c-footer-links .e-links.v-half:nth-child(odd) {
    margin-left: 8.33333%;
  }
  .c-footer-links .e-buttons.v-half:nth-child(even),
  .c-footer-links .e-links.v-half:nth-child(even) {
    margin-right: 8.33333%;
  }
}

.c-footer-links .e-buttons .c-button,
.c-footer-links .e-links .c-button {
  width: 200px;
}

.c-footer-links .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-footer-links .e-title:first-child {
  margin-top: 0;
}

.c-footer-links .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-footer-links .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-footer-links .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-footer-links .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-footer-links .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-footer-links .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-footer-links .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-footer-links .e-title::after {
  content: '\2014';
  display: block;
}

.c-footer-links .e-link-anchor .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-footer-links .e-link-anchor .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-footer-links .e-link-anchor.is-active .e-span::after {
  width: 100%;
}

.c-footer-links .e-link-anchor.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-footer-links .e-link-anchor:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

body.touch .c-footer-links .e-link-anchor:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

.c-footer-links .e-link {
  margin-top: 1em;
  margin-bottom: 1em;
}

.c-footer-links .e-link:first-child {
  margin-top: 0;
}

.c-footer-links .e-link:last-child {
  margin-bottom: 0;
}

.c-footer-links .e-link-anchor {
  display: block;
  text-transform: uppercase;
}

.c-footer-links .e-buttons {
  font-size: 0;
}

.c-footer-links .c-button {
  margin-bottom: 20px;
  margin-right: 35px;
}

@media (min-width: 800px) {
  .c-footer-links .e-links.v-full .e-link {
    display: inline-block;
    margin-right: 5em;
  }
}

@media (max-width: 529px) {
  .c-footer-links .e-buttons.v-half + .v-half,
  .c-footer-links .e-links.v-half + .v-half {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-footer-links .e-buttons.v-half + .v-half,
  .c-footer-links .e-links.v-half + .v-half {
    margin-top: 8.33333vw;
  }
}

/*---
title: Footer
description: Stuff at the bottom
section: Components
---
*/
.c-footer {
  text-align: center;
}

@media (max-width: 529px) {
  .c-footer {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-footer {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-footer {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-footer {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-footer {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-footer {
    margin-bottom: 0;
    margin-top: 5vw;
  }
}

@media (min-width: 1480px) {
  .c-footer {
    margin-bottom: 0;
    margin-top: 5vw;
  }
}

@media (max-width: 529px) {
  .c-footer .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

.c-footer .e-social-button,
.c-footer .e-navigation-item {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-footer .e-social-button:first-child,
.c-footer .e-navigation-item:first-child {
  margin-top: 0;
}

.c-footer .e-social-button:last-child,
.c-footer .e-navigation-item:last-child {
  margin-bottom: 0;
}

.c-footer .e-social-button .e-span,
.c-footer .e-navigation-item .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-footer .e-social-button .e-span::after,
.c-footer .e-navigation-item .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-footer .e-social-button.is-active .e-span::after,
.c-footer .e-navigation-item.is-active .e-span::after {
  width: 100%;
}

.c-footer .e-social-button.is-disabled,
.c-footer .e-navigation-item.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-footer .e-social-button:not(.is-disabled):hover .e-span::after, body.no-touch
.c-footer .e-navigation-item:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

body.touch .c-footer .e-social-button:not(.is-disabled):active .e-span::after, body.touch
.c-footer .e-navigation-item:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

.c-footer .e-social-button.v-facebook::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 1.1em;
  vertical-align: text-bottom;
  content: "";
}

.c-footer .e-social-button.v-twitter::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 1.1em;
  vertical-align: text-bottom;
  content: "";
}

.c-footer .e-social-button.v-instagram::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 1.1em;
  vertical-align: text-bottom;
  content: "";
}

.c-footer .e-social-button.v-youtube::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 1.1em;
  vertical-align: text-bottom;
  content: "";
}

.c-footer .e-social-button::before {
  margin-right: .75em;
}

@media (max-width: 529px) {
  .c-footer .e-wrapper {
    display: -ms-flexbox;
    display: flex;
  }
  .c-footer .e-social,
  .c-footer .e-navigation {
    -ms-flex: 1 0 auto;
        flex: 1 0 auto;
  }
  .c-footer .e-social {
    text-align: left;
  }
  .c-footer .e-navigation {
    text-align: right;
  }
  .c-footer .e-social-button,
  .c-footer .e-navigation-item {
    display: block;
  }
  .c-footer .e-social-button {
    max-width: 12em;
  }
  .c-footer .e-social-button::before {
    float: right;
  }
}

@media (min-width: 530px) {
  .c-footer {
    padding: 0 1em;
  }
  .c-footer .e-social-button,
  .c-footer .e-navigation-item {
    display: inline-block;
    margin: 1em;
  }
}

@media (min-width: 1180px) {
  .c-footer {
    padding: 0 1em;
  }
  .c-footer .e-wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
  }
  .c-footer .e-social,
  .c-footer .e-navigation {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
  }
  .c-footer .e-social {
    text-align: left;
  }
  .c-footer .e-navigation {
    text-align: right;
  }
}

/*---
title: Gallery
description: A gallery, with a single image.
section: Components
---
*/
.c-gallery {
  background-color: #fff;
  height: 100vh;
  left: 0;
  opacity: 0;
  overflow: hidden;
  position: fixed;
  top: 0;
  transform: scale(0.9);
  transition: opacity 0.15s ease-out, transform 0.15s ease-out;
  width: 100%;
  z-index: -1;
}

.c-gallery .e-wrapper {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  position: relative;
}

.c-gallery .e-image {
  cursor: zoom-out;
  height: auto;
  max-width: none;
  width: 100%;
}

.c-gallery .e-close {
  color: #000;
  display: inline-block;
  font-size: 0;
  height: 50px;
  padding: 13px;
  position: absolute;
  right: 0;
  text-align: center;
  text-shadow: 0 0 3px rgba(255, 255, 255, 0.15);
  top: 0;
  width: 50px;
}

.c-gallery .e-close::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
}

.c-gallery.is-open {
  opacity: 1;
  transform: none;
  z-index: 1050;
}

.c-gallery.has-been-open {
  transition: opacity 0.15s ease-out, transform 0.15s ease-out, z-index 0.01s linear 0.15s;
}

/*---
title: Grid
description: Grid of items.
section: Components
---
*/
.c-grid {
  position: relative;
}

@media (max-width: 529px) {
  .c-grid {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-grid {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-grid {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-grid {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-grid {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

.c-grid .c-picture + .c-picture {
  cursor: pointer;
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: opacity 0.35s ease-out;
  width: 100%;
}

.c-grid .c-picture:hover {
  opacity: 1.0;
}

.c-grid .e-title-wrapper {
  transform: rotate(90deg);
  white-space: nowrap;
}

@media (max-width: 529px) {
  .c-grid .e-title-wrapper {
    width: 25%;
    float: right;
    float: right;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-grid .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-grid .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-grid .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .c-grid .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.c-grid .e-title-wrapper br {
  width: 1en;
}

@media (max-width: 529px) {
  .c-grid .e-title-wrapper {
    padding-left: 0;
    transform-origin: 3px 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-grid .e-title-wrapper {
    padding-left: 0;
    transform-origin: 6px 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-grid .e-title-wrapper {
    padding-left: 0;
    transform-origin: 8px 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-grid .e-title-wrapper {
    padding-left: 0;
    transform-origin: 16px 16px;
  }
}

@media (min-width: 1480px) {
  .c-grid .e-title-wrapper {
    padding-left: 0;
    transform-origin: 16px 16px;
  }
}

.c-grid .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-grid .e-title:first-child {
  margin-top: 0;
}

.c-grid .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-grid .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-grid .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-grid .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-grid .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-grid .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-grid .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-grid .e-title::after {
  content: '\2014';
  display: block;
}

.c-grid .e-items::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 2em;
  vertical-align: middle;
  content: "";
  left: 50%;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translateX(50%) translateY(50%);
  transition: transform 0.35s ease-out, opacity 0.35s ease-out, z-index 0s linear;
  z-index: -1;
  bottom: 0;
  top: auto;
}

.c-grid .e-items.is-loading::before {
  animation: ampersandspinner 1s ease-in-out infinite;
  opacity: 1;
  transform: translateX(50%) translateY(50%);
  transition: transform 0.35s ease-out, opacity 0.35s ease-out, z-index 0s linear 0.5s;
  z-index: 99;
}

@media (max-width: 529px) {
  .c-grid .e-item {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
  .c-grid .e-item:nth-child(odd) {
    margin-left: 8.33333%;
  }
  .c-grid .e-item:nth-child(2n+3) {
    clear: left;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-grid .e-item {
    width: 37.5%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
  .c-grid .e-item:nth-child(odd) {
    margin-left: 8.33333%;
  }
  .c-grid .e-item:nth-child(2n+3) {
    clear: left;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-grid .e-item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
  .c-grid .e-item:nth-child(3n+1) {
    margin-left: 8.33333%;
  }
  .c-grid .e-item:nth-child(3n+4) {
    clear: left;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-grid .e-item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .c-grid .e-item:nth-child(3n+1) {
    margin-left: 8.33333%;
  }
  .c-grid .e-item:nth-child(3n+4) {
    clear: left;
  }
}

@media (min-width: 1480px) {
  .c-grid .e-item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .c-grid .e-item:nth-child(3n+1) {
    margin-left: 8.33333%;
  }
  .c-grid .e-item:nth-child(3n+4) {
    clear: left;
  }
}

@media (max-width: 529px) {
  .c-grid .e-item.v-see-more:nth-child(odd) .e-picture-container {
    display: none;
  }
  .c-grid .e-item.v-see-more:nth-child(even) .e-picture-container {
    opacity: 0;
  }
  .c-grid .e-item.v-see-more:nth-child(even) .e-item-link {
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -ms-flex-pack: center;
        justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-grid .e-item.v-see-more:nth-child(odd) .e-picture-container {
    display: none;
  }
  .c-grid .e-item.v-see-more:nth-child(even) .e-picture-container {
    opacity: 0;
  }
  .c-grid .e-item.v-see-more:nth-child(even) .e-item-link {
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -ms-flex-pack: center;
        justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
  }
}

@media (min-width: 800px) {
  .c-grid .e-item.v-see-more:nth-child(3n+4) .e-picture-container {
    display: none;
  }
  .c-grid .e-item.v-see-more:not(:nth-child(3n+4)) .e-picture-container {
    opacity: 0;
  }
  .c-grid .e-item.v-see-more:not(:nth-child(3n+4)) .e-item-link {
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -ms-flex-pack: center;
        justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
  }
}

.c-grid .e-item.is-sold-out {
  background-color: #fff;
  bottom: 12%;
  color: #000;
  display: inline-block;
  font-size: inherit;
  line-height: inherit;
  left: 50%;
  letter-spacing: 0.94px;
  padding: 10% 12% 8%;
  position: absolute;
  text-align: center;
  text-transform: uppercase;
  top: auto;
  transform: translateX(-50%);
  width: auto;
  z-index: 100;
}

.c-grid .e-item.is-sold-out::after {
  content: '\2015';
  display: block;
}

.c-grid .e-item-title {
  margin-bottom: 1rem;
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
}

.c-grid .e-item-title::after {
  content: '\2014';
  display: block;
}

.c-grid .e-item-title:first-child {
  margin-top: 0;
}

.c-grid .e-item-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-grid .e-item-title {
    font-size: 10px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-grid .e-item-title {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-grid .e-item-title {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-grid .e-item-title {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .c-grid .e-item-title {
    font-size: 20px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-grid .e-item-title {
    font-size: calc(10px + (20 - 10) * (100vw - 320px) / (1920 - 320));
  }
}

.c-grid .e-item-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-grid .e-item-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-grid .e-item-link.is-active .e-span::after {
  width: 0;
}

.c-grid .e-item-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-grid .e-item-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-grid .e-item-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.c-grid .e-sidetext {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .77rem;
  font-weight: normal;
  letter-spacing: initial;
  line-height: 1.5em;
  text-transform: uppercase;
  display: inline-block;
  height: 0;
  position: absolute;
  text-align: right;
  top: 0;
  transform: translateX(-100%) rotate(-90deg);
  transform-origin: top right;
  width: 300px;
}

.c-grid .e-sidetext:first-child {
  margin-top: 0;
}

.c-grid .e-sidetext:last-child {
  margin-bottom: 0;
}

.c-grid .e-sidetext .e-span {
  display: block;
  transform: translateY(-200%);
}

@media (max-width: 529px) {
  .c-grid .e-sidetext {
    left: 3px;
  }
  .c-grid .e-sidetext .e-span {
    height: 12px;
    line-height: 12px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-grid .e-sidetext {
    left: 6px;
  }
  .c-grid .e-sidetext .e-span {
    height: 24px;
    line-height: 24px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-grid .e-sidetext {
    left: 8px;
  }
  .c-grid .e-sidetext .e-span {
    height: 32px;
    line-height: 32px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-grid .e-sidetext {
    left: 16px;
  }
  .c-grid .e-sidetext .e-span {
    height: 64px;
    line-height: 64px;
  }
}

@media (min-width: 1480px) {
  .c-grid .e-sidetext {
    left: 16px;
  }
  .c-grid .e-sidetext .e-span {
    height: 64px;
    line-height: 64px;
  }
}

@media (min-width: 530px) {
  .c-grid .e-sidetext .e-span {
    transform: translateY(-110%);
  }
}

@media (min-width: 800px) {
  .c-grid .e-sidetext .e-span {
    transform: translateY(-120%);
  }
}

@media (min-width: 1180px) {
  .c-grid .e-sidetext .e-span {
    transform: translateY(-100%);
  }
}

.c-grid .e-inner-constrainer {
  overflow: hidden;
}

.c-grid .e-title-wrapper {
  height: 0;
  position: relative;
}

.c-grid .e-title {
  bottom: 0;
  left: 0;
  position: absolute;
}

.c-grid .e-items {
  margin-bottom: -2em;
}

.c-grid .e-items::after {
  clear: both;
  content: '';
  display: table;
}

.c-grid .e-item {
  margin-bottom: 2em;
  opacity: 1;
  transition: opacity 0.15s ease-out;
}

.c-grid .e-item.is-loading {
  opacity: 0;
}

.c-grid .e-item-title {
  margin-top: 1em;
}

@media (max-width: 529px) {
  .c-section-header {
    margin-top: 2.08333vw;
    margin-bottom: 2.08333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-section-header {
    margin-top: 2.08333vw;
    margin-bottom: 2.08333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-section-header {
    margin-top: 2.08333vw;
    margin-bottom: 2.08333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-section-header {
    margin-top: 2.08333vw;
    margin-bottom: 2.08333vw;
  }
}

@media (min-width: 1480px) {
  .c-section-header {
    margin-top: 2.08333vw;
    margin-bottom: 2.08333vw;
  }
}

@media (max-width: 529px) {
  .c-section-header .e-header-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-section-header .e-header-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-section-header .e-header-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-section-header .e-header-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-section-header .e-header-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

.c-section-header .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-section-header .e-title:first-child {
  margin-top: 0;
}

.c-section-header .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-section-header .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-section-header .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-section-header .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-section-header .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-section-header .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-section-header .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-section-header .e-title::after {
  content: '\2014';
  display: block;
}

/*---
title: Hero carrousel (using iDangerous Swiper)
description: Rotates Hero-visual items with a nice transition and swipe functionality.
section: Components
---
*/
.c-hero-carrousel {
  position: relative;
}

.c-hero-carrousel .swiper-paging {
  display: inline-block;
  font-size: 0;
}

.c-hero-carrousel .swiper-paging .swiper-pagination-bullet {
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-hero-carrousel .swiper-paging .swiper-pagination-bullet {
  border-bottom: 1px solid currentColor;
  display: inline-block;
  height: 26px;
  margin-right: 3px;
  opacity: .3;
  padding: 2px 0;
  text-align: center;
  transition: opacity 0.15s ease-out, color 0.15s ease-out;
  vertical-align: bottom;
  width: 40px;
}

.c-hero-carrousel .swiper-paging .swiper-pagination-bullet.swiper-pagination-bullet-active {
  color: inherit;
  opacity: 1;
}

body.no-touch .c-hero-carrousel .swiper-paging .swiper-pagination-bullet:hover {
  color: inherit;
  opacity: 1;
}

body.touch .c-hero-carrousel .swiper-paging .swiper-pagination-bullet:active {
  color: inherit;
  opacity: 1;
}

@media (max-width: 529px) {
  .c-hero-carrousel .e-carrousel-wrapper {
    bottom: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-hero-carrousel .e-carrousel-wrapper {
    bottom: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-hero-carrousel .e-carrousel-wrapper {
    bottom: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-hero-carrousel .e-carrousel-wrapper {
    bottom: 4.16667vw;
  }
}

@media (min-width: 1480px) {
  .c-hero-carrousel .e-carrousel-wrapper {
    bottom: 4.16667vw;
  }
}

@media (max-width: 529px) {
  .c-hero-carrousel .e-carrousel-content-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-hero-carrousel .e-carrousel-content-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-hero-carrousel .e-carrousel-content-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-hero-carrousel .e-carrousel-content-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-hero-carrousel .e-carrousel-content-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (max-width: 529px) {
  .c-hero-carrousel .e-seal {
    right: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-hero-carrousel .e-seal {
    right: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-hero-carrousel .e-seal {
    right: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-hero-carrousel .e-seal {
    right: 4.16667vw;
  }
}

@media (min-width: 1480px) {
  .c-hero-carrousel .e-seal {
    right: 4.16667vw;
  }
}

@media (max-width: 529px) {
  .c-hero-carrousel .c-logo:not(.v-concept-store) {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-hero-carrousel .c-logo:not(.v-concept-store) {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-hero-carrousel .c-logo:not(.v-concept-store) {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-hero-carrousel .c-logo:not(.v-concept-store) {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-hero-carrousel .c-logo:not(.v-concept-store) {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (max-width: 529px) {
  .c-hero-carrousel .c-logo.v-concept-store {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-hero-carrousel .c-logo.v-concept-store {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-hero-carrousel .c-logo.v-concept-store {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-hero-carrousel .c-logo.v-concept-store {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .c-hero-carrousel .c-logo.v-concept-store {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.c-hero-carrousel .swiper-container {
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.c-hero-carrousel .swiper-container-no-flexbox .swiper-slide {
  float: left;
}

.c-hero-carrousel .swiper-container-vertical > .swiper-wrapper {
  -ms-flex-direction: column;
      flex-direction: column;
}

.c-hero-carrousel .swiper-wrapper {
  box-sizing: content-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  position: relative;
  transform-style: preserve-3d;
  transition-property: transform;
  width: 100%;
  z-index: 1;
}

.c-hero-carrousel .swiper-container-android .swiper-slide,
.c-hero-carrousel .swiper-wrapper {
  transform: translate3d(0, 0, 0);
}

.c-hero-carrousel .swiper-container-multirow > .swiper-wrapper {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.c-hero-carrousel .swiper-container-free-mode > .swiper-wrapper {
  margin: 0 auto;
  transition-timing-function: ease-out;
}

.c-hero-carrousel .swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 100%;
  position: relative;
  transform-style: preserve-3d;
  width: 100%;
}

.c-hero-carrousel .swiper-container .swiper-notification {
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  z-index: -1000;
}

.c-hero-carrousel .swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
      touch-action: pan-y;
}

.c-hero-carrousel .swiper-wp8-vertical {
  -ms-touch-action: pan-x;
      touch-action: pan-x;
}

.c-hero-carrousel .swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.c-hero-carrousel .swiper-container-fade .swiper-slide {
  pointer-events: none;
}

.c-hero-carrousel .swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.c-hero-carrousel .swiper-container-fade .swiper-slide-active {
  pointer-events: auto;
}

.c-hero-carrousel .swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.c-hero-carrousel .c-logo {
  padding-top: 25px;
}

.c-hero-carrousel .e-logo-wrapper {
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 200;
}

.c-hero-carrousel .e-carrousel-wrapper {
  -ms-flex-align: end;
      align-items: flex-end;
  display: -ms-flexbox;
  display: flex;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: 250;
}

.c-hero-carrousel .e-carrousel-content-wrapper {
  height: 0;
}

.c-hero-carrousel .swiper-wrapper {
  will-change: transform;
}

.c-hero-carrousel .swiper-paging {
  color: transparent;
  opacity: 0;
  transform: translateY(-100%);
  transition: opacity 0.15s ease-out, color 0.15s ease-out;
}

.c-hero-carrousel .e-swiper-slide, .c-hero-carrousel .e-swiper-slide > * {
  cursor: grab;
}

.c-hero-carrousel .swiper-container + .swiper-container {
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.c-hero-carrousel .c-logo {
  color: #fff;
}

@media (max-width: 529px) {
  .c-hero-carrousel .c-paging {
    display: none;
  }
}

@media (min-width: 530px) {
  .c-hero-carrousel .e-seal {
    bottom: 0;
    height: 68px;
    left: auto;
    position: absolute;
    top: auto;
    transition: width 0.15s ease-out, height 0.15s ease-out;
    width: 66px;
  }
}

@media (min-width: 1180px) {
  .c-hero-carrousel .e-seal {
    height: 130px;
    width: 134px;
  }
}

@media (max-width: 529px) {
  .c-hero-carrousel .c-logo.v-concept-store {
    padding-left: 0.75vw;
    padding-right: 0.75vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-hero-carrousel .c-logo.v-concept-store {
    padding-left: 1.5vw;
    padding-right: 1.5vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-hero-carrousel .c-logo.v-concept-store {
    padding-left: 2vw;
    padding-right: 2vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-hero-carrousel .c-logo.v-concept-store {
    padding-left: 4vw;
    padding-right: 4vw;
  }
}

@media (min-width: 1480px) {
  .c-hero-carrousel .c-logo.v-concept-store {
    padding-left: 4vw;
    padding-right: 4vw;
  }
}

/*---
title: Hero visual
description: A big visual with some content
section: Component
---
*/
.c-hero-visual .e-backlink {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  display: inline-block;
  margin-bottom: 2em;
}

.c-hero-visual .e-backlink:first-child {
  margin-top: 0;
}

.c-hero-visual .e-backlink:last-child {
  margin-bottom: 0;
}

.c-hero-visual .e-backlink .e-span {
  display: inline-block;
  margin-left: .5em;
}

.c-hero-visual .e-backlink::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 22px;
  vertical-align: middle;
  content: "";
  margin-right: .25em;
  vertical-align: bottom;
}

.c-hero-visual .e-backlink .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-hero-visual .e-backlink .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-hero-visual .e-backlink.is-active .e-span::after {
  width: 100%;
}

.c-hero-visual .e-backlink.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-hero-visual .e-backlink:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

body.touch .c-hero-visual .e-backlink:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

.c-hero-visual .e-title {
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
}

@media (max-width: 529px) {
  .c-hero-visual .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-hero-visual .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-hero-visual .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-hero-visual .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-hero-visual .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-hero-visual .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-hero-visual .e-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-hero-visual .e-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-hero-visual .e-link.is-active .e-span::after {
  width: 0;
}

.c-hero-visual .e-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-hero-visual .e-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-hero-visual .e-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.c-hero-visual .e-sidetext {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  display: inline-block;
  float: right;
  height: 100%;
  position: relative;
  right: 22px;
  top: 0;
}

.c-hero-visual .e-sidetext:first-child {
  margin-top: 0;
}

.c-hero-visual .e-sidetext:last-child {
  margin-bottom: 0;
}

.c-hero-visual .e-sidetext .e-sidetext-alignment {
  height: 100%;
  padding-right: .5em;
  position: absolute;
  right: 0;
  top: 0;
}

.c-hero-visual .e-sidetext .e-span {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%) rotate(-90deg);
  white-space: nowrap;
}

@media (max-width: 529px) {
  .c-hero-visual .c-logo:not(.v-concept-store) {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-hero-visual .c-logo:not(.v-concept-store) {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-hero-visual .c-logo:not(.v-concept-store) {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-hero-visual .c-logo:not(.v-concept-store) {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-hero-visual .c-logo:not(.v-concept-store) {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (max-width: 529px) {
  .c-hero-visual .c-logo.v-concept-store {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-hero-visual .c-logo.v-concept-store {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-hero-visual .c-logo.v-concept-store {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-hero-visual .c-logo.v-concept-store {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .c-hero-visual .c-logo.v-concept-store {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.c-hero-visual .e-text {
  text-transform: uppercase;
}

@media (max-width: 529px) {
  .c-hero-visual .e-content-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-hero-visual .e-content-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-hero-visual .e-content-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-hero-visual .e-content-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-hero-visual .e-content-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (max-width: 529px) {
  .c-hero-visual .e-content-wrapper {
    padding-top: 4.16667vw;
    padding-bottom: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-hero-visual .e-content-wrapper {
    padding-top: 4.16667vw;
    padding-bottom: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-hero-visual .e-content-wrapper {
    padding-top: 4.16667vw;
    padding-bottom: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-hero-visual .e-content-wrapper {
    padding-top: 4.16667vw;
    padding-bottom: 4.16667vw;
  }
}

@media (min-width: 1480px) {
  .c-hero-visual .e-content-wrapper {
    padding-top: 4.16667vw;
    padding-bottom: 4.16667vw;
  }
}

@media (max-width: 529px) {
  .c-hero-carrousel .c-hero-visual .e-content-wrapper {
    padding-bottom: 90px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-hero-carrousel .c-hero-visual .e-content-wrapper {
    padding-bottom: 90px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-hero-carrousel .c-hero-visual .e-content-wrapper {
    padding-bottom: 105px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-hero-carrousel .c-hero-visual .e-content-wrapper {
    padding-bottom: 120px;
  }
}

@media (min-width: 1480px) {
  .c-hero-carrousel .c-hero-visual .e-content-wrapper {
    padding-bottom: 120px;
  }
}

.c-hero-visual::after {
  clear: both;
  content: '';
  display: table;
}

.c-hero-visual .e-inner-constrainer {
  transition: padding-bottom 0.15s ease-out;
}

.c-hero-visual .e-title,
.c-hero-visual .e-link {
  max-width: 75%;
}

.c-hero-visual .e-photo {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.c-hero-visual .e-wrapper {
  -ms-flex-align: end;
      align-items: flex-end;
  display: -ms-flexbox;
  display: flex;
}

.c-hero-visual .c-logo {
  color: #fff;
  padding-top: 25px;
  position: absolute;
  z-index: 1;
}

.c-hero-visual .e-product-image {
  z-index: 2;
}

.c-hero-visual .c-video {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.c-hero-visual .c-video .e-hit-target {
  z-index: 20;
}

.c-hero-visual .c-video ~ .e-wrapper .e-content-wrapper {
  pointer-events: none;
  position: relative;
  z-index: 30;
}

.c-hero-visual .c-video ~ .e-wrapper .e-link,
.c-hero-visual .c-video ~ .e-wrapper .e-backlink {
  pointer-events: initial;
}

.c-hero-visual .c-video.is-playing ~ .e-wrapper .e-content-wrapper {
  opacity: 0;
  transition: opacity 0.35s ease-out 2s;
}

.c-hero-visual .e-content-wrapper .e-link {
  display: inline-block;
  margin-top: 1rem;
}

.c-hero-visual .c-button {
  border-color: currentColor;
  color: inherit;
  font-weight: bold;
  margin-top: 1rem;
}

.c-hero-visual .e-text {
  margin-top: 0.5em;
  margin-bottom: 1em;
}

.c-hero-visual .e-text:first-child {
  margin-top: 0;
}

.c-hero-visual .e-text:last-child {
  margin-bottom: 0;
}

.c-hero-visual:not(.has-video) .e-inner-constrainer {
  min-height: 220px;
  overflow: hidden;
}

@media (max-width: 529px) {
  .c-hero-visual:not(.has-video) .e-inner-constrainer {
    height: calc(100vh - 32px);
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-hero-visual:not(.has-video) .e-inner-constrainer {
    height: calc(100vh - 80px);
  }
}

@media (min-width: 800px) {
  .c-hero-visual:not(.has-video) .e-inner-constrainer {
    height: calc(100vh - 100px);
  }
}

.c-hero-visual.has-video .e-inner-constrainer {
  padding-bottom: 56.25%;
}

@media (max-width: 529px) {
  .c-hero-visual .e-sidetext {
    display: none;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-hero-visual .e-sidetext {
    display: none;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-hero-visual .e-sidetext {
    display: none;
  }
}

@media (max-height: 799px) {
  .c-hero-visual .e-sidetext {
    display: none;
  }
}

.c-hero-visual.v-dark {
  color: #fff;
}

.c-hero-visual.v-dark .e-title,
.c-hero-visual.v-dark .e-link,
.c-hero-visual.v-dark .e-sidetext,
.c-hero-visual.v-dark .c-button,
.c-hero-visual.v-dark .swiper-pagination-bullet,
.c-hero-visual.v-dark .e-backlink {
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
}

body.no-touch .c-hero-visual.v-dark .c-button:hover {
  text-shadow: none;
}

body.touch .c-hero-visual.v-dark .c-button:active {
  text-shadow: none;
}

body.no-touch .c-hero-visual.v-dark .c-button:active,
body.no-touch .c-hero-visual.v-dark .c-button:focus {
  text-shadow: none;
}

.c-hero-visual:not(.v-dark) {
  color: #000;
}

.c-hero-visual:not(.v-dark) .e-title,
.c-hero-visual:not(.v-dark) .e-link,
.c-hero-visual:not(.v-dark) .e-sidetext,
.c-hero-visual:not(.v-dark) .c-button,
.c-hero-visual:not(.v-dark) .swiper-pagination-bullet,
.c-hero-visual:not(.v-dark) .e-backlink {
  text-shadow: 0 0 3px rgba(255, 255, 255, 0.15);
}

body.no-touch .c-hero-visual:not(.v-dark) .c-button:hover {
  text-shadow: none;
}

body.touch .c-hero-visual:not(.v-dark) .c-button:active {
  text-shadow: none;
}

body.no-touch .c-hero-visual:not(.v-dark) .c-button:active,
body.no-touch .c-hero-visual:not(.v-dark) .c-button:focus {
  text-shadow: none;
}

/*---
title: Hit target
description: Enables a full-size hit target on a element, regardless of existing anchors inside
section: Elements
---
*/
.c-hit-target {
  height: 100%;
  left: 0;
  position: absolute !important;
  top: 0;
  width: 100%;
  z-index: 100;
}

.c-hit-target[target="gallery"] {
  cursor: zoom-in;
}

.has-hit-target {
  position: relative;
}

.has-hit-target .c-picture {
  position: relative;
}

.has-hit-target .c-picture::after {
  background-color: #000;
  bottom: 0;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  transform: translateX(-50%);
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06);
  width: 0;
}

body.no-touch .has-hit-target:hover .c-picture::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

body.touch .has-hit-target:active .c-picture::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

/*---
title: Iframe
description: Enabled iframe lazy loading
section: Elements
---
*/
@media (max-width: 529px) {
  .c-iframe {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-iframe {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-iframe {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-iframe {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-iframe {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

.c-iframe .e-iframe {
  max-width: 100%;
  min-height: 100px;
  opacity: 1;
  transition: opacity 0.35s ease-out;
  width: 100%;
}

.c-iframe .e-iframe.is-hidden {
  opacity: 0;
}

/*---
title: Impression
description: Grid of impression items.
section: Components
---
*/
@media (max-width: 529px) {
  .c-impression:not(.v-alternative) {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-impression:not(.v-alternative) {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-impression:not(.v-alternative) {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-impression:not(.v-alternative) {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-impression:not(.v-alternative) {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

.c-impression .e-title-wrapper {
  transform: rotate(90deg);
  white-space: nowrap;
}

@media (max-width: 529px) {
  .c-impression .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-impression .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-impression .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-impression .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .c-impression .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.c-impression .e-title-wrapper br {
  width: 1en;
}

@media (max-width: 529px) {
  .c-impression .e-title-wrapper {
    padding-left: 0;
    transform-origin: 3px 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-impression .e-title-wrapper {
    padding-left: 0;
    transform-origin: 6px 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-impression .e-title-wrapper {
    padding-left: 0;
    transform-origin: 8px 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-impression .e-title-wrapper {
    padding-left: 0;
    transform-origin: 16px 16px;
  }
}

@media (min-width: 1480px) {
  .c-impression .e-title-wrapper {
    padding-left: 0;
    transform-origin: 16px 16px;
  }
}

.c-impression .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-impression .e-title:first-child {
  margin-top: 0;
}

.c-impression .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-impression .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-impression .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-impression .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-impression .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-impression .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-impression .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-impression .e-title::after {
  content: '\2014';
  display: block;
}

@media (max-width: 529px) {
  .c-impression .e-item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
  .c-impression .e-item:first-child {
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-impression .e-item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
  .c-impression .e-item:first-child {
    margin-left: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-impression .e-item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
  .c-impression .e-item:first-child {
    margin-left: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-impression .e-item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .c-impression .e-item:first-child {
    margin-left: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-impression .e-item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .c-impression .e-item:first-child {
    margin-left: 8.33333%;
  }
}

.c-impression .e-item-title {
  margin-bottom: 1rem;
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
}

.c-impression .e-item-title::after {
  content: '\2014';
  display: block;
}

.c-impression .e-item-title:first-child {
  margin-top: 0;
}

.c-impression .e-item-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-impression .e-item-title {
    font-size: 10px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-impression .e-item-title {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-impression .e-item-title {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-impression .e-item-title {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .c-impression .e-item-title {
    font-size: 20px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-impression .e-item-title {
    font-size: calc(10px + (20 - 10) * (100vw - 320px) / (1920 - 320));
  }
}

.c-impression .e-item-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-impression .e-item-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-impression .e-item-link.is-active .e-span::after {
  width: 0;
}

.c-impression .e-item-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-impression .e-item-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-impression .e-item-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

@media (max-width: 529px) {
  .c-impression .e-item-link {
    width: 25%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-impression .e-item-link {
    width: 25%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-impression .e-item-link {
    width: 25%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-impression .e-item-link {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-impression .e-item-link {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

.c-impression .e-items::after {
  clear: both;
  content: '';
  display: table;
}

.c-impression .e-title-wrapper {
  height: 0;
  position: relative;
}

.c-impression .e-title {
  bottom: 0;
  left: 0;
  position: absolute;
}

.c-impression .e-item {
  margin-bottom: 2em;
}

.c-impression .e-item-title {
  margin-top: 1em;
}

.c-impression.v-alternative {
  background-color: #ededed;
}

@media (max-width: 529px) {
  .c-impression.v-alternative {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-impression.v-alternative {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-impression.v-alternative {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-impression.v-alternative {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-impression.v-alternative {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

/*---
title: List
description: Like impression, but with a list of items without pictures.
section: Components
---
*/
@media (max-width: 529px) {
  .c-list:not(.v-alternative) {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-list:not(.v-alternative) {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-list:not(.v-alternative) {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-list:not(.v-alternative) {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-list:not(.v-alternative) {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

.c-list .e-title-wrapper {
  transform: rotate(90deg);
  white-space: nowrap;
}

@media (max-width: 529px) {
  .c-list .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-list .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-list .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-list .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .c-list .e-title-wrapper {
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.c-list .e-title-wrapper br {
  width: 1en;
}

@media (max-width: 529px) {
  .c-list .e-title-wrapper {
    padding-left: 0;
    transform-origin: 3px 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-list .e-title-wrapper {
    padding-left: 0;
    transform-origin: 6px 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-list .e-title-wrapper {
    padding-left: 0;
    transform-origin: 8px 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-list .e-title-wrapper {
    padding-left: 0;
    transform-origin: 16px 16px;
  }
}

@media (min-width: 1480px) {
  .c-list .e-title-wrapper {
    padding-left: 0;
    transform-origin: 16px 16px;
  }
}

.c-list .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-list .e-title:first-child {
  margin-top: 0;
}

.c-list .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-list .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-list .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-list .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-list .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-list .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-list .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-list .e-title::after {
  content: '\2014';
  display: block;
}

.c-list .e-items {
  margin: 1.5em 0;
}

@media (max-width: 529px) {
  .c-list .e-items {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-list .e-items {
    width: 50%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-list .e-items {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-list .e-items {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-list .e-items {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

.c-list .e-item {
  margin-bottom: .5em;
  padding-left: 2.5em;
}

.c-list .e-item::before {
  content: '\2014';
  display: inline-block;
  float: left;
  margin-left: -2.5em;
  width: 2.5em;
}

@media (max-width: 529px) {
  .c-list .e-item-link {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-list .e-item-link {
    width: 50%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-list .e-item-link {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-list .e-item-link {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-list .e-item-link {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

.c-list .e-item-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-list .e-item-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-list .e-item-link.is-active .e-span::after {
  width: 0;
}

.c-list .e-item-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-list .e-item-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-list .e-item-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.c-list .e-title-wrapper {
  height: 0;
  position: relative;
}

.c-list .e-title {
  bottom: 0;
  left: 0;
  position: absolute;
}

.c-list .e-items {
  margin-bottom: 3em;
  margin-top: 0;
}

.c-list .e-item-link {
  clear: left;
}

.c-list.v-alternative {
  background-color: #ededed;
}

@media (max-width: 529px) {
  .c-list.v-alternative {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-list.v-alternative {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-list.v-alternative {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-list.v-alternative {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-list.v-alternative {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

/*---
title: Logo
description: The logotype or brand symbol in vector shapes
section: Elements
---
*/
.c-logo {
  background-color: transparent;
  display: inline-block;
  line-height: 0;
  max-width: 100%;
  position: relative;
  transition: color 0.15s ease-out;
  width: auto;
}

.c-logo .e-logo-svg {
  max-width: 100%;
  width: auto;
}

/*---
title: Magazine
description: Like a combination of a Spread and a Article-Photo component. With title, subtitle, a little bit of text, 3 images and a caption.
section: Components
---
*/
.c-magazine {
  background: #fff;
}

@media (max-width: 529px) {
  .c-magazine {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-magazine {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-magazine {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-magazine {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-magazine {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (max-width: 529px) {
  .c-magazine {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-magazine {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-magazine {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-magazine {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-magazine {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (max-width: 529px) {
  .c-magazine .e-content-wrapper {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 16.66667%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-magazine .e-content-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 16.66667%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-magazine .e-content-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-magazine .e-content-wrapper {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-magazine .e-content-wrapper {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

@media (max-width: 529px) {
  .c-magazine .e-picture-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-magazine .e-picture-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-magazine .e-picture-wrapper {
    width: 33.33333%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-magazine .e-picture-wrapper {
    width: 33.33333%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-magazine .e-picture-wrapper {
    width: 33.33333%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 8.33333%;
  }
}

.c-magazine .e-imagecaption {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .87rem;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
}

.c-magazine .e-imagecaption:first-child {
  margin-top: 0;
}

.c-magazine .e-imagecaption:last-child {
  margin-bottom: 0;
}

.c-magazine .e-imagecaption {
  width: 50%;
}

.c-magazine .c-dropcap-label .e-dropcap-label-caption-wrapper {
  max-width: 75%;
}

.c-magazine .c-share {
  float: right;
}

.c-magazine .c-share .e-share-button {
  margin-top: 0;
}

.c-magazine .c-share .e-label {
  margin-top: -.5em;
}

@media (max-width: 529px) {
  .c-magazine .c-picture {
    margin-bottom: 2rem;
    margin-top: 1rem;
  }
  .c-magazine .e-imagecaption,
  .c-magazine .c-share {
    margin-bottom: 1rem;
    margin-top: -1rem;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-magazine .c-picture {
    margin-bottom: 2rem;
    margin-top: 1rem;
  }
  .c-magazine .e-imagecaption,
  .c-magazine .c-share {
    margin-bottom: 1rem;
    margin-top: -1rem;
  }
}

@media (min-width: 800px) {
  .c-magazine .e-picture1 {
    margin-bottom: 1rem;
  }
  .c-magazine .e-content-wrapper {
    margin-bottom: 5vw;
  }
}

@media (max-width: 529px) {
  .c-detail + .c-magazine {
    margin-top: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-detail + .c-magazine {
    margin-top: 0;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-detail + .c-magazine {
    margin-top: 0;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-detail + .c-magazine {
    margin-top: 0;
  }
}

@media (min-width: 1480px) {
  .c-detail + .c-magazine {
    margin-top: 0;
  }
}

@media (max-width: 529px) {
  .c-magazine.has-landscape-image .e-picture2 {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-magazine.has-landscape-image .e-picture2 {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-magazine.has-landscape-image .e-picture2 {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    padding-left: 0;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-magazine.has-landscape-image .e-picture2 {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    padding-left: 0;
  }
}

@media (min-width: 1480px) {
  .c-magazine.has-landscape-image .e-picture2 {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    padding-left: 0;
  }
}

.c-magazine.has-landscape-image .e-picture3 {
  display: none;
}

@media (max-width: 529px) {
  .c-magazine.has-landscape-image {
    padding-bottom: 0;
  }
  .c-magazine.has-landscape-image .e-picture2 {
    margin-bottom: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-magazine.has-landscape-image {
    padding-bottom: 0;
  }
  .c-magazine.has-landscape-image .e-picture2 {
    margin-bottom: 0;
  }
}

@media (max-width: 529px) {
  .c-magazine:not(.has-landscape-image) .e-picture2 {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-magazine:not(.has-landscape-image) .e-picture2 {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-magazine:not(.has-landscape-image) .e-picture2 {
    width: 25%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-magazine:not(.has-landscape-image) .e-picture2 {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-magazine:not(.has-landscape-image) .e-picture2 {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

@media (max-width: 529px) {
  .c-magazine:not(.has-landscape-image) .e-picture3 {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-magazine:not(.has-landscape-image) .e-picture3 {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-magazine:not(.has-landscape-image) .e-picture3 {
    width: 25%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-magazine:not(.has-landscape-image) .e-picture3 {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .c-magazine:not(.has-landscape-image) .e-picture3 {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.c-magazine.v-dark {
  background: #000;
  color: #fff;
}

/*---
title: Main
description: The main element
section: Elements
---
*/
.c-main::after {
  clear: both;
  content: '';
  display: table;
}

/*---
title: Menu bar
description: A fixed menu bar with a mobile overlay
section: Components
---
*/
.c-menu-bar {
  height: 32px;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1000;
}

.c-menu-bar .e-menu-item > .e-menu-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-menu-bar .e-menu-item > .e-menu-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-menu-bar .e-menu-item > .e-menu-link.is-active .e-span::after {
  width: 100%;
}

.c-menu-bar .e-menu-item > .e-menu-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-menu-bar .e-menu-item > .e-menu-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

body.touch .c-menu-bar .e-menu-item > .e-menu-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

.c-menu-bar .is-expanded > .e-menu-link > .e-span:after {
  width: 100%;
}

.c-menu-bar .e-expandable-menu-item > .e-menu-link {
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  line-height: 42px;
}

@media (min-width: 800px) {
  .c-menu-bar .e-expandable-menu-item > .e-menu-link {
    line-height: 50px;
  }
  body.is-osx .c-menu-bar .e-expandable-menu-item > .e-menu-link {
    border-top: .3em solid transparent;
    line-height: calc(50px - .3em);
  }
}

.c-menu-bar .e-expandable-menu-item > .e-menu-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-menu-bar .e-expandable-menu-item > .e-menu-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-menu-bar .e-expandable-menu-item > .e-menu-link.is-active .e-span::after {
  width: 100%;
}

.c-menu-bar .e-expandable-menu-item > .e-menu-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-menu-bar .e-expandable-menu-item > .e-menu-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

body.touch .c-menu-bar .e-expandable-menu-item > .e-menu-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

.c-menu-bar .e-menu-link {
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  line-height: 42px;
}

@media (min-width: 800px) {
  .c-menu-bar .e-menu-link {
    line-height: 50px;
  }
  body.is-osx .c-menu-bar .e-menu-link {
    border-top: .3em solid transparent;
    line-height: calc(50px - .3em);
  }
}

@media (max-width: 529px) {
  .c-menu-bar .e-menu-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 25%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-menu-bar .e-menu-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 25%;
  }
}

@media (min-width: 800px) and (max-width: 999px) {
  .c-menu-bar .e-menu-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 25%;
  }
}

@media (max-width: 529px) {
  .c-menu-bar .e-menu-list {
    margin-left: -8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-menu-bar .e-menu-list {
    margin-left: -8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 999px) {
  .c-menu-bar .e-menu-list {
    margin-left: -8.33333%;
  }
}

.c-menu-bar > .e-outer-constrainer {
  height: 32px;
}

.c-menu-bar > .e-outer-constrainer {
  background-color: #fff;
}

.c-menu-bar .e-menu {
  top: 32px;
}

.c-menu-bar .c-logo {
  float: left;
  padding: calc((32px - 11px) / 2);
}

.c-menu-bar .e-logo-svg {
  height: 11px;
  margin-top: -1px;
  width: 92px;
}

.c-menu-bar .e-menu-list {
  list-style: none;
}

.c-menu-bar .c-search {
  float: right;
  text-align: right;
  width: 140px;
}

.c-menu-bar .e-open-search {
  height: 32px;
  padding: calc((32px - 24px) / 2);
  width: 32px;
}

@media (min-width: 530px) {
  .c-menu-bar {
    height: 40px;
  }
  .c-menu-bar > .e-outer-constrainer {
    height: 40px;
  }
  .c-menu-bar .e-menu {
    top: 40px;
  }
  .c-menu-bar .c-logo {
    padding: calc((40px - 11px) / 2);
  }
  .c-menu-bar .e-open-search {
    height: 40px;
    padding: calc((40px - 24px) / 2);
    width: 40px;
  }
  .c-menu-bar .c-search .e-button {
    line-height: 40px;
  }
}

@media (min-width: 800px) {
  .c-menu-bar {
    height: 50px;
  }
  .c-menu-bar > .e-outer-constrainer {
    height: 50px;
  }
  .c-menu-bar .e-menu {
    top: 50px;
  }
  .c-menu-bar .c-logo {
    padding: calc((50px - 11px) / 2);
  }
  .c-menu-bar .e-open-search {
    height: 50px;
    padding: calc((50px - 24px) / 2);
    width: 50px;
  }
  .c-menu-bar .c-search .e-button {
    line-height: 50px;
  }
}

@media (max-width: 999px) {
  .c-menu-bar .e-menu {
    cursor: pointer;
    height: 100vh;
    left: 0;
    overflow: hidden;
    position: fixed;
    top: 0;
    transform: translateY(-100%);
    transition: transform 0.45s cubic-bezier(0, 0, 0.58, 1);
    width: 100%;
    z-index: -1;
  }
  .c-menu-bar .e-menu::before {
    background-color: #fff;
    content: '';
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1;
  }
  .c-menu-bar .e-menu.is-open::before {
    transform: none;
  }
  .c-menu-bar .e-menu-link {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    position: relative;
    transition: background-color 0.15s ease-out, color 0.15s ease-out;
    white-space: nowrap;
  }
  .c-menu-bar .e-menu-item {
    position: relative;
  }
  .c-menu-bar .e-menu:target,
  .c-menu-bar .e-menu.is-open {
    -webkit-tap-highlight-color: transparent;
    tap-highlight-color: transparent;
    -webkit-tap-highlight-color: transparent;
    tap-highlight-color: transparent;
    height: 100vh;
    transform: none;
  }
  .c-menu-bar .e-menu:target::before,
  .c-menu-bar .e-menu.is-open::before {
    background-color: #fff;
    height: 100%;
  }
  .c-menu-bar .e-open-menu {
    left: 50%;
    padding: 0 10vw;
    position: absolute;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
  }
  .c-menu-bar .e-open-menu .e-icon {
    display: block;
    font-size: 0;
    height: 32px;
    overflow: hidden;
    padding: 6px;
    position: relative;
    transform: none;
    transition: transform .3s ease-in-out;
    width: 32px;
  }
  .c-menu-bar .e-open-menu .e-icon .e-bar {
    -webkit-backface-visibility: hidden;
    background-color: #000;
    display: block;
    height: 2px;
    margin: 6px auto;
    position: absolute;
    transform: none;
    transition: top .15s ease-in-out .2s, transform .15s ease-out;
    width: 20px;
  }
  .c-menu-bar .e-open-menu .e-icon .e-bar:nth-child(1) {
    top: 4px;
  }
  .c-menu-bar .e-open-menu .e-icon .e-bar:nth-child(2) {
    top: 9px;
    transition: opacity .15s ease-in-out .15s;
    display: none;
  }
  .c-menu-bar .e-open-menu .e-icon .e-bar:nth-child(3) {
    top: 14px;
  }
  .c-menu-bar .e-open-menu.e-close-menu .e-icon {
    transform: rotate(45deg);
  }
  .c-menu-bar .e-open-menu.e-close-menu .e-icon .e-bar:nth-child(1) {
    top: 9px;
    transform: rotate(0);
    transition: top .3s ease-in-out, transform .3s ease-out .1s;
  }
  .c-menu-bar .e-open-menu.e-close-menu .e-icon .e-bar:nth-child(2) {
    opacity: 0;
  }
  .c-menu-bar .e-open-menu.e-close-menu .e-icon .e-bar:nth-child(3) {
    top: 9px;
    transform: rotate(270deg);
    transition: top .3s ease-in-out, transform .3s ease-in-out .1s;
  }
  .c-menu-bar .e-menu-wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    height: 100%;
    -ms-flex-pack: center;
        justify-content: center;
  }
  .c-menu-bar .e-menu-list {
    left: 0;
    position: absolute;
    top: -42px;
    width: 100%;
  }
  .c-menu-bar .e-menu-list-wrapper {
    max-height: 75vh;
    position: relative;
  }
  .c-menu-bar .e-background {
    height: auto;
    opacity: .3;
    width: 100%;
  }
  .c-menu-bar .e-sideways {
    bottom: 0;
    height: 75%;
    position: absolute;
    right: 0;
    transform: translateX(75%);
    width: 50%;
  }
  .c-menu-bar .e-sideways .c-picture,
  .c-menu-bar .e-sideways .e-picture-img {
    height: 100%;
  }
  .c-menu-bar .e-menu-expandable-list {
    padding-left: 0;
    opacity: 0;
    height: 0;
    overflow: hidden;
    transition: opacity  .3s ease-in-out, padding-left .2s ease-in-out;
  }
  .c-menu-bar .e-menu-expandable-list .e-menu-link {
    line-height: 21px;
  }
  .c-menu-bar .is-expanded .e-menu-expandable-list {
    height: auto;
    padding-left: 2em;
    opacity: 1;
  }
  .c-menu-bar .e-menu-expandable-bar {
    display: none;
  }
}

@media (max-height: 480px) {
  .c-menu-bar .e-menu-list {
    top: 16px;
  }
}

@media (min-width: 1000px) {
  .c-menu-bar .e-open-menu {
    display: none;
  }
  .c-menu-bar .e-menu-list {
    font-size: 0;
    margin: 0 auto;
    text-align: center;
  }
  .c-menu-bar .e-menu-item {
    display: inline-block;
    margin-left: .6rem;
    margin-right: .6rem;
  }
  .c-menu-bar .e-menu-item.is-expanded > .e-menu-link > .e-span:after {
    top: 100%;
  }
  .c-menu-bar .e-menu-link {
    display: block;
    white-space: nowrap;
  }
  .c-menu-bar .e-search {
    display: block;
  }
  .c-menu-bar .e-menu {
    margin: 0 auto;
    max-width: 800px;
    transform: translateY(-100%);
    width: 75%;
  }
  .c-menu-bar .e-menu-expandable-list {
    display: none;
  }
  .c-menu-bar .e-menu-expandable-bar {
    background-color: #EFEFEF;
    left: 0;
    opacity: 0.4;
    position: absolute;
    right: 0;
    top: 50px;
    transform: translateY(-100%);
    transition: transform .3s ease-in-out, opacity .2s ease-in-out;
    z-index: -1;
  }
}

@media (min-width: 1000px) and (max-width: 529px) {
  .c-menu-bar .e-menu-expandable-bar .e-inner-constrainer {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
  .c-menu-bar .e-menu-expandable-bar .e-expandable-menu-item {
    width: 20%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 1000px) and (min-width: 530px) and (max-width: 799px) {
  .c-menu-bar .e-menu-expandable-bar .e-inner-constrainer {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
  .c-menu-bar .e-menu-expandable-bar .e-expandable-menu-item {
    width: 20%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 1000px) and (min-width: 800px) and (max-width: 1179px) {
  .c-menu-bar .e-menu-expandable-bar .e-inner-constrainer {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
  .c-menu-bar .e-menu-expandable-bar .e-expandable-menu-item {
    width: 20%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1000px) and (min-width: 1180px) and (max-width: 1479px) {
  .c-menu-bar .e-menu-expandable-bar .e-inner-constrainer {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
  .c-menu-bar .e-menu-expandable-bar .e-expandable-menu-item {
    width: 20%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1000px) and (min-width: 1480px) {
  .c-menu-bar .e-menu-expandable-bar .e-inner-constrainer {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
  .c-menu-bar .e-menu-expandable-bar .e-expandable-menu-item {
    width: 20%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1000px) {
  .c-menu-bar .e-menu-expandable-bar.is-expanded {
    opacity: 1;
    transform: translateY(0%);
  }
  .c-menu-bar .e-menu-expandable-bar .e-expandable-menu-wrapper {
    padding-top: 40px;
    text-align: center;
    font-size: 0;
    letter-spacing: 0;
  }
  .c-menu-bar .e-menu-expandable-bar .e-expandable-menu-item {
    margin-top: 2em;
    float: none;
    display: inline-block;
  }
  .c-menu-bar .e-menu-expandable-bar .e-expandable-menu-item .e-menu-link {
    text-align: left;
  }
  .c-menu-bar .e-background,
  .c-menu-bar .e-sideways {
    display: none;
  }
}

@media (min-width: 800px) and (max-width: 999px) {
  .c-menu-bar .e-menu-list {
    top: -40px;
  }
}

@media (max-width: 529px) {
  .c-menu-bar ~ .c-main {
    padding-top: 32px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-menu-bar ~ .c-main {
    padding-top: 40px;
  }
}

@media (min-width: 800px) {
  .c-menu-bar ~ .c-main {
    padding-top: 50px;
  }
}

/*---
title: Overview
description: A overview item, with an optional related item.
section: Components
---
*/
@media (max-width: 529px) {
  .c-overview {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-overview {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-overview {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-overview {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-overview {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (max-width: 529px) {
  .c-overview .e-text-wrapper {
    margin-right: 8.33333%;
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-overview .e-text-wrapper {
    margin-left: 8.33333%;
    width: 50%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-overview .e-text-wrapper {
    margin-left: 8.33333%;
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-overview .e-text-wrapper {
    margin-left: 8.33333%;
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-overview .e-text-wrapper {
    margin-left: 8.33333%;
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 529px) {
  .c-overview .e-photo {
    margin-right: 8.33333%;
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-overview .e-photo {
    margin-right: 8.33333%;
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-overview .e-photo {
    width: 33.33333%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-overview .e-photo {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .c-overview .e-photo {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 529px) {
  .c-overview .e-related-wrapper {
    margin-right: 8.33333%;
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-overview .e-related-wrapper {
    margin-right: 8.33333%;
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-overview .e-related-wrapper {
    margin-right: 8.33333%;
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-overview .e-related-wrapper {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .c-overview .e-related-wrapper {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.c-overview .e-title,
.c-overview .e-related-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-overview .e-title:first-child,
.c-overview .e-related-title:first-child {
  margin-top: 0;
}

.c-overview .e-title:last-child,
.c-overview .e-related-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-overview .e-title,
  .c-overview .e-related-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-overview .e-title,
  .c-overview .e-related-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-overview .e-title,
  .c-overview .e-related-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-overview .e-title,
  .c-overview .e-related-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-overview .e-title,
  .c-overview .e-related-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-overview .e-title,
  .c-overview .e-related-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-overview .e-title::after,
.c-overview .e-related-title::after {
  content: '\2014';
  display: block;
}

.c-overview .e-link .e-span,
.c-overview .e-related-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-overview .e-link .e-span::after,
.c-overview .e-related-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-overview .e-link.is-active .e-span::after,
.c-overview .e-related-link.is-active .e-span::after {
  width: 0;
}

.c-overview .e-link.is-disabled,
.c-overview .e-related-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-overview .e-link:not(.is-disabled):hover .e-span::after, body.no-touch
.c-overview .e-related-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-overview .e-link:not(.is-disabled):active .e-span::after, body.touch
.c-overview .e-related-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.c-overview .e-text-wrapper {
  position: relative;
}

.c-overview .e-text {
  margin-bottom: 1em;
}

.c-overview .e-link,
.c-overview .e-related-link {
  display: inline-block;
  margin-bottom: 2em;
}

.c-overview .e-photo {
  margin-top: 2em;
}

.c-overview .e-related-title {
  padding-top: 1em;
}

.c-overview .e-title {
  word-break: break-word;
}

@media (max-width: 529px) {
  .c-overview .e-photo {
    margin-top: 0;
  }
  .c-overview .e-related-photo {
    margin-top: 2em;
  }
  .c-overview .e-text-wrapper,
  .c-overview .e-related-text-wrapper {
    margin-bottom: 2em;
  }
}

@media (min-width: 530px) {
  .c-overview .e-photo {
    margin-bottom: 2em;
    margin-top: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-overview .e-text-wrapper,
  .c-overview .e-related-text-wrapper {
    margin-bottom: 2em;
  }
}

@media (min-width: 800px) {
  .c-overview .e-related-wrapper {
    padding-right: 0;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-overview .e-related-photo {
    float: left;
    margin-right: 8px;
    padding-right: 8px;
    width: 60%;
  }
  .c-overview .e-related-title {
    padding-top: 0;
  }
}

@media (min-width: 1180px) {
  .c-overview .e-inner-constrainer {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
  }
  .c-overview .e-photo {
    margin-bottom: 0;
    margin-top: 0;
  }
  .c-overview .e-related-title {
    padding-top: 1em;
  }
}

/*---
title: Page header
description: Title and optional submenu for pages
section: Components
---
*/
@media (max-width: 529px) {
  .c-page-header.v-short {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-page-header.v-short {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-page-header.v-short {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-page-header.v-short {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 1480px) {
  .c-page-header.v-short {
    margin-top: 4.16667vw;
  }
}

@media (max-width: 529px) {
  .c-page-header.v-short {
    margin-bottom: 2.08333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-page-header.v-short {
    margin-bottom: 2.08333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-page-header.v-short {
    margin-bottom: 2.08333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-page-header.v-short {
    margin-bottom: 2.08333vw;
  }
}

@media (min-width: 1480px) {
  .c-page-header.v-short {
    margin-bottom: 2.08333vw;
  }
}

.c-page-header.v-title-dash .e-title {
  margin-bottom: 1rem;
}

.c-page-header.v-title-dash .e-title::after {
  content: '\2014';
  display: block;
}

@media (max-width: 529px) {
  .c-page-header {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-page-header {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-page-header {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-page-header {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1480px) {
  .c-page-header {
    margin-bottom: 4.16667vw;
  }
}

@media (max-width: 529px) {
  .c-page-header {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-page-header {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-page-header {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-page-header {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-page-header {
    margin-top: 8.33333vw;
  }
}

@media (max-width: 529px) {
  + .c-page-header {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  + .c-page-header {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  + .c-page-header {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  + .c-page-header {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 1480px) {
  + .c-page-header {
    margin-top: 4.16667vw;
  }
}

@media (max-width: 529px) {
  .c-page-header .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-page-header .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-page-header .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-page-header .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-page-header .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

.c-page-header .e-backlink {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  display: inline-block;
  margin-bottom: 2em;
}

.c-page-header .e-backlink:first-child {
  margin-top: 0;
}

.c-page-header .e-backlink:last-child {
  margin-bottom: 0;
}

.c-page-header .e-backlink .e-span {
  display: inline-block;
  margin-left: .5em;
}

.c-page-header .e-backlink::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 22px;
  vertical-align: middle;
  content: "";
  margin-right: .25em;
  vertical-align: bottom;
}

.c-page-header .e-backlink .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-page-header .e-backlink .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-page-header .e-backlink.is-active .e-span::after {
  width: 100%;
}

.c-page-header .e-backlink.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-page-header .e-backlink:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

body.touch .c-page-header .e-backlink:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

.c-page-header .e-title {
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
}

@media (max-width: 529px) {
  .c-page-header .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-page-header .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-page-header .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-page-header .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-page-header .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-page-header .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-page-header .e-usps {
  margin-bottom: 0;
  margin-top: 2em;
}

.c-page-header .e-link {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-page-header .e-link:first-child {
  margin-top: 0;
}

.c-page-header .e-link:last-child {
  margin-bottom: 0;
}

.c-page-header .e-link.is-active .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-page-header .e-link.is-active .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-page-header .e-link.is-active.is-active .e-span::after {
  width: 100%;
}

.c-page-header .e-link.is-active.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-page-header .e-link.is-active:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

body.touch .c-page-header .e-link.is-active:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

.c-page-header .e-link:not(.is-active) .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-page-header .e-link:not(.is-active) .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-page-header .e-link:not(.is-active).is-active .e-span::after {
  width: 100%;
}

.c-page-header .e-link:not(.is-active).is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-page-header .e-link:not(.is-active):not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

body.touch .c-page-header .e-link:not(.is-active):not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

.c-page-header .e-search-form .e-button {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  border: 1px solid #000;
  color: #000;
  display: inline-block;
  line-height: 24px;
  margin-bottom: 0;
  margin-top: 0;
  min-height: 40px;
  min-width: 120px;
  padding: 4px 15px;
  text-align: center;
  transition: background-color 0.15s ease-out, border-color 0.15s ease-out, color 0.15s ease-out;
  vertical-align: middle;
  font-size: 0;
  min-width: 40px;
  padding: 7px;
  width: 40px;
}

.c-page-header .e-search-form .e-button:first-child {
  margin-top: 0;
}

.c-page-header .e-search-form .e-button:last-child {
  margin-bottom: 0;
}

body.no-touch .c-page-header .e-search-form .e-button:hover {
  background-color: #000;
  border-color: #000;
  color: #fff;
}

body.touch .c-page-header .e-search-form .e-button:active {
  background-color: #000;
  border-color: #000;
  color: #fff;
}

body.no-touch .c-page-header .e-search-form .e-button:active,
body.no-touch .c-page-header .e-search-form .e-button:focus {
  background-color: #000;
  border-color: #000;
  color: #fff;
}

.c-page-header .e-search-form .e-button.v-inverted {
  border-color: #fff;
  color: #fff;
}

body.no-touch .c-page-header .e-search-form .e-button.v-inverted:hover {
  background-color: #fff;
  border-color: #fff;
  color: #000;
}

body.touch .c-page-header .e-search-form .e-button.v-inverted:active {
  background-color: #fff;
  border-color: #fff;
  color: #000;
}

body.no-touch .c-page-header .e-search-form .e-button.v-inverted:active,
body.no-touch .c-page-header .e-search-form .e-button.v-inverted:focus {
  background-color: #fff;
  border-color: #fff;
  color: #000;
}

.c-page-header .e-search-form .e-button::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
}

.c-page-header .e-search-form .e-input,
.c-page-header .e-search-form input[type="text"],
.c-page-header .e-search-form input[type="password"] {
  font-size: .87rem;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
  background-color: #fff;
  border: 1px solid #000;
  color: #000;
  display: inline-block;
  height: 40px;
  line-height: 24px;
  margin-bottom: 0;
  margin-top: 0;
  min-width: 200px;
  padding: 4px 15px;
  transition: background-color 0.15s ease-out, border-color 0.15s ease-out, color 0.15s ease-out;
  vertical-align: bottom;
  -webkit-appearance: none;
}

body.no-touch .c-page-header .e-search-form .e-input:active,
body.no-touch .c-page-header .e-search-form .e-input:focus, body.no-touch
.c-page-header .e-search-form input[type="text"]:active,
body.no-touch
.c-page-header .e-search-form input[type="text"]:focus, body.no-touch
.c-page-header .e-search-form input[type="password"]:active,
body.no-touch
.c-page-header .e-search-form input[type="password"]:focus {
  background-color: #fff;
  border-color: #b9b9b9;
  color: #000;
}

.c-page-header .e-search-form .e-input:disabled,
.c-page-header .e-search-form input[type="text"]:disabled,
.c-page-header .e-search-form input[type="password"]:disabled {
  background-color: #ededed;
  border-color: #ededed;
  color: #b9b9b9;
}

.c-page-header .e-protected-form {
  font-size: 1.75em;
}

.c-page-header .e-protected-form .e-input,
.c-page-header .e-protected-form input[type="text"],
.c-page-header .e-protected-form input[type="password"],
.c-page-header .e-protected-form .e-button {
  line-height: 1em;
  text-transform: uppercase;
}

.c-page-header ul.errorlist {
  font-size: 75%;
  font-style: italic;
}

.c-page-header .e-link {
  display: inline-block;
  margin-bottom: 0;
}

.c-page-header .e-link:not(:last-child)::after {
  content: '\2014';
  display: inline-block;
  font-size: .5em;
  margin: 0 1.5em;
  vertical-align: top;
}

.c-page-header .e-search-form {
  font-size: 0;
  margin-top: 1rem;
}

.c-page-header .e-search-form .e-input[type="text"] {
  margin-right: 1em;
  min-width: 35vw;
  width: 210px;
}

.c-page-header .e-protected-form {
  display: -ms-flexbox;
  display: flex;
  max-width: 25rem;
  width: 75%;
}

.c-page-header .e-protected-form .e-input {
  border-bottom: 2px solid #fff;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  padding: .5em 0;
}

.c-page-header .e-protected-form .e-input:-webkit-autofill, .c-page-header .e-protected-form .e-input:-webkit-autofill:hover, .c-page-header .e-protected-form .e-input:-webkit-autofill:focus {
  -webkit-box-shadow: none;
  -webkit-text-fill-color: #fff;
  transition: background-color 5000s ease-in-out 0s;
}

.c-page-header .e-protected-form .e-button {
  -ms-flex: 0 0 2em;
      flex: 0 0 2em;
  font-size: 0;
  padding: 0 .5rem;
}

.c-page-header .e-protected-form .e-button.v-submit::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 2.7rem;
  vertical-align: middle;
  content: "";
}

@media (min-width: 530px) {
  .c-page-header .e-usps {
    margin-bottom: 3em;
    margin-top: 2em;
  }
}

.c-page-header.v-centered {
  text-align: center;
}

.c-page-header:not(.v-no-dash) {
  margin-bottom: 1rem;
}

.c-page-header:not(.v-no-dash)::after {
  content: '\2014';
  display: block;
}

/*---
title: Paging
description: Paging button list
section: Elements
---
*/
.c-paging {
  display: inline-block;
  font-size: 0;
}

.c-paging .e-paging-item {
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-paging .e-paging-item {
  border-bottom: 1px solid currentColor;
  display: inline-block;
  height: 26px;
  margin-right: 3px;
  opacity: .3;
  padding: 2px 0;
  text-align: center;
  transition: opacity 0.15s ease-out, color 0.15s ease-out;
  vertical-align: bottom;
  width: 40px;
}

.c-paging .e-paging-item.is-active {
  color: inherit;
  opacity: 1;
}

body.no-touch .c-paging .e-paging-item:hover {
  color: inherit;
  opacity: 1;
}

body.touch .c-paging .e-paging-item:active {
  color: inherit;
  opacity: 1;
}

/*---
title: Photoreel
description: Allows a set of photo's to be shown in an interesting way
section: Components
---
*/
@media (max-width: 529px) {
  .c-photoreel {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-photoreel {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1480px) {
  .c-photoreel {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (max-width: 529px) {
  .c-photoreel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-photoreel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-photoreel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) {
  .c-photoreel .e-columns {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: row;
        flex-direction: row;
  }
}

.c-photoreel .e-column {
  position: relative;
}

@media (max-width: 529px) {
  .c-photoreel .e-column {
    float: right;
    width: calc(50% - 3px);
  }
  .c-photoreel .e-column.v-antiscroll {
    float: left;
  }
  .c-photoreel .e-column.v-large {
    float: none;
    width: 100%;
  }
  .c-photoreel .e-column:not(.v-small) {
    margin-top: 8.33333vw;
  }
  .c-photoreel .e-column:not(.v-small) .e-item {
    margin-top: 0;
  }
  .c-photoreel .e-column:not(.v-large) {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 530px) {
  .c-photoreel .e-column {
    -ms-flex: 1 1 30%;
        flex: 1 1 30%;
    padding: 0 6px;
  }
  .c-photoreel .e-column.v-large {
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    padding-right: 5%;
  }
}

@media (min-width: 800px) {
  .c-photoreel .e-column {
    -ms-flex: 1 1 30%;
        flex: 1 1 30%;
    padding: 0 8px;
  }
  .c-photoreel .e-column.v-large {
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    padding-right: 5%;
  }
}

@media (min-width: 1180px) {
  .c-photoreel .e-column {
    -ms-flex: 1 1 30%;
        flex: 1 1 30%;
    padding: 0 16px;
  }
  .c-photoreel .e-column.v-large {
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    padding-right: 5%;
  }
}

@media (min-width: 1480px) {
  .c-photoreel .e-column {
    -ms-flex: 1 1 30%;
        flex: 1 1 30%;
    padding: 0 16px;
  }
  .c-photoreel .e-column.v-large {
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    padding-right: 5%;
  }
}

@media (max-width: 529px) and (max-width: 529px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (max-width: 529px) and (min-width: 530px) and (max-width: 799px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (max-width: 529px) and (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (max-width: 529px) and (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (max-width: 529px) and (min-width: 1480px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (max-width: 529px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 530px) and (max-width: 799px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 1480px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (max-width: 529px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (min-width: 530px) and (max-width: 799px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (min-width: 1480px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (max-width: 529px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (min-width: 530px) and (max-width: 799px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (min-width: 1480px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 1480px) and (max-width: 529px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 1480px) and (min-width: 530px) and (max-width: 799px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 1480px) and (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 1480px) and (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

@media (min-width: 1480px) and (min-width: 1480px) {
  .c-photoreel .e-column .e-column-content {
    margin-top: -4.16667vw;
    margin-bottom: -4.16667vw;
  }
}

.c-photoreel .e-column.v-large .e-item-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
}

.c-photoreel .e-column.v-large .e-item-title:first-child {
  margin-top: 0;
}

.c-photoreel .e-column.v-large .e-item-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-photoreel .e-column.v-large .e-item-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-photoreel .e-column.v-large .e-item-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel .e-column.v-large .e-item-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel .e-column.v-large .e-item-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-photoreel .e-column.v-large .e-item-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-photoreel .e-column.v-large .e-item-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-photoreel .e-column:not(.v-large) .e-item-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
}

.c-photoreel .e-column:not(.v-large) .e-item-title:first-child {
  margin-top: 0;
}

.c-photoreel .e-column:not(.v-large) .e-item-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-photoreel .e-column:not(.v-large) .e-item-title {
    font-size: 10px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-photoreel .e-column:not(.v-large) .e-item-title {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel .e-column:not(.v-large) .e-item-title {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel .e-column:not(.v-large) .e-item-title {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .c-photoreel .e-column:not(.v-large) .e-item-title {
    font-size: 20px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-photoreel .e-column:not(.v-large) .e-item-title {
    font-size: calc(10px + (20 - 10) * (100vw - 320px) / (1920 - 320));
  }
}

@media (max-width: 529px) and (max-width: 529px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (max-width: 529px) and (min-width: 530px) and (max-width: 799px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (max-width: 529px) and (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (max-width: 529px) and (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (max-width: 529px) and (min-width: 1480px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (max-width: 529px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 530px) and (max-width: 799px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 1480px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (max-width: 529px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (min-width: 530px) and (max-width: 799px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (min-width: 1480px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (max-width: 529px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (min-width: 530px) and (max-width: 799px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (min-width: 1480px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1480px) and (max-width: 529px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1480px) and (min-width: 530px) and (max-width: 799px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1480px) and (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1480px) and (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1480px) and (min-width: 1480px) {
  .c-photoreel .e-item {
    margin-top: 4.16667vw;
    margin-bottom: 4.16667vw;
  }
}

.c-photoreel .e-sidetext {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .77rem;
  font-weight: normal;
  letter-spacing: initial;
  line-height: 1.5em;
  text-transform: uppercase;
  display: inline-block;
  height: 0;
  position: absolute;
  text-align: right;
  top: 0;
  transform: translateX(-100%) rotate(-90deg);
  transform-origin: top right;
  width: 300px;
}

.c-photoreel .e-sidetext:first-child {
  margin-top: 0;
}

.c-photoreel .e-sidetext:last-child {
  margin-bottom: 0;
}

.c-photoreel .e-sidetext .e-span {
  display: block;
  transform: translateY(-200%);
}

@media (max-width: 529px) {
  .c-photoreel .e-sidetext {
    left: 3px;
  }
  .c-photoreel .e-sidetext .e-span {
    height: 12px;
    line-height: 12px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-photoreel .e-sidetext {
    left: 6px;
  }
  .c-photoreel .e-sidetext .e-span {
    height: 24px;
    line-height: 24px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-photoreel .e-sidetext {
    left: 8px;
  }
  .c-photoreel .e-sidetext .e-span {
    height: 32px;
    line-height: 32px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-photoreel .e-sidetext {
    left: 16px;
  }
  .c-photoreel .e-sidetext .e-span {
    height: 64px;
    line-height: 64px;
  }
}

@media (min-width: 1480px) {
  .c-photoreel .e-sidetext {
    left: 16px;
  }
  .c-photoreel .e-sidetext .e-span {
    height: 64px;
    line-height: 64px;
  }
}

@media (min-width: 530px) {
  .c-photoreel .e-sidetext .e-span {
    transform: translateY(-110%);
  }
}

@media (min-width: 800px) {
  .c-photoreel .e-sidetext .e-span {
    transform: translateY(-120%);
  }
}

@media (min-width: 1180px) {
  .c-photoreel .e-sidetext .e-span {
    transform: translateY(-100%);
  }
}

.c-photoreel .e-item-title {
  margin-bottom: 1rem;
}

.c-photoreel .e-item-title::after {
  content: '\2014';
  display: block;
}

.c-photoreel .e-item-link {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .87rem;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
}

.c-photoreel .e-item-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-photoreel .e-item-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-photoreel .e-item-link.is-active .e-span::after {
  width: 0;
}

.c-photoreel .e-item-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-photoreel .e-item-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-photoreel .e-item-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.c-photoreel .e-item-link:first-child {
  margin-top: 0;
}

.c-photoreel .e-item-link:last-child {
  margin-bottom: 0;
}

.c-photoreel .e-column-content {
  width: 100%;
}

.c-photoreel .e-outer-constrainer {
  overflow: hidden;
}

.c-photoreel .e-item {
  position: relative;
}

.c-photoreel .e-item.v-dark {
  color: #fff;
}

.c-photoreel .e-item.v-dark .e-item-title {
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
}

.c-photoreel .e-item:not(.v-dark) {
  color: #000;
}

.c-photoreel .e-item:not(.v-dark) .e-item-title {
  text-shadow: 0 0 3px rgba(255, 255, 255, 0.15);
}

.c-photoreel .e-item-content {
  bottom: 0;
  display: inline-block;
  padding: 10%;
  position: absolute;
  right: 0;
  text-align: center;
}

.c-photoreel .e-item-link {
  position: relative;
  z-index: 100;
}

.c-photoreel .e-item-text + .e-item-link {
  margin-top: 2rem;
}

@media (min-width: 530px) {
  .c-photoreel .e-item {
    height: auto;
    max-width: 100%;
    position: relative;
    transition: opacity 0.15s ease-out;
    width: 100%;
  }
  .c-photoreel .e-column:not(.v-large) .e-item {
    opacity: .5;
  }
  body.no-touch .c-photoreel .e-column:not(.v-large) .e-item:hover {
    opacity: 1;
  }
  body.touch .c-photoreel .e-column:not(.v-large) .e-item:active {
    opacity: 1;
  }
}

@media (max-width: 529px) {
  .c-photoreel.v-alternative .e-column:last-child {
    float: right;
  }
}

@media (min-width: 530px) {
  .c-photoreel.v-alternative .e-column {
    -ms-flex-order: 0;
        order: 0;
  }
  .c-photoreel.v-alternative .e-column.v-large {
    -ms-flex-order: 1;
        order: 1;
  }
  .c-photoreel.v-alternative .e-column:last-child {
    -ms-flex-order: 2;
        order: 2;
  }
}

@media (min-width: 530px) {
  .c-photoreel.v-alternative .e-column {
    -ms-flex: 1 1 20%;
        flex: 1 1 20%;
  }
  .c-photoreel.v-alternative .e-column.v-large {
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    padding-left: 10%;
    padding-right: 10%;
  }
}

@media (min-width: 800px) {
  .c-photoreel.v-alternative .e-column {
    -ms-flex: 1 1 20%;
        flex: 1 1 20%;
  }
  .c-photoreel.v-alternative .e-column.v-large {
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    padding-left: 10%;
    padding-right: 10%;
  }
}

@media (min-width: 1180px) {
  .c-photoreel.v-alternative .e-column {
    -ms-flex: 1 1 20%;
        flex: 1 1 20%;
  }
  .c-photoreel.v-alternative .e-column.v-large {
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    padding-left: 10%;
    padding-right: 10%;
  }
}

@media (min-width: 1480px) {
  .c-photoreel.v-alternative .e-column {
    -ms-flex: 1 1 20%;
        flex: 1 1 20%;
  }
  .c-photoreel.v-alternative .e-column.v-large {
    -ms-flex-preferred-size: 60%;
        flex-basis: 60%;
    padding-left: 10%;
    padding-right: 10%;
  }
}

/*---
title: Picture
description: To display a responsive image
section: Elements
---
*/
.c-picture .e-picture-img {
  display: inline-block;
  height: auto;
  width: 100%;
}

.c-picture .e-picture-img:not([src]) {
  display: none;
}

/*---
title: Product carousel (using iDangerous Swiper)
section: Components
---
*/
.c-product-carousel {
  color: #fff;
}

.c-product-carousel .e-navigate {
  font-size: 0;
  height: 32px;
  position: absolute;
  width: 32px;
  z-index: 100;
}

.c-product-carousel .e-navigate .e-span {
  transform: translateY(-100%);
}

.c-product-carousel .e-navigate.v-forward {
  right: -10%;
}

.c-product-carousel .e-navigate.v-forward .e-span::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 32px;
  vertical-align: middle;
  content: "";
  color: #fff;
}

.c-product-carousel .e-navigate.v-back {
  left: -10%;
}

.c-product-carousel .e-navigate.v-back .e-span::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 32px;
  vertical-align: middle;
  content: "";
  color: #fff;
}

.c-product-carousel.v-dark-controls {
  color: #000;
}

.c-product-carousel.v-dark-controls__navigation {
  color: #000;
}

.c-product-carousel.v-dark-controls__pagination .swiper-pagination-bullet {
  border-color: #000;
}

.c-product-carousel.v-dark-controls__pagination .swiper-pagination-bullet-active {
  background: #000;
}

@media (max-width: 529px) {
  .c-product-carousel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-product-carousel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-product-carousel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-product-carousel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-product-carousel .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

.c-product-carousel .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
  color: #000;
}

.c-product-carousel .e-title:first-child {
  margin-top: 0;
}

.c-product-carousel .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-product-carousel .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-product-carousel .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-product-carousel .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-product-carousel .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-product-carousel .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-product-carousel .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-product-carousel .e-title::after {
  content: '\2014';
  display: block;
}

.c-product-carousel .swiper-container {
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.c-product-carousel .swiper-container-no-flexbox .swiper-slide {
  float: left;
}

.c-product-carousel .swiper-container-vertical > .swiper-wrapper {
  -ms-flex-direction: column;
      flex-direction: column;
}

.c-product-carousel .swiper-wrapper {
  box-sizing: content-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  position: relative;
  transform-style: preserve-3d;
  transition-property: transform;
  width: 100%;
  z-index: 1;
}

.c-product-carousel .swiper-container-android .swiper-slide,
.c-product-carousel .swiper-wrapper {
  transform: translate3d(0, 0, 0);
}

.c-product-carousel .swiper-container-multirow > .swiper-wrapper {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.c-product-carousel .swiper-container-free-mode > .swiper-wrapper {
  margin: 0 auto;
  transition-timing-function: ease-out;
}

.c-product-carousel .swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 100%;
  position: relative;
  transform-style: preserve-3d;
  width: 100%;
}

.c-product-carousel .swiper-container .swiper-notification {
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  z-index: -1000;
}

.c-product-carousel .swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
      touch-action: pan-y;
}

.c-product-carousel .swiper-wp8-vertical {
  -ms-touch-action: pan-x;
      touch-action: pan-x;
}

.c-product-carousel .swiper-button-prev,
.c-product-carousel .swiper-button-next {
  background-position: center;
  background-repeat: no-repeat;
  background-size: 27px 44px;
  cursor: pointer;
  height: 44px;
  margin-top: -22px;
  position: absolute;
  top: 50%;
  width: 44px;
  z-index: 10;
}

.c-product-carousel .swiper-button-prev.swiper-button-disabled,
.c-product-carousel .swiper-button-next.swiper-button-disabled {
  cursor: auto;
  opacity: .35;
  pointer-events: none;
}

.c-product-carousel .swiper-button-prev,
.c-product-carousel .swiper-container-rtl .swiper-button-next {
  content: '>';
  left: 10px;
  right: auto;
}

.c-product-carousel .swiper-button-next,
.c-product-carousel .swiper-container-rtl .swiper-button-prev {
  content: '<';
  left: auto;
  right: 10px;
}

.c-product-carousel .swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.c-product-carousel .swiper-container-fade .swiper-slide {
  pointer-events: none;
}

.c-product-carousel .swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.c-product-carousel .swiper-container-fade .swiper-slide-active {
  pointer-events: auto;
}

.c-product-carousel .swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.c-product-carousel .swiper-container {
  overflow: hidden;
  position: relative;
}

.c-product-carousel .swiper-wrapper {
  will-change: transform;
}

.c-product-carousel .swiper-slide-active,
.c-product-carousel .swiper-slide-active + .swiper-slide,
.c-product-carousel .swiper-slide-active + .swiper-slide + .swiper-slide {
  opacity: 1;
}

.c-product-carousel .swiper-slide-active .c-hit-target,
.c-product-carousel .swiper-slide-active + .swiper-slide .c-hit-target,
.c-product-carousel .swiper-slide-active + .swiper-slide + .swiper-slide .c-hit-target {
  display: block;
}

.c-product-carousel .e-swiper-slide, .c-product-carousel .e-swiper-slide > * {
  cursor: grab;
}

.c-product-carousel .e-navigate.v-forward {
  right: 5px;
  transform: translateY(-50%);
}

.c-product-carousel .e-navigate.v-back {
  left: 5px;
  transform: translateY(-50%);
}

.c-product-carousel .e-navigate .e-span.e-span {
  position: relative;
  top: 50%;
}

.c-product-carousel .e-navigate .e-span.e-span::before, .c-product-carousel .e-navigate .e-span.e-span::after {
  color: inherit;
  font-size: 24px !important;
}

.c-product-carousel .e-item-title {
  font-weight: normal;
  letter-spacing: 0.94px;
  line-height: 1.33em;
  text-transform: uppercase;
  color: #000;
  margin-top: 1.33em;
  text-transform: uppercase;
  word-wrap: break-word;
}

.c-product-carousel .e-item-title::after {
  content: '\2014';
  display: block;
}

@media (max-width: 529px) {
  .c-product-carousel .e-item-title {
    font-size: 15px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-product-carousel .e-item-title {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-product-carousel .e-item-title {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-product-carousel .e-item-title {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .c-product-carousel .e-item-title {
    font-size: 22px;
  }
}

.c-product-carousel .e-item-title::after {
  line-height: inherit;
  height: 1.33em;
}

.c-product-carousel .e-item-enquire, .c-product-carousel .e-item-price {
  font-weight: normal;
  letter-spacing: 0.94px;
  line-height: 1.33em;
  text-transform: uppercase;
  color: #000;
}

@media (max-width: 529px) {
  .c-product-carousel .e-item-enquire, .c-product-carousel .e-item-price {
    font-size: 15px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-product-carousel .e-item-enquire, .c-product-carousel .e-item-price {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-product-carousel .e-item-enquire, .c-product-carousel .e-item-price {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-product-carousel .e-item-enquire, .c-product-carousel .e-item-price {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .c-product-carousel .e-item-enquire, .c-product-carousel .e-item-price {
    font-size: 22px;
  }
}

.c-product-carousel .e-pagination {
  bottom: 5%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: 100;
}

.c-product-carousel .e-pagination .swiper-pagination-bullet {
  border: 1px solid #fff;
  border-radius: 50%;
  display: inline-block;
  height: 7px;
  width: 7px;
}

.c-product-carousel .e-pagination .swiper-pagination-bullet:not(:last-child) {
  margin-right: 12px;
}

.c-product-carousel .e-pagination .swiper-pagination-bullet-active {
  background: #fff;
}

@media (min-width: 530px) {
  .c-product-carousel .e-navigate {
    display: none;
  }
}

@media (max-width: 529px) {
  .c-product-carousel .e-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-product-carousel .e-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-product-carousel .e-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-product-carousel .e-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 1480px) {
  .c-product-carousel .e-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}

/*---
title: Quote
description: A quote and at attribution.
section: Components
---
*/
.c-quote {
  text-align: center;
}

@media (max-width: 529px) {
  .c-quote {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-quote {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-quote {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-quote {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-quote {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (max-width: 529px) {
  .c-quote .e-wrapper {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-quote .e-wrapper {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 16.66667%;
    margin-right: 16.66667%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-quote .e-wrapper {
    width: 50%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 25%;
    margin-right: 25%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-quote .e-wrapper {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 29.16667%;
    margin-right: 29.16667%;
  }
}

@media (min-width: 1480px) {
  .c-quote .e-wrapper {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 33.33333%;
    margin-right: 33.33333%;
  }
}

.c-quote .e-text {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
}

.c-quote .e-text:first-child {
  margin-top: 0;
}

.c-quote .e-text:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-quote .e-text {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-quote .e-text {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-quote .e-text {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-quote .e-text {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-quote .e-text {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-quote .e-text {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-quote .e-text {
  margin-bottom: 4rem;
  position: relative;
}

.c-quote .e-text::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  font-size: 1em;
  left: -1em;
  position: absolute;
  top: -1em;
}

.c-quote .e-text::after {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  bottom: -1em;
  font-size: 1em;
  position: absolute;
  right: -1em;
}

.c-quote .e-attribution::before {
  background-color: currentColor;
  content: '';
  display: block;
  height: 2rem;
  margin: 0 auto 1em;
  width: 1px;
}

/*---
title: Related
description: Small grid of related items.
section: Components
---
*/
@media (max-width: 529px) {
  .c-related .e-inner-constrainer {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-related .e-inner-constrainer {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-related .e-inner-constrainer {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-related .e-inner-constrainer {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-related .e-inner-constrainer {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

.c-related .e-title-wrapper {
  transform: rotate(90deg) translateX(100%);
  transform-origin: 100% 0;
  white-space: nowrap;
}

@media (max-width: 529px) {
  .c-related .e-title-wrapper {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-related .e-title-wrapper {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-related .e-title-wrapper {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-related .e-title-wrapper {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .c-related .e-title-wrapper {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-related .e-title-wrapper {
    margin-left: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-related .e-title-wrapper {
    margin-left: 8.33333%;
  }
}

.c-related .e-title-wrapper br {
  width: 1en;
}

@media (max-width: 529px) {
  .c-related .e-title-wrapper {
    padding-top: 0.25vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-related .e-title-wrapper {
    padding-top: 0.5vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-related .e-title-wrapper {
    padding-top: 0.66667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-related .e-title-wrapper {
    padding-top: 1.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-related .e-title-wrapper {
    padding-top: 1.33333vw;
  }
}

@media (max-width: 529px) {
  .c-related .e-title-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-related .e-title-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-related .e-title-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-related .e-title-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}

@media (min-width: 1480px) {
  .c-related .e-title-wrapper {
    padding-left: 0;
    padding-right: 0;
  }
}

.c-related .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-related .e-title:first-child {
  margin-top: 0;
}

.c-related .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-related .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-related .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-related .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-related .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-related .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-related .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-related .e-title::after {
  content: '\2014';
  display: block;
}

@media (max-width: 529px) {
  .c-related .e-item {
    width: 37.5%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
  .c-related .e-item:nth-child(2n+3) {
    margin-left: 16.66667%;
    clear: left;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-related .e-item {
    width: 37.5%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
  .c-related .e-item:nth-child(2n+3) {
    margin-left: 16.66667%;
    clear: left;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-related .e-item {
    width: 37.5%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
  .c-related .e-item:nth-child(2n+3) {
    margin-left: 16.66667%;
    clear: left;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-related .e-item {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .c-related .e-item {
    width: 16.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.c-related .e-item-title {
  margin-bottom: 1rem;
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
}

.c-related .e-item-title::after {
  content: '\2014';
  display: block;
}

.c-related .e-item-title:first-child {
  margin-top: 0;
}

.c-related .e-item-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-related .e-item-title {
    font-size: 10px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-related .e-item-title {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-related .e-item-title {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-related .e-item-title {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .c-related .e-item-title {
    font-size: 20px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-related .e-item-title {
    font-size: calc(10px + (20 - 10) * (100vw - 320px) / (1920 - 320));
  }
}

.c-related .e-item-subtitle,
.c-related .e-more-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-related .e-item-subtitle:first-child,
.c-related .e-more-title:first-child {
  margin-top: 0;
}

.c-related .e-item-subtitle:last-child,
.c-related .e-more-title:last-child {
  margin-bottom: 0;
}

.c-related .e-item-date {
  font-weight: bold;
}

.c-related .e-item-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-related .e-item-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-related .e-item-link.is-active .e-span::after {
  width: 0;
}

.c-related .e-item-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-related .e-item-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-related .e-item-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.c-related .e-richtext-wrapper p {
  margin-top: 1.5em;
  margin-bottom: 1.5em;
}

.c-related .e-richtext-wrapper p:first-child {
  margin-top: 0;
}

.c-related .e-richtext-wrapper p:last-child {
  margin-bottom: 0;
}

.c-related .e-richtext-wrapper ul {
  margin: 1.5em 0;
}

.c-related .e-richtext-wrapper li {
  margin-bottom: .5em;
  padding-left: 2.5em;
}

.c-related .e-richtext-wrapper li::before {
  content: '\2014';
  display: inline-block;
  float: left;
  margin-left: -2.5em;
  width: 2.5em;
}

.c-related .e-richtext-wrapper p a,
.c-related .e-richtext-wrapper li a {
  border-bottom: 1px solid currentColor;
  text-decoration: none;
  transition: border-bottom-color 0.05s ease-out;
}

body.no-touch .c-related .e-richtext-wrapper p a:hover, body.no-touch
.c-related .e-richtext-wrapper li a:hover {
  border-bottom-color: transparent;
  text-decoration: none;
  transition: border-bottom-color 0.05s ease-out;
}

body.touch .c-related .e-richtext-wrapper p a:active, body.touch
.c-related .e-richtext-wrapper li a:active {
  border-bottom-color: transparent;
  text-decoration: none;
  transition: border-bottom-color 0.05s ease-out;
}

.c-related .e-richtext-wrapper p b,
.c-related .e-richtext-wrapper p strong,
.c-related .e-richtext-wrapper li b,
.c-related .e-richtext-wrapper li strong {
  font-weight: bold;
}

.c-related .e-richtext-wrapper p i,
.c-related .e-richtext-wrapper p em,
.c-related .e-richtext-wrapper li i,
.c-related .e-richtext-wrapper li em {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  font-style: normal;
}

.c-related .e-richtext-wrapper p i:first-child,
.c-related .e-richtext-wrapper p em:first-child,
.c-related .e-richtext-wrapper li i:first-child,
.c-related .e-richtext-wrapper li em:first-child {
  margin-top: 0;
}

.c-related .e-richtext-wrapper p i:last-child,
.c-related .e-richtext-wrapper p em:last-child,
.c-related .e-richtext-wrapper li i:last-child,
.c-related .e-richtext-wrapper li em:last-child {
  margin-bottom: 0;
}

.c-related .e-richtext-wrapper table {
  border: none;
  margin: 20px 0 40px;
  width: 100%;
}

.c-related .e-richtext-wrapper th {
  background-color: #EFEFEF;
  font-weight: inherit;
  text-transform: uppercase;
}

.c-related .e-richtext-wrapper th,
.c-related .e-richtext-wrapper td {
  padding: 8px 16px;
  white-space: nowrap;
}

.c-related .e-richtext-wrapper td {
  text-align: center;
}

.c-related .e-inner-constrainer {
  background-color: #ededed;
}

.c-related .e-title-wrapper {
  position: relative;
}

.c-related .e-items {
  margin-bottom: -2em;
}

.c-related .e-items::after {
  clear: both;
  content: '';
  display: table;
}

.c-related .e-item {
  margin-bottom: 2em;
}

.c-related .e-item.v-see-more .c-picture {
  opacity: 0;
}

.c-related .e-item-title {
  margin-top: 1em;
}

.c-related .e-more-text-wrapper {
  position: absolute;
  top: 0;
  width: 100%;
}

.c-related .e-richtext-wrapper {
  margin-bottom: 1em;
  position: relative;
}

.c-related .e-item-link {
  bottom: 0;
  position: absolute;
}

@media (min-width: 1180px) {
  .c-related .e-items {
    margin-bottom: -4em;
  }
}

/*---
title: Scroll hint
description: A small arrow to indicate content below the fold.
section: Elements
---
*/
.c-scroll-hint {
  color: #fff;
  height: 0;
  position: relative;
  transform: none;
  transition: transform 0.35s ease-out, opacity 0.35s ease-out, z-index 0s linear;
  z-index: 99;
}

@media (max-width: 529px) {
  .c-scroll-hint {
    margin-top: -4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-scroll-hint {
    margin-top: -4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-scroll-hint {
    margin-top: -4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-scroll-hint {
    margin-top: -4.16667vw;
  }
}

@media (min-width: 1480px) {
  .c-scroll-hint {
    margin-top: -4.16667vw;
  }
}

@media (max-width: 529px) {
  .c-scroll-hint {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-scroll-hint {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-scroll-hint {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-scroll-hint {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1480px) {
  .c-scroll-hint {
    margin-bottom: 4.16667vw;
  }
}

.c-scroll-hint .e-span {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-scroll-hint .e-span:first-child {
  margin-top: 0;
}

.c-scroll-hint .e-span:last-child {
  margin-bottom: 0;
}

.c-scroll-hint .e-link {
  display: block;
  height: 50px;
  left: 50%;
  position: relative;
  transform: translateX(-50%) translateY(-133%);
  width: 50px;
}

.c-scroll-hint .e-link::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  animation: grabattention 2s ease-in-out infinite;
  display: inline-block;
  height: 50px;
  line-height: 50px;
  text-align: center;
  width: 50px;
}

body.no-touch .c-scroll-hint .e-link:hover .e-span {
  opacity: 1;
  transform: translateY(0);
}

body.touch .c-scroll-hint .e-link:active .e-span {
  opacity: 1;
  transform: translateY(0);
}

.c-scroll-hint .e-span {
  display: block;
  left: -125px;
  opacity: 0;
  position: absolute;
  text-align: center;
  top: -1em;
  transform: translateY(15%);
  transition: transform 0.35s ease-out, opacity 0.35s ease-out;
  width: 300px;
}

@media (min-width: 530px) {
  .c-scroll-hint .e-link {
    transform: translateX(-50%) translateY(-50%);
  }
}

@media (min-width: 1180px) {
  .c-scroll-hint .e-link {
    transform: translateX(-50%) translateY(-20%);
  }
}

.c-scroll-hint.is-hidden {
  opacity: 0;
  transform: translateY(-25%);
  transition: transform 0.35s ease-out, opacity 0.35s ease-out, z-index 0s linear 0.5s;
  z-index: -1;
}

/*---
title: Search results
description: For a list of search results.
section: Components
---
*/
@media (max-width: 529px) {
  .c-search-results {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-search-results {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-search-results {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-search-results {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-search-results {
    margin-top: 8.33333vw;
    margin-bottom: 8.33333vw;
  }
}

@media (max-width: 529px) {
  .c-search-results .e-item-title,
  .c-search-results .e-item-text,
  .c-search-results .e-item-category {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-search-results .e-item-title,
  .c-search-results .e-item-text,
  .c-search-results .e-item-category {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-search-results .e-item-title,
  .c-search-results .e-item-text,
  .c-search-results .e-item-category {
    width: 50%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-search-results .e-item-title,
  .c-search-results .e-item-text,
  .c-search-results .e-item-category {
    width: 41.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-search-results .e-item-title,
  .c-search-results .e-item-text,
  .c-search-results .e-item-category {
    width: 33.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

@media (max-width: 529px) {
  .c-search-results .e-item-image {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-search-results .e-item-image {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-search-results .e-item-image {
    width: 33.33333%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-search-results .e-item-image {
    width: 25%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 25%;
  }
}

@media (min-width: 1480px) {
  .c-search-results .e-item-image {
    margin-left: 8.33333%;
    width: 16.66667%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 33.33333%;
  }
}

@media (max-width: 529px) {
  .c-search-results .e-footer {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-search-results .e-footer {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-search-results .e-footer {
    width: 75%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-search-results .e-footer {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .c-search-results .e-footer {
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 8.33333%;
  }
}

.c-search-results .e-item-category {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-search-results .e-item-category:first-child {
  margin-top: 0;
}

.c-search-results .e-item-category:last-child {
  margin-bottom: 0;
}

.c-search-results .e-item-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-search-results .e-item-title:first-child {
  margin-top: 0;
}

.c-search-results .e-item-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-search-results .e-item-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-search-results .e-item-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-search-results .e-item-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-search-results .e-item-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-search-results .e-item-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-search-results .e-item-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-search-results .e-item-title::after {
  content: '\2014';
  display: block;
}

.c-search-results .e-item {
  padding-bottom: 2rem;
  padding-top: 2rem;
  position: relative;
}

.c-search-results .e-item::after {
  clear: both;
  content: '';
  display: table;
}

.c-search-results .c-paging {
  float: right;
}

.c-search-results .e-item-category {
  color: #b9b9b9;
  margin-bottom: .5rem;
}

.c-search-results .e-item-title,
.c-search-results .e-item-text {
  clear: left;
}

.c-search-results .e-item-title {
  margin-bottom: 0;
  margin-top: 0;
}

.c-search-results .e-item-text {
  margin-top: .5rem;
}

@media (max-width: 529px) {
  .c-search-results .e-item-image {
    margin-bottom: 2rem;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-search-results .e-item-image {
    margin-bottom: 2rem;
  }
}

/*---
title: Search
description: Search button with input overlay
section: Components
---
*/
.c-search .e-search-overlay {
  position: fixed;
  top: 0;
  left: 0;
  color: #fff;
  cursor: pointer;
  height: 0;
  width: 100%;
  overflow: hidden;
  z-index: 999;
  background-color: rgba(0, 0, 0, 0.75);
  opacity: 0;
  transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1);
}

.c-search .e-search-overlay .e-search-wrapper {
  opacity: 0;
  transform: scale(0.95);
  transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1), transform 0.3s cubic-bezier(0, 0, 0.58, 1);
}

.c-search .e-search-overlay:target, .c-search .e-search-overlay.is-open {
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  height: 100%;
  opacity: 1;
  z-index: 1100;
}

.c-search .e-search-overlay:target .e-search-wrapper, .c-search .e-search-overlay.is-open .e-search-wrapper {
  opacity: 1;
  transform: none;
}

.c-search .e-search-overlay:target + .e-open-search, .c-search .e-search-overlay.is-open + .e-open-search {
  opacity: 0;
}

.c-search .e-search-overlay.is-closing {
  height: 100%;
}

.c-search .e-search-form {
  font-size: 1.75em;
}

.c-search .e-search-form .e-input,
.c-search .e-search-form input[type="text"] {
  line-height: 1em;
  text-transform: uppercase;
}

.c-search .e-search-form .e-input::selection,
.c-search .e-search-form input[type="text"]::selection {
  background-color: #fff;
  color: #000;
}

.c-search .e-search-form .e-input::-moz-selection,
.c-search .e-search-form input[type="text"]::-moz-selection {
  background-color: #fff;
  color: #000;
}

.c-search .e-open-search {
  display: inline-block;
  font-size: 0;
  height: 50px;
  opacity: 1;
  transition: opacity 0.15s ease-out;
  width: 50px;
}

.c-search .e-open-search::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
}

.c-search .e-search-wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  height: 100vh;
  -ms-flex-pack: center;
      justify-content: center;
}

.c-search .e-search-content-wrapper {
  max-height: 75vh;
  position: relative;
}

.c-search .e-search-form {
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  max-width: 80%;
  width: 600px;
}

.c-search .e-input {
  border-bottom: 2px solid #fff;
  -ms-flex: 1 1 auto;
      flex: 1 1 auto;
  padding: .5em 0;
}

.c-search .e-input:-webkit-autofill, .c-search .e-input:-webkit-autofill:hover, .c-search .e-input:-webkit-autofill:focus {
  -webkit-box-shadow: none;
  -webkit-text-fill-color: #fff;
  transition: background-color 5000s ease-in-out 0s;
}

.c-search .e-button {
  -ms-flex: 0 0 2em;
      flex: 0 0 2em;
  font-size: 0;
  padding: 0;
  text-align: center;
}

.c-search .e-button.v-submit::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 2.7rem;
  vertical-align: middle;
  content: "";
}

.c-search .e-close {
  display: inline-block;
  float: right;
  height: 50px;
  padding: 13px;
  text-align: center;
  width: 50px;
}

.c-search .e-close::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
}

@media (max-width: 529px) {
  .c-search .e-button {
    line-height: 2.5rem;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-search .e-button {
    line-height: 3rem;
  }
}

@media (min-width: 800px) {
  .c-search .e-button {
    line-height: 3.5rem;
  }
}

/*---
title: Share
description: Allows sharing of the current page
section: Elements
---
*/
.c-share {
  position: relative;
  text-align: right;
  z-index: 900;
}

.c-share .e-wrapper {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .77rem;
  font-weight: normal;
  letter-spacing: initial;
  line-height: 1.5em;
  text-transform: uppercase;
}

@media (max-width: 529px) {
  .c-share .e-wrapper {
    clear: both;
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-share .e-wrapper {
    clear: both;
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-share .e-wrapper {
    clear: both;
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-share .e-wrapper {
    clear: both;
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .c-share .e-wrapper {
    clear: both;
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.c-share .e-wrapper:first-child {
  margin-top: 0;
}

.c-share .e-wrapper:last-child {
  margin-bottom: 0;
}

.c-share .e-wrapper {
  display: inline-block;
  height: 0;
  padding-right: 1rem;
}

.c-share .e-label,
.c-share .e-share-button {
  display: inline-block;
  height: 2em;
  margin-top: 2em;
  vertical-align: bottom;
}

.c-share .e-label {
  margin-right: .5em;
}

.c-share .e-share-button {
  overflow: hidden;
  text-align: center;
  white-space: nowrap;
  width: 2em;
}

.c-share .e-share-button::before {
  display: inline-block;
  margin: .4em 2em .4em .4em;
}

.c-share .e-share-button.v-facebook::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 0.85rem;
  vertical-align: baseline;
  content: "";
}

.c-share .e-share-button.v-twitter::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 0.85rem;
  vertical-align: baseline;
  content: "";
}

.c-share .e-share-button.v-pinterest::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 0.85rem;
  vertical-align: baseline;
  content: "";
}

@media (max-width: 529px) {
  .c-share .e-label {
    display: none;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-share .e-label {
    margin-bottom: -.25em;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-share .e-label {
    margin-bottom: -.3em;
  }
}

@media (min-width: 1180px) {
  .c-share .e-label {
    margin-bottom: -.35em;
  }
}

.c-share.v-rotated .e-outer-constrainer {
  overflow: visible;
  position: relative;
}

.c-share.v-rotated .e-inner-constrainer {
  position: absolute;
  right: 0;
  top: 0;
  transform: rotate(-90deg);
  transform-origin: top right;
}

.c-share.v-rotated .e-wrapper {
  transform: translateY(-5.25em);
}

.c-share.v-rotated .e-share-button::before {
  transform: rotate(90deg);
  transform-origin: 50% 50%;
}

/*---
title: Shopify button
description: A button to by a product in a shopify store.
section: Components
---
*/
.c-shopify-button {
  opacity: 0;
  pointer-events: none;
  transform: translateY(10%);
  transition: transform 0.15s ease-out, opacity 0.15s ease-out;
}

.c-shopify-button .e-price,
.c-shopify-button .e-label,
.c-shopify-button .e-select {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-shopify-button .e-price:first-child,
.c-shopify-button .e-label:first-child,
.c-shopify-button .e-select:first-child {
  margin-top: 0;
}

.c-shopify-button .e-price:last-child,
.c-shopify-button .e-label:last-child,
.c-shopify-button .e-select:last-child {
  margin-bottom: 0;
}

.c-shopify-button .e-price {
  font-size: 1.5rem;
  margin-bottom: 1rem;
  margin-top: 1.75rem;
}

.c-shopify-button .e-option {
  font-size: 0;
}

.c-shopify-button .e-option:not(:first-child) {
  margin-top: 10px;
}

.c-shopify-button .e-label,
.c-shopify-button .e-dropdown {
  display: inline-block;
  vertical-align: bottom;
}

.c-shopify-button .e-label,
.c-shopify-button .e-select {
  cursor: pointer;
  height: 40px;
  line-height: 40px;
  margin-bottom: 0;
  margin-top: 0;
}

.c-shopify-button .e-label {
  max-width: 35%;
  padding-right: 15px;
  text-align: right;
  width: 80px;
}

.c-shopify-button .e-select > option {
  color: #000;
}

.c-shopify-button .e-options {
  margin: 0 auto;
  width: 200px;
}

.c-shopify-button .e-dropdown {
  max-width: 60%;
  position: relative;
  transition: color 0.15s ease-out, background-color 0.15s ease-out;
  width: 200px;
}

.c-shopify-button .e-dropdown::after {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 16px;
  vertical-align: middle;
  content: "";
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) translateX(-50%);
}

body.no-touch .c-shopify-button .e-dropdown:hover {
  background-color: #000;
  color: #fff;
}

body.touch .c-shopify-button .e-dropdown:active {
  background-color: #000;
  color: #fff;
}

.c-shopify-button .e-select {
  border: 1px solid #000;
  padding-left: 15px;
  padding-right: 30px;
  width: 100%;
}

.c-shopify-button .e-select:focus {
  border-width: 2px;
}

.c-shopify-button .e-size-guide-link-wrapper {
  display: block;
  margin-bottom: 20px;
}

.c-shopify-button .e-size-guide-link::after {
  display: none;
}

.c-shopify-button .e-shipping-costs {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .87rem;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
  display: inline-block;
  margin-bottom: 15px;
  margin-top: 0;
}

.c-shopify-button .e-shipping-costs:first-child {
  margin-top: 0;
}

.c-shopify-button .e-shipping-costs:last-child {
  margin-bottom: 0;
}

@media (min-width: 800px) {
  .c-shopify-button .e-shipping-costs {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    font-size: .73rem;
    font-weight: normal;
    letter-spacing: .5px;
    line-height: 1.3em;
    text-transform: none;
    display: block;
    margin-bottom: 15px;
  }
  .c-shopify-button .e-shipping-costs:first-child {
    margin-top: 0;
  }
  .c-shopify-button .e-shipping-costs:last-child {
    margin-bottom: 0;
  }
}

.c-shopify-button.is-visible, .c-shopify-button .e-buy-button.is-visible {
  opacity: 1;
  pointer-events: inherit;
  transform: none;
}

.c-shopify-button:not(.is-below-100-euro) .e-shipping-costs {
  display: none;
}

/*---
title: Split
description: A split layout with an image on the right, and text on the left.
section: Components
---
*/
@media (max-width: 529px) {
  .c-split .e-content-inner-wrapper {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-split .e-content-inner-wrapper {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-split .e-content-inner-wrapper {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-split .e-content-inner-wrapper {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-split .e-content-inner-wrapper {
    padding-left: 8.33333vw;
    padding-right: 8.33333vw;
  }
}

@media (max-width: 529px) {
  .c-split .e-content-inner-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-split .e-content-inner-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-split .e-content-inner-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-split .e-content-inner-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-split .e-content-inner-wrapper {
    padding-top: 8.33333vw;
    padding-bottom: 8.33333vw;
  }
}

.c-split .e-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.c-split .e-title:first-child {
  margin-top: 0;
}

.c-split .e-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-split .e-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-split .e-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-split .e-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-split .e-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-split .e-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-split .e-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-split .e-title::after {
  content: '\2014';
  display: block;
}

.c-split .e-link {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  display: inline-block;
}

.c-split .e-link:first-child {
  margin-top: 0;
}

.c-split .e-link:last-child {
  margin-bottom: 0;
}

.c-split .e-link .e-span {
  display: inline-block;
}

.c-split .e-link::after {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 22px;
  vertical-align: middle;
  content: "";
  vertical-align: bottom;
}

.c-split .e-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-split .e-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-split .e-link.is-active .e-span::after {
  width: 0;
}

.c-split .e-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-split .e-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-split .e-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.c-split .e-inner-constrainer {
  -ms-flex-align: center;
      align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

.c-split .e-content-wrapper {
  text-align: center;
}

.c-split .e-text {
  margin-bottom: 2rem;
}

@media (min-width: 530px) {
  .c-split .e-inner-constrainer {
    -ms-flex-direction: row;
        flex-direction: row;
  }
  .c-split .e-photo,
  .c-split .e-content-wrapper {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
  }
}

.c-split.v-reversed .e-inner-constrainer {
  -ms-flex-direction: column-reverse;
      flex-direction: column-reverse;
}

@media (min-width: 530px) {
  .c-split.v-reversed .e-inner-constrainer {
    -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
  }
}

/*---
title: Spread
description: A magazine-like layout for an image and columns beside it
section: Components
---
*/
.c-spread {
  overflow: hidden;
}

@media (max-width: 529px) {
  .c-spread .e-text-wrapper,
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-items,
  .c-spread .e-link {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-spread .e-text-wrapper,
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-items,
  .c-spread .e-link {
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-spread .e-text-wrapper,
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-items,
  .c-spread .e-link {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-left: 16.66667%;
    margin-right: 16.66667%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-spread .e-text-wrapper,
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-items,
  .c-spread .e-link {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 16.66667%;
    margin-right: 16.66667%;
  }
}

@media (min-width: 1480px) {
  .c-spread .e-text-wrapper,
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-items,
  .c-spread .e-link {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-left: 16.66667%;
    margin-right: 16.66667%;
  }
}

@media (max-width: 529px) {
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-text-wrapper {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-text-wrapper {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-text-wrapper {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-text-wrapper {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-text-wrapper {
    margin-top: 8.33333vw;
  }
}

@media (max-width: 529px) {
  .c-spread .c-dropcap-label {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-spread .c-dropcap-label {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-spread .c-dropcap-label {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-spread .c-dropcap-label {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1480px) {
  .c-spread .c-dropcap-label {
    margin-bottom: 4.16667vw;
  }
}

.c-spread .c-dropcap-label + .e-text-wrapper {
  margin-top: 0;
}

@media (max-width: 529px) {
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-text-wrapper,
  .c-spread .e-items:last-child {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-text-wrapper,
  .c-spread .e-items:last-child {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-text-wrapper,
  .c-spread .e-items:last-child {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-text-wrapper,
  .c-spread .e-items:last-child {
    margin-bottom: 4.16667vw;
  }
}

@media (min-width: 1480px) {
  .c-spread .e-photo-text-wrapper,
  .c-spread .e-text-wrapper,
  .c-spread .e-items:last-child {
    margin-bottom: 4.16667vw;
  }
}

.c-spread .e-item::after {
  clear: both;
  content: '';
  display: table;
}

@media (min-width: 530px) {
  .c-spread .e-item {
    clear: both;
    float: left;
    width: calc(50% - 12px);
  }
  .c-spread .e-item:nth-child(even) {
    clear: right;
    float: right;
  }
}

@media (min-width: 800px) {
  .c-spread .e-item {
    width: calc(50% - 16px);
  }
}

@media (min-width: 1180px) {
  .c-spread .e-item {
    width: calc(50% - 32px);
  }
}

@media (min-width: 1480px) {
  .c-spread .e-item {
    width: calc(50% - 32px);
  }
}

@media (max-width: 529px) {
  .c-spread .e-items {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-spread .e-items {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-spread .e-items {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-spread .e-items {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 1480px) {
  .c-spread .e-items {
    margin-top: 4.16667vw;
  }
}

@media (max-width: 529px) {
  .c-spread .e-items.v-feed .e-item-photo {
    float: left;
    width: calc(50% - 12px);
  }
}

@media (max-width: 529px) {
  .c-spread .e-items.v-feed .e-item-wrapper {
    float: right;
    width: calc(50% - 12px);
  }
}

.c-spread .e-items.v-feed .c-picture::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 12px;
  vertical-align: middle;
  content: "";
  position: absolute;
}

@media (max-width: 529px) {
  .c-spread .e-items.v-feed .c-picture::before {
    left: 3px;
    top: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-spread .e-items.v-feed .c-picture::before {
    left: 6px;
    top: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-spread .e-items.v-feed .c-picture::before {
    left: 8px;
    top: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-spread .e-items.v-feed .c-picture::before {
    left: 16px;
    top: 16px;
  }
}

@media (min-width: 1480px) {
  .c-spread .e-items.v-feed .c-picture::before {
    left: 16px;
    top: 16px;
  }
}

@media (max-width: 529px) {
  .c-spread .e-items:not(.v-feed) .e-item:nth-child(odd) .e-item-photo,
  .c-spread .e-items:not(.v-feed) .e-item:nth-child(even) .e-item-wrapper {
    float: left;
    width: calc(50% - 12px);
  }
}

@media (max-width: 529px) {
  .c-spread .e-items:not(.v-feed) .e-item:nth-child(odd) .e-item-wrapper,
  .c-spread .e-items:not(.v-feed) .e-item:nth-child(even) .e-item-photo {
    float: right;
    width: calc(50% - 12px);
  }
}

.c-spread .e-items:not(.v-feed) .e-item:nth-child(3n+3) .e-item-photo,
.c-spread .e-items:not(.v-feed) .e-item:nth-child(3n+3) .e-item-wrapper {
  width: 100%;
}

.c-spread .e-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-spread .e-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-spread .e-link.is-active .e-span::after {
  width: 100%;
}

.c-spread .e-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-spread .e-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

body.touch .c-spread .e-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 100%;
}

.c-spread .e-link,
.c-spread .e-item-title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-spread .e-link:first-child,
.c-spread .e-item-title:first-child {
  margin-top: 0;
}

.c-spread .e-link:last-child,
.c-spread .e-item-title:last-child {
  margin-bottom: 0;
}

.c-spread .e-item-date {
  font-weight: bold;
}

.c-spread .e-dropcap-label-letter {
  margin-bottom: -.2em;
}

.c-spread .e-photo-text-wrapper {
  position: absolute;
  bottom: 0;
}

.c-spread .e-wrapper {
  overflow: hidden;
}

.c-spread .e-wrapper::after {
  clear: both;
  content: '';
  display: table;
}

.c-spread .e-item-wrapper {
  margin-top: 1em;
}

.c-spread .e-item {
  margin-bottom: 2em;
  position: relative;
}

.c-spread .e-link {
  margin-bottom: 4em;
  margin-top: 2em;
}

.c-spread .e-link:last-child {
  margin-bottom: 4em;
}

.c-spread .e-text::after {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 22px;
  vertical-align: middle;
  content: "";
  display: block;
  margin-top: .5em;
}

.c-spread .e-item-title {
  margin-bottom: .25em;
}

.c-spread .e-item-title::before {
  content: '\2014 \A \A';
  white-space: pre;
}

.c-spread .e-link:not(.v-feed)::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 22px;
  vertical-align: bottom;
  content: "";
  margin-right: .5em;
}

.c-spread .e-link.v-feed::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 12px;
  vertical-align: text-bottom;
  content: "";
  margin-right: 1em;
}

.c-spread .e-items.v-feed .e-item.v-dark {
  color: #fff;
}

@media (max-width: 529px) and (max-width: 529px) {
  .c-spread {
    margin-top: 8.33333vw;
  }
}

@media (max-width: 529px) and (min-width: 530px) and (max-width: 799px) {
  .c-spread {
    margin-top: 8.33333vw;
  }
}

@media (max-width: 529px) and (min-width: 800px) and (max-width: 1179px) {
  .c-spread {
    margin-top: 8.33333vw;
  }
}

@media (max-width: 529px) and (min-width: 1180px) and (max-width: 1479px) {
  .c-spread {
    margin-top: 8.33333vw;
  }
}

@media (max-width: 529px) and (min-width: 1480px) {
  .c-spread {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (max-width: 529px) {
  .c-spread {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 530px) and (max-width: 799px) {
  .c-spread {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 800px) and (max-width: 1179px) {
  .c-spread {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 1180px) and (max-width: 1479px) {
  .c-spread {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 1480px) {
  .c-spread {
    margin-top: 8.33333vw;
  }
}

@media (min-width: 800px) {
  .c-spread .e-inner-constrainer {
    display: -ms-flexbox;
    display: flex;
  }
  .c-spread .e-photo,
  .c-spread .e-wrapper {
    -ms-flex: 0 0 50%;
        flex: 0 0 50%;
  }
  .c-spread .e-photo-text-wrapper {
    position: absolute;
    top: 0;
    bottom: auto;
  }
  .c-spread .c-picture {
    margin-bottom: -1px;
    margin-top: -1px;
  }
}

.c-spread.v-dark .e-photo {
  color: #fff;
}

@media (min-width: 800px) {
  .c-spread.is-fixed .e-inner-constrainer {
    display: block;
  }
  .c-spread.is-fixed .e-photo {
    left: 0;
    position: fixed;
    top: 50px;
    width: 50%;
  }
  .c-spread.is-fixed .e-wrapper {
    float: right;
    padding-left: 50%;
  }
}

/*---
title: Timeline
description: Timeline of items.
section: Components
---
*/
.c-timeline .e-items::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 2em;
  vertical-align: middle;
  content: "";
  left: 50%;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translateX(50%) translateY(50%);
  transition: transform 0.35s ease-out, opacity 0.35s ease-out, z-index 0s linear;
  z-index: -1;
  bottom: 0;
  top: auto;
}

.c-timeline .e-items.is-loading::before {
  animation: ampersandspinner 1s ease-in-out infinite;
  opacity: 1;
  transform: translateX(50%) translateY(50%);
  transition: transform 0.35s ease-out, opacity 0.35s ease-out, z-index 0s linear 0.5s;
  z-index: 99;
}

@media (max-width: 529px) {
  .c-timeline .e-item {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-timeline .e-item {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) {
  .c-timeline .e-item .e-item-picture-wrapper,
  .c-timeline .e-item .e-item-content-wrapper {
    width: 50%;
  }
}

@media (min-width: 800px) and (min-width: 800px) and (max-width: 1179px) {
  .c-timeline .e-item:nth-child(odd) .e-item-picture-wrapper,
  .c-timeline .e-item:nth-child(even) .e-item-content-wrapper {
    float: left;
    padding-right: 8px;
  }
  .c-timeline .e-item:nth-child(odd) .e-item-content-wrapper,
  .c-timeline .e-item:nth-child(even) .e-item-picture-wrapper {
    float: right;
    padding-left: 8px;
  }
}

@media (min-width: 800px) and (min-width: 1180px) and (max-width: 1479px) {
  .c-timeline .e-item:nth-child(odd) .e-item-picture-wrapper,
  .c-timeline .e-item:nth-child(even) .e-item-content-wrapper {
    float: left;
    padding-right: 16px;
  }
  .c-timeline .e-item:nth-child(odd) .e-item-content-wrapper,
  .c-timeline .e-item:nth-child(even) .e-item-picture-wrapper {
    float: right;
    padding-left: 16px;
  }
}

@media (min-width: 800px) and (min-width: 1480px) {
  .c-timeline .e-item:nth-child(odd) .e-item-picture-wrapper,
  .c-timeline .e-item:nth-child(even) .e-item-content-wrapper {
    float: left;
    padding-right: 16px;
  }
  .c-timeline .e-item:nth-child(odd) .e-item-content-wrapper,
  .c-timeline .e-item:nth-child(even) .e-item-picture-wrapper {
    float: right;
    padding-left: 16px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-timeline .e-item {
    margin-left: 16.66667%;
    width: 58.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-right: 25%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-timeline .e-item {
    margin-left: 16.66667%;
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 16.66667%;
  }
}

@media (min-width: 1480px) {
  .c-timeline .e-item {
    margin-left: 16.66667%;
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 16.66667%;
  }
}

@media (max-width: 529px) {
  .c-timeline .e-item {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-timeline .e-item {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-timeline .e-item {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-timeline .e-item {
    margin-top: 4.16667vw;
  }
}

@media (min-width: 1480px) {
  .c-timeline .e-item {
    margin-top: 4.16667vw;
  }
}

.c-timeline .e-item-title {
  margin-bottom: 1rem;
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
}

.c-timeline .e-item-title::after {
  content: '\2014';
  display: block;
}

.c-timeline .e-item-title:first-child {
  margin-top: 0;
}

.c-timeline .e-item-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .c-timeline .e-item-title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-timeline .e-item-title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-timeline .e-item-title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-timeline .e-item-title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .c-timeline .e-item-title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .c-timeline .e-item-title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.c-timeline .e-item-subtitle,
.c-timeline .e-scrubber-position,
.c-timeline .e-scrubber-text {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-timeline .e-item-subtitle:first-child,
.c-timeline .e-scrubber-position:first-child,
.c-timeline .e-scrubber-text:first-child {
  margin-top: 0;
}

.c-timeline .e-item-subtitle:last-child,
.c-timeline .e-scrubber-position:last-child,
.c-timeline .e-scrubber-text:last-child {
  margin-bottom: 0;
}

.c-timeline .e-item-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.c-timeline .e-item-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.c-timeline .e-item-link.is-active .e-span::after {
  width: 0;
}

.c-timeline .e-item-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .c-timeline .e-item-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .c-timeline .e-item-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.c-timeline .e-outer-constrainer {
  overflow: hidden;
  position: relative;
}

.c-timeline .e-items::after,
.c-timeline .e-item::after {
  clear: both;
  content: '';
  display: table;
}

.c-timeline .e-item-picture-wrapper,
.c-timeline .e-item-content-wrapper {
  position: relative;
}

.c-timeline .e-item {
  opacity: 1;
  transition: opacity 0.15s ease-out;
}

.c-timeline .e-item.is-loading {
  opacity: 0;
}

.c-timeline .e-item.has-hit-target .e-item-text::after {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 22px;
  vertical-align: middle;
  content: "";
  display: block;
  margin-top: .5em;
}

.c-timeline .e-item-title {
  margin-bottom: .5rem;
}

.c-timeline .e-item-subtitle {
  margin-bottom: 1rem;
}

.c-timeline .e-scrubber {
  display: none;
}

@media (max-width: 529px) {
  .c-timeline .c-picture {
    margin-bottom: 2rem;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-timeline .c-picture {
    margin-bottom: 2rem;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-timeline .e-item-title {
    margin-top: 1em;
  }
  .c-timeline .e-scrubber {
    display: block;
    height: 50vh;
    left: 24px;
    position: fixed;
    top: 25vh;
    width: 100px;
  }
  html.is-buggy-vh-device .c-timeline .e-scrubber {
    transition-delay: 5184000s;
    transition: top 0s linear, height 0s linear;
  }
  .c-timeline .e-scrubber-line {
    background: #b9b9b9;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 1px;
  }
  .c-timeline .e-scrubber-position {
    border-left: 1px solid #000;
    display: inline-block;
    padding-left: 1rem;
    transform: translate3d(0, 0, 0);
    vertical-align: top;
    width: 100px;
  }
  .c-timeline .e-scrubber-text {
    bottom: 0;
    display: inline-block;
    left: 0;
    position: absolute;
    transform: rotate(90deg) translateX(1rem) translateY(50%);
    transform-origin: bottom left;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-timeline .e-item-title {
    margin-top: 1em;
  }
  .c-timeline .e-scrubber {
    display: block;
    height: 50vh;
    left: 24px;
    position: fixed;
    top: 25vh;
    width: 100px;
  }
  html.is-buggy-vh-device .c-timeline .e-scrubber {
    transition-delay: 5184000s;
    transition: top 0s linear, height 0s linear;
  }
  .c-timeline .e-scrubber-line {
    background: #b9b9b9;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 1px;
  }
  .c-timeline .e-scrubber-position {
    border-left: 1px solid #000;
    display: inline-block;
    padding-left: 1rem;
    transform: translate3d(0, 0, 0);
    vertical-align: top;
    width: 100px;
  }
  .c-timeline .e-scrubber-text {
    bottom: 0;
    display: inline-block;
    left: 0;
    position: absolute;
    transform: rotate(90deg) translateX(1rem) translateY(50%);
    transform-origin: bottom left;
  }
}

@media (min-width: 1480px) {
  .c-timeline .e-item-title {
    margin-top: 1em;
  }
  .c-timeline .e-scrubber {
    display: block;
    height: 50vh;
    left: 24px;
    position: fixed;
    top: 25vh;
    width: 100px;
  }
  html.is-buggy-vh-device .c-timeline .e-scrubber {
    transition-delay: 5184000s;
    transition: top 0s linear, height 0s linear;
  }
  .c-timeline .e-scrubber-line {
    background: #b9b9b9;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 1px;
  }
  .c-timeline .e-scrubber-position {
    border-left: 1px solid #000;
    display: inline-block;
    padding-left: 1rem;
    transform: translate3d(0, 0, 0);
    vertical-align: top;
    width: 100px;
  }
  .c-timeline .e-scrubber-text {
    bottom: 0;
    display: inline-block;
    left: 0;
    position: absolute;
    transform: rotate(90deg) translateX(1rem) translateY(50%);
    transform-origin: bottom left;
  }
}

/*---
title: USP bar
description: A bar with usp's.
section: Components
---
*/
@media (max-width: 529px) {
  .c-usp-bar .e-wrapper {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .c-usp-bar .e-wrapper {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .c-usp-bar .e-wrapper {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .c-usp-bar .e-wrapper {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .c-usp-bar .e-wrapper {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.c-usp-bar .e-item {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
}

.c-usp-bar .e-item:first-child {
  margin-top: 0;
}

.c-usp-bar .e-item:last-child {
  margin-bottom: 0;
}

.c-usp-bar .e-item {
  display: inline-block;
  margin: 0 1em;
}

.c-usp-bar .e-item::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 1em;
  vertical-align: text-top;
  content: "";
  margin-right: 1em;
}

@media (max-width: 529px) {
  .c-usp-bar .e-items {
    padding: 1em 0;
    text-align: center;
  }
}

@media (min-width: 530px) {
  .c-usp-bar .e-items {
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex;
    height: 40px;
    width: 100%;
  }
  .c-usp-bar .e-item {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto;
    white-space: nowrap;
  }
  .c-usp-bar .e-item:first-child {
    margin-left: auto;
  }
  .c-usp-bar .e-item:last-child {
    margin-right: auto;
  }
}

@media (min-width: 800px) {
  .c-usp-bar .e-items {
    height: 50px;
  }
}

/*---
title: Video
description: To display a embedded video (youtube or vimeo)
section: Elements
---
*/
.c-video {
  overflow: hidden;
  position: relative;
}

.c-video .e-container {
  background-color: #000;
  color: #fff;
  overflow: hidden;
  position: relative;
  width: 100%;
}

.c-video .c-background-image,
.c-video .e-hit-target,
.c-video .e-iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.c-video .e-iframe {
  opacity: 1;
  transition: opacity 0.35s ease-out;
}

.c-video .e-iframe.is-hidden {
  opacity: 0;
}

.c-video .c-background-image,
.c-video .c-picture {
  opacity: .35;
}

.c-video .e-hit-target {
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent;
  text-decoration: none;
}

.c-video .e-play-button {
  border: 2px solid #fff;
  border-radius: 50%;
  color: #fff;
  display: block;
  font-size: 0;
  height: 40px;
  left: 50%;
  line-height: 40px;
  padding-left: 2px;
  pointer-events: none;
  position: absolute;
  text-align: center;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  transition: color 0.15s ease-out, background-color 0.15s ease-out, border-color 0.15s ease-out;
  width: 40px;
}

.c-video .e-play-button::before {
  border-bottom: 5px solid transparent;
  border-left: 8px solid currentColor;
  border-top: 5px solid transparent;
  content: '';
  display: block;
  height: 0;
  left: 55%;
  position: absolute;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 0;
}

.c-video.v-background-image {
  height: 100%;
}

.c-video.v-background-image .e-container {
  height: 100%;
}

.c-video.is-playing .c-picture,
.c-video.is-playing .c-background-image {
  opacity: 0;
  transition: opacity 0.35s ease-out;
}

.c-video[data-autoplay] .e-play-button {
  display: none;
}

/**
 * Concept block over 2 rows, with optional video.
 */
.concept-block-big-media {
  /* Variant with horizontal layout swapped */
  /* Variant with vertical layout swapped */
  /* Variant with vertical and horizontal layout swapped */
  /* Variant with a quote instead of one of the products */
  /* The right half of the block */
  /* The left half of the block */
  /* The top half of the block where it matters */
  /* The bottom half of the block where it matters */
  /* The only standard product in the block */
  /* The double with product in the block */
  /* Wrapper of the quote */
  /* The doubleXdouble with product in the block */
  /* media region of the block */
}

@media (max-width: 529px) {
  .concept-block-big-media--horizontal-swap.concept-block-big-media .concept-block-big-media__top-half {
    width: 100%;
    float: left;
    float: left;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-block-big-media--horizontal-swap.concept-block-big-media .concept-block-big-media__top-half {
    width: 66.66667%;
    float: left;
    float: left;
  }
  .concept-block-big-media--horizontal-swap.concept-block-big-media .concept-block-big-media__bottom-half {
    width: auto;
    float: none;
  }
}

@media (max-width: 529px) {
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__left-half {
    width: 100%;
    float: left;
    float: left;
    padding-bottom: 14%;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__bottom-half {
    padding-bottom: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__left-half {
    width: 33.33333%;
    float: left;
    float: left;
    padding-bottom: 3%;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__right-half {
    float: none;
    width: auto;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__top-half {
    float: none;
    padding-bottom: 0;
    width: auto;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__quadruple-product {
    float: none;
    width: auto;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__media-wrapper {
    padding-bottom: 56.25%;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__normal-product {
    width: 33.33333%;
    float: left;
    float: left;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__double-product, .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__quote {
    width: 100%;
    float: left;
    float: left;
    padding-bottom: 3%;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__bottom-half {
    width: 100%;
    float: left;
    float: left;
  }
}

@media (min-width: 800px) {
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__left-half {
    width: 40%;
    float: left;
    float: left;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__right-half {
    width: 60%;
    float: left;
    float: left;
  }
}

@media (min-width: 1180px) {
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__left-half {
    width: 40%;
    float: left;
    float: left;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__right-half {
    width: 60%;
    float: left;
    float: left;
  }
}

@media (min-width: 1480px) {
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__left-half {
    width: 40%;
    float: left;
    float: left;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media .concept-block-big-media__right-half {
    width: 60%;
    float: left;
    float: left;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-block-big-media--vertical-swap.concept-block-big-media--horizontal-swap.concept-block-big-media .concept-block-big-media__left-half {
    width: 33.33333%;
    float: left;
    float: left;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media--horizontal-swap.concept-block-big-media .concept-block-big-media__right-half {
    float: none;
    width: auto;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media--horizontal-swap.concept-block-big-media .concept-block-big-media__media {
    width: 66.66667%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media--horizontal-swap.concept-block-big-media .concept-block-big-media__media-wrapper {
    padding-bottom: 66.66667%;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media--horizontal-swap.concept-block-big-media .concept-block-big-media__double-product, .concept-block-big-media--vertical-swap.concept-block-big-media--horizontal-swap.concept-block-big-media .concept-block-big-media__quote {
    width: 66.66667%;
    float: left;
    float: left;
  }
  .concept-block-big-media--vertical-swap.concept-block-big-media--horizontal-swap.concept-block-big-media .concept-block-big-media__bottom-half {
    float: none;
    width: auto;
  }
}

.concept-block-big-media::after {
  clear: both;
  content: '';
  display: table;
}

.concept-block-big-media__media {
  position: relative;
}

.concept-block-big-media__media-wrapper {
  height: 0;
  position: relative;
  padding-bottom: 56.25%;
  width: 100%;
}

@media (max-width: 529px) {
  .concept-block-big-media__media {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-block-big-media__media {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-block-big-media__media {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-block-big-media__media {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .concept-block-big-media__media {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 529px) {
  .concept-block-big-media__top-half {
    padding-bottom: 14%;
  }
  .concept-block-big-media__top-half::after {
    clear: both;
    content: '';
    display: table;
  }
  .concept-block-big-media__bottom-half {
    width: 100%;
    float: left;
    float: left;
    padding-bottom: 14%;
  }
  .concept-block-big-media__normal-product.concept-grid-product {
    width: 100%;
    float: left;
    float: left;
    padding-bottom: 14%;
  }
  .concept-block-big-media__double-product.concept-grid-product, .concept-block-big-media__quote {
    width: 100%;
    float: left;
    float: left;
  }
  .concept-block-big-media__quadruple-product.concept-grid-product {
    width: 100%;
    float: left;
    float: left;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-block-big-media__top-half {
    padding-bottom: 3%;
  }
  .concept-block-big-media__top-half::after {
    clear: both;
    content: '';
    display: table;
  }
  .concept-block-big-media__bottom-half {
    width: 66.66667%;
    float: left;
    float: left;
    padding-bottom: 3%;
  }
  .concept-block-big-media__media-wrapper {
    height: 0;
    padding-bottom: 100%;
  }
  .concept-block-big-media__normal-product.concept-grid-product {
    width: 33.33333%;
    float: left;
    float: left;
    padding-bottom: 3%;
  }
  .concept-block-big-media__double-product.concept-grid-product, .concept-block-big-media__quote {
    width: 66.66667%;
    float: left;
    float: left;
  }
  .concept-block-big-media__quadruple-product.concept-grid-product {
    width: 33.33333%;
    float: left;
    float: left;
  }
}

@media (min-width: 800px) {
  .concept-block-big-media__left-half {
    width: 60%;
    float: left;
    float: left;
  }
  .concept-block-big-media__right-half {
    width: 40%;
    float: left;
    float: left;
  }
  .concept-block-big-media__top-half {
    /* Approximate */
    padding-bottom: 5%;
  }
  .concept-block-big-media__top-half::after {
    clear: both;
    content: '';
    display: table;
  }
  .concept-block-big-media__bottom-half::after {
    clear: both;
    content: '';
    display: table;
  }
  .concept-block-big-media__normal-product.concept-grid-product {
    width: 33.33333%;
    float: left;
    float: left;
  }
  .concept-block-big-media__double-product.concept-grid-product, .concept-block-big-media__quote {
    width: 66.66667%;
    float: left;
    float: left;
  }
  .concept-block-big-media__quadruple-product.concept-grid-product {
    width: 100%;
    float: left;
    float: left;
  }
}

@media (min-width: 1180px) {
  .concept-block-big-media__left-half {
    width: 60%;
    float: left;
    float: left;
  }
  .concept-block-big-media__right-half {
    width: 40%;
    float: left;
    float: left;
  }
  .concept-block-big-media__top-half {
    /* Approximate */
    padding-bottom: 5%;
  }
  .concept-block-big-media__top-half::after {
    clear: both;
    content: '';
    display: table;
  }
  .concept-block-big-media__bottom-half::after {
    clear: both;
    content: '';
    display: table;
  }
  .concept-block-big-media__normal-product.concept-grid-product {
    width: 33.33333%;
    float: left;
    float: left;
  }
  .concept-block-big-media__double-product.concept-grid-product, .concept-block-big-media__quote {
    width: 66.66667%;
    float: left;
    float: left;
  }
  .concept-block-big-media__quadruple-product.concept-grid-product {
    width: 100%;
    float: left;
    float: left;
  }
}

@media (min-width: 1480px) {
  .concept-block-big-media__left-half {
    width: 60%;
    float: left;
    float: left;
  }
  .concept-block-big-media__right-half {
    width: 40%;
    float: left;
    float: left;
  }
  .concept-block-big-media__top-half {
    /* Approximate */
    padding-bottom: 5%;
  }
  .concept-block-big-media__top-half::after {
    clear: both;
    content: '';
    display: table;
  }
  .concept-block-big-media__bottom-half::after {
    clear: both;
    content: '';
    display: table;
  }
  .concept-block-big-media__normal-product.concept-grid-product {
    width: 33.33333%;
    float: left;
    float: left;
  }
  .concept-block-big-media__double-product.concept-grid-product, .concept-block-big-media__quote {
    width: 66.66667%;
    float: left;
    float: left;
  }
  .concept-block-big-media__quadruple-product.concept-grid-product {
    width: 100%;
    float: left;
    float: left;
  }
}

.concept-grid-quote__wrapper {
  height: auto;
  overflow: hidden;
  padding-bottom: 40px;
}

.concept-grid-quote__text {
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  padding-top: 1.5em;
  padding-bottom: 1em;
  position: relative;
  text-align: center;
}

@media (max-width: 529px) {
  .concept-grid-quote__text {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid-quote__text {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-grid-quote__text {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-grid-quote__text {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .concept-grid-quote__text {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .concept-grid-quote__text {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.concept-grid-quote__text::before {
  content: '\201C';
  display: block;
  font-size: 3em;
  position: absolute;
  top: 0.33em;
  left: 0;
}

.concept-grid-quote__text::after {
  content: '\201D';
  display: block;
  font-size: 3em;
  position: absolute;
  bottom: -0.66em;
  right: 0;
}

@media (max-width: 529px) {
  .concept-grid-quote__text {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid-quote__text {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-grid-quote__text {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-grid-quote__text {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .concept-grid-quote__text {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 530px) {
  .concept-grid-quote__wrapper {
    height: 0;
    overflow: hidden;
    padding-bottom: 100%;
  }
}

@media (min-width: 1180px) {
  .concept-grid-quote__wrapper {
    padding-bottom: 90%;
  }
  .concept-grid-quote__text {
    margin-top: 3em;
  }
  .concept-grid-quote__text::after {
    bottom: -0.33em;
  }
}

.concept-grid-media {
  /* When loaded */
  /* Variant with video */
  opacity: 0.0;
  transition: opacity 0.4s ease;
}

.concept-grid-media--loaded.concept-grid-media {
  opacity: 1.0;
}

.concept-grid-media--video.concept-grid-media .concept-grid-media__wrapper {
  cursor: pointer;
}

.concept-grid-media--video.concept-grid-media .concept-grid-media__play {
  border: 4px solid #fff;
  border-radius: 50%;
  height: 60px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 60px;
  z-index: 10;
}

.concept-grid-media--video.concept-grid-media .concept-grid-media__play::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  color: #fff;
  font-size: 50px;
  left: 4px;
  position: relative;
  top: 1px;
}

.concept-grid-media.c-video .c-picture {
  opacity: 1.0;
}

.concept-grid-media .has-hit-target .c-picture::after {
  content: none;
}

/**
 * Concept block over 1 row, with message on left or right side.
 */
.concept-block-grid-message {
  /* Variant with swap across vertical axis */
  /* The left half of the block */
  /* The right half of the block */
  /* The standard product in the block */
  /* The 1.5 width product in the block */
  /* Wrapper for message */
}

.concept-block-grid-message::after {
  clear: both;
  content: '';
  display: table;
}

.concept-block-grid-message__message-wrapper {
  overflow: hidden;
}

.concept-block-grid-message__title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
  margin-top: 0.33em;
}

.concept-block-grid-message__title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .concept-block-grid-message__title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-block-grid-message__title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-block-grid-message__title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-block-grid-message__title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .concept-block-grid-message__title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .concept-block-grid-message__title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.concept-block-grid-message__title::after {
  content: '\2014';
  display: block;
}

.concept-block-grid-message__text {
  font-family: "Neuzeit Webfont", "Arial", "Helvetica", sans-serif;
  font-size-adjust: initial;
  text-rendering: optimizeLegibility;
  font-feature-settings: "kern" 1, "calt" 0;
  font-style: normal;
  font-weight: normal;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
  margin-bottom: 1em;
}

.concept-block-grid-message__text html em,
.concept-block-grid-message__text html i {
  font-style: inherit;
}

@media (max-width: 529px) {
  .concept-block-grid-message__text {
    font-size: 13px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-block-grid-message__text {
    font-size: 14px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-block-grid-message__text {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-block-grid-message__text {
    font-size: 16px;
  }
}

@media (min-width: 1480px) {
  .concept-block-grid-message__text {
    font-size: 17px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .concept-block-grid-message__text {
    font-size: calc(13px + (17 - 13) * (100vw - 320px) / (1920 - 320));
  }
}

@media (max-width: 529px) {
  .concept-block-grid-message__title, .concept-block-grid-message__text {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
    max-width: 400px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-block-grid-message__title, .concept-block-grid-message__text {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    max-width: 400px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-block-grid-message__title, .concept-block-grid-message__text {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    max-width: 400px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-block-grid-message__title, .concept-block-grid-message__text {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    max-width: 400px;
  }
}

@media (min-width: 1480px) {
  .concept-block-grid-message__title, .concept-block-grid-message__text {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    max-width: 400px;
  }
}

@media (max-width: 529px) {
  .concept-block-grid-message__left-half {
    width: 100%;
    float: left;
    float: left;
    padding-bottom: 14%;
  }
  .concept-block-grid-message__right-half {
    width: 100%;
    float: left;
    float: left;
  }
  .concept-block-grid-message__normal-product.concept-grid-product {
    width: 100%;
    float: left;
    float: left;
    padding-bottom: 14%;
  }
  .concept-block-grid-message__bigger-product.concept-grid-product {
    width: 100%;
    float: left;
    float: left;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-block-grid-message__left-half {
    width: 100%;
    float: left;
    float: left;
    padding-bottom: 3%;
  }
  .concept-block-grid-message__right-half {
    width: 100%;
    float: left;
    float: left;
  }
  .concept-block-grid-message__normal-product.concept-grid-product {
    width: 40%;
    float: left;
    float: left;
    padding-bottom: 3%;
  }
  .concept-block-grid-message__bigger-product.concept-grid-product {
    width: 60%;
    float: left;
    float: left;
  }
}

@media (min-width: 800px) {
  .concept-block-grid-message__left-half {
    width: 50%;
    float: left;
    float: left;
  }
  .concept-block-grid-message__right-half {
    width: 50%;
    float: left;
    float: left;
  }
  .concept-block-grid-message__normal-product.concept-grid-product {
    width: 40%;
    float: left;
    float: left;
  }
  .concept-block-grid-message__bigger-product.concept-grid-product {
    width: 60%;
    float: left;
    float: left;
  }
}

@media (min-width: 1180px) {
  .concept-block-grid-message__left-half {
    width: 50%;
    float: left;
    float: left;
  }
  .concept-block-grid-message__right-half {
    width: 50%;
    float: left;
    float: left;
  }
  .concept-block-grid-message__normal-product.concept-grid-product {
    width: 40%;
    float: left;
    float: left;
  }
  .concept-block-grid-message__bigger-product.concept-grid-product {
    width: 60%;
    float: left;
    float: left;
  }
}

@media (min-width: 1480px) {
  .concept-block-grid-message__left-half {
    width: 50%;
    float: left;
    float: left;
  }
  .concept-block-grid-message__right-half {
    width: 50%;
    float: left;
    float: left;
  }
  .concept-block-grid-message__normal-product.concept-grid-product {
    width: 40%;
    float: left;
    float: left;
  }
  .concept-block-grid-message__bigger-product.concept-grid-product {
    width: 60%;
    float: left;
    float: left;
  }
}

@media (min-width: 800px) {
  .concept-block-grid-message__message-wrapper {
    height: 0;
    padding-bottom: 80%;
  }
}

@media (min-width: 1180px) {
  .concept-block-grid-message__message-wrapper {
    padding-bottom: 72%;
  }
}

/* Main class; form element */
.concept-filter-form {
  /* The fixed state of the concept filter form. */
  /* Div containing the complete form */
  /* Placeholder for when the form is fixed. */
}

@media (min-width: 530px) {
  .concept-filter-form--fixed.concept-filter-form .concept-filter-form__container {
    background: #fff;
    left: 0;
    position: fixed;
    top: 40px;
    /* Height of menu bar */
    width: 100%;
    z-index: 400;
  }
  .concept-filter-form--fixed.concept-filter-form .concept-filter-form__placeholder {
    display: block;
  }
  .concept-filter-form--fixed.concept-filter-form .concept-filter-form__popup {
    position: fixed;
  }
}

@media (min-width: 800px) {
  .concept-filter-form--fixed.concept-filter-form .concept-filter-form__container {
    top: 50px;
    /* Height of menu bar */
  }
}

.concept-filter-form__placeholder {
  display: none;
}

/* Upper filter bar. Not shown on mobile */
.concept-filter-main-bar {
  /* The version with two items instead of 3 */
  /* This is the state where an item is selected */
  display: none;
  margin-bottom: 10px;
  text-align: center;
  /* The list of items on the main bar */
  /* An item on the main bar */
  /* An item that's active */
  /* The removal option part of an active item */
  /* The text part of an active item */
  /* The line on the bottom of the bar */
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-filter-main-bar--two-items.concept-filter-main-bar .concept-filter-main-bar__list {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
  }
  .concept-filter-main-bar--two-items.concept-filter-main-bar .concept-filter-main-bar__item:nth-child(1) {
    margin-left: 20%;
    width: 30%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
  .concept-filter-main-bar--two-items.concept-filter-main-bar .concept-filter-main-bar__item:nth-child(2) {
    width: 30%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-main-bar--two-items.concept-filter-main-bar .concept-filter-main-bar__list {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
  }
  .concept-filter-main-bar--two-items.concept-filter-main-bar .concept-filter-main-bar__item:nth-child(1) {
    margin-left: 20%;
    width: 30%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
  .concept-filter-main-bar--two-items.concept-filter-main-bar .concept-filter-main-bar__item:nth-child(2) {
    width: 30%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-main-bar--two-items.concept-filter-main-bar .concept-filter-main-bar__list {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
  }
  .concept-filter-main-bar--two-items.concept-filter-main-bar .concept-filter-main-bar__item:nth-child(1) {
    margin-left: 20%;
    width: 30%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-main-bar--two-items.concept-filter-main-bar .concept-filter-main-bar__item:nth-child(2) {
    width: 30%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .concept-filter-main-bar--two-items.concept-filter-main-bar .concept-filter-main-bar__list {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
  }
  .concept-filter-main-bar--two-items.concept-filter-main-bar .concept-filter-main-bar__item:nth-child(1) {
    margin-left: 20%;
    width: 30%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-main-bar--two-items.concept-filter-main-bar .concept-filter-main-bar__item:nth-child(2) {
    width: 30%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.concept-filter-main-bar--item-selected.concept-filter-main-bar .concept-filter-main-bar__line-inner {
  border-bottom: 1px solid #000;
  padding-bottom: 20px;
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-filter-main-bar--item-selected.concept-filter-main-bar .concept-filter-main-bar__line {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-main-bar--item-selected.concept-filter-main-bar .concept-filter-main-bar__line {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-main-bar--item-selected.concept-filter-main-bar .concept-filter-main-bar__line {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .concept-filter-main-bar--item-selected.concept-filter-main-bar .concept-filter-main-bar__line {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.concept-filter-main-bar__list {
  -ms-flex-align: end;
      align-items: flex-end;
  display: -ms-flexbox;
  display: flex;
}

.concept-filter-main-bar__item {
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
  text-transform: uppercase;
  display: inline-block;
  line-height: 1.33em;
  text-align: center;
}

@media (max-width: 529px) {
  .concept-filter-main-bar__item {
    font-size: 16px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-filter-main-bar__item {
    font-size: 16px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-main-bar__item {
    font-size: 18px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-main-bar__item {
    font-size: 20px;
  }
}

@media (min-width: 1480px) {
  .concept-filter-main-bar__item {
    font-size: 20px;
  }
}

.concept-filter-main-bar__item-link:not(.concept-filter-main-bar__active-item-link)::after {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  bottom: 2px;
  font-size: 18px;
  margin-left: 0;
  position: relative;
}

.concept-filter-main-bar__active-item {
  position: relative;
}

.concept-filter-main-bar__active-item::after {
  background: white;
  border: 1px solid black;
  border-width: 0 1px 1px 0;
  bottom: -33px;
  content: '';
  display: block;
  height: 14px;
  left: 50%;
  position: absolute;
  width: 14px;
  transform: rotate(45deg) translateX(-50%);
  z-index: 300;
}

.concept-filter-main-bar__active-item a {
  display: inline-block;
}

.concept-filter-main-bar__active-item-remove {
  position: relative;
  bottom: 1px;
}

.concept-filter-main-bar__active-item-remove::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  font-size: 18px;
}

.concept-filter-main-bar__active-item-link {
  max-width: calc(100% - 40px);
}

.concept-filter-main-bar__active-item-text {
  display: inline-block;
  text-align: left;
  text-decoration: underline;
  vertical-align: middle;
  width: auto;
}

@media (min-width: 530px) {
  .concept-filter-main-bar {
    display: block;
    margin-bottom: 30px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-filter-main-bar__list {
    margin-left: 4.16667%;
    width: 91.66667%;
    float: left;
    float: left;
  }
  .concept-filter-main-bar__item:nth-child(1) {
    margin-left: 9.09091%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
  .concept-filter-main-bar__item:nth-child(2) {
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
  .concept-filter-main-bar__item:nth-child(3) {
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    margin-right: 9.09091%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-main-bar__list {
    margin-left: 4.16667%;
    width: 91.66667%;
    float: left;
    float: left;
  }
  .concept-filter-main-bar__item:nth-child(1) {
    margin-left: 9.09091%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
  .concept-filter-main-bar__item:nth-child(2) {
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
  .concept-filter-main-bar__item:nth-child(3) {
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    margin-right: 9.09091%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-main-bar__list {
    margin-left: 4.16667%;
    width: 91.66667%;
    float: left;
    float: left;
  }
  .concept-filter-main-bar__item:nth-child(1) {
    margin-left: 9.09091%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-main-bar__item:nth-child(2) {
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-main-bar__item:nth-child(3) {
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 9.09091%;
  }
}

@media (min-width: 1480px) {
  .concept-filter-main-bar__list {
    margin-left: 4.16667%;
    width: 91.66667%;
    float: left;
    float: left;
  }
  .concept-filter-main-bar__item:nth-child(1) {
    margin-left: 9.09091%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-main-bar__item:nth-child(2) {
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-main-bar__item:nth-child(3) {
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    margin-right: 9.09091%;
  }
}

@media (min-width: 1180px) {
  .concept-filter-main-bar__active-item-remove::before {
    font-size: 23px;
    position: relative;
    bottom: 1px;
  }
  .concept-filter-main-bar__item-link:not(.concept-filter-main-bar__active-item-link)::after {
    bottom: 3px;
    font-size: 23px;
  }
}

/* Desktop popup; also used for mobile as non-popup. */
.concept-filter-popup {
  /* Two item variant for the pop-up */
  /* State for when a value is chosen in the popup */
  /* Used for the desktop popup to determine if it's visible. */
  /* Active when the menu popup was opened via the concepts button */
  /* Active when the menu popup was opened via the categories button */
  /* Active when the menu popup was opened via the collections button */
  padding-top: 15px;
  text-align: left;
  /* The list of options on the popup */
  /* An option list element on the popup */
  /* Will perform an alignment with the main bar item by imitating it */
  /* The main bar item text imitater of the aligner */
  /* The aligned container with the content */
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(1) {
    margin-left: 20%;
    width: 30%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(1) .concept-filter-popup__aligned {
    width: 400%;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(2) {
    margin-left: 50%;
    width: 30%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(2) .concept-filter-popup__aligned {
    transform: translateX(-33.3%);
    width: 400%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(1) {
    margin-left: 20%;
    width: 30%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(1) .concept-filter-popup__aligned {
    width: 400%;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(2) {
    margin-left: 50%;
    width: 30%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(2) .concept-filter-popup__aligned {
    transform: translateX(-33.3%);
    width: 400%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(1) {
    margin-left: 20%;
    width: 30%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(1) .concept-filter-popup__aligned {
    width: 400%;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(2) {
    margin-left: 50%;
    width: 30%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(2) .concept-filter-popup__aligned {
    transform: translateX(-33.3%);
    width: 400%;
  }
}

@media (min-width: 1480px) {
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(1) {
    margin-left: 20%;
    width: 30%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(1) .concept-filter-popup__aligned {
    width: 400%;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(2) {
    margin-left: 50%;
    width: 30%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(2) .concept-filter-popup__aligned {
    transform: translateX(-33.3%);
    width: 400%;
  }
}

@media (min-width: 530px) {
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(2) .option-list__list {
    column-count: 2;
  }
}

@media (min-width: 1180px) {
  .concept-filter-popup--two-items.concept-filter-popup .concept-filter-popup__list-item:nth-child(2) .option-list__list {
    column-count: 3;
  }
}

@media (max-width: 529px) {
  .concept-filter-popup--value-chosen.concept-filter-popup .concept-filter-popup__line {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
  .concept-filter-popup--value-chosen.concept-filter-popup .concept-filter-popup__line-inner {
    border-bottom: 1px solid #000;
    padding-top: 10px;
    margin-bottom: 20px;
    position: relative;
  }
  .concept-filter-popup--value-chosen.concept-filter-popup .concept-filter-popup__line-inner::after {
    background: #fff;
    border: 1px solid #000;
    border-left-width: 0;
    border-top-width: 0;
    bottom: -13px;
    content: '';
    display: block;
    height: 14px;
    left: 50%;
    position: absolute;
    transform: rotate(45deg) translateX(-50%);
    width: 14px;
  }
}

.concept-filter-popup__list {
  margin-left: 16.66667%;
  width: 66.66667%;
  float: left;
  float: left;
}

.concept-filter-popup__list-item {
  width: 100%;
}

.concept-filter-popup__align-text {
  display: none;
}

@media (max-width: 529px) {
  .concept-filter-popup__list {
    height: auto !important;
    /* No influence from javascript desired */
    padding-top: 15px;
  }
}

@media (min-width: 530px) {
  .concept-filter-popup {
    display: none;
    left: 0;
    padding-top: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 1000;
  }
  .concept-filter-popup--visible.concept-filter-popup {
    display: block;
  }
  .concept-filter-popup--concept.concept-filter-popup .option-list--concept.option-list {
    display: block;
  }
  .concept-filter-popup--category.concept-filter-popup .option-list--category.option-list {
    display: block;
  }
  .concept-filter-popup--collection.concept-filter-popup .option-list--collection.option-list {
    display: block;
  }
  .concept-filter-popup__list {
    background: #EFEFEF;
    box-sizing: content-box;
    padding-bottom: 40px;
    padding-top: 40px;
    position: relative;
  }
  .concept-filter-popup__list-item {
    left: 0;
    position: absolute;
    text-align: center;
    top: 40px;
  }
  .concept-filter-popup__aligner {
    display: inline-block;
    position: relative;
  }
  .concept-filter-popup__align-text {
    font-weight: normal;
    letter-spacing: 1px;
    line-height: 1em;
    text-transform: uppercase;
    text-transform: uppercase;
    display: block;
    visibility: hidden;
  }
  .concept-filter-popup__align-text::before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-family: 'viktor-rolf-icons';
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    speak: none;
    text-transform: none;
    font-size: 24px;
    vertical-align: middle;
    content: "";
    bottom: 2px;
    float: right;
    font-size: 16px;
    position: relative;
  }
}

@media (min-width: 530px) and (max-width: 529px) {
  .concept-filter-popup__align-text {
    font-size: 16px;
  }
}

@media (min-width: 530px) and (min-width: 530px) and (max-width: 799px) {
  .concept-filter-popup__align-text {
    font-size: 16px;
  }
}

@media (min-width: 530px) and (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-popup__align-text {
    font-size: 18px;
  }
}

@media (min-width: 530px) and (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-popup__align-text {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (min-width: 1480px) {
  .concept-filter-popup__align-text {
    font-size: 20px;
  }
}

@media (min-width: 530px) {
  .concept-filter-popup__align-active-text {
    padding-left: 30px;
  }
  .concept-filter-popup__aligned {
    left: 0;
    position: absolute;
    text-align: left;
    top: 0;
    width: 140%;
  }
  .concept-filter-popup__aligned-from-active {
    left: 30px;
  }
  .concept-filter-popup .option-list--concept.option-list,
  .concept-filter-popup .option-list--category.option-list,
  .concept-filter-popup .option-list--collection.option-list {
    display: none;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-filter-popup__list {
    margin-left: 4.16667%;
    width: 91.66667%;
    float: left;
    float: left;
  }
  .concept-filter-popup__list-item:nth-child(1) {
    margin-left: 9.09091%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
  .concept-filter-popup__list-item:nth-child(1) .concept-filter-popup__aligned {
    width: 200%;
  }
  .concept-filter-popup__list-item:nth-child(2) {
    margin-left: 36.36364%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
  .concept-filter-popup__list-item:nth-child(2) .concept-filter-popup__aligned {
    width: 200%;
  }
  .concept-filter-popup__list-item:nth-child(3) {
    margin-left: 63.63636%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-popup__list {
    margin-left: 4.16667%;
    width: 91.66667%;
    float: left;
    float: left;
  }
  .concept-filter-popup__list-item:nth-child(1) {
    margin-left: 9.09091%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
  .concept-filter-popup__list-item:nth-child(1) .concept-filter-popup__aligned {
    width: 200%;
  }
  .concept-filter-popup__list-item:nth-child(2) {
    margin-left: 36.36364%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
  .concept-filter-popup__list-item:nth-child(2) .concept-filter-popup__aligned {
    width: 200%;
  }
  .concept-filter-popup__list-item:nth-child(3) {
    margin-left: 63.63636%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-popup__list {
    margin-left: 4.16667%;
    width: 91.66667%;
    float: left;
    float: left;
  }
  .concept-filter-popup__list-item:nth-child(1) {
    margin-left: 9.09091%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-popup__list-item:nth-child(1) .concept-filter-popup__aligned {
    width: 200%;
  }
  .concept-filter-popup__list-item:nth-child(2) {
    margin-left: 36.36364%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-popup__list-item:nth-child(2) .concept-filter-popup__aligned {
    width: 200%;
  }
  .concept-filter-popup__list-item:nth-child(3) {
    margin-left: 63.63636%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .concept-filter-popup__list {
    margin-left: 4.16667%;
    width: 91.66667%;
    float: left;
    float: left;
  }
  .concept-filter-popup__list-item:nth-child(1) {
    margin-left: 9.09091%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-popup__list-item:nth-child(1) .concept-filter-popup__aligned {
    width: 200%;
  }
  .concept-filter-popup__list-item:nth-child(2) {
    margin-left: 36.36364%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-popup__list-item:nth-child(2) .concept-filter-popup__aligned {
    width: 200%;
  }
  .concept-filter-popup__list-item:nth-child(3) {
    margin-left: 63.63636%;
    width: 27.27273%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

/* Mobile filter; ignored on portrait and up */
@media (max-width: 529px) {
  .concept-filter-mobile-select {
    /* When the filter if active */
    padding-bottom: 5px;
    padding-top: 5px;
    text-align: center;
    /* The activatable title element for the mobile filter */
    /* The text of the filter title element. */
    /* The part that is shown when the filter is active */
  }
  .concept-filter-mobile-select--active.concept-filter-mobile-select {
    background: #EFEFEF;
    margin-top: -22px;
    padding-top: 27px;
    position: relative;
    z-index: 200;
  }
  .concept-filter-mobile-select--active.concept-filter-mobile-select::before {
    background: #fff;
    bottom: -13px;
    content: '';
    display: block;
    height: 14px;
    left: 50%;
    position: absolute;
    top: -2px;
    transform: rotate(45deg) translateX(-50%);
    width: 14px;
  }
  .concept-filter-mobile-select--active.concept-filter-mobile-select::after {
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2) 0%, transparent 100%);
    content: '';
    display: block;
    height: 200vh;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: 200;
  }
  .concept-filter-mobile-select--active.concept-filter-mobile-select .concept-filter-mobile-select__filter::before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-family: 'viktor-rolf-icons';
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    speak: none;
    text-transform: none;
    font-size: 24px;
    vertical-align: middle;
    content: "";
    bottom: 2px;
    font-size: 16px;
    position: relative;
    vertical-align: middle;
  }
  .concept-filter-mobile-select--active.concept-filter-mobile-select .concept-filter-mobile-select__content {
    display: block;
  }
  .concept-filter-mobile-select__filter {
    font-weight: normal;
    letter-spacing: 0.94px;
    line-height: 1.33em;
    text-transform: uppercase;
    text-transform: uppercase;
    padding-bottom: 5px;
    padding-top: 5px;
  }
  .concept-filter-mobile-select__filter::before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-family: 'viktor-rolf-icons';
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    speak: none;
    text-transform: none;
    font-size: 24px;
    vertical-align: middle;
    content: "";
    bottom: 2px;
    font-size: 16px;
    position: relative;
    vertical-align: middle;
  }
}

@media (max-width: 529px) and (max-width: 529px) {
  .concept-filter-mobile-select__filter {
    font-size: 15px;
  }
}

@media (max-width: 529px) and (min-width: 530px) and (max-width: 799px) {
  .concept-filter-mobile-select__filter {
    font-size: 12.5px;
  }
}

@media (max-width: 529px) and (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-mobile-select__filter {
    font-size: 15px;
  }
}

@media (max-width: 529px) and (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-mobile-select__filter {
    font-size: 17.5px;
  }
}

@media (max-width: 529px) and (min-width: 1480px) {
  .concept-filter-mobile-select__filter {
    font-size: 22px;
  }
}

@media (max-width: 529px) {
  .concept-filter-mobile-select__filter-text {
    vertical-align: middle;
  }
  .concept-filter-mobile-select__content {
    background: #EFEFEF;
    display: none;
    left: 0;
    padding-bottom: 40px;
    padding-top: 20px;
    position: absolute;
    width: 100%;
    z-index: 300;
  }
}

@media (min-width: 530px) {
  .concept-filter-mobile-select {
    background: none;
    padding-top: 0;
  }
  .concept-filter-mobile-select__content {
    display: block;
  }
  .concept-filter-mobile-select__filter {
    display: none;
  }
}

/* Form field as ul for concept-filter-form */
.concept-filter-form .option-list {
  /* When a value of the option list is selected it will be marked active. */
  /* When the option list is expanded its values will be visible on mobile. */
  /* The option list for concepts */
  /* The option list for categories */
  /* The option list for concepts */
  /* The title of the option list (mobile only) */
  /* The text part of the option list title (mobile only) */
  /* The text part of an active option list title (mobile only) */
  /* The values container of the option list */
  /* The list of options */
  /* An individual item in the option list */
}

.concept-filter-form .option-list--expanded.option-list .option-list__title::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  bottom: 2px;
  float: right;
  font-size: 16px;
  position: relative;
}

.concept-filter-form .option-list--expanded.option-list .option-list__title-remove {
  display: none;
}

.concept-filter-form .option-list--expanded.option-list .option-list__title-text {
  text-decoration: underline;
}

.concept-filter-form .option-list--expanded.option-list .option-list__values {
  display: block;
}

.concept-filter-form .option-list--category.concept-filter-form {
  display: none;
}

.concept-filter-form .option-list__title {
  font-weight: normal;
  letter-spacing: 0.94px;
  line-height: 1.33em;
  text-transform: uppercase;
  text-transform: uppercase;
  margin-bottom: 10px;
  padding-top: 5px;
  padding-bottom: 5px;
}

.concept-filter-form .option-list__title::after {
  clear: both;
  content: '';
  display: table;
}

@media (max-width: 529px) {
  .concept-filter-form .option-list__title {
    font-size: 15px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-filter-form .option-list__title {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-form .option-list__title {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-form .option-list__title {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .concept-filter-form .option-list__title {
    font-size: 22px;
  }
}

.concept-filter-form .option-list__title:not(.option-list__active-title)::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  bottom: 2px;
  float: right;
  font-size: 16px;
  position: relative;
}

.concept-filter-form .option-list__title-text {
  float: left;
}

.concept-filter-form .option-list__active-title-text {
  max-width: calc(100% - 25px);
  text-decoration: underline;
}

.concept-filter-form .option-list__title-remove {
  bottom: 1px;
  float: right;
  display: block;
  position: relative;
}

.concept-filter-form .option-list__title-remove::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  bottom: 2px;
  font-size: 18px;
  left: 1px;
  position: relative;
}

.concept-filter-form .option-list__values {
  display: none;
  margin-bottom: 25px;
}

.concept-filter-form .option-list__item {
  margin-bottom: 10px;
}

@media (min-width: 530px) {
  .concept-filter-form .option-list__title {
    display: none;
  }
  .concept-filter-form .option-list__values {
    display: block;
  }
}

/* An option of the option list */
.concept-filter-form .option-list .option {
  /* Determines whether the option is active */
  font-family: "Neuzeit Webfont", "Arial", "Helvetica", sans-serif;
  font-size-adjust: initial;
  text-rendering: optimizeLegibility;
  font-feature-settings: "kern" 1, "calt" 0;
  font-style: normal;
  font-weight: normal;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
}

.concept-filter-form .option-list .option--active.option .option {
  /* The text part of the option element */
}

.concept-filter-form .option-list .option--active.option .option__text {
  border-bottom: 1px solid #000;
  height: 14px;
  margin-left: -20px;
}

.concept-filter-form .option-list .option--active.option .option__text::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  bottom: 1px;
  font-size: 13px;
  margin-right: 6px;
  position: relative;
}

@media (min-width: 530px) {
  .concept-filter-form .option-list .option--active.option a {
    margin-left: -27px;
  }
  .concept-filter-form .option-list .option--active.option a::before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-family: 'viktor-rolf-icons';
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    speak: none;
    text-transform: none;
    font-size: 24px;
    vertical-align: middle;
    content: "";
    bottom: 1px;
    font-size: 18px;
    margin-right: 2px;
    position: relative;
  }
  .concept-filter-form .option-list .option--active.option .option {
    /* The text part of the option element */
  }
  .concept-filter-form .option-list .option--active.option .option__text {
    border-bottom: none;
    margin-left: 0;
    text-decoration: underline;
  }
  .concept-filter-form .option-list .option--active.option .option__text::before {
    content: '';
  }
}

.concept-filter-form .option-list .option html em,
.concept-filter-form .option-list .option html i {
  font-style: inherit;
}

@media (max-width: 529px) {
  .concept-filter-form .option-list .option {
    font-size: 13px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-filter-form .option-list .option {
    font-size: 14px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-form .option-list .option {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-form .option-list .option {
    font-size: 16px;
  }
}

@media (min-width: 1480px) {
  .concept-filter-form .option-list .option {
    font-size: 17px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .concept-filter-form .option-list .option {
    font-size: calc(13px + (17 - 13) * (100vw - 320px) / (1920 - 320));
  }
}

.concept-filter-form .option-list .option a {
  display: inline-block;
  padding-bottom: 5px;
  padding-top: 5px;
}

.concept-filter-form .option-list .option__text {
  display: inline-block;
}

@media (min-width: 530px) {
  .concept-filter-form .option-list .option:hover .option__text {
    text-decoration: underline;
  }
}

/* Secondary properties filter bar */
.concept-filter-properties-bar {
  /* Determines whether the bar is available on desktop. */
  /* The list of fields on the bar */
  /* A property in the secondary items bar */
}

@media (max-width: 529px) {
  .concept-filter-properties-bar__list {
    margin-left: 16.66667%;
    width: 66.66667%;
    float: left;
    float: left;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-properties-bar__list {
    margin-left: 16.66667%;
    width: 66.66667%;
    float: left;
    float: left;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-properties-bar__list {
    margin-left: 16.66667%;
    width: 66.66667%;
    float: left;
    float: left;
  }
}

@media (min-width: 1480px) {
  .concept-filter-properties-bar__list {
    margin-left: 16.66667%;
    width: 66.66667%;
    float: left;
    float: left;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-filter-properties-bar__list {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
  }
}

@media (min-width: 530px) {
  .concept-filter-properties-bar {
    display: none;
  }
  .concept-filter-properties-bar--enabled-desktop.concept-filter-properties-bar {
    display: block;
  }
  .concept-filter-properties-bar__list {
    font-size: 0;
    text-align: center;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-filter-properties-bar__item:not(:last-child) {
    width: 21.875%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    display: inline-block;
    float: none;
  }
  .concept-filter-properties-bar__item:last-child {
    width: 32.5%;
    float: right;
    float: right;
    display: inline-block;
    float: none;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-properties-bar__item:not(:last-child) {
    width: 21.875%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    display: inline-block;
    float: none;
  }
  .concept-filter-properties-bar__item:last-child {
    width: 32.5%;
    float: right;
    float: right;
    display: inline-block;
    float: none;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-properties-bar__item:not(:last-child) {
    width: 21.875%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    display: inline-block;
    float: none;
  }
  .concept-filter-properties-bar__item:last-child {
    width: 32.5%;
    float: right;
    float: right;
    display: inline-block;
    float: none;
  }
}

@media (min-width: 1480px) {
  .concept-filter-properties-bar__item:not(:last-child) {
    width: 21.875%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    display: inline-block;
    float: none;
  }
  .concept-filter-properties-bar__item:last-child {
    width: 32.5%;
    float: right;
    float: right;
    display: inline-block;
    float: none;
  }
}

/* Multi select container */
.concept-filter-form .multi-select {
  /* When a value of the multi select is selected the multiselect component will be marked active. */
  /* When the multi-select is expanded its values will be visible on mobile. */
  /* The multi select item for categories */
  /* The multi select item for sizes */
  /* The multi select item for colours */
  text-align: left;
  /* Title of the multiselect item (Mobile only) */
  /* The text part of the multi select title (mobile only) */
  /* The container of the multi select field */
}

.concept-filter-form .multi-select--expanded.multi-select .multi-select__title::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  bottom: 2px;
  font-size: 16px;
  position: relative;
}

.concept-filter-form .multi-select--expanded.multi-select .multi-select__title-text {
  text-decoration: underline;
}

.concept-filter-form .multi-select--expanded.multi-select .multi-select__values {
  display: block;
}

.concept-filter-form .multi-select--categories.multi-select {
  display: none;
}

.concept-filter-form .multi-select__title {
  font-weight: normal;
  letter-spacing: 0.94px;
  line-height: 1.33em;
  text-transform: uppercase;
  text-transform: uppercase;
  margin-bottom: 10px;
  padding-top: 5px;
  padding-bottom: 5px;
}

.concept-filter-form .multi-select__title::after {
  clear: both;
  content: '';
  display: table;
}

@media (max-width: 529px) {
  .concept-filter-form .multi-select__title {
    font-size: 15px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-filter-form .multi-select__title {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-form .multi-select__title {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-form .multi-select__title {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .concept-filter-form .multi-select__title {
    font-size: 22px;
  }
}

.concept-filter-form .multi-select__title::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  bottom: 2px;
  float: right;
  font-size: 16px;
  position: relative;
}

.concept-filter-form .multi-select__title-text {
  float: left;
}

.concept-filter-form .multi-select__values {
  display: none;
  margin-bottom: 25px;
}

@media (min-width: 530px) {
  .concept-filter-form .multi-select--categories.multi-select {
    display: inline-block;
  }
  .concept-filter-form .multi-select__title {
    display: none;
  }
  .concept-filter-form .multi-select__values {
    display: block;
  }
}

/* Single select container */
.concept-filter-form .single-select {
  /* When a value of the single select is selected it will be marked active. */
  /* When the single-select is expanded its values will be visible on mobile. */
  /* The single select for sort order */
  text-align: left;
  /* Title of the singleselect item (Mobile only) */
  /* The text part of the multi select title (mobile only) */
  /* Extra title for sort order on desktop, disabled by default. */
  /* The container of the multi select field */
}

.concept-filter-form .single-select--expanded.single-select .single-select__title::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  bottom: 2px;
  font-size: 16px;
  position: relative;
}

.concept-filter-form .single-select--expanded.single-select .single-select__title-text {
  text-decoration: underline;
}

.concept-filter-form .single-select--expanded.single-select .single-select__values {
  display: block;
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-filter-form .single-select--sort_order.single-select .single-select__extra-title {
    display: block;
  }
  .concept-filter-form .single-select--sort_order.single-select .single-select__extra-title-positioner {
    padding-left: 6px;
    padding-right: 6px;
  }
  .concept-filter-form .single-select--sort_order.single-select:last-child .single-select__extra-title {
    width: 30.76923%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
    /* Yes, really */
    display: block;
  }
  .concept-filter-form .single-select--sort_order.single-select:last-child .simple-single-select {
    width: 69.23077%;
    float: left;
    float: left;
    /* Yes, really */
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-form .single-select--sort_order.single-select .single-select__extra-title {
    display: block;
  }
  .concept-filter-form .single-select--sort_order.single-select .single-select__extra-title-positioner {
    padding-left: 8px;
    padding-right: 8px;
  }
  .concept-filter-form .single-select--sort_order.single-select:last-child .single-select__extra-title {
    width: 30.76923%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
    /* Yes, really */
    display: block;
  }
  .concept-filter-form .single-select--sort_order.single-select:last-child .simple-single-select {
    width: 69.23077%;
    float: left;
    float: left;
    /* Yes, really */
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-form .single-select--sort_order.single-select .single-select__extra-title {
    display: block;
  }
  .concept-filter-form .single-select--sort_order.single-select .single-select__extra-title-positioner {
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-form .single-select--sort_order.single-select:last-child .single-select__extra-title {
    width: 30.76923%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    /* Yes, really */
    display: block;
  }
  .concept-filter-form .single-select--sort_order.single-select:last-child .simple-single-select {
    width: 69.23077%;
    float: left;
    float: left;
    /* Yes, really */
  }
}

@media (min-width: 1480px) {
  .concept-filter-form .single-select--sort_order.single-select .single-select__extra-title {
    display: block;
  }
  .concept-filter-form .single-select--sort_order.single-select .single-select__extra-title-positioner {
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-filter-form .single-select--sort_order.single-select:last-child .single-select__extra-title {
    width: 30.76923%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
    /* Yes, really */
    display: block;
  }
  .concept-filter-form .single-select--sort_order.single-select:last-child .simple-single-select {
    width: 69.23077%;
    float: left;
    float: left;
    /* Yes, really */
  }
}

.concept-filter-form .single-select__title {
  font-weight: normal;
  letter-spacing: 0.94px;
  line-height: 1.33em;
  text-transform: uppercase;
  text-transform: uppercase;
  margin-bottom: 10px;
  padding-top: 5px;
  padding-bottom: 5px;
}

.concept-filter-form .single-select__title::after {
  clear: both;
  content: '';
  display: table;
}

@media (max-width: 529px) {
  .concept-filter-form .single-select__title {
    font-size: 15px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-filter-form .single-select__title {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-form .single-select__title {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-form .single-select__title {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .concept-filter-form .single-select__title {
    font-size: 22px;
  }
}

.concept-filter-form .single-select__title::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  bottom: 2px;
  float: right;
  font-size: 16px;
  position: relative;
}

.concept-filter-form .single-select__title-text {
  float: left;
}

.concept-filter-form .single-select__extra-title {
  text-transform: uppercase;
  display: none;
  font-size: 11px;
  height: 40px;
  line-height: 13px;
  position: relative;
  text-align: right;
}

.concept-filter-form .single-select__extra-title-positioner {
  left: 0;
  overflow: hidden;
  position: absolute;
  text-overflow: ellipsis;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
}

.concept-filter-form .single-select__values {
  display: none;
  margin-bottom: 25px;
}

@media (min-width: 530px) {
  .concept-filter-form .single-select__title {
    display: none;
  }
  .concept-filter-form .single-select__values {
    display: block;
  }
}

/* Custom properties for the simple multi select element on the concept filter
 * form. */
.concept-filter-form .simple-multi-select {
  /* The display field; hidden on mobile */
  /* The values field; always visible on mobile */
  /* An individual item in the option list */
  /* The input field (checkbox); hidden */
}

.concept-filter-form .simple-multi-select__display {
  display: none;
}

.concept-filter-form .simple-multi-select__values {
  display: block;
}

.concept-filter-form .simple-multi-select__option {
  margin-bottom: 10px;
}

.concept-filter-form .simple-multi-select__option-input {
  display: none;
}

@media (min-width: 530px) {
  .concept-filter-form .simple-multi-select__display {
    display: block;
  }
  .concept-filter-form .simple-multi-select__values {
    display: none;
  }
  .concept-filter-form .simple-multi-select__option {
    margin-bottom: 0;
  }
}

/* Custom properties for the simple single select element on the concept filter
 * form. */
.concept-filter-form .simple-single-select {
  /* The display field; hidden on mobile */
  /* The values field; always visible on mobile */
  /* An individual item in the option list */
}

.concept-filter-form .simple-single-select__display {
  display: none;
}

.concept-filter-form .simple-single-select__values {
  display: block;
}

.concept-filter-form .simple-single-select__option {
  margin-bottom: 18px;
}

@media (min-width: 530px) {
  .concept-filter-form .simple-single-select__display {
    display: block;
  }
  .concept-filter-form .simple-single-select__values {
    display: none;
  }
  .concept-filter-form .simple-single-select__option {
    margin-bottom: 0;
  }
}

/* Option for a simple multi select element */
.concept-filter-form .simple-multi-select-option {
  /* Determines whether the option is active */
  /* Label for the option */
}

@media (max-width: 529px) {
  .concept-filter-form .simple-multi-select-option--active.simple-multi-select-option .simple-multi-select-option {
    /* The text part of the label element */
  }
  .concept-filter-form .simple-multi-select-option--active.simple-multi-select-option .simple-multi-select-option__text {
    border-bottom: 1px solid #000;
  }
}

.concept-filter-form .simple-multi-select-option__label {
  cursor: pointer;
}

@media (max-width: 529px) {
  .concept-filter-form .simple-multi-select-option {
    font-family: "Neuzeit Webfont", "Arial", "Helvetica", sans-serif;
    font-size-adjust: initial;
    text-rendering: optimizeLegibility;
    font-feature-settings: "kern" 1, "calt" 0;
    font-style: normal;
    font-weight: normal;
    font-weight: normal;
    letter-spacing: .6px;
    line-height: 1.3em;
    text-transform: none;
    padding-bottom: 5px;
    padding-top: 5px;
  }
  .concept-filter-form .simple-multi-select-option html em,
  .concept-filter-form .simple-multi-select-option html i {
    font-style: inherit;
  }
}

@media (max-width: 529px) and (max-width: 529px) {
  .concept-filter-form .simple-multi-select-option {
    font-size: 13px;
  }
}

@media (max-width: 529px) and (min-width: 530px) and (max-width: 799px) {
  .concept-filter-form .simple-multi-select-option {
    font-size: 14px;
  }
}

@media (max-width: 529px) and (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-form .simple-multi-select-option {
    font-size: 15px;
  }
}

@media (max-width: 529px) and (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-form .simple-multi-select-option {
    font-size: 16px;
  }
}

@media (max-width: 529px) and (min-width: 1480px) {
  .concept-filter-form .simple-multi-select-option {
    font-size: 17px;
  }
}

@media (max-width: 529px) and (min-width: 320px) and (max-width: 1920px) {
  .concept-filter-form .simple-multi-select-option {
    font-size: calc(13px + (17 - 13) * (100vw - 320px) / (1920 - 320));
  }
}

@media (min-width: 530px) {
  .concept-filter-form .simple-multi-select-option__label {
    margin-left: 0;
  }
}

/* Option for a simple single select element */
.concept-filter-form .simple-single-select-option {
  /* Determines whether the option is active */
  clear: left;
  cursor: pointer;
  display: inline-block;
  float: left;
}

@media (max-width: 529px) {
  .concept-filter-form .simple-single-select-option--active.simple-single-select-option {
    border-bottom: 1px solid #000;
  }
}

@media (max-width: 529px) {
  .concept-filter-form .simple-single-select-option {
    font-family: "Neuzeit Webfont", "Arial", "Helvetica", sans-serif;
    font-size-adjust: initial;
    text-rendering: optimizeLegibility;
    font-feature-settings: "kern" 1, "calt" 0;
    font-style: normal;
    font-weight: normal;
    font-weight: normal;
    letter-spacing: .6px;
    line-height: 1.3em;
    text-transform: none;
    padding-bottom: 5px;
    padding-top: 5px;
  }
  .concept-filter-form .simple-single-select-option html em,
  .concept-filter-form .simple-single-select-option html i {
    font-style: inherit;
  }
}

@media (max-width: 529px) and (max-width: 529px) {
  .concept-filter-form .simple-single-select-option {
    font-size: 13px;
  }
}

@media (max-width: 529px) and (min-width: 530px) and (max-width: 799px) {
  .concept-filter-form .simple-single-select-option {
    font-size: 14px;
  }
}

@media (max-width: 529px) and (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-form .simple-single-select-option {
    font-size: 15px;
  }
}

@media (max-width: 529px) and (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-form .simple-single-select-option {
    font-size: 16px;
  }
}

@media (max-width: 529px) and (min-width: 1480px) {
  .concept-filter-form .simple-single-select-option {
    font-size: 17px;
  }
}

@media (max-width: 529px) and (min-width: 320px) and (max-width: 1920px) {
  .concept-filter-form .simple-single-select-option {
    font-size: calc(13px + (17 - 13) * (100vw - 320px) / (1920 - 320));
  }
}

@media (min-width: 530px) {
  .concept-filter-form .simple-single-select-option {
    margin-left: 0;
  }
}

/* Bar with currently applied filters */
.concept-filter-current-filters {
  padding-top: 13px;
  padding-bottom: 20px;
  text-align: left;
  /* Clear all items element */
}

.concept-filter-current-filters::after {
  clear: both;
  content: '';
  display: table;
}

.concept-filter-current-filters__list {
  margin-left: 8.33333%;
  width: 83.33333%;
  float: left;
  float: left;
  padding-left: 3px;
  padding-right: 3px;
}

.concept-filter-current-filters__clear-all {
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
  text-align: center;
  text-decoration: underline;
  width: 100%;
}

@media (max-width: 529px) {
  .concept-filter-current-filters__clear-all {
    font-size: 10px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-filter-current-filters__clear-all {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-filter-current-filters__clear-all {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-filter-current-filters__clear-all {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .concept-filter-current-filters__clear-all {
    font-size: 20px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .concept-filter-current-filters__clear-all {
    font-size: calc(10px + (20 - 10) * (100vw - 320px) / (1920 - 320));
  }
}

@media (min-width: 530px) {
  .concept-filter-current-filters {
    padding-top: 0;
    text-align: center;
  }
  .concept-filter-current-filters__clear-all {
    width: auto;
  }
}

/* Current filter bar item */
.concept-current-filter {
  /* A filter that is displayed on mobile only */
  display: inline-block;
  margin-bottom: 5px;
  margin-right: 20px;
  width: auto;
  font-family: "Neuzeit Webfont", "Arial", "Helvetica", sans-serif;
  font-size-adjust: initial;
  text-rendering: optimizeLegibility;
  font-feature-settings: "kern" 1, "calt" 0;
  font-style: normal;
  font-weight: normal;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
  /* Template for making new filters */
}

@media (min-width: 530px) {
  .concept-current-filter--mobile-only.concept-current-filter {
    display: none;
  }
}

.concept-current-filter a {
  display: inline-block;
  padding-bottom: 5px;
  padding-top: 5px;
}

.concept-current-filter a::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  bottom: 1px;
  font-size: 15px;
  margin-right: 5px;
  position: relative;
}

.concept-current-filter html em,
.concept-current-filter html i {
  font-style: inherit;
}

@media (max-width: 529px) {
  .concept-current-filter {
    font-size: 13px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-current-filter {
    font-size: 14px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-current-filter {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-current-filter {
    font-size: 16px;
  }
}

@media (min-width: 1480px) {
  .concept-current-filter {
    font-size: 17px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .concept-current-filter {
    font-size: calc(13px + (17 - 13) * (100vw - 320px) / (1920 - 320));
  }
}

.concept-current-filter[data-role="concept-current-filter--template"] {
  display: none;
}

@media (min-width: 530px) {
  .concept-current-filter {
    margin-right: 50px;
    width: auto;
  }
}

/* Element to clear all secondary properties */
.concept-filter-form .clear-all-item {
  display: none;
  font-size: 13px;
  margin-right: 0;
  /* By default the item is hidden. Add this class to make it shown. */
}

.concept-filter-form .clear-all-item a {
  display: block;
  padding-bottom: 10px;
  padding-top: 10px;
}

.concept-filter-form .clear-all-item--show.clear-all-item {
  display: inline-block;
}

.concept-grid-product {
  /* A loaded product */
  /* Concept grid product with carousel functionality */
  /* Concept grid product presented over three columns instead of two */
  /* Concept grid product presented over four columns instead of two */
  /* Concept grid product presented over two columns and two rows */
  /* Dark version of a product */
  overflow: hidden;
}

.concept-grid-product--loaded.concept-grid-product .concept-grid-product__image-container {
  opacity: 1.0;
}

.concept-grid-product--carousel.concept-grid-product .swiper-container {
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.concept-grid-product--carousel.concept-grid-product .swiper-container-no-flexbox .swiper-slide {
  float: left;
}

.concept-grid-product--carousel.concept-grid-product .swiper-container-vertical > .swiper-wrapper {
  -ms-flex-direction: column;
      flex-direction: column;
}

.concept-grid-product--carousel.concept-grid-product .swiper-wrapper {
  box-sizing: content-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  position: relative;
  transform-style: preserve-3d;
  transition-property: transform;
  width: 100%;
  z-index: 1;
}

.concept-grid-product--carousel.concept-grid-product .swiper-container-android .swiper-slide,
.concept-grid-product--carousel.concept-grid-product .swiper-wrapper {
  transform: translate3d(0, 0, 0);
}

.concept-grid-product--carousel.concept-grid-product .swiper-container-multirow > .swiper-wrapper {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.concept-grid-product--carousel.concept-grid-product .swiper-container-free-mode > .swiper-wrapper {
  margin: 0 auto;
  transition-timing-function: ease-out;
}

.concept-grid-product--carousel.concept-grid-product .swiper-slide {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 100%;
  position: relative;
  transform-style: preserve-3d;
  width: 100%;
}

.concept-grid-product--carousel.concept-grid-product .swiper-container .swiper-notification {
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  z-index: -1000;
}

.concept-grid-product--carousel.concept-grid-product .swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
      touch-action: pan-y;
}

.concept-grid-product--carousel.concept-grid-product .swiper-wp8-vertical {
  -ms-touch-action: pan-x;
      touch-action: pan-x;
}

.concept-grid-product--carousel.concept-grid-product .swiper-button-prev,
.concept-grid-product--carousel.concept-grid-product .swiper-button-next {
  background-position: center;
  background-repeat: no-repeat;
  background-size: 27px 44px;
  cursor: pointer;
  height: 44px;
  margin-top: -22px;
  position: absolute;
  top: 50%;
  width: 44px;
  z-index: 10;
}

.concept-grid-product--carousel.concept-grid-product .swiper-button-prev.swiper-button-disabled,
.concept-grid-product--carousel.concept-grid-product .swiper-button-next.swiper-button-disabled {
  cursor: auto;
  opacity: .35;
  pointer-events: none;
}

.concept-grid-product--carousel.concept-grid-product .swiper-button-prev,
.concept-grid-product--carousel.concept-grid-product .swiper-container-rtl .swiper-button-next {
  content: '>';
  left: 10px;
  right: auto;
}

.concept-grid-product--carousel.concept-grid-product .swiper-button-next,
.concept-grid-product--carousel.concept-grid-product .swiper-container-rtl .swiper-button-prev {
  content: '<';
  left: auto;
  right: 10px;
}

.concept-grid-product--carousel.concept-grid-product .swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out;
}

.concept-grid-product--carousel.concept-grid-product .swiper-container-fade .swiper-slide {
  pointer-events: none;
}

.concept-grid-product--carousel.concept-grid-product .swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none;
}

.concept-grid-product--carousel.concept-grid-product .swiper-container-fade .swiper-slide-active {
  pointer-events: auto;
}

.concept-grid-product--carousel.concept-grid-product .swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto;
}

.concept-grid-product--carousel.concept-grid-product .concept-grid-product__navigation-prev, .concept-grid-product--carousel.concept-grid-product .concept-grid-product__navigation-next {
  font-size: 0;
  height: 32px;
  position: absolute;
  width: 32px;
  z-index: 100;
}

.concept-grid-product--carousel.concept-grid-product .concept-grid-product__navigation-inner {
  transform: translateY(-100%);
}

.concept-grid-product--carousel.concept-grid-product .concept-grid-product__navigation-prev {
  left: -10%;
}

.concept-grid-product--carousel.concept-grid-product .concept-grid-product__navigation-prev .concept-grid-product__navigation-inner::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 32px;
  vertical-align: middle;
  content: "";
  color: inherit;
}

.concept-grid-product--carousel.concept-grid-product .concept-grid-product__navigation-next {
  right: -10%;
}

.concept-grid-product--carousel.concept-grid-product .concept-grid-product__navigation-next .concept-grid-product__navigation-inner::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 32px;
  vertical-align: middle;
  content: "";
  color: inherit;
}

.concept-grid-product--carousel.concept-grid-product .swiper-container {
  overflow: hidden;
  position: relative;
}

.concept-grid-product--carousel.concept-grid-product .swiper-wrapper {
  will-change: transform;
}

.concept-grid-product--carousel.concept-grid-product .swiper-slide-active,
.concept-grid-product--carousel.concept-grid-product .swiper-slide-active + .swiper-slide,
.concept-grid-product--carousel.concept-grid-product .swiper-slide-active + .swiper-slide + .swiper-slide {
  opacity: 1;
}

.concept-grid-product--carousel.concept-grid-product .concept-grid-product__navigation-prev {
  display: none;
  left: 5px;
  transform: translateY(-50%);
}

.concept-grid-product--carousel.concept-grid-product .concept-grid-product__navigation-next {
  display: none;
  right: 5px;
  transform: translateY(-50%);
}

.concept-grid-product--carousel.concept-grid-product .concept-grid-product__navigation-inner {
  position: relative;
  top: 50%;
}

.concept-grid-product--carousel.concept-grid-product .concept-grid-product__navigation-inner::before, .concept-grid-product--carousel.concept-grid-product .concept-grid-product__navigation-inner::after {
  color: inherit;
  font-size: 24px !important;
}

.concept-grid-product--carousel.concept-grid-product .concept-grid-product__pagination {
  bottom: 5%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: 100;
}

.concept-grid-product--carousel.concept-grid-product .concept-grid-product__pagination .swiper-pagination-bullet {
  border: 1px solid #fff;
  border-radius: 50%;
  display: inline-block;
  height: 7px;
  width: 7px;
}

.concept-grid-product--carousel.concept-grid-product .concept-grid-product__pagination .swiper-pagination-bullet:not(:last-child) {
  margin-right: 12px;
}

.concept-grid-product--carousel.concept-grid-product .concept-grid-product__pagination .swiper-pagination-bullet-active {
  background: #fff;
}

@media (max-width: 529px) {
  .concept-grid-product--carousel.concept-grid-product {
    width: 100%;
    float: left;
    float: left;
  }
}

@media (min-width: 530px) {
  .concept-grid-product--carousel.concept-grid-product .concept-grid-product__navigation {
    display: none;
  }
  .concept-grid-product--carousel.concept-grid-product .concept-grid-product__pagination {
    display: none;
  }
}

.concept-grid-product--as-three-column.concept-grid-product .concept-grid-product__wrapper {
  height: auto;
  padding-bottom: 0;
}

.concept-grid-product--as-three-column.concept-grid-product .concept-grid-product__image-container {
  height: 0;
  padding-bottom: 101.91083%;
}

@media (min-width: 530px) {
  .concept-grid-product--as-three-column.concept-grid-product .concept-grid-product__wrapper {
    height: 0;
    padding-bottom: 133.33333%;
  }
}

@media (min-width: 1180px) {
  .concept-grid-product--as-three-column.concept-grid-product .concept-grid-product__wrapper {
    padding-bottom: 120%;
  }
}

.concept-grid-product--as-four-column.concept-grid-product .concept-grid-product__wrapper {
  height: auto;
  padding-bottom: 0;
}

.concept-grid-product--as-four-column.concept-grid-product .concept-grid-product__image-container {
  height: 0;
  padding-bottom: 76.54%;
  /* Approximation due to gutter */
}

@media (min-width: 530px) {
  .concept-grid-product--as-four-column.concept-grid-product .concept-grid-product__wrapper {
    height: 0;
    padding-bottom: 100%;
  }
}

@media (min-width: 1180px) {
  .concept-grid-product--as-four-column.concept-grid-product .concept-grid-product__wrapper {
    height: 0;
    padding-bottom: 90%;
  }
  .concept-grid-product--as-four-column.concept-grid-product .concept-grid-product__image-container {
    height: 0;
    padding-bottom: 73.76%;
    /* Approximation due to gutter */
  }
}

@media (min-width: 1480px) {
  .concept-grid-product--as-four-column.concept-grid-product .concept-grid-product__image-container {
    height: 0;
    padding-bottom: 75.41%;
    /* Approximation due to gutter */
  }
}

.concept-grid-product--as-double.concept-grid-product .concept-grid-product__wrapper {
  height: auto;
  padding-bottom: 0;
}

@media (min-width: 530px) {
  .concept-grid-product--as-double.concept-grid-product .concept-grid-product__wrapper {
    height: 0;
    padding-bottom: 180%;
    /* This can be slightly less, as the text won't double in size */
  }
}

.concept-grid-product--dark-controls.concept-grid-product {
  color: #000;
}

.concept-grid-product--dark-controls.concept-grid-product .concept-grid-product__pagination .swiper-pagination-bullet {
  border-color: #000;
}

.concept-grid-product--dark-controls.concept-grid-product .concept-grid-product__pagination .swiper-pagination-bullet-active {
  background: #000;
}

.concept-grid-product__hit-target {
  display: block;
  height: 0;
  width: 0;
}

.concept-grid-product__wrapper {
  height: auto;
  padding-bottom: 0;
}

.concept-grid-product__image-container {
  cursor: pointer;
  height: 0;
  opacity: 0.0;
  padding-bottom: 160%;
  position: relative;
  transition: opacity 0.4s ease;
}

.concept-grid-product__sold-out {
  background-color: #fff;
  bottom: 12%;
  color: #000;
  display: inline-block;
  font-size: inherit;
  line-height: inherit;
  left: 50%;
  letter-spacing: 0.94px;
  padding: 10% 12% 8%;
  position: absolute;
  text-align: center;
  text-transform: uppercase;
  top: auto;
  transform: translateX(-50%);
  width: auto;
  z-index: 100;
}

.concept-grid-product__sold-out::after {
  content: '\2015';
  display: block;
}

.concept-grid-product__product-info {
  cursor: pointer;
}

.concept-grid-product__title {
  margin-top: 0.75em;
  margin-bottom: 0;
}

.concept-grid-product__title::after {
  content: '\2014';
  display: block;
}

.concept-grid-product__title-text {
  font-weight: normal;
  letter-spacing: 0.94px;
  line-height: 1.33em;
  overflow: hidden;
  text-transform: uppercase;
  display: inline-block;
}

@media (max-width: 529px) {
  .concept-grid-product__title-text {
    font-size: 12px;
    max-height: 30px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid-product__title-text {
    font-size: 12px;
    max-height: 30px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-grid-product__title-text {
    font-size: 12px;
    max-height: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-grid-product__title-text {
    font-size: 14px;
    max-height: 54px;
  }
}

@media (min-width: 1480px) {
  .concept-grid-product__title-text {
    font-size: 15px;
    max-height: 57px;
  }
}

.concept-grid-product__price, .concept-grid-product__enquire {
  font-weight: normal;
  letter-spacing: 0.94px;
  line-height: 1.33em;
  overflow: hidden;
  text-transform: uppercase;
  color: #000;
}

@media (max-width: 529px) {
  .concept-grid-product__price, .concept-grid-product__enquire {
    font-size: 12px;
    max-height: 30px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid-product__price, .concept-grid-product__enquire {
    font-size: 12px;
    max-height: 30px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-grid-product__price, .concept-grid-product__enquire {
    font-size: 12px;
    max-height: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-grid-product__price, .concept-grid-product__enquire {
    font-size: 14px;
    max-height: 36px;
  }
}

@media (min-width: 1480px) {
  .concept-grid-product__price, .concept-grid-product__enquire {
    font-size: 15px;
    max-height: 38px;
  }
}

@media (max-width: 529px) {
  .concept-grid-product {
    width: 50%;
    float: left;
    float: left;
  }
}

@media (min-width: 530px) {
  .concept-grid-product__wrapper {
    height: 0;
    padding-bottom: 200%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid-product {
    width: 33.33333%;
    float: left;
    float: left;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-grid-product {
    width: 20%;
    float: left;
    float: left;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-grid-product {
    width: 20%;
    float: left;
    float: left;
  }
}

@media (min-width: 1480px) {
  .concept-grid-product {
    width: 20%;
    float: left;
    float: left;
  }
}

@media (min-width: 1180px) {
  .concept-grid-product__wrapper {
    padding-bottom: 180%;
  }
  .concept-grid-product__title {
    margin-top: 0.75em;
    margin-bottom: 0.25em;
  }
  .concept-grid-product__title::after {
    content: '\2014';
    display: block;
  }
}

@media (max-width: 529px) {
  .concept-grid-product__wrapper {
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid-product__wrapper {
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-grid-product__wrapper {
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-grid-product__wrapper {
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .concept-grid-product__wrapper {
    padding-left: 16px;
    padding-right: 16px;
  }
}

/**
 * Concept block over 1 row, featuring 4 products
 */
.concept-block-grid-products {
  /* Variant with swap across vertical axis */
  /* The left half of the block */
  /* The right half of the block */
  /* The standard products in the block */
  /* The 1.5 width products in the block */
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-block-grid-products--vertical-swap.concept-block-grid-products .concept-block-grid-products__left-half {
    width: 60%;
    float: left;
    float: left;
  }
  .concept-block-grid-products--vertical-swap.concept-block-grid-products .concept-block-grid-products__right-half {
    width: 40%;
    float: left;
    float: left;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-block-grid-products--vertical-swap.concept-block-grid-products .concept-block-grid-products__left-half {
    width: 60%;
    float: left;
    float: left;
  }
  .concept-block-grid-products--vertical-swap.concept-block-grid-products .concept-block-grid-products__right-half {
    width: 40%;
    float: left;
    float: left;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-block-grid-products--vertical-swap.concept-block-grid-products .concept-block-grid-products__left-half {
    width: 60%;
    float: left;
    float: left;
  }
  .concept-block-grid-products--vertical-swap.concept-block-grid-products .concept-block-grid-products__right-half {
    width: 40%;
    float: left;
    float: left;
  }
}

@media (min-width: 1480px) {
  .concept-block-grid-products--vertical-swap.concept-block-grid-products .concept-block-grid-products__left-half {
    width: 60%;
    float: left;
    float: left;
  }
  .concept-block-grid-products--vertical-swap.concept-block-grid-products .concept-block-grid-products__right-half {
    width: 40%;
    float: left;
    float: left;
  }
}

.concept-block-grid-products::after {
  clear: both;
  content: '';
  display: table;
}

@media (max-width: 529px) {
  .concept-block-grid-products__left-half {
    width: 100%;
    float: left;
    float: left;
    padding-bottom: 14%;
  }
  .concept-block-grid-products__right-half {
    width: 100%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__normal-product.concept-grid-product {
    width: 100%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__normal-product.concept-grid-product:first-child {
    padding-bottom: 14%;
  }
  .concept-block-grid-products__bigger-product.concept-grid-product {
    width: 100%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__bigger-product.concept-grid-product:first-child {
    padding-bottom: 14%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-block-grid-products__left-half {
    width: 40%;
    float: left;
    float: left;
    padding-bottom: 3%;
  }
  .concept-block-grid-products__right-half {
    width: 60%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__normal-product.concept-grid-product {
    width: 100%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__normal-product.concept-grid-product:first-child {
    padding-bottom: 7.5%;
  }
  .concept-block-grid-products__bigger-product.concept-grid-product {
    width: 100%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__bigger-product.concept-grid-product:first-child {
    padding-bottom: 5%;
  }
}

@media (min-width: 800px) {
  .concept-block-grid-products__left-half {
    width: 40%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__right-half {
    width: 60%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__normal-product.concept-grid-product {
    width: 50%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__bigger-product.concept-grid-product {
    width: 50%;
    float: left;
    float: left;
  }
}

@media (min-width: 1180px) {
  .concept-block-grid-products__left-half {
    width: 40%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__right-half {
    width: 60%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__normal-product.concept-grid-product {
    width: 50%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__bigger-product.concept-grid-product {
    width: 50%;
    float: left;
    float: left;
  }
}

@media (min-width: 1480px) {
  .concept-block-grid-products__left-half {
    width: 40%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__right-half {
    width: 60%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__normal-product.concept-grid-product {
    width: 50%;
    float: left;
    float: left;
  }
  .concept-block-grid-products__bigger-product.concept-grid-product {
    width: 50%;
    float: left;
    float: left;
  }
}

/*---
title: Concept Grid
description: Grid for concept products and decoration blocks
section: Components
---
*/
.concept-grid {
  /* View to show that the grid is loading */
  /* Concept grid with landing page blocks */
  position: relative;
  transition: opacity 0.4s ease;
}

.concept-grid--loading.concept-grid {
  opacity: 0.35;
}

.concept-grid--landing.concept-grid .concept-grid__loadable-area {
  display: none;
}

.concept-grid--landing.concept-grid--more-products-loaded.concept-grid .concept-grid__divider {
  display: none;
}

.concept-grid--landing.concept-grid--more-products-loaded.concept-grid .concept-grid__loadable-area {
  display: block;
}

.concept-grid::after {
  clear: both;
  content: '';
  display: table;
}

@media (max-width: 529px) {
  .concept-grid {
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid {
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-grid {
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-grid {
    margin-bottom: 8.33333vw;
  }
}

@media (min-width: 1480px) {
  .concept-grid {
    margin-bottom: 8.33333vw;
  }
}

.concept-grid .c-picture + .c-picture {
  cursor: pointer;
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: opacity 0.35s ease-out;
  width: 100%;
}

.concept-grid .c-picture:hover {
  opacity: 1.0;
}

.concept-grid__title-wrapper {
  transform: rotate(90deg);
  white-space: nowrap;
}

@media (max-width: 529px) {
  .concept-grid__title-wrapper {
    width: 0%;
    float: right;
    float: right;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid__title-wrapper {
    width: 0%;
    float: right;
    float: right;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-grid__title-wrapper {
    width: 0%;
    float: right;
    float: right;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-grid__title-wrapper {
    width: 0%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .concept-grid__title-wrapper {
    width: 0%;
    float: right;
    float: right;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.concept-grid__title-wrapper br {
  width: 1en;
}

@media (max-width: 529px) {
  .concept-grid__title-wrapper {
    padding-left: 0;
    transform-origin: 3px 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid__title-wrapper {
    padding-left: 0;
    transform-origin: 6px 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-grid__title-wrapper {
    padding-left: 0;
    transform-origin: 8px 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-grid__title-wrapper {
    padding-left: 0;
    transform-origin: 16px 16px;
  }
}

@media (min-width: 1480px) {
  .concept-grid__title-wrapper {
    padding-left: 0;
    transform-origin: 16px 16px;
  }
}

.concept-grid__title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 2px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.concept-grid__title:first-child {
  margin-top: 0;
}

.concept-grid__title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .concept-grid__title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid__title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-grid__title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-grid__title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) {
  .concept-grid__title {
    font-size: 40px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .concept-grid__title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

.concept-grid__title::after {
  content: '\2014';
  display: block;
}

.concept-grid__items::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 2em;
  vertical-align: middle;
  content: "";
  left: 50%;
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translateX(50%) translateY(50%);
  transition: transform 0.35s ease-out, opacity 0.35s ease-out, z-index 0s linear;
  z-index: -1;
  bottom: 0;
  top: auto;
}

.concept-grid__items.is-loading::before {
  animation: ampersandspinner 1s ease-in-out infinite;
  opacity: 1;
  transform: translateX(50%) translateY(50%);
  transition: transform 0.35s ease-out, opacity 0.35s ease-out, z-index 0s linear 0.5s;
  z-index: 99;
}

.concept-grid__item {
  padding-bottom: 14%;
}

@media (max-width: 529px) {
  .concept-grid__item.v-see-more:nth-child(odd) .e-picture-container {
    display: none;
  }
  .concept-grid__item.v-see-more:nth-child(even) .e-picture-container {
    opacity: 0;
  }
  .concept-grid__item.v-see-more:nth-child(even) .e-item-link {
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -ms-flex-pack: center;
        justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid__item.v-see-more:nth-child(odd) .e-picture-container {
    display: none;
  }
  .concept-grid__item.v-see-more:nth-child(even) .e-picture-container {
    opacity: 0;
  }
  .concept-grid__item.v-see-more:nth-child(even) .e-item-link {
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -ms-flex-pack: center;
        justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
  }
}

@media (min-width: 800px) {
  .concept-grid__item.v-see-more:nth-child(3n+4) .e-picture-container {
    display: none;
  }
  .concept-grid__item.v-see-more:not(:nth-child(3n+4)) .e-picture-container {
    opacity: 0;
  }
  .concept-grid__item.v-see-more:not(:nth-child(3n+4)) .e-item-link {
    -ms-flex-align: center;
        align-items: center;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -ms-flex-pack: center;
        justify-content: center;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
  }
}

.concept-grid__item.is-sold-out {
  background-color: #fff;
  bottom: 12%;
  color: #000;
  display: inline-block;
  font-size: inherit;
  line-height: inherit;
  left: 50%;
  letter-spacing: 0.94px;
  padding: 10% 12% 8%;
  position: absolute;
  text-align: center;
  text-transform: uppercase;
  top: auto;
  transform: translateX(-50%);
  width: auto;
  z-index: 100;
}

.concept-grid__item.is-sold-out::after {
  content: '\2015';
  display: block;
}

.concept-grid__item-title {
  margin-bottom: 1rem;
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
}

.concept-grid__item-title::after {
  content: '\2014';
  display: block;
}

.concept-grid__item-title:first-child {
  margin-top: 0;
}

.concept-grid__item-title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .concept-grid__item-title {
    font-size: 10px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid__item-title {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-grid__item-title {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-grid__item-title {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .concept-grid__item-title {
    font-size: 20px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .concept-grid__item-title {
    font-size: calc(10px + (20 - 10) * (100vw - 320px) / (1920 - 320));
  }
}

.concept-grid__item-link .e-span {
  display: inline-block;
  position: relative;
  white-space: nowrap;
}

.concept-grid__item-link .e-span::after {
  background-color: currentColor;
  content: '';
  display: block;
  height: 1px;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: calc(50% + .6em);
  transform: translateX(-50%);
  width: 0;
  width: 100%;
  transition: width 0.075s cubic-bezier(0, 0, 1, 0.06), top 0.75s cubic-bezier(0, 0, 1, 0.06);
}

.concept-grid__item-link.is-active .e-span::after {
  width: 0;
}

.concept-grid__item-link.is-disabled {
  color: #b9b9b9;
  cursor: inherit;
  pointer-events: none;
}

body.no-touch .concept-grid__item-link:not(.is-disabled):hover .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

body.touch .concept-grid__item-link:not(.is-disabled):active .e-span::after {
  transition: width 0.15s cubic-bezier(0, 0, 0, 1.06);
  width: 0;
}

.concept-grid__sidetext {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .77rem;
  font-weight: normal;
  letter-spacing: initial;
  line-height: 1.5em;
  text-transform: uppercase;
  display: inline-block;
  height: 0;
  position: absolute;
  text-align: right;
  top: 0;
  transform: translateX(-100%) rotate(-90deg);
  transform-origin: top right;
  width: 300px;
}

.concept-grid__sidetext:first-child {
  margin-top: 0;
}

.concept-grid__sidetext:last-child {
  margin-bottom: 0;
}

.concept-grid__sidetext .e-span {
  display: block;
  transform: translateY(-200%);
}

@media (max-width: 529px) {
  .concept-grid__sidetext {
    left: 3px;
  }
  .concept-grid__sidetext .e-span {
    height: 12px;
    line-height: 12px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid__sidetext {
    left: 6px;
  }
  .concept-grid__sidetext .e-span {
    height: 24px;
    line-height: 24px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-grid__sidetext {
    left: 8px;
  }
  .concept-grid__sidetext .e-span {
    height: 32px;
    line-height: 32px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-grid__sidetext {
    left: 16px;
  }
  .concept-grid__sidetext .e-span {
    height: 64px;
    line-height: 64px;
  }
}

@media (min-width: 1480px) {
  .concept-grid__sidetext {
    left: 16px;
  }
  .concept-grid__sidetext .e-span {
    height: 64px;
    line-height: 64px;
  }
}

@media (min-width: 530px) {
  .concept-grid__sidetext .e-span {
    transform: translateY(-110%);
  }
}

@media (min-width: 800px) {
  .concept-grid__sidetext .e-span {
    transform: translateY(-120%);
  }
}

@media (min-width: 1180px) {
  .concept-grid__sidetext .e-span {
    transform: translateY(-100%);
  }
}

.concept-grid__divider {
  cursor: pointer;
  padding-bottom: 20px;
  padding-top: 20px;
  text-align: center;
}

.concept-grid__divider::after {
  background: #EFEFEF;
  content: '';
  display: block;
  height: 1px;
  width: 100%;
}

.concept-grid__divider-title {
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
  text-transform: uppercase;
  margin-bottom: 15px;
}

@media (max-width: 529px) {
  .concept-grid__divider-title {
    font-size: 16px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid__divider-title {
    font-size: 20px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-grid__divider-title {
    font-size: 24px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-grid__divider-title {
    font-size: 24px;
  }
}

@media (min-width: 1480px) {
  .concept-grid__divider-title {
    font-size: 24px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .concept-grid__divider-title {
    font-size: calc(16px + (24 - 16) * (100vw - 320px) / (1920 - 320));
  }
}

.concept-grid__divider-title::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 24px;
  vertical-align: middle;
  content: "";
  bottom: 2px;
  font-size: 15px;
  margin-right: 5px;
  position: relative;
}

.concept-grid__footer {
  clear: both;
}

.concept-grid__footer .c-paging {
  float: right;
}

.concept-grid__title-wrapper {
  height: 0;
  position: relative;
}

.concept-grid__title {
  bottom: 0;
  left: 0;
  position: absolute;
}

.concept-grid__items::after {
  clear: both;
  content: '';
  display: table;
}

.concept-grid__item {
  opacity: 1;
  transition: opacity 0.15s ease-out;
}

.concept-grid__item.is-loading {
  opacity: 0;
}

.concept-grid__item-title {
  margin-top: 1em;
}

@media (min-width: 530px) {
  .concept-grid__item {
    padding-bottom: 3%;
  }
}

@media (max-width: 529px) {
  .concept-grid {
    width: 83.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    float: none;
  }
  .concept-grid__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
  .concept-grid__footer {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-grid {
    width: 83.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    float: none;
  }
  .concept-grid__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
  .concept-grid__footer {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-grid {
    width: 83.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    float: none;
  }
  .concept-grid__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
  .concept-grid__footer {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-grid {
    width: 83.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    float: none;
  }
  .concept-grid__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-grid__footer {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .concept-grid {
    width: 83.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    float: none;
  }
  .concept-grid__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-grid__footer {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

/*---
title: Concept Grid View More
description: Related blocks for the concept grid
section: Components (BEM)
---
*/
.concept-view-more {
  /* Version with up to two alternatives */
  /* Version with up to four alternatives */
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-view-more--two.concept-view-more .concept-view-more__item {
    width: 50%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-view-more--two.concept-view-more .concept-view-more__item {
    width: 50%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-view-more--two.concept-view-more .concept-view-more__item {
    width: 50%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .concept-view-more--two.concept-view-more .concept-view-more__item {
    width: 50%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-view-more--four.concept-view-more .concept-view-more__item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-view-more--four.concept-view-more .concept-view-more__item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-view-more--four.concept-view-more .concept-view-more__item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .concept-view-more--four.concept-view-more .concept-view-more__item {
    width: 25%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (max-width: 529px) {
  .concept-view-more__title {
    margin-top: 1em;
    margin-bottom: 1em;
    font-weight: normal;
    letter-spacing: 2px;
    line-height: 1em;
    text-transform: uppercase;
    margin-bottom: 1rem;
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
  .concept-view-more__title:first-child {
    margin-top: 0;
  }
  .concept-view-more__title:last-child {
    margin-bottom: 0;
  }
}

@media (max-width: 529px) and (max-width: 529px) {
  .concept-view-more__title {
    font-size: 20px;
  }
}

@media (max-width: 529px) and (min-width: 530px) and (max-width: 799px) {
  .concept-view-more__title {
    font-size: 25px;
  }
}

@media (max-width: 529px) and (min-width: 800px) and (max-width: 1179px) {
  .concept-view-more__title {
    font-size: 30px;
  }
}

@media (max-width: 529px) and (min-width: 1180px) and (max-width: 1479px) {
  .concept-view-more__title {
    font-size: 35px;
  }
}

@media (max-width: 529px) and (min-width: 1480px) {
  .concept-view-more__title {
    font-size: 40px;
  }
}

@media (max-width: 529px) and (min-width: 320px) and (max-width: 1920px) {
  .concept-view-more__title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

@media (max-width: 529px) {
  .concept-view-more__title::after {
    content: '\2014';
    display: block;
  }
  .concept-view-more__items {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
  }
  .concept-view-more__item:not(:last-child) {
    margin-bottom: 14%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-view-more__items {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
  }
  .concept-view-more__title {
    margin-top: 1em;
    margin-bottom: 1em;
    font-weight: normal;
    letter-spacing: 2px;
    line-height: 1em;
    text-transform: uppercase;
    margin-bottom: 1rem;
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
  .concept-view-more__title:first-child {
    margin-top: 0;
  }
  .concept-view-more__title:last-child {
    margin-bottom: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (max-width: 529px) {
  .concept-view-more__title {
    font-size: 20px;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 530px) and (max-width: 799px) {
  .concept-view-more__title {
    font-size: 25px;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 800px) and (max-width: 1179px) {
  .concept-view-more__title {
    font-size: 30px;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 1180px) and (max-width: 1479px) {
  .concept-view-more__title {
    font-size: 35px;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 1480px) {
  .concept-view-more__title {
    font-size: 40px;
  }
}

@media (min-width: 530px) and (max-width: 799px) and (min-width: 320px) and (max-width: 1920px) {
  .concept-view-more__title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-view-more__title::after {
    content: '\2014';
    display: block;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-view-more__items {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
  }
  .concept-view-more__title {
    margin-top: 1em;
    margin-bottom: 1em;
    font-weight: normal;
    letter-spacing: 2px;
    line-height: 1em;
    text-transform: uppercase;
    margin-bottom: 1rem;
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
  .concept-view-more__title:first-child {
    margin-top: 0;
  }
  .concept-view-more__title:last-child {
    margin-bottom: 0;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (max-width: 529px) {
  .concept-view-more__title {
    font-size: 20px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (min-width: 530px) and (max-width: 799px) {
  .concept-view-more__title {
    font-size: 25px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (min-width: 800px) and (max-width: 1179px) {
  .concept-view-more__title {
    font-size: 30px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (min-width: 1180px) and (max-width: 1479px) {
  .concept-view-more__title {
    font-size: 35px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (min-width: 1480px) {
  .concept-view-more__title {
    font-size: 40px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) and (min-width: 320px) and (max-width: 1920px) {
  .concept-view-more__title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-view-more__title::after {
    content: '\2014';
    display: block;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-view-more__items {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
  }
  .concept-view-more__title {
    margin-top: 1em;
    margin-bottom: 1em;
    font-weight: normal;
    letter-spacing: 2px;
    line-height: 1em;
    text-transform: uppercase;
    margin-bottom: 1rem;
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-view-more__title:first-child {
    margin-top: 0;
  }
  .concept-view-more__title:last-child {
    margin-bottom: 0;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (max-width: 529px) {
  .concept-view-more__title {
    font-size: 20px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (min-width: 530px) and (max-width: 799px) {
  .concept-view-more__title {
    font-size: 25px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (min-width: 800px) and (max-width: 1179px) {
  .concept-view-more__title {
    font-size: 30px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (min-width: 1180px) and (max-width: 1479px) {
  .concept-view-more__title {
    font-size: 35px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (min-width: 1480px) {
  .concept-view-more__title {
    font-size: 40px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) and (min-width: 320px) and (max-width: 1920px) {
  .concept-view-more__title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-view-more__title::after {
    content: '\2014';
    display: block;
  }
}

@media (min-width: 1480px) {
  .concept-view-more__items {
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
  }
  .concept-view-more__title {
    margin-top: 1em;
    margin-bottom: 1em;
    font-weight: normal;
    letter-spacing: 2px;
    line-height: 1em;
    text-transform: uppercase;
    margin-bottom: 1rem;
    margin-left: 8.33333%;
    width: 83.33333%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
  .concept-view-more__title:first-child {
    margin-top: 0;
  }
  .concept-view-more__title:last-child {
    margin-bottom: 0;
  }
}

@media (min-width: 1480px) and (max-width: 529px) {
  .concept-view-more__title {
    font-size: 20px;
  }
}

@media (min-width: 1480px) and (min-width: 530px) and (max-width: 799px) {
  .concept-view-more__title {
    font-size: 25px;
  }
}

@media (min-width: 1480px) and (min-width: 800px) and (max-width: 1179px) {
  .concept-view-more__title {
    font-size: 30px;
  }
}

@media (min-width: 1480px) and (min-width: 1180px) and (max-width: 1479px) {
  .concept-view-more__title {
    font-size: 35px;
  }
}

@media (min-width: 1480px) and (min-width: 1480px) {
  .concept-view-more__title {
    font-size: 40px;
  }
}

@media (min-width: 1480px) and (min-width: 320px) and (max-width: 1920px) {
  .concept-view-more__title {
    font-size: calc(20px + (40 - 20) * (100vw - 320px) / (1920 - 320));
  }
}

@media (min-width: 1480px) {
  .concept-view-more__title::after {
    content: '\2014';
    display: block;
  }
}

.concept-view-more-item__image-container {
  height: 0;
  padding-bottom: 56.25%;
}

.concept-view-more-item__title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
}

.concept-view-more-item__title:first-child {
  margin-top: 0;
}

.concept-view-more-item__title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .concept-view-more-item__title {
    font-size: 16px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .concept-view-more-item__title {
    font-size: 20px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .concept-view-more-item__title {
    font-size: 24px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .concept-view-more-item__title {
    font-size: 24px;
  }
}

@media (min-width: 1480px) {
  .concept-view-more-item__title {
    font-size: 24px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .concept-view-more-item__title {
    font-size: calc(16px + (24 - 16) * (100vw - 320px) / (1920 - 320));
  }
}

.concept-view-more-item__title::after {
  content: '\2014';
  display: block;
}

/* Form field as ul */
.shopping-cart {
  /* State for when no items in cart */
}

.shopping-cart--loaded.shopping-cart [data-role="shopping-cart--loading"] {
  display: none;
}

.shopping-cart--loaded.shopping-cart [data-role="shopping-cart--loaded"] {
  display: block;
}

.shopping-cart--no-items.shopping-cart [data-role="shopping-cart--loading"] {
  display: none;
}

.shopping-cart--no-items.shopping-cart [data-role="shopping-cart--no-items"] {
  display: block;
}

.shopping-cart--no-items.shopping-cart .shopping-cart__items {
  display: none;
}

.shopping-cart--no-items.shopping-cart .shopping-cart__meta {
  display: none;
}

@media (min-width: 800px) {
  .shopping-cart--no-items.shopping-cart .shopping-cart__meta {
    display: block;
  }
}

.shopping-cart::after {
  clear: both;
  content: '';
  display: table;
}

.shopping-cart [data-role="shopping-cart--loaded"] {
  display: none;
}

.shopping-cart [data-role="shopping-cart--no-items"] {
  display: none;
}

@media (max-width: 529px) {
  .shopping-cart__contents {
    width: 83.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .shopping-cart__contents {
    width: 83.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .shopping-cart__contents {
    width: 58.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .shopping-cart__contents {
    width: 58.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .shopping-cart__contents {
    width: 58.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
  }
}

@media (max-width: 529px) {
  .shopping-cart__meta {
    width: 83.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .shopping-cart__meta {
    width: 83.33333%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .shopping-cart__meta {
    width: 16.66667%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .shopping-cart__meta {
    width: 16.66667%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

@media (min-width: 1480px) {
  .shopping-cart__meta {
    width: 16.66667%;
    float: left;
    float: left;
    margin-left: 8.33333%;
    margin-right: 8.33333%;
  }
}

.shopping-cart__totals-and-proceed {
  margin-bottom: 2.5em;
}

@media (max-width: 529px) {
  .shopping-cart__information {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .shopping-cart__information {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .shopping-cart__information {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .shopping-cart__information {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .shopping-cart__information {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.cart-items-table {
  color: #000;
  text-align: left;
}

.cart-items-table [data-role="cart-items-divider--template"] {
  display: none;
}

.cart-items-table__header {
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
  text-transform: uppercase;
  font-weight: normal;
  position: relative;
}

@media (max-width: 529px) {
  .cart-items-table__header {
    font-size: 10px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .cart-items-table__header {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .cart-items-table__header {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .cart-items-table__header {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .cart-items-table__header {
    font-size: 20px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .cart-items-table__header {
    font-size: calc(10px + (20 - 10) * (100vw - 320px) / (1920 - 320));
  }
}

.cart-items-table__header-bottom, .cart-items-table__divider {
  float: none !important;
  /* Table cells don't like float */
  padding-top: 1.5em;
  padding-bottom: 2.5em;
}

@media (max-width: 529px) {
  .cart-items-table__header-bottom, .cart-items-table__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .cart-items-table__header-bottom, .cart-items-table__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .cart-items-table__header-bottom, .cart-items-table__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .cart-items-table__header-bottom, .cart-items-table__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .cart-items-table__header-bottom, .cart-items-table__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.cart-items-table__divider {
  padding-top: 2.5em;
}

.cart-items-table__header-line {
  border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}

.cart-items-table__header-item, .cart-items-table__value-item {
  float: none !important;
  /* Table cells don't like float */
}

@media (max-width: 529px) {
  .cart-items-table__header-item, .cart-items-table__value-item {
    width: 30%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .cart-items-table__header-item, .cart-items-table__value-item {
    width: 30%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .cart-items-table__header-item, .cart-items-table__value-item {
    width: 28.57143%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .cart-items-table__header-item, .cart-items-table__value-item {
    width: 28.57143%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .cart-items-table__header-item, .cart-items-table__value-item {
    width: 28.57143%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.cart-items-table__header-description, .cart-items-table__value-description {
  float: none !important;
  /* Table cells don't like float */
}

@media (max-width: 529px) {
  .cart-items-table__header-description, .cart-items-table__value-description {
    width: 40%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .cart-items-table__header-description, .cart-items-table__value-description {
    width: 40%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .cart-items-table__header-description, .cart-items-table__value-description {
    width: 42.85714%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .cart-items-table__header-description, .cart-items-table__value-description {
    width: 42.85714%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .cart-items-table__header-description, .cart-items-table__value-description {
    width: 42.85714%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.cart-items-table__header-quantity, .cart-items-table__value-quantity {
  float: none !important;
  /* Table cells don't like float */
  text-align: right;
}

@media (max-width: 529px) {
  .cart-items-table__header-quantity, .cart-items-table__value-quantity {
    width: 20%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .cart-items-table__header-quantity, .cart-items-table__value-quantity {
    width: 20%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .cart-items-table__header-quantity, .cart-items-table__value-quantity {
    width: 14.28571%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .cart-items-table__header-quantity, .cart-items-table__value-quantity {
    width: 14.28571%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .cart-items-table__header-quantity, .cart-items-table__value-quantity {
    width: 14.28571%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.cart-items-table__header-remove, .cart-items-table__value-remove {
  float: none !important;
  /* Table cells don't like float */
  text-align: right;
}

@media (max-width: 529px) {
  .cart-items-table__header-remove, .cart-items-table__value-remove {
    width: 10%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .cart-items-table__header-remove, .cart-items-table__value-remove {
    width: 10%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .cart-items-table__header-remove, .cart-items-table__value-remove {
    width: 14.28571%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .cart-items-table__header-remove, .cart-items-table__value-remove {
    width: 14.28571%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .cart-items-table__header-remove, .cart-items-table__value-remove {
    width: 14.28571%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.cart-items-table__value__item {
  vertical-align: middle;
}

.cart-items-table__value-description, .cart-items-table__value-quantity, .cart-items-table__value-remove {
  vertical-align: top;
}

.cart-items-table__value-quantity {
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-touch-callout: none;
}

.shopping-cart-item {
  transition: opacity 400ms ease-out;
}

.shopping-cart-item--loaded.shopping-cart-item [data-role="shopping-cart-item--loading"] {
  display: none;
}

.shopping-cart-item--loaded.shopping-cart-item [data-role="shopping-cart-item--loaded"] {
  display: table-cell;
  /* Tricky */
}

.shopping-cart-item--has-label .shopping-cart-item__label {
  display: block;
}

.shopping-cart-item--has-label .shopping-cart-item__quantity-container, .shopping-cart-item--has-label .shopping-cart-item__remove-container {
  padding-top: calc(0.75rem + 1.5em);
  /* ..... */
}

.shopping-cart-item--removed {
  opacity: 0.0;
}

.shopping-cart-item [data-role="shopping-cart-item--loaded"] {
  display: none;
}

.shopping-cart-item[data-role="shopping-cart-item--template"] {
  display: none;
}

.shopping-cart-item__label {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .75rem;
  font-weight: normal;
  letter-spacing: 1.2px;
  line-height: 1.5em;
  text-transform: uppercase;
  color: #b9b9b9;
  display: none;
  margin-bottom: 1.5em;
}

.shopping-cart-item__label:first-child {
  margin-top: 0;
}

.shopping-cart-item__label:last-child {
  margin-bottom: 0;
}

.shopping-cart-item__title {
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
  display: block;
  margin-bottom: 0.5em;
}

@media (max-width: 529px) {
  .shopping-cart-item__title {
    font-size: 16px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .shopping-cart-item__title {
    font-size: 20px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .shopping-cart-item__title {
    font-size: 24px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .shopping-cart-item__title {
    font-size: 24px;
  }
}

@media (min-width: 1480px) {
  .shopping-cart-item__title {
    font-size: 24px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .shopping-cart-item__title {
    font-size: calc(16px + (24 - 16) * (100vw - 320px) / (1920 - 320));
  }
}

.shopping-cart-item__title::after {
  content: '\2014';
  display: block;
}

.shopping-cart-item__description {
  font-family: "Neuzeit Webfont", "Arial", "Helvetica", sans-serif;
  font-size-adjust: initial;
  text-rendering: optimizeLegibility;
  font-feature-settings: "kern" 1, "calt" 0;
  font-style: normal;
  font-weight: normal;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
  margin-bottom: 1.75em;
}

.shopping-cart-item__description html em,
.shopping-cart-item__description html i {
  font-style: inherit;
}

@media (max-width: 529px) {
  .shopping-cart-item__description {
    font-size: 13px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .shopping-cart-item__description {
    font-size: 14px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .shopping-cart-item__description {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .shopping-cart-item__description {
    font-size: 16px;
  }
}

@media (min-width: 1480px) {
  .shopping-cart-item__description {
    font-size: 17px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .shopping-cart-item__description {
    font-size: calc(13px + (17 - 13) * (100vw - 320px) / (1920 - 320));
  }
}

.shopping-cart-item__from-price {
  display: inline-block;
  margin-right: 1em;
  position: relative;
}

.shopping-cart-item__from-price::after {
  /* https://stackoverflow.com/a/40499367/2240807 */
  background: linear-gradient(to left top, transparent 45.5%, currentColor 47.5%, currentColor 52.5%, transparent 54.5%);
  bottom: 0.38em;
  content: '';
  display: block;
  left: 0.1em;
  pointer-events: none;
  position: absolute;
  right: -0.1em;
  top: 0.25em;
  width: 100%;
}

.shopping-cart-item__quantity-subtract {
  bottom: 2px;
  display: inline-block;
  position: relative;
}

.shopping-cart-item__quantity-subtract::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: "inherit";
  vertical-align: middle;
  content: "";
}

.shopping-cart-item__quantity-subtract:hover {
  transform: scale(1.3);
}

.shopping-cart-item__quantity-display {
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
  display: inline-block;
  min-width: 20px;
  text-align: center;
}

@media (max-width: 529px) {
  .shopping-cart-item__quantity-display {
    font-size: 16px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .shopping-cart-item__quantity-display {
    font-size: 20px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .shopping-cart-item__quantity-display {
    font-size: 24px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .shopping-cart-item__quantity-display {
    font-size: 24px;
  }
}

@media (min-width: 1480px) {
  .shopping-cart-item__quantity-display {
    font-size: 24px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .shopping-cart-item__quantity-display {
    font-size: calc(16px + (24 - 16) * (100vw - 320px) / (1920 - 320));
  }
}

.shopping-cart-item__quantity-add {
  bottom: 2px;
  display: inline-block;
  position: relative;
}

.shopping-cart-item__quantity-add::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: "inherit";
  vertical-align: middle;
  content: "";
}

.shopping-cart-item__quantity-add:hover {
  transform: scale(1.3);
}

.shopping-cart-item__remove {
  display: inline-block;
}

.shopping-cart-item__remove::before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: "inherit";
  vertical-align: middle;
  content: "";
}

.shopping-cart-item__remove:hover {
  transform: scale(1.3);
}

@media (max-width: 529px) {
  .shopping-cart-item__description {
    display: none;
  }
  .shopping-cart-item__from-price {
    margin-right: 0;
  }
  .shopping-cart-item__final-price {
    display: block;
  }
}

.totals-and-proceed::after {
  clear: both;
  content: '';
  display: table;
}

.totals-and-proceed__title {
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
  font-weight: bold;
  margin-bottom: 2.5em;
}

@media (max-width: 529px) {
  .totals-and-proceed__title {
    font-size: 10px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .totals-and-proceed__title {
    font-size: 12.5px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .totals-and-proceed__title {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .totals-and-proceed__title {
    font-size: 17.5px;
  }
}

@media (min-width: 1480px) {
  .totals-and-proceed__title {
    font-size: 20px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .totals-and-proceed__title {
    font-size: calc(10px + (20 - 10) * (100vw - 320px) / (1920 - 320));
  }
}

@media (max-width: 529px) {
  .totals-and-proceed__title {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .totals-and-proceed__title {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .totals-and-proceed__title {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .totals-and-proceed__title {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .totals-and-proceed__title {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.totals-and-proceed__shipping-info {
  display: inline-block;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  font-size: .73rem;
  font-weight: normal;
  letter-spacing: .5px;
  line-height: 1.3em;
  text-transform: none;
  padding: 12px 14px;
  margin-bottom: 1.5em;
  margin-top: -1.5em;
  background-color: #ededed;
}

.totals-and-proceed__shipping-info::after {
  clear: both;
  content: '';
  display: table;
}

.totals-and-proceed__shipping-info:first-child {
  margin-top: 0;
}

.totals-and-proceed__shipping-info:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .totals-and-proceed__shipping-info {
    width: 100%;
    margin-top: 1em;
    margin-bottom: 1em;
    font-size: .87rem;
    font-weight: normal;
    letter-spacing: .6px;
    line-height: 1.3em;
    text-transform: none;
    margin-bottom: 1.5em;
  }
  .totals-and-proceed__shipping-info:first-child {
    margin-top: 0;
  }
  .totals-and-proceed__shipping-info:last-child {
    margin-bottom: 0;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .totals-and-proceed__shipping-info {
    width: 100%;
    margin-top: 1em;
    margin-bottom: 1em;
    font-size: .87rem;
    font-weight: normal;
    letter-spacing: .6px;
    line-height: 1.3em;
    text-transform: none;
    margin-bottom: 1.5em;
  }
  .totals-and-proceed__shipping-info:first-child {
    margin-top: 0;
  }
  .totals-and-proceed__shipping-info:last-child {
    margin-bottom: 0;
  }
}

@media (min-width: 800px) {
  .totals-and-proceed__shipping-info {
    margin-left: 8px;
    margin-right: 8px;
    padding: 10px 12px;
  }
}

@media (min-width: 1180px) {
  .totals-and-proceed__shipping-info {
    margin-left: 16px;
    margin-right: 16px;
    padding: 12px 14px;
  }
}

@media (min-width: 1480px) {
  .totals-and-proceed__shipping-info {
    width: 90%;
  }
}

.totals-and-proceed__subtotals, .totals-and-proceed__totals {
  font-size: .87rem;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
  text-transform: uppercase;
  width: 100%;
}

.totals-and-proceed__subtotals::after, .totals-and-proceed__totals::after {
  clear: both;
  content: '';
  display: table;
}

.totals-and-proceed__subtotals {
  padding-bottom: 1.75em;
}

.totals-and-proceed__divider {
  padding-bottom: 1.75em;
}

@media (max-width: 529px) {
  .totals-and-proceed__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .totals-and-proceed__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .totals-and-proceed__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .totals-and-proceed__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .totals-and-proceed__divider {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.totals-and-proceed__divider::after {
  background: rgba(0, 0, 0, 0.3);
  content: '';
  display: block;
  height: 1px;
  width: 100%;
  left: 0;
  top: 0;
}

@media (max-width: 529px) {
  .totals-and-proceed__item {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .totals-and-proceed__item {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .totals-and-proceed__item {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .totals-and-proceed__item {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .totals-and-proceed__item {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.totals-and-proceed__item:not(:last-child):not(.totals-rule--disabled) {
  margin-bottom: 1.5em;
}

.totals-and-proceed__item-title {
  clear: both;
  float: left;
  margin-right: 1.5em;
  text-align: left;
  vertical-align: bottom;
}

.totals-and-proceed__item-value {
  float: right;
  font-weight: bold;
  text-align: right;
  vertical-align: bottom;
}

.totals-and-proceed__totals {
  padding-bottom: 1.75em;
}

@media (max-width: 529px) {
  .totals-and-proceed__proceed {
    width: 100%;
    float: left;
    float: left;
    padding-left: 3px;
    padding-right: 3px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .totals-and-proceed__proceed {
    width: 100%;
    float: left;
    float: left;
    padding-left: 6px;
    padding-right: 6px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .totals-and-proceed__proceed {
    width: 100%;
    float: left;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .totals-and-proceed__proceed {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

@media (min-width: 1480px) {
  .totals-and-proceed__proceed {
    width: 100%;
    float: left;
    float: left;
    padding-left: 16px;
    padding-right: 16px;
  }
}

.totals-and-proceed__checkout {
  line-height: 30px;
  min-width: 0;
  width: 100%;
}

@media (max-width: 529px) {
  .totals-and-proceed__title {
    display: none;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .totals-and-proceed__title {
    display: none;
  }
}

@media (min-width: 530px) {
  .totals-and-proceed__quantity-display {
    min-width: 25px;
  }
}

.totals-and-proceed:not(.totals-and-proceed--shipping-info) .totals-and-proceed__shipping-info {
  display: none;
}

.totals-rule {
  transition: opacity 400ms ease-out;
}

.totals-rule--irrelevant {
  opacity: 0;
}

.totals-rule--disabled {
  display: none;
}

.checkout-display--hidden {
  display: none;
}

.cart-no-items {
  background: #EFEFEF;
  padding: 60px 40px;
}

.cart-no-items__title {
  margin-top: 1em;
  margin-bottom: 1em;
  font-weight: normal;
  letter-spacing: 1px;
  line-height: 1em;
  text-transform: uppercase;
  margin-bottom: 1rem;
  text-align: center;
}

.cart-no-items__title:first-child {
  margin-top: 0;
}

.cart-no-items__title:last-child {
  margin-bottom: 0;
}

@media (max-width: 529px) {
  .cart-no-items__title {
    font-size: 16px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .cart-no-items__title {
    font-size: 20px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .cart-no-items__title {
    font-size: 24px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .cart-no-items__title {
    font-size: 24px;
  }
}

@media (min-width: 1480px) {
  .cart-no-items__title {
    font-size: 24px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .cart-no-items__title {
    font-size: calc(16px + (24 - 16) * (100vw - 320px) / (1920 - 320));
  }
}

.cart-no-items__title::after {
  content: '\2014';
  display: block;
}

.cart-no-items__text {
  font-family: "Neuzeit Webfont", "Arial", "Helvetica", sans-serif;
  font-size-adjust: initial;
  text-rendering: optimizeLegibility;
  font-feature-settings: "kern" 1, "calt" 0;
  font-style: normal;
  font-weight: normal;
  font-weight: normal;
  letter-spacing: .6px;
  line-height: 1.3em;
  text-transform: none;
  text-align: center;
}

.cart-no-items__text html em,
.cart-no-items__text html i {
  font-style: inherit;
}

@media (max-width: 529px) {
  .cart-no-items__text {
    font-size: 13px;
  }
}

@media (min-width: 530px) and (max-width: 799px) {
  .cart-no-items__text {
    font-size: 14px;
  }
}

@media (min-width: 800px) and (max-width: 1179px) {
  .cart-no-items__text {
    font-size: 15px;
  }
}

@media (min-width: 1180px) and (max-width: 1479px) {
  .cart-no-items__text {
    font-size: 16px;
  }
}

@media (min-width: 1480px) {
  .cart-no-items__text {
    font-size: 17px;
  }
}

@media (min-width: 320px) and (max-width: 1920px) {
  .cart-no-items__text {
    font-size: calc(13px + (17 - 13) * (100vw - 320px) / (1920 - 320));
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.shopping-menu-item {
  display: inline-block;
}

.shopping-menu-item--change {
  animation: fade-in 800ms ease-out 1;
}

.shopping-menu-item::after {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: 'viktor-rolf-icons';
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  speak: none;
  text-transform: none;
  font-size: 20px;
  vertical-align: middle;
  content: "";
  position: relative;
  top: 1px;
}

.shopping-count {
  border-radius: 50%;
  border: 1px solid #000;
  display: inline-block;
  font-size: 11px;
  font-weight: bold;
  height: 17px;
  letter-spacing: -0.5px;
  line-height: 19px;
  padding-right: 1px;
  position: relative;
  text-align: center;
  top: 3px;
  width: 17px;
}

.shopping-count--emoji {
  border: none;
  font-size: 15px;
  letter-spacing: 0;
  right: 1px;
  top: 4px;
}

/* Multi select dropdown list */
.simple-multi-select {
  /* When the menu is open */
  /* The selectable values of the dropdown list. */
  /* The display label of an option */
}

.simple-multi-select--open.simple-multi-select .simple-multi-select__values {
  display: block;
}

@media (min-width: 530px) {
  .simple-multi-select--open.simple-multi-select .simple-multi-select__display::before {
    content: "";
  }
}

.simple-multi-select__values {
  display: none;
}

.simple-multi-select__option-label {
  display: inline-block;
  height: 14px;
}

@media (min-width: 530px) {
  .simple-multi-select {
    display: inline-block;
    position: relative;
    width: 100%;
  }
  .simple-multi-select__display {
    text-transform: uppercase;
    border: 1px solid #000;
    cursor: pointer;
    font-size: 11px;
    line-height: 13px;
    height: 40px;
    padding: 0;
    position: relative;
  }
  .simple-multi-select__display::before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-family: 'viktor-rolf-icons';
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    speak: none;
    text-transform: none;
    font-size: 24px;
    vertical-align: middle;
    content: "";
    font-size: 15px;
    right: 10px;
    margin-right: 6px;
    padding-top: 7px;
    position: absolute;
    top: 4px;
    z-index: 2;
  }
  .simple-multi-select__display-positioner {
    left: 0;
    overflow: hidden;
    padding-left: 15px;
    position: absolute;
    text-overflow: ellipsis;
    top: 50%;
    transform: translateY(-50%);
    width: calc(100% - 30px);
  }
  .simple-multi-select__values {
    background: #fff;
    border-color: #000;
    border-style: solid;
    border-width: 0 1px 1px;
    left: 0;
    position: absolute;
    top: 40px;
    width: 100%;
    z-index: 300;
  }
  .simple-multi-select__option {
    text-transform: uppercase;
    border-color: #000;
    font-size: 11px;
    min-height: 40px;
  }
  .simple-multi-select__option:hover {
    background: #000;
    border-color: #fff;
    color: #fff;
  }
  .simple-multi-select__option:focus {
    background: #fff;
    border-color: #000;
    color: #fff;
  }
  .simple-multi-select__option-label {
    display: block;
    font-size: 11px;
    height: auto;
    line-height: 20px;
    overflow: hidden;
    padding: 10px 15px 10px 40px;
    position: relative;
    width: 100%;
  }
  .simple-multi-select__option-input:checked + .simple-multi-select__option-label::before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-family: 'viktor-rolf-icons';
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    speak: none;
    text-transform: none;
    font-size: 24px;
    vertical-align: middle;
    content: "";
    font-size: 8px;
    left: 16px;
    margin-right: 6px;
    position: absolute;
    top: 15px;
    z-index: 2;
  }
  .simple-multi-select__option-label::after {
    content: '';
    border: 1px solid currentColor;
    height: 13px;
    position: absolute;
    left: 15px;
    top: 12px;
    width: 13px;
    z-index: 1;
  }
}

/* Select dropdown list */
.simple-single-select {
  /* When the menu is open */
  /* The selectable values of the dropdown list. */
  /* An option in the list */
}

.simple-single-select--open.simple-single-select .simple-single-select__display::before {
  content: "";
}

.simple-single-select--open.simple-single-select .simple-single-select__values {
  display: block;
}

.simple-single-select__values {
  display: none;
}

.simple-single-select__option {
  display: inline-block;
  height: 19px;
}

@media (min-width: 530px) {
  .simple-single-select {
    display: inline-block;
    position: relative;
    width: 100%;
  }
  .simple-single-select__display {
    text-transform: uppercase;
    border: 1px solid #000;
    cursor: pointer;
    font-size: 11px;
    line-height: 13px;
    height: 40px;
    padding: 0;
    position: relative;
  }
  .simple-single-select__display::before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-family: 'viktor-rolf-icons';
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    speak: none;
    text-transform: none;
    font-size: 24px;
    vertical-align: middle;
    content: "";
    font-size: 15px;
    right: 10px;
    margin-right: 6px;
    padding-top: 7px;
    position: absolute;
    top: 4px;
    z-index: 2;
  }
  .simple-single-select__display-positioner {
    left: 0;
    overflow: hidden;
    padding-left: 15px;
    position: absolute;
    text-overflow: ellipsis;
    top: 50%;
    transform: translateY(-50%);
    width: calc(100% - 30px);
  }
  .simple-single-select__values {
    background: #fff;
    border-color: #000;
    border-style: solid;
    border-width: 0 1px 1px;
    left: 0;
    position: absolute;
    top: 40px;
    width: 100%;
    z-index: 300;
  }
  .simple-single-select__option {
    text-transform: uppercase;
    border-color: #000;
    cursor: pointer;
    display: block;
    font-size: 11px;
    height: auto;
    line-height: 20px;
    min-height: 40px;
    overflow: hidden;
    padding: 10px 15px;
    position: relative;
    width: 100%;
  }
  .simple-single-select__option:hover {
    background: #000;
    border-color: #fff;
    color: #fff;
  }
}

.c-styleguide-title {
  background: rgba(0, 0, 0, 0.85);
  color: #fff;
  float: right;
  font-size: 12px;
  padding: .25em 1em 0;
  pointer-events: none;
  position: relative;
  text-transform: uppercase;
  transform: rotate(-90deg);
  transform-origin: 100% 100%;
  z-index: 9999;
}

.c-styleguide-title + * {
  clear: both;
}

/*# sourceMappingURL=main.css.map */
