/* Home page — Figma 2351:4959 */

:root {
  --home-coral: #ff934f;
  --home-coral-deep: #7f3100;
  --home-scorpion: #5e565a;
  --home-cream: #efecca;
  --home-sage: #e7efe7;
  --home-sage-line: #92a692;
  --home-ink: #191c1e;
  --home-white: #ffffff;
  --home-radius-lg: 1.875rem;
  --home-radius-md: 1.5rem;
  --home-radius-sm: 0.75rem;
  --home-max: 77.5rem;
  --site-header-height: 4.75rem;
}

.page-home-main {
  /*
   * Keep overflow visible so workflow sticky works.
   * Cap width so wide flex/absolute children cannot expand the page.
   * Section-level containment (hero, workflow viewport) stops real overflow.
   */
  width: 100%;
  max-width: 100%;
  overflow: visible;
  background: var(--home-white);
  color: var(--home-scorpion);
}

/* Every home section stays inside the viewport width */
.page-home-main > section {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.home-section-title {
  margin: 0;
  font-size: clamp(2rem, 4vw, 2.75rem);
  font-weight: 500;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--home-scorpion);
  text-align: center;
}

.home-section-title--left {
  text-align: left;
}

.home-section-lead {
  margin: 1.5rem auto 0;
  max-width: 53rem;
  font-size: clamp(1.125rem, 2vw, 1.5rem);
  line-height: 1.35;
  color: var(--home-scorpion);
  text-align: center;
}

.home-section-lead--sm {
  max-width: 28rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #455252;
}

.home-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 1.4rem;
  padding: 0.25rem 1rem;
  border-radius: 999px;
  background: var(--home-coral);
  color: #fff;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

/* Buttons */
.home-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 3.5rem;
  padding: 0.875rem 1.5rem;
  border-radius: 999px;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.22;
  text-decoration: none;
  transition: background-color 0.25s ease, border-color 0.25s ease, color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}

.home-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(62, 55, 57, 0.12), 0 2px 6px rgba(62, 55, 57, 0.06);
}

.home-btn svg {
  transition: transform 0.22s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.home-btn:hover svg {
  transform: translateX(3px);
}

.home-btn--primary {
  background: var(--home-coral);
  border: 1px solid var(--home-coral);
  color: #fff;
}

.home-btn--primary:hover,
.home-btn--primary:focus-visible {
  background: #f07a2e;
  border-color: #f07a2e;
  color: #fff;
  box-shadow: 0 10px 24px rgba(255, 147, 79, 0.28), 0 2px 6px rgba(255, 147, 79, 0.12);
}

.home-btn--ghost {
  background: #fff;
  border: 1px solid rgba(94, 86, 90, 0.2);
  color: var(--home-scorpion);
}

.home-btn--ghost:hover,
.home-btn--ghost:focus-visible {
  border-color: var(--home-scorpion);
  color: var(--home-scorpion);
}

.home-btn--ghost-light {
  background: #fff;
}

.home-btn--square {
  border-radius: 0.75rem;
}

.home-btn--block {
  width: 100%;
  border-radius: 0.75rem;
}

/* Reveal */
.home-reveal {
  opacity: 0;
  transform: translateY(2.25rem);
  transition: opacity 0.75s cubic-bezier(0.22, 0.61, 0.36, 1), transform 0.75s cubic-bezier(0.22, 0.61, 0.36, 1);
  will-change: opacity, transform;
}

.home-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
  will-change: auto;
}

/* ========== Hero ========== */
.home-hero {
  position: relative;
  padding: 0;
  min-height: 56.25rem;
  background: #fff;
  overflow: hidden;
}

.home-hero__grid {
  position: absolute;
  left: 50%;
  top: calc(50% - 45rem - 16.25rem);
  width: 90rem;
  height: 90rem;
  transform: translateX(-50%);
  background-image:
    linear-gradient(rgba(179, 179, 179, 0.1) 1px, transparent 1px),
    linear-gradient(90deg, rgba(179, 179, 179, 0.1) 1px, transparent 1px);
  background-size: 10rem 10rem;
  background-position: left top;
  pointer-events: none;
}

.home-hero__glows {
  position: absolute;
  right: 5%;
  top: 8rem;
  width: min(46rem, 55%);
  height: 48rem;
  opacity: 0.2;
  pointer-events: none;
}

.home-hero__glow {
  position: absolute;
  width: 21rem;
  height: 21rem;
  border-radius: 50%;
  filter: blur(10rem);
}

.home-hero__glow--coral {
  left: 8rem;
  top: 2rem;
  background: #ff934f;
}

.home-hero__glow--lime {
  left: 0;
  top: 24rem;
  background: #f7ff58;
  filter: blur(11.5rem);
}

.home-hero__glow--sage {
  left: 6rem;
  top: 10rem;
  background: #a9cbb7;
  filter: blur(8.5rem);
}

.home-hero__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  gap: 2rem;
  align-items: start;
  width: 100%;
  max-width: var(--home-max);
  min-width: 0;
  min-height: 56.25rem;
  padding-top: 8.75rem;
  box-sizing: border-box;
}

.home-hero__copy {
  max-width: 36.375rem;
  min-width: 0;
  padding-top: 4.4rem;
}

.home-hero__title {
  margin: 0;
  max-width: 36.375rem;
  font-size: clamp(2.75rem, 4vw, 4rem);
  font-weight: 500;
  line-height: 1.21875;
  letter-spacing: -0.02em;
  color: var(--home-scorpion);
}

.home-hero__pills {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  margin: 2rem 0 0;
  padding: 0;
  list-style: none;
}

.home-hero__pills li {
  min-height: 2.9375rem;
  padding: 0.25rem 0.75rem;
  border-radius: 0.6875rem;
  background: var(--home-cream);
  color: var(--home-coral);
  font-size: clamp(1.25rem, 2.5vw, 2rem);
  font-weight: 500;
  letter-spacing: -0.02em;
  line-height: 1.22;
}

.home-hero__lead {
  margin: 2rem 0 0;
  max-width: 32.1875rem;
  font-size: clamp(1.125rem, 2vw, 1.5rem);
  line-height: 1.208;
  color: var(--home-scorpion);
}

.home-hero__cta {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 3rem;
}

.home-hero__showcase {
  position: relative;
  min-height: 43rem;
  min-width: 0;
  width: 100%;
  max-width: 100%;
}

.home-hero__panel {
  position: relative;
  margin-left: auto;
  width: min(100%, 38.125rem);
  min-height: 43.75rem;
  padding: 4.5rem 2.5rem 2rem;
  border-radius: 1.875rem;
  background: radial-gradient(50% 50% at 50% 50%, #ff934f 0%, #ffa268 100%);
  overflow: hidden;
}

.home-hero__panel::before {
  content: "";
  position: absolute;
  width: 18rem;
  height: 18rem;
  right: -2rem;
  top: -3rem;
  border-radius: 50%;
  background: #fff;
  filter: blur(11rem);
  pointer-events: none;
}

.home-hero__panel::after {
  content: "";
  position: absolute;
  width: 50.9375rem;
  height: 19.75rem;
  left: -16.75rem;
  top: 26.375rem;
  background: #fff;
  filter: blur(9.75rem);
  transform: rotate(-10.24deg);
  pointer-events: none;
}

.home-hero__divider {
  position: absolute;
  width: 31.5rem;
  left: 4.625rem;
  top: 4.875rem;
  border-top: 1px dashed #7a2f00;
  transform: rotate(90deg);
  transform-origin: left top;
  opacity: 0.9;
}

.home-hero__quote {
  position: absolute;
  right: 2.25rem;
  top: 5.625rem;
  margin: 0;
  max-width: 15.75rem;
  text-align: right;
  color: var(--home-coral-deep);
  z-index: 2;
}

.home-hero__quote p {
  margin: 0;
  font-size: 1.375rem;
  font-weight: 500;
  line-height: 1.27;
}

.home-hero__quote strong {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.17;
}

.home-hero__stack {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.8125rem;
  max-width: 15.9375rem;
  margin-left: 0.1rem;
  filter: blur(0.5px);
}

.home-hero__chip {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  min-height: 3.625rem;
  padding: 0.75rem 1rem;
  border: 1px solid rgba(226, 232, 240, 0.5);
  border-radius: 1rem;
  background: rgba(255, 255, 255, 0.98);
  backdrop-filter: blur(6px);
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.04),
    0 8px 24px rgba(15, 23, 42, 0.06);
  transition: transform 0.22s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.22s ease, border-color 0.22s ease;
}

.home-hero__chip:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 147, 79, 0.35);
  box-shadow:
    0 2px 4px rgba(15, 23, 42, 0.04),
    0 14px 32px rgba(15, 23, 42, 0.1);
}

.home-hero__chip-icon {
  flex: 0 0 2rem;
  width: 2rem;
  height: 2rem;
  border-radius: 0.5rem;
}

.home-hero__chip--blue .home-hero__chip-icon { background: rgba(0, 64, 224, 0.1); box-shadow: inset 0 0 0 9px #0040e0; }
.home-hero__chip--indigo .home-hero__chip-icon { background: rgba(46, 91, 255, 0.1); box-shadow: inset 0 0 0 9px #2e5bff; }
.home-hero__chip--red .home-hero__chip-icon { background: rgba(186, 26, 26, 0.1); box-shadow: inset 0 0 0 9px #ba1a1a; }
.home-hero__chip--violet .home-hero__chip-icon { background: rgba(47, 46, 190, 0.1); box-shadow: inset 0 0 0 9px #2f2ebe; }
.home-hero__chip--slate .home-hero__chip-icon { background: rgba(63, 70, 95, 0.1); box-shadow: inset 0 0 0 9px #3f465f; }

.home-hero__chip-label {
  font-family: Inter, system-ui, sans-serif;
  font-size: 0.875rem;
  line-height: 1.5;
  color: var(--home-ink);
}

.home-hero__mini {
  width: 100%;
  padding: 0.25rem;
  border-radius: 0.75rem;
  background: rgba(255, 255, 255, 0.2);
}

.home-hero__mini-card {
  padding: 1.25rem;
  border-radius: 0.625rem;
  background: #fff;
}

.home-hero__mini-title {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 500;
  color: #000;
}

.home-hero__mini-sub {
  margin: 0.75rem 0 0;
  font-size: 0.75rem;
  color: rgba(0, 0, 0, 0.5);
}

.home-hero__bar {
  display: block;
  width: 100%;
  height: 0.55rem;
  margin-top: 0.85rem;
  border-radius: 1.25rem;
  background: #e5e5e5;
}

.home-hero__bar--sm {
  width: 72%;
  margin-top: 0.4rem;
}

.home-hero__thumbs {
  display: flex;
  gap: 0.4rem;
  margin-top: 1rem;
}

.home-hero__thumbs i {
  width: 2rem;
  height: 2rem;
  border-radius: 0.375rem;
  background: #d2d2d2;
}

.home-hero__mini-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.25rem;
  margin-top: 0.25rem;
}

.home-hero__mini-actions span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.625rem;
  border-radius: 0.625rem;
  background: #fff;
  font-size: 0.75rem;
  color: rgba(0, 0, 0, 0.5);
}

.home-hero__person {
  position: absolute;
  right: -1.8rem;
  bottom: -0.6rem;
  width: 22rem;
  z-index: 2;
}

.home-hero__person-ring {
  position: absolute;
  width: 12rem;
  height: 12rem;
  right: 1.6rem;
  bottom: 1.6rem;
  border-radius: 50%;
  background: #f6ce1d;
  opacity: 0.9;
}

.home-hero__person img {
  position: relative;
  width: 100%;
  height: auto;
  object-fit: contain;
  filter: drop-shadow(0 10px 28px rgba(0, 0, 0, 0.14));
}

/* ========== Featured ========== */
.home-featured {
  --feat-ease: cubic-bezier(0.22, 1, 0.36, 1);
  padding: 0 0 2rem;
  overflow-x: clip;
  max-width: 100%;
}

/* Motion owns section reveal */
.home-featured.is-motion-on.home-reveal,
.home-featured.is-motion-on.home-reveal:not(.is-visible) {
  opacity: 1;
  transform: none;
  transition: none;
}

.home-featured__card {
  position: relative;
  padding: 5rem clamp(1.5rem, 4vw, 6.25rem);
  border-radius: 4.5rem;
  background: var(--home-sage);
  overflow: hidden;
}

.home-featured__head {
  position: relative;
  z-index: 1;
}

.home-featured__title {
  margin: 0;
  font-size: clamp(2rem, 3vw, 2.5rem);
  font-weight: 500;
  color: var(--home-scorpion);
}

.home-featured__desc {
  margin: 1.5rem auto 0;
  max-width: 41rem;
  font-size: 1.375rem;
  line-height: 1.27;
  color: var(--home-scorpion);
}

.home-featured.is-motion-on .home-featured__head .home-badge,
.home-featured.is-motion-on .home-featured__title,
.home-featured.is-motion-on .home-featured__desc {
  opacity: 0;
  transform: translate3d(0, 1.25rem, 0);
}

.home-featured.is-motion-on.is-in .home-featured__head .home-badge {
  animation: home-feat-fade-up 0.55s var(--feat-ease) both;
}

.home-featured.is-motion-on.is-in .home-featured__title {
  animation: home-feat-fade-up 0.65s var(--feat-ease) 0.08s both;
}

.home-featured.is-motion-on.is-in .home-featured__desc {
  animation: home-feat-fade-up 0.6s var(--feat-ease) 0.16s both;
}

.home-featured__marquee {
  --feat-par-x: 0px;
  --feat-par-y: 0px;
  position: relative;
  z-index: 1;
  margin-top: 3.75rem;
  overflow: hidden;
  mask-image: linear-gradient(90deg, transparent, #000 4rem, #000 calc(100% - 4rem), transparent);
  transform: translate3d(var(--feat-par-x), var(--feat-par-y), 0);
  will-change: transform;
}

/* Soft static glow behind center logos — <5% */
.home-featured__marquee::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 0;
  width: min(28rem, 70%);
  height: 8rem;
  pointer-events: none;
  background: radial-gradient(
    ellipse at center,
    rgba(255, 255, 255, 0.45) 0%,
    rgba(255, 255, 255, 0.12) 45%,
    transparent 72%
  );
  opacity: 0.45;
  transform: translate3d(-50%, -50%, 0);
}

.home-featured__track {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 2rem;
  width: max-content;
  animation: home-marquee 40s linear infinite;
  will-change: transform;
}

.home-featured.is-motion-on.is-in .home-featured__track {
  animation-play-state: running;
}

.home-featured__logo {
  --feat-logo-ease: cubic-bezier(0.22, 1, 0.36, 1);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 12.5rem;
  height: 5rem;
  border: 1px solid rgba(146, 166, 146, 0.28);
  border-radius: 1rem;
  background: #fff;
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.03),
    0 6px 16px rgba(15, 23, 42, 0.04);
  opacity: 0.75;
  overflow: hidden;
  transform: translate3d(0, 0, 0);
  transition:
    transform 0.25s var(--feat-logo-ease),
    box-shadow 0.25s ease,
    border-color 0.25s ease,
    opacity 0.25s ease;
  will-change: transform, opacity;
}

.home-featured.is-motion-on .home-featured__logo.is-prepare:not(.is-in) {
  opacity: 0;
  transform: translate3d(0, 20px, 0);
}

.home-featured.is-motion-on .home-featured__logo.is-in {
  opacity: 0.75;
  transform: translate3d(0, 0, 0);
  transition:
    opacity 0.5s var(--feat-ease),
    transform 0.5s var(--feat-ease),
    box-shadow 0.25s ease,
    border-color 0.25s ease;
  transition-delay: var(--feat-stagger, 0ms), var(--feat-stagger, 0ms), 0s, 0s;
}

/* Soft shine sweep — one card at a time */
.home-featured__logo::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(
    105deg,
    transparent 40%,
    rgba(255, 255, 255, 0.45) 50%,
    transparent 60%
  );
  opacity: 0;
  transform: translate3d(-120%, 0, 0);
}

.home-featured__logo.is-shine::after {
  animation: home-feat-shine 0.7s ease-out forwards;
}

.home-featured__logo img {
  display: block;
  position: relative;
  z-index: 1;
  width: auto;
  max-width: calc(100% - 2.25rem);
  max-height: 2.5rem;
  height: auto;
  object-fit: contain;
  transform: scale(1);
  transition: transform 0.25s var(--feat-logo-ease);
  will-change: transform;
}

.home-featured__logo span {
  position: relative;
  z-index: 1;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: rgba(94, 86, 90, 0.55);
}

@media (hover: hover) and (pointer: fine) {
  .home-featured.is-motion-on .home-featured__logo.is-in:hover {
    opacity: 1;
    border-color: rgba(146, 166, 146, 0.55);
    box-shadow:
      0 2px 4px rgba(15, 23, 42, 0.04),
      0 10px 22px rgba(15, 23, 42, 0.07);
    transform: translate3d(0, -4px, 0);
  }

  .home-featured.is-motion-on .home-featured__logo.is-in:hover img {
    transform: scale(1.03);
  }
}

@keyframes home-marquee {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-50%, 0, 0);
  }
}

