/* The application supplies its own navigation. Preserve all page content,
   layout, original Hero sections, animations and Framer interaction states. */
.framer-16zcb9e-container,
#__framer-badge-container {
  display: none !important;
}

/* Replace the old decorative demo stills in the Solutions introductions. */
#human-validation .framer-gtqy5j { display: none !important; }
/* The introduction fills the row after removing its decorative demo. */
#human-validation :is(.framer-1c0unfp, .framer-alsh9b, .framer-zl1jaq, .framer-1a8avhz) {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}
#human-validation .framer-1c0unfp { justify-content: flex-start !important; }
@media (min-width: 1200px) {
  #human-validation .framer-1a8avhz h1 {
    --framer-font-size: clamp(36px, 3.15vw, 48px) !important;
    font-size: clamp(36px, 3.15vw, 48px) !important;
    white-space: nowrap !important;
  }
}
#physical .framer-1ik5aj5 > [data-framer-background-image-wrapper] { display: none !important; }
#physical .framer-1ik5aj5 {
  height: auto !important;
  aspect-ratio: auto !important;
  min-width: 0 !important;
  overflow: visible !important;
}
#physical [data-av-media-mount="robot-lab"] {
  position: relative;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #315264;
  border-radius: 8px;
}
#physical .av-media-ambient-label {
  position: absolute;
  bottom: 12px;
  left: 12px;
  padding: 5px 8px;
  border-radius: 4px;
  color: #deeff6;
  background: #071723d9;
  font: 11px/1.5 Arial, sans-serif;
  pointer-events: none;
}
@media (max-width: 809px) {
  #physical .framer-1ik5aj5 { width: 100% !important; flex: none !important; }
}

/* The research-question step uses the same three assessment categories as
   Home, inside the designer's existing numbered cards and blue corner frames. */
/* Its tall row cannot meet Framer's 50% reveal threshold at the section anchor.
   Keep the first step readable on arrival, including before runtime hydration. */
#human-validation #timeline [id="1"] :is(.framer-1i1lbbi, .framer-hw4beq) {
  opacity: 1 !important;
  transform: none !important;
}

#human-validation [data-anivance-retired-assessment],
#human-validation [data-anivance-assessment-card] :is(.framer-i4tnuh, .framer-uz8bdd) {
  display: none !important;
}

#human-validation #timeline [data-anivance-assessment-row] {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch !important;
  gap: 20px !important;
  width: 100% !important;
  overflow: visible !important;
}

#human-validation #timeline [data-anivance-assessment-content] {
  width: 100% !important;
  min-width: 0 !important;
}

#human-validation #timeline [data-anivance-assessment-slot],
#human-validation #timeline [data-anivance-assessment-card] {
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  box-sizing: border-box !important;
}

#human-validation #timeline [data-anivance-assessment-card] {
  position: relative !important;
  padding: 24px !important;
  transition: translate 180ms ease, box-shadow 180ms ease;
}

#human-validation #timeline [data-anivance-assessment-card] :is(.framer-w74p2c, .framer-24vtig, .framer-s6l91d, .framer-k85pxl) {
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  white-space: normal !important;
}

#human-validation #timeline [data-anivance-assessment-card] .framer-w74p2c { gap: 20px !important; }
#human-validation #timeline [data-anivance-assessment-card] .framer-24vtig { gap: 14px !important; }
#human-validation #timeline [data-anivance-assessment-card] .framer-k85pxl .framer-text {
  --framer-font-size: 20px;
  --framer-line-height: 1.45em;
  font-size: 20px !important;
  line-height: 1.45 !important;
  overflow-wrap: break-word;
}

