.fm-server-hero .slide__body > *, .fm-server-hero .slide__media img { animation: none; }
.fm-intro[hidden] { display: none; }
.fm-intro {
  position: fixed; inset: 0; z-index: 200; display: grid; place-items: center;
  background: #fff; color: #111; isolation: isolate;
  --fm-out: cubic-bezier(.22, 1, .36, 1);
  transition: opacity 180ms var(--fm-out);
}
.fm-intro__center { width: min(68vw, 285px); display: grid; justify-items: center; gap: clamp(13px, 3vh, 23px); }
.fm-intro__mark { display: block; position: relative; width: 100%; animation: fm-mark-in 480ms var(--fm-out) both; }
.fm-intro__mark img { display: block; width: 100%; height: auto; }
.fm-intro__mark .fm-intro__ink { position: absolute; inset: 0; filter: brightness(0); }
.fm-intro__letters { clip-path: inset(43.2% 1% 41.5% 1%); }
.fm-intro__caption-top { clip-path: inset(34.7% 39.8% 58.8% 38.6%); }
.fm-intro__caption-bottom { clip-path: inset(59% 45.6% 33.5% 45.4%); }
.fm-intro__line { width: 44%; height: 2px; background: linear-gradient(90deg,#01bec3,#ff5d09); border-radius: 2px; transform-origin: left; animation: fm-line-in 530ms 90ms var(--fm-out) both; }
.fm-intro button { position: absolute; bottom: max(18px, env(safe-area-inset-bottom)); right: max(18px, env(safe-area-inset-right)); min-height: 44px; padding: 0 14px; border: 1px solid #e1ded7; border-radius: 5px; background: #fff; color: #292724; font: inherit; font-size: 14px; cursor: pointer; }
.fm-intro button:focus-visible { outline: 2px solid #c34400; outline-offset: 3px; }
@keyframes fm-mark-in { from { opacity: 0; transform: translateY(5%) scale(.95); } to { opacity: 1; transform: none; } }
@keyframes fm-line-in { from { opacity: 0; transform: scaleX(.1); } to { opacity: 1; transform: scaleX(1); } }
.fm-intro.is-leaving { opacity: 0; }
@media (prefers-reduced-motion: reduce) { .fm-intro { display: none; animation: none; } }
