:root {
  --primary-color: #8fb3c6;
  --secondary-color: #967fa9; }

.fl-pricing-table .fl-pricing-table-col-3:nth-child(2) {
  margin-top: -1em; }

.fl-pricing-table .fl-pricing-table-column {
  border-radius: 16px !important;
  -webkit-box-shadow: 0 0 120px rgba(5, 22, 70, 0.09), -5px 4px 10px rgba(5, 22, 70, 0.05), 0px 2px 2px rgba(0, 0, 0, 0.05);
          box-shadow: 0 0 120px rgba(5, 22, 70, 0.09), -5px 4px 10px rgba(5, 22, 70, 0.05), 0px 2px 2px rgba(0, 0, 0, 0.05);
  overflow: hidden;
  -webkit-transition: box-sahadow 0.8s cubic-bezier(0.65, 0, 0.076, 1), -webkit-transform 0.8s cubic-bezier(0.65, 0, 0.076, 1);
  transition: box-sahadow 0.8s cubic-bezier(0.65, 0, 0.076, 1), -webkit-transform 0.8s cubic-bezier(0.65, 0, 0.076, 1);
  -o-transition: transform 0.8s cubic-bezier(0.65, 0, 0.076, 1), box-sahadow 0.8s cubic-bezier(0.65, 0, 0.076, 1);
  transition: transform 0.8s cubic-bezier(0.65, 0, 0.076, 1), box-sahadow 0.8s cubic-bezier(0.65, 0, 0.076, 1);
  transition: transform 0.8s cubic-bezier(0.65, 0, 0.076, 1), box-sahadow 0.8s cubic-bezier(0.65, 0, 0.076, 1), -webkit-transform 0.8s cubic-bezier(0.65, 0, 0.076, 1); }
  .fl-pricing-table .fl-pricing-table-column:hover {
    -webkit-transform: scale(1.015);
        -ms-transform: scale(1.015);
            transform: scale(1.015);
    -webkit-box-shadow: 0 0 120px rgba(5, 22, 70, 0.09), -5px 4px 10px rgba(5, 22, 70, 0.05), 0px 2px 2px rgba(0, 0, 0, 0.05);
            box-shadow: 0 0 120px rgba(5, 22, 70, 0.09), -5px 4px 10px rgba(5, 22, 70, 0.05), 0px 2px 2px rgba(0, 0, 0, 0.05); }
  .fl-pricing-table .fl-pricing-table-column .fl-pricing-table-inner-wrap {
    padding: 2em;
    border: 0 !important; }
    .fl-pricing-table .fl-pricing-table-column .fl-pricing-table-inner-wrap .fl-pricing-table-price {
      color: var(--primary-color); }

.intro-img-apps-rotator {
  overflow-y: visible; }
  .intro-img-apps-rotator .intro-images-rotator-image-bg {
    position: absolute;
    top: 0;
    left: 0; }
  .intro-img-apps-rotator img.intro-images-rotator-image {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    -webkit-transition-delay: 1s;
         -o-transition-delay: 1s;
            transition-delay: 1s;
    -webkit-transform: translateZ(0);
            transform: translateZ(0); }
    .intro-img-apps-rotator img.intro-images-rotator-image.active {
      opacity: 1; }
  .intro-img-apps-rotator img.intro-images-rotator-image, .intro-img-apps-rotator img.intro-images-rotator-image-bg {
    margin-top: 1.4em;
    -webkit-transition: opacity 1s linear 1s, -webkit-transform 1s cubic-bezier(0.28, 0.15, 0.46, 0.98) 0s;
    transition: opacity 1s linear 1s, -webkit-transform 1s cubic-bezier(0.28, 0.15, 0.46, 0.98) 0s;
    -o-transition: opacity 1s linear 1s, transform 1s cubic-bezier(0.28, 0.15, 0.46, 0.98) 0s;
    transition: opacity 1s linear 1s, transform 1s cubic-bezier(0.28, 0.15, 0.46, 0.98) 0s;
    transition: opacity 1s linear 1s, transform 1s cubic-bezier(0.28, 0.15, 0.46, 0.98) 0s, -webkit-transform 1s cubic-bezier(0.28, 0.15, 0.46, 0.98) 0s; }
    .intro-img-apps-rotator img.intro-images-rotator-image.rotator-zoom, .intro-img-apps-rotator img.intro-images-rotator-image-bg.rotator-zoom {
      -webkit-transform: scale(1.05);
          -ms-transform: scale(1.05);
              transform: scale(1.05); }

/*
    SECTION MODULES
 */
.swiper-container {
  width: 1280px;
  max-width: 90%;
  margin: 0;
  overflow: hidden; }

.swiper-container .swiper-slide {
  display: inline-block;
  text-align: center;
  text-decoration: none; }

.swiper-container .swiper-slide:hover {
  text-decoration: none; }

.swiper-container .swiper-slide img {
  will-change: transform, opacity;
  -webkit-transition: opacity 0.3s ease-in-out, -webkit-transform 0.5s cubic-bezier(0.65, 0, 0.076, 1);
  transition: opacity 0.3s ease-in-out, -webkit-transform 0.5s cubic-bezier(0.65, 0, 0.076, 1);
  -o-transition: transform 0.5s cubic-bezier(0.65, 0, 0.076, 1), opacity 0.3s ease-in-out;
  transition: transform 0.5s cubic-bezier(0.65, 0, 0.076, 1), opacity 0.3s ease-in-out;
  transition: transform 0.5s cubic-bezier(0.65, 0, 0.076, 1), opacity 0.3s ease-in-out, -webkit-transform 0.5s cubic-bezier(0.65, 0, 0.076, 1);
  -webkit-transform: scale(0.85);
      -ms-transform: scale(0.85);
          transform: scale(0.85);
  opacity: 0.75;
  width: 210px;
  max-width: 100%;
  cursor: pointer; }

.swiper-container .swiper-slide:hover img {
  opacity: 1; }

.swiper-container .swiper-slide:hover .swiper-title {
  color: var(--secondary-color); }

.swiper-container .swiper-slide.active img {
  -webkit-transform: scale(0.95);
      -ms-transform: scale(0.95);
          transform: scale(0.95);
  opacity: 1; }

.swiper-container .swiper-slide .swiper-title {
  text-align: center;
  line-height: 1.2;
  margin-top: 1.5em;
  color: var(--primary-color);
  will-change: color;
  -webkit-transition: color 0.3s linear;
  -o-transition: color 0.3s linear;
  transition: color 0.3s linear; }

.swiper-outer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center; }

