/**
 * style.css
 * Styles for page elements
 *
 * CONTENTS
 * 
 * KEYFRAMES
 * GLOBAL STYLES
 * FORM ELEMENTS
 * BUTTONS
 * HEADER
 * FOOTER
 * ACCORDION
 * ENLIVEN SYSTEMS POPUP
 * INDEX
 * SIDEBOX
 * LOADER
 * CANVAS
 * PAGE
 * SECTION
 * SIDE-BY-SIDE-FIELD
 * FEATURE
 * FEATURES-GRID
 * MAIN
 * TESTIMONIALS
 * CONTACT
 * ABOUT US
 * SERVICES
 * SOFTWARE DEVELOPMENT
 * FAST APPLICATION DEVELOPMENT
 * TECHNOLOGY EXPERTISE
 * LEGAL
 * PORTFOLIO
 * PORTFOLIO SUBPAGE
 * REVEALED SOCIAL
 * SZERZI
 * TEAMS
 * OPEN POSITIONS
 * OPPORTUNITY
 * KPI BLOCK
 * INDUSTRY
 * TITLE ANIMATIONS
 */

/*------------------------------------*\
 # KEYFRAMES
\*------------------------------------*/

@keyframes dash {
  to {
    stroke-dashoffset: 0;
    fill-opacity: 1;
    stroke-width: 0;
  }
}

@-moz-keyframes GetInTouchAnimation {
  0% {
    background-position: 0 50%;
  }

  100% {
    background-position: 80% 50%;
  }
}

@-moz-keyframes GetInTouchAnimationReverse {
  0% {
    background-position: 80% 50%;
  }

  100% {
    background-position: 0 50%;
  }
}

@-webkit-keyframes GetInTouchAnimation {
  0% {
    background-position: 0 50%;
  }

  100% {
    background-position: 80% 50%;
  }
}

@-webkit-keyframes GetInTouchAnimationReverse {
  0% {
    background-position: 80% 50%;
  }

  100% {
    background-position: 0 50%;
  }
}

@keyframes GetInTouchAnimation {
  0% {
    background-position: 0 50%;
  }

  100% {
    background-position: 80% 50%;
  }
}

@keyframes GetInTouchAnimationReverse {
  0% {
    background-position: 80% 50%;
  }

  100% {
    background-position: 0 50%;
  }
}
@keyframes typeInstant {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
@keyframes typeInstantLoop {
  0% {
    width: 0;
  }
  33% {
    width: 100%;
  }
  100% {
    width: 100%;
  }
}
@keyframes blink {
  to {
    opacity: 0;
  }
}
@keyframes reference-single-contact-gradient {
  0% {
    background-position: 50% 100%;
  }

  50% {
    background-position: 100% 50%;
  }

  100% {
    background-position: 50% 100%;
  }
}
@keyframes teams-planets-move-100 {
  0% {
    transform: perspective(500px) translateX(0);
  }

  100% {
    transform: perspective(500px) translateX(100px);
  }
}
@keyframes orbit {
  0% {
    transform: rotateZ(0deg);
  }

  100% {
    transform: rotateZ(-360deg);
  }
}
@keyframes teams-orbit-move-100 {
  0% {
    transform: rotate3d(4.5, -1.5, 0.5, -70deg) perspective(700px) translateX(0);
  }

  100% {
    transform: rotate3d(4.5, -1.5, 0.5, -70deg) perspective(700px) translateX(100px);
  }
}
@keyframes teams-orbit-2-move {
  0% {
    border-width: 1px 2px 1px 2px;
    opacity: 0.1;
  }

  25% {
    border-width: 1px 1px 3px 2px;
    opacity: 0.3;
  }

  50% {
    border-width: 1px 1px 1px 4px;
    opacity: 0.2;
  }

  75% {
    border-width: 1px 1px 4px 1px;
    opacity: 0.4;
  }

  100% {
    border-width: 1px 2px 1px 2px;
    opacity: 0.1;
  }
}

@keyframes tp-bouncedelay {
  0%,
  80%,
  100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}

@keyframes methodologies-orbit-1 {
  0%,
  100% {
    transform: rotate3d(0.4, 1.3, 1.7, 130deg);
  }
  50% {
    transform: rotate3d(0.4, 1.6, 1.7, 130deg);
  }
}
@keyframes methodologies-orbit-2 {
  0%,
  100% {
    transform: rotate3d(0.4, 1.5, 1.7, 130deg);
  }
  50% {
    transform: rotate3d(0.4, 1.8, 1.7, 130deg);
  }
}
@keyframes methodologies-orbit-3 {
  0%,
  100% {
    transform: rotate3d(0.4, 1.85, 1.7, 130deg);
  }
  50% {
    transform: rotate3d(0.4, 2.15, 1.7, 130deg);
  }
}
@keyframes methodologies-orbit-5 {
  0%,
  100% {
    transform: rotate3d(0.4, 1.5, 1.7, 130deg);
  }
  50% {
    transform: rotate3d(0.4, 1.2, 1.7, 130deg);
  }
}
@keyframes methodologies-orbit-6 {
  0%,
  100% {
    transform: rotate3d(0.4, 1.2, 1.7, 130deg);
  }
  50% {
    transform: rotate3d(0.4, 0.9, 1.7, 130deg);
  }
}

@keyframes asteroid-background {
  0% {
    background-position: 40% 40%;
  }
  100% {
    background-position: 0 0;
  }
}

@keyframes asteroid {
  0% {
    top: -10%;
    left: 0;
    transform: scale(0.5);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes asteroid-mobile {
  0% {
    top: -10%;
    left: -100%;
    transform: scale(0.5);
  }
  100% {
    top: 30%;
    left: 60%;
    transform: scale(1);
  }
}

/*------------------------------------*\
 # GLOBAL STYLES
\*------------------------------------*/

.planet-style {
  position: absolute;
  z-index: 0;
  border-radius: 50%;
}

iframe {
  border: none;
}

:root {
  --blackish-background: #212136;
  --yellow: #fee7af;
  --white: #f8f8f8;
  --white-option-2: #dee2e6;
  --black: #222222;
  --blackish: #212136;
  --default-black: #000;
  --red: #ff0000;
  --gray: #444;
  --gray-light: #aaa;
  --blue: #5472d2;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Source Sans Pro', Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-style: normal;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  overflow-x: hidden;
  -webkit-user-select: none;
  -moz-user-select: -moz-none;
  -ms-user-select: none;
  user-select: none;
  background-color: var(--blackish-background);
}

ul,
ol {
  padding-left: 0;
}

ol {
  list-style: none;
  text-align: justify;
}

li {
  display: block;
}

a,
i {
  color: var(--white);
}

a:hover {
  text-decoration: none;
  color: var(--gray-light);
}

b,
strong {
  font-weight: 900;
}

p {
  color: var(--white);
  font-size: 16px;
  font-weight: 100;
  z-index: 10;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Source Sans Pro', Helvetica, Arial, sans-serif;
  font-style: normal;
  line-height: 1.3;
  letter-spacing: 0;
  color: var(--white);
}

h2,
h3 {
  font-weight: 300;
}

h1 {
  font-size: calc(2em + 4vmin);
  text-transform: uppercase;
}

h2 {
  font-size: calc(1.5em + 3vmin);
}

h3 {
  font-size: calc(1.2em + 2vmin);
}

img {
  max-width: 100%;
  height: auto;
}

.underlined-link {
  text-decoration: underline;
}

.no-overflow {
  overflow: hidden;
}
.no-overflow-x {
  overflow-x: hidden;
}

.site {
  position: relative;
}

.bg-blackish {
  background-color: #212136;
}

.visible {
  visibility: visible;
  opacity: 1;
  transition: opacity 0s linear;
}

.hidden {
  visibility: hidden;
  opacity: 0;
  transition:
    visibility 0s linear 0.6s,
    opacity 0.5s ease-in-out;
}

@supports (-ms-ime-align: auto) {
  .edge--hide {
    display: none;
  }
  .edge--fallback {
    display: block;
  }
}

.safari--fallback {
  display: none;
}
_::-webkit-full-page-media,
_:future,
:root .safari--fallback {
  display: block;
}
_::-webkit-full-page-media,
_:future,
:root .safari--hide {
  display: none !important;
}
.safari--es4-fallback-size {
  width: 180px;
  height: auto;
}

/*------------------------------------*\
 # FORM ELEMENTS
\*------------------------------------*/

FORM label.error,
form .form-error {
  color: #d8ff00;
  text-align: left;
  margin-left: 10px;
  font-size: 13px;
  margin-bottom: 20px;
}

FORM .loading-overlay {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 10;
  position: absolute;
  backdrop-filter: blur(2px);
}
FORM .loading-overlay > VIDEO {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

INPUT:not([type='submit']),
textarea,
select {
  background: rgba(181, 99, 255, 0.1) 0 0 no-repeat padding-box;
  border: 1px solid rgba(227, 227, 227, 0);
  color: rgba(227, 227, 227, 1);
  border-radius: 0;
  font-size: 18px;
  margin-bottom: 15px;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 20px;
  padding-right: 20px;
  transition: 500ms ease-out;
  display: inline-block;
  max-width: 100%;
  width: 100%;
  box-shadow: none;
  font-weight: normal;
}

INPUT[type='submit'],
BUTTON.submit-button {
  padding: 10px 60px;
  border: none;
  min-width: 214px;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  color: var(--white);
  border-color: var(--black);
  background-color: var(--black);
}

INPUT[type='submit']:hover,
BUTTON.submit-button:hover {
  color: var(--black);
  border-color: var(--black);
  background-color: var(--white);
  cursor: pointer;
}

textarea {
  height: 100px;
  resize: none;
}

INPUT:not([type='submit']):hover,
textarea:hover {
  background: rgba(181, 99, 255, 0.3) 0 0 no-repeat padding-box;
}

TEXTAREA::placeholder,
input:not([type='submit'])::placeholder {
  color: rgba(227, 227, 227, 1);
  opacity: 1;
}
TEXTAREA::-ms-input-placeholder,
input:not([type='submit'])::-ms-input-placeholder {
  color: rgba(227, 227, 227, 1);
  opacity: 1;
}

input:not([type='submit']):focus,
TEXTAREA:focus {
  border: 1px solid rgba(181, 99, 255, 0.5);
  background: rgba(181, 99, 255, 0.3) 0 0 no-repeat padding-box;
  outline: 0;
}

VIDEO {
  background: transparent;
}

INPUT[type='file'] {
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  width: 150px;
}

LABEL {
  display: none;
}
.checkbox label {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  padding-left: 15px;
  font-size: 24px;
}

input[type='checkbox'],
input[type='radio'] {
  width: auto;
}

#contact-input-submit.loading,
#opportunity-input-submit.loading {
  min-width: 214px;
}
#contact-input-submit > p.written,
#opportunity-input-submit > p.written {
  animation: typeInstantLoop 3s steps(30, end) infinite;
  margin: unset;
}

#thank-you-drop-in-video {
  max-width: 100%;
}

/*------------------------------------*\
 # BUTTONS
\*------------------------------------*/

.btn {
  display: inline-block;
  margin-bottom: 0;
  text-align: center;
  cursor: pointer;
  color: var(--white);
  border: 1px solid var(--white);
  word-wrap: break-word;
  position: relative;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  line-height: normal;
  padding: 12px 30px;
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  background: none;
  width: auto;
}

.btn p {
  margin-bottom: 0;
}

.btn:hover {
  padding-right: 38px;
  padding-left: 22px;
  background-color: var(--white);
}

.btn:after {
  display: inline-block;
  visibility: hidden;
  transition: all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
  content: '\f178';
  font-family: 'FontAwesome';
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  opacity: 0;
  margin-left: -18px;
}

.btn:hover:after {
  transform: translateX(18px);
  visibility: visible;
  opacity: 1;
}

.btn--bigger {
  font-size: 16px;
  font-weight: 400;
}

.btn--white {
  color: var(--white);
}

.btn--white:hover {
  color: var(--black);
}

.btn--light {
  border-color: var(--white);
  color: var(--white);
}

.btn--light:hover {
  border-color: var(--black);
  background-color: var(--black);
  color: var(--white);
}

.btn--dark {
  color: var(--black);
  border-color: var(--black);
}

.btn--dark:hover {
  color: var(--white);
  border-color: var(--black);
  background-color: var(--black);
}

.btn--dark:hover:after {
  color: var(--white);
}

.btn--blue {
  background-color: rgb(65, 132, 236);
  border: none;
  color: var(--white);
}

.btn--rounded {
  border-radius: 40px;
}

.btn--back,
.btn--next {
  border-radius: 40px;
  color: var(--white);
  opacity: 0.8;
}

.btn--back:before {
  display: inline-block;
  visibility: hidden;
  transition: all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
  content: '\f177';
  color: var(--black);
  font-family: 'FontAwesome';
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  opacity: 0;
  margin-left: -10px;
}

.btn--back:after {
  display: none;
}

.btn--back:hover {
  padding-right: 22px;
  padding-left: 38px;
  color: var(--black);
}

.btn--back:hover:before {
  transform: translateX(-5px);
  visibility: visible;
  opacity: 1;
}

.btn--next:after {
  display: inline-block;
  visibility: hidden;
  transition: all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);
  content: '\f178';
  color: var(--black);
  font-family: 'FontAwesome';
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  opacity: 0;
}

