/* Additions on top of the 3D landing. Uses the landing's own font and lime. */
[data-v-dff33024] { display: none !important; }          /* language switcher: English only */
.op-enter {
  position: fixed; right: 55px; bottom: 44px; z-index: 50; display: flex; align-items: center; gap: 12px;
  font-family: OCMikola, sans-serif; color: #fff; text-decoration: none; opacity: 0; transform: translateY(8px);
  transition: opacity .8s ease, transform .8s ease;
}
.op-enter.show { opacity: 1; transform: none; }
.op-enter .op-dot { width: 30px; height: 30px; border-radius: 50%; background: #3d6bff; display: grid; place-items: center; transition: transform .3s; }
.op-enter .op-dot svg { width: 12px; height: 12px; }
.op-enter:hover .op-dot { transform: rotate(-45deg) scale(1.08); }
.op-enter b { display: block; font-weight: 500; font-size: 13px; letter-spacing: .02em; }
.op-enter small { display: block; font-size: 11px; opacity: .45; }
.op-launch {
  position: fixed; top: 38px; right: 195px; z-index: 60; display: inline-flex; align-items: center; gap: 8px;
  font-family: OCMikola, sans-serif; font-size: 12px; font-weight: 500; letter-spacing: .1em; text-transform: uppercase;
  color: #fff; background: #3d6bff; box-shadow: 0 0 24px rgba(61,107,255,.45); padding: 10px 16px; text-decoration: none;
  opacity: 0; transform: translateY(-6px); transition: opacity .8s ease, transform .8s ease, background .3s;
}
.op-launch.show { opacity: 1; transform: none; }
.op-x {
  position: fixed; top: 38px; right: 343px; z-index: 60; width: 36px; height: 36px; display: grid; place-items: center;
  color: #fff; border: 1px solid rgba(255,255,255,.35); opacity: 0; transition: opacity .8s ease, border-color .3s, color .3s;
}
.op-x.show { opacity: 1; }
.op-x:hover { border-color: #3d6bff; color: #8fa8ff; }
.op-launch:hover { background: #6a8cff; }
.op-launch svg { width: 10px; height: 10px; }
@media (max-width: 760px) {
  .op-enter { right: 20px; bottom: 24px; }
  .op-launch { top: auto; right: auto; left: 20px; bottom: 24px; }
  .op-x { top: auto; right: auto; left: 150px; bottom: 24px; }
  .op-enter small { display: none; }
}

/* the mascot logo needs more room than the original glyph did */
.homeButton--svg { width: 46px !important; height: 46px !important; overflow: visible; }

/* text on the accent reads white on blue */
.phase_content_caption[data-v-374831df] { color: #fff !important; }
