/* Förderprojekte — page-local only; shared vocabulary lives in sections.css. Handoff's bare <span class="pk-tag"> is now a Paragraph block, hence the :not() exclusion below. */

.pk-list{ list-style:none; margin:clamp(28px,3.2vw,46px) 0 0; padding:0; }
/* hairline-separated rows on the section ground — no card, no panel */
.pk{ border-top:1px solid var(--line); padding:48px 0; display:grid;
  grid-template-columns:minmax(0,8fr) minmax(0,4fr); column-gap:clamp(28px,3.4vw,56px); row-gap:22px; }
.pk-tag{ margin:0 0 14px; display:inline-flex; align-items:center; gap:.8em;
  font-size:11px; letter-spacing:.2em; text-transform:uppercase; font-weight:600; color:var(--petrol); }
.pk-tag::before{ content:""; width:20px; height:2px; background:var(--turquoise); flex:none; }
.pk-tag span + span::before{ content:"·"; margin-right:.8em; color:var(--petrol); }
.pk-main h3{ font-family:var(--font-display),var(--font-fallback),system-ui,sans-serif;
  font-size:clamp(20px,2vw,26px); font-weight:400; letter-spacing:-.02em; line-height:1.2; color:var(--ink); margin:0 0 12px; }
.pk-sub{ margin:-4px 0 12px; font-size:15px; color:var(--petrol); }
.pk-main p:not(.pk-tag):not(.pk-sub){ margin:0; font-size:16px; line-height:1.65; color:var(--ink-soft); max-width:62ch; }
.pk-main p:not(.pk-tag):not(.pk-sub) + p:not(.pk-tag):not(.pk-sub){ margin-top:12px; }
.pk-side{ display:flex; flex-direction:column; align-items:flex-end; text-align:right; gap:20px; }
.pk-side .wp-block-image{ margin:0; }
.pk-side img{ height:54px; width:auto; max-width:100%; display:block; }
.pk-word{ margin:0; padding-top:6px; font-family:var(--font-display),var(--font-fallback),system-ui,sans-serif;
  font-size:clamp(21px,2vw,26px); font-weight:600; letter-spacing:-.02em; color:var(--petrol); line-height:1.1; }
.pk-link{ margin:0; display:inline-flex; align-items:center; gap:.55em; font-size:15px; font-weight:500; color:var(--petrol); white-space:nowrap; }
.pk-link svg{ width:16px; height:16px; flex:none; transition:transform .3s var(--ease-out); }
.pk-link:hover svg{ transform:translateX(4px); }
/* supporters row: tinted foot strip, 1-6 logos without breaking; slots stay one step quieter than the strip. */
.pk-sup{ grid-column:1 / -1; background:var(--bg-deep); border-radius:4px;
  padding:14px 18px; margin-top:6px;
  display:flex; align-items:center; gap:14px 18px; flex-wrap:wrap; }
.pk-sup .facts-lab{ margin:0; opacity:.7; }
.pk-slots{ display:flex; gap:12px; flex-wrap:wrap; }
.pk-slot{ width:92px; height:40px; border:1px dashed var(--line); border-radius:4px; background:var(--bg); }
/* filled slot: a real supporter logo instead of reserved empty space —
   solid edge, contained white field, no dashed "placeholder" signal. */
.pk-slot.has-logo{ border-style:solid; border-color:var(--line); background:var(--card);
  display:flex; align-items:center; justify-content:center; padding:6px; }
.pk-slot.has-logo .wp-block-image{ margin:0; display:flex; align-items:center; justify-content:center; width:100%; height:100%; }
.pk-slot.has-logo img{ max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; display:block; }
@media (max-width:760px){
  .pk{ grid-template-columns:1fr; padding:34px 0; }
  .pk-side{ align-items:flex-start; text-align:left; order:-1; }
  .pk-side img{ height:44px; }
}
