/* Stacking SOLO mobile — non tocca il desktop */
@media (max-width: 768px) {
  /* Colonna e niente gap: requisito per lo stack */
  .expect-section .expect-steps {
    display: block !important;
    gap: 0 !important;
    padding-bottom: var(--stack-extra, 35vh);
  }

  .expect-section .expect-card {
    transition: none !important;
    transform: none !important;   /* evita stacking context inattesi */
    will-change: margin-top;
  }

  /* --- Fase attiva: titolo + card1 pinnati --- */
  .expect-section.stack-active .expect-title {
    position: sticky;
    top: 0;
    z-index: 60;
    /* opzionale: una base bianca per evitare “trasparenze” sullo scroll
    background: linear-gradient(180deg, #fff, rgba(255,255,255,.92));
    */
  }
  .expect-section.stack-active .expect-step:first-child .expect-card {
    position: sticky;
    top: var(--stack-top, 88px);  /* calc. JS: sotto il titolo */
    z-index: 10 !important;       /* base, le altre sopra */
  }

  /* Fine stack: sblocchiamo */
  .expect-section.stack-done .expect-title {
    position: relative;
    top: auto;
  }
  .expect-section.stack-done .expect-step:first-child .expect-card {
    position: relative;
    top: 0;
  }

  /* Ordine strati: 2 e 3 DEVONO stare sopra la 1 */
  .expect-section .expect-step:nth-child(1) .expect-card { z-index: 10 !important; }
  .expect-section .expect-step:nth-child(2) .expect-card { z-index: 20 !important; }
  .expect-section .expect-step:nth-child(3) .expect-card { z-index: 30 !important; }
}