#human-validation #timeline [data-anivance-assessment-card] .framer-7vo6n5 {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9;
  flex: none !important;
  overflow: hidden;
  border-radius: 6px;
  background: #030b12;
  opacity: 1 !important;
  filter: none !important;
}
#human-validation #timeline [data-anivance-assessment-card] .framer-7vo6n5 img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  box-sizing: border-box;
  padding: 0;
  object-fit: contain !important;
  object-position: center !important;
  transition: transform 240ms ease;
}
#human-validation [data-anivance-assessment-card] > [data-anivance-assessment-link] {
  position: absolute;
  inset: 0;
  z-index: 3;
  border-radius: inherit;
  cursor: pointer;
}
#human-validation [data-anivance-assessment-card] a {
  display: block;
  min-height: 44px;
  color: inherit;
  text-decoration: none;
}
#human-validation [data-anivance-assessment-card] a:focus-visible { outline: 2px solid #9be5f0; outline-offset: 5px; }
#human-validation [data-anivance-assessment-card]:focus-within {
  box-shadow: inset 0 0 0 1px #5797b8, 0 8px 28px #2877a31a;
}
#human-validation [data-anivance-assessment-action] {
  display: flex;
  width: 100%;
  box-sizing: border-box;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 44px;
  padding-top: 16px;
  border-top: 1px solid #22323f;
  color: #9be5f0;
  font: 500 15px/1.5 "Instrument Sans", sans-serif;
}
#human-validation [data-anivance-assessment-description] {
  width: 100%;
  margin: 0;
  color: #aebcc6;
  font: 400 15px/1.65 "Instrument Sans", sans-serif;
  white-space: normal;
  text-wrap: pretty;
}
#human-validation [data-anivance-assessment-action] { margin-top: auto; }
#human-validation #timeline [data-anivance-assessment-card] .framer-w74p2c { height: 100% !important; }
@media (min-width: 1200px) {
  #human-validation #timeline [data-anivance-assessment-card] .framer-k85pxl { min-height: 58px; }
  #human-validation [data-anivance-assessment-description] { min-height: 8.25em; }
}
#human-validation [data-anivance-assessment-action]::after {
  content: "→";
  font-size: 20px;
  transition: translate 180ms ease;
}
#human-validation [data-anivance-assessment-areas] {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
  color: #b9c6d0;
  font: 400 16px/1.65 "Instrument Sans", sans-serif;
}
#human-validation [data-anivance-assessment-areas] li { display: flex; align-items: baseline; gap: 10px; }
#human-validation [data-anivance-assessment-areas] li::before { content: "→"; color: #79b8c7; }
@media (hover: hover) and (pointer: fine) {
  #human-validation #timeline [data-anivance-assessment-card]:hover {
    translate: 0 -4px;
    box-shadow: inset 0 0 0 1px #5797b8, 0 8px 28px #2877a326;
  }
  #human-validation #timeline [data-anivance-assessment-card]:hover .framer-7vo6n5 img { transform: scale(1.035); }
  #human-validation [data-anivance-assessment-card]:hover [data-anivance-assessment-action]::after { translate: 4px 0; }
}
@media (prefers-reduced-motion: reduce) {
  #human-validation #timeline [data-anivance-assessment-card],
  #human-validation #timeline [data-anivance-assessment-card] .framer-7vo6n5 img,
  #human-validation [data-anivance-assessment-action]::after { transition: none; }
  #human-validation #timeline [data-anivance-assessment-card]:hover { translate: none; }
  #human-validation #timeline [data-anivance-assessment-card]:hover .framer-7vo6n5 img { transform: none; }
  #human-validation [data-anivance-assessment-card]:hover [data-anivance-assessment-action]::after { translate: none; }
}
@media (max-width: 1199px) {
  #human-validation #timeline [data-anivance-assessment-row] { grid-template-columns: minmax(0, 1fr); }
  #human-validation #timeline [data-anivance-assessment-card] { padding: 24px !important; }
}

/* The published pages use a fixed desktop canvas. Reflow their existing blocks
   on phones and tablets; leave Motion, slideshow tracks and reveal
   states in control of their own animation properties. */
