@charset "UTF-8";
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased; }

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

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

::-moz-selection {
  background: #0A0A0A;
  color: #FFFFFF; }

::selection {
  background: #0A0A0A;
  color: #FFFFFF; }

:focus {
  outline: none; }

sup, sub {
  vertical-align: baseline;
  position: relative;
  top: -0.4em; }

sub {
  top: 0.4em; }

@font-face {
  font-family: 'FF Mark';
  src: url("../fonts/FFMarkPro-Bold.woff2") format("woff2"), url("../fonts/FFMarkPro-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal; }

@font-face {
  font-family: 'FF Mark';
  src: url("../fonts/FFMarkPro-Black.woff2") format("woff2"), url("../fonts/FFMarkPro-Black.woff") format("woff");
  font-weight: 900;
  font-style: normal; }

@font-face {
  font-family: 'FF Mark';
  src: url("../fonts/FFMarkPro-Regular.woff2") format("woff2"), url("../fonts/FFMarkPro-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

.container {
  position: relative;
  width: 75%;
  padding: 0 16px;
  margin: 0 auto; }

.row {
  margin: 0 -16px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

*[class^='col-'], *[class*=' col-'] {
  padding: 0 16px; }

.col-1 {
  -ms-flex: 0 0 25%;
  -webkit-box-flex: 0;
  flex: 0 0 25%;
  max-width: 25%; }

.col-2 {
  -ms-flex: 0 0 50%;
  -webkit-box-flex: 0;
  flex: 0 0 50%;
  max-width: 50%; }

.col-3 {
  -ms-flex: 0 0 75%;
  -webkit-box-flex: 0;
  flex: 0 0 75%;
  max-width: 75%; }

.col-4 {
  -ms-flex: 0 0 100%;
  -webkit-box-flex: 0;
  flex: 0 0 100%;
  max-width: 100%; }

.off-1 {
  margin-left: 25%; }

.off-2 {
  margin-left: 50%; }

.off-3 {
  margin-left: 75%; }

.off-4 {
  margin-left: 100%; }

.col3-1 {
  -ms-flex: 0 0 33.33333%;
  -webkit-box-flex: 0;
  flex: 0 0 33.33333%;
  max-width: 33.33333%;
  padding: 0 16px; 
  margin-bottom: 20px;
}

.col3-2 {
  -ms-flex: 0 0 66.66667%;
  -webkit-box-flex: 0;
  flex: 0 0 66.66667%;
  max-width: 66.66667%;
  padding: 0 16px; }

html {
  position: relative;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  cursor: none; }

body {
  position: relative;
  height: 100%;
  font-family: 'FF Mark', sans-serif;
  font-size: 16px;
  line-height: 1.66667em;
  scroll-behavior: smooth;
  cursor: none; }

.hidetxt, .hidedesktop {
  display: none; }

.loader {
  position: fixed;
  width: 100%;
  height: 100%;
  background: #111;
  z-index: 99; }
  .loader:before {
    content: "";
    position: absolute;
    display: block;
    width: 2150px;
    height: 2150px;
    top: 50%;
    left: 50%;
    margin: -1075px 0 0 -1075px;
    background: url(https://uismm.com/assets/images/logo/uismm.png) no-repeat center center;
    border-radius: 50%;
    -webkit-transform: scale(0.01);
    -ms-transform: scale(0.01);
    transform: scale(0.01);
    -webkit-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out; }
  .loader.bouncing:before {
    -webkit-animation: bounce 0.5s;
    animation: bounce 0.5s;
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
    -webkit-animation-timing-function: cubic-bezier(0.5, 0.05, 1, 0.5);
    animation-timing-function: cubic-bezier(0.5, 0.05, 1, 0.5);
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite; }
  .loader.startanimate:before {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1); }

.cursor {
  position: fixed;
  width: 200px;
  height: 200px;
  z-index: 1000;
  pointer-events: none;
  mix-blend-mode: exclusion;
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center; }
  .cursor .point {
    -webkit-backface-visibility: hidden;
    display: block;
    width: 200px;
    height: 200px;
    left: 0;
    top: 0;
    border-radius: 50%;
    background: #FFFFFF;
    cursor: none;
    mix-blend-mode: exclusion;
    -webkit-transform: scale(0.09);
    -ms-transform: scale(0.09);
    transform: scale(0.09);
    -webkit-transition: -webkit-transform .3s ease-in-out;
    transition: -webkit-transform .3s ease-in-out;
    -o-transition: transform .3s ease-in-out;
    transition: transform .3s ease-in-out;
    transition: transform .3s ease-in-out, -webkit-transform .3s ease-in-out; }
    .cursor .point div {
      font-size: 5em;
      font-weight: 400;
      line-height: 175px;
      text-align: center;
      -webkit-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
      transform: rotate(-90deg);
      -webkit-transition: -webkit-transform .3s ease-in-out;
      transition: -webkit-transform .3s ease-in-out;
      -o-transition: transform .3s ease-in-out;
      transition: transform .3s ease-in-out;
      transition: transform .3s ease-in-out, -webkit-transform .3s ease-in-out;
      opacity: 0; }
    .cursor .point.link div {
      -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
      transform: rotate(0deg);
      opacity: 1; }

ul.floatingel {
  position: absolute;
  width: 100%;
  background: #FFFFFF;
  overflow: hidden; }
  ul.floatingel.pop li {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1); }
    ul.floatingel.pop li:before {
      -webkit-transform: scale(1.05);
      -ms-transform: scale(1.05);
      transform: scale(1.05); }
  ul.floatingel li {
    position: absolute;
    display: block;
    background: green;
    -webkit-transform: scale(0.01);
    -ms-transform: scale(0.01);
    transform: scale(0.01);
    /*&:before {
			content: "";
			position: absolute;
			width: 100%;
			height: 100%;
			background: #F5F5F5;
			border-radius: 50%;
			transform: scale(0.001);
			transition: 0.5s ease-in-out;
			transition-delay: 0.75s;
		}*/ }
    ul.floatingel li.circle {
      border-radius: 50%; }
    ul.floatingel li.triangle:before {
      content: "";
      position: absolute;
      width: 100%;
      height: 100%;
      background-image: url(../img/triangle.svg);
      background-size: cover; }
    ul.floatingel li.salmon {
      background: #032B4C; }
    ul.floatingel li.gray {
      background: #F5F5F5; }
    ul.floatingel li.blue {
      background: #80B4E2; }
    ul.floatingel li.purple {
      background: #D195FE; }

@-webkit-keyframes bounce {
  from {
    -webkit-transform: scale(0.01) translate3d(0, 0, 0);
    transform: scale(0.01) translate3d(0, 0, 0); }
  to {
    -webkit-transform: scale(0.01) translate3d(0, 4000px, 0);
    transform: scale(0.01) translate3d(0, 4000px, 0); } }

@keyframes bounce {
  from {
    -webkit-transform: scale(0.01) translate3d(0, 0, 0);
    transform: scale(0.01) translate3d(0, 0, 0); }
  to {
    -webkit-transform: scale(0.01) translate3d(0, 4000px, 0);
    transform: scale(0.01) translate3d(0, 4000px, 0); } }

h1.mainlogo {
  position: absolute;
  top: 28px;
  font-size: 2em; }
  h1.mainlogo svg, h1.mainlogo img {
    display: block;
    width: 146px; }

h1.pageheadline {
  font-size: 5vw;
  font-weight: 900;
  line-height: 1.08333em; }

h2.sectionheadline {
  position: relative;
  margin: -4px 0 0.4em;
  font-size: 1.5vw;
  font-weight: 900;
  line-height: 1.11111em;
  text-transform: uppercase; }
  h2.sectionheadline span.number {
    position: absolute;
    top: -1.5em;
    font-size: 14px;
    font-weight: 600;
    line-height: 14px;
    color: #032B4C; }

h2.blockgray {
  position: absolute;
  width: 133.33333%;
  margin: -0.66667em 0 0 -16.66667%;
  font-size: 10vw;
  font-weight: 900;
  line-height: 1em;
  text-transform: uppercase;
  opacity: 0.05;
  z-index: 0;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto; }

.imgwrapper {
  position: relative;
  overflow: hidden; }
  .imgwrapper img, .imgwrapper video {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    -o-object-fit: cover;
    object-fit: cover;
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
    transition-timing-function: ease-out; }

a.learnmore {
  position: relative;
  display: inline-block;
  padding: 0 0 2px;
  font-size: 1em;
  font-weight: bold;
  letter-spacing: 0.025em;
  color: #032B4C;
  border-bottom: 2px solid #032B4C;
  /*&:before, &:after {
		content: "";
		position: absolute;
		display: block;
		width: 0;
		bottom: -2px;
	}
	&:before {
		border-bottom: 2px solid;
		border-bottom-color: $white;
		transition: 0.5s;
	}
	&:after {
		border-bottom: 2px solid;
		border-bottom-color: $salmon;
		transition: 1s;
	}
	&:hover:before, &:hover:after {
		width: 100%;
	}*/ }
  a.learnmore:after {
    content: "→";
    display: inline-block;
    -webkit-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out; }
  a.learnmore:hover:after {
    margin-left: 0.5em; }
  a.learnmore:hover {
    color: #D73258;
    border-bottom-color: transparent; }

.separator {
  position: absolute;
  top: -6px;
  left: -88px; }
  .separator span {
    position: absolute;
    display: block;
    right: 0;
    font-size: 0.6em;
    font-weight: bold;
    letter-spacing: 0.5em;
    text-transform: uppercase;
    text-align: right;
    white-space: nowrap;
    color: #333333;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    -webkit-transform-origin: 100% 50%;
    -ms-transform-origin: 100% 50%;
    transform-origin: 100% 50%; }
    .separator span:before {
      content: "";
      position: absolute;
      display: block;
      width: 48px;
      height: 1px;
      top: 12px;
      left: -68px;
      background: #0A0A0A; }

header {
  position: absolute;
  width: 100%;
  height: 128px;
  -webkit-transition: 0.15s ease-in-out;
  -o-transition: 0.15s ease-in-out;
  transition: 0.15s ease-in-out;
  z-index: 9;
  /*h1.mainlogo a:hover svg {
		fill: $salmon;//$white;
	}
	&.main {
		//background: $white;//rgba(255,255,255,0.75);

		h1.mainlogo a:hover svg {
			fill: $salmon;
		}
	}*/
  /*&.compact{
		position: fixed;
		height: 104px;
		margin-top: -104px;

		&:hover {
			background: $white;
			height: 128px;
		}
	}*/ }
  header a {
    display: block; }
  header .mainwrapper {
    position: absolute;
    width: 100%;
    height: 80px;
    bottom: 12px; }
  header .container {
    position: relative;
    width: calc(80% + 120px); }
  header img, header svg {
    fill: unset;
    -webkit-transition: 0.1s ease-in-out;
    -o-transition: 0.1s ease-in-out;
    transition: 0.1s ease-in-out; }
  header.fixed {
    position: fixed;
    height: 104px;
    margin-top: -104px;
    background: #FFFFFF; }
    header.fixed.active {
      margin-top: 0; }
      header.fixed.active:hover {
        height: 128px; }

body > header a img.imghover {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0; }

body > header a:hover img {
  opacity: 0; }

body > header a:hover img.imghover {
  opacity: 1; }

.selectlang {
  position: absolute;
  width: 40px;
  height: 40px;
  top: 25px;
  right: 76px;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.15);
  font-size: 0.75em;
  line-height: 38px;
  text-align: center; }
  .selectlang ul.lang {
    position: absolute;
    display: none;
    width: 78px;
    top: -1px;
    right: -1px;
    background: #DDDDDD;
    border: 1px solid #DDDDDD;
    border-radius: 20px;
    list-style: none; }
    .selectlang ul.lang li {
      width: 38px;
      height: 38px;
      float: right;
      border-radius: 50%; }
      .selectlang ul.lang li:hover {
        background: #FFFFFF;
        color: #032B4C; }
  .selectlang:hover ul.lang {
    display: block; }

ul.burger {
  position: absolute;
  width: 28px;
  top: 30px;
  right: 16px;
  list-style: none;
  cursor: pointer; }
  ul.burger li {
    height: 2px;
    margin: 6px 0;
    background: #0A0A0A;
    -webkit-transition: 0.1s ease-in-out;
    -o-transition: 0.1s ease-in-out;
    transition: 0.1s ease-in-out; }
  ul.burger.open .zoom {
    position: absolute;
    width: 3840px;
    height: 3840px;
    background: #032B4C;
    top: 50%;
    left: 50%;
    margin: -1920px 0 0 -1920px;
    border-radius: 50%;
    -webkit-transition: 0.33333s ease-in-out;
    -o-transition: 0.33333s ease-in-out;
    transition: 0.33333s ease-in-out;
    -webkit-transform: scale(0.0001);
    -ms-transform: scale(0.0001);
    transform: scale(0.0001); }
  ul.burger.open span {
    position: absolute;
    display: block;
    top: -2.5em;
    font-size: 0.5em;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    -webkit-transition: 0.1s ease-in-out;
    -o-transition: 0.1s ease-in-out;
    transition: 0.1s ease-in-out; }
  ul.burger.open li:nth-child(4) {
    width: 75%; }
  ul.burger.open:hover li {
    background: #032B4C; }
  ul.burger.open:hover span {
    color: #032B4C; }
  ul.burger.close li {
    background: #FFFFFF; }
  ul.burger.close li:nth-child(1) {
    margin-top: 14px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg); }
  ul.burger.close li:nth-child(2) {
    display: none; }
  ul.burger.close li:nth-child(3) {
    margin: -8px 0 12px;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg); }
  ul.burger.close span {
    position: absolute;
    top: 2px;
    right: 50px;
    font-size: 0.75em;
    color: #FFFFFF;
    text-transform: uppercase; }
  ul.burger.close:hover li {
    background: #5AC2B3; }
  ul.burger.close:hover span {
    color: #5AC2B3; }

.scrollguide {
  position: fixed;
  bottom: 72px;
  right: calc(16px + 12.5%);
  margin-top: -40px;
  z-index: 2; }
  .scrollguide svg {
    display: block;
    fill: #0A0A0A;
    width: 28px; }
  .scrollguide polygon {
    -webkit-animation: scrollmore 1.5s infinite;
    animation: scrollmore 1.5s infinite; }

#top {
  height: 100%;
  margin: 0; }
  #top .container {
    height: 100%; }
  #top .scrollaction {
    position: absolute;
    width: 100%;
    bottom: 72px;
    opacity: 1;
    -webkit-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out; }
    #top .scrollaction svg {
      fill: #0A0A0A;
      width: 28px; }
    #top .scrollaction .alignleft {
      font-size: 0.8em; }
    #top .scrollaction .alignright {
      position: absolute;
      right: 16px;
      margin-top: -40px; }
    #top .scrollaction polygon {
      -webkit-animation: scrollmore 1.5s infinite;
      animation: scrollmore 1.5s infinite; }
    #top .scrollaction.hide {
      opacity: 0; }

@-webkit-keyframes scrollmore {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  50% {
    -webkit-transform: translateY(7px);
    transform: translateY(7px); }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0); } }

@keyframes scrollmore {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0); }
  50% {
    -webkit-transform: translateY(7px);
    transform: translateY(7px); }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0); } }

nav {
  position: fixed;
  display: none;
  width: 100%;
  height: 100%;
  background: #111;
  z-index: 99; }
  nav header svg {
    fill: #FFFFFF; }
  nav header h1.mainlogo a:hover svg {
    fill: #5AC2B3; }
  nav main {
    position: absolute;
    width: 100%;
    top: 50%;
    margin-top: 100px;
    opacity: 0;
    -webkit-transform: translateY(-65%);
    -ms-transform: translateY(-65%);
    transform: translateY(-65%);
    -webkit-transition: 0.25s ease-in-out;
    -o-transition: 0.25s ease-in-out;
    transition: 0.25s ease-in-out; }
    nav main.active {
      margin-top: 0;
      opacity: 1; }
  nav ul.outline {
    font-weight: 900;
    color: #FFFFFF; }
    nav ul.outline > li {
      margin: 1vw 0;
      text-align: center; }
      nav ul.outline > li span {
        font-size: 5vw;
        letter-spacing: 0.02em;
        line-height: 1.1em;
        -webkit-text-fill-color: transparent;
        /* Will override color (regardless of order) */
        -webkit-text-stroke-width: 1px;
        -webkit-text-stroke-color: #FFFFFF;
        text-transform: uppercase;
        opacity: 0.1; }
  nav ul.menu {
    position: absolute;
    width: 100%;
    margin-top: -3.33333vw; }
    nav ul.menu > li {
      position: relative;
      display: inline;
      margin: 0 18px;
      font-size: 1.25vw;
      letter-spacing: 0.01em;
      border-bottom: 2px solid transparent;
      /*&:hover {
				border-bottom-color: $white;
			}*/ }
      nav ul.menu > li:before {
        content: "";
        position: absolute;
        width: 0;
        bottom: -2px;
        left: 50%;
        border-bottom: 2px solid #FFFFFF;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%); }
      nav ul.menu > li:hover:before {
        width: 100%; }
  nav footer {
    position: absolute;
    width: 100%;
    height: unset;
    bottom: 52px;
    background: transparent;
    font-size: 0.75em;
    line-height: 1.66667em;
    text-align: center;
    color: #DDDDDD; }
    nav footer:before {
      content: "";
      display: block;
      width: 100px;
      height: 1px;
      margin: 0 auto;
      background: #333333; }
    nav footer h1 {
      margin: 16px 0 12px;
      font-size: 1em;
      font-weight: bold; }
    nav footer .officeaddress div {
      width: 50%;
      padding: 0 16px;
      float: left; }
    nav footer .officeaddress .left {
      text-align: right; }
    nav footer .officeaddress .right {
      text-align: left; }

.colophon {
  position: absolute;
  width: 100%;
  top: 30%; }
  .colophon .headline {
    position: relative; }
    .colophon .headline h1 {
      height: calc(1.08333em * 3);
      margin: -12px 0 0 -4px;
      font-size: 6.0vw;
      letter-spacing: -0.01em;
      z-index: 2; }
  .colophon .copy p {
    max-width: 220px;
    margin: 8px 0 88px;
    font-size: 0.875em;
    line-height: 1.71428em;
    color: #0A0A0A; }

.ratio {
  position: relative; }
  .ratio:before {
    content: "";
    display: block; }
  .ratio.r1x1:before {
    padding-top: 100%; }
  .ratio.r1x2:before {
    padding-top: 200%; }
  .ratio.r3x2:before {
    padding-top: 66.66667%; }
  .ratio.r3x4plus:before {
    padding-top: 140%; }
  .ratio.r4x3:before {
    padding-top: 75%; }
  .ratio.r4x5:before {
    padding-top: 125%; }

/*.edges {
	position: relative;

	&:before {
		content: "";
		position: absolute;
		display: block;
		width: 21px;
		height: 21px;
	}
	&.tl:before {
		top: 0;
		left: 16px;
		background: url(../img/frame-tl.svg);
	}
	&.tr:before {
		top: 0;
		right: 16px;
		background: url(../img/frame-tr.svg);
	}
	&.bl:before {
		bottom: 0;
		left: 16px;
		background: url(../img/frame-bl.svg);
	}
	&.br:before {
		right: 16px;
		bottom: 0;
		background: url(../img/frame-br.svg);
	}
}*/
.value {
  background: #032B4C;
  color: #FFFFFF; }
  .value h3 {
    position: absolute;
    width: calc(100% - 3.33333vw);
    top: 1.66667vw;
    left: 1.66667vw;
    font-size: 2vw;
    font-weight: 900;
    line-height: 1.25em; }
  .value span {
    position: absolute;
    bottom: 1.66667vw;
    left: 1.66667vw; }
  .value.black {
    background: #0A0A0A; }
  .value.tosca {
    background: #5AC2B3; }
  .value.navy {
    background: #001E26; }

.aboutcontent {
  position: relative;
  margin: 300px 12.5%;
  margin: 15.625vw 12.5% 0; }
  .aboutcontent .copy {
    position: relative;
    margin-top: 5vw;
    z-index: 1; }
  .aboutcontent p {
    margin: 0 0 1em; }

.slideswrapper .col-2 {
  position: relative; }

.slideswrapper ul.control {
  position: absolute;
  bottom: -32px;
  list-style: none; }
  .slideswrapper ul.control li {
    position: relative;
    width: 24px;
    height: 24px;
    margin: 0 4px 0 0;
    float: left;
    border: 2px solid #DDDDDD;
    border-radius: 50%;
    cursor: pointer; }
    .slideswrapper ul.control li:before {
      content: "";
      position: absolute;
      display: block;
      width: 6px;
      height: 6px;
      top: 6px;
      left: 5px;
      border: 2px solid #DDDDDD;
      border-bottom: none;
      border-left: none;
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      transform: rotate(45deg); }
    .slideswrapper ul.control li:first-child:before {
      left: 7px;
      -webkit-transform: rotate(-135deg);
      -ms-transform: rotate(-135deg);
      transform: rotate(-135deg); }
    .slideswrapper ul.control li:hover {
      background: #032B4C;
      border-color: #032B4C; }
      .slideswrapper ul.control li:hover:before {
        border-color: #FFFFFF; }

.pagecolophon {
  position: absolute;
  width: 100%;
  top: 30%; }
  .pagecolophon .separator {
    top: 4px; }
  .pagecolophon h1.pageheadline {
    width: 80%;
    height: 3.24999em; }
    .pagecolophon h1.pageheadline.wider {
      width: 100%; }
  .pagecolophon p {
    width: 75%;
    margin: 0 0 0.5em; }
    .pagecolophon p:first-of-type {
      margin-top: 1.75em; }
  .pagecolophon .col-2.copy {
    /*p:before {
			content: "";
			display: block;
			width: 40px;
			height: 4px;
			background: $salmon;
			margin: 0 0 24px;
		}*/ }
    .pagecolophon .col-2.copy .box {
      width: calc(75% + 64px);
      padding: 28px 28px 60px; }
      .pagecolophon .col-2.copy .box p {
        width: 100%;
        margin: 0;
        /*&:before {
					background: #D195FE;
				}*/ }
      .pagecolophon .col-2.copy .box hr {
        display: block;
        width: 40px;
        height: 4px;
        margin: 0 0 24px;
        background: #032B4C;
        border: none; }
  .pagecolophon .col-2.image {
    position: relative; }
    .pagecolophon .col-2.image .imgwrapper {
      position: absolute;
      width: 80%;
      top: 50%;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%); }
  .pagecolophon.blue .col-2.copy p:before {
    background: #80B4E2; }

section {
  position: relative;
  margin: 90px 0;
  z-index: 1; }
  section.marginless {
    margin: 0; 
  }
  section.moremargin {
    margin-top: 120px; }

section.type1 .imgwrapper, section.type1 .slidewrap {
  position: relative;
  width: 75%; }
  section.type1 .imgwrapper.ratio.r4x5, section.type1 .slidewrap.ratio.r4x5 {
    margin: -45% 0 0; }

section.type1 h2.sectionheadline {
  width: 75%; }

section.type1 p {
  width: 75%;
  color: #0A0A0A; }

section.type1 a.learnmore {
  margin-top: 1.33333em; }

section.type1 .row:nth-child(1) {
  position: relative; }

section.type1 .row:nth-child(2) {
  position: relative;
  margin-top: 120px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse; }
  section.type1 .row:nth-child(2) .imgwrapper, section.type1 .row:nth-child(2) .slidewrap {
    margin-left: 25%; }
  section.type1 .row:nth-child(2) .slideswrapper .imgwrapper {
    margin-left: 0; }
  section.type1 .row:nth-child(2) h2.sectionheadline, section.type1 .row:nth-child(2) p, section.type1 .row:nth-child(2) a.learnmore {
    margin-left: 25%; }

section.type1.reverse .row:nth-child(2) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row; }
  section.type1.reverse .row:nth-child(2) .imgwrapper, section.type1.reverse .row:nth-child(2) .slidewrap {
    margin-left: 0; }
  section.type1.reverse .row:nth-child(2) h2.sectionheadline, section.type1.reverse .row:nth-child(2) p, section.type1.reverse .row:nth-child(2) a.learnmore {
    margin-left: 0; }

section.type1.reverse .row:nth-child(1) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse; }
  section.type1.reverse .row:nth-child(1) .imgwrapper, section.type1.reverse .row:nth-child(1) .slidewrap {
    margin-left: 25%; }
  section.type1.reverse .row:nth-child(1) .slideswrapper .imgwrapper {
    margin-left: 0; }
  section.type1.reverse .row:nth-child(1) h2.sectionheadline, section.type1.reverse .row:nth-child(1) p, section.type1.reverse .row:nth-child(1) a.learnmore {
    margin-left: 25%; }

section.type2 .imgwrapper.portrait:before {
  content: "";
  display: block;
  padding-top: 133.33333%; }

section.type2 .imgwrapper.landscape:before {
  content: "";
  display: block;
  padding-top: calc(66.66667% - 16px); }

section.type2 .imgwrapper:first-child {
  margin-bottom: 32px; }

section.type2 p {
  width: 75%;
  margin: 0 0 1em;
  color: #0A0A0A; }

section.type2.home {
  margin: 120px 0; }

section.type3 p {
  width: 80%;
  margin: 1em 0 0; }

section.type3 a.learnmore {
  margin: 1.33333em 0 0; }

section.type3 img.client {
  width: 75%;
  -webkit-filter: gray;
  filter: gray;
  /* IE6-9 */ }

section.type3 .col3-2 {
  margin-top: -40px; }
  section.type3 .col3-2 .col-1 {
    margin: 40px 0 0;
    text-align: center; }

section.type3.grayscale img.client {
  -webkit-filter: grayscale(1);
  /* Google Chrome, Safari 6+ & Opera 15+ */
  filter: grayscale(1); }

section.type4 {
  margin: 0 0 120px; }
  section.type4 q {
    display: block;
    margin: 60px 0 0;
    font-size: 1.5em;
    line-height: 1.5em;
    color: #333333; }
  section.type4 .box {
    padding: 100px 64px;
    margin: -40px 0 0;
    background: #001E26;
    color: #FFFFFF;
    -webkit-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 32px;
    column-gap: 32px; }

section.type5 {
  margin: 0; }
  section.type5 .r1x1 {
    margin-top: -40%; }
  section.type5 .r4x5 {
    width: 80%;
    margin-top: -60%; }

section.type6 .aboutcontent {
  width: 75%; }

section.type6 q {
  font-size: 1.75em;
  line-height: 1.5em; }
  section.type6 q:before, section.type6 q:after {
    content: ""; }

section.type6 .text {
  position: relative; }

section.type6 .images .col-2 {
  margin: 32px 0 0; }

section.type6 .images .col-2:first-child {
  margin: 0 0 32px; }
  section.type6 .images .col-2:first-child + .col-2 {
    margin: 0 0 32px; }

section.type6.reverse .container > .row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse; }
  section.type6.reverse .container > .row .slideswrapper .control {
    top: unset;
    top: -32px; }

section.type6.lowceiling .aboutcontent {
  margin: 150px 12.5%;
  margin: 7.8125vw 12.5%; }

/*section.type7 {
	.aboutcontent {
		position: absolute;
		margin-top: 72px;
	}
	.row.reverse {//.row:nth-child(2) {
		flex-direction: row-reverse;
	}
	h2.blockgray {
		margin: 0 0 -76px -25%;
	}
	p {
		max-width: 544px;
	}
	.r3x4plus {
		margin-bottom: 32px;
	}
	.r1x1:first-child {
		margin-bottom: 32px;
	}
}*/
section.type7 .col-3 {
  margin-bottom: 12px; }

section.type7 .col6-1 {
  -ms-flex: 0 0 16.66667%;
  -webkit-box-flex: 0;
  flex: 0 0 16.66667%;
  max-width: 16.66667%;
  padding: 0 16px;
  margin: 64px 0 0; }

section.type7 img.client {
  width: 80%;
  -webkit-filter: gray;
  filter: gray;
  /* IE6-9 */ }

section.type7.grayscale img.client {
  -webkit-filter: grayscale(1);
  /* Google Chrome, Safari 6+ & Opera 15+ */
  filter: grayscale(1); }

footer {
  position: relative;
  margin-top: 140px;
  background: #0A0A0A;
  color: #FFFFFF;
  z-index: 1;
  /*.fixedcon {
		position: relative;//fixed;
		width: 100%;
		height: 310px;
		bottom: 0;
		background: $black;
		z-index: 0;
	}*/ }
  footer .row {
    padding: 80px 0 160px; }
  footer .col-3 {
    font-size: 1.5em; }
    footer .col-3 span {
      display: block;
      margin: 0.66667em 0 0;
      font-size: 0.66667em; }
  footer .col-1 {
    font-size: 0.75em;
    line-height: 1.66667em; }
    footer .col-1 span {
      display: block;
      margin: 0 0 0.75em; }
  footer a.mailto {
    display: block;
    margin: 0.66667em 0 0;
    font-weight: bold; }
    footer a.mailto:hover {
      color: #032B4C; }

@media screen and (max-width: 1366px) {
  h1.mainlogo img {
    width: calc(160px * 0.8); }
  a.learnmore {
    font-size: 0.875em; } }

@media screen and (max-width: 1280px) {
  body {
    font-size: 15px; }
  .aboutcontent {
    margin-top: 0;
    margin-bottom: 0; }
  section.type6.lowceiling .aboutcontent {
    margin-top: 0;
    margin-bottom: 0; } }

@media screen and (max-width: 1024px) {
  body {
    font-size: 14px; }
  .cursor {
    display: none; }
  section.type6.team .aboutcontent {
    margin-top: 0; } }

@media screen and (max-width: 768px) {
  body {
    font-size: 14px; }
  .hidedesktop {
    display: block; }
  .container {
    width: unset;
    margin: 0 16px; }
  h1.mainlogo {
    top: 40px; }
    h1.mainlogo img {
      width: 150px; }
  h1.pageheadline {
    font-size: 10vw; }
  h2.sectionheadline {
    font-size: 1em; }
  h2.blockgray {
    width: calc(100% - 32px);
    margin: 0 0 0 -50px;
    font-size: 4.5em; }
  a.learnmore:hover:after {
    margin: 0; }
  .separator {
    display: none; }
  header {
    height: 77px; }
    header .container {
      width: unset;
      margin: 0 16px; }
    header .mainwrapper {
      bottom: 0; }
    header h1.mainlogo a:hover svg {
      fill: unset; }
    header.compact {
      height: 77px; }
      header.compact:hover {
        height: 77px;
        background: rgba(255, 255, 255, 0.75); }
    header.fixed {
      height: 77px;
      margin-top: -77px; }
      header.fixed.active {
        margin-top: 0; }
        header.fixed.active:hover {
          height: 77px; }
  .selectlang {
    top: 28px;
    right: 60px; }
  ul.burger {
    width: 26px;
    top: 40px; }
    ul.burger li {
      margin: 5px 0; }
    ul.burger.open :hover li, ul.burger.close :hover li {
      background: inherit; }
    ul.burger.open :hover span, ul.burger.close :hover span {
      color: inherit; }
    ul.burger.close {
      top: 37px; }
      ul.burger.close span {
        right: 40px; }
  .scrollguide {
    display: none; }
  #top .scrollaction {
    bottom: 32px; }
    #top .scrollaction svg {
      -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
      transform: scale(1.5); }
    #top .scrollaction path {
      display: none; }
  nav {
    overflow: scroll; }
    nav main {
      position: static;
      padding: 0 32px;
      margin: 96px 0 0;
      -webkit-transform: none;
      -ms-transform: none;
      transform: none; }
      nav main.active {
        margin: 96px 0 0; }
    nav ul.outline {
      list-style: none;
      padding: 18px 0 0; }
      nav ul.outline > li {
        position: relative;
        margin: 0 0 16px;
        text-align: left; }
        nav ul.outline > li span {
          position: absolute;
          width: 85%;
          top: 0;
          font-size: 40px;
          opacity: 0; }
    nav ul.menu {
      position: static; }
      nav ul.menu li {
        display: block;
        padding: 10px 0;
        margin: 0 20px;
        font-size: 18px; }
        nav ul.menu li:before {
          display: none; }
    nav footer {
      position: static;
      margin: 52px 0 40px;
      font-size: 0.85714em;
      text-align: left; }
      nav footer:before {
        margin: 0 32px; }
      nav footer h1 {
        padding: 0 32px;
        margin: 16px 0 8px; }
      nav footer .officeaddress .left, nav footer .officeaddress .right {
        width: 100%;
        padding: 0 32px;
        margin: 0 0 4px;
        text-align: left; }
  .colophon {
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%); }
    .colophon .col-2, .colophon .col-3, .colophon .col-1 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%;
      padding: 0 10px 0 16px;
      margin-top: 196px; }
      .colophon .col-2 .imgwrapper, .colophon .col-3 .imgwrapper, .colophon .col-1 .imgwrapper {
        -webkit-transform: translateX(26px);
        -ms-transform: translateX(26px);
        transform: translateX(26px); }
    .colophon .headline {
      padding: 0 16px;
      margin: 0; }
      .colophon .headline h1 {
        position: static;
        width: 100%;
        height: auto;
        padding: 16px 0 0;
        margin: 0;
        font-size: 10vw; }
        .colophon .headline h1:before {
          top: 0;
          left: 16px; }
        .colophon .headline h1:after {
          right: 32px;
          bottom: -40px; }
    .colophon .col-1 {
      margin: 0; }
      .colophon .col-1 p {
        margin: 20px 0; }
  .value h3 {
    width: calc(100% - 32px);
    top: 16px;
    left: 16px;
    font-size: 1.125em; }
  .value span {
    bottom: 12px;
    left: 16px;
    font-size: 0.9em; }
  .aboutcontent {
    position: static;
    width: calc(100% - 50px);
    margin: 0 0 0 50px; }
    .aboutcontent .copy {
      padding: 32px 0 0px;
      margin: 0; }
  .pagecolophon {
    top: 50%; }
    .pagecolophon .col-2 {
      -ms-flex: 0 0 100%;
      -webkit-box-flex: 0;
      flex: 0 0 100%;
      max-width: 100%; }
      .pagecolophon .col-2.copy .box {
        width: calc(100% + 40px);
        padding: 20px;
        margin: 24px -20px 0; }
      .pagecolophon .col-2.image .imgwrapper {
        position: relative;
        width: 100%;
        margin: 16px 0 0; }
    .pagecolophon h1.pageheadline, .pagecolophon p {
      width: 100%;
      height: unset; }
    .pagecolophon.sub {
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%); }
  section {
    margin: 60px 0; }
  section.type1 .imgwrapper.ratio.r4x5 {
    margin: 0; }
  section.type1 h2.sectionheadline, section.type1 p, section.type1 .imgwrapper {
    width: 100%; }
  section.type1 p {
    margin-top: 1em; }
  section.type1 a.learnmore {
    margin-top: 20px; }
  section.type1 .col-2 {
    -ms-flex: 0 0 calc(100% - 50px);
    -webkit-box-flex: 0;
    flex: 0 0 calc(100% - 50px);
    max-width: calc(100% - 50px); }
  section.type1 .colimage {
    -ms-flex: 0 0 100%;
    -webkit-box-flex: 0;
    flex: 0 0 100%;
    max-width: 100%;
    margin-top: 32px; }
  section.type1 .row:nth-child(2) {
    margin-top: 52px; }
    section.type1 .row:nth-child(2) h2.sectionheadline, section.type1 .row:nth-child(2) p, section.type1 .row:nth-child(2) a.learnmore {
      margin-left: 0; }
    section.type1 .row:nth-child(2) h2.sectionheadline {
      margin-top: 0; }
    section.type1 .row:nth-child(2) .imgwrapper {
      margin: 0; }
    section.type1 .row:nth-child(2) .slidewrap {
      margin-left: 0; }
  section.type1.reverse .row:nth-child(1) h2.sectionheadline, section.type1.reverse .row:nth-child(1) p, section.type1.reverse .row:nth-child(1) a.learnmore {
    margin-left: 0; }
  section.type1.reverse .row:nth-child(1) h2.sectionheadline {
    margin-top: 0; }
  section.type1.reverse .row:nth-child(1) .imgwrapper {
    margin: 0; }
  section.type1.reverse .row:nth-child(1) .slidewrap {
    margin-left: 0; }
  section.type1 .slidewrap {
    width: 100%; }
  section.type2 .imgwrapper:first-child {
    margin-bottom: 16px; }
  section.type2 p {
    width: 100%;
    margin: 1em 0 0; }
  section.type2 a.learnmore {
    margin: 20px 0 0; }
  section.type2 .col3-2, section.type2 .col3-1 {
    -ms-flex: 0 0 100%;
    -webkit-box-flex: 0;
    flex: 0 0 100%;
    max-width: 100%; }
  section.type2 .row:nth-child(1) {
    padding: 0 24px;
    margin: 0 -32px;
    -ms-flex-wrap: unset;
    flex-wrap: unset;
    overflow-x: scroll; }
    section.type2 .row:nth-child(1) .col3-1 {
      -ms-flex: 0 0 66.66667%;
      -webkit-box-flex: 0;
      flex: 0 0 66.66667%;
      max-width: 66.66667%;
      padding: 0 8px; }
      section.type2 .row:nth-child(1) .col3-1:nth-child(4) {
        -ms-flex: 0 0 calc(70% + 24px);
        -webkit-box-flex: 0;
        flex: 0 0 calc(70% + 24px);
        max-width: calc(70% + 24px);
        padding: 0 32px 0 8px; }
  section.type2 .row:nth-child(2) {
    margin-top: 8px; }
  section.type3 {
    position: relative;
    padding-top: 40px; }
    section.type3:before {
      position: absolute;
      content: "";
      display: block;
      width: calc(100% - 64px);
      top: 0;
      margin: 0 32px;
      border-top: 1px solid #DDDDDD; }
    section.type3 p, section.type3 img.client {
      width: 100%; }
    section.type3 a.learnmore {
      margin: 20px 0 32px; }
    section.type3 .col3-1, section.type3 .col3-2 {
      -ms-flex: 0 0 100%;
      -webkit-box-flex: 0;
      flex: 0 0 100%;
      max-width: 100%;
      margin: 0; }
    section.type3 .col3-2 .col-1 {
      -ms-flex: 0 0 33.33333%;
      -webkit-box-flex: 0;
      flex: 0 0 33.33333%;
      max-width: 33.33333%;
      margin: 12px 0; }
    section.type3 .container > .row:after {
      display: none; }
  section.type4 q {
    margin: 36px 0 52px 50px; }
  section.type4 .box {
    padding: 28px 32px;
    margin: 0;
    -webkit-column-count: 1;
    column-count: 1; }
  section.type4 .col-1, section.type4 .col-3 {
    -ms-flex: 0 0 100%;
    -webkit-box-flex: 0;
    flex: 0 0 100%;
    max-width: 100%; }
  section.type4 .col-3 {
    padding: 0; }
  section.type5 .r1x1, section.type5 .r4x5 {
    width: 100%;
    margin-top: 0; }
  section.type5 .row {
    margin: 0 -8px; }
    section.type5 .row > div {
      padding: 0 8px; }
  section.type5 .col-2 {
    -ms-flex: 0 0 100%;
    -webkit-box-flex: 0;
    flex: 0 0 100%;
    max-width: 100%;
    margin: 0; }
  section.type5 .col-1 {
    -ms-flex: 0 0 50%;
    -webkit-box-flex: 0;
    flex: 0 0 50%;
    max-width: 50%;
    margin: 16px 0 0; }
  section.type6 q {
    font-size: 1.28571em; }
  section.type6 .col-2 {
    -ms-flex: 0 0 100%;
    -webkit-box-flex: 0;
    flex: 0 0 100%;
    max-width: 100%; }
    section.type6 .col-2.images .row {
      margin: 0 -8px; }
      section.type6 .col-2.images .row > div {
        padding: 0 8px; }
    section.type6 .col-2.images .col-2 {
      -ms-flex: 0 0 50%;
      -webkit-box-flex: 0;
      flex: 0 0 50%;
      max-width: 50%;
      margin: 16px 0 0; }
      section.type6 .col-2.images .col-2:first-child + .col-2 {
        margin: 16px 0; }
  section.type6.lowceiling .aboutcontent {
    position: static;
    width: calc(100% - 50px);
    margin: 0 0 0 50px; }
  section.type6 .slideswrapper {
    padding: 0 8px;
    margin: 0 0 28px; }
    section.type6 .slideswrapper .col-2 {
      -ms-flex: 0 0 50%;
      -webkit-box-flex: 0;
      flex: 0 0 50%;
      max-width: 50%;
      padding: 0 8px; }
    section.type6 .slideswrapper ul.control li:hover {
      background: inherit;
      border-color: inherit; }
      section.type6 .slideswrapper ul.control li:hover:before {
        border-color: inherit; }
  /*section.type7 {
	.row:nth-child(1) {
		.col-1 {
			//display: none;
		}
		.col-2 {
			-ms-flex: 0 0 100%;
			flex: 0 0 100%;
			max-width: 100%;
		}
	}
	.row.reverse {//.row:nth-child(2) {
		> div {
			-ms-flex: 0 0 100%;
			flex: 0 0 100%;
			max-width: 100%;
		}
		.col-2 {
			margin: 32px 0 0;
		}
		.col-1 {
			padding: 0 8px;
		}
	}
	.aboutcontent {
		position: static;
		margin: 0 0 0 50px;
	}
	h2.blockgray {
		margin: 0 0 0 -50px;
	}
	.ratio.r1x1 {
		width: calc(50% - 16px);
		margin: 0 8px;
		float: left;
	}
	&.pagevideo {
		padding: 0 0 40px;

		.aboutcontent {
			width: 100%;

			.copy {
				padding: 32px 0;
			}
		}
		.row:nth-child(2) .col-2 {
			margin: 0;
		}
		.col-2.off-1 {
			&:before {
				display: none;
			}
		}
	}
}*/
  section.type7 img.client {
    width: 100%; }
  section.type7 p {
    margin-top: 1em; }
  section.type7 .col-3 {
    -ms-flex: 0 0 100%;
    -webkit-box-flex: 0;
    flex: 0 0 100%;
    max-width: 100%;
    margin: 0 0 20px; }
  section.type7 .col6-1 {
    -ms-flex: 0 0 33.33333%;
    -webkit-box-flex: 0;
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
    padding: 0 16px;
    margin: 20px 0; }
  footer {
    overflow: hidden;
    margin-top: 80px; }
    footer .fixedcon {
      position: static; }
    footer .row {
      padding: 36px 0; }
    footer .col-2, footer .col-1 {
      -ms-flex: 0 0 100%;
      -webkit-box-flex: 0;
      flex: 0 0 100%;
      max-width: 100%; }
    footer .col-2 {
      font-size: 1.71428em;
      line-height: 1.25em; }
    footer .col-1 {
      font-size: 0.85714em; }
      footer .col-1:nth-child(2) {
        margin: 40px 0 12px; }
      footer .col-1:nth-child(3) {
        text-align: left; }
    footer a.mailto {
      margin: 8px 0 0;
      font-size: 0.66667em; }
      footer a.mailto:hover {
        color: #FFFFFF; } }
