/* UPFORCED — phone call / price bar (same look as the home page bar).
   Markup: <div class="upf-mbar" id="upfMbar"> with .upf-mbar__call and .upf-mbar__go, behaviour: js/upf-mbar.js */
.upf-mbar { display: none; }
@media (max-width: 767px) {
  .upf-mbar { position: fixed; left: 12px; right: 12px; bottom: calc(12px + env(safe-area-inset-bottom, 0px)); z-index: 990; display: flex; gap: 10px; padding: 8px; border-radius: 18px; background: rgba(15,28,45,.92); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); box-shadow: 0 16px 34px rgba(7,30,49,.35); transform: translateY(140%); opacity: 0; visibility: hidden; transition: transform .45s cubic-bezier(.2,.7,.2,1), opacity .3s ease, visibility 0s linear .45s; }
  .upf-mbar.is-on { transform: none; opacity: 1; visibility: visible; transition: transform .45s cubic-bezier(.2,.7,.2,1), opacity .3s ease, visibility 0s; }
  .upf-mbar a { display: flex; align-items: center; justify-content: center; height: 48px; margin: 0 !important; border-radius: 12px; text-decoration: none !important; }
  .upf-mbar__call { flex: none; width: 54px; background: rgba(255,255,255,.1); color: #fff !important; }
  .upf-mbar__call svg { width: 22px; height: 22px; max-width: none !important; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
  .upf-mbar__go { flex: 1; gap: 8px; background: #1ea3c9; color: #fff !important; font: 800 15px/1 'Lato', sans-serif; letter-spacing: .08em; text-transform: uppercase; }
  .upf-mbar__go svg { margin: 0 !important; width: 18px; height: 18px; max-width: none !important; fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }
  /* the back-to-top button moves up above the bar */
  body:has(.upf-mbar.is-on) .ui-to-top { bottom: calc(88px + env(safe-area-inset-bottom, 0px)) !important; }
  /* hidden while the phone menu is open */
  body:has(.upf-mh-nav.is-open) .upf-mbar.is-on { transform: translateY(140%); opacity: 0; visibility: hidden; }
  /* out of the way while typing (the phone keyboard would push it up over the field) */
  body:has(input:focus, select:focus, textarea:focus) .upf-mbar.is-on { transform: translateY(140%); opacity: 0; visibility: hidden; }
}
@media (max-width: 767px) and (prefers-reduced-motion: reduce) { .upf-mbar { transition: none !important; } }