@keyframes home-feat-fade-up {
  from {
    opacity: 0;
    transform: translate3d(0, 1.25rem, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes home-feat-shine {
  from {
    opacity: 0;
    transform: translate3d(-120%, 0, 0);
  }
  20% {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(120%, 0, 0);
  }
}

/* ========== Five Products ========== */
.home-products {
  padding: 5rem 0 4rem;
  overflow-x: clip;
  max-width: 100%;
}

.home-products.home-reveal:not(.is-visible) {
  transform: translateY(1.875rem);
}

.home-products__head {
  margin-bottom: 4rem;
}

.home-products__stage {
  position: relative;
  max-width: 77.5rem;
  margin: 0 auto;
  min-height: 37.5rem;
  padding: 4rem 2rem 2.5rem;
  border: 1px solid #e7e7e7;
  border-radius: 1.5rem;
  background: var(--home-sage);
}

.home-products__tabs {
  position: absolute;
  left: 50%;
  top: -1.6rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem 1.25rem;
  width: min(51rem, calc(100% - 2rem));
  padding: 0.25rem;
  border-radius: 1.75rem;
  background: #fff;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
  transform: translateX(-50%);
  z-index: 2;
}

.home-products__tab-pill {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  border-radius: 2.5rem;
  background: var(--home-coral);
  pointer-events: none;
  transform: translate3d(0, 0, 0);
  transition:
    transform 0.3s ease-in-out,
    width 0.3s ease-in-out,
    height 0.3s ease-in-out;
  will-change: transform, width, height;
}

.home-products__tab {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 2.45rem;
  padding: 0.625rem 1.25rem;
  border: 0;
  border-radius: 2.5rem;
  background: transparent;
  color: #000;
  font-size: 1rem;
  line-height: 1.2;
  white-space: nowrap;
  cursor: pointer;
  transition:
    color 0.2s ease,
    background-color 0.2s ease,
    transform 0.18s ease,
    box-shadow 0.18s ease,
    filter 0.18s ease;
}

.home-products__tab:hover:not(.is-active) {
  transform: translateY(-2px);
  filter: brightness(1.06);
  box-shadow: 0 6px 14px rgba(15, 23, 42, 0.08);
}

.home-products__tab.is-active {
  background: var(--home-coral);
  color: #fff;
  animation: home-products-tab-pop 0.18s ease-out;
}

.home-products__tabs:has(.home-products__tab-pill) .home-products__tab.is-active {
  background: transparent;
}

.home-products__soon {
  position: absolute;
  right: -0.5rem;
  top: -1.9rem;
  padding: 0.35rem 0.75rem;
  border-radius: 2.5rem;
  background: var(--home-cream);
  color: var(--home-coral);
  font-size: 0.75rem;
  line-height: 1;
  opacity: 0;
  animation: home-products-soon-in 0.6s ease 0.35s both;
}

.home-products__panel {
  display: none;
  text-align: center;
}

.home-products__panel.is-active {
  display: block;
}

.home-products__panel.is-leaving {
  opacity: 0;
  transform: translateY(0.625rem);
  transition:
    opacity 0.35s cubic-bezier(0.22, 0.61, 0.36, 1),
    transform 0.35s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.home-products__panel.is-entering {
  opacity: 0;
  transform: translateY(0.625rem);
}

.home-products__panel.is-entering.is-shown {
  opacity: 1;
  transform: translateY(0);
  transition:
    opacity 0.45s cubic-bezier(0.22, 0.61, 0.36, 1),
    transform 0.45s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.home-products__panel.is-entering.is-shown .home-products__tagline {
  animation: home-products-rise 0.45s cubic-bezier(0.22, 0.61, 0.36, 1) both;
}

.home-products__panel.is-entering.is-shown .home-products__preview {
  animation: home-products-shot 0.5s cubic-bezier(0.22, 0.61, 0.36, 1) 0.06s both;
}

.home-products__panel.is-entering.is-shown .home-products__actions {
  animation: home-products-rise 0.45s cubic-bezier(0.22, 0.61, 0.36, 1) 0.18s both;
}

.home-products__tagline {
  margin: 1rem 0 1.5rem;
  font-size: clamp(1.25rem, 2vw, 1.875rem);
  font-style: italic;
  font-weight: 500;
  color: #575757;
}

.home-products__preview {
  max-width: 70rem;
  margin: 0 auto;
}

.home-products__frame {
  position: relative;
  overflow: hidden;
  border: 0px solid var(--home-sage);
  border-radius: 1.25rem 1.25rem 0 0;
  background: #fff;
  min-height: 18rem;
  transition: box-shadow 0.3s ease;
}

.home-products__shot {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  object-position: top left;
  transform: translateZ(0);
  transition: transform 0.3s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.home-products__frame:hover {
  box-shadow:
    0 4px 10px rgba(15, 23, 42, 0.04),
    0 18px 36px rgba(15, 23, 42, 0.1);
}

.home-products__frame:hover .home-products__shot {
  transform: scale(1.01);
}

.home-products__chrome {
  display: flex;
  gap: 0.35rem;
  padding: 0.75rem 1rem;
  border-bottom: 1px solid #eee;
}

.home-products__chrome i {
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 50%;
  background: #ddd;
}

.home-products__screen {
  min-height: 16rem;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #fff 100%),
    linear-gradient(135deg, #f7f6ed 0%, #efe8d8 45%, #e7efe7 100%);
}

.home-products__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1rem;
  margin-top: 1.5rem;
}

.home-products__actions .home-btn {
  min-width: 14rem;
  min-height: 3rem;
}

/* Mobile product selector — hidden on desktop */
.home-products__mnav {
  display: none;
}

.home-products__mnav-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 1rem;
}

.home-products__mnav-meta {
  flex: 1 1 auto;
  min-width: 0;
  text-align: center;
}

.home-products__mnav-title {
  margin: 0;
  font-size: clamp(1.05rem, 4.2vw, 1.25rem);
  font-weight: 600;
  line-height: 1.25;
  color: #1f1f1f;
  letter-spacing: -0.01em;
}

.home-products__mnav-soon {
  display: none;
  margin-top: 0.35rem;
  padding: 0.2rem 0.55rem;
  border-radius: 999px;
  background: var(--home-cream);
  color: var(--home-coral);
  font-size: 0.6875rem;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.home-products__mnav-soon.is-on {
  display: inline-block;
}

.home-products__mnav-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  margin: 0;
  padding: 0;
  border: 1px solid #e4e4e4;
  border-radius: 999px;
  background: #fff;
  color: var(--home-scorpion);
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.04),
    0 6px 16px rgba(15, 23, 42, 0.06);
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    box-shadow 0.2s ease,
    opacity 0.2s ease;
}

.home-products__mnav-btn svg {
  display: block;
}

.home-products__mnav-btn:hover,
.home-products__mnav-btn:focus-visible {
  border-color: var(--home-coral);
  color: var(--home-coral-deep);
  outline: none;
}

.home-products__mnav-btn:focus-visible {
  outline: 2px solid var(--home-coral);
  outline-offset: 2px;
}

.home-products__mnav-btn:active:not(:disabled) {
  background: var(--home-coral);
  border-color: var(--home-coral);
  color: #fff;
}

.home-products__mnav-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
  box-shadow: none;
}

.home-products__dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin: 0 0 1.25rem;
}

.home-products__dot {
  width: 0.5rem;
  height: 0.5rem;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: #cfcfcf;
  cursor: pointer;
  transition:
    background-color 0.25s ease,
    transform 0.25s ease,
    width 0.25s ease;
}

.home-products__dot.is-active {
  width: 1.25rem;
  background: var(--home-coral);
}

.home-products__dot:focus-visible {
  outline: 2px solid var(--home-coral);
  outline-offset: 3px;
}

@keyframes home-products-tab-pop {
  from {
    transform: scale(0.98);
  }
  to {
    transform: scale(1);
  }
}

@keyframes home-products-soon-in {
  from {
    opacity: 0;
    transform: translateY(0.35rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes home-products-rise {
  from {
    opacity: 0;
    transform: translateY(0.625rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes home-products-shot {
  from {
    opacity: 0;
    transform: translateY(1.25rem) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/* ========== Teams ========== */
.home-teams {
  padding: 6.25rem 0 8rem;
  background: #fff;
  overflow-x: clip;
  max-width: 100%;
}

.home-teams__copy {
  box-sizing: border-box;
  padding: 2.5rem 2.5rem 2.5rem 0;
  border-radius: 0.875rem;
  background: #fff;
}

.home-teams__title {
  margin: 0;
  max-width: 29.75rem;
  font-size: clamp(2rem, 3.2vw, 2.75rem);
  font-weight: 500;
  line-height: 1.159;
  color: var(--home-scorpion);
}

.home-teams__list {
  position: relative;
  display: flex;
  flex-direction: column;
  margin: 2rem 0 0;
  padding: 0;
  list-style: none;
}

.home-teams__indicator {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  width: 3px;
  height: 3.8125rem;
  border-radius: 2px;
  background: var(--home-coral);
  pointer-events: none;
  transform: translate3d(0, 0, 0);
  transition: transform 250ms cubic-bezier(0.22, 1, 0.36, 1), height 250ms cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}

.home-teams__item {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.625rem;
  width: 100%;
  min-height: 3.8125rem;
  padding: 1rem 0.75rem;
  border: 0;
  border-bottom: 1px solid var(--home-sage);
  background: transparent;
  color: rgba(0, 0, 0, 0.3);
  font-size: clamp(1.125rem, 2vw, 1.5rem);
  font-weight: 400;
  line-height: 1.208;
  text-align: left;
  cursor: pointer;
  transition: color 0.25s ease;
}

.home-teams__item span {
  flex: 1 1 auto;
}

.home-teams__item svg {
  flex: 0 0 1.5rem;
  opacity: 0;
  transition: opacity 0.25s ease, transform 0.25s ease;
}

.home-teams__item.is-active,
.home-teams__item:hover,
.home-teams__item:focus-visible {
  color: #000;
}

.home-teams__item.is-active svg {
  opacity: 1;
  transform: translateX(2px);
}

.home-teams__item:hover svg,
.home-teams__item:focus-visible svg {
  opacity: 1;
}

.home-teams__visual {
  position: relative;
  isolation: isolate;
  box-sizing: border-box;
  min-height: 36.25rem;
  padding: 2.5rem;
  border: 1px solid var(--home-sage);
  border-radius: 0.875rem;
  background: #f4f4f4;
  overflow: visible;
}

.home-teams__media {
  position: absolute;
  inset: 0;
  overflow: hidden;
  border-radius: inherit;
  z-index: 0;
}

.home-teams__media img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: 0;
  transform: translate3d(0, 0, 0) scale(1);
  filter: blur(0);
  pointer-events: none;
  will-change: transform, opacity;
  backface-visibility: hidden;
}

.home-teams__media img.is-active {
  opacity: 1;
  z-index: 1;
}

.home-teams__media img.is-idle {
  opacity: 0;
  z-index: 0;
}

.home-teams__media img.is-leaving {
  z-index: 2;
  opacity: 0;
  transform: translate3d(0, 0, 0) scale(0.98);
  filter: blur(4px);
  transition:
    opacity 250ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 250ms cubic-bezier(0.22, 1, 0.36, 1),
    filter 250ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-teams__media img.is-active.is-leaving {
  opacity: 0;
}

.home-teams__media img.is-entering {
  z-index: 3;
  opacity: 0;
  transform: translate3d(24px, 0, 0) scale(0.98);
  filter: blur(4px);
}

.home-teams__media img.is-entering.is-shown {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  filter: blur(0);
  transition:
    opacity 500ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 500ms cubic-bezier(0.22, 1, 0.36, 1),
    filter 500ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-teams__card {
  position: absolute;
  left: 2.5rem;
  right: 2.5rem;
  bottom: -2.625rem;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 1.25rem 1.5rem;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 1px 12.1px rgba(0, 0, 0, 0.08);
  will-change: transform, opacity;
}

.home-teams__card-text {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

.home-teams__card-title,
.home-teams__card-desc {
  margin: 0;
  font-size: clamp(1.05rem, 1.6vw, 1.375rem);
  font-weight: 400;
  line-height: 1.32;
  color: var(--home-scorpion);
  will-change: transform, opacity;
}

.home-teams__card-title {
  font-weight: 500;
}

.home-teams__card .home-btn {
  width: 100%;
  min-height: 3rem;
  border-radius: 0.75rem;
  box-shadow: 0 2px 105.8px rgba(0, 0, 0, 0.08);
  will-change: transform, opacity;
}

.home-teams__card.is-swap-prep {
  opacity: 0;
  transform: translate3d(0, 20px, 0);
  transition: none;
}

.home-teams__card.is-swap-prep .home-teams__card-title,
.home-teams__card.is-swap-prep .home-teams__card-desc,
.home-teams__card.is-swap-prep .home-btn {
  opacity: 0;
  transition: none;
}

.home-teams__card.is-swap-prep .home-teams__card-title {
  transform: translate3d(0, 10px, 0);
}

.home-teams__card.is-swap-prep .home-teams__card-desc {
  transform: translate3d(0, 8px, 0);
}

.home-teams__card.is-swap-prep .home-btn {
  transform: translate3d(0, 10px, 0) scale(0.97);
}

.home-teams__card.is-swap-in {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition:
    opacity 350ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 350ms cubic-bezier(0.22, 1, 0.36, 1);
}

.home-teams__card.is-swap-in .home-teams__card-title,
.home-teams__card.is-swap-in .home-teams__card-desc,
.home-teams__card.is-swap-in .home-btn {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
}

.home-teams__card.is-swap-in .home-teams__card-title {
  transition:
    opacity 350ms cubic-bezier(0.22, 1, 0.36, 1) 100ms,
    transform 350ms cubic-bezier(0.22, 1, 0.36, 1) 100ms;
}

.home-teams__card.is-swap-in .home-teams__card-desc {
  transition:
    opacity 350ms cubic-bezier(0.22, 1, 0.36, 1) 180ms,
    transform 350ms cubic-bezier(0.22, 1, 0.36, 1) 180ms;
}

.home-teams__card.is-swap-in .home-btn {
  transition:
    opacity 250ms cubic-bezier(0.22, 1, 0.36, 1) 260ms,
    transform 250ms cubic-bezier(0.22, 1, 0.36, 1) 260ms;
}

/* ========== Workflow — OriginUX sticky + GSAP track scrub ========== */
.home-workflow {
  --wf-card-w: 28rem;
  --wf-gap: 3.75rem;
  --wf-card-h: 28.615rem;
  --wf-progress-gap: clamp(1.5rem, 2vw, 2rem); /* 24–32px cards → progress */
  --wf-section-end: clamp(2rem, 3vw, 2.75rem);
  --wf-sticky-top: var(--site-header-height, 4.75rem);
  padding: clamp(3rem, 5vw, 4.5rem) 0 0;
  background: #fff;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  /* No transform on section — sticky + ST must stay viewport-correct */
  transform: none;
  will-change: auto;
}

.home-workflow.home-reveal,
.home-workflow.home-reveal.is-visible {
  transform: none;
  transition: opacity 0.7s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.home-workflow.home-reveal:not(.is-visible) {
  opacity: 0;
  transform: none;
}

.home-workflow__head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: clamp(1.25rem, 3vw, 2.5rem) clamp(2rem, 12vw, 18.375rem);
  margin-bottom: clamp(2rem, 3.5vw, 3rem);
}

.home-workflow__title {
  max-width: 29.75rem;
  font-size: clamp(2rem, 3.5vw, 2.75rem);
  font-weight: 500;
  line-height: 1.227;
  color: var(--home-scorpion);
}

.home-workflow__intro {
  margin: 0;
  max-width: 29.375rem;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.4;
  color: #000;
}

/* Tall scroll runway (height set in JS = sticky content H + distance). */
.home-workflow__scroll {
  position: relative;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin-bottom: var(--wf-section-end);
}

/*
 * Sticky panel: cards + progress only (heading stays above).
 * Default (<1200): compact, top of sticky under header.
 * Desktop (≥1200): fill remaining viewport + flex-center the stack.
 */
.home-workflow__sticky {
  position: sticky;
  top: var(--wf-sticky-top);
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

.home-workflow__sticky > .container {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  width: 100%;
  max-width: 100%;
  min-width: 0; /* allow shrink — track is max-content */
  padding-top: 0;
  padding-bottom: 0;
}

.home-workflow__viewport {
  position: relative;
  width: 100%;
  max-width: 100%;
  /* Critical: flex/grid min-width:auto would grow to track max-content and blow page width */
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow: hidden; /* always — never page X scroll from track */
  /* Height = card row only (cards share fixed design height) */
  height: var(--wf-card-h);
}

.home-workflow__track {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start; /* top baseline — equal tops, not stretch/center */
  justify-content: flex-start;
  gap: var(--wf-gap);
  width: max-content;
  max-width: none;
  height: var(--wf-card-h);
  margin: 0;
  padding: 0;
  transform: translate3d(0, 0, 0);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  will-change: transform;
}

/* Invisible leading space — OriginUX mid-start without translateX hacks */
.home-workflow__spacer {
  flex: 0 0 auto;
  box-sizing: border-box;
  width: var(--wf-spacer, 0px);
  min-width: var(--wf-spacer, 0px);
  max-width: var(--wf-spacer, 0px);
  height: 1px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  pointer-events: none;
  visibility: hidden;
  overflow: hidden;
}

/* Cards sit directly on the track (no Swiper slide wrappers) */
.home-workflow__card {
  --wf-ease: cubic-bezier(0.22, 1, 0.36, 1);
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  flex: 0 0 var(--wf-card-w);
  width: var(--wf-card-w);
  min-width: var(--wf-card-w);
  max-width: var(--wf-card-w);
  display: flex;
  flex-direction: column;
  align-self: flex-start;
  overflow: hidden;
  height: var(--wf-card-h);
  margin: 0;
  border: 1px solid #eee;
  border-radius: 1rem;
  background: #fff;
  opacity: 1;
  transform: translateZ(0);
  box-shadow:
    0 2px 4px rgba(15, 23, 42, 0.03),
    0 10px 24px rgba(15, 23, 42, 0.06);
}

.home-workflow__card-copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex: none;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.6875rem;
  max-width: 33.75rem;
  padding: 2.05rem 2rem 0.5rem;
}

.home-workflow__card-icon {
  display: block;
  flex: none;
  width: 1.5rem;
  height: 1.5rem;
}

.home-workflow__card h3 {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--home-scorpion);
}

.home-workflow__card p {
  margin: 0;
  max-width: 17.75rem;
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1.6;
  color: rgba(94, 86, 90, 0.7);
}

.home-workflow__card-art {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  width: 100%;
  overflow: hidden;
  pointer-events: none;
  background: #fff;
}

.home-workflow__card-shot {
  --wf-shot-x: -50%;
  --wf-shot-y: 0px;
  --wf-shot-s: 1;
  --wf-par-x: 0px;
  --wf-par-y: 0px;
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  opacity: 1;
  transform:
    translate3d(calc(var(--wf-shot-x) + var(--wf-par-x)), calc(var(--wf-shot-y) + var(--wf-par-y)), 0)
    scale(var(--wf-shot-s));
  object-fit: contain;
  object-position: center bottom;
  border-radius: 0;
  box-shadow: none;
}

.home-workflow__card--site .home-workflow__card-art {
  background: #fff;
}

.home-workflow__card--site .home-workflow__card-art::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  height: 28%;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.55) 45%, #fff 100%);
}

.home-workflow__card--site .home-workflow__card-shot {
  --wf-shot-x: -50%;
  top: 0;
  bottom: auto;
  left: 50%;
  width: 92%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
  border-radius: 0.7rem;
  box-shadow:
    0 2px 4px rgba(15, 23, 42, 0.04),
    0 12px 28px rgba(15, 23, 42, 0.1),
    0 24px 40px rgba(15, 23, 42, 0.06);
}

.home-workflow__card--strategy .home-workflow__card-art {
  background: #fff;
}

.home-workflow__card--strategy .home-workflow__card-shot {
  --wf-shot-x: 0%;
  top: -6%;
  left: -4%;
  width: 112%;
  height: 128%;
  object-fit: cover;
  object-position: 35% 18%;
}

.home-workflow__card--writer .home-workflow__card-art,
.home-workflow__card--landing .home-workflow__card-art,
.home-workflow__card--social .home-workflow__card-art {
  background: #fff;
}

.home-workflow__card--writer .home-workflow__card-shot,
.home-workflow__card--landing .home-workflow__card-shot,
.home-workflow__card--social .home-workflow__card-shot {
  --wf-shot-x: -50%;
  width: 100%;
  object-position: center bottom;
}

.home-workflow__controls {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  margin-top: var(--wf-progress-gap);
}

@media (min-width: 992px) {
  .home-workflow__controls {
    width: 80%;
  }

  .home-workflow__sticky > .container {
    justify-content: center;
    align-items: center;
  }
}

.home-workflow__progress {
  position: relative;
  flex: 1 1 auto;
  min-width: 0;
  height: 0.625rem;
  margin: 0;
  border-radius: 1.25rem;
  background: #dedede;
  overflow: hidden;
}

.home-workflow__progress-bar {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background: var(--home-coral);
  transform: scaleX(var(--wf-progress, 0.12));
  transform-origin: left center;
  transition: none;
  will-change: transform;
}

/* Desktop (≥992): hide mobile nav — progress stays full width */
.home-workflow__nav {
  display: none;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 2.75rem;
  height: 2.75rem;
  margin: 0;
  padding: 0;
  border: 1px solid #e4e4e4;
  border-radius: 999px;
  background: #fff;
  color: var(--home-scorpion);
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.04),
    0 6px 16px rgba(15, 23, 42, 0.06);
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    box-shadow 0.2s ease,
    opacity 0.2s ease;
}

.home-workflow__nav svg {
  display: block;
}

.home-workflow__nav:hover,
.home-workflow__nav:focus-visible {
  border-color: var(--home-coral);
  color: var(--home-coral-deep);
  background: #fff;
  box-shadow:
    0 2px 4px rgba(255, 147, 79, 0.12),
    0 8px 18px rgba(15, 23, 42, 0.08);
  outline: none;
}

.home-workflow__nav:active:not(:disabled) {
  background: var(--home-coral);
  border-color: var(--home-coral);
  color: #fff;
  box-shadow: 0 2px 6px rgba(255, 147, 79, 0.25);
}

.home-workflow__nav:focus-visible {
  outline: 2px solid var(--home-coral);
  outline-offset: 2px;
}

.home-workflow__nav:disabled,
.home-workflow__nav[aria-disabled='true'] {
  opacity: 0.4;
  cursor: not-allowed;
  border-color: #e4e4e4;
  color: var(--home-scorpion);
  box-shadow: none;
  pointer-events: none;
}

@media (max-width: 1199.98px) {
  .home-workflow {
    --wf-card-w: 24rem;
    --wf-gap: 2.5rem;
  }
}

/*
 * Desktop ≥1200: vertically center cards+progress in pinned viewport.
 * Equal space above/below via flex — no padding hacks.
 * Heading remains outside (.home-workflow__head above scroll runway).
 */
@media (min-width: 1200px) {
  .home-workflow__sticky {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: stretch;
    min-height: calc(100vh - var(--wf-sticky-top));
    min-height: calc(100dvh - var(--wf-sticky-top));
  }

  .home-workflow__sticky > .container {
    flex: 0 0 auto;
    width: 100%;
  }
}

/* Large monitors: keep card size stable — centering still via flex min-height */
@media (min-width: 1600px) {
  .home-workflow {
    --wf-card-w: 28rem;
    --wf-card-h: 28.615rem;
    --wf-gap: 3.75rem;
    padding-top: 4rem;
  }

  .home-workflow__head {
    margin-bottom: 2.5rem;
  }
}

/* Mobile + tablet (≤991): native swipe + prev/next — desktop GSAP untouched (≥992) */
@media (max-width: 991.98px) {
  .home-workflow {
    --wf-progress-gap: 1.5rem;
    --wf-section-end: clamp(2.5rem, 6vw, 3.5rem);
    padding-bottom: 0;
  }

  .home-workflow__scroll {
    height: auto !important;
  }

  .home-workflow__sticky {
    position: relative;
    top: auto;
    display: block;
    min-height: 0;
    justify-content: flex-start;
  }

  .home-workflow__viewport {
    height: var(--wf-card-h);
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
  }

  .home-workflow__track {
    height: var(--wf-card-h);
    transform: none !important;
    will-change: auto;
  }

  .home-workflow__spacer {
    display: none;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
  }

  .home-workflow__card {
    scroll-snap-align: start;
  }

  .home-workflow__nav {
    display: inline-flex;
  }

  .home-workflow__controls {
    margin-top: var(--wf-progress-gap);
  }

  .home-workflow__head {
    align-items: flex-start;
    margin-bottom: 2.5rem;
  }
}

@media (max-width: 767.98px) {
  .home-workflow {
    --wf-card-w: min(18rem, 85vw);
    --wf-card-h: 24rem;
    --wf-gap: 1.5rem;
  }

  .home-workflow__card {
    min-width: 15rem;
    height: var(--wf-card-h);
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-workflow__track {
    transform: none !important;
  }

  .home-workflow__scroll {
    height: auto !important;
  }

  .home-workflow__sticky {
    position: relative;
    top: auto;
    display: block;
    min-height: 0;
  }

  .home-workflow__spacer {
    display: none;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
  }
}

/* Kill smooth-scroll while desktop h-scroll active (1:1 scrub) */
html.wf-hscroll {
  scroll-behavior: auto;
}

/* ========== Showcase — Figma 2351:5543 ========== */
.home-showcase {
  padding: clamp(3.5rem, 7vw, 6.25rem) 0;
  background: #fff;
  overflow-x: clip;
  max-width: 100%;
}

/* Motion owns reveal — avoid double section fade */
.home-showcase.is-motion-on.home-reveal,
.home-showcase.is-motion-on.home-reveal:not(.is-visible) {
  opacity: 1;
  transform: none;
  transition: none;
}

.home-showcase.home-reveal {
  transition:
    opacity 0.7s cubic-bezier(0.22, 0.61, 0.36, 1),
    transform 0.7s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.home-showcase.home-reveal:not(.is-visible) {
  transform: translateY(2.5rem);
}

.home-showcase__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 3.75rem;
}

.home-showcase__head .home-section-title {
  font-size: clamp(2rem, 3.5vw, 2.75rem);
  line-height: 1.15;
}

.home-showcase__lead {
  margin: 0;
  max-width: 53rem;
  font-size: clamp(1.125rem, 2vw, 1.5rem);
  font-weight: 400;
  line-height: 1.2;
  color: var(--home-scorpion);
  text-align: center;
}

/* Section head sequence: badge → title → lead (once) */
.home-showcase.is-motion-on .home-showcase__head .home-badge,
.home-showcase.is-motion-on .home-showcase__head .home-section-title,
.home-showcase.is-motion-on .home-showcase__lead {
  opacity: 0;
  transform: translate3d(0, 1.5rem, 0);
}

.home-showcase.is-motion-on.is-head-in .home-showcase__head .home-badge {
  animation: home-sc-fade-up 0.55s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.home-showcase.is-motion-on.is-head-in .home-showcase__head .home-section-title {
  animation: home-sc-fade-up 0.65s cubic-bezier(0.22, 1, 0.36, 1) 0.1s both;
}

.home-showcase.is-motion-on.is-head-in .home-showcase__lead {
  animation: home-sc-fade-up 0.65s cubic-bezier(0.22, 1, 0.36, 1) 0.22s both;
}

.home-showcase__stack {
  /* 24–40px breathing room between sticky cards */
  --showcase-stack-gap: clamp(1.5rem, 2.2vw, 2.5rem);
  --showcase-sticky-gap: 1.75rem; /* ~28px below navbar */
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  isolation: isolate;
}

.home-showcase__block {
  --sc-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --sc-par-x: 0px;
  --sc-par-y: 0px;
  --sc-idle-y: 0px;
  position: sticky;
  top: var(
    --showcase-sticky-top,
    calc(var(--site-header-height, 4.75rem) + var(--showcase-sticky-gap, 1.75rem))
  );
  z-index: calc(1 + var(--stack-i, 0));
  display: block;
  width: 100%;
  height: auto;
  min-height: 28.125rem;
  margin: 0 0 var(--showcase-stack-gap);
  padding: 0;
  border: 1px solid rgba(146, 166, 146, 0.55);
  border-radius: 1.875rem;
  background-color: var(--home-sage);
  background-image: none;
  overflow: hidden;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.55),
    0 1px 2px rgba(15, 23, 42, 0.03),
    0 10px 28px rgba(15, 23, 42, 0.07);
  transform: translate3d(0, 0, 0) scale(1);
  transform-origin: center top;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  transition:
    transform 0.35s var(--sc-ease),
    opacity 0.35s var(--sc-ease),
    box-shadow 0.35s var(--sc-ease),
    border-color 0.28s var(--sc-ease),
    background-color 0.28s var(--sc-ease);
  will-change: transform, opacity;
}

/* Screenshot layer — transform/opacity only */
.home-showcase__block::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: var(--showcase-bg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  opacity: 1;
  transform: translate3d(var(--sc-par-x), calc(var(--sc-par-y) + var(--sc-idle-y)), 0) scale(1);
  transform-origin: center center;
  transition:
    opacity 0.6s var(--sc-ease),
    transform 0.6s var(--sc-ease),
    filter 0.3s var(--sc-ease);
  will-change: transform, opacity;
  pointer-events: none;
}

.home-showcase.is-motion-on .home-showcase__block:not(.is-bg-loaded)::before,
.home-showcase.is-motion-on .home-showcase__block.is-prepare:not(.is-in)::before {
  opacity: 0;
  transform: translate3d(20px, 0, 0) scale(0.98);
  transition: none;
}

.home-showcase.is-motion-on .home-showcase__block.is-bg-loaded.is-in::before {
  opacity: 1;
  transform: translate3d(var(--sc-par-x), calc(var(--sc-par-y) + var(--sc-idle-y)), 0) scale(1);
  transition:
    opacity 0.6s var(--sc-ease) 0.4s,
    transform 0.6s var(--sc-ease) 0.4s,
    filter 0.3s var(--sc-ease);
}

.home-showcase.is-motion-on .home-showcase__block.is-in.is-idle-lift::before {
  --sc-idle-y: -2px;
}

/* Glass sheen — one pass on enter (1.2s) */
.home-showcase__block::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 4;
  pointer-events: none;
  background: linear-gradient(
    105deg,
    transparent 35%,
    rgba(255, 255, 255, 0.18) 50%,
    transparent 65%
  );
  opacity: 0;
  transform: translate3d(-120%, 0, 0);
  will-change: transform, opacity;
}

.home-showcase.is-motion-on .home-showcase__block.is-in.is-sheen::after {
  animation: home-sc-sheen 1.2s ease-out forwards;
}

.home-showcase__block:last-child {
  margin-bottom: 0;
}

.home-showcase.is-motion-on .home-showcase__block.is-prepare:not(.is-in) {
  opacity: 0;
  transform: translate3d(0, 40px, 0) scale(1);
}

.home-showcase.is-motion-on .home-showcase__block.is-in {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  transition:
    opacity 0.7s var(--sc-ease),
    transform 0.7s var(--sc-ease),
    box-shadow 0.35s var(--sc-ease),
    border-color 0.28s var(--sc-ease),
    background-color 0.28s var(--sc-ease);
}

/* Passed cards sit behind active — soft stack depth */
.home-showcase__block.is-passed {
  opacity: 0.96;
  transform: translate3d(0, 0, 0) scale(0.985);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.4),
    0 1px 2px rgba(15, 23, 42, 0.02),
    0 6px 18px rgba(15, 23, 42, 0.045);
}

.home-showcase.is-motion-on .home-showcase__block.is-in.is-passed {
  opacity: 0.96;
  transform: translate3d(0, 0, 0) scale(0.985);
}

.home-showcase__block.is-focus {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.6),
    0 2px 4px rgba(15, 23, 42, 0.035),
    0 14px 36px rgba(15, 23, 42, 0.09);
}

.home-showcase.is-motion-on .home-showcase__block.is-in.is-focus {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.6),
    0 2px 4px rgba(15, 23, 42, 0.035),
    0 14px 36px rgba(15, 23, 42, 0.09);
}

@media (hover: hover) and (pointer: fine) {
  .home-showcase.is-motion-on .home-showcase__block.is-in:not(.is-passed):hover {
    border-color: rgba(146, 166, 146, 0.85);
    background-color: #edf3ed;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, 0.7),
      0 2px 6px rgba(15, 23, 42, 0.04),
      0 18px 42px rgba(15, 23, 42, 0.1);
    transform: translate3d(0, -6px, 0) scale(1);
  }

  .home-showcase.is-motion-on .home-showcase__block.is-in.is-passed:hover {
    transform: translate3d(0, -4px, 0) scale(0.985);
  }

  .home-showcase.is-motion-on .home-showcase__block.is-in:not(.is-passed):hover::before {
    transform: translate3d(var(--sc-par-x), calc(var(--sc-par-y) + var(--sc-idle-y)), 0) scale(1.02);
    filter: drop-shadow(0 10px 24px rgba(15, 23, 42, 0.1));
  }

  .home-showcase__cta:hover,
  .home-showcase__cta:focus-visible {
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(127, 49, 0, 0.22);
  }

  .home-showcase__cta:hover .home-showcase__cta-arrow,
  .home-showcase__cta:focus-visible .home-showcase__cta-arrow {
    transform: translateX(6px);
  }
}

.home-showcase__panel {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: stretch;
  width: 100%;
  height: auto;
  min-height: 28.125rem;
  background: linear-gradient(
    90deg,
    rgba(231, 239, 231, 0.88) 0%,
    rgba(231, 239, 231, 0.55) 38%,
    rgba(231, 239, 231, 0.12) 52%,
    rgba(231, 239, 231, 0) 62%
  );
  overflow: hidden;
}

/* Diagonal soft light — one pass every ~13s */
.home-showcase__panel::after {
  content: '';
  position: absolute;
  inset: -10% -20%;
  z-index: 3;
  pointer-events: none;
  background: linear-gradient(
    115deg,
    transparent 42%,
    rgba(255, 255, 255, 0.28) 50%,
    transparent 58%
  );
  opacity: 0;
  transform: translate3d(-40%, 0, 0);
  will-change: transform, opacity;
}

.home-showcase.is-motion-on .home-showcase__block.is-in .home-showcase__panel::after {
  animation: home-sc-diag-pass 13.5s ease-in-out infinite;
}

.home-showcase__block--soon .home-showcase__panel::after {
  display: none;
}

.home-showcase__copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
  width: 100%;
  max-width: 33rem;
  min-height: 100%;
  padding: 2.5rem clamp(1.25rem, 3vw, 1.5rem) 2.5rem clamp(1.5rem, 4vw, 3.75rem);
}

.home-showcase__product {
  margin: 0;
  font-size: clamp(2.25rem, 4.5vw, 3.75rem);
  font-weight: 500;
  line-height: 1.22;
  color: var(--home-coral);
}

.home-showcase.is-motion-on .home-showcase__block.is-in .home-showcase__product {
  animation: home-sc-fade-up 0.45s var(--sc-ease) both;
}

.home-showcase__block--ranking-hub .home-showcase__product {
  background: none;
  -webkit-background-clip: border-box;
  background-clip: border-box;
  color: var(--home-coral);
}

.home-showcase__text {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin-top: 1.5rem;
  max-width: 29.3rem;
}

.home-showcase__subtitle {
  margin: 0;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: #000;
}

.home-showcase.is-motion-on .home-showcase__block.is-in .home-showcase__subtitle {
  animation: home-sc-fade-up 0.45s var(--sc-ease) 0.1s both;
}

.home-showcase__body {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.4;
  color: var(--home-scorpion);
}

.home-showcase.is-motion-on .home-showcase__block.is-in .home-showcase__body {
  animation: home-sc-fade-up 0.45s var(--sc-ease) 0.2s both;
}

.home-showcase__cta {
  margin-top: auto;
  padding: 0.75rem 1.375rem;
  min-height: 3rem;
  border-radius: 0.75rem;
  font-size: 1.125rem;
  font-weight: 500;
  transition:
    transform 0.25s var(--sc-ease),
    box-shadow 0.25s var(--sc-ease);
  will-change: transform;
}

.home-showcase.is-motion-on .home-showcase__block.is-in .home-showcase__cta {
  animation: home-sc-fade-up 0.45s var(--sc-ease) 0.3s both;
}

.home-showcase__cta-arrow {
  display: inline-block;
  transition: transform 0.25s cubic-bezier(0.22, 1, 0.36, 1);
}

.home-showcase.is-motion-on .home-showcase__block.is-in .home-showcase__soon-label {
  animation: home-sc-fade-up 0.45s var(--sc-ease) both;
}

.home-showcase.is-motion-on .home-showcase__block.is-in .home-showcase__soon-note {
  animation: home-sc-fade-up 0.45s var(--sc-ease) 0.1s both;
}

.home-showcase.is-motion-on .home-showcase__block.is-in .home-showcase__soon-desc {
  animation: home-sc-fade-up 0.45s var(--sc-ease) 0.2s both;
}

.home-showcase.is-motion-on .home-showcase__block.is-in .home-showcase__notify {
  animation: home-sc-fade-up 0.45s var(--sc-ease) 0.3s both;
}

.home-showcase__block--soon .home-showcase__panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  background: var(--home-sage);
}

.home-showcase__soon {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-start;
  padding: 2.5rem clamp(1.5rem, 4vw, 3.75rem) 2.5rem 1rem;
  text-align: right;
}

.home-showcase__soon-label {
  margin: 0;
  font-size: clamp(2rem, 3.5vw, 2.75rem);
  font-weight: 500;
  line-height: 1.23;
  color: var(--home-coral);
}

.home-showcase__soon-text {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  margin-top: 1.5rem;
  max-width: 29.3rem;
}

.home-showcase__soon-note {
  margin: 0;
  font-size: 1.5rem;
  font-weight: 500;
  font-style: italic;
  line-height: 1.2;
  color: #000;
}

.home-showcase__soon-desc {
  margin: 0 0 1.25rem;
  font-size: 1.25rem;
  line-height: 1.4;
  color: var(--home-scorpion);
}

.home-showcase__notify {
  display: flex;
  align-items: stretch;
  width: 100%;
  max-width: 26.3rem;
  margin-top: auto;
  padding-top: 0px;
  border: 1px solid #888;
  border-radius: 0.75rem;
  overflow: hidden;
  background: #fff;
}

.home-showcase__notify input {
  flex: 1;
  min-width: 0;
  border: 0;
  padding: 0.75rem 1.25rem;
  font-size: 0.875rem;
  color: var(--home-scorpion);
  outline: none;
}

.home-showcase__notify input::placeholder {
  color: rgba(94, 86, 90, 0.4);
}

.home-showcase__notify .home-btn {
  margin: 0;
  border-radius: 0.75rem;
  min-height: 3rem;
  font-size: 1.125rem;
}

@keyframes home-sc-fade-up {
  from {
    opacity: 0;
    transform: translate3d(0, 0.75rem, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes home-sc-sheen {
  from {
    opacity: 0;
    transform: translate3d(-120%, 0, 0);
  }
  12% {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(120%, 0, 0);
  }
}

/* ~1.2s travel, rest idle — cycle 13.5s */
@keyframes home-sc-diag-pass {
  0% {
    opacity: 0;
    transform: translate3d(-45%, 0, 0);
  }
  1.5% {
    opacity: 0.85;
  }
  9% {
    opacity: 0;
    transform: translate3d(45%, 0, 0);
  }
  9.01%,
  100% {
    opacity: 0;
    transform: translate3d(-45%, 0, 0);
  }
}

/* ========== Industries — Figma 2351:5717 ========== */
.home-industries {
  --ind-ease: cubic-bezier(0.22, 1, 0.36, 1);
  padding: 5rem 0 4.5rem;
  background: #fff;
  overflow: hidden;
}

.home-industries.home-reveal {
  transition:
    opacity 0.7s cubic-bezier(0.22, 0.61, 0.36, 1),
    transform 0.7s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.home-industries.home-reveal:not(.is-visible) {
  transform: translateY(2.5rem);
}

.home-industries__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 3.75rem;
}

.home-industries__title {
  max-width: 53.2rem;
  font-size: clamp(2rem, 3.5vw, 2.75rem);
  font-weight: 500;
  line-height: 1.15;
  color: var(--home-scorpion);
}

.home-industries__lead {
  margin: 0;
  max-width: 53.2rem;
  font-size: clamp(1.125rem, 2vw, 1.5rem);
  font-weight: 400;
  line-height: 1.2;
  color: var(--home-scorpion);
  text-align: center;
}

.home-industries__carousel {
  --ind-ease: cubic-bezier(0.22, 1, 0.36, 1);
  position: relative;
  margin-bottom: 2rem;
  padding-block: 2rem 1rem;
}

/* Soft radial glow behind active card — ~5–8%, no bg motion */
.home-industries__carousel::before {
  content: '';
  position: absolute;
  left: 50%;
  top: 42%;
  z-index: 0;
  width: min(28rem, 70%);
  height: min(22rem, 70%);
  pointer-events: none;
  background: radial-gradient(
    ellipse at center,
    rgba(255, 147, 79, 0.08) 0%,
    rgba(255, 147, 79, 0.04) 40%,
    transparent 72%
  );
  transform: translate3d(-50%, -50%, 0);
  opacity: 1;
}

.home-industries__swiper {
  position: relative;
  z-index: 1;
  overflow: visible;
  padding: 0.5rem 0;
}

.home-industries__swiper .swiper-wrapper {
  align-items: center;
}

/* Apple-like slide glide — Swiper wrapper easing */
.home-industries.is-motion-ready .home-industries__swiper .swiper-wrapper {
  transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1) !important;
}

.home-industries__swiper .swiper-slide {
  --ind-s: 0.95;
  --ind-o: 0.8;
  --ind-y: 0px;
  position: relative;
  height: auto;
  box-sizing: border-box;
  opacity: var(--ind-o, 0.8);
  transform: translate3d(0, var(--ind-y, 0px), 0) scale(var(--ind-s, 0.95));
  transform-origin: center center;
  transition:
    transform 0.9s var(--ind-ease),
    opacity 0.9s var(--ind-ease);
  will-change: transform, opacity;
  backface-visibility: hidden;
}

/* Ambient glow behind active slide only */
.home-industries.is-motion-on .home-industries__swiper .swiper-slide-active::before {
  content: '';
  position: absolute;
  left: 8%;
  right: 8%;
  top: 10%;
  bottom: 6%;
  z-index: 0;
  border-radius: 1.75rem;
  background: radial-gradient(
    ellipse at 50% 45%,
    rgba(255, 147, 79, 0.07) 0%,
    rgba(255, 147, 79, 0.03) 45%,
    transparent 70%
  );
  filter: blur(16px);
  pointer-events: none;
  transform: translateZ(0);
}

.home-industries__swiper .swiper-slide-prev,
.home-industries__swiper .swiper-slide-next {
  z-index: 1;
}

.home-industries__swiper .swiper-slide-active {
  z-index: 3;
}

/* Fallback when JS vars not yet set */
.home-industries:not(.is-motion-on) .home-industries__swiper .swiper-slide-prev,
.home-industries:not(.is-motion-on) .home-industries__swiper .swiper-slide-next {
  opacity: 0.82;
  transform: translate3d(0, 4px, 0) scale(0.95);
}

.home-industries:not(.is-motion-on) .home-industries__swiper .swiper-slide-active {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1.03);
}

.home-industry-card {
  --ind-card-ease: cubic-bezier(0.22, 1, 0.36, 1);
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  width: 100%;
  height: 21.25rem;
  border: 1px solid rgba(15, 23, 42, 0.04);
  border-radius: 1.46875rem;
  background: #fff;
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.03),
    0 8px 20px rgba(6, 48, 121, 0.05),
    0 16px 32px rgba(6, 48, 121, 0.04);
  overflow: hidden;
  transform: translate3d(0, 0, 0) scale(1);
  transform-origin: center center;
  transition:
    box-shadow 0.3s var(--ind-card-ease),
    transform 0.3s var(--ind-card-ease),
    border-color 0.3s var(--ind-card-ease);
  will-change: transform;
}

.home-industries.is-motion-on .home-industry-card.is-prepare:not(.is-in) {
  opacity: 0;
  transform: translate3d(0, 1.875rem, 0);
}

.home-industries.is-motion-on .home-industry-card.is-in {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition:
    opacity 0.5s var(--ind-card-ease),
    transform 0.5s var(--ind-card-ease),
    box-shadow 0.3s var(--ind-card-ease),
    border-color 0.3s var(--ind-card-ease);
  transition-delay: var(--ind-stagger, 0ms), var(--ind-stagger, 0ms), 0s, 0s;
}

.home-industries__swiper .swiper-slide-prev .home-industry-card,
.home-industries__swiper .swiper-slide-next .home-industry-card {
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.025),
    0 6px 16px rgba(6, 48, 121, 0.045),
    0 12px 24px rgba(6, 48, 121, 0.035);
}

.home-industries__swiper .swiper-slide-active .home-industry-card {
  box-shadow:
    0 2px 4px rgba(15, 23, 42, 0.04),
    0 14px 28px rgba(6, 48, 121, 0.1),
    0 28px 52px rgba(6, 48, 121, 0.08);
}

.home-industries.is-motion-ready .swiper-slide-active .home-industry-card.is-idle-lift {
  transform: translate3d(0, -2px, 0);
}

@media (hover: hover) and (pointer: fine) {
  .home-industries.is-motion-on .swiper-slide:not(.swiper-slide-active) .home-industry-card.is-in:hover {
    transform: translate3d(0, -4px, 0) scale(1.021);
    box-shadow:
      0 2px 4px rgba(15, 23, 42, 0.03),
      0 10px 22px rgba(6, 48, 121, 0.07),
      0 20px 36px rgba(6, 48, 121, 0.05);
  }

  .home-industries.is-motion-on .swiper-slide-active .home-industry-card.is-in:hover {
    border-color: rgba(15, 23, 42, 0.12);
    transform: translate3d(0, -8px, 0);
    box-shadow:
      0 4px 8px rgba(15, 23, 42, 0.05),
      0 18px 36px rgba(6, 48, 121, 0.12),
      0 36px 64px rgba(6, 48, 121, 0.09);
  }

  .home-industries.is-motion-on .swiper-slide-active .home-industry-card.is-in:hover .home-industry-card__top {
    transform: scale(1.02);
  }
}

.home-industry-card__top {
  position: relative;
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 0;
  padding: 2.25rem;
  background: linear-gradient(196.32deg, #fba46d 2.93%, #ff934f 89.51%);
  color: #fff;
  overflow: hidden;
  border-radius: 1.46875rem 1.46875rem 0 0;
  transform: translateZ(0) scale(1);
  transform-origin: center center;
  transition: transform 0.35s var(--ind-card-ease, cubic-bezier(0.22, 1, 0.36, 1));
  will-change: transform;
}

.home-industry-card__top::before {
  content: "";
  position: absolute;
  width: 200%;
  height: 200%;
  left: -20%;
  top: -80%;
  border-radius: 50%;
  background: #c8a3d8;
  mix-blend-mode: plus-lighter;
  filter: blur(120px);
  opacity: 0.35;
  pointer-events: none;
}

.home-industry-card__top::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, 0.22) 1px, transparent 1px);
  background-size: 12px 12px;
  opacity: 0.2;
  mix-blend-mode: overlay;
  pointer-events: none;
}

