/* Figma: parent auto-layout ma jednolity itemSpacing 120px między wszystkimi sekcjami. */
.zenref-press-kit {
  margin-top: 120px;
  padding: 0 24px;
}

.zenref-press-kit__card {
  position: relative;
  max-width: 1312px;
  margin: 0 auto;
  padding: 64px 72px 64px 112px;
  border-radius: 32px;
  background: #222;
  overflow: visible;
}

/* NIE pozycjonujemy content — dzięki temu absolutna ilustracja (wewnątrz heading-group)
   liczy się względem KARTY, a nie względem content. Na desktopie ilustracja jest top-right
   i nie nachodzi na tekst (tekst po lewej, max 620px). */
.zenref-press-kit__content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 48px;
  max-width: 620px;
}

.zenref-press-kit__heading-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 32px;
  width: 100%;
}

.zenref-press-kit__title-block {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  width: 100%;
}

/* Badge — pill hugujący tekst (rozszerza się wraz z tekstem) + ogon-strzałka doklejony do prawej.
   Pill i ogon mają dokładnie 20px wysokości i są wyrównane w linii (align-items: center). */
.zenref-press-kit__badge-row {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  line-height: 0;
}

.zenref-press-kit__badge {
  display: inline-flex;
  align-items: center;
  height: 20px;
  box-sizing: border-box;
  padding: 2px 0 2px 10px;
  border-radius: 100px 0 0 100px;
  background: #20E243;
  color: #222;
  font-family: Nunito, sans-serif;
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: 16px;
  letter-spacing: 0.2px;
  white-space: nowrap;
}

/* Inline SVG (nie <img>) — odporne na globalne reguły `img { height:auto }` itd.
   które potrafiły zrzucać ogon poniżej pilla. */
.zenref-press-kit__badge-tail {
  display: block;
  flex-shrink: 0;
  height: 20px;
  width: 30.46px;
}

.zenref-press-kit__title {
  margin: 0;
  color: #FFF;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
  font-feature-settings: 'liga' off, 'clig' off;
  font-family: Nunito, sans-serif;
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: 43px;
}

.zenref-press-kit__text {
  margin: 0;
  margin-bottom: 0 !important;
  color: #C5BFB5;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
  font-feature-settings: 'liga' off, 'clig' off;
  font-family: Nunito, sans-serif;
  font-size: 18px;
  font-style: normal;
  font-weight: 500;
  line-height: 28px;
}

.zenref-press-kit__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 40px;
  width: 100%;
}

/* Outlined-green button (wariant lokalny modułu). */
.zenref-press-kit__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  box-sizing: border-box;
  min-width: 280px;
  /* Figma: 56px wysokości, padding 16/24 ze stroke INSIDE — border 1.5px wliczamy w padding. */
  padding: 14.5px 22.5px;
  border: 1.5px solid #22E243;
  border-radius: 64px;
  background: transparent;
  color: #22E243;
  font-family: Nunito, sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 800;
  line-height: 24px;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.zenref-press-kit__btn-icon {
  display: block;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  margin-top: -5px;
}

.zenref-press-kit__btn-icon path {
  transition: stroke 0.2s ease;
}

.zenref-press-kit__btn:hover,
.zenref-press-kit__btn:focus-visible {
  background: #22E243;
  color: #222;
  border-color: #22E243;
}

.zenref-press-kit__btn:hover .zenref-press-kit__btn-icon path,
.zenref-press-kit__btn:focus-visible .zenref-press-kit__btn-icon path {
  stroke: #222;
}

.zenref-press-kit__caption {
  margin: 0;
  margin-bottom: 0 !important;
  color: #B3AA9D;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
  font-feature-settings: 'liga' off, 'clig' off;
  font-family: Nunito, sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 22px;
}

.zenref-press-kit__caption-file {
  font-weight: 600;
  color: #B3AA9D;
}

/* Ilustracja — JEDEN blok (3 obrazki). Desktop: absolutna względem karty, wystaje ponad górę.
   Mobile: inline, wyśrodkowana, skalowana do szerokości (patrz @media 768). */
.zenref-press-kit__illustration {
  position: absolute;
  top: -61.82px;
  right: 50px;
  width: 579.19px;
  height: 548.6px;
  pointer-events: none;
}

