/**
 * Our Projects — scroll stack animation (Figma-aligned)
 * REVERT: delete this file, remove link from home.blade.php, remove .projects-stack class
 */

/* Sticky needs visible overflow on ancestors */
.d-home-desktop:has(.projects-stack) {
  overflow-x: clip;
  overflow-y: visible;
}

.d-home-desktop .frame-9:has(.projects-stack) {
  overflow: visible;
}

.projects-stack-section {
  overflow: visible !important;
}

.projects-stack .projects-columns-container {
  padding-bottom: min(24vh, 200px);
}

.projects-stack .project-card-item:not(.hidden) {
  transform: translate3d(0, var(--project-card-y, 0), 0) scale(var(--project-card-scale, 1));
  opacity: var(--project-card-opacity, 1);
  transform-origin: center top;
  will-change: transform, opacity;
  transition: none;
}

/* Override legacy card-parallax-init rules from style.css */
.projects-stack .project-card-item.card-parallax-init,
.projects-stack .project-card-item.card-parallax-init.card-revealed {
  opacity: var(--project-card-opacity, 1);
  transform: translate3d(0, var(--project-card-y, 0), 0) scale(var(--project-card-scale, 1));
  transition: none;
}

@media (min-width: 1025px) {
  .projects-stack .project-card-item:not(.hidden) {
    position: sticky;
    top: 96px;
    z-index: var(--project-card-z, 1);
    margin-bottom: 32px;
  }

  .projects-stack .project-card-item:not(.hidden):last-child {
    margin-bottom: 0;
  }
}

@media (max-width: 1024px) {
  .projects-stack .project-card-item:not(.hidden) {
    position: relative;
    top: auto;
    margin-bottom: 32px;
  }
}

/* Figma: 4px card padding, image fills right column edge-to-edge */
.projects-stack .project-card-item.content-5,
.projects-stack .project-card-item.content-6 {
  align-items: stretch;
  gap: 24px;
  padding: 4px;
}

.projects-stack .project-card-image-container {
  flex: 1 1 0;
  align-self: stretch;
  min-height: 320px;
  width: 100%;
  border-radius: 8px;
}

.projects-stack .project-card-image-container img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transform: none !important;
  will-change: auto;
}

.projects-stack .project-card-item:hover .project-card-image-container img {
  transform: scale(1.02) !important;
}

@media (max-width: 1024px) {
  .projects-stack .project-card-image-container {
    min-height: 240px;
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .projects-stack .project-card-item {
    opacity: 1 !important;
    transform: none !important;
    position: relative !important;
    top: auto !important;
  }

  .projects-stack .project-card-item:hover .project-card-image-container img {
    transform: none !important;
  }
}
