/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;
    -moz-user-select: none;
         user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}
@charset 'UTF-8';
/* Slider */
.slick-loading .slick-list
{
    background: #fff url('./ajax-loader.gif') center center no-repeat;
}

/* Icons */
@font-face
{
    font-family: 'slick';
    font-weight: normal;
    font-style: normal;

    src: url('./fonts/slick.eot');
    src: url('./fonts/slick.eot?#iefix') format('embedded-opentype'), url('./fonts/slick.woff') format('woff'), url('./fonts/slick.ttf') format('truetype'), url('./fonts/slick.svg#slick') format('svg');
}
/* Arrows */
.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 20px;
    padding: 0;
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus
{
    color: transparent;
    outline: none;
    background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before
{
    opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before
{
    opacity: .25;
}

.slick-prev:before,
.slick-next:before
{
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;

    opacity: .75;
    color: white;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev
{
    left: -25px;
}
[dir='rtl'] .slick-prev
{
    right: -25px;
    left: auto;
}
.slick-prev:before
{
    content: '\2190';
}
[dir='rtl'] .slick-prev:before
{
    content: '\2192';
}

.slick-next
{
    right: -25px;
}
[dir='rtl'] .slick-next
{
    right: auto;
    left: -25px;
}
.slick-next:before
{
    content: '\2192';
}
[dir='rtl'] .slick-next:before
{
    content: '\2190';
}

/* Dots */
.slick-dotted.slick-slider
{
    margin-bottom: 30px;
}

.slick-dots
{
    position: absolute;
    bottom: -25px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}
.slick-dots li
{
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}
.slick-dots li button
{
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus
{
    outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before
{
    opacity: 1;
}
.slick-dots li button:before
{
    font-family: 'slick';
    font-size: 6px;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '\2022';
    text-align: center;

    opacity: .25;
    color: black;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before
{
    opacity: .75;
    color: black;
}
/*! 
 * OverlayScrollbars
 * Version: 2.10.1
 * 
 * Copyright (c) Rene Haas | KingSora.
 * https://github.com/KingSora
 * 
 * Released under the MIT license.
 */
.os-size-observer,
.os-size-observer-listener {
  scroll-behavior: auto !important;
  direction: inherit;
  pointer-events: none;
  overflow: hidden;
  visibility: hidden;
  box-sizing: border-box;
}

.os-size-observer,
.os-size-observer-listener,
.os-size-observer-listener-item,
.os-size-observer-listener-item-final {
  writing-mode: horizontal-tb;
  position: absolute;
  left: 0;
  top: 0;
}

.os-size-observer {
  z-index: -1;
  contain: strict;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  padding: inherit;
  border: inherit;
  box-sizing: inherit;
  margin: -133px;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transform: scale(0.1);
}
.os-size-observer::before {
  content: "";
  flex: none;
  box-sizing: inherit;
  padding: 10px;
  width: 10px;
  height: 10px;
}

.os-size-observer-appear {
  animation: os-size-observer-appear-animation 1ms forwards;
}

.os-size-observer-listener {
  box-sizing: border-box;
  position: relative;
  flex: auto;
  padding: inherit;
  border: inherit;
  margin: -133px;
  transform: scale(calc(1 / 0.1));
}
.os-size-observer-listener.ltr {
  margin-right: -266px;
  margin-left: 0;
}
.os-size-observer-listener.rtl {
  margin-left: -266px;
  margin-right: 0;
}
.os-size-observer-listener:empty::before {
  content: "";
  width: 100%;
  height: 100%;
}
.os-size-observer-listener:empty::before, .os-size-observer-listener > .os-size-observer-listener-item {
  display: block;
  position: relative;
  padding: inherit;
  border: inherit;
  box-sizing: content-box;
  flex: auto;
}

.os-size-observer-listener-scroll {
  box-sizing: border-box;
  display: flex;
}

.os-size-observer-listener-item {
  right: 0;
  bottom: 0;
  overflow: hidden;
  direction: ltr;
  flex: none;
}

.os-size-observer-listener-item-final {
  transition: none;
}

@keyframes os-size-observer-appear-animation {
  from {
    cursor: auto;
  }
  to {
    cursor: none;
  }
}
.os-trinsic-observer {
  flex: none;
  box-sizing: border-box;
  position: relative;
  max-width: 0px;
  max-height: 1px;
  padding: 0;
  margin: 0;
  border: none;
  overflow: hidden;
  z-index: -1;
  height: 0;
  top: calc(100% + 1px);
  contain: strict;
}
.os-trinsic-observer:not(:empty) {
  height: calc(100% + 1px);
  top: -1px;
}
.os-trinsic-observer:not(:empty) > .os-size-observer {
  width: 1000%;
  height: 1000%;
  min-height: 1px;
  min-width: 1px;
}

/**
 * hide native scrollbars
 * changes to this styles need to be reflected in the environment styles to correctly detect scrollbar hiding
 */
[data-overlayscrollbars-initialize],
[data-overlayscrollbars-viewport~=scrollbarHidden] {
  scrollbar-width: none !important;
}

[data-overlayscrollbars-initialize]::-webkit-scrollbar,
[data-overlayscrollbars-initialize]::-webkit-scrollbar-corner,
[data-overlayscrollbars-viewport~=scrollbarHidden]::-webkit-scrollbar,
[data-overlayscrollbars-viewport~=scrollbarHidden]::-webkit-scrollbar-corner {
  appearance: none !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

/**
 * elements wont suddenly clip after initialization is done
 */
[data-overlayscrollbars-initialize]:not([data-overlayscrollbars]):not(html):not(body) {
  overflow: auto;
}

/**
 * applied to body 
 */
html[data-overlayscrollbars-body] {
  overflow: hidden;
}

html[data-overlayscrollbars-body],
html[data-overlayscrollbars-body] > body {
  width: 100%;
  height: 100%;
  margin: 0;
}

html[data-overlayscrollbars-body] > body {
  overflow: visible;
  margin: 0;
}

/**
 * structure setup 
 */
[data-overlayscrollbars] {
  position: relative;
}

[data-overlayscrollbars~=host],
[data-overlayscrollbars-padding] {
  display: flex;
  align-items: stretch !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  scroll-behavior: auto !important;
}

[data-overlayscrollbars-padding],
[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]) {
  box-sizing: inherit;
  position: relative;
  flex: auto !important;
  height: auto;
  width: 100%;
  min-width: 0;
  padding: 0;
  margin: 0;
  border: none;
  z-index: 0;
}

[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]) {
  --os-vaw: 0;
  --os-vah: 0;
  outline: none;
}
[data-overlayscrollbars-viewport]:not([data-overlayscrollbars]):focus {
  outline: none;
}
[data-overlayscrollbars-viewport][data-overlayscrollbars-viewport~=arrange]::before {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: -1;
  min-width: 1px;
  min-height: 1px;
  width: var(--os-vaw);
  height: var(--os-vah);
}

[data-overlayscrollbars],
[data-overlayscrollbars-padding],
[data-overlayscrollbars-viewport] {
  overflow: hidden !important;
}

[data-overlayscrollbars~=noClipping],
[data-overlayscrollbars-padding~=noClipping] {
  overflow: visible !important;
}

[data-overlayscrollbars-viewport~=measuring] {
  overflow: hidden !important;
  scroll-behavior: auto !important;
  scroll-snap-type: none !important;
}

[data-overlayscrollbars-viewport~=overflowXVisible]:not([data-overlayscrollbars-viewport~=measuring]) {
  overflow-x: visible !important;
}

[data-overlayscrollbars-viewport~=overflowXHidden] {
  overflow-x: hidden !important;
}

[data-overlayscrollbars-viewport~=overflowXScroll] {
  overflow-x: scroll !important;
}

[data-overlayscrollbars-viewport~=overflowYVisible]:not([data-overlayscrollbars-viewport~=measuring]) {
  overflow-y: visible !important;
}

[data-overlayscrollbars-viewport~=overflowYHidden] {
  overflow-y: hidden !important;
}

[data-overlayscrollbars-viewport~=overflowYScroll] {
  overflow-y: scroll !important;
}

[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId) {
  font-size: 0 !important;
  line-height: 0 !important;
}

[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId)::before,
[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId)::after,
[data-overlayscrollbars-viewport~=noContent]:not(#osFakeId) > * {
  display: none !important;
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border-width: 0 !important;
}

[data-overlayscrollbars-viewport~=scrolling] {
  scroll-behavior: auto !important;
  scroll-snap-type: none !important;
}

[data-overlayscrollbars-content] {
  box-sizing: inherit;
}

/**
 * Display contents to bridge any flickering during deferred initialization.
 */
[data-overlayscrollbars-contents]:not(#osFakeId):not([data-overlayscrollbars-padding]):not([data-overlayscrollbars-viewport]):not([data-overlayscrollbars-content]) {
  display: contents;
}

/**
 * optional & experimental grid mode
 */
[data-overlayscrollbars-grid],
[data-overlayscrollbars-grid] [data-overlayscrollbars-padding] {
  display: grid;
  grid-template: 1fr/1fr;
}

[data-overlayscrollbars-grid] > [data-overlayscrollbars-padding],
[data-overlayscrollbars-grid] > [data-overlayscrollbars-viewport],
[data-overlayscrollbars-grid] > [data-overlayscrollbars-padding] > [data-overlayscrollbars-viewport] {
  height: auto !important;
  width: auto !important;
}

@property --os-scroll-percent {
  syntax: "<number>";
  inherits: true;
  initial-value: 0;
}
@property --os-viewport-percent {
  syntax: "<number>";
  inherits: true;
  initial-value: 0;
}
.os-scrollbar {
  --os-viewport-percent: 0;
  --os-scroll-percent: 0;
  --os-scroll-direction: 0;
  --os-scroll-percent-directional: calc(
    var(--os-scroll-percent) - (var(--os-scroll-percent) + (1 - var(--os-scroll-percent)) * -1) *
      var(--os-scroll-direction)
  );
}

.os-scrollbar {
  contain: size layout;
  contain: size layout style;
  transition: opacity 0.15s, visibility 0.15s, top 0.15s, right 0.15s, bottom 0.15s, left 0.15s;
  pointer-events: none;
  position: absolute;
  opacity: 0;
  visibility: hidden;
}

body > .os-scrollbar {
  position: fixed;
  z-index: 99999;
}

.os-scrollbar-transitionless {
  transition: none !important;
}

.os-scrollbar-track {
  position: relative;
  padding: 0 !important;
  border: none !important;
}

.os-scrollbar-handle {
  position: absolute;
}

.os-scrollbar-track,
.os-scrollbar-handle {
  pointer-events: none;
  width: 100%;
  height: 100%;
}

.os-scrollbar.os-scrollbar-track-interactive .os-scrollbar-track,
.os-scrollbar.os-scrollbar-handle-interactive .os-scrollbar-handle {
  pointer-events: auto;
  touch-action: none;
}

.os-scrollbar-horizontal {
  bottom: 0;
  left: 0;
}

.os-scrollbar-vertical {
  top: 0;
  right: 0;
}

.os-scrollbar-rtl.os-scrollbar-horizontal {
  right: 0;
}

.os-scrollbar-rtl.os-scrollbar-vertical {
  right: auto;
  left: 0;
}

.os-scrollbar-visible {
  opacity: 1;
  visibility: visible;
}

.os-scrollbar-auto-hide.os-scrollbar-auto-hide-hidden {
  opacity: 0;
  visibility: hidden;
}

.os-scrollbar-interaction.os-scrollbar-visible {
  opacity: 1;
  visibility: visible;
}

.os-scrollbar-unusable,
.os-scrollbar-unusable *,
.os-scrollbar-wheel,
.os-scrollbar-wheel * {
  pointer-events: none !important;
}

.os-scrollbar-unusable .os-scrollbar-handle {
  opacity: 0 !important;
  transition: none !important;
}

.os-scrollbar-horizontal .os-scrollbar-handle {
  bottom: 0;
  left: calc(var(--os-scroll-percent-directional) * 100%);
  transform: translateX(calc(var(--os-scroll-percent-directional) * -100%));
  width: calc(var(--os-viewport-percent) * 100%);
}

.os-scrollbar-vertical .os-scrollbar-handle {
  right: 0;
  top: calc(var(--os-scroll-percent-directional) * 100%);
  transform: translateY(calc(var(--os-scroll-percent-directional) * -100%));
  height: calc(var(--os-viewport-percent) * 100%);
}

@supports (container-type: size) {
  .os-scrollbar-track {
    container-type: size;
  }
  .os-scrollbar-horizontal .os-scrollbar-handle {
    left: auto;
    transform: translateX(calc(var(--os-scroll-percent-directional) * 100cqw + var(--os-scroll-percent-directional) * -100%));
  }
  .os-scrollbar-vertical .os-scrollbar-handle {
    top: auto;
    transform: translateY(calc(var(--os-scroll-percent-directional) * 100cqh + var(--os-scroll-percent-directional) * -100%));
  }
  .os-scrollbar-rtl.os-scrollbar-horizontal .os-scrollbar-handle {
    right: auto;
    left: 0;
  }
}
.os-scrollbar-rtl.os-scrollbar-vertical .os-scrollbar-handle {
  right: auto;
  left: 0;
}

.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless,
.os-scrollbar.os-scrollbar-horizontal.os-scrollbar-cornerless.os-scrollbar-rtl {
  left: 0;
  right: 0;
}

.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless,
.os-scrollbar.os-scrollbar-vertical.os-scrollbar-cornerless.os-scrollbar-rtl {
  top: 0;
  bottom: 0;
}

@media print {
  .os-scrollbar {
    display: none;
  }
}
.os-scrollbar {
  --os-size: 0;
  --os-padding-perpendicular: 0;
  --os-padding-axis: 0;
  --os-track-border-radius: 0;
  --os-track-bg: none;
  --os-track-bg-hover: none;
  --os-track-bg-active: none;
  --os-track-border: none;
  --os-track-border-hover: none;
  --os-track-border-active: none;
  --os-handle-border-radius: 0;
  --os-handle-bg: none;
  --os-handle-bg-hover: none;
  --os-handle-bg-active: none;
  --os-handle-border: none;
  --os-handle-border-hover: none;
  --os-handle-border-active: none;
  --os-handle-min-size: 33px;
  --os-handle-max-size: none;
  --os-handle-perpendicular-size: 100%;
  --os-handle-perpendicular-size-hover: 100%;
  --os-handle-perpendicular-size-active: 100%;
  --os-handle-interactive-area-offset: 0;
}

.os-scrollbar-track {
  border: var(--os-track-border);
  border-radius: var(--os-track-border-radius);
  background: var(--os-track-bg);
  transition: opacity 0.15s, background-color 0.15s, border-color 0.15s;
}
.os-scrollbar-track:hover {
  border: var(--os-track-border-hover);
  background: var(--os-track-bg-hover);
}
.os-scrollbar-track:active {
  border: var(--os-track-border-active);
  background: var(--os-track-bg-active);
}

.os-scrollbar-handle {
  border: var(--os-handle-border);
  border-radius: var(--os-handle-border-radius);
  background: var(--os-handle-bg);
}
.os-scrollbar-handle:hover {
  border: var(--os-handle-border-hover);
  background: var(--os-handle-bg-hover);
}
.os-scrollbar-handle:active {
  border: var(--os-handle-border-active);
  background: var(--os-handle-bg-active);
}

.os-scrollbar-track:before,
.os-scrollbar-handle:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: block;
}

.os-scrollbar-horizontal {
  padding: var(--os-padding-perpendicular) var(--os-padding-axis);
  right: var(--os-size);
  height: var(--os-size);
}
.os-scrollbar-horizontal.os-scrollbar-rtl {
  left: var(--os-size);
  right: 0;
}
.os-scrollbar-horizontal .os-scrollbar-track:before {
  top: calc(var(--os-padding-perpendicular) * -1);
  bottom: calc(var(--os-padding-perpendicular) * -1);
}
.os-scrollbar-horizontal .os-scrollbar-handle {
  min-width: var(--os-handle-min-size);
  max-width: var(--os-handle-max-size);
  height: var(--os-handle-perpendicular-size);
  transition: opacity 0.15s, background-color 0.15s, border-color 0.15s, height 0.15s;
}
.os-scrollbar-horizontal .os-scrollbar-handle:before {
  top: calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);
  bottom: calc(var(--os-padding-perpendicular) * -1);
}
.os-scrollbar-horizontal:hover .os-scrollbar-handle {
  height: var(--os-handle-perpendicular-size-hover);
}
.os-scrollbar-horizontal:active .os-scrollbar-handle {
  height: var(--os-handle-perpendicular-size-active);
}

.os-scrollbar-vertical {
  padding: var(--os-padding-axis) var(--os-padding-perpendicular);
  bottom: var(--os-size);
  width: var(--os-size);
}
.os-scrollbar-vertical .os-scrollbar-track:before {
  left: calc(var(--os-padding-perpendicular) * -1);
  right: calc(var(--os-padding-perpendicular) * -1);
}
.os-scrollbar-vertical .os-scrollbar-handle {
  min-height: var(--os-handle-min-size);
  max-height: var(--os-handle-max-size);
  width: var(--os-handle-perpendicular-size);
  transition: opacity 0.15s, background-color 0.15s, border-color 0.15s, width 0.15s;
}
.os-scrollbar-vertical .os-scrollbar-handle:before {
  left: calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);
  right: calc(var(--os-padding-perpendicular) * -1);
}
.os-scrollbar-vertical.os-scrollbar-rtl .os-scrollbar-handle:before {
  right: calc((var(--os-padding-perpendicular) + var(--os-handle-interactive-area-offset)) * -1);
  left: calc(var(--os-padding-perpendicular) * -1);
}
.os-scrollbar-vertical:hover .os-scrollbar-handle {
  width: var(--os-handle-perpendicular-size-hover);
}
.os-scrollbar-vertical:active .os-scrollbar-handle {
  width: var(--os-handle-perpendicular-size-active);
}

/* NONE THEME: */
[data-overlayscrollbars-viewport~=measuring] > .os-scrollbar,
.os-theme-none.os-scrollbar {
  display: none !important;
}

/* DARK & LIGHT THEME: */
.os-theme-dark,
.os-theme-light {
  box-sizing: border-box;
  --os-size: 10px;
  --os-padding-perpendicular: 2px;
  --os-padding-axis: 2px;
  --os-track-border-radius: 10px;
  --os-handle-interactive-area-offset: 4px;
  --os-handle-border-radius: 10px;
}

.os-theme-dark {
  --os-handle-bg: rgba(0, 0, 0, 0.44);
  --os-handle-bg-hover: rgba(0, 0, 0, 0.55);
  --os-handle-bg-active: rgba(0, 0, 0, 0.66);
}

.os-theme-light {
  --os-handle-bg: rgba(255, 255, 255, 0.44);
  --os-handle-bg-hover: rgba(255, 255, 255, 0.55);
  --os-handle-bg-active: rgba(255, 255, 255, 0.66);
}@font-face {
  font-family: "Gilroy Bold";
  src: url("../fonts/gilroy/gilroy-bold-webfont.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Gilroy Regular";
  src: url("../fonts/gilroy/gilroy-regular-webfont.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Gilroy Semibold";
  src: url("../fonts/gilroy/gilroy-semibold-webfont.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Gilroy Medium";
  src: url("../fonts/gilroy/gilroy-medium-webfont.woff2") format("woff2");
  font-weight: normal;
  font-style: normal;
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html, body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  overflow-x: hidden;
  font-size: 0.938vw;
  font-family: "Gilroy Regular", sans-serif;
  color: #052136;
  height: 100%;
}

h1 {
  font-size: 1.2777777778rem;
  font-weight: 400;
  font-family: "Gilroy Semibold";
  line-height: 1.2;
  margin-bottom: 0.2777777778rem;
}

h2 {
  font-size: 1.6111111111rem;
  font-weight: 400;
  font-family: "Gilroy Semibold";
  line-height: 1.2;
  margin-bottom: 1.1111111111rem;
}

p {
  font-weight: 400;
  line-height: 1.4;
}

ul {
  padding-left: 1em;
  font-size: 1.6666666667rem;
}

li {
  margin-bottom: 0.45em;
}

svg {
  overflow: visible;
}

.bg-darkblue {
  background-color: #052136 !important;
}

.bg-lightblue {
  background-color: #93A9FF !important;
}

.bg-midblue {
  background-color: #5274FF !important;
}

.bg-blue {
  background-color: #1666DB !important;
}

.bg-darkgreen {
  background-color: #009156 !important;
}

.bg-green {
  background-color: #62D84E !important;
}

.bg-lightgreen {
  background-color: #86ED78 !important;
}

.bg-white {
  background-color: white !important;
}

.bg-grey {
  background-color: #cdcdcd !important;
}

.text-darkblue {
  color: #052136 !important;
}

.text-lightblue {
  color: #93A9FF !important;
}

.text-blue {
  color: #1666DB !important;
}

.text-green {
  color: #62D84E !important;
}

.text-white {
  color: white !important;
}

.font-regular {
  font-weight: 400;
  font-family: "Gilroy Regular";
}

.font-semibold {
  font-weight: 400;
  font-family: "Gilroy Semibold";
}

.font-medium {
  font-weight: 400;
  font-family: "Gilroy Medium";
}

.font-bold, strong {
  font-weight: 400;
  font-family: "Gilroy Bold";
}

.font-20 {
  font-size: 1.1111111111rem;
}

.logo {
  width: 9.6666666667rem;
}

.btn, .popup.multi .popup-tabs .back-btn, .popup.multi .popup-tabs .btn {
  font-size: 1.5rem;
  border-radius: 0;
  padding: 0.7222222222rem 1.9444444444rem;
  color: white;
}

.img-fluid {
  width: 100%;
}

.container {
  max-width: 1620px;
  width: 90%;
  margin: auto;
}

@keyframes pulse {
  0% {
    transform: scale(1);
  }
  20% {
    transform: scale(1.15);
  }
  70%, 100% {
    transform: scale(1);
  }
}
#loading {
  background: #052136;
  position: fixed;
  top: 0;
  right: 0;
  height: 100%;
  width: 100%;
  z-index: 99;
  display: none;
}
#loading.active {
  display: block;
}
#loading svg {
  width: 100px;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
}

.scene {
  opacity: 0;
  transition: 0.2s;
  height: 100%;
  background: #043159;
  background: linear-gradient(0deg, #042130 10%, #043159 50%, #042130 90%);
  position: relative;
}
.scene.show {
  opacity: 1;
}
.scene .title {
  z-index: 3;
  position: absolute;
  top: 3vw;
  left: 3vw;
  width: 45%;
}
.scene .title .logo {
  width: 15.2222222222rem;
  margin-bottom: 1.1111111111rem;
}
.scene .intro {
  z-index: 3;
  position: absolute;
  top: 7vw;
  left: calc(45% + 4vw);
  width: 45%;
}
.scene .intro p {
  margin-bottom: 1.1111111111rem;
  line-height: 1.8;
}
.scene.version2 {
  overflow: hidden;
  min-height: 53vw;
  background: #0088ad;
}

.heading {
  background: #052136;
  width: 100%;
  padding: 1.1111111111rem 2.2222222222rem;
  z-index: 10;
  position: relative;
  display: flex;
  align-items: center;
}
.heading .logo {
  height: 2.5rem;
  width: auto;
}
.heading .snlogo {
  height: 1.5rem;
  width: auto;
}
.heading .otherlogo {
  width: auto;
  margin-left: auto;
}
.heading .otherlogo.large {
  height: 1.9444444444rem;
}
.heading .otherlogo.medium {
  height: 1.3888888889rem;
}
.heading .otherlogo.small {
  height: 1rem;
}
.heading h1 {
  color: white;
  font-family: "Gilroy Medium", sans-serif;
  font-size: 1.5rem;
  line-height: 2.5rem;
  margin-bottom: 0;
  margin-left: auto;
}
.heading.has-back-btn {
  padding-right: 9vw;
}

.hotspots {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 6;
  animation: pulse 2.5s infinite ease-in-out;
  width: 6.3888888889rem;
  height: 6.3888888889rem;
  border-radius: 100%;
  line-height: 1.1;
  padding: 0.2222222222rem;
  font-family: "Gilroy Bold";
  color: #052136;
  font-size: 1.1111111111rem;
  text-align: center;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.5);
}
.hotspots.disabled {
  display: none;
}
.hotspots.bg-lightgreen {
  animation-delay: 0.5s;
}
.hotspots.bg-grey {
  animation-delay: 0.3s;
}
.hotspots.bg-lightblue {
  animation-delay: 0.1s;
}
.hotspots.bg-midblue {
  animation-delay: 0.6s;
}
.hotspots.bg-darkgreen {
  animation-delay: 0.4s;
}
.hotspots:hover {
  animation: paused;
  cursor: pointer;
}
.hotspots.spot-1, .hotspots.spot-2, .hotspots.spot-3, .hotspots.spot-4, .hotspots.spot-5, .hotspots.spot-6, .hotspots.spot-7 {
  width: 8.5rem;
  height: 8.5rem;
  padding: 0.5555555556rem;
}
.hotspots.spot-1 {
  left: 28vw;
  bottom: 25vw;
  animation-delay: 0.4s;
}
.hotspots.spot-2 {
  left: 4vw;
  bottom: 16vw;
  animation-delay: 0.3s;
}
.hotspots.spot-3 {
  left: 22vw;
  bottom: 9vw;
  animation-delay: 0.1s;
}
.hotspots.spot-4 {
  left: 43vw;
  bottom: 18vw;
  animation-delay: 0.6s;
}
.hotspots.spot-5 {
  left: 70vw;
  bottom: 25vw;
  animation-delay: 0.2s;
}
.hotspots.spot-6 {
  left: 82vw;
  bottom: 11vw;
  animation-delay: 0.4s;
}
.hotspots.bg-green {
  left: 8vw;
  bottom: 25vw;
}
.hotspots.bg-lightgreen {
  left: 17vw;
  bottom: 3vw;
}
.hotspots.bg-grey {
  left: 21.8vw;
  bottom: 18vw;
}
.hotspots.bg-lightblue {
  left: 52vw;
  bottom: 14vw;
}
.hotspots.bg-midblue {
  left: 80vw;
  bottom: 16vw;
}
.hotspots.bg-darkgreen {
  left: 37vw;
  bottom: 14vw;
}

.deloitte .hotspots.spot-1, .deloitte .hotspots.spot-2, .deloitte .hotspots.spot-3, .deloitte .hotspots.spot-4, .deloitte .hotspots.spot-5, .deloitte .hotspots.spot-6 {
  width: 8.8888888889rem;
  height: 8.8888888889rem;
  padding: 0.4444444444rem;
}
.deloitte .spot-1 {
  background: #046a38;
  color: white;
}
.deloitte .spot-2 {
  background: #0d8390;
  color: white;
}
.deloitte .spot-3 {
  background: #06bc25;
}
.deloitte .spot-4 {
  background: #007cb0;
  color: white;
}
.deloitte .spot-5 {
  background: #26890d;
  color: white;
}
.deloitte .spot-6 {
  background: #005587;
  color: white;
}

.popup-bg {
  display: none;
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9;
}

.popup {
  display: none;
  opacity: 0;
  margin-top: 50px;
  position: fixed;
  top: 4vw;
  left: 45vw;
  background: white;
  border-radius: 18%/50%;
  width: 50vw;
  min-height: 16vw;
  z-index: 10;
  align-items: center;
  padding: 2% 8%;
  transition: all 1s;
}
.popup.show {
  opacity: 1;
  margin-top: 0px;
}
.popup p {
  line-height: 1.6;
}
.popup .hotspot {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 6;
  line-height: 1.1;
  width: 9.8333333333rem;
  height: 9.8333333333rem;
  border-radius: 100%;
  padding: 0.2777777778rem;
  font-family: "Gilroy Bold";
  color: #052136;
  font-size: 1.7777777778rem;
  text-align: center;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.5);
  top: -15%;
  left: -11%;
}
.popup .hotspot.spot-1, .popup .hotspot.spot-2, .popup .hotspot.spot-3, .popup .hotspot.spot-4, .popup .hotspot.spot-5, .popup .hotspot.spot-6, .popup .hotspot.spot-7 {
  font-size: 1.2777777778rem;
  color: white;
}
.popup .close, .popup .close-additional {
  width: 3.3333333333rem;
  height: 3.3333333333rem;
  border-radius: 100%;
  display: block;
  background: #5274FF;
  position: absolute;
  bottom: 10%;
  left: 0;
  align-items: center;
  justify-content: center;
  display: flex;
}
.popup .close svg, .popup .close-additional svg {
  width: 50%;
  height: 50%;
}
.popup .close:hover, .popup .close-additional:hover {
  background: #1666DB;
}
.popup .btn, .popup.multi .popup-tabs .back-btn, .popup.multi .popup-tabs .btn {
  background: #62D84E;
  text-decoration: none;
  padding: 0.5555555556rem 1.1111111111rem;
  font-size: 0.8333333333rem;
  text-align: center;
  display: block;
  width: auto;
  min-width: 5.5555555556rem;
  color: #052136;
  font-family: "Gilroy Bold";
  border-radius: 2px;
  margin-top: auto;
}
.popup .btn:hover, .popup.multi .popup-tabs .back-btn:hover, .popup.multi .popup-tabs .btn:hover {
  background: #052136;
  color: #62D84E;
}
.popup .links {
  position: absolute;
  z-index: 11;
}
.popup .links .circle {
  width: 5.5555555556rem;
  height: 5.5555555556rem;
  border-radius: 100%;
  display: block;
  background: #5274FF;
  align-items: center;
  justify-content: center;
  display: flex;
  font-size: 1.3333333333rem;
  font-family: "Gilroy Medium";
  color: white;
  z-index: 1;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.5);
}
.popup .links .circle svg {
  width: 50%;
  height: 50%;
}
.popup .links .type {
  width: 0;
  max-width: 0;
  position: absolute;
  top: 50%;
  right: 10%;
  background: inherit;
  transition: 1s;
  overflow: hidden;
  transform: translateY(-50%);
  z-index: -1;
  padding: 10% 30% 10% 20%;
  white-space: nowrap;
  background: #1666DB;
  color: white;
  border-radius: 20px 0 0 20px/50%;
  font-family: "Gilroy Medium";
}
.popup .links:hover .circle {
  background: #1666DB;
}
.popup .links:hover .circle svg path {
  fill: #62D84E;
}
.popup .links:hover .type {
  width: auto;
  max-width: 300px;
  right: 90%;
}
.popup .link-1 {
  bottom: 66%;
  right: 0;
}
.popup .link-2 {
  bottom: 33%;
  right: -5%;
}
.popup .link-3 {
  bottom: 0;
  right: 0;
}
.popup.image {
  width: auto;
  min-height: 0;
  top: 3vw;
  left: auto;
  transform: none;
  margin: auto;
}
.popup.image .img-con {
  display: grid;
  width: calc(80vw - 6rem);
  height: auto;
}
.popup.image .img-con.portrait {
  max-height: calc(100vh - 6vw - 6rem);
  overflow-y: auto;
  overflow-x: hidden;
}
.popup.image .img-con.portrait img {
  width: 100%;
}
.popup.image .img-con.landscape img {
  max-width: 100%;
  max-height: calc(100vh - 6vw - 6rem);
  margin: auto;
}
.popup.video, .popup.image, .popup.iframe {
  padding: 3rem 3.5rem !important;
}
.popup.video .video-container, .popup.image .video-container, .popup.iframe .video-container {
  height: 0;
  padding-bottom: 56%;
  position: relative;
  width: 100%;
}
.popup.video .video-container video, .popup.image .video-container video, .popup.iframe .video-container video {
  position: absolute;
  width: 100%;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}
