/* Mobile loyalty story: give the phone the space previously occupied by
   repeated labels, while retaining the complete title, description and CTA. */
@media(max-width:700px){
  .loyalty-story .loyalty-stage{width:calc(100% - 32px)}
  .is-mobile-story.is-enhanced .loyalty-stage{
    height:calc(100svh - var(--story-top) - 8px);
    height:calc(100dvh - var(--story-top) - 8px);
    grid-template-rows:minmax(0,1fr) auto;
    padding-block:0 6px;
  }
  .is-mobile-story.is-enhanced .loyalty-story-heading{display:none}
  .is-mobile-story.is-enhanced .loyalty-panels{
    padding:10px 0 6px;
    row-gap:10px;
  }
  .is-mobile-story.is-enhanced .loyalty-panel{gap:10px}
  .is-mobile-story.is-enhanced .loyalty-panel .loyalty-copy{
    padding:0 2px;
    max-width:460px;
  }
  .is-mobile-story.is-enhanced .loyalty-copy .eyebrow,
  .is-mobile-story.is-enhanced .loyalty-highlight{display:none}
  .is-mobile-story.is-enhanced .loyalty-panel .loyalty-copy h2{
    font-size:clamp(23px,5.8vw,28px);
    line-height:1.15;
    margin-bottom:8px;
  }
  .is-mobile-story.is-enhanced .loyalty-panel .loyalty-copy>p{
    font-size:12px;
    line-height:1.5;
    margin-bottom:0;
    max-width:none;
  }
  .is-mobile-story.is-enhanced .loyalty-copy .text-button{
    font-size:11px;
    line-height:1.4;
    margin-top:10px;
    min-height:40px;
    padding:9px 14px;
  }
  .is-mobile-story.is-enhanced .story-phone-shell{
    height:min(100%,360px);
    /* Leave room for the independently floating +pts on narrow phones. */
    max-height:calc((100vw - 64px) / .8);
  }
  .is-mobile-story.is-enhanced .loyalty-story-footer{
    border-top:0;
    padding-top:0;
    justify-content:center;
  }
  .is-mobile-story.is-enhanced .story-controls{gap:8px}
  .is-mobile-story.is-enhanced .story-controls button{width:32px;height:32px}
}
