/* pro Klimafakten · gemeinsame Marken- und Komponentenregeln, Stand 26.10.2026.
   Quelle: Website/assets/css/brand-system.css. CD-Build übernimmt diese Datei unverändert.
   PT Sans wird von der jeweiligen Anwendung lokal geladen. */
:root {
  --pkf-signalgruen:#317F43; --pkf-impulsgruen:#CAE900; --pkf-schwarz:#000000; --pkf-weiss:#FFFFFF;
  --pkf-ruhe:#F3F1EA; --pkf-linie:#D9D6CC; --pkf-grau-text:#4A4A4A;
  --pkf-font-sans:"PT Sans",system-ui,sans-serif;
  --pkf-fs-hero:clamp(3rem,6.1vw,5.4375rem); --pkf-lh-hero:1.06;
  --pkf-fs-h1:clamp(2.5rem,1.9rem + 2.4vw,3.75rem); --pkf-lh-h1:1.1;
  --pkf-fs-h2:clamp(1.75rem,1.4rem + 1.4vw,2.5rem); --pkf-lh-h2:1.2;
  --pkf-fs-editorial:clamp(2.25rem,1.4rem + 2.9vw,4rem); --pkf-lh-editorial:1.08;
  --pkf-fs-story:clamp(1.8rem,1.3rem + 1.6vw,2.75rem); --pkf-lh-story:1.13;
  --pkf-fs-h3:1.375rem; --pkf-lh-h3:1.25; --pkf-fs-card:1.5rem; --pkf-lh-card:1.25;
  --pkf-fs-lead:clamp(1.25rem,1.1rem + .6vw,1.5rem); --pkf-lh-lead:1.4;
  --pkf-fs-body:1.125rem; --pkf-lh-body:1.556; --pkf-fs-ui:1.125rem; --pkf-lh-ui:1.2;
  --pkf-fs-small:.9375rem; --pkf-lh-small:1.4;
  --pkf-radius:0px; --pkf-marker-width:3.5rem; --pkf-marker-height:5.6px;
}
@media(min-width:960px){:root{--pkf-fs-editorial:clamp(2rem,3.35vw,3.5rem)}}
@media(min-width:1600px){:root{--pkf-fs-story:3rem}}
::selection{background:var(--pkf-impulsgruen);color:var(--pkf-schwarz)}
button,input,select,textarea,img{border-radius:var(--pkf-radius)}
/* Gleiche Aktionsvarianten in Website und Richtlinie. */
.pkf-btn,.button {
 display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:3.25rem;padding:.75rem 1.75rem;
 font:700 var(--pkf-fs-ui)/var(--pkf-lh-ui) var(--pkf-font-sans);text-decoration:none;cursor:pointer;
 border:2px solid transparent;border-radius:var(--pkf-radius);appearance:none;
 transition:background-color .15s,color .15s,border-color .15s,transform .15s;
}
.pkf-btn:hover,.button:hover{text-decoration:none;transform:none}
.pkf-btn--primary,.button-primary{background:var(--pkf-signalgruen);color:var(--pkf-weiss)}
.pkf-btn--primary:not(:disabled):not([aria-disabled="true"]):hover,.pkf-btn--primary.is-demo-hover,.pkf-btn--primary.is-demo-active,.button-primary:not(:disabled):not([aria-disabled="true"]):hover{background:var(--pkf-impulsgruen);color:var(--pkf-schwarz);border-color:var(--pkf-impulsgruen)}
.pkf-btn--impuls{background:var(--pkf-impulsgruen);color:var(--pkf-schwarz)}
.pkf-btn--impuls:not(:disabled):not([aria-disabled="true"]):hover,.pkf-btn--impuls.is-demo-hover,.pkf-btn--impuls.is-demo-active{background:var(--pkf-weiss);color:var(--pkf-schwarz);border-color:transparent}
.pkf-btn--ghost{background:transparent;color:var(--pkf-schwarz);border-color:var(--pkf-schwarz)}
.pkf-btn--ghost:not(:disabled):not([aria-disabled="true"]):hover,.pkf-btn--ghost.is-demo-hover,.pkf-btn--ghost.is-demo-active{background:var(--pkf-schwarz);color:var(--pkf-weiss)}
.pkf-btn--secondary,.button-secondary{background:var(--pkf-weiss);color:var(--pkf-signalgruen);border-color:var(--pkf-signalgruen)}
.pkf-btn--secondary:not(:disabled):not([aria-disabled="true"]):hover,.pkf-btn--secondary.is-demo-hover,.pkf-btn--secondary.is-demo-active,.button-secondary:not(:disabled):not([aria-disabled="true"]):hover{background:var(--pkf-signalgruen);color:var(--pkf-weiss)}
.pkf-btn--outline-light{background:transparent;color:var(--pkf-weiss);border-color:var(--pkf-weiss)}
.pkf-btn--outline-light:not(:disabled):not([aria-disabled="true"]):hover,.pkf-btn--outline-light.is-demo-hover,.pkf-btn--outline-light.is-demo-active{background:var(--pkf-weiss);color:var(--pkf-schwarz)}
.pkf-btn--newsletter,.pkf-btn--inverse{background:var(--pkf-weiss);color:var(--pkf-signalgruen);border-color:var(--pkf-weiss)}
.pkf-btn--newsletter:not(:disabled):not([aria-disabled="true"]):hover,.pkf-btn--inverse:not(:disabled):not([aria-disabled="true"]):hover,.pkf-btn--inverse.is-demo-hover,.pkf-btn--inverse.is-demo-active{background:var(--pkf-impulsgruen);color:var(--pkf-schwarz);border-color:var(--pkf-impulsgruen)}
.pkf-btn:focus-visible,.button:focus-visible,.pkf-btn.is-demo-focus{outline:3px solid var(--pkf-signalgruen);outline-offset:4px}
.pkf-on-green .pkf-btn:focus-visible,.pkf-on-dark .pkf-btn:focus-visible,.pkf-on-green .pkf-btn.is-demo-focus,.pkf-on-dark .pkf-btn.is-demo-focus{outline-color:var(--pkf-impulsgruen)}
.pkf-btn:not(:disabled):active,.button:not(:disabled):active,.pkf-btn.is-demo-active{transform:translateY(1px)}
.pkf-btn:disabled,.button:disabled,.pkf-btn[aria-disabled="true"]{opacity:.45;cursor:not-allowed;transform:none}
.pkf-btn--large{min-height:3.75rem;padding-inline:2.25rem;font-size:1.25rem}
.pkf-btn svg,.button svg{width:1.1em;height:1.1em;flex:none}
.pkf-thumb{fill:currentColor;stroke:none}
.pkf-icon-btn{display:grid;place-items:center;width:3rem;height:3rem;padding:0;border:2px solid var(--pkf-schwarz);border-radius:0;background:transparent;color:var(--pkf-schwarz);cursor:pointer}
.pkf-icon-btn:hover:not(:disabled),.pkf-icon-btn.is-demo-hover{background:var(--pkf-schwarz);color:var(--pkf-weiss)}
.pkf-icon-btn:focus-visible{outline:3px solid var(--pkf-signalgruen);outline-offset:4px}
.pkf-icon-btn:disabled{opacity:.35;cursor:default}
.pkf-icon-btn svg{width:1.25rem;height:1.25rem}
.pkf-input,.pkf-select,.pkf-textarea{width:100%;font:400 var(--pkf-fs-body)/1.4 var(--pkf-font-sans);color:var(--pkf-schwarz);background:var(--pkf-weiss);border:1px solid #767676;border-radius:0;padding:1rem;min-height:3.5rem;caret-color:var(--pkf-signalgruen)}
.pkf-input:focus,.pkf-select:focus,.pkf-textarea:focus{outline:3px solid var(--pkf-signalgruen);outline-offset:1px;border-color:var(--pkf-schwarz)}
.pkf-input::placeholder,.pkf-textarea::placeholder{color:var(--pkf-grau-text);opacity:1}
.pkf-input:disabled{opacity:.55;cursor:not-allowed}
.pkf-field{display:grid;gap:.5rem}.pkf-field label,.pkf-field legend{font:700 var(--pkf-fs-ui)/1.4 var(--pkf-font-sans)}
.pkf-check{display:flex;gap:.75rem;align-items:flex-start;font-size:1rem;line-height:1.45}
.pkf-check input{appearance:none;width:1.35rem;height:1.35rem;flex:none;margin:.1rem 0 0;border:2px solid currentColor;border-radius:0;background:var(--pkf-weiss);color:var(--pkf-schwarz)}
.pkf-check input:checked{background-color:var(--pkf-signalgruen);border-color:var(--pkf-signalgruen);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m5 12 4 4L19 6' fill='none' stroke='white' stroke-width='3'/%3E%3C/svg%3E")}
.pkf-eyebrow::before,.impulse-line{width:var(--pkf-marker-width);height:var(--pkf-marker-height);background:var(--pkf-impulsgruen);border-radius:0}
@media(max-width:599px){.pkf-icon-btn{width:2.5rem;height:2.5rem}}
@media(prefers-reduced-motion:reduce){.pkf-btn,.button{transition:none}}
