/* Realify — Card Deck (scroll-pinned shuffle) */

.rcards-deck { position: relative; }
.rcards-track { position: relative; }

.rcards-sticky {
  position: sticky;
  top: 0;
  height: 100vh;
  display: flex;
  align-items: center;
}

.rcards-inner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 28px;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 48px;
  align-items: center;
}

/* Left copy column */
.rcards-copy { position: relative; z-index: 5; padding-left: 26px; }
.rcards-copy::before {
  content: "";
  position: absolute; left: 0; top: 6px; bottom: 6px;
  width: 3px; border-radius: 2px;
  background: var(--rc-accent, #E59B7D);
}
.rcards-eyebrow {
  margin: 0 0 14px;
  font-weight: 700; font-size: 13px;
  letter-spacing: .14em; text-transform: uppercase;
  color: var(--rc-accent, #C2704B);
}
.rcards-h {
  margin: 0;
  font-family: var(--realify-font-heading, Archivo), sans-serif;
  font-weight: 800;
  font-size: clamp(34px, 4.6vw, 58px);
  line-height: 1.03;
  color: var(--rc-heading, #15331f);
}
.rcards-h em { font-style: italic; }
.rcards-p {
  margin: 22px 0 0;
  max-width: 380px;
  color: var(--rc-text, #3a4a3f);
  font-size: 16px; line-height: 1.6;
}
.rcards-link {
  display: inline-flex; align-items: center; gap: 8px;
  margin-top: 26px;
  font-weight: 700; text-decoration: none;
  color: var(--rc-heading, #15331f);
  border-bottom: 2px solid currentColor;
  padding-bottom: 4px;
}
.rcards-link span { transition: transform .2s ease; }
.rcards-link:hover span { transform: translateX(4px); }

/* Right stage + cards */
.rcards-stage {
  position: relative;
  height: 62vh; min-height: 340px;
  perspective: 1500px;
  /* Masked reveal: hide cards once they pass the BOTTOM of the card area, so a
     dropping card tucks behind this edge instead of sliding off the screen. The
     top/sides stay free, so the forward tilt is never cut off. */
  clip-path: inset(-100vh -100vw 0 -100vw);
}
.rcard {
  position: absolute; top: 50%; left: 50%;
  width: min(42vw, 560px);
  aspect-ratio: 1.585 / 1;
  transform: translate(-50%, -50%);
  transform-origin: center 64%;
  border-radius: 20px; overflow: hidden;
  box-shadow: 0 36px 60px -24px rgba(18, 32, 16, .5);
  backface-visibility: hidden;
  will-change: transform, opacity;
}
.rcard img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* Hand-drawn slider doodle */
.rcards-doodle {
  position: absolute; left: -4%; bottom: 12%;
  width: 42%; max-width: 300px; z-index: 4;
  color: var(--rc-heading, #15331f);
  opacity: .9; pointer-events: none;
}

@media (max-width: 900px) {
  .rcards-inner { grid-template-columns: 1fr; gap: 24px; }
  .rcards-stage { height: 52vh; }
  .rcard { width: min(78vw, 460px); }
  .rcards-doodle { display: none; }
}

/* Elementor editor: no scroll available — show a compact static deck */
.rcards-deck.is-edit .rcards-track { height: auto !important; }
.rcards-deck.is-edit .rcards-sticky { position: static; height: auto; padding: 64px 0; }
.rcards-deck.is-edit .rcards-stage { height: 420px; }

@media (prefers-reduced-motion: reduce) {
  .rcard { transition: none !important; }
}
