.rvpx-hero:has(.rvp-tax-calendar){padding-top:20px}
.rvpx-hero-grid:has(>.rvp-tax-calendar){row-gap:20px}
.rvpx-hero-copy{min-width:0}
.rvp-tax-calendar{grid-column:1/-1;box-sizing:border-box;width:100%;max-width:none;min-width:0;margin:0;padding:9px 14px;background:#eef7fb;border:1px solid #cde3ed;border-radius:12px;text-align:left;color:#163e55;overflow:hidden}
.rvp-tax-calendar-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:2px}
.rvpx-hero .rvp-tax-calendar h2{font:inherit;font-weight:700;font-size:15px;line-height:1.35;margin:0;color:#163e55}
.rvp-tax-calendar-heading a{font-size:12px;color:#216380;text-decoration:none;margin-left:auto}
.rvp-tax-calendar-heading button{font:inherit;font-size:11px;color:#163e55;border:1px solid #bdd5e0;border-radius:6px;background:white;padding:3px 8px;cursor:pointer}
.rvp-tax-calendar-window{overflow:hidden;width:100%}
.rvp-tax-calendar-track{display:flex;width:max-content;gap:0;line-height:1.55;font-size:14px}
.rvp-tax-calendar-track>span{flex:none;white-space:nowrap;padding-right:48px}
.rvp-tax-calendar-separator{display:inline-block;margin:0 20px;color:#7895a5;font-weight:400}
.rvp-tax-calendar.is-ready .rvp-tax-calendar-track{animation:rvp-tax-scroll var(--rvp-tax-duration,90s) linear infinite !important}
.rvp-tax-calendar.is-paused .rvp-tax-calendar-track{animation-play-state:paused !important}
.rvp-tax-calendar-status{display:block;font-size:10px;line-height:1.3;color:#546e7e;margin-top:2px}
@keyframes rvp-tax-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (min-width: 1025px) {
  .rvpx-hero:has(.rvp-tax-calendar) .rvpx-verification-header {
    top: 20px;
    left: -160px;
    max-width: fit-content;
    background: rgba(255, 255, 255, 0.96);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid #E2E8F0;
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08), 0 2px 6px rgba(15, 23, 42, 0.04);
    padding: 10px 18px 10px 14px;
    transform: none;
    border-left: 1px solid #E2E8F0;
  }
  .rvpx-hero:has(.rvp-tax-calendar) .rvpx-verification-copy > span:last-child {
    white-space: nowrap;
  }
  .rvpx-hero:has(.rvp-tax-calendar) .rvpx-hero-visual {
    margin-top: 0;
  }
}
@media (max-width: 1024px) {
  .rvpx-hero:has(.rvp-tax-calendar) .rvpx-verification-header {
    position: relative !important;
    inset: auto !important;
    width: fit-content !important;
    max-width: 90% !important;
    margin: 0 auto 14px auto !important;
    background: rgba(255, 255, 255, 0.96) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.07) !important;
    padding: 10px 18px 10px 14px !important;
    transform: none !important;
    border-left: 1px solid #E2E8F0 !important;
  }
}
@media(max-width:600px){.rvp-tax-calendar{padding:8px 10px}.rvp-tax-calendar-heading{gap:8px}.rvp-tax-calendar-track{font-size:13px}}

/* Keep the floating contact action clear of the hero content at page load. */
.rvpx-hero~* .rvpx-float-btn,
.rvpx-page>.rvpx-floating-bar .rvpx-float-btn{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(12px);
}
.rvpx-page>.rvpx-floating-bar .rvpx-float-btn.is-visible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0);
}
