/* Self-hosted Inter (playbook §4 font). Same files as shop/forum. */
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/inter-400.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/inter-400.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/inter-600.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:url("/fonts/inter-600.woff2") format("woff2")}
@font-face{font-family:"Inter Fallback";src:local("Arial"),local("Liberation Sans"),local("Nimbus Sans"),local("Helvetica");size-adjust:107%;ascent-override:90%;descent-override:22%;line-gap-override:0%}

/* UMRT convert chrome — Call (tel) + Text Now (sms) + Book (Square) + Forum.
   Dark/gold to match software/shop: gold fill + ghost outline on dark.
   Tokens: --black #1A1A1A · --gold #C9972C · chrome #0C0C0C. */

.umrt-cta-row,
.btn-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  margin: 1rem 0;
}

.umrt-cta-row .btn,
.umrt-cta-row .btn-gold,
.umrt-cta-row .btn-convert,
.btn-row .btn,
.btn-row .btn-gold,
.btn-row .btn-convert,
.btn,
.btn-gold,
.btn-convert {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #C9972C;
  color: #1A1A1A;
  font-family: inherit;
  font-size: 16px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: normal;
  text-transform: none;
  min-height: 44px;
  padding: 12px 24px;
  border-radius: 10px;
  text-decoration: none;
  box-sizing: border-box;
  border: 2px solid #C9972C;
}

.umrt-cta-row .btn:hover,
.umrt-cta-row .btn-gold:hover,
.umrt-cta-row .btn-convert:hover,
.btn-row .btn:hover,
.btn:hover,
.btn-gold:hover,
.btn-convert:hover {
  background: #B5861F;
  border-color: #B5861F;
  color: #1A1A1A;
}

.umrt-cta-row .btn-ghost,
.btn-row .btn-ghost,
.btn-ghost {
  background: transparent;
  border: 2px solid #C9972C;
  color: #C9972C;
}

.umrt-cta-row .btn-ghost:hover,
.btn-row .btn-ghost:hover,
.btn-ghost:hover {
  border-color: #C9972C;
  color: #FFFFFF;
  background: rgba(201, 151, 44, 0.14);
}

/* Mobile tap target. Padding already clears this on most .btn links; the floor
   covers every button, including page-local rules that only set padding. */
@media (max-width: 900px) {
  .umrt-cta-row .btn,
  .umrt-cta-row .btn-gold,
  .umrt-cta-row .btn-convert,
  .btn-row .btn,
  .btn-row .btn-gold,
  .btn-row .btn-convert,
  .btn,
  .btn-gold,
  .btn-convert,
  .btn-ghost,
  .btn-source,
  button {
    min-height: 44px;
    box-sizing: border-box;
  }
}

/* Quiet text-link row. Not pill buttons. */
.umrt-mobile-bar {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 200;
  align-items: stretch;
  justify-content: space-evenly;
  gap: 0.15rem;
  background: rgba(12, 12, 12, 0.72);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding: 0 6px env(safe-area-inset-bottom);
  box-shadow: none;
}

.umrt-mobile-bar a {
  flex: 0 1 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-height: 44px;
  margin: 0;
  padding: 14px 2px;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: rgba(255, 255, 255, 0.78);
  font-weight: 500;
  font-size: 0.78rem;
  line-height: 1.15;
  text-align: center;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
  white-space: nowrap;
}

.umrt-mobile-bar a:hover,
.umrt-mobile-bar a:focus-visible {
  background: transparent;
  border-color: transparent;
  color: #FFFFFF;
}

/* Text Now stays slightly emphasized — color and weight only. */
.umrt-mobile-bar a[href^="sms:"] {
  color: #C9972C;
  font-weight: 700;
}

.umrt-mobile-bar a[href^="sms:"]:hover,
.umrt-mobile-bar a[href^="sms:"]:focus-visible {
  color: #E0B04A;
}