.popup.video .iframe-container, .popup.image .iframe-container, .popup.iframe .iframe-container {
  height: 100%;
  position: relative;
  width: 100%;
}
.popup.video .iframe-container iframe, .popup.image .iframe-container iframe, .popup.iframe .iframe-container iframe {
  position: absolute;
  width: 100%;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  border: 0;
  height: 100%;
}
.popup.iframe {
  width: calc(100% - 100px);
  height: calc(100% - 100px);
}

.version2 .entry {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  background-color: white;
  background-repeat: no-repeat;
  background-position: top left;
  background-size: cover;
  border-right: 0.5rem #62D84E solid;
}
.version2 .entry .button {
  background: rgba(255, 255, 255, 0.8);
  position: fixed;
  bottom: 35%;
  right: 15%;
  width: 20rem;
  height: 20rem;
  border-radius: 20rem;
  font-size: 3rem;
  color: #052136;
  font-family: "Gilroy Bold";
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}
.version2 .entry .button:hover {
  cursor: pointer;
  background: rgba(98, 216, 78, 0.75);
}
.version2 .entry .joint-logo {
  position: fixed;
  bottom: 2rem;
  left: 3rem;
  width: 10rem;
  z-index: 5;
}
.version2 .entry .logo {
  position: fixed;
  bottom: 4em;
  right: 4rem;
  width: 20rem;
  z-index: 5;
}
.version2 .entry .text {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.5) 20%, rgba(0, 0, 0, 0) 100%);
  position: fixed;
  bottom: 0%;
  left: 0%;
  width: 55%;
  height: 100%;
  padding: 1rem 7rem 6rem 3rem;
  display: flex;
  flex-direction: column;
  justify-content: end;
}
.version2 .entry .text h1 {
  font-size: 4.5555555556rem;
  line-height: 1;
}
.version2 .entry .text h2 {
  font-size: 7.7777777778rem;
  line-height: 1;
}
.version2 .entry .text p {
  font-size: 2.1111111111rem;
  line-height: 1.1;
}
.version2 .entry .text .small {
  font-size: 1.1111111111rem;
  margin-top: 2.5rem;
}
@media (max-width: 767px) {
  .version2 .entry {
    background-position: center;
  }
  .version2 .entry .text {
    width: 100%;
    padding: 1.5rem;
    justify-content: start;
    position: relative;
  }
  .version2 .entry .text h1 {
    font-size: 3.3333333333rem;
    line-height: 1;
  }
  .version2 .entry .text h2 {
    font-size: 3.3333333333rem;
    line-height: 1;
  }
  .version2 .entry .button {
    width: 14rem;
    height: 14rem;
    position: relative;
    bottom: auto;
    right: auto;
    margin-top: 2rem;
  }
  .version2 .entry .logo {
    display: none;
  }
}
.version2 .back-to {
  position: fixed;
  right: -3vw;
  top: -4.5vw;
  width: 12vw;
  z-index: 10;
  transition: 0.5s all;
}
.version2 .back-to img {
  width: 100%;
  height: auto;
}
.version2 .back-to:hover {
  right: -2.5vw;
  top: -4.25vw;
}
@media (max-width: 600px) {
  .version2 .back-to {
    right: -7vw;
    top: -12vw;
    width: 30vw;
  }
  .version2 .back-to:hover {
    right: -7vw;
    top: -12vw;
  }
}
.version2 .intro {
  z-index: 3;
  position: absolute;
  top: 6.6666666667rem;
  left: calc(0% + 2.22rem);
  width: 21%;
}
.version2 .intro h1 {
  font-size: 1.4444444444rem;
  color: #052136;
  font-family: "Gilroy Medium";
}
.version2 .intro h2 {
  font-size: 1.4444444444rem;
  color: #052136;
  font-family: "Gilroy Bold";
}
.version2 .copy {
  position: absolute;
  top: 6.6666666667rem;
  left: calc(21% + 5rem);
  width: 25%;
  z-index: 1;
}
.version2 .copy p {
  font-size: 0.8333333333rem;
  color: white;
}
.version2 .popup {
  border-radius: 0;
  left: 50%;
  transform: translateX(-50%);
  padding: 3% 4%;
  align-items: start;
  flex-wrap: wrap;
}
.version2 .popup .hotspot {
  top: -10%;
  right: calc(100% - 3rem);
  left: auto;
}
.version2 .popup h3 {
  color: #62D84E;
  font-family: "Gilroy Bold";
  font-weight: normal;
  font-size: 1.1111111111rem;
}
.version2 .popup h2 {
  font-family: "Gilroy Bold";
  font-weight: normal;
}
.version2 .popup .close, .version2 .popup .close-additional {
  bottom: auto;
  left: auto;
  top: 0.4444444444rem !important;
  right: 0.4444444444rem !important;
  background: none;
}
.version2 .popup .close line, .version2 .popup .close-additional line {
  stroke: #052136;
}
.version2 .popup .text {
  width: 75%;
  padding-right: 1.6666666667rem;
}
.version2 .popup .text.no-stat {
  width: 100%;
}
.version2 .popup .text p {
  font-family: "Gilroy Medium";
  font-size: 0.9444444444rem;
  line-height: 1.4;
  margin-bottom: 1em;
}
.version2 .popup .link-row {
  display: flex;
  margin: 0 -0.8333333333rem;
  flex-wrap: wrap;
  width: 100%;
}
.version2 .popup .link-row .link-col {
  margin: 0.5555555556rem 0.8333333333rem;
  display: flex;
  flex-direction: column;
  width: 25%;
}
.version2 .popup .link-row .link-col p {
  font-family: "Gilroy Semibold";
  font-size: 0.8333333333rem;
  line-height: 1.2;
  margin-bottom: 0.8333333333rem;
}
@media (max-width: 1100px) {
  .version2 .popup .link-row .link-col {
    width: 100%;
  }
}
@media (max-width: 500px) {
  .version2 .popup .link-row {
    display: block;
    margin: 0;
  }
  .version2 .popup .link-row .link-col {
    width: 100%;
    margin: 10px 0px;
  }
}
.version2 .popup .stat {
  width: 25%;
}
.version2 .popup .stat figure {
  font-family: "Gilroy Bold";
  font-size: 2.7777777778rem;
}
.version2 .popup .stat .stat-desc {
  font-family: "Gilroy Semibold";
  font-size: 0.8333333333rem;
  line-height: 1.2;
}
.version2 .popup .stat .stat-desc p {
  line-height: 1.2 !important;
}
.version2 .popup .stat .stat-desc a {
  text-decoration: none;
  color: #052136;
}
.version2 .popup .stat .stat-desc a:hover {
  color: #62D84E;
}
.version2 .popup.hasgallery {
  padding: 15px;
  width: 130vh;
  top: 50%;
  max-width: 80vw;
  transform: translate(-50%, -50%);
}
.version2 .popup.hasgallery .gallery-slider {
  margin-bottom: 0 !important;
}
.version2 .popup.hasgallery .slick-dots {
  bottom: -40px;
}
.version2 .popup.hasgallery .close {
  background: #62D84E;
  transform: translate(50%, -50%);
  top: 0;
  right: 0;
}