.btn--next:hover {
  padding-left: 22px;
  padding-right: 38px;
  color: var(--black);
}

.btn--next:hover:after {
  transform: translateX(20px);
  visibility: visible;
  opacity: 1;
}

/*------------------------------------*\
 # HEADER
\*------------------------------------*/

#headerNav:not(.headroom--not-top) .outside-white,
.mobile-menu-bold {
  color: var(--white);
  font-weight: bold;
}

#headerNav:not(.headroom--top) .outside-white,
.inside-black {
  color: var(--default-black);
  font-weight: bold;
}

.header {
  background-color: rgba(0, 0, 0, 0);
  transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
  position: relative;
}

.header > .container-fluid > .row > div,
.header > .container > .row > div {
  position: static;
}

.header--transparent {
  background: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%;
}

.headroom--not-top.header--transparent {
  background: var(--white);
}

.header--white.headroom--not-top .main-navigation .main-menu > li > a {
  color: var(--black);
}
.header--white .main-navigation .main-menu > li > a {
  color: var(--white);
}

.header .main-navigation {
  padding-left: 20px;
}

.header-menu__container {
  transition: all 1s cubic-bezier(0.645, 0.045, 0.355, 1);
  padding-top: 10px;
  height: 100%;
}

.header-menu__container .header-menu-logo {
  background-image: url('/images/logo/enliven-systems-logo-horizontal-white-mini.svg');
  background-repeat: no-repeat;
  background-size: contain;
  display: block;
  height: 55px;
  top: 10px;
  position: absolute;
  width: 300px;
  max-width: 300px;
  cursor: pointer;
}

.header-container {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  height: 100%;
}

.header-contact {
  text-align: right;
  transition: top 0.5s 0.3s ease;
}

.header.headroom--not-top .header-menu__container .header-menu-logo:not(.header-menu-logo-scrolled) {
  top: 8px;
}

.header.headroom--not-top {
  height: 70px;
}

.headroom--not-top .header-menu__container .header-menu-logo {
  opacity: 0;
}

.headroom--not-top.lazy .header-menu.lazy .header-menu-logo-scrolled.lazy {
  background-image: none;
  background-color: #f1f1fa;
}

.headroom--not-top .header-menu__container .header-menu-logo-scrolled {
  background-image: url('/images/logo/enliven-systems-logo-horizontal-mini.svg');
  background-position: 0 1px;
  background-repeat: no-repeat;
  background-size: auto 50px;
  opacity: 1;
  height: 55px;
}

.headroom--not-top .header-menu__container {
  padding-top: 0;
}

.header-left-menu .primary-menu ul li {
  position: relative;
  margin: 0;
  list-style: none;
  text-align: left;
  line-height: normal;
  direction: ltr;
  -webkit-tap-highlight-color: transparent;
  width: 100%;
  float: none;
  padding: 15px 0;
}

.header-left-menu .primary-menu .sub-menu {
  background-color: var(--white);
  list-style: none;
  text-align: left;
  line-height: normal;
  direction: ltr;
  -webkit-tap-highlight-color: transparent;
  visibility: hidden;
  opacity: 0;
  position: absolute;
  padding: 25px 0;
  min-width: 270px;
  box-shadow: 0 0 10px 3px rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
  top: 200%;
  left: 100%;
}

.header-left-menu .primary-menu .sub-menu li {
  padding: 10px 40px;
}

.main-navigation {
  z-index: 999;
  font-family: 'Source Sans Pro', Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.1em;
  position: static;
}

