/* Main section */
.boost-section {
  padding: var(--margin-small) var(--margin-medium);
  text-align: center;
  color: #fff;
  min-height: 60vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.boost-section-inner {
  margin: 0 auto;
}

.boost-logo-wrap {
  margin-bottom: 40px;
}

/* Floating logo container */
.vcl-3d-logo-outer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-perspective: 40vw;
          perspective: 40vw;
  width: 100%;
  /* Bob up and down */
  -webkit-animation-name: vcl-logo-bob;
          animation-name: vcl-logo-bob;
  -webkit-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-duration: 5s !important;
          animation-duration: 5s !important;
}

/* Rotating logo */
.vcl-3d-logo-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transform-style: preserve-3d;
          transform-style: preserve-3d;
  width: 30vw;
  /* 1 full rotation every 10s */
  -webkit-animation-name: vcl-logo-spin;
          animation-name: vcl-logo-spin;
  -webkit-animation-timing-function: linear;
          animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
  -webkit-animation-duration: 4s !important;
          animation-duration: 4s !important;
}

.vcl-3d-logo-img {
  display: block;
  max-width: 520px;
  width: 100%;
}

/* Content below logo */
.boost-content {
  max-width: 60%;
  margin: 0 auto;
}

.boost-title {
  font-size: 2rem;
  margin-bottom: 12px;
}

.boost-text {
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 24px;
}

/* Keyframes */
@-webkit-keyframes vcl-logo-spin {
  0% {
    -webkit-transform: rotateY(0deg);
            transform: rotateY(0deg);
  }
  100% {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
}
@keyframes vcl-logo-spin {
  0% {
    -webkit-transform: rotateY(0deg);
            transform: rotateY(0deg);
  }
  100% {
    -webkit-transform: rotateY(360deg);
            transform: rotateY(360deg);
  }
}
@-webkit-keyframes vcl-logo-bob {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
  }
}
@keyframes vcl-logo-bob {
  0%, 100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
  }
}