:root {
  --ws-motion-press: 100ms;
  --ws-motion-fast: 160ms;
  --ws-motion-base: 240ms;
  --ws-motion-slow: 420ms;
  --ws-ease-out: cubic-bezier(0.23, 1, 0.32, 1);
  --ws-ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);
  --ws-card-radius: 8px;
  --ws-card-shadow: 0 12px 28px rgba(0, 42, 78, 0.16);
  --ws-card-shadow-hover: 0 18px 38px rgba(0, 42, 78, 0.22);
}

html.ws-experience {
  scroll-behavior: smooth;
  scroll-padding-top: 8rem;
}

html.ws-experience :where(a[href], button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible {
  outline: 3px solid #ffffff !important;
  outline-offset: 2px !important;
  box-shadow: 0 0 0 5px #002a4e !important;
}

html.ws-experience :where(section, [id]) {
  scroll-margin-top: 8rem;
}

html.ws-experience #block-abswavesight-content {
  animation: ws-page-enter var(--ws-motion-slow) var(--ws-ease-out) both;
}

@keyframes ws-page-enter {
  from {
    opacity: 0.72;
    translate: 0 6px;
  }
  to {
    opacity: 1;
    translate: 0 0;
  }
}

html.ws-experience .ws-reveal {
  transition:
    opacity var(--ws-motion-slow) var(--ws-ease-out),
    translate var(--ws-motion-slow) var(--ws-ease-out);
  transition-delay: var(--ws-reveal-delay, 0ms);
}

html.ws-experience .ws-reveal--pending {
  opacity: 0;
  translate: 0 16px;
}

html.ws-experience .ws-reveal--visible {
  opacity: 1;
  translate: 0 0;
}

html.ws-experience .ws-button.ws-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px !important;
  text-align: center;
  transition:
    background-color var(--ws-motion-fast) ease,
    border-color var(--ws-motion-fast) ease,
    color var(--ws-motion-fast) ease,
    box-shadow var(--ws-motion-fast) ease,
    transform var(--ws-motion-fast) var(--ws-ease-out);
  transform-origin: center;
}

html.ws-experience .ws-button.ws-button--primary {
  min-height: 47px !important;
  padding: 0.65rem 1.4rem;
  border: 1px solid transparent;
  border-radius: 999px;
  background-color: #da1f33;
  color: #ffffff;
  box-shadow: 0 6px 16px rgba(218, 31, 51, 0.24);
  font-family: Roboto, Arial, sans-serif;
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
}

html.ws-experience .ws-button.ws-button--primary:hover {
  background-color: #b81d2c;
  color: #ffffff;
  box-shadow: 0 10px 22px rgba(184, 29, 44, 0.3);
  text-decoration: none;
}

html.ws-experience .ws-button.ws-button--secondary {
  padding: 0.65rem 1.4rem;
  border: 1px solid currentColor;
  border-radius: 999px;
  background-color: transparent;
  color: inherit;
  font-family: Roboto, Arial, sans-serif;
  font-weight: 700;
  line-height: 1.25;
  text-decoration: none;
}

html.ws-experience .ws-button.ws-button--secondary:hover {
  background-color: rgba(255, 255, 255, 0.14);
  text-decoration: none;
}

html.ws-experience .ws-button.ws-button--text {
  justify-content: flex-start;
  padding: 0.55rem 0;
  color: #002a4e;
  font-weight: 700;
  text-underline-offset: 0.2em;
}

html.ws-experience .ws-button.ws-button--text:hover {
  color: #b81d2c;
}

html.ws-experience .ws-button.ws-button--icon {
  width: 44px;
  min-width: 44px;
  padding: 0;
  border-radius: 50%;
}

html.ws-experience [id^="tab-btn-"].ws-button {
  pointer-events: auto;
  touch-action: manipulation;
}

html.ws-experience .ws-card.ws-card {
  border-radius: var(--ws-card-radius);
  transition:
    border-color var(--ws-motion-base) ease,
    box-shadow var(--ws-motion-base) var(--ws-ease-out),
    transform var(--ws-motion-base) var(--ws-ease-out);
  transform-origin: center;
}

html.ws-experience .ws-card.ws-card--surface {
  border: 1px solid rgba(0, 42, 78, 0.1);
  box-shadow: var(--ws-card-shadow);
}

html.ws-experience .ws-card.ws-card--media {
  overflow: hidden;
}

html.ws-experience .ws-card.ws-card.ws-reveal {
  transition:
    opacity var(--ws-motion-slow) var(--ws-ease-out),
    translate var(--ws-motion-slow) var(--ws-ease-out),
    border-color var(--ws-motion-base) ease,
    box-shadow var(--ws-motion-base) var(--ws-ease-out),
    transform var(--ws-motion-base) var(--ws-ease-out);
  transition-delay:
    var(--ws-reveal-delay, 0ms),
    var(--ws-reveal-delay, 0ms),
    0ms,
    0ms,
    0ms;
}

html.ws-experience .ws-card.ws-card:focus-within {
  box-shadow: 0 0 0 3px #ffffff, 0 0 0 6px #002a4e, var(--ws-card-shadow);
}

