/* Motion only. Keep the page geometry and common footer untouched. */
.mu-business-page .business-hero-photo { overflow:hidden; }
.mu-business-page .business-reading-progress { display:none; }
.mu-business-page.business-motion-enabled .business-reading-progress {
  display:block; position:fixed; top:0; left:0; width:100%; height:3px;
  z-index:5; pointer-events:none; background:#f26700; transform:scaleX(0); transform-origin:left;
}
.mu-business-page .business-main .business-counting { position:relative; }
.mu-business-page .business-counting .business-counter-final { opacity:0; }
.mu-business-page .business-counting .business-counter-visual { position:absolute; inset:0; }
@keyframes business-hero-text-enter {
  from { opacity:0; transform:translateY(18px); }
  to { opacity:1; transform:translateY(0); }
}
@media (prefers-reduced-motion:no-preference) {
  /* Start at first paint, without hiding already-painted text when JS loads. */
  .mu-business-page .business-hero-content > :is(.business-kicker, h1, .business-hero-caption) {
    animation:business-hero-text-enter 1000ms cubic-bezier(.16,1,.3,1) both;
  }
  .mu-business-page .business-hero-content > h1 { animation-delay:120ms; }
  .mu-business-page .business-hero-content > .business-hero-caption { animation-delay:280ms; }
  /* Reserve the scroll effect's resting scale from the first paint. */
  .mu-business-page .business-hero-photo img { transform:translateY(0) scale(1.18); }
  .mu-business-page .business-main .business-button {
    position:relative; isolation:isolate; overflow:hidden;
    transition:background .3s,color .3s,box-shadow .3s;
  }
  .mu-business-page .business-button::before {
    content:""; position:absolute; inset:0; pointer-events:none; z-index:-1;
    background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.22) 48%,transparent 76%);
    transform:translateX(-110%); transition:transform .65s cubic-bezier(.16,1,.3,1);
  }
  .mu-business-page .business-button:is(:hover,:focus-visible)::before { transform:translateX(110%); }
  .mu-business-page .business-button:is(:hover,:focus-visible) { box-shadow:0 8px 24px rgba(12,51,73,.18); }
  .mu-business-page .business-main .business-button span { transition:transform .4s cubic-bezier(.16,1,.3,1); }
  .mu-business-page .business-button:is(:hover,:focus-visible) span { transform:translate(3px,-3px); }
  .mu-business-page .business-main .area-grid a { transition:background .35s; }
  .mu-business-page .business-main .area-grid a:hover { background:rgba(12,51,73,.05); }
}
@media (prefers-reduced-motion:reduce) {
  .mu-business-page .business-hero-photo img { transform:none!important; }
  .mu-business-page .business-reading-progress { display:none!important; }
}
@media print {
  .mu-business-page .business-hero-content > :is(.business-kicker, h1, .business-hero-caption) { animation:none; }
  .mu-business-page .business-reading-progress { display:none!important; }
  .mu-business-page .business-hero-photo img { transform:none!important; }
}