.main-navigation .sub-menu {
  position: absolute;
  top: 120%;
  left: 0;
  z-index: 2;
  visibility: hidden;
  margin: 0;
  padding: 0 0 20px;
  width: 350px;
  opacity: 0;
  transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.main-navigation .sub-menu li {
  position: relative;
  padding: 20px 40px 0;
  line-height: 1.5;
}

.main-navigation .main-menu {
  margin-bottom: 0;
}
.main-navigation .main-menu > li {
  transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
  position: relative;
  display: inline-block;
  padding: 24px 15px;
}
.headroom--not-top .main-navigation .main-menu > li a {
  text-shadow: none;
}

.main-navigation .main-menu > li a {
  position: relative;
  z-index: 1;
  text-transform: uppercase;
}
.main-navigation .main-menu > li .sub-menu a {
  transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
/* Controls when and how the sub-menu opens.  */
.main-navigation .main-menu > li:hover > a + .sub-menu {
  top: 100%;
  z-index: 999;
  visibility: visible;
  opacity: 1;
  background-color: var(--white);
}

.main-navigation .main-menu li > .sub-menu .sub-menu {
  top: 0;
  left: 100%;
}

.headroom--not-top .main-navigation .main-menu > li .sub-menu a {
  text-shadow: none;
  color: var(--black);
}

.main-navigation .main-menu > li .sub-menu a {
  color: var(--black);
  transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
  text-shadow: none;
}
.main-navigation .main-menu > li .sub-menu a:hover {
  text-shadow: none;
}

.header-left-menu .main-navigation .main-menu li:hover > .sub-menu {
  top: 20px;
}

.mobile-menu .sub-menu a {
  padding-top: 8px;
  padding-bottom: 8px;
  padding-left: 0;
  padding-right: 0;
  font-size: 14px;
}
.mobile-menu .sub-menu {
  display: none;
  margin: 12px 0 14px 10px;
}
.mobile-menu .sub-menu.open {
  display: block;
}
.mobile-main-menu .sub-menu a {
  padding-top: 8px;
  padding-bottom: 8px;
  padding-left: 0;
  padding-right: 0;
  font-size: 17px;
}
.mobile-main-menu .sub-menu {
  display: none;
  margin: 12px 0 14px 10px;
}
.mobile-main-menu .sub-menu.open {
  display: block;
}

.mobile-menu__open {
  display: flex;
  position: absolute;
  top: 35px;
  width: 24px;
  height: 18px;
  cursor: pointer;
  right: 40px;
  transition: top 0.5s 0.3s ease;
}

.headroom--not-top .mobile-menu__open {
  top: 26px;
}

.mobile-menu__open-icon {
  color: var(--white);
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -1px;
  width: 100%;
  height: 2px;
  background: currentColor;
  -webkit-transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.mobile-menu__open-icon::after,
.mobile-menu__open-icon::before {
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  background: inherit;
  content: ' ';
  -webkit-transition: width 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: width 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.mobile-menu__open-icon:before {
  top: -8px;
}
.mobile-menu__open-icon:after {
  top: 8px;
}
.headroom.headroom--not-top .mobile-menu__open-icon {
  color: var(--black);
}

.mobile-main-menu {
  position: fixed;
  top: 0;
  right: 100%;
  z-index: 9999999;
  overflow-x: auto;
  width: 100%;
  height: 100%;
  background: var(--white);
  box-shadow: 3px 1px 29px rgba(0, 0, 0, 0.12);
  text-align: left;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  background-color: rgba(0, 0, 0, 0.9);
}
.mobile-main-menu.open {
  right: 0;
}
.mobile-main-menu__header {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 0 30px;
  height: 70px;
  background: var(--white);
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding-left: 15px;
  padding-right: 15px;
}

.mobile-main-menu__logo {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.mobile-main-menu .mobile-menu {
  margin: 0;
  padding: 20px 30px 30px;
}
.mobile-main-menu li {
  list-style-type: none;
}
.mobile-main-menu .mobile-menu a {
  position: relative;
  display: block;
}
.mobile-main-menu .mobile-menu a {
  font-weight: 400;
  letter-spacing: 0em;
  line-height: 1.5;
  text-transform: none;
}
.mobile-main-menu .mobile-menu > li > a {
  padding: 10px 0;
  border: 0;
  border-color: transparent;
  font-size: 20px;
}
.mobile-main-menu .mobile-menu > li + li > a {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}
.mobile-main-menu .toggle-sub-menu {
  position: absolute;
  top: 50%;
  right: 0;
  width: 40px;
  height: 40px;
  background: hsla(0, 0%, 100%, 0.1);
  color: var(--white);
  text-align: center;
  line-height: 40px;
  z-index: 5;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.mobile-main-menu .toggle-sub-menu:after {
  display: block;
  content: '\f105';
  font-size: 18px;
  font-family: FontAwesome;
}
.mobile-main-menu .toggle-sub-menu.open:after {
  content: '\f107';
}

.mobile-main-menu__logo-img {
  height: 42.25px;
  width: 210px;
}

.mobile-menu__close {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  position: relative;
  right: 24px;
  display: flex;
  height: 30px;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.mobile-menu__close div {
  position: relative;
  width: 24px;
  height: 18px;
  cursor: pointer;
}
.mobile-menu__close i {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -1px;
  width: 100%;
  height: 2px;
  background: transparent;
  -webkit-transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.mobile-menu__close i:after,
.mobile-menu__close i:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--blue);
  content: '';
  -webkit-transition: width 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: width 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.mobile-menu__close i:before {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.mobile-menu__close i:after {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.mobile-menu {
  margin: 0;
  padding: 0;
}
.mobile-menu li {
  list-style-type: none;
}
.mobile-menu a {
  position: relative;
  display: block;
  font-weight: 400;
  letter-spacing: 0em;
  line-height: 1.5;
  text-transform: uppercase;
  font-size: 14px;
}
.mobile-menu > li > a {
  padding: 5px 0;
}
.mobile-menu .toggle-sub-menu {
  position: absolute;
  top: 50%;
  right: 0;
  width: 20px;
  height: 20px;
  background: hsla(0, 0%, 100%, 0.1);
  color: var(--white);
  text-align: center;
  line-height: 20px;
  z-index: 5;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.mobile-menu .toggle-sub-menu:after {
  display: block;
  content: '\f105';
  font-size: 12px;
  font-family: FontAwesome;
}
.mobile-menu .toggle-sub-menu.open:after {
  content: '\f107';
}
.mobile-menu li a:hover {
  color: var(--gray-light);
}

.outside-menu {
  cursor: pointer;
}

.get-in-touch {
  color: var(--white);
  background: linear-gradient(90deg, rgba(0, 171, 255, 1) 0%, rgba(147, 113, 255, 1) 30%, rgba(0, 171, 255, 1) 200%);
  background-size: 200% 200%;
  font-weight: bold;
  padding: 10px 22px;
  letter-spacing: 0.1em;
  border-width: 0;
  text-transform: uppercase;
}

.get-in-touch:hover {
  color: var(--white);
}

.get-in-touch.offset {
  background-position: 80%;
  -webkit-animation: GetInTouchAnimation 5s ease;
  -moz-animation: GetInTouchAnimation 5s ease;
  animation: GetInTouchAnimation 5s ease;
}

.get-in-touch.original {
  background-position: 0;
  -webkit-animation: GetInTouchAnimationReverse 5s ease;
  -moz-animation: GetInTouchAnimationReverse 5s ease;
  animation: GetInTouchAnimationReverse 5s ease;
}

/*------------------------------------*\
 # FOOTER
\*------------------------------------*/

.footer {
  padding: 50px 50px 30px 50px;
  font-weight: 300;
  font-style: normal;
  font-size: 15px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: var(--white);
  background-color: var(--blackish-background);
}
.footer > .row {
  max-width: 1600px;
  margin-left: auto;
  margin-right: auto;
}

.footer__company-information-header,
.footer__company-information-items {
  text-align: left;
  margin-bottom: 10px;
}

.footer__company-information-header {
  font-size: 15px;
  margin-top: 0.5rem;
}

.footer__company-information-items {
  font-size: 12px;
  user-select: text;
  opacity: 0.75;
}

.footer__compliance-images {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(60px, 1fr));
  gap: 10px;
  align-items: start;
}

.footer__compliance-images > img {
  filter: brightness(0) invert(1) contrast(100%);
  width: 60px;
  height: auto;
}

.footer__logo {
  width: 250px;
  height: auto;
}

.footer__menu h3 {
  font-weight: 400;
  font-style: normal;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  padding-bottom: 20px;
  text-transform: uppercase;
  opacity: 0.75;
}

.footer__menu ul {
  font-size: 15px;
  padding: 0;
}

.footer__menu > ul > li {
  margin-bottom: 10px;
}

.footer__menu > ul > li > a {
  cursor: pointer;
}

.footer__menu > ul > li > a:hover {
  color: var(--white-option-2);
}

.footer__menu > ul > li > a > img {
  opacity: 0.5;
  transition: opacity 0.3s ease;
}

.footer__menu > ul > li > a:hover > img {
  opacity: 1;
}

.footer__menu > ul > li > a[href^='mailto:'] {
  white-space: normal;
  overflow-wrap: anywhere;
}

.footer__copyright,
.footer__copyright a {
  opacity: 0.75;
}

/*------------------------------------*\
 # ACCORDION
\*------------------------------------*/

#enliven-popup .accordion-heading > A {
  cursor: initial;
}
.accordion .accordion-group {
  display: block;
}
.accordion .accordion-heading {
  font-size: 120%;
  color: var(--gray-light);
  line-height: 120%;
  font-weight: 300;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  position: relative;
  border: 1px solid var(--white-option-2);
  margin-top: 20px;
}
.accordion .accordion-group:first-child .accordion-heading {
  margin-top: 0;
}
.accordion .accordion-heading.active {
  background-color: var(--black);
}
.accordion .accordion-heading a {
  color: var(--default-black);
  padding: 20px 20px 20px 75px;
  display: inline-block;
  width: 100%;
  background-color: var(--white-option-2);
  font-weight: 400;
  font-size: 16px;
}
.accordion .accordion-heading.active a {
  background-color: var(--black);
}
.accordion .accordion-heading .toggle-icon {
  border: 1px solid var(--gray-light);
  width: 22px;
  height: 22px;
  line-height: 20px;
  text-align: center;
  font-style: normal;
  font-size: 18px;
  position: absolute;
  top: 50%;
  left: 30px;
  -webkit-border-radius: 50%;
  -khtml-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
  border-radius: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.accordion .accordion-heading.active .toggle-icon {
  border-color: var(--white);
  color: var(--white);
}
.accordion .accordion-heading.active .toggle-icon:before {
  content: '\f107';
}

/*------------------------------------*\
 # ENLIVEN SYSTEMS POPUP
\*------------------------------------*/

#enliven-popup {
  width: calc(50%);
  height: calc(50%);
  position: fixed;
  transform: translateX(50%);
  top: 100px;
  z-index: 100;
}

#enliven-popup .toggle-icon.popup-closer {
  left: unset;
  right: 20px;
  cursor: pointer;
  border-color: var(--white);
  color: var(--white);
  opacity: 0.8;
}

/*------------------------------------*\
 # INDEX
\*------------------------------------*/

.btn--cookies-accept {
  margin-top: 20px;
  margin-bottom: 20px;
}

.popup-inner-head {
  font-style: italic;
  opacity: 0.8;
}

.cookie-consent__text {
  color: var(--white);
}

.cookie-consent__text--bigger {
  font-size: 20px;
}

.cookie-consent__text--normal {
  font-size: 15px;
}

#cookie-consent {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  z-index: 1000;
  text-align: center;
  display: table;
  background: linear-gradient(130deg, rgb(65, 132, 236) 0%, rgb(34, 34, 57) 60%);
  background-size: 200% 200%;
  background-position: 40% 40%;
  animation: asteroid-background 20s linear forwards;
}

#cookie-consent .cookie-consent__background-video {
  position: absolute;
  top: -10%;
  transform: scale(0.3);
}

#cookie-consent .cookie-consent__content {
  position: relative;
  margin: 0 auto;
  display: table-cell;
  width: 50%;
  vertical-align: middle;
}

.main-methodologies-planet {
  position: absolute;
  width: 900px;
  height: 900px;
  border-radius: 450px;
  vertical-align: middle;
  display: table-cell;
  opacity: 0.1;
}

/*------------------------------------*\
 # SIDEBOX
\*------------------------------------*/

#backtotop {
  display: none;
  position: fixed;
  right: 15px;
  background: var(--black);
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  color: var(--white);
  font-size: 15px;
  z-index: 9999;
  cursor: pointer;
  opacity: 40%;
  border: 1px solid var(--white);
  -webkit-transition: all 300ms linear 0ms;
  -khtml-transition: all 300ms linear 0ms;
  -moz-transition: all 300ms linear 0ms;
  -ms-transition: all 300ms linear 0ms;
  -o-transition: all 300ms linear 0ms;
  transition: all 300ms linear 0ms;
}
#backtotop.on {
  display: block;
  bottom: 15px;
}
.fa-angle-up:before {
  position: relative;
  top: -2px;
}

.grecaptcha-badge {
  visibility: hidden;
}

/*------------------------------------*\
 # LOADER
\*------------------------------------*/

.noo-spinner {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 999999;
  -webkit-transition: all 0.8s ease 0s;
  -o-transition: all 0.8s ease 0s;
  transition: all 0.8s ease 0s;
}

.spinner {
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
}

.tp-loader.spinner3 {
  margin: -9px 0px 0px -35px;
  width: 70px;
  text-align: center;
}

.tp-loader.spinner3 .bounce1,
.tp-loader.spinner3 .bounce2,
.tp-loader.spinner3 .bounce3 {
  width: 18px;
  height: 18px;
  background-color: #fff;
  box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.15);
  border-radius: 100%;
  display: inline-block;
  animation: tp-bouncedelay 1.4s infinite ease-in-out;
  /* Prevent first frame from flickering when animation starts */
  animation-fill-mode: both;
}

.tp-loader.spinner3 .bounce1 {
  animation-delay: -0.32s;
}

.tp-loader.spinner3 .bounce2 {
  animation-delay: -0.16s;
}

/*------------------------------------*\
 # CANVAS
\*------------------------------------*/

canvas {
  width: 100%;
  height: 100%;
  display: block;
  right: 0;
  left: 0;
  bottom: 0;
}

/*------------------------------------*\
 # PAGE
\*------------------------------------*/

.main-title__container {
  text-align: center;
}
.main-title__container--full {
  height: 90vh;
}
.main-title__container--half {
  height: 50vh;
}
.main-title__container--portfolio-item {
  height: 550px;
  padding-left: 10px;
  padding-right: 10px;
}
.main-title__container--policy {
  padding-top: 150px;
  padding-bottom: 60px;
  text-align: left;
}

.main-title {
  letter-spacing: 0;
  position: absolute;
  z-index: 10;
  line-height: 1;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 1400px;
  padding-left: 15px;
  padding-right: 15px;
}
.main-title--high {
  position: relative;
  top: 20vh;
  transform: translateX(-50%);
}
.main-title--portfolio-item {
  position: relative;
  top: 350px;
  width: 90%;
  max-width: 1400px;
  padding-bottom: 50px;
}

.main-title-text__holder {
  line-height: 1;
  position: relative;
  top: 60%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  z-index: 10;
  text-align: center;
  max-width: 1400px;
}

.main-title-text__holder p,
.main-title--high p {
  font-size: 30px;
  font-weight: 300;
}

.section-bg-galaxy.lazy {
  background-image: none;
  background-color: #f1f1fa;
}

.section-bg-galaxy {
  background-image: url('/images/background/galaxy-1.webp');
  background-position: center;
  background-size: cover;
  max-width: 100%;
  /**
      * These are just for Chrome paint rendering hacks, in order to reduce flashes,
      * for example, during scrolling.
      */
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}

.blackish-bg-space2x {
  background-image: linear-gradient(rgba(0, 0, 0, 0.527), rgba(0, 0, 0, 0)), url('/images/background/galaxy-1.webp');
  padding: 0;
}

/**
Styling for the black hole graphics in the "Clients said about us" block
@todo Using SASS or LESS instead of CSS would be nice to simplify this.
 */
.section-bg-blackhole {
  background-color: rgb(33, 33, 54);
  background-position: center;
  background-size: auto;
  max-width: 100%;
  /**
      * These are just for Chrome paint rendering hacks, in order to reduce flashes,
      * for example, during scrolling.
      */
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
}
.section-bg-blackhole .centerHover {
  width: auto;
  height: auto;
  margin: auto;
  padding: 10px;
}
.section-bg-blackhole #blackhole {
  display: flex;
  position: relative;
  width: 100%;
  height: 100%;
}
.section-bg-blackhole .bhcanvas {
  width: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}

