/* Promo card «Енергощит» (promo.js). Palette follows report.css; the bottom-right corner belongs to its button,
   so the wide card sits bottom-left and the compact strip (Android phones) sits above it.
   The theme paints every button:hover/:focus bright red, so «×» sets its own colours.
   promo.js decides where to show it and adds zp-card--wide or zp-card--compact; without one of them nothing shows. */

.zp-card { display: none; }
.zp-card--wide, .zp-card--compact { position: fixed; z-index: 900; display: block; overflow: hidden;
  border: 1px solid #b9cfe2; border-radius: 12px; background: #fff; box-shadow: 0 4px 18px rgba(0, 40, 80, .18);
  font-family: inherit; line-height: 1.35; opacity: 0; transform: translateY(12px); transition: opacity .3s, transform .3s; }
.zp-card--in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .zp-card { transition: none; } }
@media print { .zp-card { display: none !important; } }

.zp-card__link, .zp-card__link:hover, .zp-card__link:focus { display: block; color: #1d2733; text-decoration: none; }
.zp-card__link:focus-visible { outline: 2px solid #0067ac; outline-offset: -2px; }
.zp-card__img { display: block; background: #0b1a2b url(promo-energoshchyt.jpg) center / cover no-repeat; }
.zp-card__body { display: block; }
.zp-card__title { display: block; color: #004d80; font-weight: 700; }
.zp-card__text { display: block; }
.zp-card__btn { display: inline-block; border-radius: 999px; background: #0067ac; color: #fff; font-weight: 600; }
.zp-card__link:hover .zp-card__btn { background: #004d80; }

.zp-card__close { position: absolute; top: 6px; right: 6px; z-index: 1; width: 26px; height: 26px; margin: 0; padding: 0;
  border: 0; border-radius: 50%; background: rgba(0, 0, 0, .55); color: #fff; font-family: inherit; font-size: 17px; line-height: 26px;
  letter-spacing: 0; text-transform: none; text-align: center; cursor: pointer; }
.zp-card__close:hover, .zp-card__close:focus { background: rgba(0, 0, 0, .8); color: #fff; outline: none; }
.zp-card__close:focus-visible { outline: 2px solid #fff; outline-offset: -4px; }

/* Wide: a card with the cover on top. */
.zp-card--wide { left: 16px; bottom: 16px; width: 280px; }
.zp-card--wide .zp-card__img { height: 147px; }
.zp-card--wide .zp-card__body { padding: 10px 14px 14px; }
.zp-card--wide .zp-card__title { margin-bottom: 4px; font-size: 16px; }
.zp-card--wide .zp-card__text { font-size: 13px; }
.zp-card--wide .zp-card__btn { margin-top: 10px; padding: .45em .95em; font-size: 13px; }

/* Compact: a strip across the bottom, cover on the left; «×» stays on the white side, away from the cover. */
.zp-card--compact { left: 12px; right: 12px; bottom: 12px; }
.zp-card--compact.zp-card--above-fab { bottom: 60px; }
.zp-card--compact .zp-card__link { display: flex; align-items: stretch; }
.zp-card--compact .zp-card__img { flex: 0 0 96px; background-position: 15% center; }
.zp-card--compact .zp-card__more { display: none; }
.zp-card--compact .zp-card__body { flex: 1; min-width: 0; padding: 8px 40px 10px 12px; }
.zp-card--compact .zp-card__title { margin-bottom: 2px; font-size: 15px; }
.zp-card--compact .zp-card__text { font-size: 12.5px; }
.zp-card--compact .zp-card__btn { margin-top: 6px; padding: .4em .9em; font-size: 13px; }
.zp-card--compact .zp-card__close { top: 4px; right: 4px; width: 32px; height: 32px; background: transparent; color: #4a5a6a;
  font-size: 22px; line-height: 32px; }
.zp-card--compact .zp-card__close:hover, .zp-card--compact .zp-card__close:focus { background: #eef5fb; color: #004d80; }