.swiper-button-prev, .swiper-button-next {
  padding: 10px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  position: static;
  color: var(--secondary-color);
  opacity: 0.3;
  will-change: opacity;
  -webkit-transition: opacity .2s ease-in-out;
  -o-transition: opacity .2s ease-in-out;
  transition: opacity .2s ease-in-out;
  outline: none; }

.swiper-button-prev:hover, .swiper-button-next:hover {
  opacity: 1; }

.swiper-button-disabled {
  opacity: 0 !important; }

/* SHIMMER */
.shimmer {
  text-align: center;
  color: rgba(255, 255, 255, 0.1);
  background: -webkit-gradient(linear, left top, right top, from(#ddd), to(#ddd), color-stop(0.5, #fff));
  background: -moz-gradient(linear, left top, right top, from(#ddd), to(#ddd), color-stop(0.5, #fff));
  background: gradient(linear, left top, right top, from(#ddd), to(#ddd), color-stop(0.5, #fff));
  background-size: 34px 120%;
  -webkit-background-clip: text;
  -moz-background-clip: text;
  background-clip: text;
  -webkit-animation-name: shimmer;
  animation-name: shimmer;
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-color: #ddd; }

@-webkit-keyframes shimmer {
  0% {
    background-position: 150% 0%; }
  100% {
    background-position: -100% 0%; } }

@keyframes shimmer {
  0% {
    background-position: 150% 0%; }
  100% {
    background-position: -100% 0%; } }

@-webkit-keyframes scroll-arrows {
  0% {
    -webkit-transform: translateX(0) scale(0.85);
            transform: translateX(0) scale(0.85);
    opacity: 0; }
  30% {
    -webkit-transform: translateX(0) scale(0.85);
            transform: translateX(0) scale(0.85);
    opacity: 0; }
  50% {
    -webkit-transform: translateX(-3px) scale(1);
            transform: translateX(-3px) scale(1);
    opacity: .8; }
  60% {
    -webkit-transform: translateX(-6px) scale(0.85);
            transform: translateX(-6px) scale(0.85);
    opacity: 0; } }

@keyframes scroll-arrows {
  0% {
    -webkit-transform: translateX(0) scale(0.85);
            transform: translateX(0) scale(0.85);
    opacity: 0; }
  30% {
    -webkit-transform: translateX(0) scale(0.85);
            transform: translateX(0) scale(0.85);
    opacity: 0; }
  50% {
    -webkit-transform: translateX(-3px) scale(1);
            transform: translateX(-3px) scale(1);
    opacity: .8; }
  60% {
    -webkit-transform: translateX(-6px) scale(0.85);
            transform: translateX(-6px) scale(0.85);
    opacity: 0; } }

#contact-details .fl-module-icon .fl-icon-wrap .fl-icon {
  vertical-align: top; }
  #contact-details .fl-module-icon .fl-icon-wrap .fl-icon i {
    float: none;
    margin-top: 8px;
    width: 1.2em;
    display: inline-block;
    text-align: center; }

#contact-details .fl-module-icon .fl-icon-wrap .fl-icon-text {
  padding-left: 34px; }
  #contact-details .fl-module-icon .fl-icon-wrap .fl-icon-text h4 {
    margin-bottom: 0; }

@media screen and (min-width: 1920px) {
  html {
    background-color: rgba(150, 127, 169, 0.28); }
  body, header {
    max-width: 1920px;
    margin: 0 auto !important; } }

#scroll-to-start {
  position: fixed;
  top: 33%;
  left: 64px;
  -webkit-transform: rotate(-90deg) translateX(-50%);
      -ms-transform: rotate(-90deg) translateX(-50%);
          transform: rotate(-90deg) translateX(-50%);
  -webkit-transform-origin: 0 100%;
      -ms-transform-origin: 0 100%;
          transform-origin: 0 100%;
  color: #eeeeee;
  opacity: 1; }

@media screen and (max-height: 600px) {
  #scroll-to-start {
    display: none; } }

.scroll-to-start-text {
  display: inline-block; }

.arr-wrapper {
  display: inline-block;
  margin-right: 10px;
  cursor: pointer;
  border: solid 2px transparent;
  -webkit-transition: border .3s linear;
  -o-transition: border .3s linear;
  transition: border .3s linear;
  padding: 7px 12px;
  border-radius: 18px; }
  .arr-wrapper:hover {
    border: solid 2px rgba(232, 232, 232, 0.5); }

.arr {
  display: inline-block;
  width: 7px;
  height: 12px;
  position: relative;
  -webkit-transform: translateX(0) scale(0.7);
      -ms-transform: translateX(0) scale(0.7);
          transform: translateX(0) scale(0.7);
  opacity: 0; }

.arr:before {
  content: '';
  display: block;
  width: 8px;
  height: 1px;
  -webkit-transform: rotate(-55deg);
      -ms-transform: rotate(-55deg);
          transform: rotate(-55deg);
  -webkit-transform-origin: right top;
      -ms-transform-origin: right top;
          transform-origin: right top;
  background-color: #ddd; }

.arr:after {
  content: '';
  display: block;
  width: 8px;
  height: 1px;
  -webkit-transform: rotate(55deg);
      -ms-transform: rotate(55deg);
          transform: rotate(55deg);
  -webkit-transform-origin: left top;
      -ms-transform-origin: left top;
          transform-origin: left top;
  background-color: #ddd;
  position: relative;
  top: 6px;
  left: 4px; }

.arr:nth-child(1) {
  -webkit-animation: scroll-arrows 3s ease-in-out 1.75s infinite normal;
          animation: scroll-arrows 3s ease-in-out 1.75s infinite normal; }

.arr:nth-child(2) {
  -webkit-animation: scroll-arrows 3s ease-in-out 1.5s infinite normal;
          animation: scroll-arrows 3s ease-in-out 1.5s infinite normal; }

.arr:nth-child(3) {
  -webkit-animation: scroll-arrows 3s ease-in-out 1.25s infinite normal;
          animation: scroll-arrows 3s ease-in-out 1.25s infinite normal; }

.arr:nth-child(4) {
  -webkit-animation: scroll-arrows 3s ease-in-out 1s infinite normal;
          animation: scroll-arrows 3s ease-in-out 1s infinite normal; }

.arr:nth-child(5) {
  -webkit-animation: scroll-arrows 3s ease-in-out 0.75s infinite normal;
          animation: scroll-arrows 3s ease-in-out 0.75s infinite normal; }

.arr:nth-child(6) {
  -webkit-animation: scroll-arrows 3s ease-in-out 0.5s infinite normal;
          animation: scroll-arrows 3s ease-in-out 0.5s infinite normal; }

.arr:nth-child(7) {
  -webkit-animation: scroll-arrows 3s ease-in-out 0.25s infinite normal;
          animation: scroll-arrows 3s ease-in-out 0.25s infinite normal; }

.arr:nth-child(8) {
  -webkit-animation: scroll-arrows 3s ease-in-out 0s infinite normal;
          animation: scroll-arrows 3s ease-in-out 0s infinite normal; }

/*
    DOT NAVIGATION
 */
.pp-dotnav {
  top: 70% !important; }

.pp-dotnav .pp-dots .pp-dot a span.pp-dot-circle {
  will-change: color, transform;
  -webkit-transition: height 0.3s cubic-bezier(0.65, 0, 0.076, 1), top 0.3s cubic-bezier(0.65, 0, 0.076, 1), -webkit-transform 0.3s cubic-bezier(0.65, 0, 0.076, 1);
  transition: height 0.3s cubic-bezier(0.65, 0, 0.076, 1), top 0.3s cubic-bezier(0.65, 0, 0.076, 1), -webkit-transform 0.3s cubic-bezier(0.65, 0, 0.076, 1);
  -o-transition: transform 0.3s cubic-bezier(0.65, 0, 0.076, 1), height 0.3s cubic-bezier(0.65, 0, 0.076, 1), top 0.3s cubic-bezier(0.65, 0, 0.076, 1);
  transition: transform 0.3s cubic-bezier(0.65, 0, 0.076, 1), height 0.3s cubic-bezier(0.65, 0, 0.076, 1), top 0.3s cubic-bezier(0.65, 0, 0.076, 1);
  transition: transform 0.3s cubic-bezier(0.65, 0, 0.076, 1), height 0.3s cubic-bezier(0.65, 0, 0.076, 1), top 0.3s cubic-bezier(0.65, 0, 0.076, 1), -webkit-transform 0.3s cubic-bezier(0.65, 0, 0.076, 1);
  width: 12px;
  height: 12px;
  border-radius: 6px;
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5); }

.pp-dotnav .pp-dots .pp-dot:hover:not(.active) a span.pp-dot-circle {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1); }

