/* Mobile sticky CTA bar (assets/sticky-cta.js). Phones ≤ 480px only: above that
   width the bar is never displayed, so desktop and tablets are unchanged.
   The button inside is a copy of the page's own primary CTA, so it keeps the
   look of whichever stylesheet the page uses (workdecoded.css, campaigns.css, lp7.css).
   z-index 80: below the cookie banner (90) and the payment modal (100); while the
   cookie strip is open the bar is stacked above it, not under it. */
.sticky-cta{display:none}
@media(max-width:480px){
  .sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:80;display:block;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line,#d5d9d1);background:rgba(243,244,239,.96);box-shadow:0 -10px 30px rgba(29,36,33,.10);transform:translateY(110%);visibility:hidden;transition:transform .2s ease,visibility 0s linear .2s}
  .sticky-cta.is-visible{transform:none;visibility:visible;transition:transform .2s ease}
  .sticky-cta>*{display:flex!important;align-items:center;justify-content:center;width:100%!important;max-width:none!important;min-height:48px!important;height:auto!important;margin:0!important;padding:10px 14px!important;box-shadow:none!important;font-size:14px!important;line-height:1.25!important;text-align:center;white-space:normal!important;overflow-wrap:break-word}
  body.has-sticky-cta{padding-bottom:var(--sticky-cta-h,76px)}
}
@media(max-width:480px) and (prefers-reduced-motion:reduce){
  .sticky-cta,.sticky-cta.is-visible{transition:none}
}
/* Cookie strip open (cookie-consent.css/.js): the bar sits directly above the strip
   (bottom offset set inline by sticky-cta.js); the strip already covers the safe area. */
@media(max-width:480px){
  .sticky-cta.is-above-strip{padding-bottom:10px;box-shadow:none}
  body.cc-strip-open.has-sticky-cta{padding-bottom:calc(var(--cc-strip-h,53px) + var(--sticky-cta-h,68px))}
}