.deloitte .intro {
  left: calc(0% + 2.22rem);
  width: 20%;
}
.deloitte .copy {
  left: calc(20% + 3rem);
  width: 30%;
}
.deloitte .copy p {
  font-size: 1rem;
  color: #052136;
}

#message {
  padding: 20px 30px;
  background: #052136;
  position: fixed;
  top: 150px;
  right: -100%;
  color: white;
  transition: 2s all;
  text-align: center;
  font-family: "Gilroy Bold";
  z-index: 99;
  line-height: 1.5;
}
#message a {
  cursor: pointer;
}
#message a:hover {
  text-decoration: underline;
}
#message.active {
  right: 0;
}

.popup .video-container {
  height: 0;
  padding-bottom: 56%;
  position: relative;
  width: 100%;
}
.popup .video-container video {
  position: absolute;
  width: 100%;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}
.popup .iframe-container {
  height: 100%;
  position: relative;
  width: 100%;
}
.popup .iframe-container > iframe {
  position: absolute;
  width: 100%;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  height: 100%;
}
.popup .gallery-slider {
  width: 100%;
}
.popup .gallery-slider .slick-track {
  display: flex !important;
}
.popup .gallery-slider .slick-slide {
  height: inherit !important;
}
.popup .gallery-slider .slick-slide > div {
  height: 100% !important;
}
.popup .next-arrow, .popup .prev-arrow {
  width: 10vw;
  position: absolute;
  top: calc(100% - 5px);
  left: 0;
  z-index: 99;
}
.popup .next-arrow:hover path, .popup .prev-arrow:hover path {
  fill: #009156 !important;
}
.popup .next-arrow {
  width: 10vw;
  right: 0;
  left: auto;
}
.popup .slick-disabled {
  display: none !important;
}
.popup .slick-dots li {
  background: transparent;
  border: 1px solid #62D84E;
  border-radius: 100px;
  width: 13px;
  height: 13px;
  margin: 2px;
}
.popup .slick-dots li button {
  text-indent: -9999px;
  overflow: hidden;
}
.popup .slick-dots li button::before {
  color: white !important;
}
.popup .slick-dots li.slick-active {
  background: #62D84E;
  color: #62D84E;
}
.popup .slick-dots li.slick-active button::before {
  color: #62D84E !important;
}

