@media (min-width:992px) {html.w-mod-js:not(.w-mod-ix) [data-w-id="2fd29e4c-8768-90fe-b708-e91bc0bc1a24"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}html.w-mod-js:not(.w-mod-ix) [data-w-id="84abce7b-f377-2948-232f-3ff6eab98b69"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}html.w-mod-js:not(.w-mod-ix) [data-w-id="2a77dd23-227d-9d21-b10e-040bdc77bfde"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}html.w-mod-js:not(.w-mod-ix) [data-w-id="3d5ba6a6-c783-85ce-1194-f502592e0da4"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}html.w-mod-js:not(.w-mod-ix) [data-w-id="49011e65-d6c4-6c8f-ea82-4a3db913b834"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}}@media (max-width:991px) and (min-width:768px) {html.w-mod-js:not(.w-mod-ix) [data-w-id="49228dbc-5158-9fdb-117e-056ca32c692e"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}html.w-mod-js:not(.w-mod-ix) [data-w-id="2fd29e4c-8768-90fe-b708-e91bc0bc1a24"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}html.w-mod-js:not(.w-mod-ix) [data-w-id="84abce7b-f377-2948-232f-3ff6eab98b69"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}html.w-mod-js:not(.w-mod-ix) [data-w-id="2c81298c-31f2-758d-1622-57d27013f478"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}}@media (max-width:767px) and (min-width:480px) {html.w-mod-js:not(.w-mod-ix) [data-w-id="49228dbc-5158-9fdb-117e-056ca32c692e"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}html.w-mod-js:not(.w-mod-ix) [data-w-id="2fd29e4c-8768-90fe-b708-e91bc0bc1a24"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}html.w-mod-js:not(.w-mod-ix) [data-w-id="84abce7b-f377-2948-232f-3ff6eab98b69"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}html.w-mod-js:not(.w-mod-ix) [data-w-id="2c81298c-31f2-758d-1622-57d27013f478"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}}@media (max-width:479px) {html.w-mod-js:not(.w-mod-ix) [data-w-id="49228dbc-5158-9fdb-117e-056ca32c692e"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}html.w-mod-js:not(.w-mod-ix) [data-w-id="2fd29e4c-8768-90fe-b708-e91bc0bc1a24"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}html.w-mod-js:not(.w-mod-ix) [data-w-id="84abce7b-f377-2948-232f-3ff6eab98b69"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}html.w-mod-js:not(.w-mod-ix) [data-w-id="2c81298c-31f2-758d-1622-57d27013f478"] {-webkit-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 80px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0;filter: blur(10px);}}

.w-webflow-badge{display:none!important}

/* Homepage entry loader */
.site-loader {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #000;
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.site-loader.is-hidden {
  opacity: 0;
  transform: translateY(-4%);
  pointer-events: none;
}
body.is-loading { overflow: hidden; }

.site-loader-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 24px;
}

.site-loader-logo {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 32px;
}
.site-loader-logo img {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  box-shadow: 0 8px 28px rgba(136, 0, 255, 0.4);
}
.site-loader-logo span {
  font-family: "Bebas Neue", "Figtree", sans-serif;
  font-size: 26px;
  font-weight: 400;
  letter-spacing: 0.04em;
  color: #f1edf9;
}

.site-loader-words {
  position: relative;
  height: 56px;
  width: 320px;
  overflow: hidden;
}
.loader-word {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Bebas Neue", "Space Grotesk", "Figtree", sans-serif;
  font-size: 48px;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0.04em;
  color: #fff;
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.5s cubic-bezier(.16,1,.3,1), transform 0.5s cubic-bezier(.16,1,.3,1);
}
.loader-word.is-active { opacity: 1; transform: translateY(0); }
.loader-word.is-leaving { opacity: 0; transform: translateY(-24px); }

.site-loader-progress {
  width: 220px;
  height: 3px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  margin-top: 30px;
  overflow: hidden;
}

.site-loader-percent {
  margin-top: 14px;
  font-family: "Figtree", "Segoe UI", sans-serif;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, 0.55);
}
.site-loader-progress-fill {
  height: 100%;
  width: 0%;
  border-radius: 999px;
  background: linear-gradient(135deg, #8800ff, #b347ff);
  transition: width 0.2s ease;
}

/* Project card titles: more distinctive display font */
.project-bottom-card .text-28px.static-secondary-text.italic {
  font-family: "Space Grotesk", "Figtree", sans-serif;
  font-style: normal;
  font-weight: 600;
  letter-spacing: 0.01em;
}

/* Project card tag pills: stand out more */
.project-card-tag {
  background: linear-gradient(135deg, #8800ff, #b347ff);
  border-color: transparent;
  box-shadow: 0 2px 12px rgba(136, 0, 255, 0.5);
}
.project-card-tag .text-14px {
  color: #ffffff;
  font-weight: 600;
}

/* Clip the horizontally-translating portfolio row to the pinned sticky
   box so adjacent cards never bleed outside its bounds. */
.case-study-sticky-wrapper { overflow: hidden; }

/* Webflow's own slider JS (drag, dots, arrows) isn't available here, so
   every .w-slider on the page (portfolio mobile carousel, testimonials,
   blog/updates) becomes a plain native swipeable strip instead of a
   frozen, non-interactive first slide. */
.case-study-slider.w-slider,
.testimonial-main-slider.w-slider,
.blog-slider.w-slider {
  height: auto;
  background: none;
}
.case-study-slider .w-slider-mask,
.testimonial-main-slider .w-slider-mask,
.blog-slider .w-slider-mask {
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
}
.case-study-slider .w-slide,
.testimonial-main-slider .w-slide,
.blog-slider .w-slide {
  scroll-snap-align: start;
}
.case-study-slider .w-slider-arrow-left,
.case-study-slider .w-slider-arrow-right,
.case-study-slider .w-slider-nav,
.testimonial-main-slider .w-slider-arrow-left,
.testimonial-main-slider .w-slider-arrow-right,
.testimonial-main-slider .w-slider-nav,
.blog-slider .w-slider-arrow-left,
.blog-slider .w-slider-arrow-right,
.blog-slider .w-slider-nav {
  display: none;
}

/* Straighten tilted tag/button stickers (override the template's ±7deg rotation) */
.body-tag.expertise,
.body-tag.case-study,
.body-tag.result,
.body-tag.pricing,
.body-tag.recent-insights,
.body-tag.cta {
  transform: none;
}
