/* Local mirror safety layer: keep rendered DOM visible without Next hydration. */
html,
body {
  overflow-x: clip;
}

.local-workteq-mark {
  color: #fff;
  display: block;
  fill: none !important;
  overflow: visible;
  filter:
    drop-shadow(0 0 3px rgba(255, 255, 255, 0.5))
    drop-shadow(0 0 10px rgba(255, 255, 255, 0.22));
  transition:
    color 300ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    filter 300ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
}

.group:hover .local-workteq-mark {
  filter:
    drop-shadow(0 0 5px rgba(255, 255, 255, 0.78))
    drop-shadow(0 0 16px rgba(255, 255, 255, 0.34));
}

a[href="/mobile-apps"],
a[href^="/mobile-apps/"],
a[href="/solutions/mobile"],
a[href^="/solutions/mobile/"],
a[href="/cases/hushh-site"] {
  display: none !important;
}

.opacity-0,
.\!opacity-0 {
  opacity: 1 !important;
}

[style*="opacity:0.08"],
[style*="opacity: 0.08"],
[style*="opacity:0.1"],
[style*="opacity: 0.1"] {
  opacity: 1 !important;
}

[style*="opacity:0"][style*="transform:translateY"],
[style*="opacity: 0"][style*="transform: translateY"],
[style*="opacity:0"][style*="transform: translateY"],
[style*="opacity: 0"][style*="transform:translateY"] {
  opacity: 1 !important;
  transform: none !important;
}

[style*="filter:blur"],
[style*="filter: blur"] {
  filter: none !important;
}

[style*="transform:translateY"],
[style*="transform: translateY"] {
  transform: none !important;
}

[inert] {
  pointer-events: auto;
}

[style*="filter:url(#gooey-threshold"] > span {
  filter: none !important;
}

[style*="filter:url(#gooey-threshold"] > span:not(:last-child) {
  opacity: 0 !important;
}

[style*="filter:url(#gooey-threshold"] > span:last-child {
  filter: none !important;
  opacity: 1 !important;
  position: relative !important;
}

.rd-flip__layer--front,
.rd-hl__layer--front,
.rd-flip__letter--front,
.rd-hl__letter--front {
  opacity: 1 !important;
  transform: none !important;
}

.rd-flip__layer--back,
.rd-hl__layer--back,
.rd-hl__overlay {
  opacity: 0 !important;
  pointer-events: none !important;
}

section#build {
  scroll-margin-top: 96px;
}

@media (max-width: 1023px) {
  section#build {
    height: auto !important;
    min-height: 0 !important;
    scroll-margin-top: 132px;
  }

  section#build [class*="sticky"] {
    position: relative !important;
    top: auto !important;
  }

  section#build [class*="h-dvh"],
  section#build [class*="min-h-dvh"] {
    height: auto !important;
    min-height: 0 !important;
  }
}

@media (min-width: 1024px) {
  section#build {
    height: var(--sub-h, auto) !important;
    min-height: 100dvh !important;
  }

  section#build > .sticky {
    height: 100dvh !important;
    min-height: 100dvh !important;
    position: sticky !important;
    top: 0 !important;
  }

  section#build [class*="h-dvh"] {
    height: 100dvh !important;
  }
}

[data-local-accordion-panel] {
  transition: grid-template-rows 420ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
}

section#build .local-accordion-row > div > span[aria-hidden="true"] {
  opacity: 0 !important;
}

section#build .local-accordion-row.local-accordion-open > div > span[aria-hidden="true"] {
  opacity: 1 !important;
}

section#build .local-accordion-row button {
  cursor: pointer;
}

.rd-ps-pain-block,
.rd-ps-sol {
  transition:
    opacity 460ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    transform 460ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    filter 460ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
}

.rd-ps-pain-block[data-dim="true"] {
  filter: saturate(0.72);
  opacity: 0.46;
}

.rd-ps-sol[data-show="false"] {
  opacity: 0 !important;
  pointer-events: none;
}

.rd-ps-sol[data-show="true"] {
  opacity: 1 !important;
}

[data-local-change-grid="true"] {
  transition:
    opacity 220ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    transform 220ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
  will-change: opacity, transform;
}

[data-local-change-dot] {
  transition:
    width 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    background-color 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    box-shadow 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
}

section#ways-to-work [data-local-ways-content="true"] {
  transition:
    opacity 220ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    transform 220ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
  will-change: opacity, transform;
}

section#ways-to-work [data-local-ways-dot] span,
section#ways-to-work [data-local-ways-label] {
  transition:
    width 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    height 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    background-color 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    box-shadow 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    color 260ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    opacity 260ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
}

