/* RAVENO Topbar + Scroll-Progress · site-wide · prefix .rvt- */
.rvt-fix{position:fixed;top:0;left:0;right:0;z-index:99999;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
.rvt-bar{background:#0F172A;color:#FAF5E5;font-size:13px;line-height:1.3;display:flex;align-items:center;justify-content:center;gap:28px;padding:8px 16px;letter-spacing:.01em}
.rvt-item{display:flex;align-items:center;gap:7px;white-space:nowrap}
.rvt-item svg{width:14px;height:14px;flex:0 0 auto;stroke:#DCA54A;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.rvt-item a{color:#DCA54A;text-decoration:none;font-weight:600}
.rvt-item a:hover{text-decoration:underline}
.rvt-item b{color:#DCA54A;font-weight:600}
/* mobile: rotate items */
@media(max-width:820px){
  .rvt-bar{gap:0;position:relative;min-height:33px}
  .rvt-item{position:absolute;opacity:0;transition:opacity .45s;pointer-events:none}
  .rvt-item.rvt-on{opacity:1;pointer-events:auto}
}
/* progress track */
.rvt-track{position:relative;height:5px;background:#0F172A}
.rvt-progress{position:absolute;left:0;top:0;bottom:0;width:0;
  background:repeating-linear-gradient(-55deg,#DCA54A 0 8px,#c8933f 8px 16px);
  border-radius:0 3px 3px 0;transition:width .08s linear}
.rvt-house{position:absolute;top:50%;transform:translate(-50%,-50%);width:22px;height:22px;border-radius:6px;
  background:#0F172A;display:flex;align-items:center;justify-content:center;
  box-shadow:0 1px 4px rgba(15,23,42,.35);transition:left .08s linear}
.rvt-house svg{width:13px;height:13px;fill:#DCA54A}
@media(prefers-reduced-motion:reduce){.rvt-progress,.rvt-house{transition:none}.rvt-item{transition:none}}
/* header sticky below the bar; JS sets --rvt-h and body padding */
body.rvt-active #masthead{position:sticky;top:var(--rvt-h,0px);z-index:9999}
body.rvt-active.rvt-scrolled #masthead{background:#fff;box-shadow:0 2px 10px rgba(15,23,42,.08)}
body.rvt-active.rvt-scrolled #masthead .ast-above-header,body.rvt-active.rvt-scrolled #masthead .main-header-bar{background:transparent}

/* --- Astra transparent header (front page) ---------------------------------
   Astra ships inline: .ast-theme-transparent-header #masthead{position:absolute}
   plus white menu links and a white-filtered logo. The generic sticky rule above
   outranks it, which would pull the header into the flow (hero jumps down) and
   the white scrolled background would hide white-on-white. Keep the overlay by
   using fixed (no flow space) and go dark on scroll instead. */
body.rvt-active.ast-theme-transparent-header #masthead{
  position:fixed;top:var(--rvt-h,0px);left:0;right:0;z-index:9999}
body.rvt-active.ast-theme-transparent-header.rvt-scrolled #masthead{
  background:#0F172A;box-shadow:0 2px 10px rgba(15,23,42,.35)}
body.rvt-active.ast-theme-transparent-header.rvt-scrolled #masthead .ast-above-header,
body.rvt-active.ast-theme-transparent-header.rvt-scrolled #masthead .main-header-bar{background:transparent}
/* fixed header + expanded mobile menu can exceed the viewport: keep it reachable */
@media(max-width:921px){
  body.rvt-active.ast-theme-transparent-header #masthead{max-height:100vh;overflow-y:auto}
}

/* logged-in editors: WP admin bar is fixed at top 0 too - do not cover it */
body.admin-bar .rvt-fix{top:32px}
@media screen and (max-width:782px){body.admin-bar .rvt-fix{top:46px}}