@media (max-width: 900px) {
  .umrt-mobile-bar { display: flex; }
  .umrt-mobile-bar .umrt-call-num { display: none; }
  body { padding-bottom: calc(52px + env(safe-area-inset-bottom)); }
}

@media print {
  .umrt-mobile-bar,
  .umrt-cta-row { display: none !important; }
}

/* Subtle docs breadcrumb — same dark/gold chrome, not a redesign.
   Single-line bar is 45px including its border. jsonld.js inserts it after
   first paint, so the platform bar holds that 45px until html[data-umrt-jsonld] is set. */
html:not([data-umrt-jsonld]) .umrt-platform-bar::after {
  content: "";
  display: block;
  height: 45px;
  background: #0C0C0C;
}

.umrt-breadcrumbs {
  background: #0C0C0C;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  font-family: "Inter", "Inter Fallback", "Helvetica Neue", Helvetica, Arial, system-ui, sans-serif;
  font-size: 14px;
  letter-spacing: normal;
  color: #A8A8A8;
  box-sizing: border-box;
  min-height: 44px;
}

.umrt-breadcrumbs ol {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 0.5rem;
  margin: 0 auto;
  padding: 0;
  min-height: 44px;
  width: min(100% - 48px, 1160px);
}

.umrt-breadcrumbs li {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.umrt-breadcrumbs li + li::before {
  content: "/";
  color: rgba(255, 255, 255, 0.28);
}

.umrt-breadcrumbs a {
  color: #A8A8A8;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  box-sizing: border-box;
  min-height: 44px;
}

.umrt-breadcrumbs a:hover {
  color: #C9972C;
}

.umrt-breadcrumbs [aria-current="page"] {
  color: #C9972C;
  display: inline-flex;
  align-items: center;
  box-sizing: border-box;
  min-height: 44px;
}

/* UX pass 2026-10-09: anchor-only smooth scroll (respects reduced motion),
   no live blur on the fixed phone bar (repaints every scroll frame),
   buttons 10px corners / 44px tap height. */
@media (prefers-reduced-motion: no-preference) {
  html:focus-within { scroll-behavior: smooth; }
}
[id] { scroll-margin-top: 80px; }
@media (max-width: 900px) {
  .umrt-mobile-bar {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    background: rgba(12, 12, 12, 0.94);
    transform: translateZ(0);
  }
}

.umrt-cta-row .btn, .umrt-cta-row .btn-gold, .umrt-cta-row .btn-convert,
.btn-row .btn, .btn-row .btn-gold, .btn-row .btn-convert,
.btn, .btn-gold, .btn-convert { border-radius: 10px; min-height: 44px; }

/* Matt 2026-10-09: booking CTA reads "Request an Appointment" — allow it to wrap
   on narrow phones instead of pushing the row off-screen (tap height stays >= 44px). */
.umrt-mobile-bar a[href^="https://united-mobile-rv-llc.square.site"] {
  flex: 0 1 auto;
  min-width: 0;
  white-space: normal;
}

/* Playbook §4 (Oct 9 design audit T3/T7): one gold button per section.
   "Request an Appointment" stays the gold primary; Text Now becomes the gold
   outline secondary like Call. Mobile text bar (.umrt-mobile-bar) is the
   approved quiet row and is not touched. */
.umrt-cta-row .btn-convert,
.btn-row .btn-convert,
.btn-convert {
  background: transparent;
  border-color: #C9972C;
  color: #C9972C;
}
.umrt-cta-row .btn-convert:hover,
.btn-row .btn-convert:hover,
.btn-convert:hover {
  background: rgba(201, 151, 44, 0.14);
  border-color: #C9972C;
  color: #FFFFFF;
}

/* Mobile: keep the footer's last line (copyright) clear of the floating
   back-to-top button (48px, right:16px) plus a 24px gap. 2026-10-09 */
/* Docs footers carry their own padding (catalog-wrap, .wrap, inline styles),
   so the space goes under the copyright line itself, which is always the
   footer's last child. */
@media (max-width: 800px) {
  footer .umrt-copyright { margin-bottom: 72px !important; }
}