.pp-dotnav .pp-dots .pp-dot.active a span.pp-dot-circle {
  top: 0;
  height: 25px; }

.pp-advanced-menu .sub-menu {
  width: auto !important; }

.pp-advanced-menu .pp-menu-toggle {
  right: 0 !important; }

@media screen and (max-width: 768px) {
  .pp-advanced-menu .sub-menu {
    margin-right: 1em;
    margin-bottom: 1.2em; }
  .pp-advanced-menu .pp-menu-toggle {
    right: -14px !important;
    -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
            transform: rotate(-90deg);
    -webkit-transition: -webkit-transform .3s ease-in-out;
    transition: -webkit-transform .3s ease-in-out;
    -o-transition: transform .3s ease-in-out;
    transition: transform .3s ease-in-out;
    transition: transform .3s ease-in-out, -webkit-transform .3s ease-in-out; }
  .pp-advanced-menu .pp-has-submenu.pp-active > .pp-has-submenu-container .pp-menu-toggle {
    -webkit-transform: rotate(0deg) !important;
        -ms-transform: rotate(0deg) !important;
            transform: rotate(0deg) !important; } }

.trp-language-switcher-container.pp-has-submenu {
  float: right; }
  .trp-language-switcher-container.pp-has-submenu .sub-menu {
    display: none !important; }