.popup.multi {
  width: 90vw;
  padding: 2.5rem 2.5rem 2.5rem 0;
}
.popup.multi .hotspot {
  top: 1rem;
  left: 2rem;
  right: auto;
  box-shadow: none;
}
.popup.multi .popup-nav {
  width: 20%;
  display: inline-block;
  vertical-align: top;
  padding-top: 10vw;
}
.popup.multi .popup-nav a {
  min-height: 4em;
  width: 80%;
  display: block;
  background: linear-gradient(#cdcdcd, white);
  padding: 0 1rem;
  display: flex;
  align-items: center;
  text-decoration: none;
  color: #052136;
  margin-bottom: 0.5rem;
  transition: 0.7s width;
  font-size: 0.8888888889rem;
  border-radius: 0 0.5rem 0.5rem 0;
  font-weight: normal;
  font-family: "Gilroy Regular";
}
.popup.multi .popup-nav a:hover {
  background: #cdcdcd;
}
.popup.multi .popup-nav a.active {
  width: 90%;
  background: #62D84E;
}
.popup.multi .popup-tabs {
  width: 80%;
  margin-top: 2rem;
  display: none;
}
.popup.multi .popup-tabs.show {
  display: block;
}
.popup.multi .popup-tabs .asset {
  display: none;
}
.popup.multi .popup-tabs .asset.show {
  display: block;
}
.popup.multi .popup-tabs .popup-scroll {
  width: 80%;
  height: calc(100vh - 16vw);
  padding-right: 3.8888888889rem;
  overflow-y: visible !important;
  overflow-x: inherit !important;
}
.popup.multi .popup-tabs .popup-scroll.no-links {
  width: 90%;
}
.popup.multi .popup-tabs .popup-scroll p {
  margin-bottom: 1rem;
}
.popup.multi .popup-tabs .link-row {
  width: 20%;
  float: right;
}
.popup.multi .popup-tabs .link-row .btn, .popup.multi .popup-tabs .link-row .back-btn {
  width: 100%;
  text-align: left;
}
.popup.multi .popup-tabs .back-btn, .popup.multi .popup-tabs .btn {
  background: white;
  border: #62D84E solid 1px;
  display: inline-block;
  margin-bottom: 10px;
}
.popup.multi .popup-tabs .back-btn:hover, .popup.multi .popup-tabs .back-btn.active, .popup.multi .popup-tabs .btn:hover, .popup.multi .popup-tabs .btn.active {
  background: #62D84E;
  color: #052136;
}
@media (max-width: 767px) {
  .popup.multi {
    top: 5vw !important;
    width: 95vw;
    padding-right: 0rem;
  }
  .popup.multi .popup-nav a {
    padding: 0 0.2rem;
  }
  .popup.multi .popup-tabs {
    margin-top: 0;
    padding-left: 1rem;
  }
  .popup.multi .popup-tabs.show {
    display: grid;
  }
  .popup.multi .popup-tabs .popup-scroll {
    width: 100%;
    height: 50vh;
    order: 1;
    padding-right: 3rem;
  }
  .popup.multi .popup-tabs .link-row {
    width: 100%;
    order: 2;
    padding-top: 1rem;
  }
  .popup.multi .popup-tabs .link-row .btn, .popup.multi .popup-tabs .link-row .back-btn {
    width: auto;
  }
}

.os-scrollbar-track {
  background: #cdcdcd !important;
  width: 1px;
  right: 1rem;
}

.os-scrollbar-handle {
  background: url("/images/scroll.png") no-repeat;
  background-size: cover;
  width: 3.5rem !important;
  height: 8rem !important;
  margin-right: -1.6rem;
}
.os-scrollbar-handle:hover, .os-scrollbar-handle:active {
  background: url("/images/scroll.png") no-repeat !important;
  background-size: cover !important;
}
@media (max-width: 767px) {
  .os-scrollbar-handle {
    width: 2rem !important;
    height: 5rem !important;
    margin-right: -0.9rem;
  }
}

.spinner {
  display: none;
  /* Hidden by default */
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border: 8px solid #f3f3f3;
  border-top: 8px solid #3498db;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  animation: spin 1s linear infinite;
  z-index: 1000;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.longScroll.infinity .screen-container {
  background: none;
}

.infinity-loop {
  width: 100%;
  padding-bottom: 63%;
  height: 0;
  position: relative;
  margin: -5vw 0 0vw 0;
  background: #052136;
  max-height: 53.9vw;
  overflow: hidden;
}
.infinity-loop .intro {
  position: absolute;
  top: 6vw !important;
  left: 50% !important;
  width: 80% !important;
  color: white;
  transform: translateX(-50%);
  text-align: center;
}
.infinity-loop .intro p {
  font-size: 2.3vw;
  line-height: 1.15;
}
.infinity-loop .lottie-bg {
  position: absolute;
  top: 0%;
  left: 0%;
}
.infinity-loop .lottie-dots {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: fade-in 1s forwards linear;
  animation-delay: 1.5s;
}
.infinity-loop svg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 20%;
  opacity: 0;
  animation: fade-in 1s forwards linear;
  animation-delay: 1.5s;
}
.infinity-loop .hotspots {
  background: none;
  color: #62D84E;
  box-shadow: none;
  width: 9vw;
  padding: 0;
  height: auto;
  opacity: 0;
  animation: fade-in 1s forwards linear;
  animation-delay: 2.5s;
  transform: translateX(-50%);
}
.infinity-loop .hotspots:before {
  position: absolute;
  top: calc(100% + 2.5vw);
  left: 50%;
  transform: translate(-50%, -50%);
  background: white;
  border-radius: 100%;
  width: 2vw;
  height: 2vw;
  content: "";
}
.infinity-loop .hotspots:after {
  position: absolute;
  top: calc(100% + 2.5vw);
  left: 50%;
  transform: translate(-50%, -50%);
  background: rgba(255, 255, 255, 0.5);
  border-radius: 100%;
  width: 3vw;
  height: 3vw;
  content: "";
  animation: border-pulse infinite 2s linear forwards;
  will-change: opacity, transform;
  transform-origin: 0 0;
}
.infinity-loop .hotspots.spot-1 {
  bottom: 75%;
  left: 20%;
}
.infinity-loop .hotspots.spot-2 {
  bottom: 75%;
  left: 76%;
}
.infinity-loop .hotspots.spot-3 {
  bottom: 50%;
  left: 12%;
}
.infinity-loop .hotspots.spot-4 {
  bottom: 47%;
  left: 88%;
}
.infinity-loop .hotspots.spot-4:after {
  bottom: calc(50%);
  top: auto;
}
.infinity-loop .hotspots.spot-4:before {
  bottom: calc(50%);
  top: auto;
  transform: translate(-50%, -100%);
}
.infinity-loop .hotspots.spot-5 {
  bottom: 20%;
  left: 25%;
}
.infinity-loop .hotspots.spot-5:after {
  bottom: calc(50%);
  top: auto;
}
.infinity-loop .hotspots.spot-5:before {
  bottom: calc(50%);
  top: auto;
  transform: translate(-50%, -100%);
}
.infinity-loop .hotspots.spot-6 {
  bottom: 20%;
  left: 74%;
}
.infinity-loop .hotspots.spot-6:after {
  bottom: calc(50%);
  top: auto;
}
.infinity-loop .hotspots.spot-6:before {
  bottom: calc(50%);
  top: auto;
  transform: translate(-50%, -100%);
}
.infinity-loop .hotspots.spot-7 {
  bottom: 69%;
  left: 50%;
}
.infinity-loop .hotspots.spot-8 {
  bottom: 33%;
  left: 50%;
}
.infinity-loop .hotspots.spot-9 {
  bottom: 29%;
  left: 86%;
}
.infinity-loop .hotspots.spot-9:after {
  bottom: calc(50%);
  top: auto;
}
.infinity-loop .hotspots.spot-9:before {
  bottom: calc(50%);
  top: auto;
  transform: translate(-50%, -100%);
}
.infinity-loop .hotspots.disabled {
  display: block;
  cursor: default;
  color: rgba(255, 255, 255, 0.5);
}
.infinity-loop .hotspots.disabled:before {
  opacity: 0.45 !important;
}
.infinity-loop .hotspots.disabled:after {
  animation: none;
  opacity: 0.2 !important;
}
.infinity-loop .popup .hotspot {
  display: none;
}
.infinity-loop .profile {
  position: absolute;
  top: 38%;
  opacity: 0;
  animation: fade-in 1s forwards linear;
  animation-delay: 2.5s;
}
.infinity-loop .profile img {
  border-radius: 100%;
  background: rgba(99, 1, 235, 0.2);
  border: 1px solid #6301eb;
  width: 16vw;
}
.infinity-loop .profile .capsule {
  border: 1px solid #6301eb;
  background: rgba(99, 1, 235, 0.6);
  border-radius: 1vw;
  width: auto;
  padding: 0.5vw 1vw;
  display: inline-block;
  margin: auto;
  color: white;
  font-family: "Gilroy Bold";
  position: absolute;
  bottom: -0.5vw;
  left: 50%;
  transform: translateX(-50%);
}
.infinity-loop .profile.first {
  left: 18%;
}
.infinity-loop .profile.last {
  left: 65%;
}

@keyframes border-pulse {
  0% {
    transform: scale(1) translate(-50%, -50%);
  }
  30% {
    transform: scale(1.2) translate(-50%, -50%);
  }
  70% {
    transform: scale(1) translate(-50%, -50%);
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.background {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1;
}

.bridge-left {
  position: absolute;
  width: 31vw;
  bottom: 10.5vw;
  left: 0;
  z-index: 2;
}

.bridge-right {
  position: absolute;
  width: 21vw;
  bottom: 5vw;
  right: 0;
  z-index: 2;
}

.clouds {
  position: absolute;
  width: 57vw;
  bottom: 24vw;
  z-index: 0;
  opacity: 0.5;
  animation: clouds 60s infinite linear;
  transform: translateX(100vw);
}
.clouds.part2 {
  animation-delay: 30s;
}

@keyframes clouds {
  0% {
    transform: translateX(100vw);
  }
  100% {
    transform: translateX(-80vw);
  }
}
.plane {
  position: absolute;
  width: 7vw;
  bottom: 30vw;
  left: -6vw;
  animation: plane 15s infinite linear;
  animation-delay: 10s;
  z-index: 1;
  offset-path: path("M.098 99.6c1012.938-201.221 1920-33.621 2220-33.621");
}

@keyframes plane {
  100% {
    motion-offset: 100%;
    offset-distance: 100%;
  }
}
.train {
  position: absolute;
  width: 51vw;
  bottom: 3.5vw;
  left: 0;
  z-index: 2;
  animation: train 15s infinite ease-in-out;
}

@keyframes train {
  0% {
    transform: translateX(-60vw);
  }
  22% {
    transform: translateX(-29vw);
  }
  38% {
    transform: translateX(-29vw);
  }
  100% {
    transform: translateX(110vw);
  }
}
.telecom .pylons {
  position: absolute;
  width: 25vw;
  bottom: 6.2vw;
  left: 1.5vw;
  z-index: 4;
}
.telecom .man-phone {
  position: absolute;
  width: 5vw;
  bottom: 19.6vw;
  left: 16vw;
  z-index: 4;
}
.telecom .servers {
  position: absolute;
  width: 10vw;
  bottom: 19.6vw;
  left: 4vw;
  z-index: 4;
}
.telecom .blue-building {
  position: absolute;
  width: 8.4vw;
  bottom: 4.45vw;
  left: 55.55vw;
  z-index: 2;
}
.telecom .pylon {
  position: absolute;
  width: 3.9vw;
  bottom: 4.56vw;
  left: 41.7vw;
  z-index: 2;
}
.telecom .woman-desk {
  position: absolute;
  width: 6vw;
  bottom: 13.9vw;
  right: 35.6vw;
  z-index: 4;
}
.telecom .man-blocks {
  position: absolute;
  width: 19vw;
  bottom: 19.5vw;
  right: 0vw;
  z-index: 4;
}
.telecom .green-bars {
  position: absolute;
  width: 0vw;
  z-index: 4;
  overflow: hidden;
  animation: green-bars 2s infinite linear;
}
.telecom .green-bars img {
  width: 1.4vw;
}
.telecom .green-bars.one {
  bottom: 20.8vw;
  left: 8.45vw;
}
.telecom .green-bars.two {
  bottom: 23.05vw;
  left: 8.45vw;
}
.telecom .green-bars.three {
  bottom: 21.99vw;
  left: 10.25vw;
}
@keyframes green-bars {
  0% {
    width: 0;
  }
  50% {
    width: 1.4vw;
  }
  100% {
    width: 0vw;
  }
}
.telecom .green-block {
  position: absolute;
  width: 3.1vw;
  z-index: 5;
  opacity: 0;
  animation: green-block 4s infinite linear;
}
.telecom .green-block.one {
  bottom: 23.7vw;
  right: 1.8vw;
}
.telecom .green-block.two {
  bottom: 23.7vw;
  right: 11.76vw;
  animation-delay: 2s;
}
@keyframes green-block {
  30% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  60% {
    opacity: 1;
  }
  70% {
    opacity: 0;
  }
}
.telecom .signal-dots {
  position: absolute;
  width: 4vw;
  z-index: 5;
  bottom: 14.5vw;
  left: 41.6vw;
  animation: signal-dots 4s infinite linear;
}
.telecom .signal-inner {
  position: absolute;
  width: 5.8vw;
  z-index: 5;
  bottom: 13.65vw;
  left: 40.7vw;
  animation: signal-inner 4s infinite linear;
}
.telecom .signal-outer {
  position: absolute;
  width: 7.6vw;
  z-index: 5;
  bottom: 13vw;
  left: 39.8vw;
  animation: signal-outer 4s infinite linear;
}
@keyframes signal-dots {
  25% {
    opacity: 1;
  }
  35%, 100% {
    opacity: 0;
  }
}
@keyframes signal-inner {
  45% {
    opacity: 1;
  }
  55%, 100% {
    opacity: 0;
  }
}
@keyframes signal-outer {
  65% {
    opacity: 1;
    transform: scale(1);
  }
  75% {
    opacity: 1;
    transform: scale(1.15);
  }
  85%, 100% {
    opacity: 0;
    transform: scale(1.3);
  }
}
.telecom .window-light {
  z-index: 1;
  display: block;
  position: absolute;
  width: 1.2vw;
  height: 1.2vw;
  bottom: 12.57vw;
  left: 56.1vw;
  margin-left: -0.15vw;
  animation: window-light 15s infinite linear;
}
@keyframes window-light {
  5% {
    opacity: 1;
  }
  10% {
    opacity: 0;
    left: 56.1vw;
  }
  11% {
    left: 60.1vw;
    opacity: 0;
  }
  15% {
    opacity: 1;
  }
  20% {
    opacity: 1;
  }
  25% {
    opacity: 0;
    left: 60.1vw;
    bottom: 12.57vw;
  }
  26% {
    bottom: 9.6vw;
    left: 58.8vw;
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  35% {
    opacity: 1;
  }
  40% {
    opacity: 0;
    bottom: 9.6vw;
    left: 58.8vw;
  }
  46% {
    bottom: 6.69vw;
    left: 57.4vw;
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  55% {
    opacity: 1;
  }
  60% {
    opacity: 0;
    bottom: 6.69vw;
    left: 57.4vw;
  }
  66% {
    bottom: 12.57vw;
    left: 60.1vw;
    opacity: 0;
  }
  70% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  80% {
    opacity: 0;
    left: 60.1vw;
  }
  90% {
    left: 56.2vw;
    opacity: 0;
  }
}
.telecom .drone {
  position: absolute;
  width: 4.4vw;
  bottom: 27.5vw;
  left: 29vw;
  z-index: 1;
  transform: translateX(-100px);
  opacity: 0;
  animation: drone 15s infinite linear;
  animation-delay: 1s;
  offset-path: path("M1.462 177.792c7-31.361 31.925-146.266 155.158-169.888C309.003-19.271 217.944 49.877 587.7 26.95 874.925.85 1035.41 2.4 1177.785 7.904c328.957 12.715 540.5 89.051 540.5 89.051");
  offset-rotate: 0deg;
}
@keyframes drone {
  5% {
    opacity: 1;
    transform: translateX(0);
    motion-offset: 0%;
    offset-distance: 0%;
  }
  25% {
    opacity: 1;
    transform: translateX(0);
    motion-offset: 0%;
    offset-distance: 0%;
  }
  100% {
    opacity: 1;
    transform: translateX(0);
    motion-offset: 100%;
    offset-distance: 100%;
  }
}
.telecom .car {
  position: absolute;
  width: 4.5vw;
  bottom: 1.5vw;
  left: 20vw;
  z-index: 2;
  animation: car 10s infinite ease-in-out;
}
.telecom .car.green {
  animation-delay: 8s;
}
@keyframes car {
  0% {
    transform: translateX(0vw);
  }
  80% {
    transform: translateX(56vw);
  }
  100% {
    transform: translateX(56vw);
  }
}
.telecom .hotspots.bg-darkgreen {
  bottom: 18vw;
  left: 38vw;
}

.manufacturing .left-people {
  position: absolute;
  width: 31.5vw;
  bottom: 19.65vw;
  left: 1vw;
  z-index: 3;
}
.manufacturing .right-people {
  position: absolute;
  width: 20.5vw;
  bottom: 20.1vw;
  right: 0vw;
  z-index: 3;
}
.manufacturing .step1, .manufacturing .step2, .manufacturing .step3, .manufacturing .step4, .manufacturing .step5 {
  position: absolute;
  width: 2vw;
  z-index: 3;
  animation: steps 5s infinite ease-in-out;
  left: 3.4vw;
  opacity: 0;
  animation-delay: 2s !important;
}
.manufacturing .step1 {
  bottom: 19.67vw;
  animation: step1 5s infinite ease-in-out;
}
.manufacturing .step2 {
  bottom: 21.6vw;
  animation: step2 5s infinite ease-in-out;
}
.manufacturing .step3 {
  bottom: 23.58vw;
  animation: step3 5s infinite ease-in-out;
}
.manufacturing .step4 {
  bottom: 25.36vw;
  animation: step4 5s infinite ease-in-out;
}
.manufacturing .step5 {
  bottom: 27.18vw;
  animation: step5 5s infinite ease-in-out;
}
@keyframes step1 {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes step2 {
  10% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes step3 {
  20% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes step4 {
  30% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes step5 {
  40% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
.manufacturing .padlock {
  position: absolute;
  width: 1.45vw;
  z-index: 3;
  left: 23.9vw;
  bottom: 25.7vw;
  animation: pulse 1s infinite ease-in-out;
}
.manufacturing .blue-arrow {
  position: absolute;
  height: 1.45vw;
  z-index: 3;
  right: 10.8vw;
  bottom: 27.4vw;
  animation: blue-arrow 6s infinite ease-in-out;
  animation-delay: 2s;
}
.manufacturing .green-arrow {
  position: absolute;
  height: 1.45vw;
  z-index: 3;
  right: 8.5vw;
  bottom: 27.4vw;
  animation: green-arrow 6s infinite ease-in-out;
  animation-delay: 2s;
}
.manufacturing .connected {
  position: absolute;
  height: 1.455vw;
  z-index: 4;
  right: 9.14vw;
  bottom: 27.39vw;
  opacity: 0;
  animation: connected 6s infinite ease-in-out;
  animation-delay: 2s;
}
@keyframes green-arrow {
  20% {
    right: 9.14vw;
  }
  50%, 75% {
    right: 9.14vw;
  }
}
@keyframes blue-arrow {
  20% {
    right: 10.05vw;
  }
  50%, 75% {
    right: 10.05vw;
  }
}
@keyframes connected {
  10% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  80% {
    opacity: 0;
  }
}
.manufacturing .car {
  position: absolute;
  width: 4.5vw;
  bottom: 1.5vw;
  left: 20vw;
  z-index: 3;
  animation: car 10s infinite ease-in-out;
}
.manufacturing .car.green {
  animation-delay: 8s;
}
@keyframes car {
  0% {
    transform: translateX(0vw);
  }
  80% {
    transform: translateX(55.5vw);
  }
  100% {
    transform: translateX(55.5vw);
  }
}
.manufacturing .houses {
  position: absolute;
  left: 34.35vw;
  bottom: 4vw;
  width: 42.9vw;
  z-index: 4;
}
.manufacturing .houses-bg {
  position: absolute;
  left: 34.35vw;
  bottom: 4vw;
  width: 42.9vw;
  z-index: 2;
}
.manufacturing .window-light {
  z-index: 3;
  display: block;
  position: absolute;
  background: #93A9FF;
  animation: window-light 5s infinite linear;
  opacity: 0;
}
.manufacturing .window-light.size-1 {
  width: 0.6vw;
  height: 0.8vw;
}
.manufacturing .window-light.w-1 {
  bottom: 16.4vw;
  left: 67.6vw;
  animation-delay: 0s;
}
.manufacturing .window-light.w-2 {
  bottom: 15.4vw;
  left: 71.2vw;
  animation-delay: 2s;
}
.manufacturing .window-light.w-3 {
  bottom: 14.2vw;
  left: 69.1vw;
  animation-delay: 4s;
}
.manufacturing .window-light.w-4 {
  bottom: 13vw;
  left: 70.6vw;
  animation-delay: 3s;
}
.manufacturing .window-light.w-5 {
  bottom: 12vw;
  left: 69.6vw;
  animation-delay: 1s;
}
.manufacturing .window-light.size-2 {
  width: 0.8vw;
  height: 1vw;
}
.manufacturing .window-light.w-6 {
  bottom: 9.5vw;
  left: 66vw;
  animation-delay: 1s;
}
.manufacturing .window-light.w-7 {
  bottom: 9.5vw;
  left: 71vw;
  animation-delay: 3s;
}
.manufacturing .window-light.w-8 {
  bottom: 8.5vw;
  left: 68.9vw;
  animation-delay: 0s;
}
.manufacturing .window-light.w-9 {
  bottom: 8.5vw;
  left: 73vw;
  animation-delay: 2s;
}
.manufacturing .window-light.size-3 {
  width: 3vw;
  height: 0.8vw;
}
.manufacturing .window-light.w-10 {
  bottom: 11.6vw;
  left: 60.6vw;
  animation-delay: 3s;
}
.manufacturing .window-light.w-11 {
  bottom: 8.4vw;
  left: 60.6vw;
  animation-delay: 1s;
}
.manufacturing .window-light.w-12 {
  bottom: 6.3vw;
  left: 60.6vw;
  animation-delay: 4s;
}
.manufacturing .window-light.w-13 {
  bottom: 14.8vw;
  left: 60.6vw;
  animation-delay: 0s;
}
.manufacturing .window-light.size-4 {
  width: 2.8vw;
  height: 0.8vw;
}
.manufacturing .window-light.w-14 {
  bottom: 10.8vw;
  left: 51.6vw;
  animation-delay: 1.5s;
}
.manufacturing .window-light.w-15 {
  bottom: 6.7vw;
  left: 51.6vw;
  animation-delay: 0s;
}
.manufacturing .window-light.w-16 {
  bottom: 8.4vw;
  left: 51.6vw;
  animation-delay: 2.5s;
}
.manufacturing .window-light.size-5 {
  width: 3vw;
  height: 0.6vw;
  background: #62D84E;
}
.manufacturing .window-light.w-17 {
  bottom: 5.9vw;
  left: 46vw;
  animation-delay: 0s;
}
@keyframes window-light {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  60% {
    opacity: 0;
  }
}

.retail .boat {
  position: absolute;
  width: 9.5vw;
  bottom: 1.4vw;
  right: 10vw;
  animation: boat 19s infinite linear;
  z-index: 6;
}
@keyframes boat {
  0% {
    transform: translateX(10vw) rotate(2deg);
  }
  25% {
    transform: translateX(-25vw) rotate(-2deg);
  }
  50% {
    transform: translateX(-50vw) rotate(2deg);
  }
  75% {
    transform: translateX(-75vw) rotate(-2deg);
  }
  100% {
    transform: translateX(-100vw) rotate(2deg);
  }
}
.retail .bubble {
  position: absolute;
  width: 2.5vw;
  bottom: 8vw;
  left: 34.9vw;
  animation: bubble 12s infinite linear;
  z-index: 2;
}
@keyframes bubble {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  15% {
    opacity: 0;
    transform: translateY(20px);
  }
  20% {
    opacity: 1;
    transform: translateY(0px);
  }
  70% {
    opacity: 1;
    transform: translateY(0px);
  }
  75%, 100% {
    opacity: 0;
    transform: translateY(20px);
  }
}
.retail .basket {
  position: absolute;
  width: 2vw;
  bottom: 5.5vw;
  left: 55vw;
  animation: basket 2s infinite linear;
  z-index: 8;
}
@keyframes basket {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(10px);
  }
  100% {
    transform: translateY(0px);
  }
}
.retail .tag, .retail .tick, .retail .speech {
  position: absolute;
  width: 1.2vw;
  animation: circles 10s infinite linear;
  z-index: 2;
  opacity: 0;
  transform: translateY(0px);
}
.retail .tick {
  bottom: 18.7vw;
  left: 75.8vw;
}
.retail .tag {
  bottom: 19.5vw;
  left: 77vw;
  animation-delay: 3.3s;
}
.retail .speech {
  bottom: 18vw;
  left: 77vw;
  animation-delay: 6.6s;
}
@keyframes circles {
  0% {
    opacity: 0;
    transform: translateY(0px);
  }
  5% {
    opacity: 1;
    transform: translateY(0px);
  }
  25% {
    opacity: 1;
    transform: translateY(0px);
  }
  30%, 100% {
    opacity: 0;
    transform: translateY(0px);
  }
}
.retail .bird, .retail .bird2 {
  position: absolute;
  width: 1.5vw;
  bottom: 25vw;
  left: -6vw;
  animation: bird 24s infinite linear;
  offset-path: path("M.098 99.6c1012.938-201.221 1920-33.621 2220-33.621");
  z-index: 2;
}
.retail .bird img, .retail .bird2 img {
  width: 100%;
}
.retail .bird2 {
  animation-delay: 12s;
  bottom: 35vw;
}
@keyframes bird {
  100% {
    motion-offset: 100%;
    offset-distance: 100%;
  }
}
.retail .escalator, .retail .escalator2, .retail .escalator3 {
  position: absolute;
  width: 1.35vw;
  bottom: 7.8vw;
  left: 18.5vw;
  animation: escalator 15s infinite linear;
  z-index: 2;
}
.retail .escalator2 {
  animation-delay: 5s;
  opacity: 0;
}
.retail .escalator3 {
  animation-delay: 10s;
  opacity: 0;
}
@keyframes escalator {
  0% {
    transform: translate(0vw, 0vw);
    opacity: 1;
  }
  25% {
    transform: translate(-4.5vw, -4.65vw);
  }
  33%, 100% {
    transform: translate(-7.7vw, -4.65vw);
    opacity: 1;
  }
}
.retail .hotspots.bg-lightblue {
  left: 54vw;
  bottom: 16vw;
}
.retail .hotspots.bg-midblue {
  bottom: 18vw;
  left: 79vw;
}

.technology .background {
  width: 100vw;
}
.technology .drone {
  position: absolute;
  width: 4vw;
  bottom: 16.8vw;
  left: 45vw;
  z-index: 1;
  opacity: 0;
  animation: drone 15s infinite linear;
  animation-delay: 1s;
  offset-path: path("M0 0c7-31.361 31.925-146.266 155.158-169.888C309.003-19.271 217.944 49.877 587.7 26.95 874.925.85 1035.41 2.4 1177.785 7.904c328.957 12.715 540.5 89.051 540.5 89.051");
  offset-rotate: 0deg;
}
@keyframes drone {
  5% {
    opacity: 1;
    transform: translateY(0);
    motion-offset: 0%;
    offset-distance: 0%;
  }
  25% {
    opacity: 1;
    transform: translateY(0px);
    motion-offset: 0%;
    offset-distance: 0%;
  }
  50% {
    opacity: 1;
    transform: translateY(-200px);
  }
  100% {
    opacity: 1;
    transform: translateY(-200px);
    motion-offset: 100%;
    offset-distance: 100%;
  }
}
.technology .bridge-left {
  width: 17vw;
  bottom: 7vw;
}
.technology .bridge-right {
  width: 23.5vw;
  z-index: 1;
}
.technology .right-people {
  position: absolute;
  z-index: 5;
  width: 20vw;
  bottom: 19.5vw;
  left: 77vw;
}
.technology .left-people {
  position: absolute;
  z-index: 5;
  width: 13vw;
  left: 2vw;
  bottom: 25.9vw;
}
.technology .bus {
  position: absolute;
  z-index: 2;
  width: 5.8vw;
  left: 75.2vw;
  bottom: 3vw;
  animation: car 6s infinite ease-in-out;
}
@keyframes car {
  0% {
    transform: translateX(0vw);
  }
  80% {
    transform: translateX(26vw);
  }
  100% {
    transform: translateX(26vw);
  }
}
.technology .large-bar {
  position: absolute;
  width: 1.5vw;
  z-index: 5;
  bottom: 26.1vw;
  left: 21.3vw;
  animation: signal-outer-bar 4s infinite linear;
}
.technology .small-bar {
  position: absolute;
  width: 1vw;
  z-index: 5;
  bottom: 26.9vw;
  left: 20.75vw;
  animation: signal-inner 4s infinite linear;
}
.technology .signal-dots {
  position: absolute;
  width: 3.8vw;
  z-index: 5;
  bottom: 14.6vw;
  left: 81.75vw;
  animation: signal-dots 4s infinite linear;
}
.technology .signal-inner {
  position: absolute;
  width: 5.1vw;
  z-index: 5;
  bottom: 14.09vw;
  left: 81.1vw;
  animation: signal-inner 4s infinite linear;
}
.technology .signal-outer {
  position: absolute;
  width: 6.5vw;
  z-index: 5;
  bottom: 13.6vw;
  left: 80.45vw;
  animation: signal-outer 4s infinite linear;
}
@keyframes signal-dots {
  25% {
    opacity: 1;
  }
  35%, 100% {
    opacity: 0;
  }
}
@keyframes signal-inner {
  45% {
    opacity: 1;
  }
  55%, 100% {
    opacity: 0;
  }
}
@keyframes signal-outer {
  65% {
    opacity: 1;
    transform: scale(1);
  }
  75% {
    opacity: 1;
    transform: scale(1.15);
  }
  85%, 100% {
    opacity: 0;
    transform: scale(1.3);
  }
}
@keyframes signal-outer-bar {
  65% {
    opacity: 1;
    transform: translateX(0);
  }
  75% {
    opacity: 1;
    transform: translateX(10px);
  }
  85%, 100% {
    opacity: 0;
    transform: translateX(16px);
  }
}
.technology .padlock {
  position: absolute;
  width: 1.45vw;
  z-index: 3;
  left: 57.7vw;
  bottom: 24.5vw;
  animation: pulse 1s infinite ease-in-out;
}
.technology .step1, .technology .step2, .technology .step3, .technology .step4, .technology .step5 {
  position: absolute;
  width: 2vw;
  z-index: 3;
  animation: steps 5s infinite ease-in-out;
  left: 4.5vw;
  opacity: 0;
  animation-delay: 2s !important;
}
.technology .step1 {
  bottom: 9.57vw;
  animation: step1 5s infinite ease-in-out;
}
.technology .step2 {
  bottom: 11.5vw;
  animation: step2 5s infinite ease-in-out;
}
.technology .step3 {
  bottom: 13.48vw;
  animation: step3 5s infinite ease-in-out;
}
.technology .step4 {
  bottom: 15.26vw;
  animation: step4 5s infinite ease-in-out;
}
.technology .step5 {
  bottom: 17.08vw;
  animation: step5 5s infinite ease-in-out;
}
@keyframes step1 {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes step2 {
  10% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes step3 {
  20% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes step4 {
  30% {
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes step5 {
  40% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
.technology .cog {
  position: absolute;
  width: 1.9vw;
  bottom: 15vw;
  left: 45.3vw;
  z-index: 3;
  animation: cog 10s infinite linear;
}
.technology .cog.two {
  width: 1.4vw;
  bottom: 14.5vw;
  left: 44.25vw;
  animation-direction: reverse;
}
.technology .cog.three {
  width: 1vw;
  bottom: 13.85vw;
  left: 45.2vw;
}
@keyframes cog {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.technology .hotspots.bg-green {
  bottom: 17vw;
}
.technology .hotspots.bg-darkgreen {
  left: 25vw;
  bottom: 24vw;
}
.technology .hotspots.bg-grey {
  left: 33.8vw;
  bottom: 10vw;
}
.technology .hotspots.bg-lightblue {
  left: 55.5vw;
  bottom: 15.5vw;
}

.energyUtilities .background {
  width: 100vw;
}
.energyUtilities .turbine {
  position: absolute;
  width: 18vw;
  bottom: 16vw;
  left: 35vw;
  z-index: 3;
  animation: spin 2s infinite linear;
}
.energyUtilities .turbine.two {
  width: 10vw;
  bottom: 15vw;
  left: 0.249vw;
  z-index: 3;
  animation: spin 2.5s infinite linear;
}
.energyUtilities .turbine.three {
  width: 8.5vw;
  bottom: 12.1vw;
  left: 44.95vw;
  z-index: 3;
  animation: spin 2.8s infinite linear;
}
.energyUtilities .turbine.four {
  width: 2.8vw;
  bottom: 9.9vw;
  left: 68.94vw;
  z-index: 3;
  animation: spin 4s infinite linear;
}
.energyUtilities .turbine.five {
  width: 2.8vw;
  bottom: 8.8vw;
  left: 66.45vw;
  z-index: 3;
  animation: spin 4s infinite linear;
}
@keyframes spin {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
.energyUtilities .bridge {
  position: absolute;
  width: 19.6vw;
  bottom: 0vw;
  left: 62.1vw;
  z-index: 3;
}
.energyUtilities .people {
  position: absolute;
  width: 11vw;
  bottom: 7.2vw;
  left: 64vw;
  z-index: 3;
}
.energyUtilities .plants {
  position: absolute;
  width: 3vw;
  bottom: 7.25vw;
  left: 77vw;
  z-index: 3;
}
.energyUtilities .bulb-bg {
  position: absolute;
  width: 4vw;
  bottom: 13.65vw;
  left: 14.77vw;
  z-index: 1;
  animation: bulb 2s infinite;
}
.energyUtilities .bulb-bg.two {
  left: 34.34vw;
  width: 4.7vw;
  animation-delay: 0.95s;
}
@keyframes bulb {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(0.95);
  }
  100% {
    transform: scale(1);
  }
}
.energyUtilities #svg {
  position: absolute;
  width: 9vw;
  bottom: 22.9vw;
  left: 90.9vw;
  z-index: 3;
}
.energyUtilities .bulb {
  position: absolute;
  width: 2vw;
  bottom: 21vw;
  left: 90vw;
  z-index: 3;
  animation: 1s fadeIn linear forwards, 1.5s pulse infinite linear;
  animation-delay: 2s;
  opacity: 0;
}
@keyframes fadeIn {
  100% {
    opacity: 1;
  }
}
.energyUtilities .window-light {
  z-index: 0;
  display: block;
  position: absolute;
  background: #93A9FF;
  animation: window-light 5s infinite linear;
  opacity: 0;
  width: 3vw;
  height: 0.8vw;
}
.energyUtilities .window-light.w-1 {
  bottom: 11.4vw;
  left: 35.1vw;
  animation-delay: 0s;
}
.energyUtilities .window-light.w-2 {
  bottom: 10.27vw;
  left: 35.1vw;
  animation-delay: 1.5s;
}
.energyUtilities .window-light.w-3 {
  bottom: 7.1vw;
  left: 35.1vw;
  animation-delay: 3s;
}
.energyUtilities .window-light.w-4 {
  bottom: 9.25vw;
  left: 35.1vw;
  animation-delay: 3.7s;
}
.energyUtilities .window-light.w-5 {
  bottom: 5vw;
  left: 35.1vw;
  animation-delay: 4.6s;
}
@keyframes window-light {
  0% {
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  60% {
    opacity: 0;
  }
}
.energyUtilities .hotspots.bg-darkgreen {
  left: 67vw;
  bottom: 20vw;
}
.energyUtilities .hotspots.bg-grey {
  left: 22vw;
  bottom: 15vw;
}
.energyUtilities .hotspots.bg-lightblue {
  left: 56vw;
}
.energyUtilities .hotspots.bg-midblue {
  bottom: 17vw;
}

.operate.scene {
  background: linear-gradient(0deg, #fff 0%, #a0dcff 100%) no-repeat;
}
.operate .background {
  width: 100vw;
}
.operate .bush {
  width: 16.5vw;
  position: absolute;
  right: 0;
  bottom: -0.2vw;
  z-index: 2;
}
.operate .train {
  width: 45vw;
  position: absolute;
  left: -46vw;
  bottom: 2.1vw;
  z-index: 1;
  animation: train 14s infinite linear;
}
@keyframes train {
  0% {
    transform: translateX(0);
  }
  80%, 100% {
    transform: translateX(150vw);
  }
}
.operate .data-waves {
  width: 2.5vw;
  bottom: 23vw;
  left: 52.8vw;
  position: absolute;
  z-index: 1;
}
.operate .data-waves .wave1, .operate .data-waves .wave2, .operate .data-waves .wave3, .operate .data-waves .wave4 {
  fill: none;
  stroke: #62d84e;
  stroke-linecap: round;
  stroke-miterlimit: 10;
  stroke-width: 6px;
  opacity: 1;
}
.operate .chopper {
  width: 4vw;
  position: absolute;
  bottom: 21.8vw;
  left: 92vw;
  z-index: 1;
  animation: chopper 24s ease infinite;
  offset-path: path("m 0 0 c 0 -120 -2108 -777 -448 -738 h 695 c 405 26 -244 550 -247 739 z");
  offset-rotate: 0deg;
}
@keyframes chopper {
  0%, 10% {
    motion-offset: 0%;
    offset-distance: 0%;
  }
  100% {
    motion-offset: 100%;
    offset-distance: 100%;
  }
}
.operate .typing {
  width: 2.65vw;
  bottom: 10.5vw;
  left: 70.65vw;
  position: absolute;
  z-index: 2;
}
.operate .typing2 {
  width: 2vw;
  bottom: 18.85vw;
  left: 68.35vw;
  position: absolute;
  z-index: 2;
}
.operate .typing3 {
  width: 2vw;
  bottom: 24.95vw;
  left: 66.45vw;
  position: absolute;
  z-index: 2;
}
.operate .pie {
  width: 1.1vw;
  bottom: 12.65vw;
  left: 74.45vw;
  position: absolute;
  z-index: 2;
}
.operate .smoke {
  width: 2.2vw;
  bottom: 18.7vw;
  left: 13.55vw;
  position: absolute;
  animation: smoke 10s infinite linear;
  opacity: 0;
}
@keyframes smoke {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  40% {
    opacity: 0.4;
  }
  50% {
    opacity: 1;
  }
  65% {
    opacity: 1;
  }
  85% {
    opacity: 0;
  }
}
.operate .star {
  width: 0.85vw;
  bottom: 9.55vw;
  left: 13.55vw;
  position: absolute;
  animation: star 8s infinite linear;
  opacity: 0;
  z-index: 1;
}
.operate .star.one {
  animation-name: starone;
}
.operate .star.two {
  left: 14.65vw;
  animation-name: startwo;
}
.operate .star.three {
  left: 15.8vw;
  animation-name: starthree;
}
@keyframes starone {
  5% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  85% {
    opacity: 1;
  }
  95% {
    opacity: 0;
  }
}
@keyframes startwo {
  20% {
    opacity: 0;
  }
  35% {
    opacity: 1;
  }
  85% {
    opacity: 1;
  }
  95% {
    opacity: 0;
  }
}
@keyframes starthree {
  35% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  85% {
    opacity: 1;
  }
  95% {
    opacity: 0;
  }
}
.operate .connected-waves {
  width: 5vw;
  left: 22.75vw;
  bottom: 34.7vw;
  position: absolute;
  z-index: 1;
}
.operate .connected-waves defs linearGradient .stopone {
  animation: waves1 3s linear infinite;
}
.operate .connected-waves defs linearGradient .stoptwo {
  animation: waves2 3s linear infinite;
}
.operate .connected-waves defs linearGradient .stopthree {
  animation: waves3 3s linear infinite;
}
@keyframes waves1 {
  0% {
    stop-color: #6ee190;
  }
  25% {
    stop-color: #23c2ce;
  }
  50% {
    stop-color: #23c2ce;
  }
  75% {
    stop-color: #6ee190;
  }
  100% {
    stop-color: #6ee190;
  }
}
@keyframes waves2 {
  0% {
    stop-color: #6ee190;
  }
  25% {
    stop-color: #6ee190;
  }
  50% {
    stop-color: #23c2ce;
  }
  75% {
    stop-color: #23c2ce;
  }
  100% {
    stop-color: #6ee190;
  }
}
@keyframes waves3 {
  0% {
    stop-color: #23c2ce;
  }
  25% {
    stop-color: #6ee190;
  }
  50% {
    stop-color: #6ee190;
  }
  75% {
    stop-color: #23c2ce;
  }
  100% {
    stop-color: #23c2ce;
  }
}
.operate .links-con {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(50%, -50%);
}
.operate .links {
  position: relative;
  top: auto;
  right: auto;
  bottom: auto;
  margin-bottom: 10px;
  display: block;
}
.operate .links .circle {
  min-width: 35px;
  min-height: 35px;
  width: 3vw;
  height: 3vw;
}
.operate .links .type {
  border-radius: 15px 0 0 15px/50%;
}
@media (max-width: 1200px) {
  .operate .links .type {
    border-radius: 10px 0 0 10px/50%;
    padding-left: 10px;
  }
}

.manufacturing-v2 .background {
  width: 100vw;
}
.manufacturing-v2 .windows {
  position: absolute;
  bottom: 40vw;
  right: 2vw;
  width: 28vw;
  z-index: 2;
}
@media (max-width: 1200px) {
  .manufacturing-v2 .windows {
    display: none;
  }
}
.manufacturing-v2 .man {
  position: absolute;
  bottom: -0.5vw;
  left: 17vw;
  width: 9vw;
  z-index: 2;
}
.manufacturing-v2 #desk {
  position: absolute;
  bottom: 4.75vw;
  left: 1vw;
  width: 34vw;
  z-index: 2;
}
.manufacturing-v2 #head {
  position: absolute;
  bottom: 17vw;
  left: 5.8vw;
  width: 2.8vw;
  z-index: 2;
}
.manufacturing-v2 #arm {
  position: absolute;
  bottom: 14.8vw;
  left: 23vw;
  width: 11vw;
  z-index: 2;
}
.manufacturing-v2 #arm2 {
  position: absolute;
  bottom: 13vw;
  left: 30.65vw;
  width: 15.6vw;
  z-index: 2;
}
.manufacturing-v2 #conveyor_1 {
  position: absolute;
  bottom: 9.5vw;
  left: 77.5vw;
  width: 45vw;
  z-index: 2;
}
.manufacturing-v2 .spot-1 {
  background: #FBB423;
  left: 11vw;
  bottom: 21vw;
}
.manufacturing-v2 .spot-2 {
  background: #cdcdcd;
  left: 43vw;
  bottom: 23vw;
}
.manufacturing-v2 .spot-3 {
  background: #052136;
  left: 48vw;
  bottom: 4vw;
  color: white;
}
.manufacturing-v2 .spot-4 {
  background: #62D84E;
  left: 71vw;
  bottom: 24vw;
}
.manufacturing-v2 .spot-5 {
  background: #23C2CE;
  left: 88vw;
  bottom: 6.2vw;
  color: white;
}
.manufacturing-v2 .spot-6 {
  background: #5274FF;
  left: 15vw;
  bottom: 5vw;
  color: white;
}
.manufacturing-v2 .spot-7 {
  background: #cdcdcd;
  left: 88vw;
  bottom: 35vw;
}
.manufacturing-v2 .wheel {
  animation: rotate ease-in-out 6s infinite;
  position: absolute;
  bottom: 24.5vw;
  left: 58.1vw;
  width: 3vw;
  z-index: 3;
}
@keyframes rotate {
  100% {
    transform: rotate(1800deg);
  }
}
.manufacturing-v2 .hours {
  position: absolute;
  bottom: 18.63vw;
  left: 1.86vw;
  width: 1.4vw;
  z-index: 3;
  animation: clock 60s linear infinite;
}
.manufacturing-v2 .mins {
  position: absolute;
  bottom: 18.63vw;
  left: 1.86vw;
  width: 1.4vw;
  z-index: 3;
  animation: clock 5s linear infinite;
}
@keyframes clock {
  100% {
    transform: rotate(360deg);
  }
}

.retail-v2.scene {
  background: linear-gradient(#febd5e 0%, #ffef86 70%) !important;
  min-height: 54vw;
}
.retail-v2 .intro h1, .retail-v2 .intro h2, .retail-v2 .intro p, .retail-v2 .copy h1, .retail-v2 .copy h2, .retail-v2 .copy p {
  color: #052136 !important;
}
.retail-v2 .background {
  width: 100vw;
}
.retail-v2 .bar-one {
  position: absolute;
  bottom: 16.8vw;
  left: 49.8vw;
  z-index: 2;
}
.retail-v2 .bar-one svg {
  width: 5.2vw;
}
.retail-v2 .bar-two {
  position: absolute;
  bottom: 17.1vw;
  left: 68.8vw;
  z-index: 2;
}
.retail-v2 .bar-two svg {
  width: 6.9vw;
}
.retail-v2 #woman {
  position: absolute;
  bottom: 6vw;
  left: 38vw;
  width: 7.5vw;
  z-index: 1;
}
.retail-v2 #trolleys {
  position: absolute;
  bottom: 3vw;
  left: 0vw;
  width: 100vw;
  z-index: 1;
}
.retail-v2 .wall {
  position: absolute;
  bottom: 4vw;
  right: 0;
  width: 22vw;
  z-index: 0;
}
.retail-v2 #window {
  position: absolute;
  bottom: 18.4vw;
  left: 80vw;
  width: 11vw;
  z-index: 0;
}
.retail-v2 .lights {
  position: absolute;
  top: 3vw;
  left: 50vw;
  width: 36vw;
  z-index: 1;
}
@media (max-width: 1200px) {
  .retail-v2 .lights {
    bottom: 20vw;
    top: auto;
  }
}
.retail-v2 .basket {
  position: absolute;
  bottom: 0vw;
  left: 3vw;
  width: 9vw;
  z-index: 2;
}
.retail-v2 .spot-1 {
  background: #cdcdcd;
  left: 4vw;
  bottom: 19vw;
}
.retail-v2 .spot-2 {
  background: linear-gradient(#23c2ce, #6ee190);
  left: 24vw;
  bottom: 19vw;
}
.retail-v2 .spot-3 {
  background: #FBB423;
  left: 41vw;
  bottom: 28.5vw;
}
.retail-v2 .spot-4 {
  background: #028eb5;
  left: 64vw;
  bottom: 9vw;
  color: white;
}
.retail-v2 .spot-5 {
  background: #052136;
  left: 88vw;
  bottom: 17vw;
  color: white;
}
.retail-v2 .spot-6 {
  background: #62D84E;
  left: 47vw;
  bottom: 6vw;
}
.retail-v2 .spot-7 {
  background: #cdcdcd;
  left: 88vw;
  bottom: 35vw;
}
.retail-v2 .jar {
  position: absolute;
  left: 63.8vw;
  bottom: 28.18vw;
  width: 1.7vw;
  z-index: 2;
  opacity: 0;
  animation: jar-one 7s infinite;
}
.retail-v2 .jar.two {
  left: 65.7vw;
  animation-name: jar-two;
}
.retail-v2 .jar.three {
  left: 67.6vw;
  animation-name: jar-three;
}
.retail-v2 .jar.four {
  left: 69.5vw;
  animation-name: jar-four;
}
.retail-v2 .jar.five {
  left: 71.4vw;
  animation-name: jar-five;
}
@keyframes jar-one {
  0% {
    opacity: 0;
  }
  10%, 80% {
    opacity: 1;
  }
  90% {
    opacity: 0;
  }
}
@keyframes jar-two {
  10% {
    opacity: 0;
  }
  20%, 80% {
    opacity: 1;
  }
  90% {
    opacity: 0;
  }
}
@keyframes jar-three {
  20% {
    opacity: 0;
  }
  30%, 80% {
    opacity: 1;
  }
  90% {
    opacity: 0;
  }
}
@keyframes jar-four {
  30% {
    opacity: 0;
  }
  40%, 80% {
    opacity: 1;
  }
  90% {
    opacity: 0;
  }
}
@keyframes jar-five {
  40% {
    opacity: 0;
  }
  50%, 80% {
    opacity: 1;
  }
  90% {
    opacity: 0;
  }
}

.banking-v2.scene {
  background: linear-gradient(#8be198 0%, #75d8df 70%) !important;
}
@media (max-width: 991px) {
  .banking-v2.scene {
    padding-bottom: 65vw;
  }
}
.banking-v2 .intro, .banking-v2 .copy {
  width: 100% !important;
  position: relative !important;
  top: auto !important;
  left: auto !important;
}
.banking-v2 .intro h1, .banking-v2 .intro h2, .banking-v2 .intro p, .banking-v2 .copy h1, .banking-v2 .copy h2, .banking-v2 .copy p {
  color: #052136 !important;
}
@media (min-width: 991px) and (orientation: landscape) {
  .banking-v2 .text-con {
    position: absolute;
    left: calc(0% + 2.22rem);
    top: 6.6666666667rem;
    width: 30% !important;
  }
}
.banking-v2 .text-con .intro {
  margin-bottom: 1rem;
}
.banking-v2 .copy p {
  font-size: 0.9166666667rem;
}
@media (max-width: 1450px) {
  .banking-v2 .copy p {
    font-size: 1.05rem;
  }
}
@media (max-width: 1200px) {
  .banking-v2 .copy p {
    font-size: 1.1rem;
  }
}
@media (max-width: 991px) {
  .banking-v2 .copy {
    width: 100% !important;
    left: 0 !important;
  }
}
.banking-v2 .your-bank {
  color: #01548f;
  z-index: 2;
  position: absolute;
  left: 1vw;
  bottom: 22.95vw;
  font-family: "Gilroy Bold";
  font-size: 2.7vw;
  text-align: center;
  width: 18.5vw;
}
.banking-v2 .background {
  width: 100vw;
}
.banking-v2 #bars {
  position: absolute;
  bottom: 8vw;
  bottom: 7.1vw;
  left: 22vw;
  width: 18.2vw;
  z-index: 1;
}
.banking-v2 #screen {
  position: absolute;
  bottom: 8vw;
  left: 78.5vw;
  width: 4.3vw;
  z-index: 1;
}
.banking-v2 #doors {
  position: absolute;
  bottom: 10vw;
  left: 0vw;
  width: 20vw;
  z-index: 1;
}
.banking-v2 #cloud {
  position: absolute;
  bottom: 28.89vw;
  left: 20.3vw;
  width: 41.5vw;
  z-index: 1;
}
.banking-v2 #desks {
  position: absolute;
  bottom: 3vw;
  left: -9.5vw;
  width: 37vw;
  z-index: 2;
}
.banking-v2 #big-bar {
  position: absolute;
  bottom: 15.19vw;
  left: 56.2vw;
  width: 6.95vw;
  z-index: 2;
}
.banking-v2 #escalator {
  position: absolute;
  bottom: 50.7vw;
  left: -3vw;
  width: 52vw;
  z-index: 2;
  display: none;
}
.banking-v2 #bubbles {
  position: absolute;
  bottom: 107vw;
  left: 69vw;
  width: 27vw;
  z-index: 2;
  display: none;
}
.banking-v2 .hotspots {
  font-size: 1rem;
}
.banking-v2 .spot-1 {
  background: #FBB423;
  left: 10vw;
  bottom: 6vw;
}
.banking-v2 .spot-2 {
  background: #052136;
  left: 40vw;
  bottom: 32vw;
  color: white;
}
.banking-v2 .spot-3 {
  background: #93A9FF;
  left: 39vw;
  bottom: 18.5vw;
}
.banking-v2 .spot-4 {
  background: #62D84E;
  left: 68.5vw;
  bottom: 34vw;
}
.banking-v2 .spot-5 {
  background: #85dfab;
  left: 88vw;
  bottom: 6.2vw;
}
.banking-v2 .spot-6 {
  background: #5274FF;
  left: 14vw;
  bottom: 27vw;
  color: white;
}
.banking-v2 .spot-7 {
  background: #cdcdcd;
  left: 88vw;
  bottom: 35vw;
}
.banking-v2 .portrait {
  display: none;
}
@media (orientation: portrait) {
  .banking-v2 .text-con {
    margin-top: 3vw;
  }
  .banking-v2 .text-con .intro h1 {
    font-size: 3.5vw;
    margin-bottom: 2vw;
  }
  .banking-v2 .text-con .intro h2 {
    font-size: 3.5vw;
    margin-bottom: 2vw;
  }
  .banking-v2 .text-con .copy p {
    font-size: 2.4vw;
    margin-bottom: 3vw;
  }
  .banking-v2.scene {
    height: auto;
    min-height: 100%;
    padding-bottom: 140vw !important;
  }
  .banking-v2 .landscape {
    display: none;
  }
  .banking-v2 .portrait {
    display: block;
  }
  .banking-v2 #escalator, .banking-v2 #bubbles {
    display: block;
  }
  .banking-v2 #screen, .banking-v2 #bars {
    display: none;
  }
  .banking-v2 #big-bar {
    bottom: 59vw;
    left: 93vw;
    width: 10vw;
  }
  .banking-v2 #doors {
    bottom: 11.4vw;
    left: 0vw;
    width: 52.8vw;
  }
  .banking-v2 #cloud {
    bottom: 91.2vw;
    left: -33.5vw;
    width: 88vw;
  }
  .banking-v2 #desks {
    bottom: 7vw;
    left: -3vw;
    width: 65vw;
  }
  .banking-v2 #desks #desks-s-g15 {
    display: none;
  }
  .banking-v2 .hotspots {
    width: 14vw !important;
    height: 14vw !important;
    font-size: 2vw;
    border-radius: 100% !important;
    position: absolute !important;
  }
  .banking-v2 .hotspots.spot-1 {
    left: 13vw !important;
    bottom: 58vw !important;
  }
  .banking-v2 .hotspots.spot-2 {
    left: 4vw !important;
    bottom: 114vw !important;
  }
  .banking-v2 .hotspots.spot-3 {
    left: 59vw !important;
    bottom: 62vw !important;
  }
  .banking-v2 .hotspots.spot-4 {
    left: 55vw !important;
    bottom: 108vw !important;
  }
  .banking-v2 .hotspots.spot-5 {
    left: 55vw !important;
    bottom: 29vw !important;
  }
  .banking-v2 .hotspots.spot-6 {
    left: 5vw !important;
    bottom: 5vw !important;
  }
  .banking-v2 .your-bank {
    width: 51vw;
    font-size: 6.8vw;
    bottom: 45vw;
  }
}

