/* ALTERRA VR — MOBILE/TABLET MOTION BLOCK 07 V1
   Scope: <=1100px only. Geometry stays untouched. */
@media (max-width:1100px){
  .m7-trust{--m7m-ease:cubic-bezier(.22,.61,.36,1)}

  /* Entrance: copy, real photos, proof, map and club info. */
  html.m7m-ready .m7-trust:not(.m7m-in) .m7-kicker,
  html.m7m-ready .m7-trust:not(.m7m-in) .m7-title,
  html.m7m-ready .m7-trust:not(.m7m-in) .m7-lead,
  html.m7m-ready .m7-trust:not(.m7m-in) .m7-photo,
  html.m7m-ready .m7-trust:not(.m7m-in) .m7-rating,
  html.m7m-ready .m7-trust:not(.m7m-in) .m7-map,
  html.m7m-ready .m7-trust:not(.m7m-in) .m7-info-card,
  html.m7m-ready .m7-trust:not(.m7m-in) .m7-index{
    opacity:0;
    transform:translateY(16px);
    filter:blur(3px);
  }

  html.m7m-ready .m7-trust .m7-kicker,
  html.m7m-ready .m7-trust .m7-title,
  html.m7m-ready .m7-trust .m7-lead,
  html.m7m-ready .m7-trust .m7-photo,
  html.m7m-ready .m7-trust .m7-rating,
  html.m7m-ready .m7-trust .m7-map,
  html.m7m-ready .m7-trust .m7-info-card,
  html.m7m-ready .m7-trust .m7-index{
    transition:
      opacity .62s var(--m7m-ease),
      transform .74s var(--m7m-ease),
      filter .74s var(--m7m-ease),
      border-color .22s ease,
      box-shadow .22s ease;
  }

  html.m7m-ready .m7-trust.m7m-in .m7-kicker{transition-delay:.02s}
  html.m7m-ready .m7-trust.m7m-in .m7-title{transition-delay:.10s}
  html.m7m-ready .m7-trust.m7m-in .m7-lead{transition-delay:.20s}
  html.m7m-ready .m7-trust.m7m-in .m7-photo:nth-child(1){transition-delay:.28s}
  html.m7m-ready .m7-trust.m7m-in .m7-photo:nth-child(2){transition-delay:.37s}
  html.m7m-ready .m7-trust.m7m-in .m7-photo:nth-child(3){transition-delay:.46s}
  html.m7m-ready .m7-trust.m7m-in .m7-photo:nth-child(4){transition-delay:.55s}
  html.m7m-ready .m7-trust.m7m-in .m7-rating:nth-child(1){transition-delay:.64s}
  html.m7m-ready .m7-trust.m7m-in .m7-rating:nth-child(2){transition-delay:.72s}
  html.m7m-ready .m7-trust.m7m-in .m7-map{transition-delay:.80s}
  html.m7m-ready .m7-trust.m7m-in .m7-info-card:nth-child(1){transition-delay:.88s}
  html.m7m-ready .m7-trust.m7m-in .m7-info-card:nth-child(2){transition-delay:.95s}
  html.m7m-ready .m7-trust.m7m-in .m7-index{transition-delay:1.02s}

  html.m7m-ready .m7-trust.m7m-in .m7-kicker,
  html.m7m-ready .m7-trust.m7m-in .m7-title,
  html.m7m-ready .m7-trust.m7m-in .m7-lead,
  html.m7m-ready .m7-trust.m7m-in .m7-photo,
  html.m7m-ready .m7-trust.m7m-in .m7-rating,
  html.m7m-ready .m7-trust.m7m-in .m7-map,
  html.m7m-ready .m7-trust.m7m-in .m7-info-card,
  html.m7m-ready .m7-trust.m7m-in .m7-index{
    opacity:1;
    transform:none;
    filter:none;
  }

  /* One restrained light pass across real photos after they appear. */
  .m7-photo::after{
    content:"";
    position:absolute;
    top:-22%;
    left:-40%;
    width:20%;
    height:145%;
    transform:rotate(14deg);
    opacity:0;
    background:linear-gradient(90deg,transparent,rgba(118,238,255,.23),transparent);
    pointer-events:none;
    z-index:2;
  }
  html.m7m-ready .m7-trust.m7m-in .m7-photo::after{
    animation:m7mPhotoSweep 1.05s var(--m7m-ease) 1 both;
  }
  html.m7m-ready .m7-trust.m7m-in .m7-photo:nth-child(1)::after{animation-delay:.78s}
  html.m7m-ready .m7-trust.m7m-in .m7-photo:nth-child(2)::after{animation-delay:.91s}
  html.m7m-ready .m7-trust.m7m-in .m7-photo:nth-child(3)::after{animation-delay:1.04s}
  html.m7m-ready .m7-trust.m7m-in .m7-photo:nth-child(4)::after{animation-delay:1.17s}
  @keyframes m7mPhotoSweep{
    0%{left:-40%;opacity:0}
    18%{opacity:.72}
    100%{left:125%;opacity:0}
  }

  /* Reviews stay readable, only the score gets a slow trust glow. */
  .m7-rating-score{
    animation:m7mScoreGlow 5.2s ease-in-out 1.8s infinite;
  }
  .m7-rating:nth-child(2) .m7-rating-score{animation-delay:2.45s}
  @keyframes m7mScoreGlow{
    0%,100%{text-shadow:0 0 0 rgba(255,228,90,0)}
    50%{text-shadow:0 0 15px rgba(255,228,90,.24)}
  }

  /* Subtle recurring cue on review links, not on the map itself. */
  .m7-rating a{
    position:relative;
    overflow:hidden;
    border-radius:6px;
    transition:transform .16s ease,filter .18s ease,text-shadow .18s ease;
  }
  .m7-rating a::after{
    content:"";
    position:absolute;
    left:-55%;
    bottom:0;
    width:42%;
    height:1px;
    opacity:0;
    background:linear-gradient(90deg,transparent,#63edff,transparent);
    pointer-events:none;
  }
  html.m7m-ready .m7-trust.m7m-in .m7-rating a::after{
    animation:m7mLinkSweep 6.2s var(--m7m-ease) infinite;
  }
  .m7-rating:nth-child(2) a::after{animation-delay:1.2s !important}
  @keyframes m7mLinkSweep{
    0%,76%{left:-55%;opacity:0}
    80%{opacity:.85}
    90%{left:115%;opacity:.24}
    92%,100%{left:115%;opacity:0}
  }

  /* Touch feedback for interactive trust elements. */
  .m7-rating a:active,
  .m7-info-card:active{
    transform:scale(.985);
    filter:brightness(1.10);
  }
  .m7-rating a:active{text-shadow:0 0 12px rgba(91,234,255,.38)}
}

@media (prefers-reduced-motion:reduce){
  .m7-trust *,
  .m7-trust *::before,
  .m7-trust *::after{
    animation:none !important;
    transition:none !important;
  }
  html.m7m-ready .m7-trust .m7-kicker,
  html.m7m-ready .m7-trust .m7-title,
  html.m7m-ready .m7-trust .m7-lead,
  html.m7m-ready .m7-trust .m7-photo,
  html.m7m-ready .m7-trust .m7-rating,
  html.m7m-ready .m7-trust .m7-map,
  html.m7m-ready .m7-trust .m7-info-card,
  html.m7m-ready .m7-trust .m7-index{
    opacity:1 !important;
    transform:none !important;
    filter:none !important;
  }
}