@media screen and (min-width: 768px) {
  header .pp-advanced-menu .menu-item:not(.trp-language-switcher-container) .sub-menu {
    display: none !important; } }

.menu-item a {
  outline: none !important; }
  .menu-item a[href="#"] {
    cursor: default; }
  @media screen and (min-width: 992px) {
    .menu-item a:not([href="#"]) > span.menu-item-text {
      position: relative; }
      .menu-item a:not([href="#"]) > span.menu-item-text:after {
        content: '';
        position: absolute;
        width: 100%;
        height: 2px;
        bottom: -0.5em;
        left: 0;
        background: currentColor;
        pointer-events: none;
        -webkit-transform-origin: right center;
            -ms-transform-origin: right center;
                transform-origin: right center;
        -webkit-transform: scaleX(0);
            -ms-transform: scaleX(0);
                transform: scaleX(0);
        -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
        transition: -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
        -o-transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
        transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1);
        transition: transform 0.5s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1); }
        .ccf-submenu .menu-item a:not([href="#"]) > span.menu-item-text:after {
          height: 1px;
          bottom: -0.2em; } }

.menu-item:not(.trp-language-switcher-container) a:hover > span.menu-item-text:after, .menu-item:not(.trp-language-switcher-container).current-menu-item a > span.menu-item-text:after, .menu-item:not(.trp-language-switcher-container).current-menu-ancestor > div > a > span.menu-item-text:after {
  -webkit-transform: scaleX(1);
      -ms-transform: scaleX(1);
          transform: scaleX(1);
  -webkit-transform-origin: left center;
      -ms-transform-origin: left center;
          transform-origin: left center; }

