/* Accents for Szymon's original minimalist demo. No palette or layout redesign. */
.ambient-motion-on .scope-list > .scope-item.reveal,
.ambient-motion-on .process-grid > .process-step.reveal,
.ambient-motion-on .review-cards > .review.reveal {
  transition-delay: calc(var(--ambient-order, 0) * 65ms);
}

.ambient-line {
  position: relative;
}
.ambient-line::after {
  content: '';
  position: absolute;
  pointer-events: none;
  height: 1px;
  bottom: -19px;
  left: 0;
  right: 0;
  background: currentColor;
  opacity: .13;
  transform-origin: left;
}
.ambient-motion-on .ambient-line::after {
  transform: scaleX(0);
  transition: transform 1.05s cubic-bezier(.22,1,.36,1) .13s;
}
.ambient-motion-on .ambient-line.ambient-arrived::after {
  transform: scaleX(1);
}

.ambient-motion-on .button > .arrow,
.ambient-motion-on .button > span[aria-hidden='true'],
.ambient-motion-on .header-cta > span,
.ambient-motion-on .text-link > span,
.ambient-motion-on .scope-symbol {
  display: inline-block;
  transition: transform .42s cubic-bezier(.22,1,.36,1);
}
.ambient-motion-on .project-image {
  transition: box-shadow .55s cubic-bezier(.22,1,.36,1);
}
.ambient-motion-on .project-image img {
  transition: transform 1.15s cubic-bezier(.22,1,.36,1), filter .6s ease;
}
.ambient-motion-on .project-caption > span {
  background-image: linear-gradient(currentColor, currentColor);
  background-position: left bottom;
  background-repeat: no-repeat;
  background-size: 0 1px;
  transition: background-size .5s cubic-bezier(.22,1,.36,1);
}
.ambient-motion-on .button:focus-visible {
  transform: translateY(-3px);
}
.ambient-motion-on .button:focus-visible > .arrow,
.ambient-motion-on .button:focus-visible > span[aria-hidden='true'],
.ambient-motion-on .header-cta:focus-visible > span,
.ambient-motion-on .text-link:focus-visible > span {
  transform: translate(4px, -3px);
}
.ambient-motion-on .project:focus-visible .project-image img {
  transform: scale(1.045);
  filter: brightness(1.025);
}
.ambient-motion-on .project:focus-visible .project-caption > span {
  background-size: 100% 1px;
}

@media (hover: hover) and (pointer: fine) {
  .ambient-motion-on .button:hover {
    transform: translateY(-3px);
  }
  .ambient-motion-on .button:hover > .arrow,
  .ambient-motion-on .button:hover > span[aria-hidden='true'],
  .ambient-motion-on .header-cta:hover > span,
  .ambient-motion-on .text-link:hover > span,
  .ambient-motion-on .scope-item:hover .scope-symbol {
    transform: translate(4px, -3px);
  }
  .ambient-motion-on .project:hover .project-image {
    box-shadow: 0 12px 28px #292d2810;
  }
  .ambient-motion-on .project:hover .project-image img {
    transform: scale(1.045);
    filter: brightness(1.025);
  }
  .ambient-motion-on .project:hover .project-caption > span {
    background-size: 100% 1px;
  }
}

.motion-off .ambient-item {
  translate: none !important;
}
.motion-off .ambient-line::after {
  transform: none !important;
}
.motion-off .button:hover,
.motion-off .button:focus-visible,
.motion-off .project:hover .project-image img,
.motion-off .project:focus-visible .project-image img {
  transform: none !important;
}
.motion-off .project-image img {
  filter: none !important;
}
.motion-off .button > .arrow,
.motion-off .button > span[aria-hidden='true'],
.motion-off .header-cta > span,
.motion-off .text-link > span,
.motion-off .scope-symbol {
  transform: none !important;
}

