/* Marketing-only progressive enhancement; the Webflow design stays local. */
.marketing-document {
  display: contents;
}

.marketing-site .marketing-control {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.marketing-site summary {
  list-style: none;
  cursor: pointer;
}

.marketing-site summary::-webkit-details-marker {
  display: none;
}

.marketing-site .navbar6_container > .w-nav-button {
  cursor: pointer;
}

.marketing-site summary:focus-visible,
.marketing-site label:has(.marketing-control:focus-visible),
.marketing-site .marketing-menu-toggle:focus-visible ~ .w-nav-button {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}

.marketing-site details.w-dropdown[open] > .w-dropdown-list {
  display: block;
}

/* Native open state must inherit the complete Webflow .w--open layout. */
.marketing-site details[open] > .navbar6_dropdown-list {
  z-index: 2;
  border-bottom: 1px none var(--border-color--border-primary);
  background-color: var(--background-color--background-primary);
  margin-top: -4.5rem;
  padding-top: 4.5rem;
  padding-left: 5%;
  padding-right: 5%;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  overflow: hidden;
  box-shadow: 0 1rem 4rem #0003;
}

.marketing-site details[open] > .navbar6_dropdown-list.business {
  background-color: var(--base-color-neutral--neutral-darker);
  border: 1px #000;
}

.marketing-site .faq3_accordion[open] .faq3_answer {
  height: auto;
}

.marketing-site .marketing-menu-toggle:checked ~ label .menu-icon1_line-top {
  transform: translateY(8px) rotate(-45deg);
}

.marketing-site .marketing-menu-toggle:checked ~ label .menu-icon1_line-bottom {
  transform: translateY(-8px) rotate(45deg);
}

.marketing-site .marketing-menu-toggle:checked ~ label .menu-icon1_line-middle {
  opacity: 0;
}

.marketing-site .faq3_accordion[open] .faq3_icon-wrapper {
  transform: rotate(180deg);
}

/* Native radios own selection, including keyboard navigation, without JS. */
.marketing-site [data-native-tabs]:has([data-tab-choice="0"]:checked) [data-tab-panel="0"],
.marketing-site [data-native-tabs]:has([data-tab-choice="1"]:checked) [data-tab-panel="1"],
.marketing-site [data-native-tabs]:has([data-tab-choice="2"]:checked) [data-tab-panel="2"],
.marketing-site [data-native-tabs]:has([data-tab-choice="3"]:checked) [data-tab-panel="3"] {
  display: block;
}

.marketing-site .layout508_tab-link:has(:checked),
.marketing-site .layout508_tab-link-2:has(:checked) {
  color: var(--link-color--link-primary);
  background-color: #0000;
  border-radius: 4rem;
  overflow: hidden;
  box-shadow:
    0 0 40px #873ecd40,
    0 0 20px #873ecd80,
    0 0 7px #873ecd;
}

.marketing-site .layout508_tab-link.business:has(:checked) {
  color: var(--link-color--link-alternate);
}

.marketing-site dialog.tools-wrapper {
  display: none;
  border: 0;
  margin: 0;
  max-width: none;
  max-height: none;
  overflow: visible;
}

.marketing-site dialog.tools-wrapper[open] {
  display: flex;
  opacity: 1;
  height: 97dvh;
}

.marketing-site dialog.tools-wrapper::backdrop {
  background: #01041a66;
}

.marketing-site:has(dialog.tools-wrapper[open]) {
  overflow: hidden;
}

@media (min-width: 992px) {
  .marketing-site .marketing-menu-toggle {
    display: none;
  }
}

@media (max-width: 991px) {
  .marketing-site details[open] > .navbar6_dropdown-list {
    box-shadow: none;
    border-style: none;
    align-items: flex-start;
    margin-top: 0;
    padding: 0;
    position: relative;
    top: 0;
  }

  .marketing-site details[open] > .navbar6_dropdown-list.business {
    border-style: none;
    border-width: 0;
  }

  .marketing-site .navbar6_container:has(> .marketing-menu-toggle:checked) > .w-nav-menu {
    display: block;
    inset: 100% 0 auto;
    max-height: calc(100dvh - 5rem);
    overflow-y: auto;
  }
}

@media (min-width: 768px) {
  .marketing-site .big-tabs_menu-item .big-tabs_stage {
    visibility: hidden;
    opacity: 0;
  }

  .marketing-site .big-tabs_menu-item:has(:checked) .big-tabs_stage {
    visibility: visible;
    opacity: 1;
  }

  .marketing-site .big-tabs_menu-item:has(:checked) .big-tabs_link-wrapper,
  .marketing-site .big-tabs_menu-item:has(:checked) .big-tabs_progress-bar,
  .marketing-site .big-tabs_menu-item:has(:checked) .u-bg-white {
    opacity: 1;
  }

  .marketing-site .big-tabs_menu-item:has(:checked) .big-tabs_menu-text,
  .marketing-site .big-tabs_menu-item:has(:checked) .btn {
    opacity: 1;
    background-color: #fff;
    filter: saturate(100%);
  }

  .marketing-site [data-autoplay="true"] .big-tabs_menu-item:has(:checked) .big-tabs_progress-bar {
    transform-origin: left;
  }

  .marketing-site .big-tabs_menu:hover .big-tabs_progress-bar {
    animation-play-state: paused;
  }
}

@keyframes marketing-reveal {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes marketing-menu-enter {
  from {
    opacity: 0;
    transform: translateY(-0.75rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes marketing-tool-enter {
  from {
    opacity: 0;
    transform: translateY(2rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes marketing-tab-progress {
  from {
    transform: scaleX(0);
  }
  to {
    transform: scaleX(1);
  }
}

@keyframes marketing-page-enter {
  from {
    opacity: 0;
    /* Webflow's live moving phase is 24px, despite its archived rem start. */
    transform: translateY(24px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes marketing-marquee {
  to {
    transform: translateX(-100%);
  }
}

@keyframes marketing-marquee-reverse {
  to {
    transform: translateX(100%);
  }
}

@supports (interpolate-size: allow-keywords) {
  .marketing-site .faq3_accordion::details-content {
    interpolate-size: allow-keywords;
    height: 0;
    overflow: hidden;
  }

  .marketing-site .faq3_accordion[open]::details-content {
    height: auto;
  }
}

/* Fail-visible: content never needs an observer or script to reveal it. */
@media (prefers-reduced-motion: no-preference) {
  .marketing-site {
    scroll-behavior: smooth;
  }

  .marketing-site .faq3_accordion[open] .faq3_answer,
  .marketing-site [data-native-tabs]:has([data-tab-choice]:checked) [data-tab-panel] {
    animation: marketing-reveal 220ms ease-out;
  }

  .marketing-site :where(.faq3_icon-wrapper) {
    transition: transform 220ms ease;
  }

  .marketing-site :where(.menu-icon1_line-top, .menu-icon1_line-middle, .menu-icon1_line-bottom) {
    transition:
      transform 400ms ease,
      opacity 200ms ease;
  }

  .marketing-site dialog.tools-wrapper[open] {
    animation: marketing-tool-enter 250ms ease-out;
  }

  @media (max-width: 991px) {
    .marketing-site .navbar6_container:has(> .marketing-menu-toggle:checked) > .w-nav-menu {
      animation: marketing-menu-enter 220ms ease-out;
    }
  }

  @media (min-width: 768px) {
    /* One entrance per section: nested .anim wrappers must not add travel. */
    .marketing-site .anim:not(.anim .anim) {
      animation: marketing-page-enter 1500ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
    }

    .marketing-site .big-tabs_menu-item .big-tabs_stage {
      transition:
        opacity 400ms ease,
        visibility 400ms;
    }

    .marketing-site
      [data-autoplay="true"]
      .big-tabs_menu-item:has(:checked)
      .big-tabs_progress-bar {
      animation: marketing-tab-progress var(--tab-duration, 12000ms) linear;
    }
  }

  @supports (interpolate-size: allow-keywords) {
    .marketing-site .faq3_accordion::details-content {
      transition:
        height 250ms ease,
        content-visibility 250ms allow-discrete;
    }
  }

  .marketing-site .review-inner {
    animation: marketing-marquee 360s linear infinite;
  }

  .marketing-site .review-inner.reverse {
    animation-name: marketing-marquee-reverse;
  }

  .marketing-site .review-wrapper:hover .review-inner,
  .marketing-site .review-wrapper:focus-within .review-inner {
    animation-play-state: paused;
  }

  .marketing-site .banner15_marquee {
    animation: marketing-marquee 30s linear infinite;
  }

  @media (max-width: 767px) {
    .marketing-site .banner15_marquee {
      animation-duration: 45s;
    }
  }

  @supports (animation-timeline: view()) {
    .marketing-site .timeline4_circle {
      animation: marketing-timeline-color linear both;
      animation-timeline: view();
      animation-range: entry 45% entry 50%;
    }
  }
}

@keyframes marketing-timeline-color {
  from {
    background-color: #ccc;
  }
  to {
    background-color: #000;
  }
}

@media (prefers-reduced-motion: reduce) {
  .marketing-site *,
  .marketing-site *::before,
  .marketing-site *::after {
    animation: none;
    transition: none;
    scroll-behavior: auto;
  }

  .marketing-site .btn.btn-2.lg.max-width-full.login,
  .marketing-site .form_input.is-alternate,
  .marketing-site .button.is-secondary.is-icon {
    transition: none;
  }

  /* The animated hero overlays are GIFs; reveal their existing static backdrop. */
  .marketing-site .hero-gif {
    display: none;
  }
}