.telco-v2.scene {
  background: linear-gradient(#febd5e 0%, #ffef86 70%) !important;
}
.telco-v2 .background {
  width: 100vw;
}
.telco-v2 .clouds {
  bottom: 34vw;
}
.telco-v2 .intro h1, .telco-v2 .intro p, .telco-v2 .copy h1, .telco-v2 .copy p {
  color: #052136 !important;
}
.telco-v2 .spot-1 {
  background: #FBB423;
  left: 5.5vw;
  bottom: 25vw;
}
.telco-v2 .spot-2 {
  background: linear-gradient(#23c2ce, #6ee190);
  left: 14vw;
  bottom: 16vw;
}
.telco-v2 .spot-3 {
  background: #cdcdcd;
  left: 46vw;
  bottom: 13vw;
}
.telco-v2 .spot-4 {
  background: #028eb5;
  left: 70.5vw;
  bottom: 29vw;
}
.telco-v2 .spot-5 {
  background: #62D84E;
  left: 76vw;
  bottom: 7.2vw;
}
.telco-v2 .spot-6 {
  background: #5274FF;
  left: 89vw;
  bottom: 21vw;
  color: white;
}
.telco-v2 .spot-7 {
  background: #cdcdcd;
  left: 88vw;
  bottom: 35vw;
}
.telco-v2 #pylon-bars {
  position: absolute;
  bottom: 26.7vw;
  left: 81.5vw;
  width: 6vw;
  z-index: 1;
}
.telco-v2 #lines {
  position: absolute;
  bottom: 16vw;
  left: 54vw;
  width: 10.5vw;
  z-index: 1;
}
.telco-v2 #stars {
  position: absolute;
  bottom: 15.5vw;
  left: 21vw;
  width: 6.5vw;
  z-index: 1;
}
.telco-v2 #satalite {
  position: absolute;
  bottom: 34vw;
  left: 0vw;
  width: 100vw;
  z-index: 1;
}
.telco-v2 #van {
  position: absolute;
  bottom: 4vw;
  left: -12vw;
  width: 11vw;
  z-index: 2;
  animation: telcovan ease-in 17s infinite;
}
@keyframes telcovan {
  40%, 100% {
    left: 70vw;
  }
}
.telco-v2 #typing {
  position: absolute;
  bottom: 7.4vw;
  right: 0vw;
  width: 11vw;
  z-index: 4;
}
.telco-v2 .tunnel-over {
  width: 100vw;
  bottom: 0vw;
  left: 0;
  position: absolute;
  z-index: 3;
}
.telco-v2 .tunnel-black {
  width: 9.6vw;
  bottom: 6.25vw;
  left: 61.2vw;
  position: absolute;
  z-index: 1;
}
.telco-v2 .signal {
  width: 5vw;
}
.telco-v2 .signal-1 {
  z-index: 1;
  position: absolute;
  bottom: 13.5vw;
  right: 0.3vw;
}
.telco-v2 .signal-1 .signal {
  width: 10vw;
}
.telco-v2 .signal-1 * {
  animation-delay: 1.5s !important;
}
.telco-v2 .signal-2 {
  z-index: 1;
  position: absolute;
  bottom: 36.3vw;
  left: 64vw;
}
.telco-v2 .signal-2 * {
  animation-delay: 1s !important;
}
.telco-v2 .signal-3 {
  z-index: 1;
  position: absolute;
  bottom: 33.3vw;
  left: 29.5vw;
}
.telco-v2 .signal-4 {
  z-index: 1;
  position: absolute;
  bottom: 34.9vw;
  left: 12.4vw;
}
.telco-v2 .signal-4 * {
  animation-delay: 0.5s !important;
}

