/* "Download on the App Store" badge + the two-step TestFlight window (get-app.js, L-355). Loaded by every page that
   shows the badge; self-contained so it looks the same with landing.css or site.css. */
.store-badge { display: inline-flex; align-items: center; gap: 10px; height: 56px; padding: 0 20px 0 16px; border-radius: 14px;
  background: #000; color: #fff; border: 1.5px solid #A6A6A6; text-decoration: none; font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", Arial, sans-serif;
  transition: transform .25s, box-shadow .25s; pointer-events: auto; }
.store-badge:hover { transform: translateY(-2px); box-shadow: 0 12px 30px -10px rgba(0,0,0,.55); }
.store-badge:focus-visible { outline: 2px solid #8ab4ff; outline-offset: 3px; }
.store-badge__logo { width: 26px; height: 32px; fill: #fff; flex: none; }
.store-badge__text { display: grid; line-height: 1; text-align: left; }
.store-badge__small { font-size: 12px; font-weight: 500; letter-spacing: .01em; }
.store-badge__big { font-size: 24px; font-weight: 600; letter-spacing: -.02em; margin-top: 2px; }
.cta .store-badge { border-color: #A6A6A6; }

.get-app { width: min(440px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); overflow: auto; margin: auto; padding: 36px 28px 28px;
  border: 1px solid rgba(255,255,255,.08); border-radius: 28px; background: #0D1222; color: #F2F4FA; text-align: center;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif; box-shadow: 0 30px 80px -20px rgba(0,0,0,.6); }
.get-app::backdrop { background: rgba(4,6,14,.72); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); }
.get-app[open] { animation: get-app-in .25s ease-out; }
@keyframes get-app-in { from { opacity: 0; transform: translateY(12px) scale(.98); } }
@media (prefers-reduced-motion: reduce) { .get-app[open] { animation: none; } }
.get-app__x { position: absolute; top: 14px; right: 14px; width: 36px; height: 36px; display: grid; place-items: center; border: 0; border-radius: 50%;
  background: rgba(255,255,255,.08); color: #F2F4FA; cursor: pointer; }
.get-app__x .icon { width: 18px; height: 18px; }
.get-app__x:hover { background: rgba(255,255,255,.16); }
.get-app__step { display: grid; justify-items: center; }
.get-app__step[hidden] { display: none; }
.get-app__icon { width: 64px; height: 64px; border-radius: 15px; }
.get-app__kicker { margin: 16px 0 0; font-size: 13px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: #8C95B0; }
.get-app__title { margin: 6px 0 0; font: 700 26px/1.2 Poppins, Inter, -apple-system, sans-serif; letter-spacing: -.01em; color: #fff; }
.get-app__body { margin: 12px 0 0; font-size: 16px; line-height: 1.5; color: #A9B1C7; max-width: 34ch; }
.get-app__body b { color: #fff; font-weight: 600; }
.get-app__fine { margin: 14px 0 0; font-size: 13px; line-height: 1.45; color: #7D86A0; max-width: 34ch; }
.get-app__qr { margin-top: 20px; padding: 18px; border-radius: 22px; background: #fff; line-height: 0; }
.get-app__qr img { width: 180px; height: 180px; display: block; }
.get-app__btn { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; margin-top: 20px; padding: 0 26px; border-radius: 999px;
  border: 0; background: #F2F4FA; color: #0D1222; font: 600 17px/1.2 Inter, -apple-system, sans-serif; text-decoration: none; cursor: pointer; }
.get-app__btn:hover { background: #fff; }
.get-app__btn:focus-visible, .get-app__link:focus-visible, .get-app__x:focus-visible { outline: 3px solid #8ab4ff; outline-offset: 3px; }
.get-app__btn--quiet { background: rgba(255,255,255,.1); color: #fff; }
.get-app__btn--quiet:hover { background: rgba(255,255,255,.18); }
.get-app__row { display: flex; flex-wrap: wrap; gap: 4px 16px; align-items: center; justify-content: center; margin-top: 4px; }
.get-app__row .get-app__link { margin-top: 20px; }
.get-app__link { min-height: 44px; padding: 0 8px; border: 0; background: none; color: #A9C4FF; font: 500 15px/1.2 Inter, -apple-system, sans-serif; cursor: pointer;
  text-decoration: underline; text-underline-offset: 3px; }
.get-app__link:hover { color: #fff; }
@media (max-width: 400px) {
  .get-app { padding: 32px 20px 22px; border-radius: 24px; }
  .get-app__title { font-size: 23px; }
  .store-badge { height: 52px; }
  .store-badge__big { font-size: 22px; }
}