.home-industry-card__icon {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 3.75rem;
  height: 3.75rem;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 2px 31.2px rgba(0, 0, 0, 0.05);
  transform: translateZ(0);
}

.home-industry-card__icon::before {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  background: var(--home-coral);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  /* default: rounded square mark */
  border-radius: 0.3rem;
}

.home-industry-card--it .home-industry-card__icon::before {
  background: #c65f1f;
  border-radius: 0;
  clip-path: polygon(20% 0, 80% 0, 100% 50%, 80% 100%, 20% 100%, 0 50%);
}

.home-industry-card--media .home-industry-card__icon::before {
  background: #b44804;
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
}

.home-industry-card--ecom .home-industry-card__icon::before {
  background: #c65f1f;
  border-radius: 0.15rem;
  box-shadow: inset 0 -0.35rem 0 rgba(255, 255, 255, 0.35);
}

.home-industry-card--health .home-industry-card__icon::before {
  background: #ff934f;
  width: 1.35rem;
  height: 1.35rem;
  clip-path: polygon(40% 0, 60% 0, 60% 40%, 100% 40%, 100% 60%, 60% 60%, 60% 100%, 40% 100%, 40% 60%, 0 60%, 0 40%, 40% 40%);
  border-radius: 0;
}

.home-industry-card--finance .home-industry-card__icon::before {
  background: #c65f1f;
  border-radius: 50%;
}