.tech-v2.scene {
  background: linear-gradient(#6ee190 0%, #23c2ce 70%) !important;
}
.tech-v2 .background {
  width: 100vw;
}
.tech-v2 .intro h1, .tech-v2 .intro p, .tech-v2 .copy h1, .tech-v2 .copy p {
  color: #052136 !important;
}
.tech-v2 .copy {
  width: 30%;
}
.tech-v2 .spot-1 {
  background: #dbef89;
  left: 8.5vw;
  bottom: 19vw;
}
.tech-v2 .spot-2 {
  background: #FBB423;
  left: 21vw;
  bottom: 5vw;
}
.tech-v2 .spot-3 {
  background: #cdcdcd;
  left: 42vw;
  bottom: 31vw;
}
.tech-v2 .spot-4 {
  background: #052136;
  color: white;
  left: 65vw;
  bottom: 7vw;
}
.tech-v2 .spot-5 {
  background: #62D84E;
  left: 79vw;
  bottom: 28vw;
}
.tech-v2 .spot-6 {
  background: #5274FF;
  left: 50vw;
  bottom: 17vw;
}
.tech-v2 .spot-7 {
  background: #cdcdcd;
  left: 88vw;
  bottom: 3vw;
}
.tech-v2 #servers {
  position: absolute;
  bottom: 10.8vw;
  left: 0vw;
  width: 95vw;
  z-index: 2;
}
.tech-v2 #shake {
  position: absolute;
  bottom: 0.6vw;
  left: 13.5vw;
  width: 7vw;
  z-index: 1;
}
.tech-v2 #secure-cloud {
  position: absolute;
  bottom: 2vw;
  left: 55.3vw;
  width: 27.1vw;
  z-index: 1;
}
.tech-v2 .frame {
  position: absolute;
  bottom: 24.9vw;
  left: 72.6vw;
  width: 22vw;
  z-index: 0;
}

.healthcare-v2.scene {
  background: #deefea !important;
}
.healthcare-v2 .background {
  width: 100vw;
  z-index: 0;
}
.healthcare-v2 .intro {
  width: 20%;
  font-size: 1.1111111111rem;
}
.healthcare-v2 .copy {
  left: calc(20% + 4.5rem);
  width: 20%;
}
.healthcare-v2 .copy p {
  font-size: 0.8888888889rem;
}
.healthcare-v2 .intro h1, .healthcare-v2 .intro p, .healthcare-v2 .copy h1, .healthcare-v2 .copy p {
  color: #052136 !important;
}
.healthcare-v2 .spot-1 {
  background: #FBB423;
  left: 7.7vw;
  bottom: 27vw;
}
.healthcare-v2 .spot-2 {
  background: #23C2CE;
  left: 41vw;
  bottom: 33vw;
}
.healthcare-v2 .spot-3 {
  background: #7eaad7;
  left: 29vw;
  bottom: 10vw;
}
.healthcare-v2 .spot-4 {
  background: #62d84e;
  left: 50vw;
  bottom: 17vw;
}
.healthcare-v2 .spot-5 {
  background: #dbdbdb;
  left: 79vw;
  bottom: 28vw;
}
.healthcare-v2 .spot-6 {
  background: #5274FF;
  left: 78vw;
  bottom: 4vw;
}
.healthcare-v2 .spot-7 {
  background: #cdcdcd;
  left: 5vw;
  bottom: 6vw;
}
.healthcare-v2 #doc {
  position: absolute;
  bottom: 21.5vw;
  left: 12.2vw;
  width: 12vw;
  z-index: 2;
}
.healthcare-v2 #nurse {
  position: absolute;
  bottom: 3vw;
  left: 32.5vw;
  width: 19.8vw;
  z-index: 2;
}
.healthcare-v2 #typing {
  position: absolute;
  bottom: 4vw;
  left: 56.7vw;
  width: 25vw;
  z-index: 2;
}
.healthcare-v2 #window {
  position: absolute;
  bottom: 10vw;
  left: 73vw;
  width: 32vw;
  z-index: 2;
}
.healthcare-v2 #phone {
  position: absolute;
  bottom: 30.8vw;
  left: 29.4vw;
  width: 14.5vw;
  z-index: 2;
  overflow: hidden;
}
.healthcare-v2 .light-plant {
  position: absolute;
  bottom: 2.5vw;
  left: 68vw;
  width: 32vw;
  z-index: 3;
}
.healthcare-v2 .curtain {
  position: absolute;
  bottom: 5.5vw;
  left: -14vw;
  width: 13vw;
  z-index: 3;
  animation: 15s curtain cubic-bezier(0.535, 0.37, 0.52, 1.14) infinite;
}
@keyframes curtain {
  5% {
    left: -14vw;
  }
  20%, 70% {
    left: 0;
  }
  85% {
    left: -14vw;
  }
}
@media (min-width: 991px) and (max-width: 1200px) {
  .healthcare-v2 .intro {
    left: calc(2.2rem);
    width: 16% !important;
  }
  .healthcare-v2 .intro h1 {
    font-size: 1.4rem !important;
  }
  .healthcare-v2 .copy {
    left: calc(16% + 4rem) !important;
    width: 25% !important;
  }
  .healthcare-v2 .copy p {
    font-size: 1.1rem !important;
  }
  .healthcare-v2 .spot-2 {
    left: 55vw;
  }
}
@media (max-width: 991px) {
  .healthcare-v2.scene {
    padding-bottom: 53vw !important;
  }
}