@media (max-width: 1199px) {
  :is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG, :is(.framer-1oy88, .framer-9go3z)),
  :is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG, :is(.framer-1oy88, .framer-9go3z)) > div {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100vw !important;
  }

  :is(#platform, #organ-on-chip-section, #mps-section, #physical-ai-section, #lab-in-loop),
  :is(#platform, #organ-on-chip-section, #mps-section, #physical-ai-section, #lab-in-loop) > div,
  :is(#platform, #organ-on-chip-section, #mps-section, #physical-ai-section, #lab-in-loop) [data-framer-name="Pricing Tab"],
  :is(#platform, #organ-on-chip-section, #mps-section, #physical-ai-section, #lab-in-loop) [data-framer-name="Bottom Content"],
  :is(#platform, #organ-on-chip-section, #mps-section, #physical-ai-section, #lab-in-loop) [data-framer-name="Card Group"] {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    flex: none !important;
  }

  :is(#platform, #organ-on-chip-section, #mps-section, #physical-ai-section, #lab-in-loop) div:not(.framer-slideshow, .framer-slideshow *):not([data-code-component-plugin-id] *) {
    box-sizing: border-box !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  :is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG, :is(.framer-1oy88, .framer-9go3z)) [data-framer-component-type="RichTextContainer"] {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  :is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG, :is(.framer-1oy88, .framer-9go3z)) .framer-text {
    overflow-wrap: break-word;
  }

  /* The shared Platform masthead has no phone variant in the publication. */
  :is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) > [data-framer-name="Wrapper"] {
    height: auto !important;
    min-height: 440px;
    padding: 112px 24px 40px !important;
  }

  :is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) [data-framer-name="Base Container"],
  :is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) [data-framer-name="Hero Block"],
  :is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) [data-framer-name="Hero Block"] > div,
  :is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) [data-framer-name="Hero Block"] > div > div,
  :is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) [data-framer-name="Title Wrapper"] {
    box-sizing: border-box !important;
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    padding: 0 !important;
    gap: 24px !important;
  }

  :is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) [data-framer-name="Hero Block"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 32px !important;
    overflow: visible !important;
  }

  :is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) h1 {
    --framer-font-size: 54px !important;
    font-size: 54px !important;
  }

  :is(#platform, #organ-on-chip-section, #mps-section, #physical-ai-section, #lab-in-loop) [data-framer-name="Bottom Content"] {
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 0 20px !important;
    gap: 32px !important;
  }

  :is(#platform, #organ-on-chip-section, #mps-section) [data-framer-name="Bottom Content"] > [data-framer-name="Left Content"] {
    position: relative !important;
    top: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    flex: none !important;
  }

  :is(#platform, #organ-on-chip-section, #mps-section) [data-framer-name="Card Group"] {
    gap: 32px !important;
  }

  :is(#platform, #organ-on-chip-section, #mps-section) [data-framer-name="Card"] {
    width: 100% !important;
    height: auto !important;
    min-width: 0 !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 24px !important;
    padding: 0 !important;
  }

  :is(#platform, #organ-on-chip-section) #c3 > div:has(> #c2-1) {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    flex: none !important;
  }

  :is(#platform, #organ-on-chip-section) [data-framer-name="Card"] > [data-framer-name="Left Content"] {
    order: 0;
    width: 100% !important;
    height: auto !important;
    padding: 24px !important;
    gap: 28px !important;
  }

  :is(#platform, #organ-on-chip-section) [data-framer-name="Card"] > [data-framer-name="Left Content"] div:not([class$="-container"]):not(a *):not(button *) {
    width: 100% !important;
  }

  :is(#platform, #organ-on-chip-section) [data-framer-name="Card"] > [data-framer-name="Right Content"] {
    order: 1;
    width: 100% !important;
    height: 340px !important;
    padding: 20px !important;
  }

  :is(#platform, #organ-on-chip-section) [data-framer-name="Right Content"] img {
    object-fit: contain !important;
  }

  /* Retain the native -50% centering and animated Y position on these
     slideshow wrappers; only move their desktop absolute boxes into flow. */
  :is(#platform, #organ-on-chip-section) [data-framer-name="Card"] > [class$="-container"]:has(.framer-slideshow) {
    order: 2;
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    left: 50% !important;
    right: auto !important;
    width: 100% !important;
    height: auto !important;
    flex: none !important;
    /* The desktop entry trigger does not fire after this mobile reflow.
       Only this outer reveal is settled; native slides keep animating. */
    opacity: 1 !important;
  }

  :is(#platform, #organ-on-chip-section) :is(.framer-0h3NW, .framer-MLBr6, .framer-sxwjX) {
    width: 100% !important;
    padding-bottom: 56px !important;
  }

  :is(#platform, #organ-on-chip-section) :is(.framer-5y6osw-container, .framer-13xuvsw-container, .framer-nvb0l5-container) {
    height: 680px !important;
    min-height: 680px !important;
  }

  :is(#platform, #organ-on-chip-section) [data-framer-name="Testimonial Chevron Controller"] {
    top: auto !important;
    bottom: 8px !important;
    left: auto !important;
    right: 16px !important;
  }

  :is(#platform, #organ-on-chip-section) .framer-slideshow [data-framer-name^="Dekstop"],
  :is(#platform, #organ-on-chip-section) .framer-slideshow :is([data-framer-name="Testimonial Details"], [data-framer-name="Testimonial Details Content"], [data-framer-name="Testimonial Controller Wrap"], [data-framer-name="Author Info"], [data-framer-name="Points Content"]) {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  :is(#platform, #organ-on-chip-section) .framer-slideshow [data-framer-name="Testimonial Details"] div {
    box-sizing: border-box !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  :is(#platform, #organ-on-chip-section) .framer-slideshow [data-framer-name^="Dekstop"]:has(> [data-framer-name="Testimonial Details"]) {
    flex-direction: column !important;
    align-items: center !important;
    gap: 16px !important;
  }

  :is(#platform, #organ-on-chip-section) .framer-slideshow [data-framer-name="Testimonial Details"] div:has(> [data-framer-name="Points Content"]) {
    width: 100% !important;
    flex-direction: column !important;
    gap: 12px !important;
  }

  :is(#platform, #organ-on-chip-section) .framer-slideshow [data-framer-component-type="RichTextContainer"],
  :is(#platform, #organ-on-chip-section) .framer-slideshow [data-framer-component-type="RichTextContainer"] :is(p, h1, h2, h3, h4, h5, h6) {
    white-space: normal !important;
    overflow-wrap: break-word;
  }

  :is(#platform, #organ-on-chip-section) .framer-slideshow [data-framer-name="Progressbar"] {
    width: 100% !important;
  }

  :is(.framer-1qtpjuh, .framer-x2oc45, .framer-1q0kpe3, .framer-1s6db9o, .framer-1xkvjg5, .framer-16ax22a, .framer-et5kev, .framer-1v6hqy6) {
    flex-direction: column !important;
    width: 100% !important;
    padding: 0 20px !important;
    gap: 20px !important;
  }

  /* Four product categories stay visible as two rows, including the active
     item whose published component is a div rather than a separate link. */
  :is(.framer-5ovx9x-container, .framer-87rht9-container, .framer-1yey9y1-container, .framer-1pa004r-container, .framer-til41r-container) {
    width: calc(100% - 40px) !important;
    height: auto !important;
  }

  :is(.framer-jO5Vu, .framer-yUd6S),
  :is(.framer-jO5Vu, .framer-yUd6S) > button,
  :is(.framer-jO5Vu, .framer-yUd6S) :is([data-framer-name="Container"], [data-framer-name="Content"], [data-framer-name="Toggle"]) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    box-sizing: border-box !important;
  }

  :is(.framer-jO5Vu, .framer-yUd6S) [data-framer-name="Content"] { padding: 6px !important; }
  :is(.framer-jO5Vu, .framer-yUd6S) [data-framer-name="Toggle"] {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px !important;
  }

  :is(.framer-jO5Vu, .framer-yUd6S) [data-framer-name="Toggle"] > :is(a, div):not([data-framer-name="Fill"]) {
    width: 100% !important;
    min-width: 0 !important;
    padding: 12px 8px !important;
    box-sizing: border-box !important;
  }

  :is(.framer-jO5Vu, .framer-yUd6S) [data-framer-name="Toggle"] p {
    --framer-font-size: 12px !important;
    font-size: 12px !important;
  }

  /* The desktop sliding highlight has absolute row coordinates; a phone
     grid uses the existing selected tile's own background instead. */
  :is(.framer-jO5Vu, .framer-yUd6S) [data-framer-name="Toggle"] > [data-framer-name="Fill"] {
    display: none !important;
  }

  :is(.framer-jO5Vu, .framer-yUd6S) :is(.framer-ab47jy, .framer-1jf8q30, .framer-nwhs87) {
    background-color: rgb(0, 115, 255);
    border-radius: 24px;
  }

  :is(.framer-jO5Vu, .framer-yUd6S) :is(.framer-ab47jy, .framer-1jf8q30, .framer-nwhs87) p {
    color: white !important;
  }

  /* MPS device image, brochure CTA and specifications become three rows. */
  #mps-section [data-framer-name="Card"] > [data-framer-name="Default"] {
    width: 100% !important;
    height: auto !important;
    flex-direction: column !important;
    padding: 20px !important;
    gap: 24px !important;
  }

  #mps-section [data-framer-name="Card"] > [data-framer-name="Default"] > [data-framer-name="Left"] {
    width: 100% !important;
    height: 360px !important;
    flex: none !important;
  }

  #mps-section [data-framer-name="Left"] img {
    object-fit: contain !important;
  }

  #mps-section [data-framer-name="Card"] > [data-framer-name="Default"] > [class$="-container"] {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    flex: none !important;
  }

  #mps-section [data-framer-name="Card"] > [data-framer-name="Default"] > [data-framer-name="Right"] {
    width: 100% !important;
    height: auto !important;
    flex: none !important;
    gap: 24px !important;
  }

  #mps-section .framer-QYDMi .framer-wwyc1p {
    width: 100% !important;
    height: auto !important;
    white-space: normal !important;
    flex: 1 1 auto !important;
  }

  #mps-section .framer-QYDMi .framer-wwyc1p p {
    white-space: normal !important;
    --framer-line-height: 1.5em !important;
    line-height: 1.5 !important;
  }

  /* Physical AI keeps the orchestrator animation and all three role cards. */
  #physical-ai-section .framer-urw46l,
  #physical-ai-section .framer-dig2zi,
  #physical-ai-section .framer-z4sg30 {
    width: 100% !important;
    height: auto !important;
    flex-direction: column !important;
    gap: 32px !important;
    padding: 0 20px !important;
  }

  #physical-ai-section .framer-dig2zi > div {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
  }

  #physical-ai-section .framer-15ukk2u {
    height: auto !important;
    aspect-ratio: 442 / 236;
  }

  #physical-ai-section .framer-1j7d451-container {
    height: 360px !important;
  }

  /* Scale only the stationary orbit canvas. Its animated child nodes keep
     their own Motion transforms, timing and orbital coordinates. */
  #physical-ai-section .framer-1j7d451-container > div {
    transform: scale(.65);
    transform-origin: center;
  }

  #physical-ai-section .framer-3voa7n,
  #physical-ai-section .framer-3voa7n p {
    white-space: normal !important;
    height: auto !important;
  }

  #physical-ai-section .framer-3voa7n p:first-child {
    --framer-font-size: 30px !important;
    font-size: 30px !important;
    --framer-line-height: 1.2em !important;
    line-height: 1.2 !important;
  }

  #physical-ai-section .framer-3voa7n { order: -2; }
  #physical-ai-section .framer-p0njq3-container { order: -1; }

  /* Solutions: retain both destinations and their native tab/FAQ controls. */
  :is(.framer-1oy88, .framer-9go3z) .framer-ksytck-container {
    width: calc(100% - 32px) !important;
    height: 72px !important;
    top: 88px !important;
    z-index: 5;
  }

  :is(.framer-1oy88, .framer-9go3z) .framer-D8Ms7 {
    width: 100% !important;
    padding: 8px !important;
    gap: 8px !important;
  }

  :is(.framer-1oy88, .framer-9go3z) .framer-D8Ms7 > div {
    width: 0 !important;
    min-width: 0 !important;
    flex: 1 1 0 !important;
  }

  :is(.framer-1oy88, .framer-9go3z) .framer-D8Ms7 a {
    width: 100% !important;
    min-width: 0 !important;
    padding: 12px 8px !important;
  }

  :is(.framer-1oy88, .framer-9go3z) .framer-D8Ms7 :is(p, h3) {
    --framer-font-size: 12px !important;
    font-size: 12px !important;
    --framer-line-height: 1.35em !important;
    line-height: 1.35 !important;
    white-space: normal !important;
  }

  :is(.framer-1oy88, .framer-9go3z) .framer-D8Ms7 :is(.framer-sfgcnl, .framer-ap3cv2, .framer-1sd6sqh) {
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    gap: 6px !important;
  }

  :is(.framer-1oy88, .framer-9go3z) .framer-D8Ms7 [data-framer-component-type="RichTextContainer"] {
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    white-space: normal !important;
  }

  :is(.framer-1oy88, .framer-9go3z) .framer-D8Ms7 .framer-sfgcnl {
    width: 100% !important;
    padding: 0 !important;
  }

  :is(.framer-1oy88, .framer-9go3z) .framer-D8Ms7 :is(.framer-ap3cv2, .framer-1sd6sqh) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    width: 100% !important;
    align-items: center !important;
    gap: 6px !important;
  }

  :is(.framer-1oy88, .framer-9go3z) .framer-D8Ms7 :is(.framer-ap3cv2, .framer-1sd6sqh) > div:first-child {
    width: 100% !important;
  }

  :is(.framer-1oy88, .framer-9go3z) :is(.framer-18w939, .framer-qm6ejh, .framer-1gbc9n, .framer-1hoywzd),
  :is(.framer-1oy88, .framer-9go3z) :is(#human-validation, #physical),
  :is(.framer-1oy88, .framer-9go3z) :is(#human-validation, #physical) > div,
  :is(.framer-1oy88, .framer-9go3z) :is(.framer-1c0unfp, .framer-wwe9ta, .framer-alsh9b, .framer-1yr07j6) {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    flex: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 0 !important;
    gap: 40px !important;
  }

  :is(.framer-1oy88, .framer-9go3z) .framer-qm6ejh { padding: 0 20px !important; }
  :is(.framer-1oy88, .framer-9go3z) .framer-1gbc9n { position: relative !important; top: auto !important; }
  :is(.framer-1oy88, .framer-9go3z) .framer-1hoywzd { gap: 72px !important; }
  :is(.framer-1oy88, .framer-9go3z) :is(#human-validation, #physical) [data-framer-name="Title Wrapper"] {
    width: 100% !important;
    gap: 24px !important;
  }

  :is(.framer-1oy88, .framer-9go3z) :is(.framer-gtqy5j, .framer-1ik5aj5) {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 496 / 300;
  }

  :is(.framer-1oy88, .framer-9go3z) :is(#human-validation, #physical) h1 {
    --framer-font-size: 34px !important;
    font-size: 34px !important;
  }

  :is(.framer-1oy88, .framer-9go3z) #timeline { width: 100% !important; gap: 36px !important; }
  :is(.framer-1oy88, .framer-9go3z) #timeline > div { gap: 16px !important; }
  :is(.framer-1oy88, .framer-9go3z) #timeline [data-framer-name="Progressbar wrapper"] {
    width: 36px !important;
    flex: 0 0 36px !important;
  }

  :is(.framer-1oy88, .framer-9go3z) #timeline [data-framer-name="Image + Text"],
  :is(.framer-1oy88, .framer-9go3z) #timeline [data-framer-name^="Content Stack"] {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    flex-direction: column !important;
    padding-bottom: 24px !important;
  }

  :is(.framer-1oy88, .framer-9go3z) #timeline [data-framer-name="About"] {
    width: 100% !important;
    height: auto !important;
    min-height: 325px;
  }

  :is(.framer-1oy88, .framer-9go3z) #timeline .framer-1ukrfw5 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    width: 100% !important;
    gap: 16px !important;
    justify-items: stretch;
  }

  :is(.framer-1oy88, .framer-9go3z) #timeline .framer-1ukrfw5 > div,
  :is(.framer-1oy88, .framer-9go3z) #timeline .framer-guC8k,
  :is(.framer-1oy88, .framer-9go3z) #timeline .framer-guC8k .framer-w74p2c {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  :is(.framer-1oy88, .framer-9go3z) #timeline .framer-guC8k .framer-7vo6n5 {
    width: 100% !important;
    height: 180px !important;
  }

  :is(.framer-1oy88, .framer-9go3z) :is(#services, #solution-physical-link) {
    width: 100% !important;
    height: auto !important;
    padding: 32px 0 !important;
    gap: 32px !important;
  }

  :is(.framer-1oy88, .framer-9go3z) :is(#services, #solution-physical-link) :is(.framer-xFtgs, .framer-pcXCc) {
    width: 100% !important;
  }

  :is(.framer-1oy88, .framer-9go3z) :is(#services, #solution-physical-link) h6 {
    --framer-font-size: 23px !important;
    font-size: 23px !important;
  }
}