/*------------------------------------*\
 # SECTION
\*------------------------------------*/
section {
  position: relative;
  width: 100%;
  z-index: 1;
  padding-top: 50px;
  padding-bottom: 100px;
  margin-left: auto;
  margin-right: auto;
}
.section--interaction {
  padding: 0;
}

section h2 {
  text-align: center;
  margin-bottom: 60px;
  text-transform: uppercase;
  z-index: 10;
}

section h2.heading--left {
  margin-bottom: 20px;
  text-align: left;
}

section h3 {
  letter-spacing: 0;
  font-weight: 300;
}

/*------------------------------------*\
 # SIDE-BY-SIDE-FIELD
\*------------------------------------*/
.side-by-side-field {
  max-width: 1600px;
  margin-bottom: 50px;
  position: relative;
}

.side-by-side-field h3 {
  text-transform: uppercase;
}

.side-by-side-field__desc--software-development {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
}

/*------------------------------------*\
 # FEATURE
\*------------------------------------*/

.features h3 {
  text-transform: uppercase;
  font-size: 1.5rem;
}

.features p {
  padding-left: 70px;
}

.features a {
  margin-left: 70px;
}

.features > div {
  width: 100%;
  padding: 10px;
}

.features > div > div {
  float: left;
  font-size: 14px;
  margin-bottom: 35px;
  margin-right: 10px;
  text-align: center;
  border: 2px solid transparent;
  width: 4em;
  height: 4em;
  box-sizing: content-box;
  position: relative;
}

.features > div > div > i {
  font-size: 43px;
}

/*------------------------------------*\
 # FEATURES GRID
\*------------------------------------*/
.features-grid {
  gap: 20px;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  max-width: 1600px;
  margin: 0 auto 100px;
}
.features-grid .feature-box i {
  font-size: 50px;
  display: inline-block;
}

.feature-box:hover .tooltip {
  visibility: visible;
  opacity: 0.8;
}

.feature-box h3 {
  margin: 10px 0;
}

.tech-container__technology {
  display: flex;
  align-items: center;
  flex-basis: 10%;
  margin: 0 15px;
  text-align: center;
  min-height: 55px;
  width: 50px;
  min-width: 50px;
  flex-direction: column;
  justify-content: flex-start;
}

.tech-container__technology i {
  font-size: 24px;
}

.feature-box > div:nth-child(2) {
  position: relative;
  height: 50px;
  width: 50px;
  margin-bottom: 10px;
}

.feature-box > div:nth-child(2) img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: opacity 1s ease;
}
.feature-box .default-tech-icon {
  opacity: 1;
}
.feature-box .transition-tech-icon {
  opacity: 0;
}

.feature-box:hover .default-tech-icon {
  opacity: 0;
}

.feature-box:hover .transition-tech-icon {
  opacity: 1;
}

.technology-badge {
  padding: 0.25em 0.4em;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  text-transform: uppercase;
}

.tooltip {
  position: unset;
  z-index: 9999;
  transform: translateY(0);
  z-index: 999;
  padding: 5px 10px;
  background-color: rgba(0, 0, 0, 0.7);
  color: var(--white);
  border-radius: 4px;
  font-size: 14px;
  transition: opacity 0.3s ease-in-out;
  visibility: none;
}

/*------------------------------------*\
 # MAIN
\*------------------------------------*/

.main-introduction-gradient {
  background: linear-gradient(
    170deg,
    rgb(48, 152, 255) 0%,
    rgb(48, 152, 255) 5%,
    rgb(147, 113, 255) 29%,
    rgb(33, 33, 54) 42%,
    rgb(33, 33, 54) 100%
  );
}

.landing-section-canvas {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 2;
}

.landing-section-canvas__foreground {
  height: 160%;
  top: -30%;
  position: absolute;
  z-index: 10;
}
.landing-section-canvas__background {
  position: absolute;
  z-index: 5;
  clip-path: ellipse(95% 60% at 50% 20%);
}

.section-canvas {
  position: absolute;
  width: 100%;
  height: 160%;
  top: -30%;
  left: 0;
  z-index: 0;
}

.main-introduction__svg {
  text-align: center;
  padding: 20px;
}

#competence-section__introduction {
  padding-left: 100px;
  padding-right: 100px;
  max-width: 1600px;
  margin-left: auto;
  margin-right: auto;
}

.competence-section__introduction-item {
  padding-bottom: 50px;
  margin-left: auto;
  margin-right: auto;
}

#software-section {
  padding-bottom: 20px;
}

.main-features-svg-path {
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  fill: var(--white);
  fill-opacity: 0;
  paint-order: stroke;
  stroke-width: 1px;
  will-change: animation;
}

.animated .main-features-svg-path {
  animation-duration: 10s;
  animation-timing-function: linear;
  animation-fill-mode: forwards;
  animation-name: dash;
}

.competence-feature {
  text-align: center;
}

.circle-software-bottom {
  background: linear-gradient(90deg, rgba(0, 171, 255, 1) 0%, rgba(147, 113, 255, 1) 90%);
  left: 140px;
  bottom: 0;
  z-index: -1;
}

.main-methodologies-gradient__container {
  background-color: var(--blackish-background);
}

.main-methodologies-gradient {
  background: linear-gradient(
    167deg,
    rgba(181, 99, 255, 1) 0,
    rgba(181, 99, 255, 1) 18%,
    rgba(33, 33, 54, 1) 90%,
    rgba(33, 33, 54, 1) 100%
  );
  border-radius: 85%/20% 20% 0 0;
  background-color: black;
  width: 120%;
  margin-left: -10%;
  position: relative;
  z-index: 100;
  max-width: 120%;
  padding-left: 10%;
  padding-right: 10%;
}

.main-methodologies__container {
  padding-top: 50px;
  position: relative;
}

.methodologies__planet {
  position: absolute;
  width: 900px;
  height: 900px;
  border-radius: 450px;
  vertical-align: middle;
  display: table-cell;
  opacity: 0.1;
}

.methodologies__planet--left {
  background: #00abff;
  left: -40px;
}

.methodologies__planet--right {
  background: #b563ff;
  right: 0;
  bottom: -20px;
}

.trust-methodology-container {
  padding-left: 100px;
  padding-bottom: 150px;
}

.method-graphic-container {
  display: flex;
  flex-direction: row;
  -ms-flex-direction: row;
  padding-bottom: 30px;
}

.method-graphic-container__icons-holder {
  width: 60px;
}

.method-graphic-container__icon {
  height: 60px;
}

.methodology__paragraph {
  margin-top: auto;
  margin-bottom: auto;
  margin-left: 20px;
  text-transform: uppercase;
}

.pulsating-circle {
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  margin-top: 30px;
  will-change: transform, opacity;
}

.pulsating-circle--size-big {
  width: 518px;
  height: 518px;
  opacity: 0.2;
}

.pulsating-circle--size-medium {
  width: 459px;
  height: 459px;
  opacity: 0.5;
}

.pulsating-circle--size-small {
  width: 398px;
  height: 398px;
  opacity: 0.75;
}

.pulsating-circle:after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(
    167deg,
    rgba(0, 171, 255, 0.75) 5%,
    rgba(27, 159, 255, 0.75) 14%,
    rgba(99, 131, 255, 0.75) 35%,
    rgba(181, 99, 255, 0.75) 56%
  );
  border-radius: 400px;
  animation: pulse-dot 5s cubic-bezier(0.455, 0.03, 0.515, 0.955) -0.4s infinite;
  will-change: transform;
}

#project-need-heading {
  text-transform: uppercase;
  font-size: 30px;
}

#methodologies-orbit-container {
  width: 600px;
  position: absolute;
  left: 50%;
  top: -20px;
  height: 350px;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
}

.methodologies-orbit {
  position: absolute;
  border: solid;
  border-radius: 50%;
  border-color: var(--white);
  opacity: 0.4;
  width: 500px;
  height: 600px;
}

.methodologies-orbit-1 {
  left: -50px;
  top: -320px;
  border-width: 1px 3px 5px 3px;
  animation: methodologies-orbit-1 15s linear infinite;
}
.methodologies-orbit-2 {
  left: 10px;
  top: -290px;
  border-width: 2px 4px 6px 4px;
  animation: methodologies-orbit-2 15s linear infinite;
}
.methodologies-orbit-3 {
  left: 70px;
  top: -270px;
  border-width: 2px 4px 12px 4px;
  animation: methodologies-orbit-3 15s linear infinite;
}
.methodologies-orbit-5 {
  left: 150px;
  top: -210px;
  border-width: 8px 4px 1px 4px;
  animation: methodologies-orbit-5 15s linear infinite;
}
.methodologies-orbit-6 {
  left: 170px;
  top: -180px;
  border-width: 5px 3px 1px 3px;
  animation: methodologies-orbit-6 15s linear infinite;
}

.project-need__container {
  margin-top: auto;
  margin-bottom: auto;
  margin-left: 20px;
  -ms-flex-direction: column;
  flex-direction: column;
}

.project-need-heading {
  text-transform: uppercase;
  font-size: 30px;
  margin-bottom: 140px;
}
/**
Animating objects with lower than 1 opacity causes flickers on Edge!
 */
@supports (-ms-ime-align: auto) {
  .methodologies-orbit-1,
  .methodologies-orbit-2,
  .methodologies-orbit-3,
  .methodologies-orbit-5,
  .methodologies-orbit-6 {
    opacity: 1;
  }
}

.methodologies-content {
  margin-top: 180px;
  margin-left: 15px;
  margin-right: 15px;
}

.project-need__first {
  text-transform: uppercase;
  font-size: 16px;
  margin-bottom: 0;
}

.project-need__second {
  font-size: 16px;
  margin-bottom: 0;
}

.main-methodologies__button-holder {
  padding-top: 80px;
  text-align: center;
}

h2.heading-holder {
  margin: 0;
}

.blackhole-container {
  transition: all 1s ease;
}

.clients-said-section {
  text-align: center;
}

.clients-said__comment-container {
  padding-top: 100px;
  padding-bottom: 100px;
}

/*------------------------------------*\
 # TESTIMONIALS
\*------------------------------------*/