html.ws-experience .ws-header {
  transition:
    background-color var(--ws-motion-base) var(--ws-ease-out),
    box-shadow var(--ws-motion-base) var(--ws-ease-out),
    backdrop-filter var(--ws-motion-base) var(--ws-ease-out);
}

html.ws-experience .ws-header__utility,
html.ws-experience .ws-header__logo img,
html.ws-experience .ws-nav__link,
html.ws-experience .ws-nav__caret,
html.ws-experience .ws-nav__dropdown,
html.ws-experience .ws-nav__dropdown a,
html.ws-experience .ws-drawer,
html.ws-experience .ws-drawer__backdrop,
html.ws-experience .ws-drawer__close,
html.ws-experience .ws-drawer__utility a,
html.ws-experience .ws-drawer__link,
html.ws-experience .ws-drawer__toggle-sub,
html.ws-experience .ws-drawer__sub,
html.ws-experience .ws-drawer__sub a,
html.ws-experience .ws-drawer__login,
html.ws-experience .site-footer-redesign a {
  transition-duration: var(--ws-motion-fast);
}

html.ws-experience .ws-nav__dropdown,
html.ws-experience .ws-drawer,
html.ws-experience .ws-drawer__backdrop,
html.ws-experience .ws-drawer__sub {
  transition-timing-function: var(--ws-ease-out);
}

@media (hover: hover) and (pointer: fine) {
  html.ws-experience .ws-button.ws-button:hover {
    transform: translateY(-2px);
  }

  html.ws-experience .ws-card.ws-card:hover {
    box-shadow: var(--ws-card-shadow-hover);
    transform: translateY(-4px);
  }
}

@media (pointer: coarse) {
  html.ws-experience .ws-button.ws-button,
  html.ws-experience .ws-card.ws-card {
    -webkit-tap-highlight-color: rgba(218, 31, 51, 0.18);
    touch-action: manipulation;
  }
}

html.ws-experience .ws-button.ws-button:active {
  transform: scale(0.97);
  transition-duration: var(--ws-motion-press);
}

html.ws-experience .ws-card.ws-card:active {
  transform: scale(0.99);
  transition-duration: var(--ws-motion-press);
}

@media (prefers-reduced-motion: reduce) {
  html.ws-experience {
    scroll-behavior: auto;
  }

  html.ws-experience *,
  html.ws-experience *::before,
  html.ws-experience *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-delay: 0ms !important;
    transition-duration: 0.01ms !important;
  }

  html.ws-experience .ws-reveal,
  html.ws-experience .ws-reveal--pending,
  html.ws-experience .ws-reveal--visible {
    opacity: 1 !important;
    transform: none !important;
    translate: none !important;
  }
}

@media (max-width: 767px) {
  html.ws-experience {
    scroll-padding-top: 5rem;
  }


@supports (padding-left: max(0px)) {
  html.ws-experience .ws-header {
    padding-top: env(safe-area-inset-top);
  }

  html.ws-experience .ws-header__utility-inner,
  html.ws-experience .ws-header__primary-inner {
    padding-left: max(18px, env(safe-area-inset-left));
    padding-right: max(18px, env(safe-area-inset-right));
  }

  html.ws-experience .ws-drawer__head,
  html.ws-experience .ws-drawer__utility,
  html.ws-experience .ws-drawer__nav,
  html.ws-experience .ws-drawer__footer {
    padding-right: max(16px, env(safe-area-inset-right));
  }

  html.ws-experience .ws-drawer__head {
    padding-top: max(14px, env(safe-area-inset-top));
  }

  html.ws-experience .ws-drawer__footer,
  html.ws-experience .site-footer-redesign .footer-shell {
    padding-bottom: max(1.35rem, env(safe-area-inset-bottom));
  }

  html.ws-experience .site-footer-redesign .footer-shell {
    padding-left: max(1.25rem, env(safe-area-inset-left));
    padding-right: max(1.25rem, env(safe-area-inset-right));
  }
}

@media (min-width: 768px) {
  @supports (padding-left: max(0px)) {
    html.ws-experience .ws-header__utility-inner,
    html.ws-experience .ws-header__primary-inner {
      padding-left: max(30px, env(safe-area-inset-left));
      padding-right: max(30px, env(safe-area-inset-right));
    }
  }
}
  html.ws-experience :where(section, [id]) {
    scroll-margin-top: 5rem;
  }
}

@media (forced-colors: active) {
  html.ws-experience :where(a[href], button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible,
  html.ws-experience .ws-card.ws-card:focus-within {
    outline: 3px solid CanvasText !important;
    outline-offset: 3px !important;
    box-shadow: none !important;
  }
}

html.ws-experience .credibility-icon img {
  animation-iteration-count: 2 !important;
}

@media (prefers-contrast: more) {
  html.ws-experience .ws-card.ws-card--surface {
    border-color: #002a4e;
  }

  html.ws-experience .ws-button.ws-button--primary {
    border-color: #ffffff;
    outline: 2px solid #da1f33;
    outline-offset: 1px;
  }
}