.local-tech-marquee {
  overflow: hidden !important;
}

.local-tech-marquee-track {
  animation: local-tech-marquee var(--local-marquee-duration, 32s) linear infinite;
  will-change: transform;
}

.local-tech-marquee:hover .local-tech-marquee-track {
  animation-play-state: paused;
}

.local-stack-marquee {
  overflow: hidden !important;
}

.local-stack-marquee-track {
  animation: local-stack-marquee var(--local-stack-duration, 48s) linear infinite;
  min-width: max-content;
  will-change: transform;
}

.local-stack-marquee-track[data-local-stack-reverse="true"] {
  animation-direction: reverse;
}

.local-stack-marquee:hover .local-stack-marquee-track {
  animation-play-state: paused;
}

@keyframes local-tech-marquee {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-50%, 0, 0);
  }
}

@keyframes local-stack-marquee {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-50%, 0, 0);
  }
}

section#cases .rd-deck__card[data-local-home-card="true"] {
  transition:
    transform 560ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    opacity 420ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    filter 420ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
  will-change: transform, opacity, filter;
}

section#cases [data-local-home-case-copy="true"] {
  min-height: 230px;
}

section#cases .local-home-case-jump {
  cursor: pointer;
}

section#cases .local-home-case-jump:hover .local-home-case-jump__label {
  color: var(--text-secondary);
  opacity: 1 !important;
}

section#approach [data-local-approach-track="true"] {
  will-change: transform;
}

section#approach [data-local-approach-pane="true"] {
  transition:
    opacity 420ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
}

section#approach .rd-mv-row {
  cursor: pointer;
  transition:
    color 260ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    opacity 260ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
}

section#approach .rd-mv-row__arrow,
section#approach .rd-mv-row__label,
section#approach [data-local-approach-dot] {
  transition:
    color 260ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    opacity 260ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    transform 260ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    width 420ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    height 420ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    background-color 420ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    box-shadow 420ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
}

section#standards [data-local-standards-track="true"] {
  transition: transform 220ms linear;
  will-change: transform;
}

section#standards [data-local-standards-card="true"] {
  transition:
    opacity 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    transform 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
  will-change: opacity, transform;
}

section#standards [data-local-standards-dot],
section#principles [data-local-principle-rail] span {
  transition:
    width 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    height 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    background-color 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    color 260ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    box-shadow 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
}

section#principles [data-local-principle-title="true"] {
  transition:
    opacity 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    filter 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    transform 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
  will-change: opacity, filter, transform;
}

section#testimonials article[data-local-testimonial="true"],
section#testimonials ul[aria-label="Source cases"] a {
  transition:
    opacity 360ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    color 260ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
}

.local-filter-active {
  background: var(--ca, var(--accent-purple)) !important;
  background-color: var(--ca, var(--accent-purple)) !important;
  background-image: none !important;
  border-color: transparent !important;
  color: var(--text-primary, #ffffff) !important;
}

.local-filter-ready .local-discipline-button:not(.local-filter-active) {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border-color: var(--border-subtle) !important;
  color: var(--text-primary) !important;
  box-shadow: none !important;
}

.local-filter-hidden {
  display: none !important;
}

.local-filter-menu {
  background: color-mix(in oklab, var(--bg-elevated) 94%, #000);
  border: 1px solid var(--border-subtle);
  border-radius: 14px;
  box-shadow: 0 18px 40px -24px rgba(0, 0, 0, 0.75);
  display: grid;
  gap: 4px;
  left: 0;
  min-width: 220px;
  padding: 8px;
  position: absolute;
  top: calc(100% + 8px);
  z-index: 80;
}

.local-filter-menu[hidden] {
  display: none !important;
}

.local-filter-menu button {
  border-radius: 10px;
  color: var(--text-secondary);
  display: block;
  font: inherit;
  padding: 9px 12px;
  text-align: left;
  transition: background 160ms ease, color 160ms ease;
  width: 100%;
}

.local-filter-menu button:hover,
.local-filter-menu button.local-filter-active {
  background: color-mix(in oklab, var(--accent-purple) 22%, transparent);
  color: var(--text-primary);
}

.local-filter-empty {
  border: 1px solid var(--border-subtle);
  border-radius: 16px;
  color: var(--text-secondary);
  display: none;
  margin: 32px auto 0;
  max-width: 560px;
  padding: 24px;
  text-align: center;
}

.local-filter-empty.is-visible {
  display: block;
}

.local-contact-details {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 20px;
}

.local-contact-details[hidden] {
  display: none !important;
}

.local-contact-details textarea {
  background: rgba(11, 11, 18, 0.5);
  border: 1px solid var(--border-default);
  border-radius: 14px;
  color: var(--text-primary);
  font: inherit;
  min-height: 116px;
  outline: none;
  padding: 14px 16px;
  resize: vertical;
  transition:
    border-color 180ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1)),
    box-shadow 180ms var(--rd-ease-out-soft, cubic-bezier(0.22, 1, 0.36, 1));
  width: 100%;
}