/* Match Solutions to the compact Platform banner while keeping its two columns. */
:is(.framer-1oy88, .framer-9go3z) .framer-117dgmr {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 420px !important;
  min-height: 0 !important;
  padding: 128px 40px 52px !important;
  justify-content: center !important;
}
:is(.framer-1oy88, .framer-9go3z) .framer-djmkin {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 1200px !important;
  height: auto !important;
  padding: 0 !important;
  gap: 32px !important;
}
:is(.framer-1oy88, .framer-9go3z) :is(.framer-1p5e3r6, .framer-1yhfsth) {
  flex: 1 1 0 !important;
  width: auto !important;
  min-width: 0 !important;
}
:is(.framer-1oy88, .framer-9go3z) :is(.framer-brkup0, .framer-1r1z831, .framer-1f504ud) {
  width: 100% !important;
  min-width: 0 !important;
}
:is(.framer-1oy88, .framer-9go3z) .framer-1yhfsth {
  display: block !important;
  max-width: 440px !important;
  line-height: 1.6;
  text-align: right;
  text-wrap: balance;
  white-space: normal !important;
}
/* Let the description wrap as one balanced sentence instead of two uneven blocks. */
:is(.framer-1oy88, .framer-9go3z) .framer-1yhfsth p {
  display: inline !important;
  white-space: normal !important;
  --framer-line-height: 1.6em !important;
  line-height: 1.6 !important;
}
:is(.framer-1oy88, .framer-9go3z) .framer-1r1z831 h1 {
  --framer-font-size: clamp(48px, 6.3vw, 88px) !important;
  font-size: clamp(48px, 6.3vw, 88px) !important;
  --framer-line-height: 1.05em !important;
  line-height: 1.05 !important;
}