.zenref-press-kit__illu-phone,
.zenref-press-kit__illu-buddy,
.zenref-press-kit__illu-stone {
  position: absolute;
}

.zenref-press-kit__illu-phone {
  left: 44.33px;
  top: 0;
  width: 534.86px;
  height: 548.6px;
  overflow: hidden;
}

.zenref-press-kit__illu-phone img {
  position: absolute;
  left: -12.8%;
  top: -8.61%;
  width: 123.95%;
  height: 120.84%;
  max-width: none;
}

.zenref-press-kit__illu-buddy {
  left: 302.99px;
  top: 136.95px;
  width: 157.2px;
  height: 159.75px;
  overflow: hidden;
}

.zenref-press-kit__illu-buddy img {
  position: absolute;
  left: 0;
  top: 0;
  width: 113.1%;
  height: 111.3%;
  max-width: none;
}

.zenref-press-kit__illu-stone {
  left: 0;
  top: 282.71px;
  width: 134.115px;
  height: 134.115px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.zenref-press-kit__illu-stone img {
  display: block;
  width: 94.868px;
  height: 94.868px;
  max-width: none;
  object-fit: cover;
  transform: rotate(-46.55deg);
}

/* Poniżej ~1200px karta zwęża się na tyle, że ilustracja koliduje z treścią — chowamy ją. */
@media (max-width: 1200px) {
  .zenref-press-kit__card {
    padding: 56px 48px;
  }

  .zenref-press-kit__content {
    max-width: none;
  }

  .zenref-press-kit__illustration {
    display: none;
  }
}

/* Mobile (Figma): wszystko wyśrodkowane, ilustracja INLINE między tytułem a tekstem. */
@media (max-width: 768px) {
  /* Figma mobile: karta 420 w viewporcie 440 → 10px od krawędzi ekranu. */
  .zenref-press-kit {
    margin-top: 40px;
    padding: 0 10px;
  }

  /* Komponent kafli ma własny margin-bottom 49px, który przez collapse wygrywa z naszym
     margin-top 40 (gap = 49 zamiast 40 z Figmy). Zerujemy go TYLKO na tej stronie
     (klasy body landing referral) — inne strony z kaflami bez zmian. */
  body.b2b_pages-template-page-referral .zenh_cards-block,
  body.page-template-page-referral .zenh_cards-block,
  body.single-b2b_pages-referal .zenh_cards-block {
    margin-bottom: 0 !important;
  }

  .zenref-press-kit__card {
    padding: 40px 22px;
    border-radius: 32px;
    align-items: center;
  }

  .zenref-press-kit__content {
    align-items: center;
    max-width: none;
  }

  .zenref-press-kit__heading-group,
  .zenref-press-kit__title-block,
  .zenref-press-kit__actions {
    align-items: center;
  }

  .zenref-press-kit__title,
  .zenref-press-kit__text,
  .zenref-press-kit__caption {
    text-align: center;
  }

  /* Button mobile: szeroki, większy tekst/padding (Figma: min-width 372, py20/px32, 18px). */
  .zenref-press-kit__btn {
    width: 100%;
    min-width: 0;
    gap: 8px;
    padding: 18.5px 30.5px; /* 20/32 ze stroke inside (−1.5px) */
    font-size: 18px;
  }

  .zenref-press-kit__btn-icon {
    margin-top: -3px;
  }

  /* Ilustracja inline — box 341×323, procenty względem boxa (skaluje się na wąskich ekranach). */
  .zenref-press-kit__illustration {
    display: block;
    position: relative;
    top: auto;
    right: auto;
    width: min(341px, 100%);
    height: auto;
    aspect-ratio: 341 / 323;
    margin: 0 auto;
  }

  .zenref-press-kit__illu-phone {
    left: 7.63%;
    top: 0;
    width: 92.11%;
    height: 99.73%;
  }

  .zenref-press-kit__illu-buddy {
    left: 52.18%;
    top: 24.9%;
    width: 27.07%;
    height: 29.04%;
  }

  .zenref-press-kit__illu-stone {
    left: 0;
    top: 51.4%;
    width: 23.1%;
    height: 24.38%;
  }

  .zenref-press-kit__illu-stone img {
    width: 70.74%;
    height: 70.74%;
  }
}