.testimonial-carousel .quote {
  margin-bottom: 20px;
  padding: 30px;
  font-style: normal;
  font-size: 20px;
  line-height: 1.6667;
}
.testimonial-carousel img {
  border-radius: 100%;
  display: block;
  float: left;
  width: auto;
}
.testimonial-carousel .author {
  position: relative;
  display: block;
  float: left;
  padding: 15px 20px;
  line-height: 1;
  color: var(--white);
}
.testimonial-carousel .author span:first-child {
  display: block;
  margin-bottom: 8px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: normal;
  font-style: normal;
  font-size: 18px;
}
.testimonial-carousel .author span:last-child {
  font-style: normal;
  font-size: 16px;
}
.testimonial-carousel .owl-controls {
  position: absolute;
  top: -30px;
  right: 0;
  margin-top: 0;
}
.testimonial-carousel .owl-controls .owl-pagination .owl-page span {
  background-color: var(--white-option-2);
  width: 10px;
  height: 10px;
  margin: 0 3px;
}
.client-carousel {
  text-align: center;
}
.client-carousel .item {
  position: relative;
  background-color: var(--blackish);
}
.client-carousel .item img {
  max-width: 150px;
}
.client-carousel .item .overlay-wrapper {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  overflow: hidden;
}
.client-carousel .item .overlay-wrapper .overlay {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background-color: rgba(34, 34, 34, 1);
  opacity: 0;
  transform-style: flat;
  transform: matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0.999167);
  -moz-transition: all 0.3s linear 0s;
  -o-transition: all 0.3s linear 0s;
  transition: all 0.3s linear 0s;
  -moz-transition-delay: 0.3s;
  -o-transition-delay: 0.3s;
  transition-delay: 0.3s;
}
.client-carousel .item:hover .overlay-wrapper .overlay {
  visibility: visible;
  opacity: 1;
  border-radius: 50% 50% 50% 50%;
}
.client-carousel .item .overlay-wrapper .text {
  display: block;
  width: auto;
  height: auto;
  position: absolute;
  font-size: 20px;
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
.client-carousel .item .overlay-wrapper .text-inner {
  font-size: 13px;
  line-height: 20px;
  color: var(--white);
  font-weight: 400;
  display: inline-block;
  padding: 5px 10px 4px 10px;
  position: relative;
  z-index: 2;
  text-transform: uppercase;
  opacity: 0;
  transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-delay: 0.3s;
  transform-origin: 50% 50% 0;
  transform-style: flat;
  transform: matrix3d(1, 0, 0, 0, 0, 0, -1, 0.000833333, 0, 1, 0, 0, 0, 0, 0, 1);
}
.client-carousel .item:hover .overlay-wrapper .text-inner {
  visibility: visible;
  opacity: 1;
  transform-origin: 50% 50% 0;
  transform-style: flat;
  transform: translate(0, 0);
  font-size: 13px;
  line-height: 20px;
  color: var(--white);
  font-weight: 400;
}

.item__quote {
  text-align: left;
  color: var(--white);
  background-color: rgb(28, 28, 50);
  cursor: grab;
}

/*------------------------------------*\
 # CONTACT
\*------------------------------------*/

.typewriter {
  margin: auto;
  white-space: nowrap;
  overflow: hidden;
  width: 100%;
}
#typewriter-tel.written {
  animation: typeInstant 4s steps(30, end);
}

.blinking-span {
  animation: blink 1s infinite;
}

.contact-telephone {
  padding-top: 30px;
  padding-bottom: 50px;
}

.contact-typewriter-text {
  margin-bottom: 30px;
  color: var(--white);
  text-align: center;
  position: relative;
  z-index: 1;
}

.contact-typewriter-text__heading {
  color: var(--white);
}

.contact-section-gradient {
  background: linear-gradient(166deg, rgba(33, 33, 54, 1) 10%, rgba(68, 47, 134, 1) 50%, rgba(181, 99, 255, 1) 100%);
}

.contact-section-gradient__contact-small-blue-planet {
  position: absolute;
  width: 30px;
  height: 30px;
  top: 90px;
  right: 380px;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(180deg, #68639d 0%, #2c2378 100%);
}

.contact-section-gradient__contact-small-purple-planet {
  position: absolute;
  width: 25px;
  height: 25px;
  top: 300px;
  right: 80px;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(180deg, #6c2ab0 0%, #4d357e 100%);
}

.contact-section-gradient__contact-smallest-purple-planet {
  position: absolute;
  width: 15px;
  height: 15px;
  top: 200px;
  right: 270px;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(180deg, #6e20a1 0%, #372a60 100%);
}

.section-canvas__container {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 0;
}

.thank-you-drop-in {
  text-align: center;
  margin: auto;
}

.contact-form-privacy-text {
  color: var(--white);
  font-size: 12px;
  opacity: 0.75;
}

.contact-information {
  text-align: center;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}

.contact-information > div {
  font-size: 20px;
  text-align: left;
}

#animation-contact {
  position: absolute;
  top: 12vh;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  min-height: 350px;
  min-width: 700px;
}

.contact-help-text__heading {
  font-size: 40px;
  margin-bottom: 20px;
}

/*------------------------------------*\
 # ABOUT US
\*------------------------------------*/
.small-planet-holder {
  background: linear-gradient(
    180deg,
    rgba(0, 171, 255, 1) 0%,
    rgba(68, 47, 134, 1) 30%,
    rgba(33, 33, 54, 1) 50%,
    rgba(33, 33, 54, 1) 70%,
    rgba(147, 113, 255, 1) 100%
  );
  border-radius: 0 0 175% 175%/10%;
  width: 100%;
  margin-left: 0;
  margin-top: -50px;
  margin-bottom: -120px;
  position: relative;
  z-index: 10;
}

.small-planet-holder__planet--1 {
  width: 40px;
  height: 40px;
  top: 120px;
  left: 600px;
  background-color: rgb(63, 107, 200);
}

.small-planet-holder__planet--2 {
  width: 15px;
  height: 15px;
  top: 400px;
  left: 620px;
  background-color: rgb(65, 132, 236);
}

.small-planet-holder__planet--3 {
  width: 20px;
  height: 20px;
  top: 200px;
  left: 1200px;
  background-color: rgb(135, 154, 216);
}

.small-planet-holder__planet--4 {
  width: 10px;
  height: 10px;
  top: 700px;
  left: 1000px;
  background-color: rgb(169, 118, 190);
}

.small-planet-holder__planet--5 {
  width: 20px;
  height: 20px;
  top: 1000px;
  left: 700px;
  background-color: rgb(97, 104, 145);
}

.small-planet-holder__planet--6 {
  width: 60px;
  height: 60px;
  top: 500px;
  left: 1100px;
  background-color: rgb(64, 93, 184);
}

.small-planet-holder__planet--7 {
  width: 30px;
  height: 30px;
  top: 350px;
  left: 500px;
  background: linear-gradient(135deg, rgb(124, 107, 204) 0%, rgb(164, 121, 209) 80%);
}

.small-planet-holder__planet--8 {
  width: 22px;
  height: 22px;
  top: 200px;
  left: 1300px;
  background: linear-gradient(67deg, rgb(76, 97, 189) 0%, rgb(78, 44, 110) 80%);
}

#our-mission-canvas {
  position: absolute;
  z-index: 0;
  width: 100%;
  height: 80%;
  top: 25%;
  bottom: 0;
}

#about-us-canvas {
  position: absolute;
  margin-left: -15px;
  top: 300px;
  width: 100%;
}

.about-chevron {
  margin: auto;
  background: linear-gradient(0deg, rgba(174, 95, 245, 1) 0%, rgba(103, 64, 149, 1) 100%);
  font-weight: lighter;
  font-family: pe-icon-7-stroke;
  border-radius: 50%;
  width: 88px;
  height: 88px;
}

.about-chevron__down {
  cursor: pointer;
}

.about-chevron__angle-down {
  display: inline-block;
  font-size: 90px;
  font-family: 'Pe-icon-7-stroke';
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.about-chevron__angle-down:before {
  content: '\e688';
}

#our-mission p:first-child {
  font-size: 30px;
  margin-bottom: 30px;
}

#our-mission p:last-child {
  font-size: 20px;
  font-weight: 400;
  margin-bottom: 30px;
}

#our-values > ul {
  text-align: center;
  font-size: 25px;
  font-weight: 500;
  text-transform: uppercase;
  padding-bottom: 100px;
  color: var(--white);
}

#our-values > ul li {
  padding-bottom: 20px;
}

.key-assets-section {
  background-image: linear-gradient(rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.25)), url('/images/background/nebula-2.webp');
  background-position: center;
  background-size: cover;
  max-width: 100%;
  /**
      * These are just for Chrome paint rendering hacks, in order to reduce flashes,
      * for example, during scrolling.
      */
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
  padding-top: 150px;
}

.opinion__author {
  font-weight: 500;
  font-size: 28px;
}

.opinion__project {
  font-weight: 300;
  font-size: 20px;
}

.opinion__text {
  font-weight: 300;
  font-size: 20px;
  margin-top: 30px;
}

.opinion {
  margin-right: 0;
  margin-left: auto;
  background-color: #222;
  padding: 20px;
  color: var(--white);
}

.opinion__container {
  margin: 0;
  overflow: hidden;
}

.owl-theme .owl-controls .owl-buttons div:first-of-type {
  border-radius: 40px 0 0 40px;
}

.owl-theme .owl-controls .owl-buttons div:nth-of-type(2n) {
  border-radius: 0 40px 40px 0;
}

.owl-theme .owl-controls .owl-buttons div:hover {
  background-color: rgb(34, 34, 34);
  transition: 500ms ease-out;
}

#meet-the-team {
  margin: 40px auto 80px;
}

#about-experts-section-holder {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
  top: 0;
  left: 0;
}

#about-us-big-planet-holder {
  background: linear-gradient(220deg, rgb(33, 33, 54) 20%, rgb(68, 47, 134) 60%, rgb(65, 132, 236) 100%);
  z-index: 1;
}
.about-us-big-planet {
  position: absolute;
  width: 200px;
  height: 200px;
  top: 240px;
  left: 100px;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(135deg, rgb(43, 117, 207) 0%, rgb(53, 85, 161) 80%);
}

/*------------------------------------*\
 # SERVICES
\*------------------------------------*/

.main-title__container--services {
  min-height: 90vh;
}
.services-gradient {
  background: linear-gradient(
    150deg,
    rgb(5, 5, 61) 0%,
    rgb(5, 5, 61) 5%,
    rgb(123, 73, 177) 20%,
    rgb(123, 73, 177) 25%,
    rgb(65, 132, 236) 40%,
    rgb(65, 132, 236) 45%,
    rgb(36, 34, 59) 70%,
    rgb(36, 34, 59) 100%
  );
}

.services-section-main #animation-services {
  width: 66%;
  max-width: 1000px;
  margin: auto;
}

#services-section-2-holder {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: -1;
  top: 40%;
  left: 0;
}

.portfolio-button {
  text-align: center;
}
.opportunity-planet {
  left: -500px;
  position: absolute;
  z-index: -2;
}

.services-contact-gradient {
  background: linear-gradient(150deg, rgb(68, 140, 250) 0%, rgb(38, 47, 79) 100%);
}

.services-contact-gradient .planet {
  transition-delay: 1000ms;
  transition-timing-function: cubic-bezier(0.55, 0.44, 0, 1);
  transition-duration: 4000ms;
}

.services-contact-gradient.animated .planet.planet-left {
  transform: translateX(-10px) scale(1.2);
}

