/* Literal hex values, not var() — this component is loaded on pages that
   declare the same real brand colors under different custom-property
   names (e.g. the homepage's inline --dark/--coral vs. editorial-pages.css's
   --deep/--pink), so relying on either page's tokens would silently break
   on the other. */
.lead-popup{
  position:fixed;right:24px;bottom:24px;z-index:80;
  width:min(360px,calc(100vw - 32px));
  background:#302e82;color:#fff;border:1px solid rgba(255,255,255,.2);
  padding:24px 22px;
  opacity:0;transform:translateY(16px);pointer-events:none;
  transition:opacity 350ms cubic-bezier(.2,.8,.2,1),transform 350ms cubic-bezier(.2,.8,.2,1);
}
.lead-popup.is-visible{opacity:1;transform:none;pointer-events:auto}
.lead-popup.no-motion{transition:opacity 1ms}
.lead-popup-close{position:absolute;top:14px;right:16px;background:none;border:0;color:rgba(255,255,255,.55);font-size:1.1rem;line-height:1;cursor:pointer;padding:4px}
.lead-popup-close:hover,.lead-popup-close:focus-visible{color:#fff}
.lead-popup-eyebrow{margin:0 0 10px;color:#9af2c8;font-size:var(--ty-eyebrow);font-weight:var(--ty-eyebrow-weight);letter-spacing:var(--ty-eyebrow-track);text-transform:uppercase}
.lead-popup h4{margin:0 0 10px;font-size:1.2rem;line-height:1.2;font-weight:500;letter-spacing:-.01em;color:#fff}
.lead-popup-body{margin:0 0 16px;font-size:.86rem;line-height:1.5;color:rgba(255,255,255,.72);max-width:none}
.lead-popup-btn{display:inline-flex;align-items:center;gap:8px;background:#ed3b82;color:#fff;font-weight:700;font-size:.84rem;text-decoration:none;padding:10px 18px;border-radius:999px;transition:background 200ms}
.lead-popup-btn:hover{background:#ed3b82}
.lead-popup-dismiss{display:block;margin:12px 0 0;background:none;border:0;padding:0;font-size:.78rem;color:rgba(255,255,255,.55);cursor:pointer;text-decoration:underline;text-decoration-color:rgba(255,255,255,.3)}
.lead-popup-dismiss:hover{color:#fff}
@media (max-width:600px){
  .lead-popup{left:16px;right:16px;bottom:16px;width:auto}
}
@media (prefers-reduced-motion:reduce){
  .lead-popup{transition:opacity 1ms}
}
.lead-popup-close{min-width:44px;min-height:44px}.lead-popup-dismiss{min-height:44px;padding:0 10px}