.ccf-submenu-wrapper {
  background: rgba(2, 2, 2, 0.71);
  text-align: center;
  display: none;
  position: absolute;
  width: 100%; }
  .ccf-submenu-wrapper .ccf-submenu-logo-wrapper, .ccf-submenu-wrapper .ccf-submenu-btn-close, .ccf-submenu-wrapper .ccf-submenu-btn-back {
    display: none; }
  @media screen and (max-width: 992px) {
    .ccf-submenu-wrapper {
      background-color: rgba(0, 0, 0, 0.8);
      position: fixed;
      top: 0;
      height: 100%;
      overflow: auto; }
      .ccf-submenu-wrapper .ccf-submenu .ccf-submenu-headline {
        display: block; }
      .ccf-submenu-wrapper .ccf-submenu-logo-wrapper {
        display: block;
        margin: 2.5em 0 0 2.2em;
        text-align: left; }
        .ccf-submenu-wrapper .ccf-submenu-logo-wrapper img {
          width: 200px !important; }
      .ccf-submenu-wrapper .ccf-submenu-btn-close {
        display: inline-block;
        position: absolute;
        top: 1rem;
        right: 2.5rem;
        font-size: 4em;
        font-weight: 100;
        color: white;
        cursor: pointer; }
      .ccf-submenu-wrapper .ccf-submenu-btn-back {
        cursor: pointer;
        display: inline-block;
        position: absolute;
        left: 1.6em;
        top: 6.6em;
        height: 3em;
        padding: .5em; }
        .ccf-submenu-wrapper .ccf-submenu-btn-back .btn-arrow {
          display: inline-block;
          width: 1.5em;
          height: 2px;
          background-color: white;
          position: relative;
          border-radius: 2px; }
          .ccf-submenu-wrapper .ccf-submenu-btn-back .btn-arrow:before, .ccf-submenu-wrapper .ccf-submenu-btn-back .btn-arrow:after {
            content: "";
            display: inline-block;
            position: absolute;
            left: 0;
            top: 0;
            background-color: inherit;
            width: 0.85em;
            height: inherit;
            border-radius: inherit;
            -webkit-transform-origin: left center;
                -ms-transform-origin: left center;
                    transform-origin: left center; }
          .ccf-submenu-wrapper .ccf-submenu-btn-back .btn-arrow:before {
            -webkit-transform: rotate(45deg);
                -ms-transform: rotate(45deg);
                    transform: rotate(45deg); }
          .ccf-submenu-wrapper .ccf-submenu-btn-back .btn-arrow:after {
            -webkit-transform: rotate(-45deg);
                -ms-transform: rotate(-45deg);
                    transform: rotate(-45deg); } }