.home-industry-card--edu .home-industry-card__icon::before {
  background: #b44804;
  clip-path: polygon(50% 0, 100% 30%, 100% 100%, 0 100%, 0 30%);
  border-radius: 0;
}

.home-industry-card--realty .home-industry-card__icon::before {
  background: #c65f1f;
  clip-path: polygon(50% 0, 100% 40%, 100% 100%, 0 100%, 0 40%);
  border-radius: 0;
}

.home-industry-card h3 {
  position: relative;
  z-index: 1;
  margin: 0;
  max-width: 17rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.03em;
  text-align: left;
  color: #fff;
}

/* Active content cascade — icon → title → desc → link */
.home-industries.is-motion-on .swiper-slide-active.is-content-in .home-industry-card__icon {
  animation: home-ind-fade-up 0.4s var(--ind-card-ease) both;
}

.home-industries.is-motion-on .swiper-slide-active.is-content-in .home-industry-card h3 {
  animation: home-ind-fade-up 0.4s var(--ind-card-ease) 0.08s both;
}

.home-industries.is-motion-on .swiper-slide-active.is-content-in .home-industry-card__foot p {
  animation: home-ind-fade-up 0.4s var(--ind-card-ease) 0.16s both;
}

.home-industries.is-motion-on .swiper-slide-active.is-content-in .home-industry-card__foot a {
  animation: home-ind-fade-up 0.4s var(--ind-card-ease) 0.24s both;
}

.home-industry-card__foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex: 0 0 auto;
  min-height: 4.75rem;
  padding: 0 2.25rem;
}

.home-industry-card__foot p {
  margin: 0;
  font-size: 1.15rem;
  font-weight: 300;
  line-height: 1.35;
  letter-spacing: -0.01em;
  color: #070707;
}

.home-industry-card__foot a {
  flex-shrink: 0;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.25;
  color: var(--home-scorpion);
  text-decoration: none;
  white-space: nowrap;
  transition:
    color 0.2s ease,
    transform 0.2s var(--ind-card-ease);
}

.home-industry-card__foot a:hover,
.home-industry-card__foot a:focus-visible {
  color: var(--home-coral);
  transform: translateX(4px);
}

.home-industries__nav {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(0.75rem, 2.5vw, 1.5rem);
  width: 100%;
  max-width: 100%;
  min-height: 2.75rem;
  margin: 1.5rem auto 0;
  padding: 0 0.5rem;
}

.home-industries__nav-btn {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: center;
  width: 2.75rem;
  height: 2.75rem;
  margin: 0;
  padding: 0;
  border: 1px solid #e4e4e4;
  border-radius: 999px;
  background: #fff;
  color: var(--home-coral);
  line-height: 1;
  vertical-align: middle;
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.04),
    0 6px 16px rgba(15, 23, 42, 0.06);
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    box-shadow 0.2s ease,
    opacity 0.2s ease,
    transform 0.2s ease;
}

.home-industries__nav-btn svg {
  display: block;
}