.landing-v2.scene {
  background: linear-gradient(#febd5e 0%, #ffef86 70%) !important;
}
.landing-v2 .background {
  width: 100vw;
}
.landing-v2 .background.one {
  bottom: 22.2vw;
  z-index: 1;
}
.landing-v2 .background.two {
  z-index: 2;
}
.landing-v2 .background.three {
  z-index: 3;
}
.landing-v2 .preload {
  display: none;
}
.landing-v2 .clouds {
  bottom: 42vw;
}
.landing-v2 .train {
  width: 47vw;
  position: absolute;
  left: -47vw;
  bottom: 18vw;
  z-index: 2;
  animation: train 15s infinite linear;
  animation-delay: 5s;
}
@keyframes train {
  0% {
    transform: translateX(0);
  }
  80%, 100% {
    transform: translateX(150vw);
  }
}
.landing-v2 #plane {
  width: 100vw;
  bottom: 20vw;
  position: absolute;
  left: 0vw;
}
.landing-v2 #mall-lights {
  width: 8vw;
  bottom: 14vw;
  position: absolute;
  left: 82.5vw;
  z-index: 3;
}
.landing-v2 #signal {
  width: 18vw;
  bottom: 38vw;
  position: absolute;
  left: 75.7vw;
}
.landing-v2 .bush {
  width: 8vw;
  top: 0vw;
  position: absolute;
  right: 0;
  z-index: 3;
}
.landing-v2 .hotspots {
  font-size: 1rem;
  text-decoration: none;
  width: 7.3888888889rem;
  height: 7.3888888889rem;
}
.landing-v2 .spot-tech {
  background: #ffdc76;
  left: 5vw;
  bottom: 25vw;
  animation-delay: 0.33s;
}
.landing-v2 .spot-insurance {
  background: #052136;
  left: 14vw;
  bottom: 34vw;
  color: white;
}
.landing-v2 .spot-banking {
  background: linear-gradient(90deg, #3d8aff 0%, #8e6fff 70%);
  left: 26vw;
  bottom: 29vw;
  animation-delay: 1.25s;
}
.landing-v2 .spot-healthcare {
  background: linear-gradient(0deg, #fff 0%, #9ed9f8 70%);
  left: 51vw;
  bottom: 15vw;
  animation-delay: 0.45s;
}
.landing-v2 .spot-publicSector {
  background: #c3e4cc;
  left: 16vw;
  bottom: 14vw;
  animation-delay: 0.75s;
}
.landing-v2 .spot-retail {
  background: #b4ebab;
  left: 74vw;
  bottom: 13vw;
}
.landing-v2 .spot-lifeScience {
  background: #62D84E;
  left: 59vw;
  bottom: 35vw;
  animation-delay: 1.5s;
}
.landing-v2 .spot-manufacturing {
  background: #23C2CE;
  left: 72vw;
  bottom: 28vw;
  animation-delay: 0.5s;
}
.landing-v2 .spot-telco {
  background: linear-gradient(90deg, #f6d720 0%, #fcae25 70%);
  left: 86vw;
  bottom: 30vw;
}
.landing-v2 .van {
  position: absolute;
  bottom: 21.5vw;
  left: -8vw;
  width: 7vw;
  z-index: 1;
  animation: van ease-in-out 15s infinite;
  animation-delay: 11s;
}
@keyframes van {
  65%, 90% {
    left: 80vw;
  }
  100% {
    left: 101vw;
  }
}

.insurance-v2.scene {
  background: #c8f0f3 !important;
}
.insurance-v2 .background {
  width: 100vw;
  z-index: 0;
}
.insurance-v2 .intro {
  width: 25%;
}
.insurance-v2 .intro h1 {
  color: #052136 !important;
  font-size: 1.3rem;
}
.insurance-v2 .copy {
  left: calc(24% + 5rem);
}
.insurance-v2 .spot-1 {
  background: #62d84e;
  left: 7vw;
  bottom: 14vw;
}
.insurance-v2 .spot-2 {
  background: #7185f2;
  left: 26vw;
  bottom: 29vw;
}
.insurance-v2 .spot-3 {
  background: #fbb423;
  left: 42vw;
  bottom: 16vw;
}
.insurance-v2 .spot-4 {
  background: #23C2CE;
  left: 53vw;
  bottom: 32vw;
  color: white;
}
.insurance-v2 .spot-5 {
  background: #eb7f88;
  left: 59vw;
  bottom: 16vw;
}
.insurance-v2 .spot-6 {
  background: #052136;
  left: 79vw;
  bottom: 23vw;
  color: white;
}
.insurance-v2 .spot-7 {
  background: #cdcdcd;
  left: 88vw;
  bottom: 35vw;
}
.insurance-v2 #speech {
  position: absolute;
  bottom: 27.6vw;
  left: 36.5vw;
  width: 9vw;
  z-index: 2;
}
.insurance-v2 #tick {
  position: absolute;
  bottom: 20.5vw;
  left: 77.5vw;
  width: 2vw;
  z-index: 2;
  animation: tick 4s infinite;
  animation-timing-function: cubic-bezier(0.28, 0.84, 0.42, 1);
}
@keyframes tick {
  0% {
    transform: translateY(0vw);
  }
  10% {
    transform: translateY(-0.5vw);
  }
  20% {
    transform: translateY(0vw);
  }
  40% {
    transform: translateY(-0.2vw);
  }
  60% {
    transform: translateY(0vw);
  }
}
.insurance-v2 #rating {
  position: absolute;
  bottom: 16vw;
  left: 15vw;
  width: 14vw;
  z-index: 2;
}
.insurance-v2 #laptop {
  position: absolute;
  bottom: -2vw;
  left: 45.5vw;
  width: 22vw;
  z-index: 2;
}
.insurance-v2 #charts {
  position: absolute;
  bottom: 25vw;
  left: 59.95vw;
  width: 17vw;
  z-index: 2;
}
.insurance-v2 #charts_1 {
  position: absolute;
  bottom: 14.7vw;
  left: 33.5vw;
  width: 10vw;
  z-index: 2;
}

.publicSector-v2.scene {
  background: linear-gradient(#febd5e 0%, #ffef86 70%) !important;
}
.publicSector-v2 .background {
  width: 100vw;
}
.publicSector-v2 .background.one {
  z-index: 1;
  bottom: -0.25vw;
}
.publicSector-v2 .background.two {
  z-index: 0;
  bottom: 16.5vw;
}
.publicSector-v2 .background.three {
  z-index: 4;
}
.publicSector-v2 .background.four {
  z-index: 6;
  bottom: 1vw;
}
.publicSector-v2 #plane {
  width: 100vw;
  bottom: 22vw;
  position: absolute;
  left: 0vw;
}
.publicSector-v2 #tracks {
  position: absolute;
  bottom: 0vw;
  left: -2.7vw;
  width: 107vw;
  z-index: 5;
}
.publicSector-v2 #bridge {
  position: absolute;
  bottom: 18.9vw;
  left: 0vw;
  width: 100vw;
  z-index: 3;
}
.publicSector-v2 .speech-green {
  position: absolute;
  bottom: 3.5vw;
  left: 58.5vw;
  width: 11vw;
  z-index: 6;
  opacity: 0;
  animation: speech-pub 20s infinite cubic-bezier(0.34, 1.56, 0.64, 1);
  animation-delay: 1.5s;
}
.publicSector-v2 .speech-yellow {
  position: absolute;
  bottom: 12.5vw;
  left: 1vw;
  width: 11vw;
  z-index: 6;
  opacity: 0;
  animation: speech-pub 20s infinite cubic-bezier(0.34, 1.56, 0.64, 1);
  animation-delay: 5s;
}
@keyframes speech-pub {
  0%, 25% {
    opacity: 0;
    transform: translateY(1vw);
  }
  30%, 70% {
    opacity: 1;
    transform: translateY(0);
  }
  80%, 100% {
    opacity: 0;
  }
}
.publicSector-v2 #typing {
  position: absolute;
  bottom: 0.5vw;
  left: 59vw;
  width: 8vw;
  z-index: 5;
}
.publicSector-v2 .clouds {
  bottom: 42vw;
}
.publicSector-v2 .ambo {
  position: absolute;
  bottom: 13vw;
  left: 100vw;
  width: 7vw;
  z-index: 5;
  animation: public-ambo ease-in 20s infinite;
}
.publicSector-v2 .police {
  position: absolute;
  bottom: 13vw;
  left: 100vw;
  width: 6vw;
  z-index: 5;
  animation: public-car ease-in 20s infinite;
  animation-delay: 10s;
}
@keyframes public-car {
  0%, 20% {
    left: 100vw;
  }
  40%, 70% {
    left: 77vw;
  }
  100% {
    left: 20vw;
  }
}
@keyframes public-ambo {
  0%, 20% {
    left: 100vw;
  }
  40%, 60% {
    left: 60vw;
  }
  80%, 100% {
    left: 20vw;
  }
}
.publicSector-v2 .clouds {
  bottom: 34vw;
}
.publicSector-v2 .intro h1, .publicSector-v2 .intro p, .publicSector-v2 .copy h1, .publicSector-v2 .copy p {
  color: #052136 !important;
}
.publicSector-v2 .intro h1 {
  font-size: 1rem;
}
.publicSector-v2 .copy p {
  font-size: 1rem;
}
.publicSector-v2 .traffic-light {
  border-radius: 500px;
  position: absolute;
  z-index: 7;
  left: 93.185vw;
  width: 0.31vw;
  height: 0.31vw;
}
.publicSector-v2 .traffic-light.red {
  background: #f5412f;
  bottom: 18.4vw;
  opacity: 0;
  animation: traffic-red 15s linear infinite;
}
.publicSector-v2 .traffic-light.green {
  background: #46c130;
  bottom: 17.5vw;
  opacity: 0;
  animation: traffic-green 15s linear infinite;
}
.publicSector-v2 .traffic-light.amber {
  background: #f6d02f;
  bottom: 17.98vw;
  opacity: 0;
  animation: traffic-amber 15s linear infinite;
}
@keyframes traffic-red {
  0% {
    opacity: 0;
  }
  40% {
    opacity: 0;
  }
  41% {
    opacity: 1;
  }
  79% {
    opacity: 1;
  }
  80% {
    opacity: 0;
  }
}
@keyframes traffic-amber {
  0% {
    opacity: 0;
  }
  29% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  39% {
    opacity: 1;
  }
  40% {
    opacity: 0;
  }
  80% {
    opacity: 0;
  }
  81% {
    opacity: 1;
  }
  89% {
    opacity: 1;
  }
  90% {
    opacity: 0;
  }
}
@keyframes traffic-green {
  0% {
    opacity: 1;
  }
  29% {
    opacity: 1;
  }
  30% {
    opacity: 0;
  }
  89% {
    opacity: 0;
  }
  90%, 100% {
    opacity: 1;
  }
}
.publicSector-v2 .spot-1 {
  background: #cdcdcd;
  left: 9.5vw;
  bottom: 14vw;
}
.publicSector-v2 .spot-2 {
  background: linear-gradient(#23c2ce, #6ee190);
  left: 46vw;
  bottom: 7vw;
}
.publicSector-v2 .spot-3 {
  background: #5274FF;
  color: white;
  left: 72vw;
  bottom: 21vw;
}
.publicSector-v2 .spot-4 {
  background: #FBB423;
  left: 87vw;
  bottom: 5vw;
}
.publicSector-v2 .spot-5 {
  background: #62D84E;
  left: 29vw;
  bottom: 23vw;
}
.publicSector-v2 .spot-6 {
  background: #028eb5;
  left: 53vw;
  bottom: 27vw;
}
.publicSector-v2 .spot-7 {
  background: #cdcdcd;
  left: 88vw;
  bottom: 35vw;
}

.disney-v2.scene {
  background: #51ae74;
}
.disney-v2 .hotspots {
  border: 3px solid #62D84E;
  width: 10rem;
  height: 10rem;
  font-size: 1.3rem;
}
.disney-v2 .spot-1 {
  background: white;
  left: 10vw;
  bottom: 35vw;
}
.disney-v2 .spot-2 {
  background: #FDF4C7;
  border: 3px solid #F3B249;
  left: 41vw;
  bottom: 29vw;
}
.disney-v2 .spot-3 {
  background: #62D84E;
  left: 70vw;
  bottom: 35vw;
  border: 3px solid #F5EA00;
}
.disney-v2 .spot-4 {
  background: #1666DB;
  left: 82vw;
  bottom: 10vw;
  border: 3px solid #FCFCFC;
}
.disney-v2 .spot-5 {
  background: #009156;
  left: 32vw;
  bottom: 5vw;
}
.disney-v2 .spot-6 {
  background: #FBB423;
  left: 2vw;
  bottom: 2vw;
  border: 3px solid #FDF4C7;
}
.disney-v2 .spot-7 {
  background: linear-gradient(#23c2ce, #6ee190);
  left: 63vw;
  bottom: 6vw;
}
.disney-v2 .popup .spot-1 {
  color: black;
  border: 3px solid #62D84E;
  color: black;
}
.disney-v2 .popup .spot-2 {
  border: 3px solid #62D84E;
  color: black;
  border: 3px solid #F3B249;
}
.disney-v2 .popup .spot-3 {
  border: 3px solid #F5EA00;
  color: black;
}
.disney-v2 .popup .spot-4 {
  border: 3px solid #FCFCFC;
  olor: black;
}
.disney-v2 .popup .spot-5 {
  border: 3px solid #009156;
  color: black;
}

.starbucks-v2.scene {
  background: #9b7548;
}
.starbucks-v2 .entry {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 0;
  padding-bottom: 56%;
  z-index: 999;
  background: url("/images/starbucks-v2/welcome-small.jpg") no-repeat bottom left;
  background-size: cover;
}
.starbucks-v2 .entry .button {
  background: rgba(255, 255, 255, 0.3);
  position: absolute;
  bottom: 20%;
  right: 20%;
  width: 20rem;
  height: 20rem;
  border-radius: 20rem;
  font-size: 3rem;
  color: #052136;
  font-family: "Gilroy Bold";
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.starbucks-v2 .entry .button:hover {
  cursor: pointer;
  background: rgba(98, 216, 78, 0.7);
}
.starbucks-v2 .hotspots {
  border: 3px solid #62D84E;
  width: 12rem;
  height: 12rem;
  font-size: 1.6rem;
}
.starbucks-v2 .spot-1 {
  background: white;
  left: 14vw;
  bottom: 18vw;
}
.starbucks-v2 .spot-2 {
  background: #009156;
  left: 34vw;
  bottom: 34vw;
}
.starbucks-v2 .spot-3 {
  background: #62D84E;
  left: 50vw;
  bottom: 15vw;
  border: 3px solid black;
}
.starbucks-v2 .spot-4 {
  background: black;
  color: white;
  left: 72vw;
  bottom: 23vw;
}
.starbucks-v2 .popup .spot-1 {
  color: black;
  border: 3px solid #62D84E;
  color: black;
}
.starbucks-v2 .popup .spot-2 {
  border: 3px solid #62D84E;
  color: black;
}
.starbucks-v2 .popup .spot-3 {
  border: 3px solid black;
  color: black;
}
.starbucks-v2 .popup .spot-4 {
  border: 3px solid #62D84E;
}

.lifeScience-v2.scene {
  background: #5C85F2 !important;
  min-height: 55vw;
}
@media (max-width: 991px) {
  .lifeScience-v2.scene {
    padding-bottom: 53vw;
  }
}
.lifeScience-v2 .background {
  width: 100vw;
}
.lifeScience-v2 #bars {
  width: 57.45vw;
  bottom: 1.44vw;
  position: absolute;
  left: 0vw;
  z-index: 1;
  overflow: hidden;
}
.lifeScience-v2 #laptop {
  width: 7.7vw;
  bottom: 13.5vw;
  position: absolute;
  left: 71vw;
  z-index: 2;
}
.lifeScience-v2 #center-arm {
  width: 9.4vw;
  bottom: 2.9vw;
  position: absolute;
  left: 26vw;
  z-index: 1;
}
.lifeScience-v2 #hex {
  width: 20vw;
  bottom: 34vw;
  position: absolute;
  left: 77vw;
  z-index: 1;
}
.lifeScience-v2 #top-arm {
  width: 31vw;
  bottom: 27.8vw;
  position: absolute;
  left: 69vw;
  z-index: 1;
}
.lifeScience-v2 .desk {
  width: 46vw;
  bottom: 0.75vw;
  position: absolute;
  left: 53.65vw;
  z-index: 2;
}
.lifeScience-v2 .intro h1, .lifeScience-v2 .intro p, .lifeScience-v2 .copy h1, .lifeScience-v2 .copy p {
  color: #052136 !important;
}
.lifeScience-v2 .intro h1 {
  font-size: 1rem;
}
.lifeScience-v2 .copy {
  z-index: 2;
  width: 18%;
}
.lifeScience-v2 .copy p {
  font-size: 0.9rem;
  color: #052136 !important;
}
.lifeScience-v2 .spot-1 {
  background: #62D84E;
  left: 15vw;
  bottom: 24vw;
}
.lifeScience-v2 .spot-2 {
  background: #5274FF;
  color: white;
  left: 53vw;
  bottom: 23vw;
}
.lifeScience-v2 .spot-3 {
  background: #028eb5;
  color: white;
  left: 75vw;
  bottom: 7vw;
}
.lifeScience-v2 .spot-4 {
  background: #FBB423;
  left: 70vw;
  bottom: 36vw;
}
.lifeScience-v2 .spot-5 {
  background: #cdcdcd;
  left: 35vw;
  bottom: 28vw;
}
.lifeScience-v2 .spot-6 {
  background: linear-gradient(#23c2ce, #6ee190);
  left: 46vw;
  bottom: 7vw;
}
.lifeScience-v2 .spot-7 {
  background: #cdcdcd;
  left: 17vw;
  bottom: 2vw;
}

.automotive-v2.scene {
  background: linear-gradient(0deg, #ffffff 0%, #24C2CE 70%) !important;
}
@media (max-width: 991px) {
  .automotive-v2.scene {
    padding-bottom: 65vw;
  }
}
.automotive-v2 .intro, .automotive-v2 .copy {
  color: #052136 !important;
}
.automotive-v2 .intro h1, .automotive-v2 .intro h2, .automotive-v2 .intro p, .automotive-v2 .copy h1, .automotive-v2 .copy h2, .automotive-v2 .copy p {
  color: #052136 !important;
}
.automotive-v2 .text-con .intro {
  margin-bottom: 1rem;
}
.automotive-v2 .copy p {
  font-size: 0.9166666667rem;
}
@media (max-width: 1450px) {
  .automotive-v2 .copy p {
    font-size: 1.05rem;
  }
}
@media (max-width: 1200px) {
  .automotive-v2 .copy p {
    font-size: 1.1rem;
  }
}
@media (max-width: 991px) {
  .automotive-v2 .copy {
    width: 100% !important;
    left: 0 !important;
  }
}
.automotive-v2 .background {
  width: 100vw;
}
.automotive-v2 #converyor {
  position: absolute;
  bottom: 11vw;
  left: 0vw;
  width: 54vw;
  z-index: 0;
}
.automotive-v2 #speech {
  position: absolute;
  bottom: 22.1vw;
  left: 82vw;
  width: 7.2vw;
  z-index: 1;
}
.automotive-v2 .hotspots {
  font-size: 1rem;
}
.automotive-v2 .spot-1 {
  background: #FBB423;
  left: 4vw;
  bottom: 19vw;
}
.automotive-v2 .spot-2 {
  background: #052136;
  left: 40vw;
  bottom: 3vw;
  color: white;
}
.automotive-v2 .spot-3 {
  background: #62D84E;
  left: 52vw;
  bottom: 18.5vw;
}
.automotive-v2 .spot-4 {
  background: #cdcdcd;
  left: 84vw;
  bottom: 29vw;
}
.automotive-v2 .spot-5 {
  background: #93A9FF;
  left: 74vw;
  bottom: 5vw;
}
.automotive-v2 .spot-6 {
  background: #5274FF;
  left: 30vw;
  bottom: 17vw;
  color: white;
}
.automotive-v2 .spot-7 {
  background: #85dfab;
  left: 58vw;
  bottom: 36vw;
}