/* Compact shared Platform banner; retain the designer's background and title. */
:is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) > [data-framer-name="Wrapper"] {
  box-sizing: border-box !important;
  height: 420px !important;
  min-height: 0 !important;
  padding: 128px 40px 52px !important;
}
:is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) > [data-framer-name="Wrapper"] > [data-framer-name="Base Container"] {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 1200px !important;
  height: 100% !important;
  padding: 0 !important;
}
:is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) [data-framer-name="Hero Block"] {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
}
:is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) [data-framer-name="Hero Block"] > div:not(:has(h1)) {
  display: none !important;
}
:is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) [data-framer-name="Hero Block"] > div:has(h1) > div:not(:has(h1)) {
  display: none !important;
}
:is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) [data-framer-name="Hero Block"] > div:has(h1) {
  position: relative !important;
  inset: auto !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-end !important;
  gap: 24px !important;
  width: 100% !important;
  height: auto !important;
}
:is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) [data-framer-name="Hero Block"] > div:has(h1) > div:has(h1) {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
}
:is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) [data-framer-name="Hero Block"] :is([data-framer-name="Title Wrapper"], [data-framer-name="Heading"], [data-framer-name="Body"]) {
  width: 100% !important;
  height: auto !important;
  min-width: 0 !important;
}
:is(.framer-VKjV8, .framer-ie7jK, .framer-Ekdxl, .framer-GkCyE, .framer-LSTjG) [data-framer-name="Hero Block"] h1 {
  --framer-font-size: clamp(48px, 6.3vw, 88px) !important;
  font-size: clamp(48px, 6.3vw, 88px) !important;
  --framer-line-height: 1.05em !important;
  line-height: 1.05 !important;
  white-space: nowrap !important;
}
