/* Native controls and motion replacing the Webflow runtime. The reference
   stylesheet supplies the captured design and all its responsive breakpoints. */
[hidden] { display: none !important; }
img { height: auto; }
html { scroll-behavior: smooth; }
button { -webkit-tap-highlight-color: transparent; }
button:focus-visible, a:focus-visible { outline: 2px solid var(--_color---primitive--brand--500); outline-offset: 6px; }
.service-title-link, .faq-top, .home-hero-lightbox, .testimonial-number-item {
  border: 0; background: transparent; padding: 0; text-align: left; cursor: pointer;
}
.faq-top, .testimonial-number-item { color: inherit; }
.faq-top { width: 100%; }
.chose-tab-link, .menu-button { border: 0; cursor: pointer; }
.slide-button { background: transparent; cursor: pointer; }
.menu-button { line-height: 1; }
.home-hero-lightbox { display: flex; align-items: center; justify-content: center; }
.stratedge-skip { position: fixed; top: 12px; left: 12px; z-index: 10000; padding: 12px 20px; border-radius: 4px; background: var(--_color---primitive--brand--500); color: #101010; transform: translateY(-200%); }
.stratedge-skip:focus { transform: translateY(0); }
.footer-link-text, .footer-text, .project-button-text { transition: transform .4s cubic-bezier(.22,1,.36,1); }
.footer-link-text.is-two, .footer-text.is-two { transform: translateY(110%); }
.primary-button:hover .footer-link-text.is-one, .primary-button:focus-visible .footer-link-text.is-one,
.footer-link:hover .footer-text.is-one, .footer-link:focus-visible .footer-text.is-one { transform: translateY(-110%); }
.primary-button:hover .footer-link-text.is-two, .primary-button:focus-visible .footer-link-text.is-two,
.footer-link:hover .footer-text.is-two, .footer-link:focus-visible .footer-text.is-two { transform: translateY(0); }
.button-animated-line { transform: scaleX(0); transform-origin: left; transition: transform .4s; }
.service-link:hover .button-animated-line, .service-link:focus-visible .button-animated-line { transform: scaleX(1); }
.service-link:hover .project-button-text, .service-link:focus-visible .project-button-text { transform: translateY(-100%); }
.service-left-bottom, .service-img-link-wrap { transition: height .5s ease; }
.service-collection-wrap[data-open="false"] .service-left-bottom,
.service-collection-wrap[data-open="false"] .service-img-link-wrap { height: 0; visibility: hidden; }
.service-collection-wrap[data-open="true"] .service-left-bottom,
.service-collection-wrap[data-open="true"] .service-img-link-wrap { height: auto; visibility: visible; }
.service-arrow { transition: transform .5s; }
.service-collection-wrap[data-open="true"] .service-arrow { transform: rotate(0deg); }
.service-img-wrap { transition: transform .5s; }
.service-img-link:hover .service-img-wrap { transform: rotate(0deg) scale(1.03); }
.chose-tab-link:not(.w--current) .chose-us-left-summary { height: 0; }
.chose-tab-link.w--current .chose-us-icon-wrap { color: #101010; background: var(--_color---primitive--brand--500); }
.chose-us-icon-wrap { transition: background .4s, color .4s; }
.faq-icon.absolute { transition: opacity .3s, transform .3s; }
.faq-card[data-open="true"] .faq-icon.absolute { opacity: 0; transform: rotate(90deg); }
.faq-card[data-open="false"] .faq-icon:not(.absolute) { opacity: 0; }
.logo-marque-main { cursor: grab; touch-action: pan-y; user-select: none; }
.logo-marque-main[data-dragging="true"] { cursor: grabbing; }
.logo-marque-main:focus-visible { outline: 2px solid var(--_color---primitive--brand--500); outline-offset: 6px; }
.logo-marque-list { will-change: transform; }
.logo-marque-list img { pointer-events: none; -webkit-user-drag: none; }
.footer-brand-name .motion-word { white-space: nowrap; }
/* Keep translation in page coordinates. An individual `rotate` property
   rotates the later transform's translation axis and makes the exit orbit
   sideways. The source composes translate → rotate → scale in one transform. */
.animation-circle { animation: stratedge-orbit 25s linear infinite; }
@keyframes stratedge-orbit {
  from { transform: translateY(var(--ring-y, 0%)) rotate(0deg) scale(var(--ring-scale, 1)); }
  to { transform: translateY(var(--ring-y, 0%)) rotate(360deg) scale(var(--ring-scale, 1)); }
}
.motion-word { display: inline-block; white-space: nowrap; }
.motion-char { display: inline-block; }
.advice-heading .motion-word { overflow: clip; vertical-align: top; }
.project-card-img { transition: transform .6s; }
.project-info-bottom { max-height: 0; transition: max-height .5s ease; }
.project-arrow-wrap { transition: opacity .3s; }
.project-card:hover .project-info-bottom, .project-card:focus-within .project-info-bottom { max-height: 350px; }
.project-card:hover .project-card-img, .project-card:focus-within .project-card-img { transform: scale(1.1); }
.project-card:hover .project-arrow-wrap, .project-card:focus-within .project-arrow-wrap { opacity: 0; }
.project-card:focus-within .project-info-bottom { overflow: visible; }
.testimonial-card { will-change: transform, opacity; }
.testimonial-left button { padding-top: var(--_sizes---spacers--spacer-4xs); padding-bottom: var(--_sizes---spacers--spacer-4xs); }
.testiomnial-line { transform-origin: left; }
.slide-button { display: flex; align-items: center; justify-content: center; }
.slide-button .slider-arrow { width: 20px; }
.video-dialog { width: min(1100px, calc(100vw - 40px)); padding: 0; border: 0; overflow: visible; background: #000; }
.video-dialog::backdrop { background: rgb(0 0 0 / .92); }
.video-dialog iframe { display: block; width: 100%; aspect-ratio: 16/9; border: 0; }
.video-dialog-close { position: absolute; right: 0; top: -52px; width: 44px; height: 44px; border: 0; color: white; background: transparent; font: 36px/1 sans-serif; cursor: pointer; }
body:has(.video-dialog[open]) { overflow: hidden; }
@media (max-width: 991px) {
  .navbar-main { position: relative; }
  .navbar .nav-menu[data-open="true"] { display: block; position: absolute; left: calc(-1 * var(--_sizes---spacers--spacer-xsm)); right: calc(-1 * var(--_sizes---spacers--spacer-xsm)); top: calc(100% + 20px); }
  .nav-menu .navlink { display: block; }
  .testimonial-card { will-change: auto; }
  .testimonial-slide .testimonial-card { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; }
  .sticky-wrap { height: auto; }
  .animation-circle-wrap { position: relative; top: 0; }
  .testimonial-sticky-wrap { height: auto; padding-block: var(--_sizes---spacers--spacer-4xl); }
  .testimonial-main { display: none; }
  .testimonial-slide { display: block; height: auto; padding-bottom: 5.5rem; background: transparent; }
  .testimonial-slide .testimonial-card { opacity: 1; position: static; transform: none; }
  .process-left-main { min-height: auto; }
  .process-info-card { position: relative; top: 0; }
  .process-img { position: relative; top: 0; }
  .slide-button { background: #f7f7f7; color: #171717; border-radius: 50%; width: 48px; height: 48px; inset: auto auto 0 0; }
  .slide-button.right { left: 64px; }
}
