/* Sticky card-stack scroll (mobile only — enabled via JS .card-stack-active) */
@media (max-width: 768px) {
  section:has([data-card-stack].card-stack-active),
  #facilities-main:has([data-card-stack].card-stack-active) {
    overflow: visible !important;
  }

  section:has([data-card-stack].card-stack-active) .sec,
  #facilities-main:has([data-card-stack].card-stack-active) .sec,
  #values .values-layout,
  #values .reveal-right {
    overflow: visible;
  }

  .card-stack-active {
    display: flex !important;
    flex-direction: column;
    gap: 0 !important;
    grid-template-columns: unset !important;
    transform: none !important;
    opacity: 1 !important;
    padding-bottom: 0;
  }

  .card-stack-reveal-parent.reveal,
  .card-stack-reveal-parent.reveal-left,
  .card-stack-reveal-parent.reveal-right,
  .card-stack-reveal-parent.anim {
    transform: none !important;
    opacity: 1 !important;
  }

  .card-stack-active .card-stack-item {
    position: sticky;
    top: calc(100px + var(--stack-offset, calc(var(--stack-i, 0) * 12px)));
    z-index: calc(var(--stack-i, 0) + 1);
    margin-bottom: 18px;
    transform: scale(var(--stack-scale, 1));
    transform-origin: center top;
    transition:
      transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
      box-shadow 0.45s ease;
    backface-visibility: hidden;
  }

  .card-stack-active .card-stack-item.is-stack-pinned {
    box-shadow:
      0 14px 36px rgba(0, 0, 0, 0.42),
      0 0 0 1px rgba(201, 125, 39, 0.14);
  }

  [data-theme="light"] .card-stack-active .card-stack-item.is-stack-pinned {
    box-shadow:
      0 14px 36px rgba(30, 30, 35, 0.16),
      0 0 0 1px rgba(150, 110, 20, 0.2);
  }

  .card-stack-active .card-stack-item:last-child {
    margin-bottom: 0;
  }

  .card-stack-active .card-stack-item:hover {
    transform: scale(var(--stack-scale, 1));
  }
}