.local-contact-details textarea::placeholder {
  color: var(--text-faint);
}

.local-contact-details textarea:focus {
  border-color: var(--accent-green);
  box-shadow: 0 0 0 1px color-mix(in oklab, var(--accent-green) 50%, transparent);
}

.local-contact-status {
  color: var(--text-faint);
  font-family: var(--font-ibm-plex-mono, monospace);
  font-size: 12px;
  line-height: 1.45;
  margin: 0;
  max-width: 32ch;
  min-height: 1.45em;
}

.local-contact-status:empty {
  display: none;
}

.local-contact-status[data-state="pending"] {
  color: var(--text-secondary);
}

.local-contact-status[data-state="success"] {
  color: var(--accent-green);
}

.local-contact-status[data-state="error"] {
  color: var(--accent-pink);
}

form input[aria-invalid="true"] {
  border-color: var(--accent-pink) !important;
  box-shadow: 0 0 0 1px color-mix(in oklab, var(--accent-pink) 46%, transparent);
}

html.local-about-page .rd-sticky-hero {
  --track-vh: 108 !important;
  height: auto !important;
  min-height: calc(100svh - 80px) !important;
}

html.local-about-page .rd-sticky-hero__top {
  min-height: calc(100svh - 80px) !important;
}

html.local-about-page .rd-sticky-hero__top .max-w-content {
  padding-top: clamp(28px, 6svh, 54px) !important;
}

.local-about-page section#team {
  scroll-margin-top: 116px;
}

@media (min-width: 1024px) {
  html.local-about-page .rd-sticky-hero__top {
    height: calc(100svh - 80px) !important;
  }
}

.local-calendly-panel {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.local-calendly-panel[hidden] {
  display: none !important;
}

.local-calendly-panel iframe {
  background: var(--bg-base);
  border: 1px solid var(--border-subtle);
  border-radius: 16px;
  min-height: min(760px, calc(100svh - 190px));
  width: 100%;
}

.local-calendly-link {
  align-self: flex-end;
  color: var(--accent-green);
  font-family: var(--font-ibm-plex-mono, monospace);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

@media (max-width: 767px) {
  html.local-about-page .rd-sticky-hero {
    --track-vh: 100 !important;
    min-height: calc(100svh - 64px) !important;
  }

  html.local-about-page .rd-sticky-hero__top {
    min-height: calc(100svh - 64px) !important;
  }

  html.local-about-page .rd-sticky-hero__top .max-w-content {
    padding-bottom: 48px !important;
    padding-top: 64px !important;
  }

  .local-calendly-panel iframe {
    min-height: 720px;
  }

  .fixed header {
    max-width: calc(100vw - 32px) !important;
    position: relative !important;
  }

  .fixed header .container,
  .rd-sticky-hero,
  .rd-sticky-track,
  .rd-sticky-hero__top {
    max-width: 100% !important;
  }

  .fixed header [class~="md:hidden"] {
    display: flex !important;
    margin-left: auto !important;
    position: fixed !important;
    right: 32px !important;
    top: 72px !important;
    transform: none !important;
    z-index: 9999 !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  a[aria-label="Search"],
  button[aria-label="Open menu"] {
    align-items: center !important;
    color: #ffffff !important;
    display: flex !important;
    height: 40px !important;
    justify-content: center !important;
    opacity: 1 !important;
    position: fixed !important;
    top: 56px !important;
    visibility: visible !important;
    width: 40px !important;
    z-index: 9999 !important;
  }

  a[aria-label="Search"] {
    right: 76px !important;
  }

  button[aria-label="Open menu"] {
    right: 32px !important;
  }

  .fixed header nav,
  .fixed header [class~="hidden"] {
    display: none !important;
  }

  .rd-sticky-hero h1,
  .rd-sticky-hero p {
    max-width: min(320px, calc(100vw - 76px)) !important;
    white-space: normal !important;
  }

  .rd-sticky-hero p {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .cq-root p {
    max-width: min(280px, calc(100vw - 96px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    white-space: normal !important;
  }
}