.home-industries__nav-btn:hover,
.home-industries__nav-btn:focus-visible {
  border-color: var(--home-coral);
  color: var(--home-coral-deep);
  box-shadow:
    0 2px 4px rgba(255, 147, 79, 0.12),
    0 8px 18px rgba(15, 23, 42, 0.08);
  outline: none;
}

.home-industries__nav-btn:focus-visible {
  outline: 2px solid var(--home-coral);
  outline-offset: 2px;
}

.home-industries__nav-btn:active {
  background: var(--home-coral);
  border-color: var(--home-coral);
  color: #fff;
  transform: scale(0.96);
}

.home-industries__nav-btn.is-disabled,
.home-industries__nav-btn:disabled,
.home-industries__nav-btn.swiper-button-disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
  box-shadow: none;
  color: var(--home-coral);
  background: #fff;
  border-color: #e4e4e4;
  transform: none;
}

.home-industries__dots {
  position: relative !important;
  top: auto !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  align-self: center;
  flex: 0 1 auto;
  flex-wrap: nowrap;
  gap: 0.35rem;
  width: auto;
  max-width: min(100%, 18rem);
  height: 2.75rem;
  margin: 0;
  padding: 0;
}

.home-industries__dots .swiper-pagination-bullet {
  width: 0.375rem;
  height: 0.375rem;
  margin: 0 !important;
  background: #d0d0d0;
  border-radius: 999px;
  opacity: 1;
  transform: none;
  transition:
    width 0.3s var(--ind-ease),
    background-color 0.3s ease;
}

.home-industries__dots .swiper-pagination-bullet-active {
  width: 2.75rem;
  background: #f7985e;
  border-radius: 999px;
}

.home-industries__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  min-width: 0;
  width: auto;
  max-width: 100%;
  min-height: 3rem;
  margin-top: 1.25rem;
  padding: 0.75rem 2rem;
  border: 1px solid rgba(94, 86, 90, 0.2);
  border-radius: 999px;
  background: #fff;
  color: var(--home-scorpion);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  transition:
    transform 0.25s var(--ind-card-ease, cubic-bezier(0.22, 1, 0.36, 1)),
    box-shadow 0.25s ease,
    border-color 0.25s ease,
    color 0.25s ease,
    background-color 0.25s ease,
    opacity 0.35s var(--ind-ease);
  will-change: transform, opacity;
}

.home-industries__cta-arrow {
  display: inline-block;
  transition: transform 0.25s var(--ind-card-ease, cubic-bezier(0.22, 1, 0.36, 1));
}

.home-industries__cta.is-cta-nudge {
  animation: home-ind-cta-nudge 0.55s var(--ind-ease) both;
}

.home-industries__cta:hover,
.home-industries__cta:focus-visible {
  border-color: var(--home-coral);
  color: var(--home-coral-deep);
  background: #fff;
  transform: translateY(-3px);
  box-shadow:
    0 2px 6px rgba(15, 23, 42, 0.04),
    0 12px 24px rgba(15, 23, 42, 0.08);
}

.home-industries__cta:hover .home-industries__cta-arrow,
.home-industries__cta:focus-visible .home-industries__cta-arrow {
  transform: translateX(5px);
}

@keyframes home-ind-fade-up {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes home-ind-cta-nudge {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  40% {
    opacity: 0.72;
    transform: translateY(8px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 991.98px) {
  .home-industries__head {
    margin-bottom: 2.5rem;
  }

  .home-industries__carousel {
    padding-block: 1.5rem 0.75rem;
  }

  .home-industries:not(.is-motion-on) .home-industries__swiper .swiper-slide {
    opacity: 0.8;
    transform: scale(0.95);
  }

  .home-industries:not(.is-motion-on) .home-industries__swiper .swiper-slide-prev,
  .home-industries:not(.is-motion-on) .home-industries__swiper .swiper-slide-next {
    opacity: 0.82;
    transform: translate3d(0, 4px, 0) scale(0.95);
  }

  .home-industries:not(.is-motion-on) .home-industries__swiper .swiper-slide-active {
    opacity: 1;
    transform: scale(1.03);
  }

  .home-industry-card {
    height: 18.5rem;
    border-radius: 1.1rem;
  }

  .home-industry-card__top {
    padding: 1.5rem;
    border-radius: 1.1rem 1.1rem 0 0;
  }

  .home-industry-card__icon {
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 0.55rem;
  }

  .home-industry-card h3 {
    font-size: 1.45rem;
  }

  .home-industry-card__foot {
    min-height: 3.75rem;
    padding: 0 1.5rem;
  }

  .home-industry-card__foot p {
    font-size: 0.95rem;
  }

  .home-industry-card__foot a {
    font-size: 0.875rem;
  }

  .home-industries__cta {
    width: 100%;
    max-width: 22rem;
    min-width: 0;
  }

  .home-industries__nav {
    gap: 0.75rem;
    margin-top: 1.25rem;
  }

  .home-industries__nav-btn {
    width: 2.5rem;
    height: 2.5rem;
  }
}

@media (max-width: 575.98px) {
  .home-industries__carousel {
    padding-block: 1rem 0.5rem;
  }

  .home-industries:not(.is-motion-on) .home-industries__swiper .swiper-slide {
    opacity: 0.78;
    transform: scale(0.94);
  }

  .home-industries:not(.is-motion-on) .home-industries__swiper .swiper-slide-prev,
  .home-industries:not(.is-motion-on) .home-industries__swiper .swiper-slide-next {
    opacity: 0.78;
    transform: scale(0.94);
  }

  .home-industries:not(.is-motion-on) .home-industries__swiper .swiper-slide-active {
    opacity: 1;
    transform: scale(1.03);
  }

  .home-industries__dots .swiper-pagination-bullet-active {
    width: 2.25rem;
  }

  .home-industries__nav {
    gap: 0.65rem;
    padding: 0 0.25rem;
  }

  .home-industries__nav-btn {
    width: 2.5rem;
    height: 2.5rem;
  }

  .home-industries__dots {
    max-width: min(100%, 12rem);
  }
}

/* ========== Audience — Figma 2351:5807 ========== */
.home-audience {
  padding: 4.75rem 0;
  background: var(--home-sage);
  overflow-x: clip;
  max-width: 100%;
}

.home-audience.home-reveal {
  transition:
    opacity 0.7s cubic-bezier(0.22, 0.61, 0.36, 1),
    transform 0.7s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.home-audience.home-reveal:not(.is-visible) {
  transform: translateY(2.5rem);
}

.home-audience__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  margin: 0 auto 2.5rem;
  max-width: 37.625rem;
  text-align: center;
}

.home-audience__title {
  margin: 0;
  font-size: clamp(2rem, 3.5vw, 2.75rem);
  font-weight: 500;
  line-height: 1.15;
  color: var(--home-scorpion);
}

.home-audience__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2rem;
}

.home-audience-card {
  --aud-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --aud-par-x: 0px;
  --aud-par-y: 0px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.5rem;
  height: 100%;
  padding: 1.8125rem 1.875rem;
  border: 1px solid #eee;
  border-radius: 1rem;
  background: #fff;
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.02),
    0 6px 16px rgba(15, 23, 42, 0.04);
  transform: translateZ(0);
  transition:
    transform 0.28s var(--aud-ease),
    box-shadow 0.28s var(--aud-ease),
    border-color 0.28s var(--aud-ease),
    background-color 0.28s var(--aud-ease),
    opacity 0.55s var(--aud-ease);
}

.home-audience.is-motion-on .home-audience-card.is-prepare:not(.is-in) {
  opacity: 0;
  transform: translate3d(0, 1.875rem, 0);
}

.home-audience.is-motion-on .home-audience-card.is-in {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition:
    opacity 0.55s var(--aud-ease),
    transform 0.55s var(--aud-ease),
    box-shadow 0.28s var(--aud-ease),
    border-color 0.28s var(--aud-ease),
    background-color 0.28s var(--aud-ease);
  transition-delay: var(--aud-stagger, 0ms), var(--aud-stagger, 0ms), 0s, 0s, 0s;
}

@media (hover: hover) and (pointer: fine) {
  .home-audience.is-motion-on .home-audience-card.is-in:hover {
    border-color: var(--home-coral);
    background-color: #fcfcfc;
    box-shadow:
      0 2px 4px rgba(15, 23, 42, 0.03),
      0 12px 28px rgba(15, 23, 42, 0.08),
      0 24px 40px rgba(15, 23, 42, 0.05);
    transform: translate3d(0, -6px, 0);
  }

  .home-audience.is-motion-on .home-audience-card.is-in:hover .home-audience-card__media::after {
    opacity: 0.55;
  }

  .home-audience.is-motion-on .home-audience-card.is-in:hover .home-audience-card__media img {
    transform:
      translate3d(calc(-50% + var(--aud-par-x)), calc(-50% + var(--aud-par-y)), 0)
      scale(1.03);
  }

  .home-audience.is-motion-on .home-audience-card.is-in:hover h3 {
    transform: translateY(-3px);
  }

  .home-audience.is-motion-on .home-audience-card.is-in:hover p {
    color: rgba(94, 86, 90, 0.88);
  }

  .home-audience.is-motion-on .home-audience-card.is-in:hover a {
    transform: translateX(6px);
    color: var(--home-coral);
  }

  .home-audience.is-motion-on .home-audience-card.is-in:hover a::after {
    transform: scaleX(1);
  }
}

.home-audience-card__media {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: 0.625rem;
  aspect-ratio: 544 / 200;
  background: #d9d9d9;
}

.home-audience-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.3);
  opacity: 1;
  pointer-events: none;
  transition: opacity 0.4s var(--aud-ease);
}

.home-audience-card__media img {
  position: absolute;
  left: 50%;
  top: 50%;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: translate3d(-50%, -50%, 0) scale(1);
  transition: transform 0.4s var(--aud-ease);
  will-change: transform;
}

.home-audience-card__body {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 0.7rem;
  width: 100%;
}

.home-audience-card__copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.7rem;
  min-width: 0;
}

.home-audience-card h3 {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--home-scorpion);
  transform: translateY(0);
  transition: transform 0.28s var(--aud-ease);
}

.home-audience-card p {
  margin: 0;
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1.6;
  color: rgba(94, 86, 90, 0.7);
  transition: color 0.28s ease;
}

.home-audience-card a {
  position: relative;
  flex-shrink: 0;
  color: #070707;
  font-size: 0.837rem;
  font-weight: 500;
  line-height: 1.35;
  letter-spacing: -0.01em;
  text-decoration: none;
  white-space: nowrap;
  transform: translateX(0);
  transition:
    color 0.2s ease,
    transform 0.2s var(--aud-ease);
}

.home-audience-card a::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: -0.15rem;
  height: 1px;
  background: var(--home-coral);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.2s var(--aud-ease);
}

.home-audience-card a:hover,
.home-audience-card a:focus-visible {
  color: var(--home-coral);
  transform: translateX(4px);
}

.home-audience-card a:hover::after,
.home-audience-card a:focus-visible::after {
  transform: scaleX(1);
}

@media (max-width: 991.98px) {
  .home-audience__grid {
    gap: 1.25rem;
  }

  .home-audience-card {
    padding: 1.25rem;
    gap: 1.25rem;
  }
}

@media (max-width: 767.98px) {
  .home-audience__grid {
    grid-template-columns: 1fr;
  }
}

/* ========== Why — Figma 2351:5844 ========== */
.home-why {
  --why-ease: cubic-bezier(0.22, 1, 0.36, 1);
  padding: clamp(3.5rem, 6vw, 4.75rem) 0 5rem;
  background: #fff;
  overflow-x: clip;
  max-width: 100%;
}

.home-why.home-reveal {
  transition:
    opacity 0.7s cubic-bezier(0.22, 0.61, 0.36, 1),
    transform 0.7s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.home-why.home-reveal:not(.is-visible) {
  transform: translateY(2.5rem);
}

.home-why__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.25rem;
  max-width: 53.2rem;
  margin: 0 auto 3.5rem;
  text-align: center;
}

.home-why__title {
  margin: 0;
  font-size: clamp(2rem, 3.5vw, 2.75rem);
  font-weight: 500;
  line-height: 1.15;
  color: var(--home-scorpion);
}

.home-why__lead {
  margin: 0;
  max-width: 41.125rem;
  font-size: clamp(1.125rem, 2vw, 1.25rem);
  font-weight: 400;
  line-height: 1.2;
  color: var(--home-scorpion);
}

.home-why__compare {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 0.25rem minmax(0, 1fr);
  align-items: stretch;
  max-width: 77.5rem;
  min-height: 37.5rem;
  margin: 0 auto;
  border: 1px solid #e7e7e7;
  border-radius: 1.5rem;
  background: #d8e8df;
  overflow: hidden;
}

.home-why__col {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 2.5rem 2.5rem 2rem;
  min-width: 0;
}

.home-why__copy {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  max-width: 21.5625rem;
}

.home-why__copy h3 {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  margin: 0;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.208;
  color: var(--home-scorpion);
}

.home-why__copy > p {
  margin: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.1875;
  color: var(--home-scorpion);
}

.home-why__divider {
  position: relative;
  z-index: 3;
  width: 0.25rem;
  background: #fff;
}

.home-why__handle {
  position: absolute;
  left: 50%;
  top: 50%;
  display: grid;
  grid-template-columns: repeat(2, 0.25rem);
  gap: 0.25rem 0.375rem;
  place-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border: 1px solid #000;
  border-radius: 60px;
  background: #fff;
  transform: translate(-50%, -50%);
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.04),
    0 8px 18px rgba(15, 23, 42, 0.08);
}

.home-why__handle i {
  display: block;
  width: 0.25rem;
  height: 0.25rem;
  border-radius: 50%;
  background: #000;
}

.home-why__chaos {
  position: relative;
  flex: 1 1 auto;
  min-height: 20rem;
  margin-top: 2rem;
}

.home-why__chaos-lines {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: visible;
  z-index: 0;
}

.home-why__chaos-lines path {
  fill: none;
  stroke: rgba(255, 147, 79, 0.35);
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 5 6;
}

.home-why__flow-dot {
  fill: var(--home-coral);
  opacity: 0;
  pointer-events: none;
  filter: drop-shadow(0 0 5px rgba(255, 147, 79, 0.75));
}

.home-why__tool {
  position: absolute;
  display: grid;
  place-items: center;
  width: 3.5rem;
  height: 3.5rem;
  padding: 0.5rem;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 2px 13.7px rgba(0, 0, 0, 0.09);
  z-index: 2;
  transform: translate(-50%, -50%);
  will-change: transform;
  transition:
    transform 0.2s var(--why-ease),
    box-shadow 0.2s var(--why-ease);
}

@media (hover: hover) and (pointer: fine) {
  .home-why__tool:hover {
    transform: translate(-50%, calc(-50% - 6px)) scale(1.05);
    box-shadow:
      0 2px 6px rgba(15, 23, 42, 0.05),
      0 14px 28px rgba(15, 23, 42, 0.14);
    z-index: 3;
  }

  .home-why__pill:hover {
    border-color: var(--home-coral);
    box-shadow:
      0 2px 4px rgba(15, 23, 42, 0.04),
      0 10px 22px rgba(15, 23, 42, 0.08),
      0 18px 36px rgba(15, 23, 42, 0.05);
    --hub-lift: -6px;
  }

  .home-why__pill:hover .home-why__pill-icon {
    transform: scale(1.08);
  }
}

.home-why__tool img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* Chaos constellation — 10 tools, balanced 4 / 3 / 3 rows */
.home-why__tool--meta { left: 16%; top: 14%; }
.home-why__tool--docs { left: 40%; top: 8%; }
.home-why__tool--mail { left: 64%; top: 16%; }
.home-why__tool--canva { left: 86%; top: 12%; }
.home-why__tool--gpt { left: 12%; top: 44%; }
.home-why__tool--ga { left: 42%; top: 40%; }
.home-why__tool--wp { left: 78%; top: 48%; }
.home-why__tool--xls { left: 22%; top: 78%; }
.home-why__tool--zap { left: 48%; top: 72%; }
.home-why__tool--notion { left: 74%; top: 80%; }

.home-why__orbit {
  position: relative;
  flex: 1 1 auto;
  display: grid;
  place-items: center;
  min-height: 26rem;
  margin-top: 1rem;
  isolation: isolate;
}

.home-why__ring {
  position: absolute;
  inset: 0;
  margin: auto;
  width: min(18.75rem, 48%);
  aspect-ratio: 1;
  height: auto;
  border: 1px solid #517f51;
  border-radius: 50%;
  background: #fff;
  box-shadow: none;
  transform: scale(1);
  transform-origin: center center;
  will-change: transform, box-shadow;
  z-index: 2;
  transition: box-shadow 0.3s var(--why-ease);
  overflow: visible;
}

.home-why__ring-glow {
  position: absolute;
  inset: -3px;
  border-radius: 50%;
  pointer-events: none;
  opacity: 0;
  background: conic-gradient(
    from 0deg,
    transparent 0deg,
    transparent 328deg,
    rgba(81, 127, 81, 0.08) 336deg,
    rgba(255, 147, 79, 0.38) 348deg,
    rgba(81, 127, 81, 0.1) 356deg,
    transparent 360deg
  );
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 1.5px));
  mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 1.5px));
  will-change: transform;
  transform: rotate(0deg);
}