.services-contact-gradient.animated .planet.planet-right {
  transform: translateX(10px) scale(1.2);
}

.services-contact-gradient.animated .services-contact-small-purple-planet {
  width: 40px;
  height: 40px;
  top: 703px;
  right: 398px;
}

.services-contact-gradient VIDEO {
  left: 1100px;
  top: 400px;
  position: absolute;
  opacity: 0.3;
  filter: grayscale(1);
  transition: 4500ms cubic-bezier(0.55, 0.44, 0, 1);
}

.services-contact-gradient.animated VIDEO {
  filter: grayscale(0);
}
.services-contact-big-blue-planet {
  position: absolute;
  width: 80px;
  height: 80px;
  top: 200px;
  left: 300px;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(180deg, rgb(113, 158, 236) 0%, rgb(83, 137, 225) 100%);
  transition: 4500ms cubic-bezier(0.55, 0.44, 0, 1);
}
.services-contact-small-blue-planet {
  position: absolute;
  width: 40px;
  height: 40px;
  top: 400px;
  left: 450px;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(180deg, rgb(113, 158, 236) 0%, rgb(83, 137, 225) 100%);
  transition: 4500ms cubic-bezier(0.55, 0.44, 0, 1);
}
.services-contact-smallest-blue-planet {
  position: absolute;
  width: 30px;
  height: 30px;
  top: 700px;
  left: 250px;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(180deg, rgb(113, 158, 236) 0%, rgb(83, 137, 225) 100%);
  transition: 4500ms cubic-bezier(0.55, 0.44, 0, 1);
}
.services-contact-small-purple-planet {
  position: absolute;
  width: 35px;
  height: 30px;
  top: 700px;
  right: 400px;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(180deg, rgb(48, 40, 77) 0%, rgb(71, 55, 139) 100%);
  transition: 4500ms cubic-bezier(0.55, 0.44, 0, 1);
}

.safari--rocky-fallback-position {
  width: 600px;
  max-width: 600px;
  position: absolute;
  left: 930px;
  top: 110px;
  opacity: 0.3;
}

/*------------------------------------*\
 # SOFTWARE DEVELOPMENT
\*------------------------------------*/
.software-development-gradient {
  background: linear-gradient(
    200deg,
    rgb(33, 33, 54) 20%,
    rgb(68, 47, 134) 40%,
    rgb(65, 132, 236) 70%,
    rgb(33, 33, 54) 90%,
    rgb(33, 33, 54) 100%
  );
  background: -moz-linear-gradient(top, #212136 20%, #442f86 40%, #4184ec 70%, #212136 90%, #212136 100%);
}
.software-development-header__container {
  max-width: 1400px;
  margin: auto;
  display: flex;
}
#software-development-header {
  clip-path: ellipse(160% 80% at 50% 10%);
  height: 100vh;
}
#software-development-title {
  position: relative;
  margin-top: 130px;
  margin-left: 15px;
}
#software-development-title h1 {
  font-family: 'Source Sans Pro';
  font-size: 80px;
  font-weight: 900;
  line-height: 1.1;
  white-space: nowrap;
}
.software-development-title--secondary {
  font-weight: 200;
}
#software-development-title h2 {
  font-family: 'Source Sans Pro';
  font-size: 25px;
  line-height: 25px;
  font-weight: 900;
  color: rgba(255, 255, 255, 0.5);
}
.rocket-slide {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  width: 100vw;
  overflow: hidden;
}

.rocket-video {
  min-height: 100%;
  transform: scale(1.001);
}

.rocket-video--left,
.rocket-video--right {
  transform: scaleX(-1);
}

.software-development-header__box-container {
  max-width: 600px;
  min-width: 600px;
  position: relative;
  margin-right: 30px;
  margin-left: auto;
  margin-top: 130px;
}

.software-development-header__box {
  height: fit-content;
  padding-top: 15px;
  padding-bottom: 15px;
}

.software-development-header__box h3 {
  text-transform: uppercase;
  line-height: 26px;
  border-width: 0px;
  letter-spacing: 0px;
  font-weight: 900;
  font-size: 24px;
}
.software-development-header__box p {
  font-size: 16px;
}
.software-development-header__box--first {
  background-color: rgb(32, 41, 52);
}
.software-development-header__box--first > div:first-child {
  text-align: center;
}
.software-development-header__box--first > div > img {
  max-height: 280px;
}

.software-development-header__box--second {
  background-color: rgb(33, 33, 54);
  margin-top: 30px;
  padding: 15px;
}
.competence__animation-container {
  position: absolute;
  width: 100%;
  height: 120%;
  z-index: 0;
  top: -10%;
  left: 0;
}
.software-canvas-holder {
  position: absolute;
  width: 100%;
  top: 50%;
}

.software-development-single-rocket {
  transform: rotate3d(0, 0, 1, 90deg);
  max-width: 100%;
}

.software-development-single-rocket__fallback {
  max-height: 500px;
}
.software-interested__heading {
  font-size: 50px;
  margin-top: 60px;
  margin-bottom: 20px;
  text-align: left;
}
.software-contact-canvas {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 0;
}

/*------------------------------------*\
 # FAST APPLICATION DEVELOPMENT
\*------------------------------------*/

#main-development {
  display: grid;
  background-color: rgb(65, 132, 236);
}

.development-details-gradient {
  background: linear-gradient(180deg, rgb(36, 34, 59) 0%, rgb(65, 132, 236) 100%);
  z-index: 1;
  height: 100vh;
}
.development-who-we-are-gradient {
  background: linear-gradient(0deg, rgb(121, 66, 252) 0%, rgb(37, 36, 62) 100%);
  margin-top: -100px;
  z-index: 100;
}

.fast-application-section {
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 100px;
  padding-bottom: 100px;
}
.fast-application-section__svg-holder {
  padding-top: 50px;
}
.fast-application-section__heading {
  font-size: 50px;
  text-align: left;
}
.fast-application-contact-canvas-holder {
  background: linear-gradient(166deg, rgba(33, 33, 54, 1) 10%, rgba(68, 47, 134, 1) 50%, rgba(181, 99, 255, 1) 100%);
  margin-top: -150px;
  padding-top: 200px;
}

.heli-listing {
  margin: 0;
  padding: 0;
}
.heli-listing li {
  margin-bottom: 10px;
  list-style-type: none;
  color: var(--white);
  font-size: 20px;
}
.heli-listing li:before {
  margin-right: 10px;
  content: '\e685';
  vertical-align: middle;
  font-family: 'Pe-icon-7-stroke';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
}

.commerce-tabs .nav-tabs {
  border-bottom: none;
  font-weight: 300;
}
.commerce-tabs .tabs > li {
  border: none;
  border-right: 1px solid var(--white-option-2);
  margin-right: 26px;
}
.commerce-tabs .tabs > li a {
  text-transform: uppercase;
  line-height: 30px;
  padding: 0;
  padding-right: 25px;
  display: block;
  letter-spacing: 2.4px;
  border: none;
  border-radius: 0;
  margin: 0;
  transition: all 0.5s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.commerce-tabs .tabs > li:first-child a {
  padding-left: 0;
}
.commerce-tabs .tabs > li:last-child {
  border: none;
}
.commerce-tabs .tabs > li a.active,
.commerce-tabs .tabs > li:hover a {
  background: none;
  font-weight: 700;
}
.commerce-tabs .tab-content {
  padding: 30px 0 0 0;
  border: none;
}
.fast-application-kpi-holder {
  margin-top: -150px;
  padding-top: 150px;
}

.portfolio-opportunities {
  padding-top: 70px;
  padding-bottom: 60px;
}

.portfolio-opportunities h2 {
  margin-bottom: 0px;
  text-align: left;
  font-size: 30px;
}

/*------------------------------------*\
 # TECHNOLOGY EXPERTISE
\*------------------------------------*/
.section-cover {
  background-repeat: no-repeat;
  background-size: cover;
}

.technologies > h3 {
  text-align: center;
  text-transform: uppercase;
  margin-bottom: 30px;
}

.services-take-look__container {
  text-align: center;
  padding-bottom: 50px;
}

/*------------------------------------*\
 # LEGAL
\*------------------------------------*/
.policy-section {
  padding-bottom: 0;
}

.policy-section:last-of-type {
  padding-bottom: 100px;
}

.policy-section h2 {
  text-align: left;
  font-size: 1.5rem;
  font-weight: 500;
  margin-bottom: 30px;
}

.policy-section h3 {
  text-transform: uppercase;
  font-size: 1.25rem;
  font-weight: 500;
  margin-top: 50px;
  margin-bottom: 30px;
}

.policy-section p {
  border-bottom: 1px solid var(--white);
  text-align: justify;
  font-size: 16px;
  margin-bottom: 8px;
}

.policy-section a {
  font-size: 16px;
  color: rgb(65, 132, 236);
}

.policy-section a:hover {
  color: rgb(45, 92, 176);
  font-size: 16px;
}

.policy-section li,
.policy-section il {
  font-size: 16px;
  color: var(--white);
}

.highlighted--yellow {
  background-color: #fffbbd;
  color: var(--black);
  font-weight: 500;
}

/*------------------------------------*\
 # PORTFOLIO
\*------------------------------------*/
.portfolio-gradient {
  background: linear-gradient(90deg, rgb(37, 36, 62) 0%, rgb(66, 145, 255) 100%);
}

.portfolio-gradient__portfolio-planet-big {
  position: absolute;
  width: 300px;
  height: 300px;
  top: 370px;
  left: 80px;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(135deg, rgb(10, 138, 207) 0%, rgb(34, 34, 57) 100%);
}

.portfolio-gradient__portfolio-planet-medium-1 {
  position: absolute;
  width: 30px;
  height: 30px;
  top: 1500px;
  right: 50px;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(135deg, rgb(10, 138, 207) 0%, rgb(148, 123, 178) 100%);
  opacity: 0.7;
}

.portfolio-gradient__portfolio-planet-medium-2 {
  position: absolute;
  width: 30px;
  height: 30px;
  top: 1600px;
  left: 100px;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(135deg, rgb(10, 138, 207) 0%, rgb(174, 95, 245) 100%);
}

.portfolio-gradient__portfolio-planet-smallest-1 {
  position: absolute;
  width: 20px;
  height: 20px;
  top: 370px;
  left: 80px;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(135deg, rgb(10, 138, 207) 0%, rgb(148, 123, 178) 100%);
}

.portfolio-gradient__portfolio-planet-smallest-2 {
  position: absolute;
  width: 15px;
  height: 15px;
  top: 160px;
  left: 1100px;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(135deg, rgb(10, 138, 207) 0%, rgb(148, 123, 178) 100%);
}

.portfolio-gradient__portfolio-planet-small {
  position: absolute;
  width: 30px;
  height: 30px;
  top: 400px;
  right: 100px;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(135deg, rgb(10, 138, 207) 0%, rgb(48, 84, 145) 100%);
}

.project-container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  text-align: center;
}

.case-studies {
  text-align: center;
  font-size: 20px;
  font-weight: 500;
  text-transform: uppercase;
  padding-bottom: 30px;
  color: var(--white);
}
.case-studies li {
  cursor: pointer;
}
.reference-active-filter {
  text-decoration: underline;
}

