/*!
Theme Name: Lumir theme
Theme URI:
Description: A custom theme for the Lumir Lab website
Author: John Smith
Author URI: http://john.smith	
Version: 1.0
Tags: white, minimalistic
*/
/* reset */
/* reset */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

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

a {
  text-decoration: none;
  color: inherit; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

html {
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

body {
  font-weight: 400;
  line-height: 1;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.overflow {
  overflow: hidden; }

.container {
  position: relative;
  min-height: 100vh;
  z-index: 10; }

.section {
  position: relative; }
  .section.full {
    height: 100vh; }

.c-green {
  color: #00ff80; }

.c-grey {
  color: #bcbec0; }

.c-white {
  color: white; }

.b-black {
  background: black; }

.b-green {
  background: #00ff80; }

.p-s-120 {
  padding: 0 120px; }

.bg {
  -webkit-background-size: cover !important;
  -moz-background-size: cover !important;
  -o-background-size: cover !important;
  background-size: cover !important;
  background-position: center center !important; }

.video-wrapper {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  overflow: hidden; }

.bold-24 {
  font-family: "NHaasGroteskDSPro-65Md";
  font-size: 2.4em; }

.video {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto; }

.video-2 {
  position: absolute;
  top: -25%;
  left: 0;
  min-width: 100%;
  min-height: 150%;
  width: auto;
  height: auto; }

.overlay {
  background: rgba(0, 0, 0, 0.5);
  -webkit-transition: all 0.4s ease-out;
  transition: all 0.4s ease-out;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }

.overlay.darkk {
  background: rgba(0, 0, 0, 0.65); }

.overlay.light {
  background: rgba(0, 0, 0, 0.25); }

.placeholder {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: black; }

.center-wrapper-wrapper {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }

.center-wrapper {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  display: table; }

.center-wrapper .center {
  display: table-cell;
  vertical-align: middle; }

.ta-c {
  text-align: center; }

.clear {
  clear: both; }

.c-white {
  color: white; }

.no-m-t {
  margin-top: 0 !important; }

.m-t-5 {
  margin-top: 5px; }

.m-t-10 {
  margin-top: 10px; }

.m-t-15 {
  margin-top: 15px; }

.m-t-20 {
  margin-top: 20px; }

.m-t-30 {
  margin-top: 30px; }

.m-t-60 {
  margin-top: 60px; }

.m-t-120 {
  margin-top: 120px; }

.m-t--120 {
  margin-top: -120px; }

.b-transparent {
  background: transparent; }

.rel {
  position: relative; }

.image {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }

::-webkit-input-placeholder {
  color: black !important;
  font-family: "NHaasGroteskTXPro-55Rg"; }

::-moz-placeholder {
  color: black !important;
  font-family: "NHaasGroteskTXPro-55Rg"; }

:-ms-input-placeholder {
  color: black !important;
  font-family: "NHaasGroteskTXPro-55Rg"; }

:-moz-placeholder {
  color: black !important;
  font-family: "NHaasGroteskTXPro-55Rg"; }

.bp::-webkit-input-placeholder {
  color: black !important;
  font-family: "NHaasGroteskTXPro-55Rg";
  font-weight: 500; }

.bp::-moz-placeholder {
  color: black !important;
  font-family: "NHaasGroteskTXPro-55Rg";
  font-weight: 500; }

.bp:-ms-input-placeholder {
  color: black !important;
  font-family: "NHaasGroteskTXPro-55Rg";
  font-weight: 500; }

.bp:-moz-placeholder {
  color: black !important;
  font-family: "NHaasGroteskTXPro-55Rg";
  font-weight: 500; }

.c-red {
  color: #ff0000; }

.absolute-full {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }

input {
  border: 0;
  border-bottom: 2px solid black;
  background: transparent;
  outline: none;
  font-size: 14px;
  width: 100%;
  height: 40px; }
  input[type="submit"] {
    background: transparent;
    border: 2px solid black;
    color: black;
    width: 60px;
    height: 24px;
    cursor: pointer;
    line-height: 16px;
    margin-top: 10px; }

.form-row {
  position: relative; }

textarea {
  border: 0;
  border-bottom: 2px solid black;
  background: transparent;
  outline: none;
  font-size: 14px;
  width: 100%;
  height: 80px;
  resize: none; }

[type='range'] {
  border-bottom: 0;
  -webkit-appearance: none;
  margin: 7px 0;
  width: 100%; }
  [type='range']:focus {
    outline: 0; }
    [type='range']:focus::-webkit-slider-runnable-track {
      background: #0d0d0d; }
    [type='range']:focus::-ms-fill-lower {
      background: #000000; }
    [type='range']:focus::-ms-fill-upper {
      background: #0d0d0d; }
  [type='range']::-webkit-slider-runnable-track {
    cursor: pointer;
    height: 2px;
    transition: all .2s ease;
    width: 100%;
    box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.2), 0 0 0px rgba(13, 13, 13, 0.2);
    background: #000000;
    border: 0px solid #cfd8dc;
    border-radius: 0px; }
  [type='range']::-webkit-slider-thumb {
    box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.2), 0 0 0px rgba(13, 13, 13, 0.2);
    background: #EB008B;
    border: 2px solid #000000;
    border-radius: 50%;
    cursor: pointer;
    height: 14px;
    width: 14px;
    -webkit-appearance: none;
    margin-top: -6px; }
  [type='range']::-moz-range-track {
    cursor: pointer;
    height: 2px;
    transition: all .2s ease;
    width: 100%;
    box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.2), 0 0 0px rgba(13, 13, 13, 0.2);
    background: #000000;
    border: 0px solid #cfd8dc;
    border-radius: 0px; }
  [type='range']::-moz-range-thumb {
    box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.2), 0 0 0px rgba(13, 13, 13, 0.2);
    background: #EB008B;
    border: 2px solid #000000;
    border-radius: 50%;
    cursor: pointer;
    height: 14px;
    width: 14px; }
  [type='range']::-ms-track {
    cursor: pointer;
    height: 2px;
    transition: all .2s ease;
    width: 100%;
    background: transparent;
    border-color: transparent;
    border-width: 7px 0;
    color: transparent; }
  [type='range']::-ms-fill-lower {
    box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.2), 0 0 0px rgba(13, 13, 13, 0.2);
    background: black;
    border: 0px solid #cfd8dc;
    border-radius: 0px; }
  [type='range']::-ms-fill-upper {
    box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.2), 0 0 0px rgba(13, 13, 13, 0.2);
    background: #000000;
    border: 0px solid #cfd8dc;
    border-radius: 0px; }
  [type='range']::-ms-thumb {
    box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.2), 0 0 0px rgba(13, 13, 13, 0.2);
    background: #EB008B;
    border: 2px solid #000000;
    border-radius: 50%;
    cursor: pointer;
    height: 14px;
    width: 14px;
    margin-top: 0; }

/*******************/
html {
  font-size: 9px; }

body {
  font-family: "NHaasGroteskTXPro-55Rg";
  font-size: 9px;
  color: black;
  background: white;
  font-weight: normal !important;
  font-style: normal !important; }

h1 {
  font-size: 6.4rem;
  line-height: 8rem; }
  h1.super-size {
    font-size: 9.6rem;
    line-height: 12rem; }

h2 {
  font-size: 2.4rem;
  line-height: 3.2rem; }
  h2.big {
    font-size: 6.4rem;
    line-height: 1; }

h3 {
  font-size: 2.4rem;
  line-height: 1.35; }

h4 {
  font-size: 2.4rem;
  line-height: 3.2rem; }

p {
  font-size: 1.6rem;
  line-height: 2.2rem; }
  p.small {
    font-size: 1.2rem;
    line-height: 1.65rem; }

strong {
  font-family: "NHaasGroteskDSPro-65Md"; }

.hover-pink {
  -webkit-transition: all 0.26s ease-out;
  transition: all 0.26s ease-out; }
  .hover-pink:hover {
    color: #EB008B; }

.wysiwyg p, .wysiwyg h6, .wysiwyg h5, .wysiwyg h4, .wysiwyg h3, .wysiwyg h2, .wysiwyg h1 {
  margin-top: 30px; }
.wysiwyg h2 {
  font-size: 6.4rem;
  line-height: 8rem; }
.wysiwyg hr {
  border: 0;
  border-top: 1px solid black;
  margin-top: 120px;
  margin-left: 0;
  padding-top: 30px;
  width: 120px; }
.wysiwyg img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin-bottom: 60px; }
.wysiwyg .easy-footnote {
  margin-left: 3px;
  margin-right: 3px;
  font-size: 1.2rem;
  transform: translateY(-4px);
  -webkit-transform: translateY(-4px);
  display: inline-block;
  -webkit-transition: all 0.26s ease-out;
  transition: all 0.26s ease-out; }
  .wysiwyg .easy-footnote:hover {
    color: #EB008B; }
  .wysiwyg .easy-footnote:before {
    content: '('; }
  .wysiwyg .easy-footnote:after {
    content: ')'; }
.wysiwyg .goto-footnote {
  margin-left: 3px;
  margin-right: 3px;
  font-size: 1.2rem;
  transform: translateY(-4px);
  -webkit-transform: translateY(-4px);
  display: inline-block;
  cursor: pointer;
  -webkit-transition: all 0.26s ease-out;
  transition: all 0.26s ease-out; }
  .wysiwyg .goto-footnote:hover {
    color: #EB008B; }
  .wysiwyg .goto-footnote.c-pink {
    color: #EB008B; }

.popup-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: white;
  z-index: 999999;
  overflow: auto;
  display: none;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all 0.26s ease-out;
  transition: all 0.26s ease-out; }
  .popup-wrapper.show {
    visibility: visible;
    opacity: 1; }
  .popup-wrapper.show {
    visibility: visible;
    opacity: 1; }
  .popup-wrapper .close {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0; }
  .popup-wrapper .inner-wrapper {
    position: relative;
    padding: 120px; }
    .popup-wrapper .inner-wrapper .inner-content {
      position: relative;
      max-width: 1200px;
      margin: auto; }
      .popup-wrapper .inner-wrapper .inner-content h3 {
        font-size: 6.4rem; }
      .popup-wrapper .inner-wrapper .inner-content .keywords {
        position: relative;
        font-size: 6.4rem;
        line-height: 1.4; }
        .popup-wrapper .inner-wrapper .inner-content .keywords .keyword {
          cursor: pointer;
          border-bottom: 1px solid black;
          -webkit-transition: all 0.26s ease-out;
          transition: all 0.26s ease-out; }
          .popup-wrapper .inner-wrapper .inner-content .keywords .keyword:hover {
            color: #EB008B;
            border-color: #EB008B; }
          .popup-wrapper .inner-wrapper .inner-content .keywords .keyword.active {
            color: #EB008B;
            border-color: #EB008B; }
      .popup-wrapper .inner-wrapper .inner-content .x-button {
        position: absolute;
        top: 0;
        right: 0;
        width: 60px;
        height: 60px;
        border: 2px solid black;
        -webkit-transition: all 0.26s ease-out;
        transition: all 0.26s ease-out;
        cursor: pointer;
        z-index: 100; }
        .popup-wrapper .inner-wrapper .inner-content .x-button:hover {
          border-color: #EB008B; }
          .popup-wrapper .inner-wrapper .inner-content .x-button:hover .line {
            background: #EB008B; }
        .popup-wrapper .inner-wrapper .inner-content .x-button .line {
          position: absolute;
          width: 30px;
          height: 2px;
          left: 50%;
          margin-left: -15px;
          top: 50%;
          margin-top: -1px;
          background: black;
          -webkit-transition: all 0.26s ease-out;
          transition: all 0.26s ease-out; }
          .popup-wrapper .inner-wrapper .inner-content .x-button .line.one {
            transform: rotate(45deg);
            -webkit-transform: rotate(45deg); }
          .popup-wrapper .inner-wrapper .inner-content .x-button .line.two {
            transform: rotate(-45deg);
            -webkit-transform: rotate(-45deg); }
  .popup-wrapper .large-image {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-position: center center !important;
    background-size: contain !important;
    background-repeat: no-repeat !important; }
  .popup-wrapper #popup-large-image {
    display: block;
    width: 75%;
    margin: auto;
    border: 1px solid black; }

.x-button-small {
  position: absolute;
  top: 30px;
  right: 30px;
  width: 30px;
  height: 30px;
  background: white;
  border: 2px solid black;
  -webkit-transition: all 0.26s ease-out;
  transition: all 0.26s ease-out;
  cursor: pointer;
  z-index: 100; }
  .x-button-small:hover {
    border-color: #EB008B; }
    .x-button-small:hover .line {
      background: #EB008B; }
  .x-button-small .line {
    position: absolute;
    width: 18px;
    height: 2px;
    left: 50%;
    margin-left: -9px;
    top: 50%;
    margin-top: -1px;
    background: black;
    -webkit-transition: all 0.26s ease-out;
    transition: all 0.26s ease-out; }
    .x-button-small .line.one {
      transform: rotate(45deg);
      -webkit-transform: rotate(45deg); }
    .x-button-small .line.two {
      transform: rotate(-45deg);
      -webkit-transform: rotate(-45deg); }

.fixed-border {
  position: fixed;
  z-index: 9999;
  background: black;
  -webkit-transition: all 1.2s ease-out;
  transition: all 1.2s ease-out; }
  .fixed-border.top {
    height: 2px;
    width: 100%;
    left: 0;
    top: 0;
    transform: scaleX(0);
    -webkit-transform: scaleX(0);
    transform-origin: center left; }
    .fixed-border.top.show {
      transform: scaleX(1);
      -webkit-transform: scaleX(1); }
  .fixed-border.bottom {
    height: 2px;
    width: 100%;
    left: 0;
    bottom: 0;
    transform: scaleX(0);
    -webkit-transform: scaleX(0);
    transform-origin: center left; }
    .fixed-border.bottom.show {
      transform: scaleX(1);
      -webkit-transform: scaleX(1); }
  .fixed-border.left {
    width: 2px;
    height: 100%;
    left: 0;
    top: 0;
    transform: scaleY(0);
    -webkit-transform: scaleY(0);
    transform-origin: top center; }
    .fixed-border.left.show {
      transform: scaleY(1);
      -webkit-transform: scaleY(1); }
  .fixed-border.right {
    width: 2px;
    height: 100%;
    right: 0;
    top: 0;
    transform: scaleY(0);
    -webkit-transform: scaleY(0);
    transform-origin: top center; }
    .fixed-border.right.show {
      transform: scaleY(1);
      -webkit-transform: scaleY(1); }

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 300px;
  height: 100vh;
  z-index: 99999; }
  header .logo {
    position: absolute;
    left: 60px;
    top: 60px;
    width: 180px;
    height: 60px; }
  header .items {
    position: absolute;
    top: 180px;
    left: 60px;
    font-size: 1.6rem; }
    header .items .item {
      position: relative;
      margin-bottom: 15px; }
      header .items .item.with-children {
        margin-bottom: 45px; }
      header .items .item .children {
        position: relative;
        margin-top: 15px;
        padding-left: 30px; }
        header .items .item .children .child {
          margin-top: 15px; }
  header a {
    position: relative;
    display: inline-block;
    height: 18px; }
    header a.active .line {
      transform: scaleX(1);
      -webkit-transform: scaleX(1);
      background: #EB008B; }
    header a.active:hover .line {
      transform: scaleX(1);
      -webkit-transform: scaleX(1);
      background: #EB008B; }
    header a:hover .line {
      transform: scaleX(1);
      -webkit-transform: scaleX(1); }
    header a .line {
      position: absolute;
      left: 0;
      bottom: 0;
      height: 1px;
      width: 100%;
      background: black;
      -webkit-transition: all 0.4s ease-out;
      transition: all 0.4s ease-out;
      transform: scaleX(0);
      -webkit-transform: scaleX(0);
      transform-origin: center left; }
  header .quality-check {
    position: absolute;
    bottom: 120px;
    left: 60px; }
    header .quality-check img {
      width: 120px;
      height: 120px;
      display: block; }
  header .trademark {
    position: absolute;
    bottom: 60px;
    left: 60px;
    font-size: 1.2rem;
    font-family: "NHaasGroteskDSPro-65Md"; }
  header .right-line {
    position: absolute;
    top: 0;
    left: 100%;
    width: 2px;
    background: black;
    height: 100%;
    -webkit-transition: all 1.2s ease-out;
    transition: all 1.2s ease-out;
    transform: scaleY(0);
    -webkit-transform: scaleY(0);
    transform-origin: top center; }
    header .right-line.show {
      transform: scaleY(1);
      -webkit-transform: scaleY(1); }

.container {
  padding: 2px 2px 2px 300px; }
  .container .content-wrapper {
    padding: 60px 120px 0;
    max-width: 1140px; }
    .container .content-wrapper.on-front .content-module .image-wrapper {
      border-top: 1px solid #EB008B;
      margin-top: 120px;
      padding-top: 120px; }
    .container .content-wrapper.on-front .content-module .wysiwyg {
      border-top: 1px solid #EB008B;
      margin-top: 120px;
      padding-top: 90px; }
    .container .content-wrapper.on-front .content-module .video-outer-wrapper {
      border-top: 1px solid #EB008B;
      margin-top: 120px;
      padding-top: 60px; }
      .container .content-wrapper.on-front .content-module .video-outer-wrapper.fixed {
        margin-top: 0;
        padding-top: 0; }

.breadcrumbs {
  font-size: 1.2rem; }
  .breadcrumbs a {
    -webkit-transition: all 0.26s ease-out;
    transition: all 0.26s ease-out; }
    .breadcrumbs a:hover {
      color: #EB008B; }

.top-divider {
  position: relative;
  height: 1px;
  background: #EB008B;
  margin-top: 60px; }

.reg-divider {
  position: relative;
  height: 1px;
  background: #EB008B;
  margin-top: 60px; }

.page-header {
  position: relative;
  margin-top: 60px; }
  .page-header.of-front {
    border-top: 1px solid #EB008B;
    padding-top: 120px;
    margin-top: 0; }
  .page-header h2 {
    margin-top: 60px; }

.l-link {
  cursor: pointer;
  border-bottom: 1px solid black;
  display: inline-block;
  -webkit-transition: all 0.26s ease-out;
  transition: all 0.26s ease-out; }
  .l-link:hover {
    color: #EB008B;
    border-color: #EB008B; }

.content-module {
  position: relative; }
  .content-module .two-cols {
    position: relative;
    padding-bottom: 60px; }
    .content-module .two-cols .left-col {
      width: 360px;
      float: left; }
    .content-module .two-cols .right-col {
      width: 420px;
      float: right; }
    .content-module .two-cols .vertical-line {
      position: absolute;
      left: 420px;
      top: 60px;
      width: 1px;
      height: calc( 100% - 60px );
      background: black; }
    .content-module .two-cols .share-wrapper {
      position: relative;
      margin-top: 120px;
      width: 120px;
      padding-top: 40px;
      border-top: 1px solid black;
      cursor: pointer; }
      .content-module .two-cols .share-wrapper .open-share-icons {
        position: relative;
        cursor: pointer; }
        .content-module .two-cols .share-wrapper .open-share-icons:hover p {
          color: #EB008B;
          border-color: #EB008B; }
        .content-module .two-cols .share-wrapper .open-share-icons:hover svg g {
          fill: #EB008B; }
          .content-module .two-cols .share-wrapper .open-share-icons:hover svg g .st301 {
            stroke: #EB008B; }
          .content-module .two-cols .share-wrapper .open-share-icons:hover svg g .st302 {
            stroke: #EB008B; }
        .content-module .two-cols .share-wrapper .open-share-icons svg {
          width: 16px;
          height: 16px;
          margin-right: 10px;
          margin-top: 3px;
          float: left; }
          .content-module .two-cols .share-wrapper .open-share-icons svg g {
            -webkit-transition: all 0.26s ease-out;
            transition: all 0.26s ease-out; }
            .content-module .two-cols .share-wrapper .open-share-icons svg g .st301 {
              -webkit-transition: all 0.26s ease-out;
              transition: all 0.26s ease-out; }
            .content-module .two-cols .share-wrapper .open-share-icons svg g .st302 {
              -webkit-transition: all 0.26s ease-out;
              transition: all 0.26s ease-out; }
        .content-module .two-cols .share-wrapper .open-share-icons p {
          display: inline-block;
          border-bottom: 1px solid black;
          line-height: 2rem;
          -webkit-transition: all 0.26s ease-out;
          transition: all 0.26s ease-out; }
      .content-module .two-cols .share-wrapper .icons {
        position: absolute;
        right: -50px;
        bottom: 0;
        visibility: hidden;
        opacity: 0; }
        .content-module .two-cols .share-wrapper .icons.show {
          visibility: visible;
          opacity: 1; }
        .content-module .two-cols .share-wrapper .icons.show {
          visibility: visible;
          opacity: 1; }
        .content-module .two-cols .share-wrapper .icons svg {
          width: 16px;
          height: 16px;
          margin-right: 6px;
          margin-top: 0; }
          .content-module .two-cols .share-wrapper .icons svg:hover g {
            fill: #EB008B; }
          .content-module .two-cols .share-wrapper .icons svg.fb {
            margin-right: 5px; }
          .content-module .two-cols .share-wrapper .icons svg.env:hover g {
            fill: black; }
          .content-module .two-cols .share-wrapper .icons svg.env:hover path {
            fill: #EB008B; }
          .content-module .two-cols .share-wrapper .icons svg g {
            -webkit-transition: all 0.26s ease-out;
            transition: all 0.26s ease-out; }
          .content-module .two-cols .share-wrapper .icons svg path {
            -webkit-transition: all 0.26s ease-out;
            transition: all 0.26s ease-out; }
    .content-module .two-cols .abstract-headline {
      padding-top: 30px;
      border-top: 1px solid black;
      width: 120px;
      margin-top: 60px; }
    .content-module .two-cols .keywords-headline {
      padding-top: 30px;
      border-top: 1px solid black;
      width: 120px;
      margin-top: 120px; }
    .content-module .two-cols .keywords {
      position: relative;
      margin-top: 60px;
      font-size: 1.6rem;
      line-height: 2.2rem; }
    .content-module .two-cols .references-headline {
      padding-top: 30px;
      border-top: 1px solid black;
      width: 120px;
      margin-top: 120px; }
    .content-module .two-cols .references {
      position: relative;
      margin-top: 30px;
      font-size: 1.2rem;
      line-height: 1.65rem; }
      .content-module .two-cols .references .easy-footnotes-wrapper {
        position: relative;
        list-style-type: none;
        counter-reset: lumir-counter; }
        .content-module .two-cols .references .easy-footnotes-wrapper li {
          position: relative;
          padding-left: 30px;
          counter-increment: lumir-counter;
          -webkit-transition: all 0.26s ease-out;
          transition: all 0.26s ease-out; }
          .content-module .two-cols .references .easy-footnotes-wrapper li:hover {
            color: #EB008B; }
          .content-module .two-cols .references .easy-footnotes-wrapper li:before {
            content: counter(lumir-counter);
            position: absolute;
            left: 0;
            top: 20px;
            font-size: 1.6rem; }
          .content-module .two-cols .references .easy-footnotes-wrapper li.c-pink {
            color: #EB008B; }
          .content-module .two-cols .references .easy-footnotes-wrapper li .easy-footnote-to-top {
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            margin: 0;
            color: transparent; }
          .content-module .two-cols .references .easy-footnotes-wrapper li .easy-footnote-margin-adjust {
            padding-top: 30px;
            display: inline-block; }
      .content-module .two-cols .references .references-list {
        position: relative;
        list-style-type: none;
        counter-reset: lumir-counter; }
        .content-module .two-cols .references .references-list li {
          position: relative;
          padding-left: 30px;
          margin-bottom: 10px;
          counter-increment: lumir-counter;
          cursor: pointer; }
          .content-module .two-cols .references .references-list li:before {
            content: counter(lumir-counter);
            position: absolute;
            left: 0;
            top: 0;
            font-size: 1.6rem; }
          .content-module .two-cols .references .references-list li.c-pink {
            color: #EB008B; }
            .content-module .two-cols .references .references-list li.c-pink a svg g {
              fill: #EB008B; }
              .content-module .two-cols .references .references-list li.c-pink a svg g .st301 {
                stroke: #EB008B; }
              .content-module .two-cols .references .references-list li.c-pink a svg g .st302 {
                stroke: #EB008B; }
          .content-module .two-cols .references .references-list li .goto {
            -webkit-transition: all 0.26s ease-out;
            transition: all 0.26s ease-out; }
            .content-module .two-cols .references .references-list li .goto:hover {
              color: #EB008B; }
          .content-module .two-cols .references .references-list li a {
            display: block;
            text-decoration: underline;
            position: relative;
            -webkit-transition: all 0.26s ease-out;
            transition: all 0.26s ease-out; }
            .content-module .two-cols .references .references-list li a:hover {
              color: #EB008B; }
              .content-module .two-cols .references .references-list li a:hover svg g {
                fill: #EB008B; }
                .content-module .two-cols .references .references-list li a:hover svg g .st301 {
                  stroke: #EB008B; }
                .content-module .two-cols .references .references-list li a:hover svg g .st302 {
                  stroke: #EB008B; }
            .content-module .two-cols .references .references-list li a svg {
              width: 10px;
              height: 10px;
              margin-right: 6px;
              margin-top: 3px;
              float: left; }
              .content-module .two-cols .references .references-list li a svg g {
                -webkit-transition: all 0.26s ease-out;
                transition: all 0.26s ease-out; }
                .content-module .two-cols .references .references-list li a svg g .st301 {
                  -webkit-transition: all 0.26s ease-out;
                  transition: all 0.26s ease-out; }
                .content-module .two-cols .references .references-list li a svg g .st302 {
                  -webkit-transition: all 0.26s ease-out;
                  transition: all 0.26s ease-out; }
    .content-module .two-cols .publication-meta {
      position: relative; }
      .content-module .two-cols .publication-meta .row {
        position: relative;
        margin-top: 15px; }
        .content-module .two-cols .publication-meta .row .left-side {
          position: relative;
          float: left;
          width: 120px;
          font-size: 1.2rem;
          line-height: 1.4rem;
          font-family: "NHaasGroteskDSPro-65Md"; }
        .content-module .two-cols .publication-meta .row .right-side {
          position: relative;
          float: right;
          width: 270px;
          font-size: 1.2rem;
          line-height: 1.4rem; }
  .content-module .image-wrapper {
    position: relative; }
    .content-module .image-wrapper.with-caption {
      padding-right: 120px; }
    .content-module .image-wrapper img {
      display: block;
      width: 100%; }
    .content-module .image-wrapper .caption {
      position: absolute;
      top: 0;
      right: 0;
      width: 90px; }
  .content-module .video-outer-wrapper {
    position: relative; }
    .content-module .video-outer-wrapper.fixed {
      position: fixed;
      width: 100%;
      height: 100%;
      left: 0;
      top: 0;
      background: white;
      z-index: 999999; }
      .content-module .video-outer-wrapper.fixed .x-button-small {
        display: block; }
      .content-module .video-outer-wrapper.fixed .video-wrapper {
        padding: 0 !important;
        position: absolute;
        width: 70vw;
        height: 39.375vw;
        left: 50%;
        margin-left: -35vw;
        top: 50%;
        margin-top: -19.6875vw; }
      .content-module .video-outer-wrapper.fixed .minimize-video {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        cursor: pointer; }
    .content-module .video-outer-wrapper .x-button-small {
      display: none; }
  .content-module .video-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    border: 1px solid black; }
    .content-module .video-wrapper iframe {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0; }
    .content-module .video-wrapper .enlarge-video {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      cursor: pointer; }
    .content-module .video-wrapper .play-video {
      position: absolute;
      left: 30px;
      bottom: 30px;
      width: 60px;
      height: 60px;
      border-radius: 50%;
      border: 1px solid black;
      background: white;
      cursor: pointer;
      -webkit-transition: all 0.26s ease-out;
      transition: all 0.26s ease-out; }
      .content-module .video-wrapper .play-video:hover {
        background: #EB008B;
        color: white; }
      .content-module .video-wrapper .play-video .fa {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        text-align: center;
        line-height: 60px;
        font-size: 21px;
        padding-left: 5px; }
    .content-module .video-wrapper .panel {
      position: absolute;
      bottom: 30px;
      left: 30px;
      width: calc( 100% - 60px );
      height: 30px;
      display: none; }
      .content-module .video-wrapper .panel .play-pause {
        position: absolute;
        left: 0;
        top: 0;
        width: 30px;
        height: 30px;
        border-radius: 50%;
        background: white;
        border: 2px solid black;
        cursor: pointer;
        -webkit-transition: all 0.26s ease-out;
        transition: all 0.26s ease-out; }
        .content-module .video-wrapper .panel .play-pause:hover {
          background: #EB008B;
          color: white; }
        .content-module .video-wrapper .panel .play-pause .fa {
          position: absolute;
          width: 100%;
          height: 100%;
          top: 0;
          left: 0;
          text-align: center;
          line-height: 26px !important;
          font-size: 13px !important; }
          .content-module .video-wrapper .panel .play-pause .fa.hide {
            display: none; }
          .content-module .video-wrapper .panel .play-pause .fa.fa-play {
            padding-left: 3px; }
      .content-module .video-wrapper .panel .sound {
        position: absolute;
        top: 0;
        right: 70px;
        width: 30px;
        height: 30px;
        background: white;
        border: 2px solid black;
        cursor: pointer;
        -webkit-transition: all 0.26s ease-out;
        transition: all 0.26s ease-out; }
        .content-module .video-wrapper .panel .sound:hover {
          background: #EB008B;
          color: white; }
        .content-module .video-wrapper .panel .sound .fa {
          position: absolute;
          width: 100%;
          height: 100%;
          top: 0;
          left: 0;
          text-align: center;
          line-height: 24px !important;
          font-size: 28px !important; }
        .content-module .video-wrapper .panel .sound .line {
          position: absolute;
          left: -20%;
          top: 50%;
          width: 140%;
          height: 2px;
          margin-top: -1px;
          background: black;
          transform: rotate(-45deg);
          -webkit-transform: rotate(-45deg); }
          .content-module .video-wrapper .panel .sound .line.hide {
            display: none; }
      .content-module .video-wrapper .panel .timer {
        position: absolute;
        right: 0;
        top: 0;
        height: 30px;
        width: 60px;
        border: 2px solid black;
        background: white;
        text-align: center;
        font-size: 1.6rem;
        font-family: "NHaasGroteskDSPro-65Md";
        line-height: 26px;
        vertical-align: middle; }
      .content-module .video-wrapper .panel .progress-wrapper {
        position: absolute;
        left: 60px;
        width: calc( 100% - 200px );
        height: 30px;
        top: -12px; }
  .content-module .file-wrapper {
    position: relative; }
    .content-module .file-wrapper.with-pad .desc {
      position: relative;
      float: right;
      width: calc( 100% - 150px ); }
    .content-module .file-wrapper img {
      position: relative;
      float: left;
      width: 120px;
      border: 1px solid black; }
    .content-module .file-wrapper .desc {
      position: relative; }
    .content-module .file-wrapper a {
      display: block; }
      .content-module .file-wrapper a:hover p {
        color: #EB008B;
        border-color: #EB008B; }
      .content-module .file-wrapper a:hover svg.plus path {
        fill: #EB008B; }
      .content-module .file-wrapper a:hover svg.plus g.lines {
        fill: #EB008B; }
      .content-module .file-wrapper a:hover svg.down path.square {
        fill: #EB008B; }
      .content-module .file-wrapper a:hover svg.down g.lines path {
        stroke: #EB008B; }
      .content-module .file-wrapper a:hover svg.down g.lines line {
        stroke: #EB008B; }
      .content-module .file-wrapper a p {
        display: inline-block;
        border-bottom: 1px solid black;
        line-height: 2rem;
        -webkit-transition: all 0.26s ease-out;
        transition: all 0.26s ease-out; }
      .content-module .file-wrapper a svg {
        width: 16px;
        height: 16px;
        float: left;
        margin-top: 3px;
        margin-right: 10px; }
        .content-module .file-wrapper a svg.plus path {
          -webkit-transition: all 0.26s ease-out;
          transition: all 0.26s ease-out; }
        .content-module .file-wrapper a svg.plus g.lines {
          -webkit-transition: all 0.26s ease-out;
          transition: all 0.26s ease-out; }
        .content-module .file-wrapper a svg.down path.square {
          -webkit-transition: all 0.26s ease-out;
          transition: all 0.26s ease-out; }
        .content-module .file-wrapper a svg.down g.lines path {
          -webkit-transition: all 0.26s ease-out;
          transition: all 0.26s ease-out; }
        .content-module .file-wrapper a svg.down g.lines line {
          -webkit-transition: all 0.26s ease-out;
          transition: all 0.26s ease-out; }

.icon-and-text {
  position: relative;
  margin-top: 60px;
  padding-left: 180px; }
  .icon-and-text .icon {
    position: absolute;
    top: 0;
    left: 0;
    width: 120px; }

.s-icon {
  width: 16px !important;
  height: 16px !important;
  float: left;
  margin-right: 10px;
  border: 0 !important; }
  .s-icon.m-t-3 {
    margin-top: 3px; }
  .s-icon.m-t-2 {
    margin-top: 2px; }
  .s-icon.small {
    width: 12px !important;
    height: 12px !important;
    margin-right: 6px !important; }

.enlarge-image-b {
  cursor: pointer; }

.enlarge-image {
  position: relative;
  margin-top: 15px;
  cursor: pointer; }
  .enlarge-image:hover svg path {
    fill: #EB008B; }
  .enlarge-image:hover svg g.lines {
    fill: #EB008B; }
  .enlarge-image:hover p {
    color: #EB008B;
    border-color: #EB008B; }
  .enlarge-image.go-pink svg path {
    fill: #EB008B; }
  .enlarge-image.go-pink svg g.lines {
    fill: #EB008B; }
  .enlarge-image.go-pink p {
    color: #EB008B;
    border-color: #EB008B; }
  .enlarge-image svg {
    width: 13px;
    height: 13px;
    margin-right: 6px; }
    .enlarge-image svg path {
      -webkit-transition: all 0.26s ease-out;
      transition: all 0.26s ease-out; }
    .enlarge-image svg g.lines {
      -webkit-transition: all 0.26s ease-out;
      transition: all 0.26s ease-out; }
  .enlarge-image p {
    display: inline-block;
    border-bottom: 1px solid black;
    -webkit-transition: all 0.26s ease-out;
    transition: all 0.26s ease-out;
    transform: translateY(-4px);
    -webkit-transform: translateY(-4px); }

.test-product-box {
  position: relative;
  margin-top: 60px;
  border: 1px solid black;
  padding: 60px; }
  .test-product-box form {
    position: relative;
    margin-top: 30px;
    width: 324px;
    height: 34px; }
    .test-product-box form input {
      width: 228px;
      height: 100%;
      border: 0;
      font-size: 2.4rem;
      font-family: 'arial';
      font-weight: bold;
      letter-spacing: 22px;
      padding-left: 8px;
      position: absolute;
      left: 0;
      top: 0; }
      .test-product-box form input.error {
        color: #EB008B; }
    .test-product-box form button {
      width: 117px;
      background: black;
      border: 0;
      outline: 0;
      color: white;
      font-family: "NHaasGroteskTXPro-55Rg";
      font-size: 1.6rem;
      padding: 0;
      margin: 0;
      height: 100%;
      position: absolute;
      top: 0;
      right: 0;
      cursor: pointer;
      -webkit-transition: all 0.26s ease-out;
      transition: all 0.26s ease-out;
      z-index: 10; }
      .test-product-box form button:hover {
        background: #EB008B;
        color: white; }
    .test-product-box form .bottom-line {
      position: absolute;
      left: 0;
      bottom: 0;
      width: 198px;
      height: 1px; }
      .test-product-box form .bottom-line .inner-wrapper {
        position: relative;
        height: 100%;
        width: calc( 100% + 4px );
        margin: 0 -2px; }
        .test-product-box form .bottom-line .inner-wrapper .part {
          position: relative;
          float: left;
          height: 100%;
          background: black;
          width: calc( (100% / 6) - 4px );
          margin: 0 2px; }
    .test-product-box form .error-message {
      position: absolute;
      top: calc( 100% + 10px );
      left: 0;
      color: #EB008B;
      display: none; }
    .test-product-box form .fa-spin {
      font-size: 1.5rem;
      position: absolute;
      left: calc( 100% + 20px );
      top: 10px;
      display: none; }

.product-review {
  position: relative;
  padding: 60px;
  border: 1px solid black;
  border-top: 0;
  display: none; }
  .product-review .left-col {
    position: relative;
    width: 240px;
    float: left; }
    .product-review .left-col .product-logo {
      position: relative;
      width: 100px; }
    .product-review .left-col .product-image {
      position: relative;
      margin-top: 30px; }
      .product-review .left-col .product-image img {
        display: block;
        width: 100%; }
  .product-review .right-col {
    position: relative;
    float: right;
    width: calc( 100% - 300px );
    margin-left: 60px; }
    .product-review .right-col .row {
      position: relative;
      font-size: 1.6rem;
      line-height: 1.375;
      margin-top: 20px;
      display: none; }
      .product-review .right-col .row.first {
        margin-top: 0; }
      .product-review .right-col .row.big-margin {
        margin-top: 60px; }
      .product-review .right-col .row .col-1 {
        position: relative;
        float: left;
        width: 120px;
        font-family: "NHaasGroteskDSPro-65Md"; }
      .product-review .right-col .row .col-2 {
        position: relative;
        float: right;
        width: calc( 100% - 180px ); }
        .product-review .right-col .row .col-2 a {
          -webkit-transition: all 0.26s ease-out;
          transition: all 0.26s ease-out; }
          .product-review .right-col .row .col-2 a:hover {
            color: #EB008B; }

.story-points {
  position: relative;
  margin-top: 90px; }
  .story-points .row {
    position: relative;
    margin-top: 60px; }
    .story-points .row .col-number {
      position: relative;
      float: left;
      width: 60px;
      color: #EB008B;
      font-size: 1.6rem;
      font-family: "NHaasGroteskDSPro-65Md";
      min-height: 240px; }
    .story-points .row .col-text {
      position: relative;
      float: left;
      margin-left: 30px;
      width: 330px; }
    .story-points .row .col-image {
      position: relative;
      float: right;
      width: 420px; }
      .story-points .row .col-image img {
        display: block;
        width: 100%; }
    .story-points .row .line {
      position: absolute;
      top: 0;
      left: 60px;
      width: 1px;
      height: 100%;
      background: black; }

.featured-publications {
  position: relative; }
  .featured-publications .publication {
    position: relative;
    margin-top: 60px; }
    .featured-publications .publication:hover .desc h2 {
      color: #EB008B; }
    .featured-publications .publication.with-image .desc {
      float: right;
      width: 540px; }
    .featured-publications .publication img {
      position: relative;
      display: block;
      width: 300px;
      float: left; }
    .featured-publications .publication .desc {
      position: relative; }
      .featured-publications .publication .desc h2 {
        -webkit-transition: all 0.26s ease-out;
        transition: all 0.26s ease-out; }

.small-x {
  position: relative;
  width: 16px;
  height: 16px;
  display: inline-block;
  border: 1px solid black;
  transform: translateY(4px);
  -webkit-transform: translateY(4px);
  margin-right: 3px;
  -webkit-transition: all 0.26s ease-out;
  transition: all 0.26s ease-out; }
  .small-x .line {
    position: absolute;
    width: 10px;
    height: 2px;
    left: 50%;
    margin-left: -5px;
    top: 50%;
    margin-top: -1px;
    -webkit-transition: all 0.26s ease-out;
    transition: all 0.26s ease-out;
    background: black; }
    .small-x .line.one {
      transform: rotate(45deg);
      -webkit-transform: rotate(45deg); }
    .small-x .line.two {
      transform: rotate(-45deg);
      -webkit-transform: rotate(-45deg); }

.chosen-keyword {
  margin-right: 30px;
  display: none; }
  .chosen-keyword.show {
    display: inline-block; }

.clear-keywords {
  position: relative;
  cursor: pointer;
  display: none; }
  .clear-keywords:hover .small-x {
    border-color: #EB008B; }
    .clear-keywords:hover .small-x .line {
      background: #EB008B; }
  .clear-keywords:hover .text {
    color: #EB008B;
    border-color: #EB008B; }
  .clear-keywords.show {
    display: inline-block; }
  .clear-keywords .text {
    display: inline-block;
    border-bottom: 1px solid black;
    -webkit-transition: all 0.26s ease-out;
    transition: all 0.26s ease-out; }

.all-publications {
  position: relative; }
  .all-publications .header-row {
    position: relative; }
    .all-publications .header-row .part {
      position: relative;
      float: left;
      font-size: 1.6rem;
      height: 60px;
      font-family: "NHaasGroteskDSPro-65Md";
      border-bottom: 1px solid #EB008B; }
      .all-publications .header-row .part.first {
        width: 420px;
        margin-right: 59px; }
      .all-publications .header-row .part.second {
        width: 180px;
        margin-right: 58px; }
      .all-publications .header-row .part.third {
        width: calc( 100% - 717px ); }
  .all-publications .row {
    position: relative;
    margin-top: 60px; }
    .all-publications .row:hover .part.first {
      color: #EB008B; }
    .all-publications .row .part {
      position: relative;
      float: left;
      font-size: 1.6rem;
      line-height: 2.2rem;
      min-height: 116px; }
      .all-publications .row .part.first {
        width: 420px;
        margin-right: 59px;
        padding-left: 120px;
        font-family: "NHaasGroteskDSPro-65Md";
        -webkit-transition: all 0.26s ease-out;
        transition: all 0.26s ease-out; }
        .all-publications .row .part.first .icon {
          position: absolute;
          top: 0;
          left: 0;
          width: 25px; }
      .all-publications .row .part.second {
        width: 180px;
        margin-right: 58px; }
      .all-publications .row .part.third {
        width: calc( 100% - 717px ); }

.all-awards {
  position: relative; }
  .all-awards .award {
    position: relative;
    margin-top: 60px; }
    .all-awards .award .part {
      position: relative;
      float: left;
      font-size: 1.6rem;
      line-height: 2.2rem;
      min-height: 120px; }
      .all-awards .award .part.first {
        width: 118px; }
        .all-awards .award .part.first .icon {
          position: absolute;
          top: 0;
          left: 0;
          width: 25px; }
      .all-awards .award .part.second {
        font-family: "NHaasGroteskDSPro-65Md";
        width: 240px;
        margin-right: 60px; }
      .all-awards .award .part.third {
        width: 420px; }

.all-affiliations {
  position: relative; }
  .all-affiliations .affiliation {
    position: relative;
    margin-top: 60px; }
    .all-affiliations .affiliation .part {
      position: relative;
      float: left;
      min-height: 120px; }
      .all-affiliations .affiliation .part.first {
        width: 180px;
        margin-right: 56px; }
        .all-affiliations .affiliation .part.first img {
          position: absolute;
          top: 0;
          left: 0;
          width: 140px; }
      .all-affiliations .affiliation .part.second {
        width: 660px; }

.all-press {
  position: relative; }
  .all-press .item {
    position: relative;
    margin-top: 120px; }
    .all-press .item .part {
      position: relative;
      float: left; }
      .all-press .item .part.first {
        width: 180px; }
        .all-press .item .part.first img {
          position: absolute;
          top: 0;
          left: 0;
          width: 140px; }
      .all-press .item .part.second {
        float: right;
        width: 660px; }

.all-news {
  position: relative; }
  .all-news.on-front {
    border-top: 1px solid #EB008B;
    padding-top: 60px; }
    .all-news.on-front .item {
      padding-bottom: 0;
      border-bottom: 0; }
  .all-news .item {
    position: relative;
    margin-top: 60px;
    padding-bottom: 120px;
    border-bottom: 1px solid #EB008B; }
    .all-news .item.last {
      border-bottom: 0;
      padding-bottom: 0; }
    .all-news .item .featured-image {
      float: left;
      width: 300px;
      height: auto;
      margin-right: 60px; }
    .all-news .item .desc {
      position: relative;
      width: 480px;
      float: left; }

.form-and-details {
  position: relative; }
  .form-and-details .form-wrapper {
    position: relative;
    float: left;
    width: calc( 100% - 420px ); }
    .form-and-details .form-wrapper form {
      position: relative;
      margin-top: 60px; }
      .form-and-details .form-wrapper form input {
        height: 60px;
        border-bottom: 1px solid black;
        font-size: 1.6rem; }
        .form-and-details .form-wrapper form input[type="submit"] {
          border: 0;
          background: black;
          color: white;
          height: 30px;
          text-transform: uppercase;
          font-family: "NHaasGroteskDSPro-65Md";
          -webkit-transition: all 0.26s ease-out;
          transition: all 0.26s ease-out;
          cursor: pointer; }
          .form-and-details .form-wrapper form input[type="submit"]:hover {
            background: #EB008B; }
      .form-and-details .form-wrapper form textarea {
        height: 120px;
        border-bottom: 1px solid black;
        margin-top: 20px;
        font-size: 1.6rem; }
      .form-and-details .form-wrapper form .ajax-loader {
        display: none !important; }
      .form-and-details .form-wrapper form .wpcf7-form-control-wrap {
        display: block; }
      .form-and-details .form-wrapper form span.wpcf7-not-valid-tip {
        height: 1px;
        overflow: hidden;
        background: #EB008B;
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        z-index: 999; }
      .form-and-details .form-wrapper form br {
        display: none !important; }
      .form-and-details .form-wrapper form div.wpcf7-response-output {
        display: none !important; }
      .form-and-details .form-wrapper form .fa-spin {
        position: absolute;
        left: 0;
        bottom: -30px; }
    .form-and-details .form-wrapper .thanks {
      display: none; }
  .form-and-details .details-wrapper {
    position: relative;
    float: right;
    width: 240px; }
    .form-and-details .details-wrapper .map-wrapper {
      position: relative;
      margin-top: 60px;
      padding-bottom: 75%;
      border: 1px solid black;
      overflow: hidden; }
      .form-and-details .details-wrapper .map-wrapper .map {
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0; }
  .form-and-details .vertical-line {
    position: absolute;
    right: 300px;
    top: 0;
    height: 100%;
    width: 1px;
    background: black; }

.previews-row {
  position: relative;
  margin-top: 120px;
  padding-top: 120px;
  border-top: 1px solid #EB008B; }
  .previews-row .left-side {
    position: relative;
    float: left;
    width: 360px;
    margin-right: 120px; }
  .previews-row .right-side {
    position: relative;
    float: left;
    width: 360px; }

.front-publications {
  position: relative;
  margin-top: 120px;
  padding-top: 120px;
  border-top: 1px solid #EB008B; }
  .front-publications .publication {
    position: relative;
    float: left;
    margin-top: 60px;
    padding-left: 60px;
    width: 360px;
    margin-right: 120px; }
    .front-publications .publication.even {
      margin-right: 0; }
    .front-publications .publication .icon {
      position: absolute;
      left: 0;
      top: 0;
      width: 25px; }

.contact-wrapper {
  position: relative;
  min-height: 100%;
  background: white;
  z-index: 10;
  display: none;
  border: 2px solid black; }
  .contact-wrapper .top-left {
    position: absolute;
    top: 90px;
    left: 120px;
    z-index: 20; }
    .contact-wrapper .top-left .logo {
      display: block;
      height: 18px;
      width: auto; }
  .contact-wrapper .content-wrapper {
    position: relative;
    margin-left: 120px;
    padding: 240px 0 150px; }
    .contact-wrapper .content-wrapper .the-text {
      width: 420px;
      position: relative;
      float: left; }
    .contact-wrapper .content-wrapper .form-wrapper {
      position: relative;
      float: left;
      width: 270px; }
      .contact-wrapper .content-wrapper .form-wrapper form {
        position: relative;
        width: 100%; }
        .contact-wrapper .content-wrapper .form-wrapper form br {
          display: none; }
        .contact-wrapper .content-wrapper .form-wrapper form .wpcf7-form-control-wrap {
          display: block;
          margin-bottom: 10px; }
        .contact-wrapper .content-wrapper .form-wrapper form .wpcf7-not-valid-tip {
          position: absolute;
          left: calc( 100% - 120px );
          bottom: 10px;
          width: 100%;
          font-size: 12px;
          color: #EB008B; }
        .contact-wrapper .content-wrapper .form-wrapper form .wpcf7-validation-errors {
          display: none !important; }
        .contact-wrapper .content-wrapper .form-wrapper form .ajax-loader {
          display: none !important; }
        .contact-wrapper .content-wrapper .form-wrapper form .wpcf7-mail-sent-ok {
          border: 0 !important;
          left: calc( 100% - 140px ) !important;
          bottom: 0 !important;
          position: absolute !important;
          padding: 0 !important;
          margin: 0 !important; }
        .contact-wrapper .content-wrapper .form-wrapper form .wpcf7-spinner {
          position: absolute;
          right: 0;
          bottom: 4px; }
    .contact-wrapper .content-wrapper p {
      margin-top: 20px; }
      .contact-wrapper .content-wrapper p:first-of-type {
        margin-top: 0 !important; }
  .contact-wrapper .x-icon {
    position: absolute;
    right: 120px;
    top: 90px;
    width: 30px;
    cursor: pointer;
    z-index: 99; }
  .contact-wrapper .rights {
    position: absolute;
    left: 120px;
    bottom: 60px; }

footer {
  position: relative;
  padding: 0 0 2px 300px;
  margin-top: 120px; }
  footer .inner-wrapper {
    max-width: 1140px;
    padding: 60px 120px;
    font-size: 1.2rem;
    position: relative;
    color: rgba(0, 0, 0, 0.5); }
    footer .inner-wrapper .top-line {
      position: absolute;
      left: 120px;
      width: calc( 100% - 240px );
      top: 0;
      height: 1px;
      background: #EB008B; }
    footer .inner-wrapper a {
      font-family: "NHaasGroteskDSPro-65Md";
      color: black;
      -webkit-transition: all 0.26s ease-out;
      transition: all 0.26s ease-out; }
      footer .inner-wrapper a:hover {
        color: #EB008B; }

/*********/
.s-on-mobile {
  display: none !important; }

.s-on-desktop {
  display: block !important; }

/*********/
.mobile-header {
  display: none; }

@media screen and (min-height: 0px) and (max-height: 900px) {
  header .items {
    top: 150px; }

  header .items .item.with-children {
    margin-bottom: 30px; }

  header .quality-check {
    bottom: 70px; }

  header .quality-check img {
    width: 120px;
    height: 120px; }

  header .trademark {
    bottom: 40px; }

  footer .inner-wrapper {
    padding: 60px 120px 40px; } }
@media screen and (min-height: 0px) and (max-height: 770px) {
  header .quality-check, header .trademark {
    display: none; } }
@media screen and (min-height: 0px) and (max-height: 600px) {
  header .items {
    top: 120px; } }
@media screen and (min-height: 0px) and (max-height: 550px) {
  header .items {
    top: 120px; }

  header .items .item.with-children {
    margin-bottom: 15px; }

  header .items .item .children {
    margin-top: 10px; }

  header .items .item .children .child {
    margin-top: 10px; } }
@media screen and (min-width: 0px) and (max-width: 1439px) {
  .content-module .two-cols .left-col {
    width: 100%;
    float: none; }
    .content-module .two-cols .left-col .share-wrapper {
      display: none;
      margin-top: 60px; }
      .content-module .two-cols .left-col .share-wrapper.show {
        display: block; }

  .content-module .two-cols .right-col {
    width: 100%;
    float: none; }

  .content-module .two-cols .vertical-line {
    display: none; }

  .featured-publications .publication img {
    width: 100%;
    float: none; }

  .featured-publications .publication.with-image .desc {
    float: none;
    width: 100%;
    margin-top: 30px; }

  .all-news .item .featured-image {
    float: none;
    width: 100%;
    margin-right: 0; }

  .all-news .item .desc {
    width: 100%;
    float: none;
    margin-top: 30px; }
    .all-news .item .desc .m-t-30 {
      margin-top: 15px; }
    .all-news .item .desc .l-link {
      font-size: 1.2rem;
      line-height: 1.65rem; }

  .previews-row {
    margin-top: 60px;
    padding-top: 60px; }

  .previews-row .left-side {
    float: none;
    width: 100%;
    margin-right: 0; }

  .previews-row .right-side {
    float: none;
    width: 100%;
    margin-top: 60px;
    padding-top: 60px;
    border-top: 1px solid #EB008B; }

  .front-publications .publication {
    float: none;
    width: 100%;
    margin-right: 0; }

  /* .story-points .row .col-number {
  	width: 30px;
  	position: absolute;
  	height: 100%;
  } */
  .story-points .row .col-image-text {
    width: calc( 100% - 60px );
    float: right; }

  .story-points .row .col-image {
    width: calc( 100% - 90px ); }

  .story-points .row .col-text {
    float: right;
    width: calc( 100% - 90px );
    margin-left: 0;
    margin-top: 30px;
    padding-bottom: 15px; }

  .all-publications .header-row {
    display: none; }

  .all-publications .row .part.first {
    width: 100%;
    margin-right: 0;
    padding-left: 55px;
    float: none;
    min-height: 0; }

  .all-publications .row .part.second {
    width: 100%;
    margin-right: 0;
    padding-left: 55px;
    float: none;
    min-height: 0;
    margin-top: 15px; }

  .all-publications .row .part.third {
    width: 100%;
    margin-right: 0;
    padding-left: 55px;
    float: none;
    min-height: 0;
    margin-top: 15px; }

  .all-awards .award .part.first {
    width: 60px; }

  .all-awards .award .part {
    min-height: 60px; }

  .all-affiliations .affiliation .part {
    min-height: 0; }

  .all-affiliations .affiliation .part.first img {
    position: relative;
    margin-bottom: 30px; }

  .all-affiliations .affiliation .part.second {
    width: 100%; }

  .all-press .item .part.first img {
    position: relative;
    margin-bottom: 30px; }

  .all-press .item .part.first {
    float: none; }

  .all-press .item .part.second {
    float: none;
    width: 100%; }

  .all-press .item {
    margin-top: 60px; }

  .form-and-details .form-wrapper {
    float: none;
    width: 100%; }

  .form-and-details .details-wrapper {
    float: none;
    width: 100%;
    margin-top: 60px;
    padding-top: 60px;
    border-top: 1px solid #EB008B; }

  .form-and-details .vertical-line {
    display: none; }

  .form-and-details .details-wrapper .map-wrapper {
    margin-top: 30px; }

  .product-review {
    padding: 30px; }

  .product-review .left-col {
    width: 100%;
    float: none; }

  .product-review .right-col {
    float: none;
    width: 100%;
    margin-left: 0;
    margin-top: 30px; }

  .product-review .right-col .row .col-1 {
    float: none;
    width: 100%; }

  .product-review .right-col .row .col-2 {
    float: none;
    width: 100%;
    margin-top: 10px; }

  .product-review .right-col .row {
    margin-top: 30px; }

  .product-review .right-col .row.big-margin {
    margin-top: 30px; }

  .s-on-mobile {
    display: block !important; }

  .s-on-desktop {
    display: none !important; } }
@media screen and (min-width: 0px) and (max-width: 860px) {
  h1 {
    font-size: 4.8rem;
    line-height: 6.2rem; }

  header {
    top: 90px;
    left: 2px;
    width: calc( 100% - 4px );
    height: calc( 100vh - 92px );
    background: white;
    overflow: auto;
    transform: translateY(-100%);
    -webkit-transform: translateY(-100%);
    -webkit-transition: all 0.4s ease-out;
    transition: all 0.4s ease-out;
    display: none; }
    header.show {
      transform: translateY(0);
      -webkit-transform: translateY(0); }
    header .logo-wrapper {
      display: none; }
    header .items {
      top: 0;
      left: 0;
      font-size: 2rem;
      position: relative;
      padding: 60px 30px; }
    header a {
      height: 22px; }

  .mobile-header {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    height: 90px;
    border: 2px solid black;
    background: white;
    width: 100%;
    z-index: 99999; }
    .mobile-header .logo {
      position: absolute;
      left: 30px;
      top: 50%;
      margin-top: -16px;
      height: 50px;
      width: 150px; }
    .mobile-header .menu-button-wrapper {
      position: absolute;
      top: 0;
      right: 0;
      width: 60px;
      height: 100%;
      cursor: pointer; }
      .mobile-header .menu-button-wrapper.rotate .menu-button .line.top {
        transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        top: 13px; }
      .mobile-header .menu-button-wrapper.rotate .menu-button .line.middle {
        visibility: hidden;
        opacity: 0; }
        .mobile-header .menu-button-wrapper.rotate .menu-button .line.middle.show {
          visibility: visible;
          opacity: 1; }
      .mobile-header .menu-button-wrapper.rotate .menu-button .line.bottom {
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
        top: 13px; }
      .mobile-header .menu-button-wrapper .menu-button {
        position: absolute;
        right: 30px;
        width: 30px;
        height: 28px;
        top: 50%;
        margin-top: -14px; }
        .mobile-header .menu-button-wrapper .menu-button .line {
          position: absolute;
          right: 0;
          width: 100%;
          height: 2px;
          background: black;
          -webkit-transition: all 0.26s ease-out;
          transition: all 0.26s ease-out; }
          .mobile-header .menu-button-wrapper .menu-button .line.top {
            top: 0; }
          .mobile-header .menu-button-wrapper .menu-button .line.middle {
            top: 13px; }
          .mobile-header .menu-button-wrapper .menu-button .line.bottom {
            top: 26px; }

  .container {
    padding: 90px 2px 2px; }
    .container .content-wrapper {
      padding: 30px; }

  .all-news .item .featured-image {
    float: none;
    width: 100%;
    margin-right: 0; }

  .all-news .item .desc {
    width: 100%;
    float: none;
    margin-top: 30px; }
    .all-news .item .desc .m-t-30 {
      margin-top: 15px; }
    .all-news .item .desc .l-link {
      font-size: 1.2rem;
      line-height: 1.65rem; }

  .previews-row {
    margin-top: 60px;
    padding-top: 60px; }

  .previews-row .left-side {
    float: none;
    width: 100%;
    margin-right: 0; }

  .previews-row .right-side {
    float: none;
    width: 100%;
    margin-top: 60px;
    padding-top: 60px;
    border-top: 1px solid #EB008B; }

  .front-publications .publication {
    float: none;
    width: 100%;
    margin-right: 0; }

  footer {
    margin-top: 60px;
    padding: 0; }
    footer .inner-wrapper {
      padding: 30px 30px 46px; }
      footer .inner-wrapper .top-line {
        left: 30px;
        width: calc( 100% - 60px ); }

  .page-header.of-front {
    padding-top: 30px;
    border-top: 0; }

  .m-t-120 {
    margin-top: 60px; }

  .front-publications {
    margin-top: 60px;
    padding-top: 60px; }
    .front-publications .publication .m-t-30 {
      margin-top: 15px; }

  .page-header.of-front h1 {
    font-size: 3.2rem;
    line-height: 4rem; }

  .breadcrumbs, .top-divider {
    display: none; }

  .page-header {
    margin-top: 30px; }
    .page-header.of-publication h1 {
      font-size: 2.4rem;
      line-height: 3.2rem; }

  .content-module .image-wrapper.with-caption {
    padding-right: 0; }

  .content-module .image-wrapper .caption {
    position: relative;
    width: 100%;
    margin-top: 15px; }

  .content-module .two-cols .left-col {
    width: 100%;
    float: none; }
    .content-module .two-cols .left-col .share-wrapper {
      display: none;
      margin-top: 60px; }
      .content-module .two-cols .left-col .share-wrapper.show {
        display: block; }

  .content-module .two-cols .right-col {
    width: 100%;
    float: none; }

  .content-module .two-cols .vertical-line {
    display: none; }

  .content-module .two-cols {
    padding-bottom: 0; }

  .wysiwyg h2 {
    font-size: 3.2rem;
    line-height: 4rem; }

  .content-module .video-wrapper .play-video {
    left: 15px;
    bottom: 15px;
    width: 30px;
    height: 30px; }

  .content-module .video-wrapper .play-video .fa {
    line-height: 30px;
    font-size: 15px;
    padding-left: 2px; }

  .content-module .video-wrapper .panel {
    bottom: 15px;
    left: 15px;
    width: calc( 100% - 30px ); }

  .content-module .video-wrapper .panel .progress-wrapper {
    left: 45px;
    width: calc( 100% - 164px ); }

  .content-module .video-outer-wrapper.fixed .video-wrapper {
    width: 100vw;
    height: 56.25vw;
    margin-left: -50vw;
    margin-top: -28.125vw; }

  .x-button-small {
    top: 15px;
    right: 15px; }

  .icon-and-text {
    padding-left: 0; }
    .icon-and-text .icon {
      position: relative;
      margin-bottom: 30px; }

  .test-product-box {
    padding: 30px; }

  .test-product-box form {
    width: 240px;
    height: auto; }

  .test-product-box form input {
    width: calc( 100% + 50px );
    height: 34px;
    position: relative;
    letter-spacing: 30px; }

  .test-product-box form button {
    height: 34px;
    margin-top: 30px;
    position: relative; }

  .test-product-box form .bottom-line {
    bottom: 64px;
    width: 100%; }

  .test-product-box form .error-message {
    right: 0;
    left: auto;
    font-size: 1.2rem;
    top: 60px; }

  .test-product-box form .fa-spin {
    right: 0;
    top: 65px;
    left: auto; }

  .product-review {
    padding: 30px; }

  .product-review .left-col {
    width: 100%;
    float: none; }

  .product-review .right-col {
    float: none;
    width: 100%;
    margin-left: 0;
    margin-top: 30px; }

  .product-review .right-col .row .col-1 {
    float: none;
    width: 100%; }

  .product-review .right-col .row .col-2 {
    float: none;
    width: 100%;
    margin-top: 10px; }

  .product-review .right-col .row {
    margin-top: 30px; }

  .product-review .right-col .row.big-margin {
    margin-top: 30px; }

  .story-points {
    margin-top: 60px; }

  .story-points .row .col-number {
    width: 30px; }

  .story-points .row .line {
    left: 30px; }

  .story-points .row .col-image-text {
    width: calc( 100% - 60px );
    float: right; }

  .story-points .row .col-image {
    width: calc( 100% - 60px ); }

  .story-points .row .col-text {
    width: calc( 100% - 60px );
    margin-left: 0;
    margin-top: 30px;
    padding-bottom: 15px; }

  .all-awards .award .part.first {
    width: 25px; }

  .all-awards .award .part.second {
    width: calc( 100% - 55px );
    margin-right: 0;
    float: right;
    min-height: 0; }

  .all-awards .award .part.third {
    width: calc( 100% - 55px );
    margin-right: 0;
    float: right;
    margin-top: 15px;
    min-height: 0; }

  .all-affiliations .affiliation {
    margin-top: 60px;
    padding-top: 60px;
    border-top: 1px solid #EB008B; }

  .all-affiliations .affiliation .part.first {
    width: 100%;
    margin-right: 0;
    float: none;
    min-height: 0; }

  .all-affiliations .affiliation .part.first img {
    position: relative;
    width: 120px; }

  .all-affiliations .affiliation .part.second {
    width: 100%;
    float: none;
    min-height: 0;
    margin-top: 30px; }

  .all-press .item {
    margin-top: 60px;
    padding-top: 60px;
    border-top: 1px solid #EB008B; }

  .all-press .item .part.first {
    width: 100%;
    margin-right: 0;
    float: none;
    min-height: 0; }
    .all-press .item .part.first img {
      position: relative;
      width: 120px;
      margin-bottom: 0; }

  .all-press .item .part.second {
    width: 100%;
    float: none;
    min-height: 0;
    margin-top: 30px; }

  .all-news .item {
    padding-bottom: 60px; }

  .form-and-details .form-wrapper {
    float: none;
    width: 100%; }

  .form-and-details .details-wrapper {
    float: none;
    width: 100%;
    margin-top: 60px;
    padding-top: 60px;
    border-top: 1px solid #EB008B; }
    .form-and-details .details-wrapper p.small {
      font-size: 1.6rem;
      line-height: 2.2rem; }

  .form-and-details .vertical-line {
    display: none; }

  .form-and-details .details-wrapper .map-wrapper {
    margin-top: 30px; }

  .featured-publications .publication img {
    width: 100%;
    float: none; }

  .featured-publications .publication.with-image .desc {
    float: none;
    width: 100%;
    margin-top: 30px; }

  .all-publications .header-row {
    display: none; }

  .all-publications .row .part.first {
    width: 100%;
    margin-right: 0;
    padding-left: 55px;
    float: none;
    min-height: 0; }

  .all-publications .row .part.second {
    width: 100%;
    margin-right: 0;
    padding-left: 55px;
    float: none;
    min-height: 0;
    margin-top: 15px; }

  .all-publications .row .part.third {
    width: 100%;
    margin-right: 0;
    padding-left: 55px;
    float: none;
    min-height: 0;
    margin-top: 15px; }

  .content-module .two-cols .publication-meta .row {
    margin-top: 30px; }

  .content-module .two-cols .publication-meta .row .right-side {
    width: calc( 100% - 120px ); }

  	/* 
  
  	.contact-wrapper {
  		.top-left {
  			left: 20px;
  			top: 20px;
  			.logo {
  				height: 14px;
  			}
  		}
  		.x-icon {
  			right: 20px;
  			width: 20px;
  			top: 20px;
  		}
  		.content-wrapper {
  			margin-left: 20px;
  			padding: 60px 0;
  			width: calc( 100vw - 40px );
  			.the-text {
  				float: none;
  				width: 100%;
  			}
  			.form-wrapper {
  				float: none;
  				width: 100%;
  				margin-top: 20px;
  			}
  		}
  		.rights {
  			left: 20px;
  			bottom: 20px;
  		}
  	} */
  input {
    -webkit-appearance: none !important;
    border-radius: 0 !important; }

  textarea {
    -webkit-appearance: none !important;
    border-radius: 0 !important; }

  .popup-wrapper #popup-large-image {
    width: 100% !important; }

  .popup-wrapper .inner-wrapper {
    padding: 30px; }

  .popup-wrapper .inner-wrapper .inner-content h3 {
    font-size: 3.2rem; }

  .popup-wrapper .inner-wrapper .inner-content .keywords {
    font-size: 2.4rem;
    line-height: 1.6; }

  .popup-wrapper .inner-wrapper .inner-content .x-button {
    top: -15px;
    right: -15px;
    width: 30px;
    height: 30px; }

  .popup-wrapper .inner-wrapper .inner-content .x-button .line {
    width: 18px;
    height: 2px;
    margin-left: -9px; }

  .content-module .file-wrapper img {
    width: 90px; }

  .content-module .file-wrapper.with-pad .desc {
    width: calc( 100% - 120px ) !important; }

  .content-module .file-wrapper.with-pad .desc p {
    font-size: 1.2rem;
    line-height: 1.65rem; }

  .content-module .file-wrapper a.m-t-30 {
    margin-top: 15px; }

  .content-module .two-cols .keywords-headline {
    margin-top: 60px; }

  .m-t--120 {
    margin-top: 0; }

  .container .content-wrapper.on-front .content-module .image-wrapper {
    margin-top: 60px;
    padding-top: 60px; }
    .container .content-wrapper.on-front .content-module .image-wrapper.first {
      border-top: 0;
      margin-top: 0;
      padding-top: 30px; }

  .container .content-wrapper.on-front .content-module .video-outer-wrapper {
    margin-top: 60px;
    padding-top: 0; }

  .container .content-wrapper.on-front .content-module .wysiwyg {
    margin-top: 60px;
    padding-top: 30px; }

  .all-awards .award .part {
    min-height: 0; }

  .all-affiliations .affiliation .part.first img {
    margin-bottom: 0; }

  .story-points .row .col-text {
    padding-left: 0; }

  footer .inner-wrapper {
    line-height: 1.65rem; } }

/*# sourceMappingURL=style.css.map */