/* Promo Banner for Required Marketing Group Inc. Colours come from CSS variables printed on each promo (see inc/themes.php). */
@font-face{font-family:"RMGPB Display";src:url(fonts/RedHatDisplay-Black.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap}
@font-face{font-family:"RMGPB Text";src:url(fonts/RedHatText-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"RMGPB Text";src:url(fonts/RedHatText-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
.rmgpb{--h:44px;font-family:"Red Hat Text","RMGPB Text",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.3;box-sizing:border-box;-webkit-font-smoothing:antialiased}
.rmgpb *,.rmgpb *::before,.rmgpb *::after{box-sizing:border-box}
.rmgpb[hidden],.rmgpb [hidden]{display:none!important}
.rmgpb a,.rmgpb a:hover,.rmgpb a:focus{text-decoration:none!important}
.rmgpb a:focus-visible,.rmgpb button:focus-visible,.rmgpb [tabindex]:focus-visible{outline:3px solid var(--pb-fg,#1A1B1E);outline-offset:2px;box-shadow:0 0 0 5px var(--pb-base,#fff)}
.rmgpb button{font:inherit;cursor:pointer;margin:0}
.rmgpb .rmgpb-h{font-family:"Red Hat Display","RMGPB Display",system-ui,sans-serif;font-weight:900;color:var(--pb-fg);margin:0;letter-spacing:.005em;text-transform:none}
.rmgpb p{margin:0}
.rmgpb-th{position:relative;background:var(--pb-bg);color:var(--pb-fg)}
.rmgpb-th::before{content:"";position:absolute;inset:0;background:var(--pb-pat);pointer-events:none}
.rmgpb-th::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--pb-stripe);pointer-events:none}
.rmgpb-th>*{position:relative;z-index:1}
.rmgpb-mot{flex:none;display:inline-flex;width:30px;height:30px}
.rmgpb-motif{width:100%;height:100%;overflow:visible}
.rmgpb .k1{fill:var(--pb-a1)}.rmgpb .k2{fill:var(--pb-a2)}.rmgpb .k3{fill:var(--pb-a3)}.rmgpb .kf{fill:var(--pb-fg)}.rmgpb .kb{fill:var(--pb-base)}.rmgpb .kw{fill:#fff}.rmgpb .kg{fill:#FE4C1C}.rmgpb .kh{fill:#1A1B1E}
.rmgpb-m{color:var(--pb-fg2)}
.rmgpb-code{display:inline-flex;align-items:stretch;flex:none}
.rmgpb-chip{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border:0;outline:0;border-right:0;border-radius:7px 0 0 7px;background:var(--pb-chip);color:var(--pb-chipfg);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.rmgpb-chip b{font-family:"Red Hat Display","RMGPB Display",system-ui,sans-serif;font-weight:900;font-size:14px;letter-spacing:.07em}
.rmgpb-copy{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 10px;border:2px solid var(--pb-chipbd);border-radius:0 7px 7px 0;background:var(--pb-chip);color:var(--pb-chipfg);font-size:12.5px;font-weight:700;white-space:nowrap}
.rmgpb .rmgpb-copy{font-weight:700;font-size:12.5px;line-height:1}
.rmgpb-copy svg{width:14px;height:14px;fill:currentColor}
.rmgpb-copy.is-done{background:var(--pb-chipfg);color:var(--pb-chip)}
.rmgpb-cta{display:inline-flex;align-items:center;height:30px;padding:0 15px;border-radius:999px;background:var(--pb-btn);color:var(--pb-btnfg)!important;font-family:"Red Hat Display","RMGPB Display",system-ui,sans-serif;font-weight:900;font-size:13.5px;white-space:nowrap;flex:none;box-shadow:0 1px 0 rgba(0,0,0,.12)}
.rmgpb-cta::after{content:"\2192";margin-left:7px}
.rmgpb-cta:hover{filter:brightness(1.07)}
.rmgpb-x,.rmgpb-pause{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:2px solid #fff;border-radius:50%;background:#1A1B1E;color:#fff}
.rmgpb-x svg,.rmgpb-pause svg{width:16px;height:16px;fill:currentColor}
.rmgpb .i-pl,.rmgpb.is-paused .i-pa{display:none}.rmgpb.is-paused .i-pl{display:inline}
.rmgpb-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
/* Option 1: slim ticker (in the page flow above the header, fixed height = no layout shift) */
.rmgpb-ticker{position:relative;z-index:11;height:var(--h);overflow:hidden;background:#1A1B1E}
.rmgpb-track{position:absolute;inset:0}
.rmgpb-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:12px;padding:0 92px 3px 20px;visibility:hidden;transform:translateY(100%);transition:transform .6s cubic-bezier(.2,.75,.2,1),visibility 0s .6s}
.rmgpb-slide.is-on{visibility:visible;transform:none;transition:transform .6s cubic-bezier(.2,.75,.2,1)}
.rmgpb-slide.is-out{visibility:visible;transform:translateY(-100%)}
.rmgpb-msg{flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;font-size:14.5px}
.rmgpb-ticker .rmgpb-h{font-size:15.5px;margin-right:4px}
.rmgpb-acts{display:flex;align-items:center;gap:10px;flex:none}
.rmgpb-ctl{position:absolute;z-index:3;right:10px;top:0;height:calc(var(--h) - 3px);display:flex;align-items:center;gap:6px}
/* Option 2: drop-down panel (overlays the page just under the header; never covers the header) */
.rmgpb-drop{position:absolute;left:0;right:0;top:var(--rmgpb-top,0px);z-index:9;height:0;pointer-events:none}
.rmgpb-panel{width:min(840px,calc(100% - 24px));margin:0 auto;border-radius:0 0 18px 18px;overflow:hidden;pointer-events:auto;box-shadow:0 18px 44px rgba(26,27,30,.3);transform:translateY(-115%);visibility:hidden;transition:transform .55s cubic-bezier(.2,.8,.2,1),visibility 0s .55s}
.rmgpb-panel.is-open{transform:none;visibility:visible;transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.rmgpb-in{display:flex;align-items:center;gap:20px;padding:22px 70px 24px 26px}
.rmgpb-panel .rmgpb-mot{width:76px;height:76px}
.rmgpb-body{flex:1 1 auto;min-width:0}
.rmgpb-eye{font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--pb-fg2);margin-bottom:3px!important}
.rmgpb-panel .rmgpb-h{font-size:30px;line-height:1.08;margin-bottom:6px}
.rmgpb-panel .rmgpb-h:focus{outline:0}
.rmgpb-panel .rmgpb-m{font-size:16.5px;color:var(--pb-fg);margin-bottom:14px}
.rmgpb-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
.rmgpb-panel .rmgpb-chip,.rmgpb-panel .rmgpb-copy{height:38px}
.rmgpb-panel .rmgpb-chip b{font-size:17px}
.rmgpb-panel .rmgpb-cta{height:42px;padding:0 22px;font-size:15.5px}
.rmgpb-code .rmgpb-copy{border-radius:0}
.rmgpb-code>:last-child{border-radius:0 7px 7px 0}
.rmgpb-apply{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 10px;border:2px solid var(--pb-chipbd);border-left:0;background:var(--pb-chipfg);color:var(--pb-chip)!important;font-weight:700;font-size:12.5px;white-space:nowrap}
.rmgpb-apply svg{width:15px;height:15px;fill:currentColor}
.rmgpb-apply:hover,.rmgpb-copy:hover{filter:brightness(1.12)}
.rmgpb-apply.is-busy{opacity:.85;cursor:progress}
.rmgpb-copy.is-done svg{display:none}
.rmgpb-copy.is-done .rmgpb-ct::before{content:"\2713\00a0"}
.rmgpb-panel .rmgpb-apply,.rmgpb .rmgpb-panel .rmgpb-copy{height:38px;font-size:13.5px;padding:0 14px}
.rmgpb-panel .rmgpb-x{position:absolute;top:14px;right:14px;width:36px;height:36px}
.rmgpb-tab{position:absolute;right:20px;top:0;pointer-events:auto;display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 15px;border:0;border-radius:0 0 12px 12px;background:var(--pb-btn,#1A1B1E);color:var(--pb-btnfg,#fff);font-family:"Red Hat Display","RMGPB Display",system-ui,sans-serif;font-weight:900;font-size:14px;box-shadow:0 6px 16px rgba(26,27,30,.25)}
.rmgpb-tab svg{width:17px;height:17px;fill:currentColor}
/* Laptop widths: full message visible, ≥12px gap before code chip, no ellipsis */
@media (max-width:1366px) and (min-width:641px){
.rmgpb-slide{gap:14px}
.rmgpb-ticker .rmgpb-msg{flex:0 1 auto;min-width:0;overflow:visible;font-size:12.5px}
.rmgpb-ticker .rmgpb-h{font-size:13.5px;margin-right:4px}
.rmgpb-ticker .rmgpb-acts{margin-inline-start:2px}
}
@media (max-width:640px){
.rmgpb-ticker{--h:82px}
.rmgpb-slide{flex-wrap:wrap;align-content:center;justify-content:flex-start;gap:5px 8px;padding:5px 12px 8px}
.rmgpb-ticker .rmgpb-msg{white-space:normal;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;line-height:1.28;font-size:12.5px}
.rmgpb-ticker .rmgpb-code+.rmgpb-cta{display:none}
.rmgpb-ticker .rmgpb-mot{width:22px;height:22px}
.rmgpb-msg{flex:0 1 calc(100% - 104px);font-size:12.5px}
.rmgpb-ticker .rmgpb-h{font-size:14px}
.rmgpb-acts{flex:1 1 100%;gap:8px}
.rmgpb-ctl{top:4px;height:30px;right:8px}
.rmgpb-ticker .rmgpb-chip,.rmgpb-ticker .rmgpb-copy{height:27px}
.rmgpb-ticker .rmgpb-chip b{font-size:12.5px;letter-spacing:.05em}
.rmgpb-ticker .rmgpb-cl{display:none}
.rmgpb-ticker .rmgpb-cl.is-ex{display:inline;font-size:9px;letter-spacing:.04em}
.rmgpb-ticker .rmgpb-apply{height:27px;padding:0 8px}
.rmgpb-ticker .rmgpb-chip,.rmgpb-ticker .rmgpb-copy{padding:0 8px}
.rmgpb-ticker .rmgpb-cta{height:27px;font-size:12px;padding:0 11px;margin-left:auto}
.rmgpb-ticker .rmgpb-cta::after{margin-left:5px}
.rmgpb-panel{width:calc(100% - 16px)}
.rmgpb-in{gap:12px;padding:16px 52px 18px 16px;align-items:flex-start}
.rmgpb-panel .rmgpb-mot{width:46px;height:46px}
.rmgpb-panel .rmgpb-h{font-size:22px}
.rmgpb-panel .rmgpb-m{font-size:14.5px;margin-bottom:12px}
.rmgpb-panel .rmgpb-x{top:10px;right:10px;width:34px;height:34px}
.rmgpb-panel .rmgpb-cta{height:40px;font-size:14.5px}
.rmgpb-panel .rmgpb-row{margin-right:-38px}
.rmgpb-panel .rmgpb-code{flex-wrap:nowrap;max-width:100%}
.rmgpb-panel .rmgpb-mot{display:none}
.rmgpb .rmgpb-panel .rmgpb-chip,.rmgpb .rmgpb-panel .rmgpb-copy,.rmgpb .rmgpb-panel .rmgpb-apply{padding:0 8px;font-size:12.5px}
.rmgpb .rmgpb-panel .rmgpb-copy svg{display:none}
.rmgpb-panel .rmgpb-cl{font-size:9px;letter-spacing:.05em}
.rmgpb .rmgpb-panel .rmgpb-chip b{font-size:14px;letter-spacing:.04em}
.rmgpb-panel .rmgpb-chip b{font-size:15px}
.rmgpb-tab{right:12px}
}
/* Holiday motion accents: short (finish within 5 seconds), and never with reduced motion */
@media (prefers-reduced-motion:no-preference){
.mv-tw .tw{animation:rmgpb-tw 1.6s ease-in-out 3}
.mv-fl .fl{animation:rmgpb-fl 1.6s ease-in-out 3}
.mv-sw .sw{transform-origin:50% 10%;animation:rmgpb-sw 1.6s ease-in-out 3}
.mv-fk .fk{animation:rmgpb-fk .8s ease-in-out 6}
.mv-sp .sp{transform-origin:24px 24px;animation:rmgpb-sp 4.8s linear 1}
.mv-gl .gl{animation:rmgpb-gl 1.6s ease-in-out 3}
.mv-sn::before{animation:rmgpb-sn 4.8s linear 1}
.rmgpb.is-paused *,.rmgpb.is-paused .rmgpb-th::before{animation-play-state:paused!important}
}
@keyframes rmgpb-tw{50%{opacity:.35}}
@keyframes rmgpb-fl{50%{transform:translateY(-3px)}}
@keyframes rmgpb-sw{25%{transform:rotate(-6deg)}75%{transform:rotate(6deg)}}
@keyframes rmgpb-fk{50%{opacity:.6;transform:scaleY(.92)}}
@keyframes rmgpb-sp{to{transform:rotate(180deg)}}
@keyframes rmgpb-gl{50%{opacity:.7}}
@keyframes rmgpb-sn{from{background-position:0 -24px}to{background-position:0 24px}}
@media (prefers-reduced-motion:reduce){.rmgpb-slide,.rmgpb-slide.is-on,.rmgpb-panel,.rmgpb-panel.is-open{transition:none!important}.rmgpb-slide.is-out{visibility:hidden}.rmgpb *,.rmgpb *::before{animation:none!important}}

/* 1.0.2.1 (2026-10-13): tablet only. Message wraps to its own line; code box + Copy + Apply + CTA move below it so nothing overlaps. */
@media (min-width:641px) and (max-width:1199px){.rmgpb-ticker{--h:80px}.rmgpb-ticker .rmgpb-slide{flex-wrap:wrap;align-content:center;justify-content:center;gap:5px 12px;padding:4px 56px 7px 20px}.rmgpb-ticker .rmgpb-msg{flex:0 1 auto;max-width:calc(100% - 44px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.rmgpb-ticker .rmgpb-acts{flex:1 1 100%;justify-content:center;margin-inline-start:0}.rmgpb-ticker .rmgpb-mot{width:26px;height:26px}.rmgpb-ctl{height:calc(var(--h) - 3px)}}

/* 1.0.2.2 (Oct 19 2026): Onum's sticky-header script writes an inline style="top:0px" on #site-header when the visitor scrolls back
   to the top. That pins the header to the very top of the page, 44px higher than where it starts (right under this promo bar), so the
   bar covers the header's top strip and cuts off the logo. Outside the theme's fixed state the header goes back to its natural spot. */
#site-header.cd-header:not(.is-fixed){top:auto!important}

/* 1.0.3.2: headline shimmer in the look's own colors + glow/lift on hover, focus or tap. Paint-only (no layout shift). */
@media (prefers-reduced-motion:no-preference){@supports ((-webkit-background-clip:text) or (background-clip:text)){.rmgpb-th .rmgpb-h{background:var(--pb-sh,none) 0 0/200% 100% repeat-x;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--pb-fg);animation:rmgpb-sh 6s linear infinite;-webkit-box-decoration-break:clone;box-decoration-break:clone}}.rmgpb-th .rmgpb-h{transition:transform .25s ease,filter .25s ease;transform-origin:0 50%}.rmgpb-panel .rmgpb-h{display:inline-block}@media (min-width:641px){.rmgpb-ticker .rmgpb-h{display:inline-block}}.rmgpb-slide:hover .rmgpb-h,.rmgpb-slide:focus-within .rmgpb-h,.rmgpb-slide:active .rmgpb-h,.rmgpb-panel:hover .rmgpb-h,.rmgpb-panel:active .rmgpb-h,.rmgpb-th.is-lift .rmgpb-h{transform:scale(1.05);filter:drop-shadow(0 0 1px var(--pb-base,#000)) drop-shadow(0 0 8px var(--pb-glow,transparent));animation-duration:2.4s}.rmgpb.is-paused .rmgpb-h{animation-play-state:paused!important}}
@keyframes rmgpb-sh{to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.rmgpb .rmgpb-h{background:none!important;-webkit-text-fill-color:currentColor!important;color:var(--pb-fg)!important;transform:none!important;filter:none!important;transition:none!important}}