.reference-thumbnail {
  padding: 10px 15px;
  text-align: center;
  cursor: pointer;
}

.reference-thumbnail * {
  transition: 500ms ease-out;
}

.reference-thumbnail h3 {
  font-size: 20px;
}
.reference-thumbnail h4 {
  font-size: 35px;
  text-transform: uppercase;
}

.reference-thumbnail h4,
.reference-thumbnail h3 {
  opacity: 1;
}

.reference-thumbnail:hover VIDEO {
  opacity: 1;
}

.reference-thumbnail:hover h4,
.reference-thumbnail:hover h3 {
  opacity: 0;
}
.portfolio-video {
  aspect-ratio: 16/9;
  max-width: 100%;
  width: 100%;
}
#innerCanvas {
  position: relative;
  overflow: hidden;
}
.forwards-angle {
  border-radius: 50%/20% 20% 0 0;
  background-color: var(--black);
  width: 120%;
  margin-left: -10%;
  margin-bottom: -2px;
  position: relative;
  z-index: 100;
  max-width: 120%;
  padding-left: 10%;
  padding-right: 10%;
}
.portfolio-carousel {
  opacity: 1;
  display: block;
  margin: auto;
  max-width: 100%;
  width: 100vw;
}
.portfolio-clients .client-carousel .item {
  height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 200px;
  border-radius: 50% 50% 50% 50%;
  margin: auto;
}

.portfolio-clients .client-carousel img {
  width: 160px;
  height: auto;
  filter: brightness(0) invert(1);
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.portfolio-clients .client-carousel .item:hover img {
  width: 160px;
  height: auto;
  filter: brightness(1) invert(0);
}
#blackholeCanvas {
  position: absolute;
  width: 140%;
  height: 140%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
#blackhole {
  height: 100%;
  width: 100%;
}
.services-button {
  text-align: center;
  margin-top: 20px;
}

/*------------------------------------*\
 # PORTFOLIO SUBPAGE
\*------------------------------------*/
.reference-single-body-gradient {
  background: linear-gradient(
    220deg,
    rgb(34, 34, 34) 0%,
    rgb(52, 122, 238) 50%,
    rgb(33, 33, 54) 90%,
    rgb(33, 33, 54) 100%
  );
  padding-top: 120px;
  padding-bottom: 150px;
}
.reference-single-contact-gradient {
  animation: reference-single-contact-gradient 20s ease infinite;
  background: linear-gradient(180deg, rgb(180, 99, 255), rgb(7, 75, 128));
  background-size: 200% 200%;
  margin-top: -120px;
  margin-bottom: 0px;
}
.reference-single-gradient {
  background: linear-gradient(175deg, rgb(45, 45, 45) 0%, rgb(63, 45, 122) 30%, rgb(37, 36, 62) 70%);
  border-radius: 0 0 50% 50%/30%;
  width: 120%;
  margin-left: -10%;
  margin-top: -50px;
  margin-bottom: -120px;
  position: relative;
  z-index: 10;
}

.reference-single-gradient__reference-single-planet-2 {
  position: absolute;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(135deg, rgb(142, 107, 228) 0%, rgb(142, 107, 228) 100%);
  width: 20px;
  height: 20px;
  top: 40%;
  left: 20%;
  opacity: 0.4;
}

.reference-single-gradient__reference-single-planet-3 {
  position: absolute;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(135deg, rgb(142, 107, 228) 0%, rgb(142, 107, 228) 100%);
  width: 30px;
  height: 30px;
  top: 70%;
  left: 25%;
  opacity: 0.7;
}

.reference-single-gradient__reference-single-planet-4 {
  position: absolute;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(135deg, rgb(142, 107, 228) 0%, rgb(142, 107, 228) 100%);
  width: 20px;
  height: 20px;
  top: 85%;
  left: 80%;
  opacity: 0.2;
}

.reference-single-gradient__reference-single-planet {
  position: absolute;
  z-index: 0;
  border-radius: 50% 50% 50% 50%;
  background: linear-gradient(135deg, rgb(142, 107, 228) 0%, rgb(142, 107, 228) 100%);

  width: 100px;
  height: 100px;
  top: 100px;
  left: 70%;
  opacity: 0.8;
}

.reference__introduction-title {
  font-size: 40px;
  text-transform: uppercase;
  text-align: left;
  margin-bottom: 30px;
}

.reference__title {
  text-align: left;
  margin-bottom: 10px;
}

.portfolio-tech-container__heading {
  letter-spacing: 0;
  color: var(--white);
  text-transform: uppercase;
  font-family: 'Source Sans 3', sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  margin-bottom: 40px;
}
.feature-rich {
  max-width: 100%;
}

.portfolio-tech-container__heading--second {
  text-transform: none;
  font-family: 'Playfair Display', serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: italic;
}

.portfolio-tech-container__paragraph {
  text-align: center;
  margin-bottom: 50px;
}

.portfolio-navigation {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: normal;
  padding-top: 50px;
}

.nav-button-format {
  background-color: var(--blackish-background);
}

.reference-navigator {
  height: 100%;
  padding: 15px 0;
}

.reference-navigator--next {
  text-align: right;
}

.reference-navigator-link {
  align-items: center;
  cursor: pointer;
  display: inline-flex;
  height: 100%;
}
.nav__prev {
  padding-left: 10px;
}
.nav__next {
  padding-right: 10px;
}

#portfolio-item-canvas {
  position: absolute;
  z-index: 0;
  width: 100%;
  top: 5%;
}

/*------------------------------------*\
 # REVEALED SOCIAL
\*------------------------------------*/
#gpt-button {
  color: rgba(200, 200, 200);
  border: 1px solid rgba(200, 200, 200);
  border-radius: 45px;
  padding: 10px 30px;
  width: fit-content;
  position: relative;
  margin-left: auto;
}
#gpt-button:hover {
  background-color: rgba(200, 200, 200);
}
#gpt-button:hover p {
  color: var(--gray);
}
#gpt-button p {
  color: rgba(200, 200, 200);
  text-transform: uppercase;
  font-weight: 400;
  font-size: 16px;
  letter-spacing: 2px;
  margin-bottom: 0;
}
#gpt2-demo-message {
  opacity: 1;
  transition: 1s linear all;
  visibility: visible;
  height: auto;
}
#gpt2-demo-message.hidden {
  transform: translateY(-200px);
  transition: 1s linear all;
  opacity: 0;
  height: 0;
}
#gpt2-demo-loader {
  width: 100%;
  height: 210px;
  transform: translateY(-30px);
}

#gpt2-demo-loader VIDEO {
  width: 40%;
  margin-bottom: 10%;
}

#gpt2-demo-loader.hidden {
  transform: translateY(-200px);
  display: none;
}

#gpt2-demo-result {
  transform: translateY(-40px);
}

#gpt2-demo-loader,
#gpt2-demo-result {
  width: 100%;
  transition: 1s linear all;
  opacity: 1;
  height: auto;
}

#gpt2-demo-loader.hidden,
#gpt2-demo-result.hidden {
  transition: 1s linear all;
  opacity: 0;
  height: 0;
}
.gpt-terms-paragraph {
  font-size: 10px;
  font-style: italic;
  margin-top: 15px;
  float: right;
  padding-right: 0;
  text-align: end;
  color: var(--white-option-2);
}
#contact-input-submit.loading,
#opportunity-input-submit.loading {
  min-width: 214px;
}
#gpt2-demo-form p.written {
  animation: typeInstantLoop 3s steps(30, end);
  margin: unset;
}
.demo-result {
  font-style: italic;
  opacity: 0.8;
}

/*------------------------------------*\
 # SZERZI
\*------------------------------------*/
.reference__features h3 {
  text-transform: uppercase;
  font-size: 20px;
  font-weight: 500;
}
.reference__features > div {
  margin-top: 1rem;
  padding-right: 100px;
}
.reference__features > div > div {
  float: left;
  font-size: 14px;
  margin-right: 20px;
  width: 4em;
  height: 4em;
  box-sizing: content-box;
  position: relative;
}
.reference__features > div > div > i {
  font-size: 43px;
}
.reference__features .badge {
  font-size: 20px;
  text-transform: uppercase;
}

/*------------------------------------*\
 # TEAMS
\*------------------------------------*/
.teams-gradient {
  background: linear-gradient(45deg, rgb(65, 132, 236) 0%, rgb(60, 44, 117) 60%, rgb(34, 34, 57) 100%);
}

.teams-gradient__teams-planet-purple-strong {
  width: 30px;
  height: 30px;
  top: 150px;
  left: 400px;
  background: linear-gradient(135deg, rgb(65, 132, 236) 0%, rgb(181, 99, 255) 100%);
  animation: teams-planets-move-100 20s ease-out forwards;
}

.teams-gradient__teams-planet-purple-small {
  width: 30px;
  height: 30px;
  top: 450px;
  right: 150px;
  background: linear-gradient(135deg, rgb(150, 143, 177) 0%, rgb(134, 124, 171) 100%);
  animation: teams-planets-move-50 20s ease-out forwards;
}

.teams-gradient__teams-planet-purple-smallest-1 {
  width: 20px;
  height: 20px;
  top: 800px;
  left: 50px;
  background: linear-gradient(135deg, rgb(65, 132, 236) 30%, rgb(181, 99, 255) 100%);
  opacity: 0.5;
  animation: teams-planets-move-50 20s ease-out forwards;
}

.teams-gradient__teams-planet-purple-big {
  width: 200px;
  height: 200px;
  top: 240px;
  right: 360px;
  background: linear-gradient(135deg, rgb(65, 132, 236) 40%, rgb(181, 99, 255) 100%);
  opacity: 0.1;
  animation: teams-planets-move-200 20s ease-out forwards;
}

.teams-gradient__teams-planet-purple-smallest-2 {
  width: 30px;
  height: 30px;
  top: 950px;
  left: 80px;
  background: linear-gradient(135deg, rgb(65, 132, 236) 30%, rgb(181, 99, 255) 100%);
  opacity: 0.5;
  animation: teams-planets-move-50 20s ease-out forwards;
}

.teams-gradient__teams-planet-purple-smallest-3 {
  width: 10px;
  height: 10px;
  top: 700px;
  right: 180px;
  background: linear-gradient(135deg, rgb(65, 132, 236) 30%, rgb(181, 99, 255) 100%);
  opacity: 0.8;
  animation: teams-planets-move-50 20s ease-out forwards;
}

.teams-gradient__teams-planet-purple-smallest-4 {
  width: 15px;
  height: 15px;
  top: 900px;
  right: 120px;
  background: linear-gradient(135deg, rgb(65, 132, 236) 30%, rgb(181, 99, 255) 100%);
  opacity: 0.5;
  animation: teams-planets-move-50 20s ease-out forwards;
}