.home-why__orbit.is-hub-ready .home-why__ring-glow {
  opacity: 1;
}

.home-why__ring.is-glow {
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.03),
    0 8px 24px rgba(15, 23, 42, 0.05),
    0 0 0 5px rgba(255, 147, 79, 0.05),
    0 0 22px rgba(255, 147, 79, 0.12);
}

.home-why__logo {
  position: relative;
  z-index: 2;
  display: grid;
  place-items: center;
  width: min(10.94rem, 46%);
}

.home-why__logo img {
  display: block;
  width: 100%;
  height: auto;
}

.home-why__pill {
  --hub-a: 0deg;
  --hub-r: 12rem;
  --hub-lift: 0px;
  --hub-enter: 0px;
  position: absolute;
  left: 50%;
  top: 50%;
  right: auto;
  bottom: auto;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 0.75rem;
  min-height: 3.625rem;
  padding: 0.75rem 1rem;
  border: 1px solid rgba(226, 232, 240, 0.5);
  border-radius: 1rem;
  background: #fff;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--home-ink);
  white-space: nowrap;
  box-shadow: none;
  transform:
    translate(-50%, -50%)
    translateY(var(--hub-lift))
    translateY(var(--hub-enter))
    rotate(var(--hub-a))
    translateY(calc(-1 * var(--hub-r)))
    rotate(calc(-1 * var(--hub-a)));
  will-change: transform, opacity;
  cursor: default;
  transition:
    transform 0.25s var(--why-ease),
    box-shadow 0.25s var(--why-ease),
    border-color 0.25s var(--why-ease);
}

.home-why__pill.is-pulse {
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.03),
    0 8px 20px rgba(15, 23, 42, 0.07),
    0 16px 34px rgba(15, 23, 42, 0.045);
}

.home-why__pill.is-pulse .home-why__pill-icon {
  box-shadow: 0 0 0 3px rgba(255, 147, 79, 0.12), 0 0 12px rgba(255, 147, 79, 0.22);
}

.home-why__pill.is-hovered {
  --hub-lift: -6px;
  border-color: var(--home-coral);
  box-shadow:
    0 2px 4px rgba(15, 23, 42, 0.04),
    0 10px 22px rgba(15, 23, 42, 0.08),
    0 18px 36px rgba(15, 23, 42, 0.05);
  z-index: 5;
}

.home-why__pill.is-hovered .home-why__pill-icon {
  transform: scale(1.08);
}

.home-why__pill-icon {
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: 0.5rem;
  flex-shrink: 0;
  transform: scale(1);
  transition:
    transform 0.25s var(--why-ease),
    box-shadow 0.35s var(--why-ease);
}

.home-why__pill-icon::before {
  content: "";
  width: 0.9rem;
  height: 0.9rem;
  background: currentColor;
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
  -webkit-mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
}

/* Figma card positions around 300px circle (angles from top, CW) */
.home-why__pill--strategy {
  --hub-a: 47deg;
  --hub-r: clamp(10.5rem, 32vw, 11.5rem);
}
.home-why__pill--strategy .home-why__pill-icon {
  background: rgba(0, 64, 224, 0.1);
  color: #0040e0;
}
.home-why__pill--strategy .home-why__pill-icon::before {
  border: 2px solid currentColor;
  border-radius: 50%;
  background: radial-gradient(circle, currentColor 30%, transparent 32%);
  box-sizing: border-box;
}

.home-why__pill--landing {
  --hub-a: 100deg;
  --hub-r: clamp(11.25rem, 34vw, 12.75rem);
}
.home-why__pill--landing .home-why__pill-icon {
  background: rgba(47, 46, 190, 0.1);
  color: #2f2ebe;
}
.home-why__pill--landing .home-why__pill-icon::before {
  clip-path: polygon(0 15%, 100% 15%, 100% 100%, 0 100%);
  border-radius: 0.1rem;
}

.home-why__pill--ranking {
  --hub-a: 164deg;
  --hub-r: clamp(9.5rem, 28vw, 10.3rem);
}
.home-why__pill--ranking .home-why__pill-icon {
  background: rgba(63, 70, 95, 0.1);
  color: #3f465f;
}
.home-why__pill--ranking .home-why__pill-icon::before {
  clip-path: polygon(0 70%, 30% 70%, 30% 40%, 55% 40%, 55% 20%, 80% 20%, 80% 100%, 0 100%);
}

.home-why__pill--writer {
  --hub-a: 249deg;
  --hub-r: clamp(11.1rem, 33vw, 12.7rem);
}
.home-why__pill--writer .home-why__pill-icon {
  background: rgba(46, 91, 255, 0.1);
  color: #2e5bff;
}
.home-why__pill--writer .home-why__pill-icon::before {
  clip-path: polygon(10% 80%, 70% 10%, 90% 30%, 30% 100%);
}

.home-why__pill--social {
  --hub-a: 302deg;
  --hub-r: clamp(10.75rem, 32vw, 12.3rem);
}
.home-why__pill--social .home-why__pill-icon {
  background: rgba(186, 26, 26, 0.1);
  color: #ba1a1a;
}
.home-why__pill--social .home-why__pill-icon::before {
  clip-path: polygon(10% 10%, 90% 10%, 90% 55%, 70% 55%, 50% 90%, 50% 55%, 10% 55%);
}

/* ========== Resources — Figma 2351:5932 ========== */
.home-resources {
  --res-ease: cubic-bezier(0.22, 1, 0.36, 1);
  padding: 5rem 0;
  background: #fff;
  overflow-x: clip;
  max-width: 100%;
}

/* Motion owns section reveal */
.home-resources.is-motion-on.home-reveal,
.home-resources.is-motion-on.home-reveal:not(.is-visible) {
  opacity: 1;
  transform: none;
  transition: none;
}

.home-resources__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2.75rem;
  max-width: 75rem;
}

.home-resources__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.9375rem;
  max-width: 100%;
  text-align: center;
}

.home-resources__title {
  font-size: clamp(2rem, 3.5vw, 2.771rem);
  line-height: 1.22;
  letter-spacing: -0.02em;
  text-transform: capitalize;
}

.home-resources__lead {
  margin: 0;
  max-width: 28rem;
}

/* Section reveal sequence */
.home-resources.is-motion-on .home-resources__head .home-badge,
.home-resources.is-motion-on .home-resources__title,
.home-resources.is-motion-on .home-resources__lead {
  opacity: 0;
  transform: translate3d(0, 1.25rem, 0);
}

.home-resources.is-motion-on.is-in .home-resources__head .home-badge {
  animation: home-res-fade-up 0.55s var(--res-ease) both;
}

.home-resources.is-motion-on.is-in .home-resources__title {
  animation: home-res-fade-up 0.65s var(--res-ease) 0.09s both;
}

.home-resources.is-motion-on.is-in .home-resources__lead {
  animation: home-res-fade-up 0.6s var(--res-ease) 0.18s both;
}

.home-resources__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.367fr) minmax(0, 1fr);
  gap: 1.5rem;
  width: 100%;
  max-width: 75rem;
  align-items: stretch;
}

.home-resources__featured,
.home-resources__list-wrap {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-width: 0;
  border-radius: 1.5rem;
  background: var(--home-cream);
}

.home-resources__featured {
  padding: 1.3125rem 1.375rem;
  gap: 0.6875rem;
}

.home-resources__list-wrap {
  padding: 1.375rem;
  gap: 0.8125rem;
}

.home-resources__label {
  margin: 0;
  font-size: 1rem;
  line-height: 1;
  letter-spacing: 0.063em;
  text-transform: uppercase;
  color: #6a7878;
}

.home-resources__feature-card {
  --res-card-ease: cubic-bezier(0.22, 1, 0.36, 1);
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  box-sizing: border-box;
  min-height: 28.87rem;
  padding: 0.45rem 0.45rem 1.25rem;
  border: 1px solid transparent;
  border-radius: 1.35375rem;
  background: #fff;
  text-decoration: none;
  color: inherit;
  transform: translate3d(0, 0, 0);
  transition:
    transform 0.25s var(--res-card-ease),
    box-shadow 0.25s ease,
    border-color 0.25s ease;
  will-change: transform;
}

.home-resources.is-motion-on .home-resources__feature-card.is-prepare:not(.is-in) {
  opacity: 0;
  transform: translate3d(0, 30px, 0);
}

.home-resources.is-motion-on .home-resources__feature-card.is-in {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition:
    opacity 0.7s var(--res-ease),
    transform 0.7s var(--res-ease),
    box-shadow 0.25s ease,
    border-color 0.25s ease;
  transition-delay: 0.28s, 0.28s, 0s, 0s;
}

.home-resources__feature-media {
  position: relative;
  flex: 0 0 auto;
  width: 100%;
  aspect-ratio: 644 / 340.5;
  border-radius: 0.9025rem;
  overflow: hidden;
  background: #e5e2c8;
  /* Soft editorial mask */
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.04);
}

.home-resources__feature-media::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  border-radius: inherit;
  box-shadow: inset 0 0 48px rgba(0, 31, 31, 0.08);
}

.home-resources__feature-media.is-missing {
  background:
    linear-gradient(160deg, rgba(0, 0, 0, 0.08), transparent 55%),
    linear-gradient(135deg, #d7e0c8, #efecca 55%, #e8d9c4);
}

.home-resources__feature-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transform-origin: center center;
  transition:
    transform 0.5s var(--res-ease),
    filter 0.5s ease;
  will-change: transform;
}

.home-resources.is-motion-on .home-resources__feature-card.is-prepare:not(.is-in) .home-resources__feature-media img {
  opacity: 0;
  transform: scale(0.98);
  transition: none;
}

.home-resources.is-motion-on .home-resources__feature-card.is-in .home-resources__feature-media img {
  opacity: 1;
  transform: scale(1);
  transition:
    opacity 0.6s var(--res-ease) 0.4s,
    transform 0.6s var(--res-ease) 0.4s,
    filter 0.5s ease;
}

.home-resources.is-motion-on .home-resources__feature-card.is-in.is-idle-zoom .home-resources__feature-media img {
  transform: scale(1.01);
}

.home-resources__feature-card > .home-resources__chip {
  margin: 0.85rem 0 0 0.85rem;
}

.home-resources__feature-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  gap: 0.5rem 1.25rem;
  align-items: start;
  margin-top: 0.55rem;
  padding: 0 0.85rem;
}

.home-resources__chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-height: 1.125rem;
  padding: 0.1875rem 1rem;
  border-radius: 1.128rem;
  background: #cdface;
  color: #366625;
  font-size: 0.5375rem;
  line-height: 1.4;
  letter-spacing: 0.045em;
  text-transform: uppercase;
  transition: background-color 0.25s ease, color 0.25s ease;
}

.home-resources__feature-body h3 {
  margin: 0;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.166;
  letter-spacing: -0.025em;
  color: #001f1f;
  transition: color 0.25s ease;
}

.home-resources__feature-body p {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #455252;
}

.home-resources__list {
  display: flex;
  flex-direction: column;
  gap: 0.8125rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.home-resources__list li {
  list-style: none;
}

.home-resources__list a {
  display: flex;
  gap: 0.85rem;
  align-items: center;
  box-sizing: border-box;
  min-height: 6.51rem;
  padding: 0.45rem;
  border: 1px solid transparent;
  border-radius: 1.35375rem;
  background: #fff;
  text-decoration: none;
  color: inherit;
  transform: translate3d(0, 0, 0);
  transition:
    transform 0.25s var(--res-ease),
    box-shadow 0.25s ease,
    border-color 0.25s ease;
  will-change: transform;
}

.home-resources.is-motion-on .home-resources__list a.is-prepare:not(.is-in) {
  opacity: 0;
  transform: translate3d(20px, 0, 0);
}

.home-resources.is-motion-on .home-resources__list a.is-in {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition:
    opacity 0.55s var(--res-ease),
    transform 0.55s var(--res-ease),
    box-shadow 0.25s ease,
    border-color 0.25s ease;
  transition-delay: var(--res-stagger, 0ms), var(--res-stagger, 0ms), 0s, 0s;
}

.home-resources__thumb {
  position: relative;
  flex: 0 0 10.7rem;
  width: 10.7rem;
  height: 5.61rem;
  border-radius: 0.9025rem;
  overflow: hidden;
  background: #e5e2c8;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.04);
}

.home-resources__thumb::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  border-radius: inherit;
  box-shadow: inset 0 0 24px rgba(0, 31, 31, 0.06);
}

.home-resources__thumb.is-missing {
  background: linear-gradient(135deg, #d7e4d7, #efecca 55%, #e8d9c4);
}

.home-resources__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  transform-origin: center center;
  transition: transform 0.35s var(--res-ease);
  will-change: transform;
}

.home-resources__meta {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.7rem;
  flex: 1 1 auto;
  min-width: 0;
  padding: 0.35rem 0.75rem 0.35rem 0;
}

.home-resources__meta strong {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: -0.027em;
  color: #001f1f;
  transition: color 0.25s ease;
}

.home-resources__cta {
  display: flex;
  justify-content: center;
  width: 100%;
}

.home-resources.is-motion-on .home-resources__cta {
  opacity: 0;
  transform: translate3d(0, 12px, 0);
}

.home-resources.is-motion-on.is-in .home-resources__cta {
  animation: home-res-fade-up 0.55s var(--res-ease) 0.72s both;
}

.home-resources__cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  box-sizing: border-box;
  min-width: 17rem;
  min-height: 3rem;
  padding: 0.75rem 2rem;
  border: 1px solid rgba(94, 86, 90, 0.2);
  border-radius: 999px;
  background: #fff;
  color: var(--home-scorpion);
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.22;
  text-align: center;
  text-decoration: none;
  transition:
    transform 0.25s var(--res-ease),
    border-color 0.25s ease,
    color 0.25s ease,
    box-shadow 0.25s ease;
}

.home-resources__cta-arrow {
  display: inline-block;
  transition: transform 0.25s var(--res-ease);
}

@media (hover: hover) and (pointer: fine) {
  .home-resources.is-motion-on .home-resources__feature-card.is-in:hover,
  .home-resources.is-motion-on .home-resources__feature-card.is-in:focus-visible {
    transform: translate3d(0, -5px, 0);
    border-color: rgba(0, 31, 31, 0.1);
    box-shadow:
      0 4px 10px rgba(0, 0, 0, 0.04),
      0 16px 36px rgba(0, 0, 0, 0.08);
  }

  .home-resources.is-motion-on .home-resources__feature-card.is-in:hover .home-resources__feature-media img,
  .home-resources.is-motion-on .home-resources__feature-card.is-in:focus-visible .home-resources__feature-media img {
    transform: scale(1.03);
    filter: brightness(1.03);
  }

  .home-resources.is-motion-on .home-resources__feature-card.is-in.is-idle-zoom:hover .home-resources__feature-media img {
    transform: scale(1.03);
  }

  .home-resources.is-motion-on .home-resources__list a.is-in:hover,
  .home-resources.is-motion-on .home-resources__list a.is-in:focus-visible {
    transform: translate3d(0, -5px, 0);
    border-color: rgba(0, 31, 31, 0.1);
    box-shadow:
      0 4px 10px rgba(0, 0, 0, 0.04),
      0 14px 28px rgba(0, 0, 0, 0.07);
  }

  .home-resources.is-motion-on .home-resources__list a.is-in:hover .home-resources__thumb img,
  .home-resources.is-motion-on .home-resources__list a.is-in:focus-visible .home-resources__thumb img {
    transform: scale(1.02);
  }

  .home-resources__feature-card:hover .home-resources__chip,
  .home-resources__list a:hover .home-resources__chip {
    background: #c0f5c4;
  }

  .home-resources__feature-card:hover .home-resources__feature-body h3,
  .home-resources__list a:hover .home-resources__meta strong {
    color: #001414;
  }

  .home-resources__cta-btn:hover,
  .home-resources__cta-btn:focus-visible {
    transform: translateY(-3px);
    border-color: var(--home-scorpion);
    color: var(--home-scorpion);
    box-shadow:
      0 4px 10px rgba(0, 0, 0, 0.04),
      0 12px 24px rgba(0, 0, 0, 0.08);
  }

  .home-resources__cta-btn:hover .home-resources__cta-arrow,
  .home-resources__cta-btn:focus-visible .home-resources__cta-arrow {
    transform: translateX(6px);
  }
}

@keyframes home-res-fade-up {
  from {
    opacity: 0;
    transform: translate3d(0, 1.25rem, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

/* ========== CTA — Figma 2351:5976 ========== */
.home-cta {
  --cta-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --cta-par-x: 0px;
  --cta-par-y: 0px;
  --cta-zoom: 1;
  position: relative;
  min-height: clamp(28rem, 62.5vw, 56.25rem);
  padding: 5rem 0;
  color: #fff;
  overflow: hidden;
}

/* Motion owns reveal sequence */
.home-cta.is-motion-on.home-reveal,
.home-cta.is-motion-on.home-reveal:not(.is-visible) {
  opacity: 1;
  transform: none;
  transition: none;
}

/* Bg frame stays locked — never translate this layer */
.home-cta__bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  opacity: 1;
}

.home-cta.is-motion-on .home-cta__bg {
  opacity: 0;
  transition: opacity 0.9s var(--cta-ease);
}

.home-cta.is-motion-on.is-in .home-cta__bg {
  opacity: 1;
}

/*
  Media layer: parallax only (no CSS transition — rAF dampens).
  Img: hover zoom only (eased). Frame (.home-cta__bg) never moves.
*/
.home-cta__bg-media {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 108%;
  height: 108%;
  transform: translate3d(calc(-50% + var(--cta-par-x)), calc(-50% + var(--cta-par-y)), 0);
  will-change: transform;
  backface-visibility: hidden;
}

.home-cta__bg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center right;
  transform: scale(var(--cta-zoom));
  transform-origin: center center;
  transition: transform 0.8s var(--cta-ease);
  will-change: transform;
  backface-visibility: hidden;
}

/* Soft light sweep — one pass when .is-sweep */
.home-cta__bg::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(
    105deg,
    transparent 38%,
    rgba(255, 255, 255, 0.1) 50%,
    transparent 62%
  );
  opacity: 0;
  transform: translate3d(-120%, 0, 0);
  will-change: transform, opacity;
}

