/* ============================================================
   InstallIQ — Motion Layer CSS
   ============================================================ */

/* Custom Cursor deaktiviert */
.iq-cursor { display: none !important; }

/* Section Sweep */
[data-sweep] {
  position: relative;
  overflow: hidden;
}
[data-sweep]::before {
  content: '';
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, transparent, #FFB000, transparent);
  transform: translateX(-100%);
  transition: transform 1400ms cubic-bezier(0.22, 1, 0.36, 1);
  pointer-events: none;
  z-index: 3;
}
[data-sweep].swept::before {
  transform: translateX(100%);
}

/* Split word reveals */
.split-word {
  display: inline-block;
  overflow: hidden;
  padding-bottom: 0.05em;
  vertical-align: baseline;
}
.split-word > span {
  display: inline-block;
  transform: translateY(105%);
  transition: transform 900ms cubic-bezier(0.22, 1, 0.36, 1);
}
.split-word > span.in {
  transform: translateY(0);
}

/* Marquee */
[data-marquee] {
  overflow: hidden;
  display: flex;
}
[data-marquee] .marquee-track {
  display: flex;
  gap: 3rem;
  animation: marquee 42s linear infinite;
  flex-shrink: 0;
  align-items: center;
  padding-right: 3rem;
}
@keyframes marquee {
  to { transform: translateX(-50%); }
}

/* Tilt cards should be positioned for perspective */
[data-tilt] {
  transform-style: preserve-3d;
  will-change: transform;
}

/* Magnetic */
[data-magnetic] {
  will-change: transform;
  transition: transform 500ms cubic-bezier(0.22, 1, 0.36, 1);
}
[data-magnetic]:hover {
  transition: none;
}
