.partnership-video-dialog {
  --partnership-video-aspect-ratio: 1.7777777778;
  --partnership-video-viewport-height: 100dvh;
  --partnership-video-viewport-left: 0px;
  --partnership-video-viewport-top: 0px;
  --partnership-video-viewport-width: 100vw;
  background: transparent;
  border: 0;
  box-sizing: border-box;
  color: #ffffff;
  height: var(--partnership-video-viewport-height);
  inset: auto;
  isolation: isolate;
  left: var(--partnership-video-viewport-left);
  margin: 0;
  max-height: none;
  max-width: none;
  overflow: hidden;
  padding:
    max(15px, env(safe-area-inset-top, 0px))
    max(15px, env(safe-area-inset-right, 0px))
    max(15px, env(safe-area-inset-bottom, 0px))
    max(15px, env(safe-area-inset-left, 0px));
  position: fixed;
  top: var(--partnership-video-viewport-top);
  width: var(--partnership-video-viewport-width);
}

.partnership-video-dialog[open] {
  display: grid;
  place-items: center;
}

.partnership-video-dialog::backdrop {
  -webkit-backdrop-filter: blur(7px) saturate(.78);
  backdrop-filter: blur(7px) saturate(.78);
  background: rgba(1, 10, 18, .68);
}

.partnership-video-frame {
  animation: partnership-video-frame-in 220ms cubic-bezier(.2, .75, .25, 1) both;
  aspect-ratio: var(--partnership-video-aspect-ratio);
  background: #020910;
  border: 0;
  border-radius: clamp(.9rem, 1.35vw, 1.25rem);
  box-shadow:
    0 1.5rem 5rem rgba(0, 5, 10, .66),
    0 0 0 1px rgba(111, 222, 255, .52),
    0 0 2.4rem rgba(0, 146, 205, .16);
  box-sizing: border-box;
  container: partnership-video-frame / size;
  height: var(--partnership-video-frame-height, 100%);
  max-height: 100%;
  max-width: 100%;
  min-height: 0;
  overflow: hidden;
  position: relative;
  width: var(--partnership-video-frame-width, 100%);
}