.home-cta.is-sweep .home-cta__bg::before {
  animation: home-cta-sweep 1.35s ease-out forwards;
}

/* Dark overlay + soft LTR readability + vignette */
.home-cta__bg::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    radial-gradient(
      ellipse at center,
      transparent 42%,
      rgba(0, 0, 0, 0.28) 100%
    ),
    linear-gradient(
      90deg,
      rgba(0, 0, 0, 0.78) 0%,
      rgba(0, 0, 0, 0.42) 38%,
      rgba(0, 0, 0, 0.12) 68%,
      transparent 100%
    ),
    linear-gradient(
      132.33deg,
      rgba(0, 0, 0, 0.9) 2.76%,
      rgba(31, 31, 31, 0.62676) 26.74%,
      rgba(102, 102, 102, 0) 52.39%
    );
  pointer-events: none;
  opacity: 1;
  transition: opacity 0.5s ease;
}

.home-cta.is-motion-on .home-cta__bg::after {
  opacity: 0;
  transition: opacity 0.85s var(--cta-ease) 0.12s;
}

.home-cta.is-motion-on.is-in .home-cta__bg::after {
  opacity: 1;
}

.home-cta .container,
.home-cta__copy {
  position: relative;
  z-index: 1;
}

.home-cta__copy {
  transition: transform 0.5s var(--cta-ease);
}

/* Soft ambient glow behind copy — fades on section hover */
.home-cta__copy::before {
  content: "";
  position: absolute;
  left: -8%;
  top: -20%;
  width: min(36rem, 110%);
  height: 120%;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(
    ellipse at 30% 45%,
    rgba(255, 147, 79, 0.14) 0%,
    rgba(255, 255, 255, 0.06) 35%,
    transparent 70%
  );
  opacity: 0;
  transform: translateZ(0);
  transition: opacity 0.5s ease;
}

.home-cta__title {
  margin: 0;
  max-width: 53rem;
  font-size: clamp(2rem, 4vw, 2.75rem);
  font-weight: 500;
  letter-spacing: -0.02em;
  text-transform: capitalize;
  transition: transform 0.5s var(--cta-ease);
}

.home-cta.is-motion-on .home-cta__title {
  opacity: 0;
  transform: translate3d(0, 30px, 0);
}

.home-cta.is-motion-on.is-in .home-cta__title {
  animation: home-cta-fade-up 0.7s var(--cta-ease) 0.38s both;
}

.home-cta.is-settled .home-cta__title,
.home-cta.is-settled .home-cta__desc,
.home-cta.is-settled .home-cta__actions {
  animation: none;
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

.home-cta__desc {
  margin: 1.5rem 0 0;
  max-width: 53rem;
  font-size: 1.125rem;
  line-height: 1.5;
  transition: transform 0.5s var(--cta-ease);
}

.home-cta.is-motion-on .home-cta__desc {
  opacity: 0;
  transform: translate3d(0, 20px, 0);
}

.home-cta.is-motion-on.is-in .home-cta__desc {
  animation: home-cta-fade-up-sm 0.65s var(--cta-ease) 0.5s both;
}

.home-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 2.5rem;
  transition: transform 0.5s var(--cta-ease);
}

.home-cta.is-motion-on .home-cta__actions {
  opacity: 0;
  transform: translate3d(0, 15px, 0);
}

.home-cta.is-motion-on.is-in .home-cta__actions {
  animation: home-cta-fade-up-sm 0.6s var(--cta-ease) 0.6s both;
}

.home-cta__actions .home-btn {
  transition:
    transform 0.25s var(--cta-ease),
    box-shadow 0.25s ease,
    border-color 0.25s ease,
    background-color 0.25s ease,
    color 0.25s ease,
    filter 0.25s ease;
}

.home-cta__actions .home-btn svg {
  transition: transform 0.25s var(--cta-ease);
}

@media (hover: hover) and (pointer: fine) {
  /* Section hover — calm zoom, no frame shift */
  .home-cta.is-in:hover {
    --cta-zoom: 1.02;
  }

  .home-cta.is-motion-on.is-in:hover .home-cta__bg::after,
  .home-cta.is-in:hover .home-cta__bg::after {
    opacity: 0.96;
  }

  .home-cta.is-in:hover .home-cta__copy::before {
    opacity: 0.07;
  }

  .home-cta.is-in:hover .home-cta__title {
    transform: translate3d(0, -3px, 0);
  }

  .home-cta.is-in:hover .home-cta__desc {
    transform: translate3d(0, -2px, 0);
  }

  .home-cta.is-in:hover .home-cta__actions .home-btn--primary,
  .home-cta.is-in:hover .home-cta__actions .home-btn--ghost-light {
    transform: translateY(-4px);
  }

  .home-cta.is-in:hover .home-cta__actions .home-btn--primary {
    filter: brightness(1.05);
    box-shadow:
      0 4px 10px rgba(255, 147, 79, 0.2),
      0 14px 32px rgba(255, 147, 79, 0.3);
  }

  .home-cta.is-in:hover .home-cta__actions .home-btn--primary svg {
    transform: translateX(6px);
  }

  .home-cta.is-in:hover .home-cta__actions .home-btn--ghost-light {
    border-color: rgba(255, 255, 255, 0.95);
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
  }

  /* Extra lift if cursor is on the button itself */
  .home-cta__actions .home-btn--primary:hover,
  .home-cta__actions .home-btn--primary:focus-visible {
    transform: translateY(-4px);
    filter: brightness(1.06);
    box-shadow:
      0 4px 10px rgba(255, 147, 79, 0.2),
      0 14px 32px rgba(255, 147, 79, 0.32);
  }

  .home-cta__actions .home-btn--primary:hover svg,
  .home-cta__actions .home-btn--primary:focus-visible svg {
    transform: translateX(6px);
  }

  .home-cta__actions .home-btn--ghost-light:hover,
  .home-cta__actions .home-btn--ghost-light:focus-visible {
    transform: translateY(-4px);
    border-color: rgba(255, 255, 255, 0.95);
    background: #fff;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
  }
}

