.zs-impressum {
  --zs-open:#21479b;
  --zs-soft:#eaf4ff;
  --zs-border:#d7e0ea;
  --zs-dark:#17324d;
  --zs-muted:#5b6b7b;
  --zs-radius:18px;
  color: var(--zs-dark);
}
.zs-imp-hero {
  margin: 0 0 28px;
  padding: 28px 30px;
  border-radius: var(--zs-radius);
  background: linear-gradient(135deg, var(--zs-soft) 0%, #fff 100%);
  border: 1px solid var(--zs-border);
}
.zs-imp-kicker {
  display:inline-block;
  margin-bottom:10px;
  font-size:13px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color: var(--zs-open);
}
.zs-imp-hero h2,
.zs-imp-company h3,
.zs-imp-card h3 {
  margin: 0 0 12px;
  color: var(--zs-dark);
}
.zs-imp-hero p,
.zs-imp-company p,
.zs-imp-card p,
.zs-imp-card li,
.zs-imp-note {
  color: var(--zs-muted);
  line-height: 1.75;
}
.zs-imp-company {
  margin: 0 0 24px;
  padding: 24px 28px;
  border-radius: var(--zs-radius);
  background: var(--zs-open);
  color:#fff;
}
.zs-imp-company-badge {
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  color:#fff;
  font-size:13px;
  font-weight:700;
  margin-bottom:12px;
}
.zs-imp-company h3,
.zs-imp-company p { color:#fff; }
.zs-imp-grid {
  display:grid;
  gap:22px;
}
.zs-imp-grid-2 {
  grid-template-columns: repeat(2, minmax(0,1fr));
}
.zs-imp-grid-bottom { margin-top: 22px; }
.zs-imp-card {
  padding: 24px 28px;
  border-radius: var(--zs-radius);
  background:#fff;
  border:1px solid var(--zs-border);
  box-shadow: 0 10px 24px rgba(18,40,72,.06);
}
.zs-imp-lines p { margin: 0 0 16px; }
.zs-imp-lines p:last-child { margin-bottom: 0; }
.zs-imp-card a { color: var(--zs-open); text-decoration:none; }
.zs-imp-card a:hover { text-decoration: underline; }
.zs-imp-list { margin:0; padding-left:18px; }
.zs-imp-list li { margin:0 0 8px; }
.zs-imp-emergency {
  margin-top: 22px;
  padding: 22px 26px;
  border-radius: var(--zs-radius);
  background: linear-gradient(135deg, var(--zs-open) 0%, #1b6ad1 100%);
  color:#fff;
}
.zs-imp-emergency strong {
  display:block;
  margin-top:4px;
  font-size: clamp(20px, 2vw, 28px);
  line-height:1.2;
  color:#fff;
}
.zs-imp-emergency .zs-imp-kicker { color:#dfeeff; margin-bottom:4px; }
.zs-imp-note {
  margin: 18px 0 0;
  font-size: 14px;
}
@media (max-width: 767px) {
  .zs-imp-grid-2 { grid-template-columns: 1fr; }
  .zs-imp-hero, .zs-imp-company, .zs-imp-card, .zs-imp-emergency { padding: 20px; }
}