.partnership-video-title {
  border: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.partnership-video-player {
  background: #020910;
  display: block;
  height: 100%;
  inset: 0;
  object-fit: contain;
  position: absolute;
  width: 100%;
  z-index: 0;
}

.partnership-video-player[aria-hidden="true"] {
  pointer-events: none;
}

.partnership-video-close {
  align-items: center;
  appearance: none;
  backdrop-filter: blur(14px);
  background: rgba(2, 23, 37, .82);
  border: 1px solid rgba(255, 255, 255, .78);
  border-radius: 50%;
  box-shadow: 0 .75rem 2rem rgba(0, 0, 0, .34);
  color: #ffffff;
  cursor: pointer;
  display: inline-flex;
  font: 600 1.55rem/1 Inter, Arial, sans-serif;
  height: 3rem;
  justify-content: center;
  opacity: 1;
  padding: 0 0 .12rem;
  position: absolute;
  right: calc(var(--partnership-video-frame-right, 15px) + 1rem);
  top: calc(var(--partnership-video-frame-top, 15px) + 1rem);
  transition: background-color 160ms ease, border-color 160ms ease, opacity 180ms ease, transform 180ms ease, visibility 0s linear 0s;
  visibility: visible;
  width: 3rem;
  z-index: 4;
}

.partnership-video-dialog.is-playing:not(.is-controls-visible) .partnership-video-close {
  opacity: 0;
  pointer-events: none;
  transform: translateY(-.4rem) scale(.96);
  transition: background-color 160ms ease, border-color 160ms ease, opacity 180ms ease, transform 180ms ease, visibility 0s linear 180ms;
  visibility: hidden;
}

.partnership-video-close:hover {
  background: rgba(0, 102, 187, .94);
  border-color: #59deff;
  transform: scale(1.04);
}

.partnership-video-close:focus-visible {
  outline: 3px solid #59deff;
  outline-offset: 4px;
}

.partnership-video-error {
  backdrop-filter: blur(14px);
  background: rgba(2, 23, 37, .9);
  border: 1px solid rgba(89, 222, 255, .72);
  border-radius: .75rem;
  bottom: max(4.75rem, calc(3.75rem + env(safe-area-inset-bottom, 0px)));
  box-shadow: 0 .85rem 2.4rem rgba(0, 0, 0, .38);
  color: #ffffff;
  font: 650 clamp(.8rem, 1.4vw, 1rem)/1.45 Inter, Arial, sans-serif;
  left: 50%;
  margin: 0;
  max-width: min(38rem, calc(100% - 2rem));
  padding: .7rem 1rem;
  pointer-events: none;
  position: absolute;
  text-align: center;
  transform: translateX(-50%);
  width: max-content;
  z-index: 3;
}

.partnership-video-error[hidden] {
  display: none !important;
}

.partnership-video-welcome {
  inset: 0;
  position: absolute;
  z-index: 2;
}

.partnership-video-welcome:not([hidden]) {
  display: grid;
  place-items: center;
}

.partnership-video-welcome .site-welcome-content {
  gap: clamp(.75rem, 2.2cqh, 1.3rem);
}

.partnership-video-lockup {
  align-items: center;
  display: grid;
  gap: clamp(1rem, 2.4cqw, 2.2rem);
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  max-width: 62rem;
  width: min(88cqw, 62rem);
}

.partnership-video-brand {
  align-items: center;
  display: grid;
  min-width: 0;
}

.partnership-video-brand--etenar {
  justify-items: end;
}

.partnership-video-brand--etenar .site-welcome-logo-build {
  width: clamp(14rem, 25cqw, 21rem);
}

.partnership-video-lockup-divider {
  color: #0492cd;
  display: block;
  font: 420 clamp(1.6rem, 3.1cqw, 2.7rem)/1 Inter, Arial, sans-serif;
  opacity: 0;
  transform: scale(.7) rotate(-12deg);
}

.partnership-video-partner-logo {
  height: auto;
  justify-self: start;
  max-height: 8rem;
  object-fit: contain;
  opacity: 0;
  transform: translateY(.5rem);
  width: clamp(15rem, 28cqw, 23rem);
}

.partnership-video-welcome.is-running:not(.is-returning) .partnership-video-lockup-divider {
  animation: partnership-video-divider-in 300ms cubic-bezier(.2, .82, .24, 1.15) 1120ms both;
}

.partnership-video-welcome.is-running:not(.is-returning) .partnership-video-partner-logo {
  animation: partnership-video-partner-in 380ms cubic-bezier(.2, .72, .25, 1) 1280ms both;
}

.partnership-video-welcome.is-revealing .site-welcome-content {
  animation: site-welcome-lockup-out 320ms ease both;
}

.partnership-video-welcome.is-revealing .site-welcome-graphic {
  opacity: 0;
  transform: scale(1.012);
  transition: opacity 650ms ease, transform 650ms cubic-bezier(.2, .7, .2, 1);
}

.partnership-video-welcome.is-returning .site-welcome-stage,
.partnership-video-welcome.is-returning .site-welcome-handoff {
  animation-direction: reverse;
}

.partnership-video-welcome.is-returning .site-welcome-logo-complete {
  animation: none;
  opacity: 1;
}

.partnership-video-welcome.is-returning .site-welcome-logo-parts {
  display: none;
}

.partnership-video-welcome.is-returning .partnership-video-lockup-divider,
.partnership-video-welcome.is-returning .partnership-video-partner-logo {
  animation: none;
  opacity: 1;
  transform: none;
}

.partnership-video-welcome.is-returning .site-welcome-copy > span {
  animation: none;
  opacity: 1;
  transform: scaleX(1);
}

.partnership-video-welcome.is-returning .site-welcome-copy p {
  animation: none;
  opacity: 1;
  transform: none;
}

.site-intro-feature-cta:not(:disabled) {
  cursor: pointer;
  transition: box-shadow 180ms ease, transform 180ms ease;
}

.site-intro-feature-cta:not(:disabled):hover {
  box-shadow: 0 1.25rem 3rem rgba(0, 20, 34, .4), 0 0 0 3px rgba(89, 222, 255, .38);
  transform: translateY(-2px);
}

.site-intro-feature-cta:not(:disabled):focus-visible {
  outline: 3px solid #59deff;
  outline-offset: 4px;
}

@keyframes partnership-video-divider-in {
  from { opacity: 0; transform: scale(.7) rotate(-12deg); }
  to { opacity: 1; transform: scale(1) rotate(0); }
}

@keyframes partnership-video-partner-in {
  from { opacity: 0; transform: translateY(.5rem); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes partnership-video-frame-in {
  from { opacity: 0; transform: translateY(.4rem) scale(.992); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

@media (max-width: 38rem) {
  .partnership-video-frame {
    border-radius: .9rem;
  }

  .partnership-video-error {
    bottom: max(4.25rem, calc(3.25rem + env(safe-area-inset-bottom, 0px)));
    font-size: .78rem;
    padding: .6rem .75rem;
  }
}

@media (max-width: 48rem), (hover: none) and (pointer: coarse) {
  .partnership-video-dialog {
    --partnership-video-controls-gutter-y: 56px;
  }

  .partnership-video-close {
    height: 44px;
    right: var(--partnership-video-frame-right, 15px);
    top: calc(var(--partnership-video-frame-top, 71px) - 56px);
    width: 44px;
  }
}

@media (orientation: landscape) and (max-height: 34rem) {
  .partnership-video-dialog {
    --partnership-video-controls-gutter-x: 56px;
    --partnership-video-controls-gutter-y: 0px;
  }

  .partnership-video-close {
    height: 44px;
    right: calc(var(--partnership-video-frame-right, 71px) - 56px);
    top: var(--partnership-video-frame-top, 15px);
    width: 44px;
  }

  .partnership-video-welcome .site-welcome-content {
    gap: .35rem;
    padding: .75rem 4rem;
  }

  .partnership-video-lockup {
    gap: clamp(.65rem, 2cqw, 1.4rem);
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    max-width: 48rem;
    width: min(78cqw, 48rem);
  }

  .partnership-video-brand--etenar {
    justify-items: end;
  }

  .partnership-video-brand--etenar .site-welcome-logo-build {
    width: min(24cqw, 12.5rem);
  }

  .partnership-video-partner-logo {
    justify-self: start;
    max-height: 4.5rem;
    width: min(28cqw, 15rem);
  }

  .partnership-video-lockup-divider {
    font-size: 1.35rem;
  }
}

@container partnership-video-frame (max-width: 48rem) {
  .partnership-video-welcome .site-welcome-content {
    gap: clamp(.2rem, 2cqh, .55rem);
    padding: min(4cqh, .75rem) min(5cqw, 2rem);
  }

  .partnership-video-lockup {
    gap: clamp(.35rem, 2cqw, 1rem);
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    justify-items: stretch;
    max-width: 44rem;
    width: min(91cqw, 44rem);
  }

  .partnership-video-brand--etenar {
    justify-items: end;
  }

  .partnership-video-brand--etenar .site-welcome-logo-build {
    width: min(30cqw, 13rem);
  }

  .partnership-video-lockup-divider {
    font-size: clamp(.9rem, 4cqw, 1.6rem);
  }

  .partnership-video-partner-logo {
    justify-self: start;
    max-height: 30cqh;
    width: min(32cqw, 15rem);
  }

  .partnership-video-welcome .site-welcome-copy {
    gap: clamp(.18rem, 1.4cqh, .45rem);
  }

  .partnership-video-welcome .site-welcome-copy > span {
    width: clamp(2rem, 12cqw, 4rem);
  }

  .partnership-video-welcome .site-welcome-copy p {
    font-size: clamp(.55rem, 3.4cqh, .82rem);
    letter-spacing: clamp(.09em, .45cqw, .15em);
  }
}

@media (prefers-reduced-motion: reduce) {
  .partnership-video-frame {
    animation: none;
  }

  .partnership-video-close,
  .site-intro-feature-cta:not(:disabled) {
    transition: none;
  }

  .partnership-video-welcome[data-site-welcome-motion="reduced"] .partnership-video-lockup-divider,
  .partnership-video-welcome[data-site-welcome-motion="reduced"] .partnership-video-partner-logo {
    animation: none !important;
    opacity: 1;
    transform: none;
  }

  .partnership-video-welcome.is-revealing .site-welcome-content {
    animation: none;
  }
}

@media (forced-colors: active) {
  .partnership-video-close,
  .partnership-video-error,
  .site-intro-feature-cta:not(:disabled) {
    border: 2px solid CanvasText;
    forced-color-adjust: auto;
  }
}
