/* RMG header: one Client Login control (Seion, 2026-10-13). */
/* 1. Remove icon-only account button (desktop header 3705, widget ca9e1c7). */
body .elementor-3705 .elementor-element.elementor-element-ca9e1c7{display:none!important}
/* 3. Bold text + orange person icon before the text; hover stays orange border. */
body .rmg-client-login .octf-btn,
body #mmenu-wrapper .mobile_mainmenu > li.rmg-menu-client-login > a{font-weight:700!important;display:inline-flex;align-items:center;gap:7px}
body #mmenu-wrapper .mobile_mainmenu > li.rmg-menu-client-login > a{display:flex;justify-content:center}
body .rmg-client-login .octf-btn span{font-weight:700!important;display:inline-flex;align-items:center;gap:7px}
body .rmg-client-login .octf-btn span::before,
body #mmenu-wrapper .mobile_mainmenu > li.rmg-menu-client-login > a::before{content:"";flex:0 0 auto;width:17px;height:17px;background:#FE4C1C;
-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='7.5' r='4.5'/%3E%3Cpath d='M3 21c0-4.6 4-8 9-8s9 3.4 9 8z'/%3E%3C/svg%3E") center/contain no-repeat;
mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='7.5' r='4.5'/%3E%3Cpath d='M3 21c0-4.6 4-8 9-8s9 3.4 9 8z'/%3E%3C/svg%3E") center/contain no-repeat}
/* 4. Even spacing: same gap search -> pill -> Get a Quote. */
@media (min-width:1025px){body .rmg-client-login .octf-btn{margin-left:14px;margin-right:0;padding:11px 18px;font-size:14.5px}}

/* 1.0.1: slightly bigger mobile pill + gentle blue #0095D9 pulse */
body #mmenu-wrapper .mobile_mainmenu > li.rmg-menu-client-login > a{font-size:1.1em;min-height:52px}
@keyframes rmgClPulse{0%{box-shadow:0 0 0 0 rgba(0,149,217,.45)}70%{box-shadow:0 0 0 9px rgba(0,149,217,0)}100%{box-shadow:0 0 0 0 rgba(0,149,217,0)}}
body .rmg-client-login .octf-btn,body #mmenu-wrapper .mobile_mainmenu > li.rmg-menu-client-login > a{animation:rmgClPulse 2s ease-out infinite}
body .rmg-client-login .octf-btn:hover,body .rmg-client-login .octf-btn:focus{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){body .rmg-client-login .octf-btn,body #mmenu-wrapper .mobile_mainmenu > li.rmg-menu-client-login > a{animation:none}}

/* 1.0.2: header cart icon wiggle while cart count > 0 (0.8s, every ~4s; once on add-to-cart) */
@keyframes rmgCartWiggle{0%{transform:translateY(0) rotate(0)}15%{transform:translateY(-3px) rotate(-12deg)}30%{transform:translateY(0) rotate(10deg)}45%{transform:translateY(-2px) rotate(-8deg)}60%{transform:translateY(0) rotate(6deg)}75%{transform:rotate(-3deg)}100%{transform:translateY(0) rotate(0)}}
body .octf-cart .cart-contents{display:inline-block;transform-origin:50% 80%}
body .octf-cart .cart-contents.rmg-cart-wiggle{animation:rmgCartWiggle .8s ease-in-out 1}
@media (prefers-reduced-motion:reduce){body .octf-cart .cart-contents.rmg-cart-wiggle{animation:none}}

/* 1.0.2.1 (2026-10-13): tablet header - give the account icon room so it is not squeezed against the menu button. */
@media (min-width:641px) and (max-width:1199px){body .elementor-element.elementor-element-413fed7{margin-left:6px!important;margin-right:14px!important}}

/* 1.0.2.2 (2026-10-13): phone + tablet. After scrolling back to the top, the theme's sticky-header script leaves an inline top:0 on the header. On pages where the header is position:absolute (About, Privacy, Search, ...) that pins it to the very top of the document, behind the coupon banner, so the logo is hidden and the header's white placeholder (.header__clone) shows under the banner. Only the non-fixed state is touched, so slide-away/slide-back is unchanged. */
@media (max-width:1199px){body header.site-header.cd-header:not(.is-fixed){top:auto!important}}