.ccf-submenu {
  display: block;
  margin: 2em auto;
  text-align: left;
  letter-spacing: 2px;
  font-weight: 500; }
  .ccf-submenu .ccf-submenu-headline {
    font-size: 1.2em;
    color: white;
    text-transform: uppercase;
    display: inline-block;
    margin: 0 0 2em 4.3em;
    position: relative;
    top: .8em; }
    .ccf-submenu .ccf-submenu-headline:before {
      content: '';
      display: inline-block;
      width: 3px;
      height: 1em;
      margin-right: 1em;
      background-color: var(--secondary-color);
      -webkit-transform: rotate(15deg);
          -ms-transform: rotate(15deg);
              transform: rotate(15deg); }
  .ccf-submenu > div {
    display: inline-block; }
  .ccf-submenu a[href="#"]:hover {
    text-decoration: none; }
  .ccf-submenu .menu {
    display: block; }
    .ccf-submenu .menu > .menu-item {
      display: inline-block;
      padding: 1em 3em;
      vertical-align: top;
      max-width: 100%; }
      .ccf-submenu .menu > .menu-item a:not([href="#"]):hover {
        text-decoration: none; }
      .ccf-submenu .menu > .menu-item > a {
        color: white; }
      .ccf-submenu .menu > .menu-item .sub-menu {
        padding: 1em 0 0 0; }
        .ccf-submenu .menu > .menu-item .sub-menu .menu-item {
          display: block;
          margin: 1em 0; }
          .ccf-submenu .menu > .menu-item .sub-menu .menu-item a {
            font-weight: 500;
            letter-spacing: 2px;
            color: var(--primary-color); }
      @media screen and (max-width: 992px) {
        .ccf-submenu .menu > .menu-item {
          display: block; } }
      @media screen and (min-width: 992px) {
        .ccf-submenu .menu > .menu-item {
          width: 250px; }
          #menu-applications-submenu .ccf-submenu .menu > .menu-item {
            width: 400px; } }
    @media screen and (min-width: 768px) and (max-width: 992px) {
      .ccf-submenu .menu {
        margin-left: 5.2em; }
        .ccf-submenu .menu > .menu-item {
          padding: 1em 1.5em; } }
    @media screen and (max-width: 992px) {
      .ccf-submenu .menu {
        margin-left: 3.7em; } }
  @media screen and (min-width: 992px) {
    .ccf-submenu {
      display: inline-block; } }

body:not(.fl-builder-edit) .hidden-for-user {
  display: none !important; }