.teams-gradient__teams-planet-purple-fading {
  width: 80px;
  height: 80px;
  bottom: 10px;
  left: 300px;
  z-index: 0;
  opacity: 0.2;
  animation: teams-planets-move-100 20s ease-out forwards;
}
.teams-orbit-container {
  animation: teams-orbit-move-100 20s ease-out forwards;
  position: absolute;
  left: 20px;
  top: 0px;
  width: 750px;
  height: 350px;
  transform-style: preserve-3d;
  transform: rotateX(75deg) rotateY(-20deg);
}
.teams-orbit {
  position: absolute;
  width: 1200px;
  height: 1200px;
  left: 30px;
  top: -200px;
  border: solid;
  border-radius: 50% 50% 50% 50%;
  border-width: 1px 2px 1px 2px;
  border-color: var(--white);
  opacity: 0.2;
  animation: orbit 5s linear infinite;
  transform-style: preserve-3d;
}

.dot-container {
  opacity: 0;
  position: relative;
  width: 100px;
  height: 100px;
  left: 200px;
  border: solid 10px var(--white);
  position: absolute;
  transform-style: preserve-3d;
  animation: 5s invert linear infinite;
}
.demo-dot {
  position: relative;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background-color: #fff;
}
.teams-orbit__teams-orbit-2 {
  position: absolute;
  left: -10px;
  top: -180px;
  opacity: 0.1;
  animation: teams-orbit-2-move 10s infinite;
}
.teams-our-team-description {
  font-size: 25px;
  font-weight: 400;
  margin-top: 20px;
  text-align: center;
}
.teams-our-team-more-description {
  font-size: 25px;
  text-align: center;
}
.bhRender-holder {
  background-color: var(--black);
  background-position: center;
  background-size: auto;
  max-width: 100%;
  /**
      * These are just for Chrome paint rendering hacks, in order to reduce flashes,
      * for example, during scrolling.
      */
  transform: translateZ(0);
  -webkit-transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  will-change: transform;
  padding-top: 100px;
  -webkit-filter: grayscale(0.5);
  -moz-filter: grayscale(0.5);
  filter: grayscale(0.5);
  pointer-events: none;
}
#bhRenderCanvas {
  position: absolute;
  top: 0;
  z-index: -1;
  height: 120%;
  width: 100vw;
}
.opportunities-list-gradient {
  background: linear-gradient(180deg, rgb(123, 73, 177) 0%, rgb(36, 34, 59) 90%);
}
.opportunities-contact-gradient {
  background: linear-gradient(180deg, rgb(36, 34, 59) 10%, rgb(65, 132, 236) 100%);
  overflow: visible;
}

.opportunities-contact-gradient__planet--strong {
  width: 30px;
  height: 30px;
  top: 150px;
  left: 180px;
  background: linear-gradient(135deg, rgb(32, 79, 160) 0%, rgb(60, 35, 155) 100%);
}

.opportunities-contact-gradient__planet--light-1 {
  width: 50px;
  height: 50px;
  top: 550px;
  left: 100px;
  background: linear-gradient(135deg, rgb(76, 144, 202) 0%, rgb(152, 165, 202) 100%);
}

.opportunities-contact-gradient__planet--light-2 {
  width: 20px;
  height: 20px;
  top: 420px;
  left: 300px;
  background: linear-gradient(135deg, rgb(76, 144, 202) 0%, rgb(152, 165, 202) 100%);
}

.opportunities-contact-gradient__planet--light-3 {
  width: 25px;
  height: 25px;
  top: 820px;
  right: 300px;
  background: linear-gradient(135deg, rgb(76, 144, 202) 0%, rgb(152, 165, 202) 100%);
}

/*------------------------------------*\
 # OPEN POSITIONS
\*------------------------------------*/
.open-positions-section__opportunities-big-planet {
  background: linear-gradient(180deg, rgb(110, 97, 212) 0%, rgb(52, 46, 110) 100%);
  height: 750px;
  left: 1100px;
  top: 300px;
  width: 750px;
}

.open-positions-section__opportunities-small-planet {
  background: linear-gradient(25deg, rgb(110, 97, 212) 0%, rgb(65, 132, 236) 100%);
  border-radius: 50% 50% 50% 50%;
  height: 25px;
  left: 300px;
  position: absolute;
  top: 300px;
  width: 25px;
  z-index: 0;
}

.open-positions-section__opportunities-small-planet--opportunities-small-planet-dirty {
  background: linear-gradient(25deg, rgb(148, 123, 178) 0%, rgb(77, 54, 114) 100%);
  left: 800px;
  top: 300px;
}

.open-positions-section__opportunities-small-planet--opportunities-small-planet-left {
  left: 300px;
  top: 250px;
}

.open-positions-section__opportunities-small-planet--opportunities-small-planet-right {
  left: 1400px;
  top: 150px;
}
.open-positions__text {
  text-align: center;
}
.recent-posts {
  float: left;
  width: 100%;
}
.recent-posts > .item.row > .col-lg-9 {
  padding: 0;
}
.recent-posts .item {
  margin: auto auto 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--white-option-2);
  float: left;
  width: 100%;
  position: relative;
}
.recent-posts img {
  float: left;
  margin-right: 20px;
  max-width: 100%;
}
.recent-posts h3 a {
  font-size: 20px;
  font-weight: normal;
  text-transform: uppercase;
}
.recent-posts i {
  margin-right: 5px;
}
.recent-posts .col-lg-3 {
  text-align: right;
  position: static;
}

/*------------------------------------*\
 # OPPORTUNITY
\*------------------------------------*/
.job-opportunities-section {
  background-image: linear-gradient(rgba(0, 0, 0, 0.527), rgba(0, 0, 0, 0)), url('/images/background/galaxy-1.webp');
  background-repeat: repeat-x;
  background-repeat: repeat-y;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-filter: grayscale(0.3);
  -moz-filter: grayscale(0.3);
  filter: grayscale(0.3);
  padding-bottom: 200px;
  padding-top: 90px;
  z-index: 0;
}
.breadcrumb {
  padding: 0;
  background: none;
  margin-bottom: 3px;
}
.breadcrumb__list {
  position: relative;
  display: inline-block;
  padding: 0;
  margin-bottom: 0;
  margin-left: 3px;
  text-transform: none;
  color: var(--white);
  margin-top: 60px;
}
.breadcrumb__list li {
  display: inline-block;
  margin-right: 6px;
}
.breadcrumb__list a {
  color: var(--white);
}
.breadcrumb__list li a:after {
  margin-left: 10px;
  content: '/';
}
.breadcrumb__list li:last-child a:after {
  margin: 0px;
  content: '';
}
.opportunity-gradient {
  background: linear-gradient(
    150deg,
    rgb(36, 34, 59) 0%,
    rgb(65, 132, 236) 33%,
    rgb(123, 73, 177) 66%,
    rgb(5, 5, 61) 100%
  );
  border-radius: 80% 80% 0 0/10%;
  width: 120%;
  margin-left: -10%;
  margin-top: -170px;
  position: relative;
  padding-left: 10%;
  padding-right: 10%;
}
.opportunity-gradient input[type='submit']:hover {
  color: black;
}

.opportunity-gradient input[type='text']::placeholder,
input[type='email']::placeholder,
textarea::placeholder {
  color: lightgray;
}
.opportunity-gradient input[type='text']::-ms-input-placeholder,
input[type='email']::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: lightgray;
}
.looking-container {
  padding: 50px;
  margin-bottom: 50px;
  background-color: var(--black);
}
.apply-container {
  padding-top: 0px;
  padding-bottom: 0px;
  margin-top: -150px;
  margin-bottom: -150px;
}
.apply-container__planet {
  height: 800px;
}
.apply-container__text {
  top: 300px;
  height: max-content;
}

.safari--jupyter-fallback-position {
  width: 750px;
  max-width: 750px;
  margin-top: 100px;
  margin-left: -100px;
  padding-bottom: 200px;
  opacity: 0.8;
}
.opportunity-apply-heading {
  font-size: 50px;
  margin-top: 60px;
  margin-bottom: 20px;
  text-align: left;
}
.cv-file-container {
  margin-bottom: 20px;
  text-align: left;
  color: var(--white);
}
.cv-file-text {
  font-size: 15px;
  font-weight: 300;
}
.cv-button {
  z-index: 1;
}
.submit-application-container {
  text-align: center;
  z-index: 10;
}
.bg--dark {
  background-color: var(--black);
}

.opportunity-scala,
.opportunity-android,
.opportunity-hardware {
  height: auto;
  max-height: 500px;
  margin-top: -200px;
}
.opportunity-frontend {
  height: auto;
  max-height: 350px;
  margin-top: -30px;
}
.placeholder {
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
}
.placeholder img {
  position: absolute;
  top: 0;
  left: 0;
  transition: opacity 1s linear;
}

#opportunity-canvas {
  position: absolute;
  z-index: 0;
  height: 100%;
  width: 100%;
  top: -30%;
  margin-left: -10%;
}

.image-of-opportunity {
  text-align: center;
}

/*------------------------------------*\
 # KPI BLOCK
\*------------------------------------*/

.kpi-block__container {
  background-repeat: repeat-x;
  background-repeat: repeat-y;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: linear-gradient(rgba(0, 0, 0, 0.527), rgba(0, 0, 0, 0)), url('/images/kpi/kpi-galaxy-3.avif');
  -webkit-filter: grayscale(0.3);
  -moz-filter: grayscale(0.3);
  filter: grayscale(0.3);
}

.kpi-block {
  z-index: 0;
  padding-bottom: 50px;
}

.kpi-block__row {
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  align-content: flex-end;
  text-align: center;
  justify-content: center;
}

.counter-block {
  text-align: center;
}

.counter-block img {
  opacity: 0.75;
}

.counter-block div {
  font-size: 43px;
  margin-bottom: 10px;
}

.counter-block h2 {
  color: var(--white);
  font-weight: 400;
  text-transform: uppercase;
  font-size: 1.25rem;
  min-height: 50px;
  margin-bottom: 0.5rem;
}

.counter-block p {
  font-size: 36px;
  font-weight: 300;
}

/*------------------------------------*\
 # INDUSTRY
\*------------------------------------*/

.industry-expertise__container {
  background: linear-gradient(166deg, rgba(33, 33, 54, 1) 10%, rgba(33, 33, 54, 1) 50%, rgba(33, 33, 54, 1) 100%);
}

.industry-focus {
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
  gap: 30px;
}

.industry-focus h3 {
  margin-top: 0.5rem;
  text-transform: uppercase;
}
.industry-focus p {
  margin-bottom: 30px;
}

/*------------------------------------*\
 # TITLE ANIMATIONS
\*------------------------------------*/
#logo-title {
  width: 90%;
  max-width: 1600px;
  position: relative;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.enliven-systems-space-text {
  filter: contrast(90%) grayscale(0.4);
  width: 100%;
}
.rev-title--heli-12 {
  white-space: nowrap;
  text-transform: uppercase;
  color: #fff;
  font-style: normal;
  font-family: Source Sans Pro;
  text-decoration: none;
  letter-spacing: 11px;
}
.rev-title--heli-1 {
  margin-top: 20px;
  font-size: 30px;
  font-weight: 300;
  color: rgba(255, 255, 255, 1);
  font-family: Source Sans Pro;
}