.longScroll {
  height: 100vh;
  width: 100vw;
  overflow: auto;
  white-space: nowrap;
  will-change: scroll-position;
}
.longScroll .heading {
  position: fixed;
  -moz-user-select: none;
       user-select: none;
}
.longScroll .heading .arrows {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.longScroll .heading .arrows svg {
  width: 4rem;
}
.longScroll .heading .arrows svg:hover {
  cursor: pointer;
}
.longScroll .heading .arrows svg:hover line, .longScroll .heading .arrows svg:hover polyline {
  stroke: #62D84E !important;
}
.longScroll .screen {
  height: 100vh;
  width: 100vw;
  display: inline-block;
  padding-top: 4.7222222222rem;
  position: relative;
  white-space: normal;
  min-height: 53.9vw;
}
.longScroll .popup .hotspot {
  top: -10% !important;
  right: calc(100% - 3rem) !important;
  left: auto !important;
  bottom: auto !important;
}
.longScroll .popup.multi .hotspot {
  top: 1rem !important;
  left: 2rem !important;
  right: auto !important;
}
.longScroll .screen-container {
  display: inline-block;
  background: linear-gradient(90deg, #87E0A1, #498EED, #0088AD, #23C2CE);
}

.astraZeneca .background {
  width: 100%;
  bottom: -0.2777777778rem;
  left: 0;
}
.astraZeneca .text-con {
  padding: 0 1vw;
}
.astraZeneca .home .text-con {
  width: 35vw;
  position: absolute;
  z-index: 4;
  bottom: 33.5vw;
  height: 15vw;
}
.astraZeneca .home .text-con h1, .astraZeneca .home .text-con h2, .astraZeneca .home .text-con p {
  color: white !important;
}
.astraZeneca .home .text-con h2 {
  font-size: 1.6666666667rem;
}
.astraZeneca .home .text-con p {
  font-size: 0.9444444444rem;
}
.astraZeneca .home .text-con .intro, .astraZeneca .home .text-con .copy {
  position: relative;
  left: auto;
  top: auto;
  width: 100%;
}
.astraZeneca .home .spot-1 {
  background: #FBB423;
  left: 4vw;
  bottom: 14vw;
}
.astraZeneca .home .spot-2 {
  background: #A6B7FF;
  left: 38vw;
  bottom: 19vw;
}
.astraZeneca .home .spot-3 {
  background: #052136;
  color: white;
  left: 50vw;
  bottom: 28.5vw;
}
.astraZeneca .home .spot-4 {
  background: linear-gradient(#23c2ce, #6ee190);
  left: 63vw;
  bottom: 17vw;
}
.astraZeneca .home .spot-5 {
  background: #62D84E;
  left: 69vw;
  bottom: 35vw;
}
.astraZeneca .home .spot-6 {
  background: #028eb5;
  color: white;
  left: 84vw;
  bottom: 6vw;
}
.astraZeneca .home .spot-7 {
  background: #cdcdcd;
  left: 88vw;
  bottom: 35vw;
}
.astraZeneca .home .pie1, .astraZeneca .home .pie2 {
  animation: rotate ease-in-out 10s infinite;
  position: absolute;
  width: 1.4vw;
  z-index: 3;
}
.astraZeneca .home .pie1 {
  bottom: 22.6vw;
  left: 94.6vw;
}
.astraZeneca .home .pie2 {
  bottom: 22.6vw;
  left: 97.3vw;
  animation-delay: 1s;
}
.astraZeneca .home #cogs-earth {
  position: absolute;
  left: 27.5vw;
  bottom: 13.5vw;
  width: 5.8vw;
  z-index: 2;
}
.astraZeneca .lifescience #center-arm {
  width: 9.4vw;
  bottom: 2.9vw;
  position: absolute;
  left: 26vw;
  z-index: 1;
}
.astraZeneca .lifescience #hex {
  width: 20vw;
  bottom: 34vw;
  position: absolute;
  left: 77vw;
  z-index: 1;
}
.astraZeneca .lifescience #az-toparm {
  position: absolute;
  bottom: 27.75vw;
  left: 69.5vw;
  width: 42.8vw;
  z-index: 2;
}
.astraZeneca .lifescience #bars-line1 {
  position: absolute;
  bottom: 21.6vw;
  left: 9.5vw;
  z-index: 2;
}
.astraZeneca .lifescience #bars-line1 svg {
  width: 8vw;
}
.astraZeneca .lifescience #bars-line2 {
  position: absolute;
  bottom: 22vw;
  left: 35.2vw;
  z-index: 2;
}
.astraZeneca .lifescience #bars-line2 svg {
  width: 8vw;
}
.astraZeneca .lifescience .spot-1 {
  background: #62D84E;
  left: 15vw;
  bottom: 24vw;
}
.astraZeneca .lifescience .spot-2 {
  background: #5274FF;
  color: white;
  left: 53vw;
  bottom: 23vw;
}
.astraZeneca .lifescience .spot-3 {
  background: #028eb5;
  color: white;
  left: 75vw;
  bottom: 7vw;
}
.astraZeneca .lifescience .spot-4 {
  background: #FBB423;
  left: 70vw;
  bottom: 36vw;
}
.astraZeneca .lifescience .spot-5 {
  background: #cdcdcd;
  left: 35vw;
  bottom: 28vw;
}
.astraZeneca .lifescience .spot-6 {
  background: linear-gradient(#23c2ce, #6ee190);
  left: 46vw;
  bottom: 7vw;
}
.astraZeneca .lifescience .spot-7 {
  background: #cdcdcd;
  left: 17vw;
  bottom: 2vw;
}
.astraZeneca .manufacturing #arm {
  position: absolute;
  bottom: 14.8vw;
  left: 23vw;
  width: 11vw;
  z-index: 2;
}
.astraZeneca .manufacturing #arm2 {
  position: absolute;
  bottom: 13vw;
  left: 30.5vw;
  width: 15.6vw;
  z-index: 2;
}
.astraZeneca .manufacturing .spot-1 {
  background: #FBB423;
  left: 11vw;
  bottom: 21vw;
}
.astraZeneca .manufacturing .spot-2 {
  background: #cdcdcd;
  left: 42vw;
  bottom: 26vw;
}
.astraZeneca .manufacturing .spot-3 {
  background: #052136;
  left: 38vw;
  bottom: 4vw;
  color: white;
}
.astraZeneca .manufacturing .spot-4 {
  background: #62D84E;
  left: 69vw;
  bottom: 24vw;
}
.astraZeneca .manufacturing .spot-5 {
  background: #23C2CE;
  left: 85vw;
  bottom: 14vw;
  color: white;
}
.astraZeneca .manufacturing .spot-6 {
  background: #5274FF;
  left: 15vw;
  bottom: 5vw;
  color: white;
}
.astraZeneca .manufacturing .spot-7 {
  background: #cdcdcd;
  left: 88vw;
  bottom: 35vw;
}
.astraZeneca .manufacturing .wheel {
  animation: rotate ease-in-out 6s infinite;
  position: absolute;
  bottom: 24.5vw;
  left: 58.1vw;
  width: 3vw;
  z-index: 3;
}
.astraZeneca .manufacturing .windows {
  position: absolute;
  bottom: 40vw;
  right: 2vw;
  width: 28vw;
  z-index: 2;
}
@media (max-width: 1200px) {
  .astraZeneca .manufacturing .windows {
    display: none;
  }
}
.astraZeneca .retail .spot-1 {
  background: #cdcdcd;
  left: 4vw;
  bottom: 19vw;
}
.astraZeneca .retail .spot-2 {
  background: linear-gradient(#23c2ce, #6ee190);
  left: 24vw;
  bottom: 19vw;
}
.astraZeneca .retail .spot-3 {
  background: #FBB423;
  left: 41vw;
  bottom: 28.5vw;
}
.astraZeneca .retail .spot-4 {
  background: #028eb5;
  left: 64vw;
  bottom: 9vw;
  color: white;
}
.astraZeneca .retail .spot-5 {
  background: #052136;
  left: 88vw;
  bottom: 17vw;
  color: white;
}
.astraZeneca .retail .spot-6 {
  background: #62D84E;
  left: 47vw;
  bottom: 6vw;
}
.astraZeneca .retail .spot-7 {
  background: #cdcdcd;
  left: 88vw;
  bottom: 35vw;
}
.astraZeneca .retail #window {
  position: absolute;
  bottom: 18.4vw;
  left: 80vw;
  width: 11vw;
  z-index: 2;
}
.astraZeneca .retail .bar-one {
  position: absolute;
  bottom: 17.3vw;
  left: 38.9vw;
  z-index: 2;
}
.astraZeneca .retail .bar-one svg {
  width: 5vw;
}
@keyframes rotate {
  100% {
    transform: rotate(1800deg);
  }
}

@media (max-width: 1200px) {
  h1 {
    font-size: 22px;
  }

  h2 {
    font-size: 22px;
  }

  p {
    font-size: 12px;
  }

  .scene .intro p {
    line-height: 1.5;
  }

  .version2 .intro {
    width: 30%;
  }
  .version2 .intro h1, .version2 .intro h2 {
    font-size: 18px;
  }
  .version2 .copy {
    width: 50%;
    left: calc(30% + 40px);
  }
  .version2 .copy p {
    font-size: 13px;
  }

  .popup {
    width: 60%;
    left: 20%;
  }
}
@media (orientation: portrait) and (min-width: 767px) {
  html, body {
    font-size: 1.4vw;
  }

  .scene .title {
    width: auto;
    left: auto;
    top: auto;
    position: relative;
    padding: 30px;
  }
  .scene .intro {
    width: auto;
    left: auto;
    top: auto;
    position: relative;
    padding: 0 30px;
  }
  .scene .copy {
    width: auto;
    left: auto;
    top: auto;
    position: relative;
    padding: 0 30px;
  }

  .popup {
    width: 80%;
    left: 10%;
    left: 10% !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    border-radius: 60px/50%;
  }
}
@media (max-width: 991px) {
  html, body {
    font-size: 12px;
  }

  h1 {
    font-size: 17px;
  }

  h2 {
    font-size: 17px;
  }

  p {
    font-size: 13px;
  }

  .scene {
    padding-bottom: 40vw;
    min-height: 100% !important;
    height: auto;
  }
  .scene .intro {
    width: 45%;
  }
  .scene .intro p {
    line-height: 1.4;
  }

  .scene2 {
    padding-bottom: 50vw;
  }

  .popup {
    width: 80%;
    left: 10%;
    top: 15%;
  }
  .popup .hotspot {
    left: -17%;
  }

  .version2 .heading {
    margin-bottom: 20px;
  }
  .version2 .popup .hotspot {
    display: none;
  }
  .version2 .intro {
    width: auto;
    left: auto;
    top: auto;
    position: relative;
    padding: 0 25px;
    margin-bottom: 20px;
  }
  .version2 .intro h1, .version2 .intro h2 {
    font-size: 20px;
  }
  .version2 .copy {
    width: auto;
    left: auto;
    top: auto;
    position: relative;
    padding: 0 25px;
  }
  .version2 .copy p {
    font-size: 14px;
  }
}
@media (max-width: 767px) and (orientation: portrait) {
  html, body {
    font-size: 12px;
  }

  h1 {
    font-size: 17px;
  }

  h2 {
    font-size: 17px;
  }

  p {
    font-size: 13px;
  }

  .scene .title {
    width: auto;
    left: auto;
    top: auto;
    position: relative;
    padding: 25px 25px 10px 25px;
  }
  .scene .intro, .scene .copy {
    width: auto;
    left: auto;
    top: auto;
    position: relative;
    padding: 0 25px;
    margin-bottom: 10px;
  }
  .scene .intro h1, .scene .intro h2, .scene .copy h1, .scene .copy h2 {
    font-size: 16px;
  }
  .scene .intro p, .scene .copy p {
    line-height: 1.4;
  }
  .scene .hotspots {
    position: relative;
    bottom: auto !important;
    left: auto !important;
    margin: 11px 25px;
    height: 2.8rem;
    width: calc(100% - 50px);
    animation: none;
    border-radius: 15px/50%;
  }
  .scene .hotspots.spot-1, .scene .hotspots.spot-2, .scene .hotspots.spot-3, .scene .hotspots.spot-4, .scene .hotspots.spot-5, .scene .hotspots.spot-6 {
    height: 2.8rem;
    width: calc(100% - 50px);
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  }

  .popup {
    border-radius: 20px;
    width: 80%;
    left: 10%;
    top: 10%;
    padding: 7% 12% 7% 12%;
  }
  .popup p {
    line-height: 1.3;
  }
  .popup .hotspot {
    top: -100px;
  }
  .popup .close {
    left: -5%;
  }
  .popup .links {
    right: -10%;
  }

  .drone {
    display: none;
  }

  .version2 .heading {
    overflow: auto;
    margin-bottom: 15px;
  }
  .version2 .heading .logo {
    height: 25px;
  }
  .version2 .heading h1 {
    display: none;
  }
  .version2 .popup {
    flex-wrap: wrap;
  }
  .version2 .popup .hotspot {
    top: -59px;
  }
  .version2 .popup .text {
    width: 100%;
  }
  .version2 .popup .stat {
    width: 100%;
  }
  .version2 .popup .stat .stat-desc {
    font-size: 10px;
  }
}