@keyframes home-cta-fade-up {
  from {
    opacity: 0;
    transform: translate3d(0, 30px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes home-cta-fade-up-sm {
  from {
    opacity: 0;
    transform: translate3d(0, 15px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@keyframes home-cta-sweep {
  from {
    opacity: 0;
    transform: translate3d(-120%, 0, 0);
  }
  18% {
    opacity: 1;
  }
  to {
    opacity: 0;
    transform: translate3d(120%, 0, 0);
  }
}

/* Newsletter */
.home-newsletter {
  padding: 0 0 5rem;
  overflow-x: clip;
  max-width: 100%;
}

.home-newsletter__card {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 2rem clamp(1.25rem, 3vw, 2.5rem);
  border-radius: 1.5rem;
  background: var(--home-cream);
}

.home-newsletter__title {
  margin: 0 0 0.5rem;
  font-size: 1.5rem;
  font-weight: 500;
  color: var(--home-scorpion);
}

.home-newsletter__copy p {
  margin: 0;
  max-width: 28rem;
  color: rgba(94, 86, 90, 0.85);
}

.home-newsletter__form {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  width: min(100%, 28rem);
}

.home-newsletter__form .form-control {
  flex: 1;
  min-width: 12rem;
  min-height: 3rem;
  border: 2px solid rgba(94, 86, 90, 0.3);
  border-radius: 0.75rem;
}

.home-newsletter__form .home-btn {
  min-height: 3rem;
}

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
  top: 30px;
}

/* ========== Responsive ========== */
@media (max-width: 1199.98px) {
  .home-hero {
    min-height: auto;
    /* MUST contain absolute grid/glows — overflow:visible was expanding page width */
    overflow-x: clip;
    overflow-y: hidden;
  }

  .home-hero__inner,
  .home-resources__grid {
    grid-template-columns: 1fr;
  }

  .home-resources__feature-card {
    min-height: 0;
  }

  .home-resources__feature-body {
    grid-template-columns: 1fr;
  }

  .home-why__compare {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .home-why__divider {
    width: 100%;
    height: 0.25rem;
  }

  .home-why__handle {
    left: 50%;
    top: 50%;
  }

  .home-why__col--gain .home-why__orbit {
    min-height: 24rem;
    margin-top: 2.5rem;
  }

  .home-showcase__block {
    background-position: center center;
  }

  .home-showcase__panel {
    background: linear-gradient(
      180deg,
      rgba(231, 239, 231, 0.94) 0%,
      rgba(231, 239, 231, 0.82) 55%,
      rgba(231, 239, 231, 0.35) 100%
    );
  }

  .home-showcase__copy {
    max-width: 100%;
    padding: 2rem 1.5rem;
  }

  .home-showcase__block--soon .home-showcase__panel {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    min-height: 0;
    background: var(--home-sage);
  }

  .home-showcase__block--soon .home-showcase__copy {
    min-height: 0;
    padding-bottom: 1rem;
  }

  .home-showcase__block--soon .home-showcase__text {
    margin-top: 1rem;
    gap: 1rem;
  }

  .home-teams__copy {
    padding: 0;
  }

  .home-teams__visual {
    min-height: 28rem;
  }

  .home-hero__inner {
    min-height: auto;
    padding-top: 6.5rem;
    padding-bottom: 2.5rem;
    gap: 2.5rem;
  }

  .home-hero__copy {
    padding-top: 0;
    max-width: 42rem;
  }

  .home-hero__showcase {
    min-height: auto;
    width: 100%;
  }

  .home-hero__panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(11rem, 0.85fr);
    align-items: start;
    gap: 1.25rem 1.5rem;
    width: 100%;
    min-height: 0;
    margin-left: 0;
    padding: 2rem 1.75rem 1.5rem;
    overflow: visible;
  }

  .home-hero__divider {
    display: none;
  }

  .home-hero__quote {
    position: static;
    grid-column: 2;
    grid-row: 1;
    right: auto;
    top: auto;
    max-width: none;
    margin: 0;
    text-align: left;
  }

  .home-hero__quote p {
    font-size: 1.2rem;
  }

  .home-hero__quote strong {
    font-size: 1.35rem;
  }

  .home-hero__stack {
    grid-column: 1;
    grid-row: 1 / span 2;
    max-width: none;
    width: 100%;
    margin: 0;
    filter: none;
  }

  .home-hero__person {
    position: relative;
    grid-column: 2;
    grid-row: 2;
    width: min(100%, 17rem);
    right: auto;
    bottom: auto;
    margin: 0.5rem 0 0 auto;
    justify-self: end;
    align-self: end;
  }

  .home-hero__person-ring {
    width: 8.5rem;
    height: 8.5rem;
    right: 1rem;
    bottom: 1rem;
  }

  .home-why__divider {
    width: 100%;
    height: 0.25rem;
  }

  .home-showcase__soon,
  .home-showcase__notify {
    text-align: left;
    align-items: stretch;
    margin-left: 0;
    margin-right: 0;
  }

  .home-showcase__soon {
    width: 100%;
    max-width: none;
    padding: 0 1.5rem 2rem;
    overflow: visible;
  }

  .home-showcase__soon-label {
    width: 100%;
    font-size: clamp(1.75rem, 6vw, 2.5rem);
    line-height: 1.2;
    overflow: visible;
  }

  .home-showcase__soon-text {
    width: 100%;
    max-width: none;
    margin-top: 0.75rem;
    gap: 0.5rem;
  }

  .home-showcase__notify {
    max-width: none;
    width: 100%;
    margin-top: 1.25rem;
  }

  .home-showcase__block--soon .home-showcase__panel {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 991.98px) {
  .home-showcase__stack {
    --showcase-stack-gap: 1.5rem; /* 24px — still in 24–40 band */
    --showcase-sticky-gap: 1.5rem; /* 24px below navbar on smaller screens */
  }

  .home-showcase__block {
    border-radius: 1.25rem;
  }

  .home-showcase__panel {
    min-height: 0;
  }

  .home-hero__inner {
    padding-top: 6rem;
  }

  /* Tablet: quote full-width, chips + person side-by-side — kill empty orange void */
  .home-hero__panel {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
    align-items: end;
    gap: 1.25rem 1.5rem;
    padding: 1.75rem 1.5rem 1.35rem;
    min-height: 28rem;
  }

  .home-hero__quote {
    grid-column: 1 / -1;
    grid-row: 1;
    text-align: left;
    max-width: 32rem;
  }

  .home-hero__quote p {
    font-size: 1.25rem;
  }

  .home-hero__quote strong {
    font-size: 1.4rem;
  }

  .home-hero__stack {
    grid-column: 1;
    grid-row: 2;
    max-width: none;
    width: 100%;
  }

  .home-hero__chip.is-expanded,
  .home-hero__mini {
    width: 100%;
  }

  .home-hero__person {
    position: relative;
    right: auto;
    bottom: auto;
    grid-column: 2;
    grid-row: 2;
    width: min(100%, 18rem);
    margin: 0;
    justify-self: end;
    align-self: end;
  }

  .home-hero__person-ring {
    width: 9.5rem;
    height: 9.5rem;
    right: 0.75rem;
    bottom: 1rem;
  }

  .home-featured__card {
    border-radius: 2.5rem;
    padding: 3rem 1.5rem;
  }

  /* Products — mobile app-like selector (desktop tabs untouched ≥992) */
  .home-products {
    padding: 3.5rem 0 3rem;
  }

  .home-products__head {
    margin-bottom: 1.75rem;
  }

  .home-products__stage {
    min-height: 0;
    padding: 1.25rem 1rem 1.5rem;
    border-radius: 1.5rem;
    border-color: #ebebeb;
    background: #fff;
    box-shadow:
      0 1px 2px rgba(15, 23, 42, 0.04),
      0 12px 32px rgba(15, 23, 42, 0.08);
    touch-action: pan-y;
  }

  .home-products__tabs {
    display: none;
  }

  .home-products__mnav {
    display: block;
    margin-bottom: 0.25rem;
  }

  .home-products__panel.is-active {
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }

  .home-products__preview {
    order: 1;
    max-width: none;
    width: 100%;
    margin: 0 0 1.15rem;
  }

  .home-products__tagline {
    order: 2;
    margin: 0 0 1.25rem;
    font-size: clamp(1rem, 3.8vw, 1.2rem);
    font-style: normal;
    font-weight: 500;
    line-height: 1.45;
    color: #575757;
  }

  .home-products__actions {
    order: 3;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 0;
  }

  .home-products__actions .home-btn {
    width: 100%;
    min-width: 0;
    min-height: 3.25rem;
  }

  .home-products__frame {
    min-height: 0;
    border-radius: 1rem;
    overflow: hidden;
    box-shadow:
      0 2px 6px rgba(15, 23, 42, 0.04),
      0 14px 28px rgba(15, 23, 42, 0.08);
  }

  .home-products__shot {
    width: 100%;
    height: auto;
    object-fit: cover;
    object-position: top center;
  }

  .home-products__panel.is-leaving {
    opacity: 0;
    transform: translateX(-0.75rem) scale(0.985);
    transition:
      opacity 0.28s cubic-bezier(0.22, 0.61, 0.36, 1),
      transform 0.28s cubic-bezier(0.22, 0.61, 0.36, 1);
  }

  .home-products__panel.is-entering {
    opacity: 0;
    transform: translateX(0.75rem) scale(0.985);
  }

  .home-products__panel.is-entering.is-shown {
    opacity: 1;
    transform: translateX(0) scale(1);
    transition:
      opacity 0.32s cubic-bezier(0.22, 0.61, 0.36, 1),
      transform 0.32s cubic-bezier(0.22, 0.61, 0.36, 1);
  }

  .home-products__panel.is-entering.is-shown .home-products__tagline,
  .home-products__panel.is-entering.is-shown .home-products__preview,
  .home-products__panel.is-entering.is-shown .home-products__actions {
    animation: none;
  }

  .home-products__panel[data-dir='prev'].is-leaving {
    transform: translateX(0.75rem) scale(0.985);
  }

  .home-products__panel[data-dir='prev'].is-entering {
    transform: translateX(-0.75rem) scale(0.985);
  }

  .home-teams__card {
    position: absolute;
    left: 1.25rem;
    right: 1.25rem;
    bottom: -2rem;
    padding: 1.1rem 1.15rem;
  }

  .home-teams__visual {
    min-height: 22rem;
    padding: 1.25rem;
  }

  .home-teams {
    padding-bottom: 6.5rem;
  }

  .home-workflow__head {
    align-items: flex-start;
    margin-bottom: 2.5rem;
  }

  .home-workflow {
    --wf-card-h: 24rem;
  }

  .home-workflow__controls {
    margin-top: var(--wf-progress-gap);
  }

  .home-resources {
    padding: 3.5rem 0;
  }

  .home-resources__inner {
    gap: 2rem;
  }

  .home-resources__featured,
  .home-resources__list-wrap {
    padding: 1.1rem;
  }

  .home-resources__thumb {
    flex-basis: 6.5rem;
    width: 6.5rem;
    height: 4.5rem;
  }

  .home-resources__meta strong {
    font-size: 0.9375rem;
  }

  .home-resources__feature-body h3 {
    font-size: 1.25rem;
  }

  .home-resources__cta-btn {
    width: 100%;
    max-width: 17rem;
    font-size: 1rem;
  }
}

@media (max-width: 767.98px) {
  .home-hero__pills {
    gap: 0.75rem;
  }

  .home-hero__panel {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
    padding: 1.5rem 1.1rem 1.1rem;
    border-radius: 1.25rem;
    min-height: 0;
  }

  .home-hero__quote {
    grid-column: 1;
    grid-row: 1;
    max-width: none;
  }

  .home-hero__quote p {
    font-size: 1.05rem;
    line-height: 1.3;
  }

  .home-hero__quote strong {
    font-size: 1.2rem;
  }

  .home-hero__stack {
    grid-column: 1;
    grid-row: 2;
    max-width: none;
    width: 100%;
  }

  .home-hero__chip {
    min-height: 3.25rem;
  }

  .home-hero__person {
    position: relative;
    right: auto;
    bottom: auto;
    grid-column: 1;
    grid-row: 3;
    width: min(72%, 12.5rem);
    margin: 0.25rem 0 0 auto;
    justify-self: end;
  }

  .home-hero__person-ring {
    width: 6.5rem;
    height: 6.5rem;
  }

  .home-hero__cta,
  .home-products__actions,
  .home-cta__actions {
    flex-direction: column;
  }

  .home-hero__cta .home-btn,
  .home-products__actions .home-btn,
  .home-cta__actions .home-btn {
    width: 100%;
  }

  .home-featured__logo {
    flex-basis: 9rem;
    height: 4rem;
  }

  .home-showcase__notify {
    flex-direction: column;
    align-items: stretch;
  }

  .home-showcase__notify input {
    width: 100%;
    padding: 0.85rem 1rem;
  }

  .home-showcase__notify .home-btn {
    width: 100%;
    border-radius: 0 0 0.65rem 0.65rem;
  }

  .home-showcase__soon {
    padding: 0 1.25rem 1.5rem;
  }

  .home-showcase__block--soon .home-showcase__copy {
    padding: 1.5rem 1.25rem 0.75rem;
  }

  .home-showcase__soon-label {
    font-size: clamp(1.65rem, 7.5vw, 2.1rem);
    letter-spacing: -0.02em;
  }

  .home-showcase__soon-text {
    margin-top: 0.65rem;
  }

  .home-showcase__soon-note {
    font-size: 1.25rem;
  }

  .home-showcase__soon-desc {
    font-size: 1rem;
    margin-bottom: 0;
  }

  .home-showcase__block--soon .home-showcase__product {
    font-size: clamp(1.75rem, 8vw, 2.5rem);
  }

  .home-why__ring {
    display: none;
  }

  .home-why__pill {
    position: static;
    margin: 0;
    transform: none;
  }

  .home-why__pill.is-lifted,
  .home-why__pill.is-hovered {
    transform: none;
  }

  .home-why__orbit {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5rem;
    min-height: auto;
    padding-top: 0.5rem;
  }

  .home-why__ring-glow {
    display: none;
  }

  .home-why__logo {
    width: 9rem;
    margin-bottom: 0.75rem;
  }

  .home-why__chaos {
    min-height: 14rem;
  }

  .home-hero__pills li {
    min-height: auto;
  }

  .home-teams {
    padding: 3.5rem 0 5.5rem;
  }

  .home-teams__visual {
    min-height: 18rem;
  }

  .home-teams__card {
    left: 1rem;
    right: 1rem;
    bottom: -1.75rem;
    gap: 1rem;
    padding: 1rem;
  }

  .home-teams__item {
    min-height: 3.25rem;
    padding: 0.85rem 0.5rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-why__ring-glow {
    animation: none !important;
    opacity: 0 !important;
  }

  .home-featured__track,
  .home-featured__title,
  .home-featured__desc,
  .home-featured__logo,
  .home-featured__logo img,
  .home-featured__logo::after,
  .home-featured__marquee,
  .home-btn,
  .home-btn svg,
  .home-reveal,
  .home-industry-card,
  .home-audience-card,
  .home-hero__title,
  .home-hero__pills li,
  .home-hero__lead,
  .home-hero__cta,
  .home-hero__showcase,
  .home-hero__panel,
  .home-hero__chip,
  .home-hero__mini,
  .home-hero__mini-actions,
  .home-hero__bar,
  .home-hero__bar--sm,
  .home-hero__grid,
  .home-hero__person img,
  .home-workflow__card-shot,
  .home-resources__feature-media img,
  .home-resources__thumb img,
  .site-header,
  .home-products__tab,
  .home-products__tab-pill,
  .home-products__soon,
  .home-products__panel,
  .home-products__panel.is-leaving,
  .home-products__panel.is-entering,
  .home-products__panel.is-entering.is-shown,
  .home-teams__indicator,
  .home-teams__media img,
  .home-teams__media img.is-leaving,
  .home-teams__media img.is-entering,
  .home-teams__media img.is-entering.is-shown,
  .home-teams__card,
  .home-teams__card-title,
  .home-teams__card-desc,
  .home-teams__card .home-btn,
  .home-teams__card.is-swap-prep,
  .home-teams__card.is-swap-in,
  .home-teams__card.is-swap-in .home-teams__card-title,
  .home-teams__card.is-swap-in .home-teams__card-desc,
  .home-teams__card.is-swap-in .home-btn,
  .home-products__frame,
  .home-products__shot,
  .home-workflow__card,
  .home-workflow__progress-bar,
  .home-industries__swiper .swiper-slide,
  .home-industry-card,
  .home-industry-card__icon,
  .home-industries__dots .swiper-pagination-bullet,
  .home-industries__cta,
  .home-audience-card,
  .home-audience-card__media img,
  .home-audience-card a,
  .home-audience-card a::after,
  .home-why__tool,
  .home-why__ring,
  .home-why__logo,
  .home-why__pill,
  .home-why__handle,
  .home-why__chaos-lines path {
    animation: none !important;
    transition: none !important;
  }

  .home-hero__title,
  .home-hero__pills li,
  .home-hero__lead,
  .home-hero__cta,
  .home-hero__showcase,
  .home-hero__chip,
  .home-hero__mini,
  .home-hero__mini-actions,
  .home-hero__bar,
  .home-hero__bar--sm,
  .home-reveal,
  .home-products.home-reveal,
  .home-products__soon,
  .home-products__panel,
  .home-products__shot,
  .home-teams__media img,
  .home-teams__card,
  .home-teams__card-title,
  .home-teams__card-desc,
  .home-teams__card .home-btn,
  .home-workflow.home-reveal,
  .home-workflow__card,
  .home-workflow__card-shot {
    opacity: 1 !important;
    transform: none !important;
  }

  .home-workflow__progress-bar {
    transition: none !important;
  }

  .home-showcase.home-reveal,
  .home-showcase__head .home-badge,
  .home-showcase__head .home-section-title,
  .home-showcase__lead,
  .home-showcase__block,
  .home-showcase__block::before,
  .home-showcase__block::after,
  .home-showcase__panel,
  .home-showcase__panel::after,
  .home-showcase__product,
  .home-showcase__subtitle,
  .home-showcase__body,
  .home-showcase__cta,
  .home-showcase__soon-label,
  .home-showcase__soon-note,
  .home-showcase__soon-desc,
  .home-showcase__notify {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
    filter: none !important;
  }

  .home-industries.home-reveal,
  .home-industries__carousel::before,
  .home-industries__swiper .swiper-slide,
  .home-industries__swiper .swiper-slide-active::before,
  .home-industry-card,
  .home-industry-card__top,
  .home-industry-card__icon,
  .home-industry-card h3,
  .home-industry-card__foot p,
  .home-industry-card__foot a,
  .home-industries__dots .swiper-pagination-bullet,
  .home-industries__cta,
  .home-industries__cta-arrow {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
    filter: none !important;
  }

  .home-audience.home-reveal,
  .home-audience-card,
  .home-audience-card__media img,
  .home-audience-card__media::after,
  .home-audience-card h3,
  .home-audience-card p,
  .home-audience-card a,
  .home-audience-card a::after {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
  }

  .home-why.home-reveal,
  .home-why__head .home-badge,
  .home-why__title,
  .home-why__lead,
  .home-why__col--pain,
  .home-why__col--gain,
  .home-why__divider,
  .home-why__handle,
  .home-why__tool,
  .home-why__ring,
  .home-why__logo,
  .home-why__pill,
  .home-why__chaos-lines path,
  .home-why__flow-dot {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
    stroke-dashoffset: 0 !important;
  }

  .home-cta.home-reveal,
  .home-cta__bg,
  .home-cta__bg-media,
  .home-cta__bg img,
  .home-cta__bg::before,
  .home-cta__bg::after,
  .home-cta__copy::before,
  .home-cta__title,
  .home-cta__desc,
  .home-cta__actions {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
    filter: none !important;
  }

  .home-resources.home-reveal,
  .home-resources__head .home-badge,
  .home-resources__title,
  .home-resources__lead,
  .home-resources__feature-card,
  .home-resources__feature-media img,
  .home-resources__list a,
  .home-resources__thumb img,
  .home-resources__cta,
  .home-resources__cta-btn,
  .home-resources__cta-arrow {
    opacity: 1 !important;
    transform: none !important;
    animation: none !important;
    transition: none !important;
    filter: none !important;
  }

  .home-products__tab:hover:not(.is-active),
  .home-products__frame:hover .home-products__shot,
  .home-showcase.is-motion-on .home-showcase__block.is-in:hover,
  .home-showcase.is-motion-on .home-showcase__block.is-in.is-idle-lift::before,
  .home-showcase.is-motion-on .home-showcase__block.is-focus,
  .home-showcase__block.is-passed,
  .home-industries.is-motion-on .home-industry-card.is-in:hover,
  .home-industries.is-motion-ready .swiper-slide-active .home-industry-card.is-idle-lift,
  .home-industries__cta:hover,
  .home-audience.is-motion-on .home-audience-card.is-in:hover,
  .home-why__tool:hover,
  .home-why__pill:hover,
  .home-cta__actions .home-btn:hover,
  .home-faq.is-motion-on .home-faq__item.is-in:not([open]):hover,
  .home-resources.is-motion-on .home-resources__feature-card.is-in:hover,
  .home-resources.is-motion-on .home-resources__list a.is-in:hover,
  .home-resources__cta-btn:hover,
  .home-featured.is-motion-on .home-featured__logo.is-in:hover {
    transform: none !important;
    filter: none !important;
    box-shadow: none !important;
  }
}

/* ========== Premium motion (transform/opacity only) ========== */
@keyframes home-fade-up {
  from {
    opacity: 0;
    transform: translateY(1.5rem);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes home-float-y {
  0%,
  100% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(0, -0.45rem, 0);
  }
}

@keyframes home-grid-breathe {
  0%,
  100% {
    opacity: 1;
  }
  50% {
    opacity: 0.62;
  }
}

@keyframes home-bar-fill {
  from {
    transform: scaleX(0);
  }
  to {
    transform: scaleX(1);
  }
}

@keyframes home-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.home-hero.is-prepare:not(.is-ready) .home-hero__title,
.home-hero.is-prepare:not(.is-ready) .home-hero__pills li,
.home-hero.is-prepare:not(.is-ready) .home-hero__lead,
.home-hero.is-prepare:not(.is-ready) .home-hero__cta,
.home-hero.is-prepare:not(.is-ready) .home-hero__showcase,
.home-hero.is-prepare:not(.is-ready) .home-hero__chip,
.home-hero.is-prepare:not(.is-ready) .home-hero__mini,
.home-hero.is-prepare:not(.is-ready) .home-hero__mini-actions {
  opacity: 0;
}

.home-hero.is-prepare:not(.is-ready) .home-hero__title,
.home-hero.is-prepare:not(.is-ready) .home-hero__pills li,
.home-hero.is-prepare:not(.is-ready) .home-hero__lead,
.home-hero.is-prepare:not(.is-ready) .home-hero__cta,
.home-hero.is-prepare:not(.is-ready) .home-hero__chip,
.home-hero.is-prepare:not(.is-ready) .home-hero__mini {
  transform: translateY(1.5rem);
}

.home-hero.is-prepare:not(.is-ready) .home-hero__bar,
.home-hero.is-prepare:not(.is-ready) .home-hero__bar--sm {
  transform: scaleX(0);
  transform-origin: left center;
}

.home-hero.is-ready .home-hero__title {
  animation: home-fade-up 0.75s cubic-bezier(0.22, 0.61, 0.36, 1) 0.05s both;
}

.home-hero.is-ready .home-hero__pills li:nth-child(1) {
  animation: home-fade-up 0.65s cubic-bezier(0.22, 0.61, 0.36, 1) 0.18s both;
}

.home-hero.is-ready .home-hero__pills li:nth-child(2) {
  animation: home-fade-up 0.65s cubic-bezier(0.22, 0.61, 0.36, 1) 0.28s both;
}

.home-hero.is-ready .home-hero__pills li:nth-child(3) {
  animation: home-fade-up 0.65s cubic-bezier(0.22, 0.61, 0.36, 1) 0.38s both;
}

.home-hero.is-ready .home-hero__pills li:nth-child(4) {
  animation: home-fade-up 0.65s cubic-bezier(0.22, 0.61, 0.36, 1) 0.48s both;
}

.home-hero.is-ready .home-hero__lead {
  animation: home-fade-up 0.7s cubic-bezier(0.22, 0.61, 0.36, 1) 0.55s both;
}

.home-hero.is-ready .home-hero__cta {
  animation: home-fade-up 0.7s cubic-bezier(0.22, 0.61, 0.36, 1) 0.68s both;
}

.home-hero__showcase {
  --parallax-x: 0px;
  --parallax-y: 0px;
  transform: translate3d(var(--parallax-x), var(--parallax-y), 0);
  transition:
    opacity 0.8s cubic-bezier(0.22, 0.61, 0.36, 1) 0.32s,
    transform 0.8s cubic-bezier(0.22, 0.61, 0.36, 1) 0.32s;
  will-change: transform, opacity;
}

.home-hero.is-prepare:not(.is-ready) .home-hero__showcase {
  opacity: 0;
  transform: translate3d(var(--parallax-x), calc(var(--parallax-y) + 1.5rem), 0);
  transition: none;
}

.home-hero.is-ready .home-hero__panel {
  animation: home-float-y 7s ease-in-out 1.2s infinite;
  will-change: transform;
}

.home-hero.is-ready .home-hero__chip,
.home-hero.is-ready .home-hero__mini {
  animation: home-fade-up 0.55s cubic-bezier(0.22, 0.61, 0.36, 1) both;
}

.home-hero.is-ready .home-hero__stack > .home-hero__chip:nth-child(1) {
  animation-delay: 0.55s;
}

.home-hero.is-ready .home-hero__stack > .home-hero__chip:nth-child(2) {
  animation-delay: 0.65s;
}

.home-hero.is-ready .home-hero__stack > .home-hero__mini {
  animation-delay: 0.75s;
}

.home-hero.is-ready .home-hero__stack > .home-hero__chip:nth-child(4) {
  animation-delay: 0.85s;
}

.home-hero.is-ready .home-hero__stack > .home-hero__chip:nth-child(5) {
  animation-delay: 0.95s;
}

.home-hero.is-ready .home-hero__stack > .home-hero__chip:nth-child(6) {
  animation-delay: 1.05s;
}

.home-hero__bar,
.home-hero__bar--sm {
  transform-origin: left center;
}

.home-hero.is-ready .home-hero__bar {
  animation: home-bar-fill 1.1s cubic-bezier(0.22, 0.61, 0.36, 1) 1.35s both;
}

.home-hero.is-ready .home-hero__bar--sm {
  animation: home-bar-fill 0.95s cubic-bezier(0.22, 0.61, 0.36, 1) 1.55s both;
}

.home-hero.is-ready .home-hero__mini-actions {
  animation: home-fade-in 0.5s ease 2.35s both;
}

.home-hero__grid {
  animation: home-grid-breathe 11s ease-in-out infinite;
}

.home-hero__person {
  overflow: hidden;
}

.home-hero__person img {
  transition: transform 0.35s cubic-bezier(0.22, 0.61, 0.36, 1);
  transform: translateZ(0);
}

.home-hero__person:hover img {
  transform: scale(1.02);
}

.home-workflow__card-art,
.home-resources__feature-media,
.home-resources__thumb {
  overflow: hidden;
}

.home-workflow__card-shot {
  transition: transform 0.35s cubic-bezier(0.22, 0.61, 0.36, 1);
}

@media (max-width: 991.98px) {
  .home-hero.is-ready .home-hero__panel {
    animation: none;
  }

  .home-hero__showcase {
    --parallax-x: 0px !important;
    --parallax-y: 0px !important;
  }
}
